From c0fa8c064f98c611d0e19ea1acba4d96d77d3a2c Mon Sep 17 00:00:00 2001 From: openhands Date: Mon, 16 Mar 2026 08:53:33 +0000 Subject: [PATCH] fix: evolution.patch references removed LiquidityManager constant (pre-existing structural debt) (#842) Regenerate evolution.patch from the current ThreePositionStrategy.sol. The old patch had a corrupt hunk header (@@ -33,7 +33,7 @@ claiming 7 lines but only supplying 4) and placeholder index hashes (0000000..0000000), causing `git apply` to reject it with "corrupt patch". MAX_ANCHOR_WIDTH still exists in the file at value 1233; the patch correctly overrides it to type(uint24).max for unbounded evolution runs. Co-Authored-By: Claude Sonnet 4.6 --- tools/push3-evolution/evolution.patch | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/push3-evolution/evolution.patch b/tools/push3-evolution/evolution.patch index b08d98e..f726696 100644 --- a/tools/push3-evolution/evolution.patch +++ b/tools/push3-evolution/evolution.patch @@ -1,10 +1,13 @@ diff --git a/onchain/src/abstracts/ThreePositionStrategy.sol b/onchain/src/abstracts/ThreePositionStrategy.sol -index 0000000..0000000 100644 +index d3e2c0b..072b6e3 100644 --- a/onchain/src/abstracts/ThreePositionStrategy.sol +++ b/onchain/src/abstracts/ThreePositionStrategy.sol -@@ -33,7 +33,7 @@ +@@ -33,7 +33,7 @@ abstract contract ThreePositionStrategy is UniswapMath, VWAPTracker { /// @notice Maximum safe anchorWidth: ensures 34 * MAX_ANCHOR_WIDTH * TICK_SPACING / 100 fits in int24 /// @dev With TICK_SPACING=200: 34 * 1233 * 200 = 8,384,400 ≤ int24 max (8,388,607). /// anchorWidth=1234 produces 8,391,200 which overflows int24 and reverts in Solidity 0.8. - uint24 internal constant MAX_ANCHOR_WIDTH = 1233; + uint24 internal constant MAX_ANCHOR_WIDTH = type(uint24).max; + + /// @notice The three liquidity position types + enum Stage {