The ledger wrote down the plan, not what happened
The first live recentres failed wherever the code used the number it asked for instead of the number it got.
The first live recentre stopped halfway, and the token it left behind sat in the wallet unstaked for about 36 hours, earning fees but no emissions. The daemon had asked to withdraw 13,286,103,766 units of liquidity. The chain held 13,285,930,348. The ledger was 173,418 units optimistic on a $100 position, so the call reverted.
One revert became three halts. The exit fell through to the entry, whose swap reverted in turn. The ledger then opened a row for a position that never existed and closed the row for one that did, and the next tick halted because the position it expected had no token id.
The rebalance before a mint could only buy. A recentre that exits above the range comes back holding only the stock and no dollars, so the next position went in with 5,858,430,705 units of liquidity against 13,366,631,653 planned. 44% of the capital was deployed and about $75 of stock sat idle beside it. It now sells as well as buys, with a one cent deadband.
The reward sale had the same shape. It sold the 0.0884 AERO it had been sized for, but the wallet already held 0.5125 from the day before. A check that the reward balance is zero after the sale then failed on every attempt, and $120 was stranded behind a check that could never pass again. The sale now takes whatever the wallet holds.
The pattern is the same each time: the code used the value it had asked for where it needed the value it got. The ledger recorded the planned range in five columns, so a position booked as [-8130, -8030) was actually minted at [-8140, -8040). It now reads the range and the liquidity from the mint’s own event.
Two days later a swap sized for one range minted into another, and $35.09 of $119.90 sat idle while the variance column read minus 180 basis points and nothing flagged it. The new check warns at 200. The defect it was built for was 2,000.