@Zealynx Thanks, that one is right, and the fix is the one you describe (erc-credit-matched-liquidity@b24330a, and the PR, ethereum/ERCs#2109).
_handOver now transfers the position token to the holder when the quote it collected equals owed, and to lenderFallback() only on a shortfall. The priced unwind already did this, since a quote that covers owed leaves no base for the lender to take; the hand-over was the one path that gave the lender the holder’s part with nothing left to cover. The status stays HandedOver and the event PositionHandedOver, with outstanding at zero, so a reader still sees that no price was used, and an outstanding above zero now also means the lender holds the token. The Hand-over section says where the token goes, and that where it goes may not depend on a price.
test_handover_quoteCoversOwed_theHolderKeepsThePositionToken is your case: the pool trades up to 300 before the feed goes silent, the position holds 27,386.13 quote, and at the hand-over the lender takes 25,250 and the holder gets the token with 91.287 base and 2,136.13 quote in it. test_handover_terminal_quoteCoversOwed_unlessThePoolIsPushedDown does the same a day after a terminal status, then pushes the pool back to 250 before a second position’s hand-over: the quote falls about 250 short and the lender gets the token whole. Both fail on 2a60031, where the token went to the fallback address; 67 tests in all.
On the trade-off I agree with your reading, and it is now next to the pool-price line in Security Considerations: at a hand-over the pool’s price decides whether the quote covers owed, so a lender that pushes it down before calling unwind can take the whole position, as any hand-over that falls short does, but only once a hand-over is due, and a holder that wants to be sure of its part closes before then, which needs no price. The Rationale sentence saying that moving the pool before a hand-over gains nobody anything is gone, since it no longer holds.
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | ERC-TBA: Agent Credit Backers | 0 | 8.78 | 26-10-2026 |
| 2 | ERC-TBA: Agent Repay-First Payees | 0 | 10.22 | 25-10-2026 |
| 3 | ERC-8183: Agentic Commerce | 0 | 7.3 | 26-10-2026 |
| 4 | Pre-ERC: Adoption Profile and Reference Kernel for EOAs Adopting Code via SETCODEFROM | 0 | 7 | 25-10-2026 |
| 5 | ERC-8348: Financial Lease | 0 | 8.24 | 28-07-2026 |
| 6 | BRO-AMM: A Bonded Reconciliation Oracle AMM as a Low-Risk DeFi Primitive | 0 | 11.1 | 09-10-2026 |
| 7 | How Much Screening Buys a Second? Speed, Selection, and the Maker's Spread | 0 | 7.13 | 15-10-2026 |
| 8 | ERC-TBA: uRWA Policy Interface | 0 | 12.49 | 26-10-2026 |
| 9 | Draft ERC: Agent Safety Framework (ASF) — attributable adoption of versioned safety specifications | 0 | 5.29 | 26-10-2026 |
| 10 | ERC-TBA: Agent Income Statements | 0 | 11.54 | 25-10-2026 |