harb/onchain/script
openhands 78246ed399 fix: fix: Debug failing staking-safe attack in evolution fitness (#596)
Stake.nextPositionId starts at 654_321, so attack files cannot use literal
on-chain IDs (e.g. positionId=1 always reverts with PositionNotFound).

Fix AttackRunner to treat the JSONL positionId field as a 1-based index into
the list of positions created by stake ops during the current run:
- Add IStake.snatch returns (uint256) to the interface so the returned ID is
  captured.
- Track returned IDs in _stakedPositionIds[] (inserted in creation order).
- _executeUnstake resolves positionId to _stakedPositionIds[positionId-1]
  before calling exitPosition, matching the natural "unstake position 1"
  semantics in the attack DSL.

KRK approval for Stake was already present in _setup(); no other changes needed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-12 07:10:13 +00:00
..
backtesting fix: fix: Debug failing staking-safe attack in evolution fitness (#596) 2026-03-12 07:10:13 +00:00
BaseDeploy.sol Complete project rename from HARB/Harberg to KRAIKEN with KRK token symbol 2025-07-11 13:47:42 +02:00
DeployBase.sol fix: Use Optimizer (base) in deploy scripts — Push3 lacks initialize/getLiquidityParams 2026-02-26 19:37:12 +00:00
DeployBaseMainnet.sol fix: Use Optimizer (base) in deploy scripts — Push3 lacks initialize/getLiquidityParams 2026-02-26 19:37:12 +00:00
DeployBaseSepolia.sol Add Solidity linting with solhint, Foundry formatter, and pre-commit hooks (#51) 2025-10-04 15:17:09 +02:00
DeployLocal.sol fix: Use Optimizer (base) in deploy scripts — Push3 lacks initialize/getLiquidityParams 2026-02-26 19:37:12 +00:00
LmTotalEth.s.sol Fix PR #540 review findings 2026-03-11 06:28:02 +00:00
UpgradeOptimizer.sol fix: Use Optimizer (base) in deploy scripts — Push3 lacks initialize/getLiquidityParams 2026-02-26 19:37:12 +00:00