{"assessments":[],"deployments":[],"fuzz":[],"identity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"interpretation":"Records acceptance and evidence. Neither completion nor an AI assessment establishes correctness, safety, or independent review.","jobId":"42955d02-29e6-4e0d-9685-5a1eda8a9e33","kind":"shape:chain","nodes":[{"acceptedSubmissionHash":"de99399bf8e99b674adf3a76a262164e88e8429495cc29fe6da59fd8a45768b8","dependsOn":["audit_imported_code"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"2d7d84a1a9972f1497e5bc68a704cbf42294d08c62d2868f102ffe3b909b9b51","skillId":"adapt-contract-project","tools":[]},"key":"adapt_contract_project","kind":"code","role":"implement","skillHash":"2d7d84a1a9972f1497e5bc68a704cbf42294d08c62d2868f102ffe3b909b9b51","skillId":"adapt-contract-project","state":"accepted"},{"acceptedSubmissionHash":"e696d6703a2f8a8be4d3168f30a92cf61a63d94e30a33da8112c99feb34ca6e0","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","tools":[]},"key":"audit_economics","kind":"code","role":"review","skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","state":"accepted"},{"acceptedSubmissionHash":"f4f0cae1aab02384ea0b6ebf9d5e3e5060e45e6032eef83030f96ea07900c201","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","tools":[]},"key":"audit_flow","kind":"code","role":"review","skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","state":"accepted"},{"acceptedSubmissionHash":"295a2635a9fe0efed15fcb91fffa4adbe12741dbc567cfd4109ee0d3ddf3ecfd","dependsOn":[],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"9897597976b0e72440db7ca402d225aea20f3d37205ba53e7df2400ff80f29cc","skillId":"audit-imported-code","tools":[]},"key":"audit_imported_code","kind":"code","role":"review","skillHash":"9897597976b0e72440db7ca402d225aea20f3d37205ba53e7df2400ff80f29cc","skillId":"audit-imported-code","state":"accepted"},{"acceptedSubmissionHash":"80bbc769f424b99cba39dd4714c7adc5611064b19f123c9c518e77fa3704a000","dependsOn":["adapt_contract_project","write_foundry_tests","manifest","audit_math","audit_permissions","audit_economics","audit_flow"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"af3aa01159bbf354f621cafa5c0006f6169e0938a8b015be508b7377dbf165bc","skillId":"audit-judge","tools":[]},"key":"audit_judge","kind":"code","role":"review","skillHash":"af3aa01159bbf354f621cafa5c0006f6169e0938a8b015be508b7377dbf165bc","skillId":"audit-judge","state":"accepted"},{"acceptedSubmissionHash":"d6ae96d21e9ff2956ea906cd10fc5dd196d93c91ebe811450700db26ce3931c9","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","tools":[]},"key":"audit_math","kind":"code","role":"review","skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","state":"accepted"},{"acceptedSubmissionHash":"83d7bbacb334b1aa88d14182989a2f1747f4bca50a5a0e23e8870897a8aed7c8","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","tools":[]},"key":"audit_permissions","kind":"code","role":"review","skillHash":"e5ac2cb1fd91a56aa40b16487fc230c48de0d317c8266140331dd3219bb40a85","skillId":"audit-specialist","state":"accepted"},{"acceptedSubmissionHash":"9bd807963c888d1d954db917f3eccbd0291d7ff70812dbe5e896eed66e1d7e14","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"tools":[]},"key":"manifest","kind":"code","role":"integrate","skillHash":null,"skillId":null,"state":"accepted"},{"acceptedSubmissionHash":"00be561e3a25558f359be2bbb9d3c7a4eaf1ef7dce89a92bf3bc0f52892ed7be","dependsOn":["adapt_contract_project"],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"4c76766b00591dfe982fe85d3de589fdb2f810e5137c301155d1c5e36a1d3b23","skillId":"write-foundry-tests","tools":[]},"key":"write_foundry_tests","kind":"code","role":"tests","skillHash":"4c76766b00591dfe982fe85d3de589fdb2f810e5137c301155d1c5e36a1d3b23","skillId":"write-foundry-tests","state":"accepted"}],"objective":"Launch ONLY the existing src/FINCR.sol ERC20: name FINANCIER, symbol FINCR, 18 decimals, exactly 1000000000 tokens (1000000000000000000000000000 base units). Retain its single uint256 constructor with that exact argument, minting once to the official factory, and voluntary burn(uint256). Preserve exact source, pinned OpenZeppelin dependencies and compiler: solc 0.8.30, Cancun, optimizer 200, viaIR=false, bytecode_hash=none. Expected token creation including constructor keccak 0x511ed126a50c2e98030294c73314bb5b42beb62bbc2a87848e2bc44abddf7562; deployed runtime keccak 0x946270e19519507b25f0e64ba542b050d325476e1a397aadf1f64ea23d16064c. Pool 50%, mandatory official swarm 10%, founder remainder 40%; pair IMD, initial valuation 2500 IMD. No custom hook. Deploy NO application contracts: manifest contracts must be empty; ignore all mining/controller/receiver/router contracts elsewhere in this repository. Mining and gateway are deployed independently later. Preserve default trading-fee requester as the authenticated paying founder wallet, not Operations or a fee router. Do not redesign or change source/constructor; stop if exact preservation is unsupported.","parentJobId":null,"planHash":"3ad8da3628ea845f5ae89a5df805a0a1916d9fa60fe6c37024516317ba660683","previousHash":"0000000000000000000000000000000000000000000000000000000000000000","projectId":"42955d02-29e6-4e0d-9685-5a1eda8a9e33","publication":{"commit":null,"deliveredAt":null,"repoUrl":"https://github.com/identity-md-launches/launch-2311-launch-only-existing-src-fincr-sol"},"receiptIdentity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"registry":"0xb6d0a187b050fa5bb0b87033a203f37becf4a775","research":[],"schema":"identitymd-work-v1","signals":[{"agentId":"52644","feedbackHash":"07f049fe6e566c29f076871ff6a9441e808d8a0d0da0bbd7973ddcc2c555ce6c","nodeKey":"adapt_contract_project","submissionHash":"de99399bf8e99b674adf3a76a262164e88e8429495cc29fe6da59fd8a45768b8","tag1":"verification:checks","tag2":"acceptance-v2","value":1},{"agentId":"52289","feedbackHash":"af4c5dd58cdf5470dbaa3c84c07ea563bcdac4a9da0af3aa52e197ae1720946a","nodeKey":"audit_economics","submissionHash":"e696d6703a2f8a8be4d3168f30a92cf61a63d94e30a33da8112c99feb34ca6e0","tag1":"review:submission","tag2":"acceptance-v2","value":1},{"agentId":"51043","feedbackHash":"9bc88dac7b3e733d17eb85616ff4a4845d92614a9ba5950a215cf9e2d73d5c2c","nodeKey":"audit_flow","submissionHash":"f4f0cae1aab02384ea0b6ebf9d5e3e5060e45e6032eef83030f96ea07900c201","tag1":"review:submission","tag2":"acceptance-v2","value":1},{"agentId":"51488","feedbackHash":"69978c6ad7ceb4abcfd0a57e11c4a599ff673c11c52fca6bf893950ed9368f28","nodeKey":"audit_imported_code","submissionHash":"295a2635a9fe0efed15fcb91fffa4adbe12741dbc567cfd4109ee0d3ddf3ecfd","tag1":"review:submission","tag2":"acceptance-v2","value":1},{"agentId":"52114","feedbackHash":"a502b0ede9ac04c91ef4284024e54bece782d9f574028978d641dd40e2bfcb5c","nodeKey":"audit_judge","submissionHash":"80bbc769f424b99cba39dd4714c7adc5611064b19f123c9c518e77fa3704a000","tag1":"review:submission","tag2":"acceptance-v2","value":1},{"agentId":"53916","feedbackHash":"5e5a2ca8c9317bdc45000af6ace57dd4ffcdbaf3ac76b615ad16c34f73f2ec46","nodeKey":"audit_math","submissionHash":"d6ae96d21e9ff2956ea906cd10fc5dd196d93c91ebe811450700db26ce3931c9","tag1":"review:submission","tag2":"acceptance-v2","value":1},{"agentId":"51104","feedbackHash":"ae37f8cb96213edf035a2f6ec7cbfa5778c39d36178c39253d1dbd5000efe320","nodeKey":"audit_permissions","submissionHash":"83d7bbacb334b1aa88d14182989a2f1747f4bca50a5a0e23e8870897a8aed7c8","tag1":"review:submission","tag2":"acceptance-v2","value":1},{"agentId":"52653","feedbackHash":"ba0d7264056c7b57858c876f9d1becda96b68c7be74b159c458e6cca13864f6c","nodeKey":"manifest","submissionHash":"9bd807963c888d1d954db917f3eccbd0291d7ff70812dbe5e896eed66e1d7e14","tag1":"verification:checks","tag2":"acceptance-v2","value":1},{"agentId":"52655","feedbackHash":"d2b664faf093407f31f40e8bb22a30b0339b6f9eb0edacb3804bb2ab02420d88","nodeKey":"write_foundry_tests","submissionHash":"00be561e3a25558f359be2bbb9d3c7a4eaf1ef7dce89a92bf3bc0f52892ed7be","tag1":"verification:checks","tag2":"acceptance-v2","value":1}],"site":null,"snapshotHash":"27bf455dd5d3f806e1177c02695e2f67f72d47e0289a28283b5027d788847cf7","state":"completed","submissions":[{"artifacts":[],"attempt":1,"bundleHash":"e1ac4b1d1d9052bf239c7fe3de052b2e1250b8188d859e463c7ad3f68a1ac315","device":"f121f0a8f8340392","findings":[],"hash":"00be561e3a25558f359be2bbb9d3c7a4eaf1ef7dce89a92bf3bc0f52892ed7be","nodeId":"d787de04-b623-41bf-969c-bf2cc0588c31","outcome":"completed","summary":"Added FINCR failure-path and boundary fuzz tests, plus four stateful invariants covering balances, allowances, burns, and identity.\n\n`forge build` and seeded `forge test` passed: **252 tests, zero failures**. Invariants exercised **32,768 random calls**. Both bytecode hashes match.\n\nOnly `test/` changed. No FINCR defects found. Factory and manifest settings remain launch-stage checks.","treeHash":"5896ae1c5499f9c788407dacb589f23cdb9c77e5","usage":{"cachedInputTokens":1188864,"inputTokens":75512,"model":"gpt-6-astra","outputTokens":16899,"runtime":"codex","turns":7,"wallClockMs":470286}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"5835e48821d8827d","findings":[{"citation":"resolved","description":"Not a defect: this is the only non-standard behaviour in the token and the adapter must know it when writing token.constructorArgs. FINCR takes a single uint256 and rejects 0 and any value not divisible by 100 with the revert string \"invalid supply\". The launch's value 1000000000000000000000000000 (1e27, divisible by 100) passes, mints the whole supply once to msg.sender (the factory) and the token then has no owner, mint, pause, blacklist, freeze, seize, burnFrom, proxy, initializer, DELEGATECALL, CALLCODE or SELFDESTRUCT. The constructorArgs entry must therefore be the static word \"1000000000000000000000000000\" and token.totalSupply the same string; $factory/$poolManager/$launchNumber are not accepted by this constructor and are not needed because the token has no exemptions. Verified with the pinned toolchain (solc 0.8.30, cancun, optimizer 200, viaIR off, bytecode_hash none, OpenZeppelin v5.4.0 at c64a1ed, forge-std v1.9.7): keccak of creationCode||abi.encode(1e27) = 0x511ed126a50c2e98030294c73314bb5b42beb62bbc2a87848e2bc44abddf7562 and keccak of the deployed runtime = 0x946270e19519507b25f0e64ba542b050d325476e1a397aadf1f64ea23d16064c, both matching the job. Note for the adapter: SNAPSHOT.json's FINCR runtimeTemplateKeccak (0xb3b7eb...) is the artifact template before the immutable initialSupply at runtime offset 292 is filled in, so it legitimately differs from the deployed-runtime hash above; this is not a mismatch.","line":13,"path":"src/FINCR.sol","reproduction":"Deploy with supply = 1000000000000000000000000001 (or 0): constructor reverts with \"invalid supply\". Deploy with supply = 1000000000000000000000000000 from an address F: totalSupply() == 1e27, balanceOf(F) == 1e27, name() == \"FINANCIER\", symbol() == \"FINCR\", decimals() == 18, initialSupply() == 1e27; keccak256(address(token).code) == 0x946270e1...64c. Afterwards every selector in the protected test's mint/admin/freeze lists (mint, issue, setOwner, transferOwnership, upgradeTo, initialize, unpause, setMinter, pause, blacklist, blocklist, freeze, freezeAccount, setBlacklist, setBlocked, lock, disableTransfers, setTransfersEnabled, burnFrom, seize) reverts from both a stranger and F, totalSupply stays 1e27, and a holder H given 1e18 can burn(4e17) leaving balanceOf(H) == 6e17 and totalSupply == 1e27 - 4e17 while burn(6e17+1) from H reverts and transferFrom(H, F, 1) from F without allowance reverts.","severity":"info","snippet":"        require(supply != 0 && supply % 100 == 0, \"invalid supply\");","title":"Constructor reverts for any supply that is zero or not a multiple of 100; the manifest word must be exactly 1000000000000000000000000000"}],"hash":"295a2635a9fe0efed15fcb91fffa4adbe12741dbc567cfd4109ee0d3ddf3ecfd","nodeId":"91aa7918-b243-4254-aecf-7d86ae0aae51","outcome":"completed","summary":"The review is complete and the tree is unchanged apart from the findings file. Git status shows only the untracked `.imd-findings.json`, and the scratch test directory was removed.\n\n**Verdict: no defects in src/FINCR.sol.** Exact preservation is supported, so the adapter can launch it as it is.\n\n**What I verified with the pinned toolchain** (solc 0.8.30, Cancun, optimizer 200, viaIR off, bytecode_hash none, OpenZeppelin v5.4.0 at the locked commit, forge-std v1.9.7, forge 1.8.3):\n\n- Creation code with the 1e27 constructor word hashes to the expected value ending in `...df7562`.\n- Deployed runtime, with the immutable filled in, hashes to the expected value ending in `...16064c`.\n- name, symbol, decimals, totalSupply and the mint to msg.sender all match the job.\n- Runtime contains no DELEGATECALL, CALLCODE, SELFDESTRUCT, CALL or STATICCALL.\n- All twenty-two mint, admin, pause, freeze, seize and burnFrom selectors from the protected floor test revert from both a stranger and the deployer, and supply never grows.\n- burn is self-only, transferFrom without allowance reverts, and the constructor rejects zero or non-multiple-of-100 supplies.\n\n**One info finding recorded** at src/FINCR.sol:13. The constructor's divisibility guard is the only non-standard behaviour. It is not a defect, but the adapter must write the constructor word as the static string for 1e27, not a launch placeholder. The finding also notes that SNAPSHOT.json's runtime template hash differs from the deployed runtime hash only because the immutable is unfilled in the template.\n\n**Contracts read:** src/FINCR.sol and the OpenZeppelin ERC20, IERC20, IERC20Metadata, Context and IERC6093 it inherits, plus foundry.toml, foundry.lock, SNAPSHOT.json, abi/FINCR.json, the protected floor tests and the factory interface under verification/fork. **Not read, per the task:** all mining, controller, receiver, router, market and agent-round contracts in src and their tests. No launch.json exists yet, so there was no manifest to validate. The manifest step should set contracts to an empty list and leave the trading-fee requester as the founder wallet. Nothing in the token influences either.","treeHash":null,"usage":{"cachedInputTokens":380894,"inputTokens":226,"model":"claude-fable-5-1","outputTokens":9257,"runtime":"claude","turns":20,"wallClockMs":198560}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"918f8261a6fd589c","findings":[{"citation":"resolved","description":"Merged from the economics specialist (the only finding reported; no duplicates in other areas). It is the requested design: economics.poolBps 5000 and economics.remainderTo the founder, and src/FINCR.sol has no lock, vesting or transfer restriction (plain OpenZeppelin v5.4.0 ERC20 with burn(uint256)). The pool opens single-sided holding 5e26 FINCR and zero IMD at a 2,500 IMD opening valuation (2.5e-6 IMD per FINCR); the founder holds 4e26 FINCR, 80% of the supply outside the pool, immediately transferable. Any IMD early buyers put into the pool can be taken out by the founder selling into it. Recorded so the actor (remainderTo) and precondition (buyers' IMD in the pool) are explicit. No fix is proposed: a lock would change the agreed design and break the exact-preservation requirement (pinned creation/runtime keccaks).","line":22,"path":"README.md","reproduction":"State after ProjectFactory.launchCustom with this manifest: FINCR.balanceOf(0xbcf19c0821a245383c127570615896abac9e424f) == 4e26, pool holds 5e26 FINCR and 0 IMD, distributor holds 1e26. A buyer swaps 100 IMD into the pool. The founder then calls FINCR.approve/transfer of up to 4e26 FINCR into a swap against the same pool and receives the buyers' IMD at the prevailing price. Expected under the stated economics: allowed. Actual: allowed; FINCR.transfer has no restriction (OZ ERC20._update), verified by test/FINCRLaunch.t.sol testPoolTransfersArriveWholeInBothDirections and testFuzzTransferAndVoluntaryBurnConserveSupply.","severity":"info","snippet":"and the remaining 40% directly to `0xbcf19c0821a245383c127570615896abac9e424f`.","title":"Trust assumption, not a defect: the founder's 40% (4e26 FINCR) is unlocked at launch and can be sold into the single-sided pool as soon as buyers supply IMD"}],"hash":"80bbc769f424b99cba39dd4714c7adc5611064b19f123c9c518e77fa3704a000","nodeId":"9ef0b047-cdf6-4479-ba73-4a5989aae3be","outcome":"completed","summary":"The review is complete and `.imd-findings.json` is written with one finding and a 70-row coverage record.\n\n**Outcome.** The FINCR launch has no defects. The one specialist finding, from the economics area, reproduces and is kept as informational: the founder's 40% is unlocked at launch and can be sold into the single-sided pool once buyers supply IMD. That is the requested design and not a code defect, so it is recorded as a trust assumption with the actor and precondition stated. No other area reported anything, so there were no duplicates to merge.\n\n**What I verified against the tree.**\n- `src/FINCR.sol` is a plain OpenZeppelin v5.4.0 ERC20 with a single uint256 constructor and self-only `burn`. The constructor's divisibility check passes for the exact argument and mints once to msg.sender.\n- Recomputed both pinned hashes from the compiled artifact. The creation keccak with the constructor argument and the deployed runtime keccak with the immutable populated both match the objective exactly.\n- Compiler metadata shows solc 0.8.30, Cancun, optimizer 200 runs, no viaIR, bytecode hash none. OpenZeppelin is pinned at v5.4.0 and forge-std at v1.9.7. The source SHA-256 matches the adaptation record.\n- The runtime contains no DELEGATECALL, CALLCODE, SELFDESTRUCT, CREATE or CREATE2. Sizes are far below the factory's limits, with no library links or address-bit needs.\n- `launch.json` uses only schema keys, has empty contracts, constructor argument equal to totalSupply, IMD pair in lowercase, and economics matching the job. No Operations or fee-router requester override.\n- The full suite passes with the assignment seed. 252 tests across 35 suites, zero failures or skips.\n\n**Coverage.** The four FINCR entry points are marked holds with traced reasons. The 61 mining, controller, receiver, router and market entry points are marked unreached, since the manifest deploys none of them and the objective says to ignore them. Five extra rows record the constructor mint, hash preservation, opcode scan, manifest check and CREATE2 deployability.\n\nNo files other than `.imd-findings.json` were created or changed.","treeHash":null,"usage":{"cachedInputTokens":428034,"inputTokens":258,"model":"claude-fable-5-1","outputTokens":11240,"runtime":"claude","turns":9,"wallClockMs":197939}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"e67cc6ec4009b226","findings":[],"hash":"83d7bbacb334b1aa88d14182989a2f1747f4bca50a5a0e23e8870897a8aed7c8","nodeId":"c2fce09e-cef8-4ae0-bcd2-7d1462692d23","outcome":"completed","summary":"The review is done. The findings file holds no defects and a coverage row for all 65 listed entry points plus four invariant rows. No repository file was changed, and git reports a clean tree.\n\n**What I checked in my area (Access Control, Trust Gap, Asymmetry) on the FINCR token**\n\n- **Permission model.** The only state-changing surface is approve, burn, transfer and transferFrom. There is no owner, minter, pauser, initializer, upgrade path, payable function, receive or fallback. The constructor is the sole mint and mints 1e27 base units to msg.sender, which is the factory under launchCustom.\n- **Asymmetry.** Mint exists only at construction; burn is self-only through OpenZeppelin's internal burn, so no actor can burn or move another holder's balance. Approve and transferFrom are the unmodified OpenZeppelin v5.4.0 pair.\n- **Trust gap.** The founder remainder recipient, the distributor and the pool manager are plain holders with no token-level powers. The launch legs move exactly what they say, and totalSupply only shrinks through voluntary burns.\n- **Preservation.** Source SHA-256, creation-with-argument keccak and runtime keccak all match the brief. The compiled artifact confirms solc 0.8.30, Cancun, optimizer 200, viaIR off, bytecode hash none, no link references. Both submodules are clean at their pinned commits.\n\n**Out-of-launch contracts.** The brief excludes the mining, controller, receiver, router and market contracts, and the manifest must list no application contracts. I still read the guard on each listed entry point and found none weaker than its effect, so each row is marked holds with the note that it is not deployed by this launch and was not traced beyond its guard.\n\n**Open item, not a defect.** No launch.json exists yet. The manifest step must write contracts as an empty list, the constructor argument as the single string 1000000000000000000000000000, and the economics copied verbatim as recorded in ADAPTATION.md.","treeHash":null,"usage":{"cachedInputTokens":960632,"inputTokens":322,"model":"claude-fable-5-1","outputTokens":18894,"runtime":"claude","turns":28,"wallClockMs":288776}},{"artifacts":[],"attempt":1,"bundleHash":"49d96d9b783e312206b1bfe57b887f5b91def3e1176be9e1e27c6b989ae5f471","device":"0bb52b557875d32e","findings":[],"hash":"9bd807963c888d1d954db917f3eccbd0291d7ff70812dbe5e896eed66e1d7e14","nodeId":"d52c1609-ae0c-42e3-90ce-e603b0ee6e74","outcome":"completed","summary":"Created [launch.json](/home/imd1/.identitymd/work/42955d02-29e6-4e0d-9685-5a1eda8a9e33/d52c1609-ae0c-42e3-90ce-e603b0ee6e74/launch.json) for FINCR only, with the exact supply, constructor argument, economics and pool settings, and no application contracts.\n\n`forge build` passed. All 231 tests passed with the supplied fuzz seed, including both bytecode hash checks. Only `launch.json` changed.","treeHash":"12067d904c3043ae18d3c40a04fef1ef87401de9","usage":{"cachedInputTokens":371456,"inputTokens":29001,"model":"gpt-6-astra","outputTokens":3327,"runtime":"codex","turns":4,"wallClockMs":121532}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"505a745a77612e11","findings":[],"hash":"d6ae96d21e9ff2956ea906cd10fc5dd196d93c91ebe811450700db26ce3931c9","nodeId":"af5d5a84-4f4a-499e-bb4b-e03a6be3a2dc","outcome":"completed","summary":"Review complete. The findings file holds an empty findings list and a 71-row coverage record.\n\n**Result: no defects in the assigned area.** The FINCR token is a plain OpenZeppelin v5.4.0 ERC20 with one guarded constructor and a self-only burn. Every Math Precision, Boundary and Numerical Gap failure mode I could construct either reverts cleanly or moves exactly what it says.\n\nWhat I verified, all under the pinned toolchain (solc 0.8.30, Cancun, optimizer 200, viaIR off, bytecode_hash none, forge 1.8.3):\n\n- **Bytecode pins hold.** Recomputed creation keccak with the 1e27 argument and the deployed runtime keccak both match the task's values. OpenZeppelin and forge-std submodules sit at their locked commits with no local edits, and the committed ABI equals the compiled one.\n- **Constructor boundary.** Exactly 1e27 is accepted and minted once to the caller. Zero, 99, 1e27+1 and max uint revert with \"invalid supply\". The largest multiple of 100 is accepted, so there is no hidden overflow in the guard.\n- **Transfer, transferFrom, approve, burn edges.** Zero amounts are no-ops, self-transfer conserves balance, transfer to the zero address and approve of the zero spender revert, max-uint allowance is infinite and never decremented, allowance one wei short reverts, burning the whole supply then one more wei reverts. The factory cannot pull a holder's tokens without allowance.\n- **Launch arithmetic.** The 10/50/40 split and the swarm's 2/8 split are exact integers of the supply with no intermediate overflow. The opening price of 2500 IMD per 1e27 FINCR sits well inside Uniswap v4 sqrt-price bounds in either currency ordering, and one token is worth 2.5e12 wei IMD, so no zero-rounding at small sizes.\n- **Conservation.** A 512-run fuzz of random transfers and burns across three holders keeps the balance sum equal to total supply minus burned.\n- **Boundary enumeration.** The token has no external calls, payable functions, sentinel branches or bytes decoding, so those checklist steps have no entries.\n\nThe existing 231-test offline suite also passes with the adaptation's recorded fuzz seed, and the 13 FINCR regressions pass with the pinned hashes.\n\n**Coverage caveats.** The four FINCR entry points and the constructor are marked holds from a full trace. The 60 mining, agent-round, market, receiver, forwarder, router and controller entry points are marked holds on the stated ground that this launch deploys none of them and no launch math path reaches them. I did only a brief read of the mining bid allocation and emission curve, which showed monotone cumulative emissions and an exact 80/5/7.5/3.75/3.75 split, but I did not trace those contracts in depth and the coverage rows say so.\n\nMy scratch probes live in test/scratch/FINCRBoundary.t.sol and are not part of the submission.","treeHash":null,"usage":{"cachedInputTokens":1030349,"inputTokens":354,"model":"claude-fable-5-1","outputTokens":20496,"runtime":"claude","turns":32,"wallClockMs":309237}},{"artifacts":[],"attempt":1,"bundleHash":"b76f0c1009969aa49800e53cccf6b404a5eb98de6101abc04d5815ef750a6b3a","device":"fd858f647b25d72d","findings":[],"hash":"de99399bf8e99b674adf3a76a262164e88e8429495cc29fe6da59fd8a45768b8","nodeId":"fea02cfc-ffb4-4954-a29c-c9b1548a6a27","outcome":"completed","summary":"Completed the FINCR-only launch preparation. Source, constructor, dependencies and build settings remain unchanged; both required bytecode hashes match.\n\nAdded 13 regression tests, clarified the launch scope in README, and documented parameters and audit reproduction in [ADAPTATION.md](/home/seat/.identitymd/work/42955d02-29e6-4e0d-9685-5a1eda8a9e33/fea02cfc-ffb4-4954-a29c-c9b1548a6a27/ADAPTATION.md).\n\nValidation: `forge build` passed; all **231 tests passed** with the required fuzz seed.","treeHash":"474f6ef5e4414b10c43334c58fb7d536a6cc7e9a","usage":{"cachedInputTokens":1422208,"inputTokens":78962,"model":"gpt-6-astra","outputTokens":10851,"runtime":"codex","turns":6,"wallClockMs":352431}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"ee9fbaf2480d1034","findings":[{"citation":"resolved","description":"This is the requested design (poolBps 5000, remainderTo the founder) and FINCR has no lock or vesting, so it is recorded as the one material economic trust assumption of the launch rather than a code defect. The pool opens single-sided at 2.5e-6 IMD per FINCR holding 5e26 FINCR and zero IMD; the founder holds 4e26 FINCR, i.e. 80% of the supply outside the pool, immediately transferable. Any IMD that early buyers put into the pool can be taken out by the founder selling into it. Nothing in the token or manifest constrains this; only the requester's conduct does. No fix is proposed: adding a lock would change the agreed design and the exact-preservation requirement.","line":21,"path":"README.md","reproduction":"State after launchCustom: balanceOf(0xbcf1...424f) == 4e26 FINCR, pool holds 5e26 FINCR and 0 IMD. A buyer swaps 100 IMD into the pool. The founder then transfers/sells up to 4e26 FINCR into the same pool and receives the buyers' IMD at the prevailing price. Expected under the stated economics: this is allowed; actual: it is allowed. Recorded so the judge sees the actor (remainderTo) and precondition (buyers' IMD in the pool) explicitly.","severity":"info","snippet":"The factory distributes 50% to the IMD pool, 10% to the official swarm distributor,\nand the remaining 40% directly to `0xbcf19c0821a245383c127570615896abac9e424f`.","title":"Trust assumption, not a defect: founder's 40% (4e26 FINCR) is unlocked at launch and can be sold into the single-sided pool as soon as buyers supply IMD"}],"hash":"e696d6703a2f8a8be4d3168f30a92cf61a63d94e30a33da8112c99feb34ca6e0","nodeId":"44aa1f33-ee7a-44d7-a1e3-ec9062c584bb","outcome":"completed","summary":"The review is complete and the findings file is written. No defects were found in the assigned economics area.\n\n**Result:** `.imd-findings.json` holds zero defects, one info-level trust assumption, and 71 coverage rows (all 67 listed entry points plus six invariant and economics rows). No repository file was changed. Nothing was written under test/scratch, since no finding reached high or critical severity.\n\n**What I verified for the Economic Security, Invariant and Flow Gap guides:**\n\n- **Token source and pins.** `src/FINCR.sol` is a plain OpenZeppelin v5.4.0 ERC20 with one uint256 constructor that mints once to msg.sender and a sender-only burn. Every src and test file's SHA-256 matches SNAPSHOT.json; only README.md differs, as ADAPTATION.md records. Submodules are checked out at the pinned revisions.\n- **Bytecode hashes.** Recomputed with forge inspect and cast: creation code plus the encoded 1e27 argument hashes to the task's 0x511ed126 value, and the deployed runtime hashes to 0x946270e1. Compiler metadata confirms solc 0.8.30, Cancun, optimizer 200, viaIR off, bytecode hash none.\n- **Launch flows.** No transfer tax, hook, pause, blacklist or mint path exists, so the swarm's 1e26, the pool's 5e26 and the founder's 4e26 each arrive whole and sum exactly to 1e27. Burn can only shrink supply. Sum of balances equals totalSupply on every path.\n- **Economics.** The IMD pair token at the handoff address answers symbol IMD and 18 decimals on chain 4663, so 2500e18 is the right unit for the cap. The derived opening price of 2.5e-6 IMD per FINCR gives a tick near plus or minus 128999 and a sqrtPriceX96 inside Uniswap v4 bounds for either currency order; the single-sided liquidity fits in a uint128.\n- **Fee requester.** No launch.json exists yet, and nothing in the tree sets a requester override; the fee router and Operations are not part of this manifest.\n- **Tests.** The full suite passes with 231 tests across 33 suites.\n\n**The one recorded item** is an info-level trust assumption, not a defect: the founder's 40% is unlocked at launch and can be sold into the single-sided pool once buyers supply IMD. That is the requested design, and no fix is proposed.\n\n**Not covered in depth:** the mining, controller, receiver, router and market contracts. They are marked as holding because this launch deploys no application contracts and no launch flow touches them, but I did not trace them beyond the passing suite.","treeHash":null,"usage":{"cachedInputTokens":946960,"inputTokens":354,"model":"claude-fable-5-1","outputTokens":20533,"runtime":"claude","turns":28,"wallClockMs":487223}},{"artifacts":[],"attempt":1,"bundleHash":null,"device":"2565f234b0a569e9","findings":[],"hash":"f4f0cae1aab02384ea0b6ebf9d5e3e5060e45e6032eef83030f96ea07900c201","nodeId":"af53d3b5-c393-4bbd-8156-531940158adc","outcome":"completed","summary":"Both files exist on disk and are hidden from git only by the repository's own `.git/info/exclude` rules, which is the intended arrangement for a review. Nothing else in the tree changed. The review is complete.\n\n**Result: no defects found in the assigned area.** `.imd-findings.json` holds an empty findings list and 71 coverage rows (all 64 listed entry points plus 7 invariant rows).\n\n**What I verified for the FINCR-only launch**\n\n- **Exact preservation.** `src/FINCR.sol` SHA-256 matches `SNAPSHOT.json`. The artifact metadata shows solc 0.8.30, Cancun, optimizer 200, viaIR off, bytecode hash none, no link references. Both submodules sit cleanly at the pinned OpenZeppelin v5.4.0 and forge-std v1.9.7 revisions.\n- **Pinned hashes.** Recomputed independently with `cast keccak` over the compiled creation code plus the 1e27 argument, and in a fresh CREATE2 deployment. Both match the required creation and runtime keccaks. The SNAPSHOT creation-only and runtime-template keccaks also match.\n- **Constructor and supply.** With the manifest argument the constructor mints exactly 1e27 once to its caller, which is the factory under CREATE2. Inputs 0, 1e27 plus 1 and 1e27 minus 50 revert with \"invalid supply\".\n- **Launch flows.** My scratch test replays the swarm transfer, pool seed leg, 40 percent remainder to the founder address, a claim, buy and sell legs, and a router-style sell by allowance. Every leg moves exactly what it says and the factory ends at zero.\n- **Burn and privilege.** Burn is self-only and the supply can only shrink. No owner, mint, pause, denylist or forbidden opcode exists. The existing 22-selector admin test and opcode scan confirm this.\n- **Manifest.** No `launch.json` exists yet, so nothing to check. The ADAPTATION handoff values are consistent with the brief, and nothing in the tree sets the fee requester to Operations or the fee router. That field is written by the deployer service, not this repository.\n\n**Coverage boundary.** The four FINCR entry points were traced in depth. The 60 mining, controller, receiver, router and market entry points are marked as not deployed by this launch and not reviewed, per the assignment's instruction to ignore them, so the judge can see that call is explicit rather than an omission.\n\nThe existing suite plus my scratch tests pass: 234 tests across 34 suites with the assignment's fuzz seed.","treeHash":null,"usage":{"cachedInputTokens":854104,"inputTokens":322,"model":"claude-fable-5-1","outputTokens":23381,"runtime":"claude","turns":28,"wallClockMs":364431}}],"verification":[{"checks":[{"durationMs":16264,"exitCode":0,"name":"build","output":"Compiling 97 files with Solc 0.8.30\nSolc 0.8.30 finished in 16.15s\nCompiler run successful with warnings:\nWarning (2519): This declaration shadows an existing declaration.\n  --> test/Task23Emissions.t.sol:67:13:\n   |\n67 |             address a = address(uint160(101 + i % 3));\n   |             ^^^^^^^^^\nNote: The shadowed declaration is here:\n  --> test/Task23Emissions.t.sol:76:23:\n   |\n76 |         (, uint256 f, uint256 a) = vault.cumulativeAt(1);\n   |                       ^^^^^^^^^\n\n","passed":true},{"durationMs":21506,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 1 test for test/SecurityReview.t.sol:SecurityReviewTest\n[PASS] testRejectSelfInitializerThatCanNeverArm() (gas: 1885324)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 462.44µs (336.40µs CPU time)\n\nRan 1 test for test/IntegrationRehearsal.t.sol:IntegrationRehearsalTest\n[PASS] testLocalLaunchFundingTakeoverAndGeneratedAgentSettlement() (gas: 31175548)\nLogs:\n  First agent round FINCR base units paid (GENERATED proofs): 1959183673469387755102040\n  Outgoing financier FINCR base units claimed: 54421768707482993197278\n  Outgoing financier IMD base units claimed: 800000000000000000\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 4.92ms (4.59ms CPU time)\n\nRan 2 tests for test/WorkEvidence.t.sol:WorkEvidenceTest\n[PASS] testGenuineDocumentsMatchPublishedCommitmentAndTamperingChangesHash() (gas: 22811)\n[PASS] testGenuineJsonAloneCannotAuthorizeProductionRewards() (gas: 17607)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.39ms (4.30ms CPU time)\n\nRan 2 tests for test/AgentRounds.t.sol:AgentFailureIsolationTest\n[PASS] testClaimReentrancyBlocked() (gas: 32110365)\n[PASS] testRealBoundaryIsDisabledAndUnknownProofCannotPay() (gas: 1968933)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 5.03ms (4.69ms CPU time)\n\nRan 2 tests for test/IntakeInterface.t.sol:IntakeInterfaceTest\n[PASS] testNoWorkBudgetSpenderAllowanceOrGenericExecutor() (gas: 30060139)\n[PASS] testPublishedAbiEncodingAndCallbackBinding() (gas: 318511)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 8.92ms (8.65ms CPU time)\n\nRan 2 tests for test/Task25Funding.t.sol:Task25FundingTest\n[PASS] testFundingRejectsShortTransferAndReentrancy() (gas: 1605506)\n[PASS] testWorkFundingHasNoBidRewardOrAuthorityRights() (gas: 346055)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.28ms (489.53µs CPU time)\n\nRan 2 tests for test/ReserveForwarder.t.sol:ForwarderMaliciousTokenTest\n[PASS] testForwardReentrancyBlocked() (gas: 19652634)\n[PASS] testTaxedReserveRejected() (gas: 2114547)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 10.72ms (3.13ms CPU time)\n\nRan 1 test for test/ReceiptEvidence.t.sol:ReceiptEvidenceTest\n[PASS] testActualEthereumReceiptCommitsGenuineWorkDocument() (gas: 485007)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 13.71ms (13.57ms CPU time)\n\nRan 5 tests for test/Task27TrustBoundary.t.sol:Task27TrustBoundaryTest\n[PASS] testDishonestAuthorityCanOmitContributorDespiteValidCommitment() (gas: 4188359)\n[PASS] testDuplicateIdentityCannotMultiplyShares() (gas: 3950399)\n[PASS] testLateCompletionAfterTakeoverWithinSameRoundDoesNotAffectFinanciers() (gas: 5122276)\n[PASS] testRealCabalUUIDCannotQualifyAsUnboundFinancierWork() (gas: 3831217)\n[PASS] testTwoProspectiveJobsUnionHasOneSharePerDistinctWallet() (gas: 4345310)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 14.21ms (8.68ms CPU time)\n\nRan 11 tests for test/Task23Attacks.t.sol:Task23AttacksTest\n[PASS] testBothTokenOrdersUseExactCorrectSettlementSides() (gas: 2936725)\n[PASS] testBurnFailurePreservesBudgetButLpStillExecutes() (gas: 958021)\n[PASS] testDishonestSettlementAndManagerReplacementKeepBidSafe() (gas: 996664)\n[PASS] testDonationAndOtherOwnerCannotRecoverPrincipal() (gas: 1083821)\n[PASS] testLpFailureAfterSwapRollsBackAllChanges() (gas: 1029847)\n[PASS] testOutgoingAndOperationsFallbacksStayDisjointFromMarket() (gas: 978548)\n[PASS] testPredictedMarketChildCannotMasqueradeAsOperationsEoa() (gas: 23237)\nLogs:\n  computeCreateAddress is deprecated. Please use vm.computeCreateAddress instead.\n  computeCreateAddress is deprecated. Please use vm.computeCreateAddress instead.\n\n[PASS] testSandwichPreBidPriceManipulationAndBackrun() (gas: 1878818)\nLogs:\n  Baseline victim FINCR burn: 7406249980801611\n  Sandwiched victim FINCR burn: 6134802565454171\n  Attacker IMD fee loss in this scenario: 23746990909645890966711\n\n[PASS] testThinLiquidityPartialFillRevertsMarketNotBid() (gas: 903674)\n[PASS] testWorkDispatchAndMarketSpendsRemainDisjoint() (gas: 58980665)\n[PASS] testWrongTokenUninitializedPoolAndInvalidSettingsFailClosed() (gas: 48733)\nSuite result: ok. 11 passed; 0 failed; 0 skipped; finished in 92.44ms (86.03ms CPU time)\n\nRan 8 tests for test/Task25Auction.t.sol:Task25AuctionTest\n[PASS] testApprovedCurveAndProtectedStreamsAtAllBoundaries() (gas: 47040)\n[PASS] testApprovedGenesisDecayStartsAtArmWithoutPreMining() (gas: 639218)\n[PASS] testFixedTenResetAndSameBlockCompetitorsStale() (gas: 1022377)\n[PASS] testFuzzGenesisAndEpochPricesNeverRise(uint32,uint32) (runs: 512, μ: 594801, ~: 594717)\nLogs:\n  Bound result 6\n  Bound result 384\n\n[PASS] testNoPreArmDecayAndFirstBidUsesActualLivePrice() (gas: 1611018)\n[PASS] testRepeatedFloorBidsRestartHourWithoutMinimumTenure() (gas: 2520792)\n[PASS] testSameBlockRepeatedTenBidsNeverEscalateOrEmit() (gas: 17261459)\n[PASS] testSuccessiveTenHalfNearOneAndFloorEventsAndIndependentClaims() (gas: 1435438)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 128.70ms (137.11ms CPU time)\n\nRan 12 tests for test/Task27BGenesis.t.sol:Task27BGenesisTest\n[PASS] testAllowanceDoesNotFundOrActivateAndWrongChainCannotDeploy() (gas: 115338)\n[PASS] testConfigurationCannotSelectSpoofTokenOrOperationsAsFounderOrPublisher() (gas: 7322)\n[PASS] testExcessDuplicateAndUnsolicitedTransfersDoNotExpandReserveOrGrantControl() (gas: 475162)\n[PASS] testFuzzFundingHasFixedBoundedRewards(uint96) (runs: 512, μ: 832730, ~: 832595)\nLogs:\n  Bound result 68\n\n[PASS] testJobFailureAndUnauthorizedScopeCannotBlockClaims() (gas: 1372615)\n[PASS] testMaliciousUnboundDuplicateCallbackAndReplayReject() (gas: 1355615)\n[PASS] testMultipleNativeJobsHaveDistinctBindingButNoRecipientFinalization() (gas: 1641046)\n[PASS] testNativeCompletionAfterTakeoverCannotAuthorizeAnyAgentPayout() (gas: 1859949)\n[PASS] testNoPreActivationBidOrEmissionAndExplicitActivation() (gas: 1188014)\n[PASS] testOfficialSuccessHashOfEmptyWorkNeverAuthorizesAgentRewards() (gas: 1530181)\n[PASS] testShortFundingAndFailedActivationPreserveBalancesThenCanRetry() (gas: 393967)\n[PASS] testWrongAuthorityWrongAssetWrongChainAndCodeDrift() (gas: 460743)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 183.17ms (177.53ms CPU time)\n\nRan 12 tests for test/Task15Receiver.t.sol:Task15ReceiverTest\n[PASS] testAuthorityChainFactoryAndRegistryDrift() (gas: 3998180)\n[PASS] testDonationsCannotSelectAndExcessNeverIncreasesReserve() (gas: 3430184)\n[PASS] testFuzzCodeOrConstructorMutationRejected(uint8,uint8) (runs: 512, μ: 2711435, ~: 2711697)\nLogs:\n  Bound result 2\n  Bound result 8\n\n[PASS] testInexactTransferAndRuntimeSubstitutionFailClosed() (gas: 8418421)\n[PASS] testMatchingEarlyLaunchCannotSelectOrConsumeAuthorization() (gas: 11444483)\n[PASS] testMissingFundingAndFailedArmRollbackDoNotConsumeAuthorization() (gas: 8755277)\n[PASS] testOnlyAuthorityAtomicSetupAndFirstPublicBidGenesis() (gas: 6615250)\n[PASS] testReceiverRejectsUnlaunchableSettingsBeforeReceivingFunds() (gas: 53606)\n[PASS] testSourceAssertionsAreFounderReviewedNotIndependentProof() (gas: 2963566)\n[PASS] testTokenCreationAndMinerPrefixMutationRejected() (gas: 3333537)\n[PASS] testWrongRecordsDuplicateArtifactsAndWrongReviewRejected() (gas: 6319083)\n[PASS] testWrongTokenOrCounterfeitMinerArtifactCannotChooseDestination() (gas: 3623657)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 272.83ms (266.08ms CPU time)\n\nRan 14 tests for test/Custody.t.sol:CustodyTest\n[PASS] testBlockedFincrClaimRetainsAccrualAndCredit() (gas: 867397)\n[PASS] testBlockedImdClaimRetainsCredit() (gas: 895745)\n[PASS] testBlockedOperationsClaimKeepsItsBudget() (gas: 603569)\n[PASS] testFalseReturnAndLyingTransferRejectPayment() (gas: 648137)\n[PASS] testFeeOnTransferAndExtraPayerDebitReject() (gas: 736323)\n[PASS] testFuzzWaterfallExactAndGenesisSeparate(uint128) (runs: 512, μ: 1124577, ~: 1129497)\nLogs:\n  Bound result 32\n\n[PASS] testIndependentImdAndOperationsClaimsNoDoublePay() (gas: 1019660)\n[PASS] testNoAllowancePaymentFailsWithoutLiabilitiesOrGenesis() (gas: 338115)\n[PASS] testNonReturningTokenSupportedOnBidAndClaims() (gas: 953847)\n[PASS] testReentrantBidAndCrossFunctionClaimBlocked() (gas: 1279861)\n[PASS] testTaxedOutgoingClaimsRejectAndPreserveBothAssets() (gas: 1088569)\n[PASS] testUnknownWithdrawRescueAndUpgradeSelectorsFail() (gas: 539558)\n[PASS] testUnsolicitedDonationsDoNotCreateClaimsOrMining() (gas: 588801)\n[PASS] testUnsuccessfulSuccessorCannotCreditOrReplaceIncumbent() (gas: 824868)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 301.33ms (302.48ms CPU time)\n\nRan 9 tests for test/Emissions.t.sol:EmissionsTest\n[PASS] testActiveFormerAndFinalClaimsIndependentAcrossEveryBoundary() (gas: 1250816)\n[PASS] testAgentIsolationAndIntervalsNotPaymentAuthorization() (gas: 573567)\n[PASS] testExactWeightsBoundariesAndNoTerminalLump() (gas: 69930)\n[PASS] testFincrBurnReducesSupplyAndCannotGriefArming() (gas: 295785)\n[PASS] testFuzzGlobalConservationMonotonicityAndPartitions(uint256,uint32,uint32,uint32) (runs: 512, μ: 15764, ~: 15688)\nLogs:\n  Bound result 143\n\n[PASS] testIndependentPythonFixturesIncludingTinyAndMaxSupply() (gas: 2800847)\n[PASS] testLongInactivityCannotFreezeLaunchRateAndLastHolderCanClaim() (gas: 867638)\n[PASS] testManyTinyTenuresAndClaimsConserveRounding() (gas: 11138171)\n[PASS] testSplitTenuresVersusUninterruptedAcrossHalvings() (gas: 3722977)\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 421.73ms (427.40ms CPU time)\n\nRan 8 tests for test/ReserveForwarder.t.sol:ReserveForwarderTest\n[PASS] testBlockedTransferRollsBackForwardingAndArming() (gas: 3909188)\n[PASS] testCreationSubstitutionAndAnotherLaunchCannotUseReserve() (gas: 2540299)\n[PASS] testFactoryRegistryAndChainPins() (gas: 3632401)\n[PASS] testFuzzDonationCannotIncreaseForwardedReserve(uint128) (runs: 512, μ: 2253975, ~: 2254079)\n[PASS] testLocalOfficialInterfaceLaunchFundingAndPublicBidGenesis() (gas: 4159045)\n[PASS] testPrematureUnauthorizedArmAndMissingReserve() (gas: 2180314)\n[PASS] testWrongLaunchSourceManifestAndAttestation() (gas: 4089924)\n[PASS] testWrongTokenAndCounterfeitMatchingViews() (gas: 4544149)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 421.78ms (419.75ms CPU time)\n\nRan 13 tests for test/FINCRLaunch.t.sol:FINCRLaunchTest\n[PASS] testConstructorMintsToCallerInsteadOfTransactionOrigin() (gas: 37010)\n[PASS] testConstructorRejectsZeroAndNonDivisibleSupply() (gas: 4098)\n[PASS] testFactoryAndStrangerHaveNoMintAdminOrFreezePowers() (gas: 1981956)\n[PASS] testFactoryNeedsHolderAllowanceAndCannotOverspendIt() (gas: 245206)\n[PASS] testFuzzConstructorAcceptsPositiveMultiplesOf100(uint256) (runs: 512, μ: 27147, ~: 27099)\nLogs:\n  Bound result 32\n\n[PASS] testFuzzConstructorRejectsNonDivisibleSupply(uint256) (runs: 512, μ: 4557, ~: 4557)\n[PASS] testFuzzTransferAndVoluntaryBurnConserveSupply(uint256,uint256) (runs: 512, μ: 168490, ~: 169009)\nLogs:\n  Bound result 453331176249736412080472442\n  Bound result 308669084412557817985225499\n\n[PASS] testLaunchAllocationsAndSwarmClaimArriveWhole() (gas: 295062)\n[PASS] testMetadataAndWholeSupplyMintedToFactoryCaller() (gas: 82122)\n[PASS] testPinnedCreationAndDeployedRuntime() (gas: 13704)\n[PASS] testPoolTransfersArriveWholeInBothDirections() (gas: 197859)\n[PASS] testRuntimeContainsNoForbiddenOpcodes() (gas: 2408272)\n[PASS] testVoluntaryBurnAndOverdrawRevert() (gas: 170132)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 560.44ms (87.54ms CPU time)\n\nRan 10 tests for test/Task15Timing.t.sol:Task15TimingTest\n[PASS] testAdmissionNeedsAuthorityCommittedBodyAndEvidence() (gas: 3494598)\n[PASS] testBindingCommitmentIncludedInSettlementDomainAndCannotReplaceScope() (gas: 4267134)\n[PASS] testBodyRequestAndJobAreOneUseAcrossRoundsEvenIfNoPayout() (gas: 3842571)\n[PASS] testBoundaryCrossingJobNeverMigratesAndRewardsStayQuarantined() (gas: 4267256)\n[PASS] testCannotBindBeforeGenesisBeforeWindowOrAtEnd() (gas: 3518271)\n[PASS] testFirstBidThenSimulatedAdmissionCanBeBoundAndSharedWithoutBudgetExpansion() (gas: 4591168)\n[PASS] testFuzzBindingDelayNeverChangesFixedRoundAllocation(uint32) (runs: 512, μ: 3959945, ~: 3959647)\nLogs:\n  Bound result 32\n\n[PASS] testRequestSubmissionAndAdmissionMustFollowRoundStartInOrder() (gas: 3421630)\n[PASS] testSubmissionBeforeOrAtBindingAndAcceptanceBeforeSubmissionReject() (gas: 4045660)\n[PASS] testUnboundJobCannotBecomeEligibleAtFinalization() (gas: 3446355)\nSuite result: ok. 10 passed; 0 failed; 0 skipped; finished in 573.60ms (571.01ms CPU time)\n\nRan 5 tests for test/Task23Emissions.t.sol:Task23EmissionsTest\n[PASS] testFinalAndFormerFinanciersPlusAgentPaymentsExhaustExactlyReserve() (gas: 945423)\n[PASS] testFuzzReserveSplitAndExactDay365(uint256,uint32) (runs: 512, μ: 13015, ~: 12926)\nLogs:\n  Bound result 302393238673562068257922607066133170075276119508453701209224509120629861124\n\n[PASS] testFuzzTinyIntervalsTelescopeWithoutRoundingLoss(uint256,uint8) (runs: 512, μ: 3729737, ~: 2903258)\nLogs:\n  Bound result 1\n\n[PASS] testNoRewardsOrClockBeforeFirstBidRegardlessOfArmingDelay() (gas: 287987)\n[PASS] testSameBlockAndRapidTakeoversHaveNoDuplicateEmission() (gas: 2793171)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 583.18ms (584.39ms CPU time)\n\nRan 17 tests for test/AgentRounds.t.sol:AgentRoundsTest\n[PASS] testAuthenticatedZeroAgentIdIsNotAnEmptySentinel() (gas: 602692)\n[PASS] testBlockedAgentClaimRollbackAndFinancierIndependence() (gas: 897367)\n[PASS] testClaimBeforeFinalizationAndRecipientSubstitution() (gas: 750694)\n[PASS] testDuplicateAgentOrControllerCannotMultiplyShare() (gas: 557064)\n[PASS] testDuplicateReceiptsSubmissionsAndArtifactsRejected() (gas: 784756)\n[PASS] testEmptyAndExpiredBudgetsRemainQuarantinedNotFutureJackpots() (gas: 1053457)\n[PASS] testFuzzZeroOneManyEqualSharesAndConservation(uint8) (runs: 512, μ: 2983379, ~: 2136999)\n[PASS] testGeneratedCompleteSetEqualRewardsAndNoDoubleClaim() (gas: 1209530)\n[PASS] testIdentityFreshnessExpiryAndCompletionWindow() (gas: 931326)\n[PASS] testIncompleteAcceptedSetCannotExcludeOthersForLargerShare() (gas: 662629)\n[PASS] testJobAndEvidenceReplayAcrossRoundsRejected() (gas: 1086141)\n[PASS] testLastRoundAndFinalFinancierNoSuccessor() (gas: 770662)\n[PASS] testLateOutOfOrderAndBeforeEndCannotTouchLaterRoundOrFinancier() (gas: 1340419)\n[PASS] testRejectedMissingRevokedAndChangedAuthorityFailClosed() (gas: 699230)\n[PASS] testRoundAndProofBoundsAndNoArbitraryVaultExtraction() (gas: 491830)\n[PASS] testTamperedChainJobArtifactIdentityBeneficiaryReceiptAndDomain() (gas: 905600)\n[PASS] testVaultRejectsFutureAgentBudgetEvenFromBoundModule() (gas: 113687)\nSuite result: ok. 17 passed; 0 failed; 0 skipped; finished in 583.43ms (585.29ms CPU time)\n\nRan 15 tests for test/Task16Dispatch.t.sol:Task16DispatchTest\n[PASS] testBindingMustMatchRealRecordedRequestRoundBodyAndTimestamp() (gas: 1753091)\n[PASS] testConfiguredNoncanonicalAssetRefusesDispatch() (gas: 1688579)\n[PASS] testDelayedOrRefusedAdmissionNeverRefundsRepurchasesOrBlocksHuman() (gas: 1941672)\n[PASS] testDispatchRequiresAuthorityExactBodyAndOpenRound() (gas: 1073251)\n[PASS] testDuplicateAndCrossRoundBodyReuseNeverRepurchase() (gas: 1176672)\n[PASS] testFeeDriftUpDownOrRetiredFailsExplicitlyAndRestoresIntent() (gas: 2180366)\n[PASS] testFuzzWorkSpendNeverTouchesOtherBuckets(uint96) (runs: 512, μ: 4667555, ~: 4667618)\nLogs:\n  Bound result 999000000000000020034\n\n[PASS] testInexactPaymentAndIncorrectRequestRecordRollbackEverything() (gas: 2140075)\n[PASS] testInsolventCustodyCannotSpendEvenWhenWorkAccountingLooksSufficient() (gas: 1106997)\n[PASS] testInsufficientBucketCannotSpendOtherLiabilitiesOrDonations() (gas: 1487877)\n[PASS] testPaidBindingRetainsProspectiveSubmissionCutoff() (gas: 2360040)\n[PASS] testReentrantIntakeCannotBidClaimOrDispatchAndOuterFailureRollsBack() (gas: 1516213)\n[PASS] testRequestFailureRollsBackBudgetApprovalNonceAndIntent() (gas: 1647624)\n[PASS] testVaultSpendsActualWorkThenRecordedBindingEqualClaims() (gas: 2631348)\nLogs:\n  Vault dispatch execution gas: 347648\n\n[PASS] testWrongChainAndRuntimeFailClosed() (gas: 1126773)\nSuite result: ok. 15 passed; 0 failed; 0 skipped; finished in 620.40ms (620.88ms CPU time)\n\nRan 21 tests for test/Task15Agents.t.sol:Task15AgentTest\n[PASS] testAuthorityOnlyAndNoReplayAcrossChainOrModule() (gas: 4458600)\n[PASS] testClaimTransferFailurePreservesCreditAndFinancierCanClaim() (gas: 4594811)\n[PASS] testDuplicateAgentOwnerPayoutAndNFTRejected() (gas: 4640654)\n[PASS] testDuplicateReceiptsSubmissionsArtifactsRejected() (gas: 4375160)\n[PASS] testEarlyLateOrOversizedFinalizationCannotPartiallyPay() (gas: 5071491)\n[PASS] testEmptyExpiredAndOutageNeverRollOverOrGateFinancier() (gas: 4549542)\n[PASS] testEthereumOnlyContractOwnerCannotBePaidAtUndeployedAddress() (gas: 4445076)\n[PASS] testExplicitTrustLimitDishonestAuthorityCanMisdirectOnlyAgentBudget() (gas: 4340795)\n[PASS] testFreshSnapshotCutoffAndObservationBinding() (gas: 4215518)\n[PASS] testFuzzEqualSplitWithinRoundCap(uint8) (runs: 512, μ: 7481625, ~: 6207535)\nLogs:\n  Bound result 20\n\n[PASS] testMultipleOwnersEqualSharesAndDeterministicDust() (gas: 4905679)\n[PASS] testOneOwnerClaimsIndependentOfFinancierAndSuccessor() (gas: 4801242)\n[PASS] testOutOfOrderFinalizationAndCrossRoundReceiptReuse() (gas: 4503357)\n[PASS] testOwnerConsentCannotBeReusedForDifferentRound() (gas: 4531521)\n[PASS] testRedirectNeedsOwnerAuthorizationAndFrozenAfterFinalization() (gas: 4559347)\n[PASS] testRegistryOrAdapterNeverTreatedAsOwnerWallet() (gas: 3973918)\n[PASS] testRobinhoodContractRecipientNeedsReviewedClaimPath() (gas: 4803776)\n[PASS] testScopeMustExistAndBeCommittedBeforeEarning() (gas: 3512511)\n[PASS] testScopePolicyAndJobCannotBeReplacedOrReused() (gas: 228120)\n[PASS] testWrongNamespaceWindowOrMissingSnapshotEvidenceRejects() (gas: 4348227)\n[PASS] testWrongUnrelatedJobOrRejectedMissingEvidenceFails() (gas: 3966947)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 631.44ms (645.97ms CPU time)\n\nRan 19 tests for test/FINCRBehavior.t.sol:FINCRBehaviorTest\n[PASS] testApprovalDoesNotAuthorizeBurningAnotherHoldersBalance() (gas: 313494)\n[PASS] testApprovalsAreReplacedAndCanBeRevokedAfterPartialSpend() (gas: 332134)\n[PASS] testBurnedBalanceCannotBeSpentUsingAnExistingAllowance() (gas: 239588)\n[PASS] testConstructorEmitsExactlyOneMintOfTheWholeSupply() (gas: 23889)\n[PASS] testConstructorRejectsExplicitInvalidBoundaries() (gas: 4255)\n[PASS] testEntireSupplyCanBeBurnedAndNeverSpentAgain() (gas: 231044)\n[PASS] testFuzzInsufficientAllowanceCannotMoveEvenOneExtraUnit(uint256,uint256) (runs: 1000, μ: 177859, ~: 178175)\nLogs:\n  Bound result 400000000000000000000000001\n  Bound result 600000000000000000000004280\n\n[PASS] testFuzzInsufficientBalanceRollsBackFiniteOrInfiniteAllowance(uint256,uint256,bool) (runs: 1000, μ: 206402, ~: 206251)\nLogs:\n  Bound result 469495488996263331153434950\n  Bound result 1123967243083737257023724620628127156\n\n[PASS] testFuzzRepeatedDelegatedSpendsCannotExceedTheApprovedTotal(uint256,uint256) (runs: 1000, μ: 288695, ~: 290036)\nLogs:\n  Bound result 400000000000000000000000001\n  Bound result 4281\n\n[PASS] testFuzzSelfTransferPreservesBalanceAndDelegatedSelfTransferConsumesAllowance(uint256,uint256) (runs: 1000, μ: 218979, ~: 219970)\nLogs:\n  Bound result 400000000000000000000000001\n  Bound result 4281\n\n[PASS] testFuzzTransferAndBurnOverdrawRevertAtomically(uint256,uint256) (runs: 1000, μ: 164136, ~: 164747)\nLogs:\n  Bound result 400000000000000000000000001\n  Bound result 115792089237316195423570985008687907853269984665640164039457584007913129644215\n\n[PASS] testFuzzZeroRecipientRevertsWithoutConsumingAllowance(uint256,bool) (runs: 1000, μ: 173387, ~: 174630)\nLogs:\n  Bound result 5584\n\n[PASS] testHolderStillNeedsAllowanceToUseTransferFromOnItself() (gas: 235840)\n[PASS] testInfiniteAllowancePersistsButMaxMinusOneIsFinite() (gas: 354367)\n[PASS] testMaximumTransferAndBurnCannotOverflowBalances() (gas: 134936)\n[PASS] testOneBaseUnitCanBeTransferredDelegatedAndBurned() (gas: 279492)\n[PASS] testTransferFromZeroOwnerCannotMintEvenForZeroAmount() (gas: 139566)\n[PASS] testZeroAddressIsNeverATransferOrApprovalDestination() (gas: 557045)\n[PASS] testZeroTransfersAndZeroBurnFromEmptyHolderEmitEvents() (gas: 202480)\nSuite result: ok. 19 passed; 0 failed; 0 skipped; finished in 664.98ms (1.53s CPU time)\n\nRan 13 tests for test/Auction.t.sol:AuctionTest\n[PASS] testAcceptedQuotesResetToImmutableOpening() (gas: 950445)\n[PASS] testFloorQuotesAtZeroTenThirtySixtyMinutes() (gas: 408870)\n[PASS] testFundingRecheckedAtFirstBid() (gas: 106101)\n[PASS] testFuzzQuoteNeverBelowFloorAndCorrectRounding(uint192,uint192,uint32) (runs: 512, μ: 590070, ~: 592916)\nLogs:\n  Bound result 51889200002368770372044058429744906626407926648594489\n  Bound result 13321900128243159247630902995316599162149856910463103\n\n[PASS] testGenesisNoHeadStartWithEqualOpeningAndFloor() (gas: 629964)\n[PASS] testInvalidConfiguration() (gas: 8554)\n[PASS] testMaxPriceIsNotVoluntaryOverpayment() (gas: 321782)\n[PASS] testResetBoundDoesNotOverflow() (gas: 702188)\n[PASS] testSameBlockSelfTakeoversNoEmissionsAndPartialRecovery() (gas: 1838321)\n[PASS] testStaleDeadlineAndSlippageRollback() (gas: 590938)\n[PASS] testSupplyMismatch() (gas: 104041)\n[PASS] testUnauthorizedArmingMissingFundingAndOneShot() (gas: 366684)\n[PASS] testZeroTerminalAndZeroCaptureResetsImmutableOpening() (gas: 1086504)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 729.25ms (576.08ms CPU time)\n\nRan 12 tests for test/AutoOutgoing.t.sol:AutoOutgoingTest\n[PASS] testComparableWarmExecutionGasAutoVersusPull() (gas: 1426921)\nLogs:\n  Warm pull takeover execution: 246112\n  Warm separate claim execution: 86114\n  Warm automatic takeover execution: 307616\n\n[PASS] testFallbackCreditSurvivesLaterAutomaticPaymentAndLowGasRevertsAtomically() (gas: 1436109)\n[PASS] testFuzzRoundingUsesExistingEntitlement(uint96) (runs: 512, μ: 884954, ~: 889980)\nLogs:\n  Bound result 14\n\n[PASS] testGasExhaustingOutgoingCallCannotHoldSlotHostage() (gas: 883585)\n[PASS] testGenesisAndExactAutomaticPayoutNoDoubleClaim() (gas: 807986)\n[PASS] testIncomingPaymentFailureRollsBackWholeTakeover() (gas: 703149)\n[PASS] testLargeRevertDataCannotExhaustParentOrPersistPartialPayment() (gas: 808784)\n[PASS] testNoReturnExactTransferIsSuccessfulNotFallback() (gas: 736366)\n[PASS] testReentrancyCannotCollectTwiceOrTakeOver() (gas: 827668)\n[PASS] testRevertFalsePartialAndInexactTransfersAreIsolatedThenClaimable() (gas: 4479470)\n[PASS] testSelfBidSpendsOnlyNetWaterfallButDoesNotInflateEmissions() (gas: 724730)\n[PASS] testZeroTerminalBidAndFinalFincrRemainIndependent() (gas: 868741)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 729.27ms (731.89ms CPU time)\n\nRan 12 tests for test/Task23Receiver.t.sol:Task23ReceiverTest\n[PASS] testAuthorityChainFactoryAndRegistryDrift() (gas: 6055817)\n[PASS] testDonationsCannotSelectAndExcessNeverIncreasesReserve() (gas: 4839628)\n[PASS] testFuzzCodeOrConstructorMutationRejected(uint8,uint8) (runs: 512, μ: 4139195, ~: 4139455)\nLogs:\n  Bound result 2\n  Bound result 8\n\n[PASS] testInexactTransferAndRuntimeSubstitutionFailClosed() (gas: 12629815)\n[PASS] testMatchingEarlyLaunchCannotSelectOrConsumeAuthorization() (gas: 16769563)\n[PASS] testMissingFundingAndFailedArmRollbackDoNotConsumeAuthorization() (gas: 12974728)\n[PASS] testOnlyAuthorityAtomicSetupAndFirstPublicBidGenesis() (gas: 9832269)\n[PASS] testReceiverRejectsUnlaunchableSettingsBeforeReceivingFunds() (gas: 55860)\n[PASS] testSourceAssertionsAreFounderReviewedNotIndependentProof() (gas: 4372784)\n[PASS] testTokenCreationAndMinerPrefixMutationRejected() (gas: 5064218)\n[PASS] testWrongRecordsDuplicateArtifactsAndWrongReviewRejected() (gas: 9456383)\n[PASS] testWrongTokenOrCounterfeitMinerArtifactCannotChooseDestination() (gas: 5385700)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 757.48ms (774.58ms CPU time)\n\nRan 14 tests for test/Task23Market.t.sol:Task23MarketTest\n[PASS] testConfiguredMaxBatchCapsBothBuckets() (gas: 1045636)\n[PASS] testDustDeadlineOutputAndLiquidityBounds() (gas: 235147)\n[PASS] testEachBatchCappedAndOldPositionsNeverChange() (gas: 877140)\n[PASS] testEntryPointsRequireSelfOrVaultAndHaveNoWithdrawalEscape() (gas: 356797)\n[PASS] testFirstBidAutomaticallyBurnsLocksAndPaysOperations() (gas: 238341)\n[PASS] testFuzzRepeatedTakeoversAndExecutionsConserve(uint8) (runs: 512, μ: 5201424, ~: 3970325)\nLogs:\n  Bound result 8\n\n[PASS] testGasGriefingChildIsCappedAndBidCompletes() (gas: 1510210)\n[PASS] testLowGasSkipsMarketWithoutBlockingBid() (gas: 470854)\n[PASS] testMarketFailureRestoresBudgetsAndDoesNotBlockTakeover() (gas: 655633)\n[PASS] testOperationsFailureHasExactFallbackAndIndependentClaim() (gas: 911317)\n[PASS] testOperationsInexactTransferRollsBackCreditAndLaterAutoRetry() (gas: 1503623)\n[PASS] testSmallBidThresholdsAccumulateWithoutLosingAllocation() (gas: 1575800)\n[PASS] testTakeoverFullWaterfallAutomaticWithoutOperator() (gas: 945491)\n[PASS] testWrongChainRuntimeAndUnsolicitedCallbacksRejected() (gas: 104680)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 764.62ms (769.69ms CPU time)\n\nRan 1 test for test/Task23Emissions.t.sol:Task23EmissionInvariantTest\n[PASS] invariantFiniteCumulativeSplitClaimsAndSolvency() (runs: 128, calls: 16384, reverts: 0)\n\n╭-------------------------+----------------+-------+---------+----------╮\n| Contract                | Selector       | Calls | Reverts | Discards |\n+=======================================================================+\n| EmissionSequenceHandler | advance        | 4162  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | agentClaim     | 3992  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | bid            | 4113  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | financierClaim | 4117  | 0       | 0        |\n╰-------------------------+----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 2.62s (2.61s CPU time)\n\nRan 1 test for test/Task16Invariant.t.sol:Task16InvariantTest\n[PASS]\nTask16InvariantTest invariants:\n[PASS] invariantActualWorkAndAllImdBucketsRemainSolvent\n[PASS] invariantFiniteAgentAndIndependentFinancierConservation\n Task16InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+----------+-------+---------+----------╮\n| Contract      | Selector | Calls | Reverts | Discards |\n+=======================================================+\n| Task16Handler | advance  | 4162  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | bid      | 4113  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | claim    | 4117  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | dispatch | 3992  | 0       | 0        |\n╰---------------+----------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 4.91s (4.90s CPU time)\n\nRan 1 test for test/MiningInvariant.t.sol:FloorMiningInvariant\n[PASS]\nFloorMiningInvariant invariants:\n[PASS] invariantGenesisEpochAndPositionCannotResetOrBeSeized\n[PASS] invariantImdPayoutsAndEveryBudgetRemainSolvent\n[PASS] invariantReserveSplitConservationAndBeneficiaryNoDoubleClaim\n FloorMiningInvariant invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------+-------+---------+----------╮\n| Contract      | Selector        | Calls | Reverts | Discards |\n+==============================================================+\n| MiningHandler | advance         | 3213  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | bid             | 3281  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | claim           | 3301  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | operationsClaim | 3353  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | staleBid        | 3236  | 0       | 0        |\n╰---------------+-----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 6.49s (6.49s CPU time)\n\nRan 1 test for test/MiningInvariant.t.sol:ZeroMiningInvariant\n[PASS]\nZeroMiningInvariant invariants:\n[PASS] invariantGenesisEpochAndPositionCannotResetOrBeSeized\n[PASS] invariantImdPayoutsAndEveryBudgetRemainSolvent\n[PASS] invariantReserveSplitConservationAndBeneficiaryNoDoubleClaim\n ZeroMiningInvariant invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------+-------+---------+----------╮\n| Contract      | Selector        | Calls | Reverts | Discards |\n+==============================================================+\n| MiningHandler | advance         | 3213  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | bid             | 3281  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | claim           | 3301  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | operationsClaim | 3353  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | staleBid        | 3236  | 0       | 0        |\n╰---------------+-----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 6.64s (6.64s CPU time)\n\nRan 1 test for test/Task23Invariant.t.sol:Task23InvariantTest\n[PASS]\nTask23InvariantTest invariants:\n[PASS] invariantDisjointBucketsAndSolvency\n[PASS] invariantEverySupplementalPositionPersistsAndSumMatches\n[PASS] invariantSupplyBurnOnlyAndReserveConservation\n Task23InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+------------+-------+---------+----------╮\n| Contract      | Selector   | Calls | Reverts | Discards |\n+=========================================================+\n| MarketHandler | bid        | 4089  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | claim      | 4044  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | fundWork   | 4106  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | manipulate | 4145  | 0       | 0        |\n╰---------------+------------+-------+---------+----------╯\n\nLogs:\n  Bound result 999900000000000000000901\n  Bound result 488\n  Bound result 756733248916509320531349\n  Bound result 999999999999999999999998\n  Bound result 777260594047776871340490\n  Bound result 999900000000000000020105\n  Bound result 500\n  Bound result 999900000000000000009062\n  Bound result 83332376334020695\n  Bound result 999900000000000000004661\n  Bound result 999900000000000000010202\n  Bound result 23999999999999999999760\n  Bound result 85000000000000000\n  Bound result 999900000000000000000033\n  Bound result 14\n  Bound result 118860981529935089110701\n  Bound result 999902000000000000000001\n  Bound result 170597111168149634789812\n  Bound result 3628800\n  Bound result 206130223891690901718220\n  Bound result 1273437499657660\n  Bound result 1875\n  Bound result 9746102629260661\n  Bound result 434226586365326529834565\n  Bound result 792793236\n  Bound result 591554264\n  Bound result 999900000000000000021601\n  Bound result 53295089525028194\n  Bound result 3389\n  Bound result 999900000000000000012921\n  Bound result 472\n  Bound result 1\n  Bound result 3468\n  Bound result 999900200000000000000001\n  Bound result 999900000000000000007256\n  Bound result 25660953187735559\n  Bound result 160764407112539628747637\n  Bound result 999902000000000000000001\n  Bound result 1\n  Bound result 100000000000000000002\n  Bound result 295033669358545394397978\n  Bound result 999900000000000000017075\n  Bound result 61\n  Bound result 697899915\n  Bound result 34190500000000000000000\n  Bound result 22472624620919605\n  Bound result 17748\n  Bound result 999900000000000000007978\n  Bound result 999900900000000000000001\n  Bound result 999900000000000000000017\n  Bound result 999900000000000000007258\n  Bound result 3562374016828257\n  Bound result 990712684557369445258506\n  Bound result 2937\n  Bound result 999900000000000000000889\n  Bound result 5528\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 8.69s (8.68s CPU time)\n\nRan 1 test for test/Task15Invariant.t.sol:Task15InvariantTest\n[PASS]\nTask15InvariantTest invariants:\n[PASS] invariantCombinedCustodyAndIsolatedRoundBudgets\n[PASS] invariantIndependentFinanciersAndImdConservation\n Task15InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------------------------+-------+---------+----------╮\n| Contract      | Selector                          | Calls | Reverts | Discards |\n+================================================================================+\n| Task15Handler | advance                           | 2677  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | agentClaim                        | 2700  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | bid                               | 2797  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | financierClaim                    | 2765  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | replayForwardOrUnauthorizedPayout | 2740  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | settle                            | 2705  | 0       | 0        |\n╰---------------+-----------------------------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 10.46s (10.45s CPU time)\n\nRan 1 test for test/IntegrationInvariant.t.sol:IntegrationInvariantTest\n[PASS]\nIntegrationInvariantTest invariants:\n[PASS] invariantCombinedCustodyAndIsolatedRoundBudgets\n[PASS] invariantIndependentFinanciersAndImdConservation\n IntegrationInvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭--------------------+-----------------------------------+-------+---------+----------╮\n| Contract           | Selector                          | Calls | Reverts | Discards |\n+=====================================================================================+\n| IntegrationHandler | advance                           | 2677  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | agentClaim                        | 2700  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | bid                               | 2797  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | financierClaim                    | 2765  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | replayForwardOrUnauthorizedPayout | 2740  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | settle                            | 2705  | 0       | 0        |\n╰--------------------+-----------------------------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 10.93s (10.91s CPU time)\n\nRan 2 tests for test/FINCRInvariant.t.sol:FINCRInvariantTest\n[PASS]\nFINCRInvariantTest invariants:\n[PASS] invariant_AllowancesChangeOnlyByApprovalOrSuccessfulAuthorizedSpend\n[PASS] invariant_BalancesSumToSupplyAndOnlyVoluntaryBurnsReduceIt\n[PASS] invariant_EachHolderOwnsExactlyItsAllocationPlusReceiptsMinusSpendsAndBurns\n[PASS] invariant_LaunchIdentityAndCodeCannotChange\n FINCRInvariantTest invariants (runs: 256, calls: 32768, reverts: 0)\n\n╭--------------+-------------------------------+-------+---------+----------╮\n| Contract     | Selector                      | Calls | Reverts | Discards |\n+===========================================================================+\n| FINCRHandler | approve                       | 4017  | 0       | 0        |\n|--------------+-------------------------------+-------+---------+----------|\n| FINCRHandler | burn                          | 3977  | 0       | 0        |\n|--------------+-------------------------------+-------+---------+----------|\n| FINCRHandler | rejectOverdraw                | 4053  | 0       | 0        |\n|--------------+-------------------------------+-------+---------+----------|\n| FINCRHandler | rejectOverdrawnDelegatedSpend | 4129  | 0       | 0        |\n|--------------+-------------------------------+-------+---------+----------|\n| FINCRHandler | rejectZeroRecipient           | 4165  | 0       | 0        |\n|--------------+-------------------------------+-------+---------+----------|\n| FINCRHandler | revokeAndRejectSpend          | 4154  | 0       | 0        |\n|--------------+-------------------------------+-------+---------+----------|\n| FINCRHandler | transfer                      | 4116  | 0       | 0        |\n|--------------+-------------------------------+-------+---------+----------|\n| FINCRHandler | transferFrom                  | 4157  | 0       | 0        |\n╰--------------+-------------------------------+-------+---------+----------╯\n\nLogs:\n  Bound result 0\n  Bound result 12299751723321714603873823984552343082\n  Bound result 7006\n  Bound result 0\n  Bound result 0\n  Bound result 0\n  Bound result 115792089237316195423570985008687907853269984665640464039457784007913129639935\n  Bound result 9500000000000000000\n  Bound result 0\n  Bound result 0\n  Bound result 348473098336911079569158717358970635\n  Bound result 5463\n  Bound result 0\n  Bound result 0\n  Bound result 104\n  Bound result 0\n  Bound result 5829\n  Bound result 80\n  Bound result 100000\n  Bound result 0\n  Bound result 0\n  Bound result 4058\n  Bound result 485\n  Bound result 0\n  Bound result 7630\n  Bound result 5434770351246496964\n  Bound result 2089076379\n  Bound result 0\n  Bound result 522\n  Bound result 23\n  Bound result 345600\n  Bound result 5310\n  Bound result 115792089237316195423570985008687907853269984665640164039467081369024241097130\n  Bound result 115792089237316195423570985008687907853269984665640164039457584007913130086019\n  Bound result 61\n  Bound result 115792089237316195423570985008687907853269984665640164039458009007913129986020\n  Bound result 36376789322566877215753307371451615070270474205985378\n  Bound result 345600\n  Bound result 0\n  Bound result 11274006393349041421126460398094934186286004719357\n  Bound result 8783\n  Bound result 115792089237316195423570985008687907853269984665640564039457584007913129639563\n  Bound result 0\n  Bound result 7248750000000005866\n  Bound result 2811\n  Bound result 0\n  Bound result 115792089237316195423570985008687907853269984665640464039457584007913129639960\n  Bound result 0\n  Bound result 560\n  Bound result 115792089237316195423570985008687907853269984665640164039458434007913130340402\n  Bound result 0\n  Bound result 115792089237316195423570985008687907853269984665640164039457584007913130348770\n  Bound result 750\n  Bound result 0\n  Bound result 83\n  Bound result 158456325028528675187087900672\n  Bound result 0\n  Bound result 8890\n  Bound result 115792089237316195423570985008687907853269984665640064039507084007913129631151\n  Bound result 8943\n  Bound result 0\n  Bound result 0\n  Bound result 4\n  Bound result 0\n  Bound result 115792089237316195423570985008687907853269984665640384039467084007913129631151\n  Bound result 1502\n  Bound result 115792089237316195423570985008687907853269984665640064039467084007913129631241\n  Bound result 388\n  Bound result 373\n  Bound result 8500000000000000000\n  Bound result 16379283118536272433346862170542824557057156074217600747062433999158509694934\n  Bound result 8581\n  Bound result 115792089237316195423570985008687907853269984665640564039455332757917261880558\n  Bound result 194\n  Bound result 95\n  Bound result 0\n  Bound result 225538363543533885205837593\n  Bound result 61\n  Bound result 8970\n  Bound result 16\n  Bound result 115792089237316195423570985008687907853269984665640564039456232757913129652227\n  Bound result 100\n  Bound result 115792089237316195423570985008687907853269984665640564039457584007913129639935\n  Bound result 95\n  Bound result 107707639309289\n  Bound result 115792089237316195423570985008687907853269984665640564039455333507913129652228\n  Bound result 0\n  Bound result 115792089237316195423570985008687907853269984665640164039457584007913130352892\n  Bound result 0\n  Bound result 0\n  Bound result 16384\n  Bound result 0\n  Bound result 0\n  Bound result 45538373043533885205828809\n  Bound result 115792089237316195423570985008687907853269984665640464039457584007913129798798\n  Bound result 171076746087067770410956400\n  Bound result 0\n  Bound result 0\n  Bound result 115792089237316195423570985008687907853269984665640564039455332757913131652228\n  Bound result 115792089237316195423570985008687907853269984665640506192949758143453952254640\n  Bound result 49152\n  Bound result 259200\n  Bound result 0\n  Bound result 115792089237316195423570985008687907853269984665640464039457584007913129656507\n  Bound result 1800000000\n  Bound result 14081257132168796775484916\n  Bound result 16385\n  Bound result 781179536\n  Bound result 57846507825864459177435136\n  Bound result 100000000000000\n  Bound result 0\n  Bound result 8866\n  Bound result 0\n  Bound result 45538373043533885206029991\n  Bound result 85918742867831204005685756\n  Bound result 57846507825864459177435133\n  Bound result 571076746087067770410238694\n  Bound result 1018820588\n  Bound result 2251249998199728507\n\n[PASS] testHandlerExercisesTransfersAllowancesBurnsAndFailures() (gas: 3858944)\nLogs:\n  Bound result 100\n  Bound result 30\n  Bound result 10\n  Bound result 61\n  Bound result 115792089237316195423570985008687907853269984665640564039457584007913129639935\n  Bound result 1\n  Bound result 61\n  Bound result 1\n  Bound result 0\n  Bound result 99999999999999999999999900\n  Bound result 500000000000000000000000000\n  Bound result 400000000000000000000000030\n  Bound result 60\n  Bound result 0\n\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 21.38s (21.37s CPU time)\n\nRan 35 test suites in 21.38s (81.21s CPU time): 252 tests passed, 0 failed, 0 skipped (252 total tests)\n","passed":true},{"durationMs":78,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"AgentRounds.claim(uint256)\",\"AgentRounds.expire(uint256)\",\"AgentRounds.finalize(uint256,(uint256,address,uint256,address,address,bytes32,bytes32,bytes32,bytes32,uint256,uint256,uint256)[],bytes)\",\"AttestedAgentRounds.bindJob(uint256,(bytes32,bytes32,bytes32,uint256,uint256,bytes32))\",\"AttestedAgentRounds.claim(uint256)\",\"AttestedAgentRounds.expire(uint256)\",\"AttestedAgentRounds.precommitRound(uint256,bytes32[],bytes32)\",\"FINCR.approve(address,uint256)\",\"FINCR.burn(uint256)\",\"FINCR.transfer(address,uint256)\",\"FINCR.transferFrom(address,address,uint256)\",\"FinancierFeeRouter.burnFincr()\",\"FinancierFeeRouter.collect()\",\"FinancierFeeRouter.routeImd()\",\"FinancierMining.arm()\",\"FinancierMining.bid(uint256,uint256,uint256)\",\"FinancierMining.claimFincr()\",\"FinancierMining.claimImd()\",\"FinancierMining.claimOperations()\",\"FinancierMining.payAgentReward(address,uint256)\",\"FinancierMiningWithAgents.arm()\",\"FinancierMiningWithAgents.bid(uint256,uint256,uint256)\",\"FinancierMiningWithAgents.claimFincr()\",\"FinancierMiningWithAgents.claimImd()\",\"FinancierMiningWithAgents.claimOperations()\",\"FinancierMiningWithAgents.payAgentReward(address,uint256)\",\"FinancierMiningWithMarket.arm()\",\"FinancierMiningWithMarket.bid(uint256,uint256,uint256)\",\"FinancierMiningWithMarket.claimFincr()\",\"FinancierMiningWithMarket.claimImd()\",\"FinancierMiningWithMarket.claimOperations()\",\"FinancierMiningWithMarket.dispatchWork(uint256,bytes)\",\"FinancierMiningWithMarket.executeMarket(bool)\",\"FinancierMiningWithMarket.fundWork(uint256)\",\"FinancierMiningWithMarket.payAgentReward(address,uint256)\",\"FinancierMiningWithMarket.payOperationsExact()\",\"FinancierMiningWithMarket.payOutgoingExact(address,uint256)\",\"FinancierMiningWithSettlement.arm()\",\"FinancierMiningWithSettlement.bid(uint256,uint256,uint256)\",\"FinancierMiningWithSettlement.claimFincr()\",\"FinancierMiningWithSettlement.claimImd()\",\"FinancierMiningWithSettlement.claimOperations()\",\"FinancierMiningWithSettlement.dispatchWork(uint256,bytes)\",\"FinancierMiningWithSettlement.payAgentReward(address,uint256)\",\"FinancierMiningWithSettlement.payOutgoingExact(address,uint256)\",\"FounderFundedMining.arm()\",\"FounderFundedMining.bid(uint256,uint256,uint256)\",\"FounderFundedMining.claimFincr()\",\"FounderFundedMining.claimImd()\",\"FounderFundedMining.claimOperations()\",\"FounderFundedMining.dispatchWork(uint256,bytes)\",\"FounderFundedMining.executeMarket(bool)\",\"FounderFundedMining.fundWork(uint256)\",\"FounderFundedMining.onFailure(bytes32,uint8,bytes32,uint16,uint16,bytes)\",\"FounderFundedMining.onResult(bytes32,bytes32,string)\",\"FounderFundedMining.payAgentReward(address,uint256)\",\"FounderFundedMining.payOperationsExact()\",\"FounderFundedMining.payOutgoingExact(address,uint256)\",\"PermanentV4Market.execute((uint256,uint256,uint256,uint256),bool)\",\"PermanentV4Market.unlockCallback(bytes)\",\"ReserveForwarder.forward(bytes,bytes)\",\"RestrictedMarketReserveReceiver.bootstrap(uint64,bytes,bytes,bytes32)\",\"RestrictedReserveReceiver.bootstrap(uint64,bytes,bytes,bytes32)\",\"RobinhoodJobController.commission(uint256,uint256)\",\"RobinhoodJobController.prepareRound(uint256)\"],\"files\":{\".github/workflows/contracts.yml\":15,\".gitignore\":8,\".gitmodules\":6,\"ADAPTATION.md\":131,\"LICENSE\":21,\"README.md\":98,\"SNAPSHOT.json\":153,\"abi/AttestedAgentRounds.json\":1515,\"abi/FINCR.json\":347,\"abi/FounderFundedMining.json\":1989,\"abi/PermanentV4Market.json\":682,\"abi/RobinhoodJobController.json\":110,\"foundry.lock\":14,\"foundry.toml\":18,\"script/readiness_rpc.py\":107,\"script/rehearse-real-factory.py\":90,\"src/AgentRounds.sol\":197,\"src/AttestedAgentRounds.sol\":432,\"src/EmissionSchedule.sol\":32,\"src/FINCR.sol\":21,\"src/FinancierFeeRouter.sol\":89,\"src/FinancierMining.sol\":329,\"src/FinancierMiningWithAgents.sol\":31,\"src/FinancierMiningWithMarket.sol\":161,\"src/FinancierMiningWithSettlement.sol\":159,\"src/FounderFundedMining.sol\":103,\"src/ReserveForwarder.sol\":189,\"src/RestrictedMarketReserveReceiver.sol\":222,\"src/RestrictedReserveReceiver.sol\":214,\"src/RobinhoodJobController.sol\":49,\"src/UnavailableWorkVerifier.sol\":17,\"src/interfaces/IAgentWorkVerifier.sol\":38,\"src/interfaces/IIMDIntake.sol\":24,\"src/interfaces/IIMDIntakeViews.sol\":9,\"src/interfaces/IIMDLaunch.sol\":32,\"src/market/IV4Market.sol\":38,\"src/market/PermanentV4Market.sol\":255,\"test/AgentRounds.t.sol\":384,\"test/Auction.t.sol\":188,\"test/AutoOutgoing.t.sol\":327,\"test/Custody.t.sol\":228,\"test/Emissions.t.sol\":203,\"test/FINCRBehavior.t.sol\":368,\"test/FINCRInvariant.t.sol\":109,\"test/FINCRLaunch.t.sol\":219,\"test/FINCR_TESTS.md\":40,\"test/IntakeInterface.t.sol\":79,\"test/IntegrationInvariant.t.sol\":221,\"test/IntegrationRehearsal.t.sol\":45,\"test/MiningInvariant.t.sol\":198,\"test/ReceiptEvidence.t.sol\":30,\"test/ReserveForwarder.t.sol\":191,\"test/SecurityReview.t.sol\":15,\"test/Task15Agents.t.sol\":399,\"test/Task15Invariant.t.sol\":260,\"test/Task15Receiver.t.sol\":202,\"test/Task15Timing.t.sol\":220,\"test/Task16Dispatch.t.sol\":365,\"test/Task16Invariant.t.sol\":140,\"test/Task23Attacks.t.sol\":220,\"test/Task23Emissions.t.sol\":216,\"test/Task23Invariant.t.sol\":82,\"test/Task23Market.t.sol\":228,\"test/Task23Receiver.t.sol\":202,\"test/Task25Auction.t.sol\":187,\"test/Task25Funding.t.sol\":51,\"test/Task27BGenesis.t.sol\":218,\"test/Task27TrustBoundary.t.sol\":102,\"test/WorkEvidence.t.sol\":32,\"test/fixtures/emissions.json\":1374,\"test/fixtures/imd-work/artifact.json\":9,\"test/fixtures/imd-work/records.json\":1,\"test/fixtures/imd-work/review.json\":1,\"test/fixtures/imd-work/work-record.json\":1,\"test/fixtures/real-chain/launch-1727-calldata.json\":3,\"test/fixtures/real-chain/work-receipt.json\":1543,\"test/fixtures/task16/README.md\":7,\"test/fixtures/task16/imd-runtime.hex\":1,\"test/fixtures/task16/intake-runtime.hex\":1,\"test/fixtures/task23/guard-runtime.hex\":1,\"test/fixtures/task23/manager-runtime.hex\":1,\"test/fixtures/task6/ethereum-oracle.json\":1,\"test/fixtures/task6/pinky-callback.json\":77,\"test/fixtures/task6/robinhood-oracle.json\":1,\"test/helpers/FINCRHandler.sol\":142,\"test/helpers/IntegrationBase.sol\":163,\"test/helpers/LaunchMocks.sol\":106,\"test/helpers/MiningTestBase.sol\":61,\"test/helpers/MockToken.sol\":70,\"test/helpers/RoundVerifierMock.sol\":24,\"test/helpers/Task15Base.sol\":187,\"test/helpers/Task16Base.sol\":175,\"test/helpers/Task23Base.sol\":159,\"test/helpers/Task23ReceiverBase.sol\":110,\"verification/fork/AttestedWorkForkFixture.sol\":121,\"verification/fork/IProjectFactory.sol\":66,\"verification/fork/LICENSE-HMM\":21,\"verification/fork/MarketForkFixture.sol\":145,\"verification/fork/ResearchUtility.t.sol\":44,\"verification/fork/RobinhoodFactory.t.sol\":303,\"verification/fork/RobinhoodIntake.t.sol\":109,\"verification/fork/Task15Bootstrap.t.sol\":207,\"verification/fork/Task23Market.t.sol\":265,\"verification/fork/Task25Launch.t.sol\":263,\"verification/fork/Task27BFounder.t.sol\":99,\"verification/fork/Task8Receiver.t.sol\":423,\"verification/task8/IsolatedReserveReceiver.sol\":175},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":false}","passed":true}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"00be561e3a25558f359be2bbb9d3c7a4eaf1ef7dce89a92bf3bc0f52892ed7be","verifiedTreeHash":"5896ae1c5499f9c788407dacb589f23cdb9c77e5","verifierVersion":"0.1.0+6a374fcd"},{"checks":[{"durationMs":15356,"exitCode":0,"name":"build","output":"Compiling 94 files with Solc 0.8.30\nSolc 0.8.30 finished in 15.23s\nCompiler run successful with warnings:\nWarning (2519): This declaration shadows an existing declaration.\n  --> test/Task23Emissions.t.sol:67:13:\n   |\n67 |             address a = address(uint160(101 + i % 3));\n   |             ^^^^^^^^^\nNote: The shadowed declaration is here:\n  --> test/Task23Emissions.t.sol:76:23:\n   |\n76 |         (, uint256 f, uint256 a) = vault.cumulativeAt(1);\n   |                       ^^^^^^^^^\n\n","passed":true},{"durationMs":10520,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 1 test for test/SecurityReview.t.sol:SecurityReviewTest\n[PASS] testRejectSelfInitializerThatCanNeverArm() (gas: 1885324)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 457.90µs (311.41µs CPU time)\n\nRan 2 tests for test/IntakeInterface.t.sol:IntakeInterfaceTest\n[PASS] testNoWorkBudgetSpenderAllowanceOrGenericExecutor() (gas: 30060139)\n[PASS] testPublishedAbiEncodingAndCallbackBinding() (gas: 318511)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.02ms (3.86ms CPU time)\n\nRan 1 test for test/ReceiptEvidence.t.sol:ReceiptEvidenceTest\n[PASS] testActualEthereumReceiptCommitsGenuineWorkDocument() (gas: 485007)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 4.13ms (4.01ms CPU time)\n\nRan 2 tests for test/Task25Funding.t.sol:Task25FundingTest\n[PASS] testFundingRejectsShortTransferAndReentrancy() (gas: 1605506)\n[PASS] testWorkFundingHasNoBidRewardOrAuthorityRights() (gas: 346055)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.29ms (557.67µs CPU time)\n\nRan 1 test for test/IntegrationRehearsal.t.sol:IntegrationRehearsalTest\n[PASS] testLocalLaunchFundingTakeoverAndGeneratedAgentSettlement() (gas: 31175548)\nLogs:\n  First agent round FINCR base units paid (GENERATED proofs): 1959183673469387755102040\n  Outgoing financier FINCR base units claimed: 54421768707482993197278\n  Outgoing financier IMD base units claimed: 800000000000000000\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 5.31ms (5.06ms CPU time)\n\nRan 2 tests for test/ReserveForwarder.t.sol:ForwarderMaliciousTokenTest\n[PASS] testForwardReentrancyBlocked() (gas: 19652634)\n[PASS] testTaxedReserveRejected() (gas: 2114547)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 5.97ms (2.17ms CPU time)\n\nRan 2 tests for test/AgentRounds.t.sol:AgentFailureIsolationTest\n[PASS] testClaimReentrancyBlocked() (gas: 32110365)\n[PASS] testRealBoundaryIsDisabledAndUnknownProofCannotPay() (gas: 1968933)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 6.04ms (5.75ms CPU time)\n\nRan 5 tests for test/Task27TrustBoundary.t.sol:Task27TrustBoundaryTest\n[PASS] testDishonestAuthorityCanOmitContributorDespiteValidCommitment() (gas: 4188359)\n[PASS] testDuplicateIdentityCannotMultiplyShares() (gas: 3950399)\n[PASS] testLateCompletionAfterTakeoverWithinSameRoundDoesNotAffectFinanciers() (gas: 5122276)\n[PASS] testRealCabalUUIDCannotQualifyAsUnboundFinancierWork() (gas: 3831217)\n[PASS] testTwoProspectiveJobsUnionHasOneSharePerDistinctWallet() (gas: 4345310)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 10.54ms (7.91ms CPU time)\n\nRan 2 tests for test/WorkEvidence.t.sol:WorkEvidenceTest\n[PASS] testGenuineDocumentsMatchPublishedCommitmentAndTamperingChangesHash() (gas: 22811)\n[PASS] testGenuineJsonAloneCannotAuthorizeProductionRewards() (gas: 17607)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 438.13µs (339.70µs CPU time)\n\nRan 13 tests for test/FINCRLaunch.t.sol:FINCRLaunchTest\n[PASS] testConstructorMintsToCallerInsteadOfTransactionOrigin() (gas: 37010)\n[PASS] testConstructorRejectsZeroAndNonDivisibleSupply() (gas: 4098)\n[PASS] testFactoryAndStrangerHaveNoMintAdminOrFreezePowers() (gas: 1981956)\n[PASS] testFactoryNeedsHolderAllowanceAndCannotOverspendIt() (gas: 245206)\n[PASS] testFuzzConstructorAcceptsPositiveMultiplesOf100(uint256) (runs: 512, μ: 27148, ~: 27099)\nLogs:\n  Bound result 32\n\n[PASS] testFuzzConstructorRejectsNonDivisibleSupply(uint256) (runs: 512, μ: 4557, ~: 4557)\n[PASS] testFuzzTransferAndVoluntaryBurnConserveSupply(uint256,uint256) (runs: 512, μ: 168514, ~: 169009)\nLogs:\n  Bound result 453331176249736412080472442\n  Bound result 102\n\n[PASS] testLaunchAllocationsAndSwarmClaimArriveWhole() (gas: 295062)\n[PASS] testMetadataAndWholeSupplyMintedToFactoryCaller() (gas: 82122)\n[PASS] testPinnedCreationAndDeployedRuntime() (gas: 13704)\n[PASS] testPoolTransfersArriveWholeInBothDirections() (gas: 197859)\n[PASS] testRuntimeContainsNoForbiddenOpcodes() (gas: 2408272)\n[PASS] testVoluntaryBurnAndOverdrawRevert() (gas: 170132)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 79.89ms (125.90ms CPU time)\n\nRan 13 tests for test/Auction.t.sol:AuctionTest\n[PASS] testAcceptedQuotesResetToImmutableOpening() (gas: 950445)\n[PASS] testFloorQuotesAtZeroTenThirtySixtyMinutes() (gas: 408870)\n[PASS] testFundingRecheckedAtFirstBid() (gas: 106101)\n[PASS] testFuzzQuoteNeverBelowFloorAndCorrectRounding(uint192,uint192,uint32) (runs: 512, μ: 590054, ~: 592916)\nLogs:\n  Bound result 51889200002368770372044058429744906626407926648594489\n  Bound result 13321900128243159247630902995316599162149856910463103\n\n[PASS] testGenesisNoHeadStartWithEqualOpeningAndFloor() (gas: 629964)\n[PASS] testInvalidConfiguration() (gas: 8554)\n[PASS] testMaxPriceIsNotVoluntaryOverpayment() (gas: 321782)\n[PASS] testResetBoundDoesNotOverflow() (gas: 702188)\n[PASS] testSameBlockSelfTakeoversNoEmissionsAndPartialRecovery() (gas: 1838321)\n[PASS] testStaleDeadlineAndSlippageRollback() (gas: 590938)\n[PASS] testSupplyMismatch() (gas: 104041)\n[PASS] testUnauthorizedArmingMissingFundingAndOneShot() (gas: 366684)\n[PASS] testZeroTerminalAndZeroCaptureResetsImmutableOpening() (gas: 1086504)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 169.63ms (171.30ms CPU time)\n\nRan 12 tests for test/Task27BGenesis.t.sol:Task27BGenesisTest\n[PASS] testAllowanceDoesNotFundOrActivateAndWrongChainCannotDeploy() (gas: 115338)\n[PASS] testConfigurationCannotSelectSpoofTokenOrOperationsAsFounderOrPublisher() (gas: 7322)\n[PASS] testExcessDuplicateAndUnsolicitedTransfersDoNotExpandReserveOrGrantControl() (gas: 475162)\n[PASS] testFuzzFundingHasFixedBoundedRewards(uint96) (runs: 512, μ: 832730, ~: 832595)\nLogs:\n  Bound result 68\n\n[PASS] testJobFailureAndUnauthorizedScopeCannotBlockClaims() (gas: 1372615)\n[PASS] testMaliciousUnboundDuplicateCallbackAndReplayReject() (gas: 1355615)\n[PASS] testMultipleNativeJobsHaveDistinctBindingButNoRecipientFinalization() (gas: 1641046)\n[PASS] testNativeCompletionAfterTakeoverCannotAuthorizeAnyAgentPayout() (gas: 1859949)\n[PASS] testNoPreActivationBidOrEmissionAndExplicitActivation() (gas: 1188014)\n[PASS] testOfficialSuccessHashOfEmptyWorkNeverAuthorizesAgentRewards() (gas: 1530181)\n[PASS] testShortFundingAndFailedActivationPreserveBalancesThenCanRetry() (gas: 393967)\n[PASS] testWrongAuthorityWrongAssetWrongChainAndCodeDrift() (gas: 460743)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 175.72ms (177.31ms CPU time)\n\nRan 14 tests for test/Custody.t.sol:CustodyTest\n[PASS] testBlockedFincrClaimRetainsAccrualAndCredit() (gas: 867397)\n[PASS] testBlockedImdClaimRetainsCredit() (gas: 895745)\n[PASS] testBlockedOperationsClaimKeepsItsBudget() (gas: 603569)\n[PASS] testFalseReturnAndLyingTransferRejectPayment() (gas: 648137)\n[PASS] testFeeOnTransferAndExtraPayerDebitReject() (gas: 736323)\n[PASS] testFuzzWaterfallExactAndGenesisSeparate(uint128) (runs: 512, μ: 1124622, ~: 1129497)\nLogs:\n  Bound result 32\n\n[PASS] testIndependentImdAndOperationsClaimsNoDoublePay() (gas: 1019660)\n[PASS] testNoAllowancePaymentFailsWithoutLiabilitiesOrGenesis() (gas: 338115)\n[PASS] testNonReturningTokenSupportedOnBidAndClaims() (gas: 953847)\n[PASS] testReentrantBidAndCrossFunctionClaimBlocked() (gas: 1279861)\n[PASS] testTaxedOutgoingClaimsRejectAndPreserveBothAssets() (gas: 1088569)\n[PASS] testUnknownWithdrawRescueAndUpgradeSelectorsFail() (gas: 539558)\n[PASS] testUnsolicitedDonationsDoNotCreateClaimsOrMining() (gas: 588801)\n[PASS] testUnsuccessfulSuccessorCannotCreditOrReplaceIncumbent() (gas: 824868)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 189.44ms (191.07ms CPU time)\n\nRan 8 tests for test/ReserveForwarder.t.sol:ReserveForwarderTest\n[PASS] testBlockedTransferRollsBackForwardingAndArming() (gas: 3909188)\n[PASS] testCreationSubstitutionAndAnotherLaunchCannotUseReserve() (gas: 2540299)\n[PASS] testFactoryRegistryAndChainPins() (gas: 3632401)\n[PASS] testFuzzDonationCannotIncreaseForwardedReserve(uint128) (runs: 512, μ: 2253975, ~: 2254079)\n[PASS] testLocalOfficialInterfaceLaunchFundingAndPublicBidGenesis() (gas: 4159045)\n[PASS] testPrematureUnauthorizedArmAndMissingReserve() (gas: 2180314)\n[PASS] testWrongLaunchSourceManifestAndAttestation() (gas: 4089924)\n[PASS] testWrongTokenAndCounterfeitMatchingViews() (gas: 4544149)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 468.55ms (469.16ms CPU time)\n\nRan 10 tests for test/Task15Timing.t.sol:Task15TimingTest\n[PASS] testAdmissionNeedsAuthorityCommittedBodyAndEvidence() (gas: 3494598)\n[PASS] testBindingCommitmentIncludedInSettlementDomainAndCannotReplaceScope() (gas: 4267134)\n[PASS] testBodyRequestAndJobAreOneUseAcrossRoundsEvenIfNoPayout() (gas: 3842571)\n[PASS] testBoundaryCrossingJobNeverMigratesAndRewardsStayQuarantined() (gas: 4267256)\n[PASS] testCannotBindBeforeGenesisBeforeWindowOrAtEnd() (gas: 3518271)\n[PASS] testFirstBidThenSimulatedAdmissionCanBeBoundAndSharedWithoutBudgetExpansion() (gas: 4591168)\n[PASS] testFuzzBindingDelayNeverChangesFixedRoundAllocation(uint32) (runs: 512, μ: 3959948, ~: 3959647)\nLogs:\n  Bound result 32\n\n[PASS] testRequestSubmissionAndAdmissionMustFollowRoundStartInOrder() (gas: 3421630)\n[PASS] testSubmissionBeforeOrAtBindingAndAcceptanceBeforeSubmissionReject() (gas: 4045660)\n[PASS] testUnboundJobCannotBecomeEligibleAtFinalization() (gas: 3446355)\nSuite result: ok. 10 passed; 0 failed; 0 skipped; finished in 469.69ms (470.47ms CPU time)\n\nRan 11 tests for test/Task23Attacks.t.sol:Task23AttacksTest\n[PASS] testBothTokenOrdersUseExactCorrectSettlementSides() (gas: 2936725)\n[PASS] testBurnFailurePreservesBudgetButLpStillExecutes() (gas: 958021)\n[PASS] testDishonestSettlementAndManagerReplacementKeepBidSafe() (gas: 996664)\n[PASS] testDonationAndOtherOwnerCannotRecoverPrincipal() (gas: 1083821)\n[PASS] testLpFailureAfterSwapRollsBackAllChanges() (gas: 1029847)\n[PASS] testOutgoingAndOperationsFallbacksStayDisjointFromMarket() (gas: 978548)\n[PASS] testPredictedMarketChildCannotMasqueradeAsOperationsEoa() (gas: 23237)\nLogs:\n  computeCreateAddress is deprecated. Please use vm.computeCreateAddress instead.\n  computeCreateAddress is deprecated. Please use vm.computeCreateAddress instead.\n\n[PASS] testSandwichPreBidPriceManipulationAndBackrun() (gas: 1878818)\nLogs:\n  Baseline victim FINCR burn: 7406249980801611\n  Sandwiched victim FINCR burn: 6134802565454171\n  Attacker IMD fee loss in this scenario: 23746990909645890966711\n\n[PASS] testThinLiquidityPartialFillRevertsMarketNotBid() (gas: 903674)\n[PASS] testWorkDispatchAndMarketSpendsRemainDisjoint() (gas: 58980665)\n[PASS] testWrongTokenUninitializedPoolAndInvalidSettingsFailClosed() (gas: 48733)\nSuite result: ok. 11 passed; 0 failed; 0 skipped; finished in 478.19ms (82.75ms CPU time)\n\nRan 17 tests for test/AgentRounds.t.sol:AgentRoundsTest\n[PASS] testAuthenticatedZeroAgentIdIsNotAnEmptySentinel() (gas: 602692)\n[PASS] testBlockedAgentClaimRollbackAndFinancierIndependence() (gas: 897367)\n[PASS] testClaimBeforeFinalizationAndRecipientSubstitution() (gas: 750694)\n[PASS] testDuplicateAgentOrControllerCannotMultiplyShare() (gas: 557064)\n[PASS] testDuplicateReceiptsSubmissionsAndArtifactsRejected() (gas: 784756)\n[PASS] testEmptyAndExpiredBudgetsRemainQuarantinedNotFutureJackpots() (gas: 1053457)\n[PASS] testFuzzZeroOneManyEqualSharesAndConservation(uint8) (runs: 512, μ: 2923860, ~: 2019027)\n[PASS] testGeneratedCompleteSetEqualRewardsAndNoDoubleClaim() (gas: 1209530)\n[PASS] testIdentityFreshnessExpiryAndCompletionWindow() (gas: 931326)\n[PASS] testIncompleteAcceptedSetCannotExcludeOthersForLargerShare() (gas: 662629)\n[PASS] testJobAndEvidenceReplayAcrossRoundsRejected() (gas: 1086141)\n[PASS] testLastRoundAndFinalFinancierNoSuccessor() (gas: 770662)\n[PASS] testLateOutOfOrderAndBeforeEndCannotTouchLaterRoundOrFinancier() (gas: 1340419)\n[PASS] testRejectedMissingRevokedAndChangedAuthorityFailClosed() (gas: 699230)\n[PASS] testRoundAndProofBoundsAndNoArbitraryVaultExtraction() (gas: 491830)\n[PASS] testTamperedChainJobArtifactIdentityBeneficiaryReceiptAndDomain() (gas: 905600)\n[PASS] testVaultRejectsFutureAgentBudgetEvenFromBoundModule() (gas: 113687)\nSuite result: ok. 17 passed; 0 failed; 0 skipped; finished in 478.45ms (477.20ms CPU time)\n\nRan 5 tests for test/Task23Emissions.t.sol:Task23EmissionsTest\n[PASS] testFinalAndFormerFinanciersPlusAgentPaymentsExhaustExactlyReserve() (gas: 945423)\n[PASS] testFuzzReserveSplitAndExactDay365(uint256,uint32) (runs: 512, μ: 13023, ~: 12926)\nLogs:\n  Bound result 4537774950526692772280732776088092836213\n\n[PASS] testFuzzTinyIntervalsTelescopeWithoutRoundingLoss(uint256,uint8) (runs: 512, μ: 3580134, ~: 2813296)\nLogs:\n  Bound result 10\n\n[PASS] testNoRewardsOrClockBeforeFirstBidRegardlessOfArmingDelay() (gas: 287987)\n[PASS] testSameBlockAndRapidTakeoversHaveNoDuplicateEmission() (gas: 2793171)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 478.28ms (489.17ms CPU time)\n\nRan 15 tests for test/Task16Dispatch.t.sol:Task16DispatchTest\n[PASS] testBindingMustMatchRealRecordedRequestRoundBodyAndTimestamp() (gas: 1753091)\n[PASS] testConfiguredNoncanonicalAssetRefusesDispatch() (gas: 1688579)\n[PASS] testDelayedOrRefusedAdmissionNeverRefundsRepurchasesOrBlocksHuman() (gas: 1941672)\n[PASS] testDispatchRequiresAuthorityExactBodyAndOpenRound() (gas: 1073251)\n[PASS] testDuplicateAndCrossRoundBodyReuseNeverRepurchase() (gas: 1176672)\n[PASS] testFeeDriftUpDownOrRetiredFailsExplicitlyAndRestoresIntent() (gas: 2180366)\n[PASS] testFuzzWorkSpendNeverTouchesOtherBuckets(uint96) (runs: 512, μ: 4667555, ~: 4667618)\nLogs:\n  Bound result 999000000000000001284\n\n[PASS] testInexactPaymentAndIncorrectRequestRecordRollbackEverything() (gas: 2140075)\n[PASS] testInsolventCustodyCannotSpendEvenWhenWorkAccountingLooksSufficient() (gas: 1106997)\n[PASS] testInsufficientBucketCannotSpendOtherLiabilitiesOrDonations() (gas: 1487877)\n[PASS] testPaidBindingRetainsProspectiveSubmissionCutoff() (gas: 2360040)\n[PASS] testReentrantIntakeCannotBidClaimOrDispatchAndOuterFailureRollsBack() (gas: 1516213)\n[PASS] testRequestFailureRollsBackBudgetApprovalNonceAndIntent() (gas: 1647624)\n[PASS] testVaultSpendsActualWorkThenRecordedBindingEqualClaims() (gas: 2631348)\nLogs:\n  Vault dispatch execution gas: 347648\n\n[PASS] testWrongChainAndRuntimeFailClosed() (gas: 1126773)\nSuite result: ok. 15 passed; 0 failed; 0 skipped; finished in 478.45ms (481.69ms CPU time)\n\nRan 12 tests for test/Task15Receiver.t.sol:Task15ReceiverTest\n[PASS] testAuthorityChainFactoryAndRegistryDrift() (gas: 3998180)\n[PASS] testDonationsCannotSelectAndExcessNeverIncreasesReserve() (gas: 3430184)\n[PASS] testFuzzCodeOrConstructorMutationRejected(uint8,uint8) (runs: 512, μ: 2711424, ~: 2711697)\nLogs:\n  Bound result 4\n  Bound result 10\n\n[PASS] testInexactTransferAndRuntimeSubstitutionFailClosed() (gas: 8418421)\n[PASS] testMatchingEarlyLaunchCannotSelectOrConsumeAuthorization() (gas: 11444483)\n[PASS] testMissingFundingAndFailedArmRollbackDoNotConsumeAuthorization() (gas: 8755277)\n[PASS] testOnlyAuthorityAtomicSetupAndFirstPublicBidGenesis() (gas: 6615250)\n[PASS] testReceiverRejectsUnlaunchableSettingsBeforeReceivingFunds() (gas: 53606)\n[PASS] testSourceAssertionsAreFounderReviewedNotIndependentProof() (gas: 2963566)\n[PASS] testTokenCreationAndMinerPrefixMutationRejected() (gas: 3333537)\n[PASS] testWrongRecordsDuplicateArtifactsAndWrongReviewRejected() (gas: 6319083)\n[PASS] testWrongTokenOrCounterfeitMinerArtifactCannotChooseDestination() (gas: 3623657)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 584.24ms (594.17ms CPU time)\n\nRan 12 tests for test/AutoOutgoing.t.sol:AutoOutgoingTest\n[PASS] testComparableWarmExecutionGasAutoVersusPull() (gas: 1426921)\nLogs:\n  Warm pull takeover execution: 246112\n  Warm separate claim execution: 86114\n  Warm automatic takeover execution: 307616\n\n[PASS] testFallbackCreditSurvivesLaterAutomaticPaymentAndLowGasRevertsAtomically() (gas: 1436109)\n[PASS] testFuzzRoundingUsesExistingEntitlement(uint96) (runs: 512, μ: 884954, ~: 889980)\nLogs:\n  Bound result 14\n\n[PASS] testGasExhaustingOutgoingCallCannotHoldSlotHostage() (gas: 883585)\n[PASS] testGenesisAndExactAutomaticPayoutNoDoubleClaim() (gas: 807986)\n[PASS] testIncomingPaymentFailureRollsBackWholeTakeover() (gas: 703149)\n[PASS] testLargeRevertDataCannotExhaustParentOrPersistPartialPayment() (gas: 808784)\n[PASS] testNoReturnExactTransferIsSuccessfulNotFallback() (gas: 736366)\n[PASS] testReentrancyCannotCollectTwiceOrTakeOver() (gas: 827668)\n[PASS] testRevertFalsePartialAndInexactTransfersAreIsolatedThenClaimable() (gas: 4479470)\n[PASS] testSelfBidSpendsOnlyNetWaterfallButDoesNotInflateEmissions() (gas: 724730)\n[PASS] testZeroTerminalBidAndFinalFincrRemainIndependent() (gas: 868741)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 584.24ms (588.26ms CPU time)\n\nRan 21 tests for test/Task15Agents.t.sol:Task15AgentTest\n[PASS] testAuthorityOnlyAndNoReplayAcrossChainOrModule() (gas: 4458600)\n[PASS] testClaimTransferFailurePreservesCreditAndFinancierCanClaim() (gas: 4594811)\n[PASS] testDuplicateAgentOwnerPayoutAndNFTRejected() (gas: 4640654)\n[PASS] testDuplicateReceiptsSubmissionsArtifactsRejected() (gas: 4375160)\n[PASS] testEarlyLateOrOversizedFinalizationCannotPartiallyPay() (gas: 5071491)\n[PASS] testEmptyExpiredAndOutageNeverRollOverOrGateFinancier() (gas: 4549542)\n[PASS] testEthereumOnlyContractOwnerCannotBePaidAtUndeployedAddress() (gas: 4445076)\n[PASS] testExplicitTrustLimitDishonestAuthorityCanMisdirectOnlyAgentBudget() (gas: 4340795)\n[PASS] testFreshSnapshotCutoffAndObservationBinding() (gas: 4215518)\n[PASS] testFuzzEqualSplitWithinRoundCap(uint8) (runs: 512, μ: 7400924, ~: 6207877)\nLogs:\n  Bound result 1\n\n[PASS] testMultipleOwnersEqualSharesAndDeterministicDust() (gas: 4905679)\n[PASS] testOneOwnerClaimsIndependentOfFinancierAndSuccessor() (gas: 4801242)\n[PASS] testOutOfOrderFinalizationAndCrossRoundReceiptReuse() (gas: 4503357)\n[PASS] testOwnerConsentCannotBeReusedForDifferentRound() (gas: 4531521)\n[PASS] testRedirectNeedsOwnerAuthorizationAndFrozenAfterFinalization() (gas: 4559347)\n[PASS] testRegistryOrAdapterNeverTreatedAsOwnerWallet() (gas: 3973918)\n[PASS] testRobinhoodContractRecipientNeedsReviewedClaimPath() (gas: 4803776)\n[PASS] testScopeMustExistAndBeCommittedBeforeEarning() (gas: 3512511)\n[PASS] testScopePolicyAndJobCannotBeReplacedOrReused() (gas: 228120)\n[PASS] testWrongNamespaceWindowOrMissingSnapshotEvidenceRejects() (gas: 4348227)\n[PASS] testWrongUnrelatedJobOrRejectedMissingEvidenceFails() (gas: 3966947)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 590.02ms (618.88ms CPU time)\n\nRan 9 tests for test/Emissions.t.sol:EmissionsTest\n[PASS] testActiveFormerAndFinalClaimsIndependentAcrossEveryBoundary() (gas: 1250816)\n[PASS] testAgentIsolationAndIntervalsNotPaymentAuthorization() (gas: 573567)\n[PASS] testExactWeightsBoundariesAndNoTerminalLump() (gas: 69930)\n[PASS] testFincrBurnReducesSupplyAndCannotGriefArming() (gas: 295785)\n[PASS] testFuzzGlobalConservationMonotonicityAndPartitions(uint256,uint32,uint32,uint32) (runs: 512, μ: 15758, ~: 15688)\nLogs:\n  Bound result 143\n\n[PASS] testIndependentPythonFixturesIncludingTinyAndMaxSupply() (gas: 2800847)\n[PASS] testLongInactivityCannotFreezeLaunchRateAndLastHolderCanClaim() (gas: 867638)\n[PASS] testManyTinyTenuresAndClaimsConserveRounding() (gas: 11138171)\n[PASS] testSplitTenuresVersusUninterruptedAcrossHalvings() (gas: 3722977)\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 594.00ms (600.81ms CPU time)\n\nRan 8 tests for test/Task25Auction.t.sol:Task25AuctionTest\n[PASS] testApprovedCurveAndProtectedStreamsAtAllBoundaries() (gas: 47040)\n[PASS] testApprovedGenesisDecayStartsAtArmWithoutPreMining() (gas: 639218)\n[PASS] testFixedTenResetAndSameBlockCompetitorsStale() (gas: 1022377)\n[PASS] testFuzzGenesisAndEpochPricesNeverRise(uint32,uint32) (runs: 512, μ: 594810, ~: 594717)\nLogs:\n  Bound result 2689\n  Bound result 2590854\n\n[PASS] testNoPreArmDecayAndFirstBidUsesActualLivePrice() (gas: 1611018)\n[PASS] testRepeatedFloorBidsRestartHourWithoutMinimumTenure() (gas: 2520792)\n[PASS] testSameBlockRepeatedTenBidsNeverEscalateOrEmit() (gas: 17261459)\n[PASS] testSuccessiveTenHalfNearOneAndFloorEventsAndIndependentClaims() (gas: 1435438)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 700.20ms (707.87ms CPU time)\n\nRan 12 tests for test/Task23Receiver.t.sol:Task23ReceiverTest\n[PASS] testAuthorityChainFactoryAndRegistryDrift() (gas: 6055817)\n[PASS] testDonationsCannotSelectAndExcessNeverIncreasesReserve() (gas: 4839628)\n[PASS] testFuzzCodeOrConstructorMutationRejected(uint8,uint8) (runs: 512, μ: 4139185, ~: 4139455)\nLogs:\n  Bound result 4\n  Bound result 10\n\n[PASS] testInexactTransferAndRuntimeSubstitutionFailClosed() (gas: 12629815)\n[PASS] testMatchingEarlyLaunchCannotSelectOrConsumeAuthorization() (gas: 16769563)\n[PASS] testMissingFundingAndFailedArmRollbackDoNotConsumeAuthorization() (gas: 12974728)\n[PASS] testOnlyAuthorityAtomicSetupAndFirstPublicBidGenesis() (gas: 9832269)\n[PASS] testReceiverRejectsUnlaunchableSettingsBeforeReceivingFunds() (gas: 55860)\n[PASS] testSourceAssertionsAreFounderReviewedNotIndependentProof() (gas: 4372784)\n[PASS] testTokenCreationAndMinerPrefixMutationRejected() (gas: 5064218)\n[PASS] testWrongRecordsDuplicateArtifactsAndWrongReviewRejected() (gas: 9456383)\n[PASS] testWrongTokenOrCounterfeitMinerArtifactCannotChooseDestination() (gas: 5385700)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 700.35ms (723.69ms CPU time)\n\nRan 14 tests for test/Task23Market.t.sol:Task23MarketTest\n[PASS] testConfiguredMaxBatchCapsBothBuckets() (gas: 1045636)\n[PASS] testDustDeadlineOutputAndLiquidityBounds() (gas: 235147)\n[PASS] testEachBatchCappedAndOldPositionsNeverChange() (gas: 877140)\n[PASS] testEntryPointsRequireSelfOrVaultAndHaveNoWithdrawalEscape() (gas: 356797)\n[PASS] testFirstBidAutomaticallyBurnsLocksAndPaysOperations() (gas: 238341)\n[PASS] testFuzzRepeatedTakeoversAndExecutionsConserve(uint8) (runs: 512, μ: 5134510, ~: 3970325)\nLogs:\n  Bound result 8\n\n[PASS] testGasGriefingChildIsCappedAndBidCompletes() (gas: 1510210)\n[PASS] testLowGasSkipsMarketWithoutBlockingBid() (gas: 470854)\n[PASS] testMarketFailureRestoresBudgetsAndDoesNotBlockTakeover() (gas: 655633)\n[PASS] testOperationsFailureHasExactFallbackAndIndependentClaim() (gas: 911317)\n[PASS] testOperationsInexactTransferRollsBackCreditAndLaterAutoRetry() (gas: 1503623)\n[PASS] testSmallBidThresholdsAccumulateWithoutLosingAllocation() (gas: 1575800)\n[PASS] testTakeoverFullWaterfallAutomaticWithoutOperator() (gas: 945491)\n[PASS] testWrongChainRuntimeAndUnsolicitedCallbacksRejected() (gas: 104680)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 700.35ms (704.16ms CPU time)\n\nRan 1 test for test/Task23Emissions.t.sol:Task23EmissionInvariantTest\n[PASS] invariantFiniteCumulativeSplitClaimsAndSolvency() (runs: 128, calls: 16384, reverts: 0)\n\n╭-------------------------+----------------+-------+---------+----------╮\n| Contract                | Selector       | Calls | Reverts | Discards |\n+=======================================================================+\n| EmissionSequenceHandler | advance        | 4162  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | agentClaim     | 3992  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | bid            | 4113  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | financierClaim | 4117  | 0       | 0        |\n╰-------------------------+----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 2.41s (2.41s CPU time)\n\nRan 1 test for test/Task16Invariant.t.sol:Task16InvariantTest\n[PASS]\nTask16InvariantTest invariants:\n[PASS] invariantActualWorkAndAllImdBucketsRemainSolvent\n[PASS] invariantFiniteAgentAndIndependentFinancierConservation\n Task16InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+----------+-------+---------+----------╮\n| Contract      | Selector | Calls | Reverts | Discards |\n+=======================================================+\n| Task16Handler | advance  | 4162  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | bid      | 4113  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | claim    | 4117  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | dispatch | 3992  | 0       | 0        |\n╰---------------+----------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 4.58s (4.58s CPU time)\n\nRan 1 test for test/MiningInvariant.t.sol:ZeroMiningInvariant\n[PASS]\nZeroMiningInvariant invariants:\n[PASS] invariantGenesisEpochAndPositionCannotResetOrBeSeized\n[PASS] invariantImdPayoutsAndEveryBudgetRemainSolvent\n[PASS] invariantReserveSplitConservationAndBeneficiaryNoDoubleClaim\n ZeroMiningInvariant invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------+-------+---------+----------╮\n| Contract      | Selector        | Calls | Reverts | Discards |\n+==============================================================+\n| MiningHandler | advance         | 3213  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | bid             | 3281  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | claim           | 3301  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | operationsClaim | 3353  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | staleBid        | 3236  | 0       | 0        |\n╰---------------+-----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 5.82s (5.82s CPU time)\n\nRan 1 test for test/MiningInvariant.t.sol:FloorMiningInvariant\n[PASS]\nFloorMiningInvariant invariants:\n[PASS] invariantGenesisEpochAndPositionCannotResetOrBeSeized\n[PASS] invariantImdPayoutsAndEveryBudgetRemainSolvent\n[PASS] invariantReserveSplitConservationAndBeneficiaryNoDoubleClaim\n FloorMiningInvariant invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------+-------+---------+----------╮\n| Contract      | Selector        | Calls | Reverts | Discards |\n+==============================================================+\n| MiningHandler | advance         | 3213  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | bid             | 3281  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | claim           | 3301  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | operationsClaim | 3353  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | staleBid        | 3236  | 0       | 0        |\n╰---------------+-----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 6.09s (6.09s CPU time)\n\nRan 1 test for test/Task23Invariant.t.sol:Task23InvariantTest\n[PASS]\nTask23InvariantTest invariants:\n[PASS] invariantDisjointBucketsAndSolvency\n[PASS] invariantEverySupplementalPositionPersistsAndSumMatches\n[PASS] invariantSupplyBurnOnlyAndReserveConservation\n Task23InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+------------+-------+---------+----------╮\n| Contract      | Selector   | Calls | Reverts | Discards |\n+=========================================================+\n| MarketHandler | bid        | 4089  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | claim      | 4044  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | fundWork   | 4106  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | manipulate | 4145  | 0       | 0        |\n╰---------------+------------+-------+---------+----------╯\n\nLogs:\n  Bound result 999900000000000000021602\n  Bound result 488\n  Bound result 756733248916509320531349\n  Bound result 999999999999999999999998\n  Bound result 777260594047776871340490\n  Bound result 999900000000000000019904\n  Bound result 500\n  Bound result 999900000000000000009063\n  Bound result 83332376334020695\n  Bound result 172228528675187087742200\n  Bound result 999900000000000000010268\n  Bound result 23999999999999999999760\n  Bound result 85000000000000000\n  Bound result 999900000000000000000033\n  Bound result 20\n  Bound result 118860981529935089110701\n  Bound result 999900000000000031622401\n  Bound result 999900000000000000000376\n  Bound result 3628800\n  Bound result 206130223891690901718220\n  Bound result 3773437499657172\n  Bound result 1875\n  Bound result 14976414179218410\n  Bound result 434226586365326529834565\n  Bound result 1387\n  Bound result 10709\n  Bound result 999900000000000000072001\n  Bound result 100000000000000000\n  Bound result 16365\n  Bound result 999900000000000000012868\n  Bound result 333\n  Bound result 14\n  Bound result 3473\n  Bound result 999900150000000000000001\n  Bound result 999900000000000000007257\n  Bound result 11137764583714043\n  Bound result 999900600000000000000001\n  Bound result 999900000000000031622401\n  Bound result 99999000000000000\n  Bound result 100000000000000000002\n  Bound result 295033669358545394397978\n  Bound result 999900000000000000017074\n  Bound result 100000000000000000\n  Bound result 697899915\n  Bound result 34190500000000000000000\n  Bound result 28332376337650504\n  Bound result 17721\n  Bound result 999900000000000000008256\n  Bound result 999901000000000000000000\n  Bound result 999900000000000000000128\n  Bound result 999900000000000000005724\n  Bound result 93332376334021682\n  Bound result 990712684557369445258506\n  Bound result 2938\n  Bound result 999900000000000000000334\n  Bound result 5125\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 8.06s (8.05s CPU time)\n\nRan 1 test for test/Task15Invariant.t.sol:Task15InvariantTest\n[PASS]\nTask15InvariantTest invariants:\n[PASS] invariantCombinedCustodyAndIsolatedRoundBudgets\n[PASS] invariantIndependentFinanciersAndImdConservation\n Task15InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------------------------+-------+---------+----------╮\n| Contract      | Selector                          | Calls | Reverts | Discards |\n+================================================================================+\n| Task15Handler | advance                           | 2677  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | agentClaim                        | 2700  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | bid                               | 2797  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | financierClaim                    | 2765  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | replayForwardOrUnauthorizedPayout | 2740  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | settle                            | 2705  | 0       | 0        |\n╰---------------+-----------------------------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 9.72s (9.71s CPU time)\n\nRan 1 test for test/IntegrationInvariant.t.sol:IntegrationInvariantTest\n[PASS]\nIntegrationInvariantTest invariants:\n[PASS] invariantCombinedCustodyAndIsolatedRoundBudgets\n[PASS] invariantIndependentFinanciersAndImdConservation\n IntegrationInvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭--------------------+-----------------------------------+-------+---------+----------╮\n| Contract           | Selector                          | Calls | Reverts | Discards |\n+=====================================================================================+\n| IntegrationHandler | advance                           | 2677  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | agentClaim                        | 2700  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | bid                               | 2797  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | financierClaim                    | 2765  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | replayForwardOrUnauthorizedPayout | 2740  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | settle                            | 2705  | 0       | 0        |\n╰--------------------+-----------------------------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 10.40s (10.40s CPU time)\n\nRan 33 test suites in 10.41s (55.05s CPU time): 231 tests passed, 0 failed, 0 skipped (231 total tests)\n","passed":true},{"durationMs":121,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"AgentRounds.claim(uint256)\",\"AgentRounds.expire(uint256)\",\"AgentRounds.finalize(uint256,(uint256,address,uint256,address,address,bytes32,bytes32,bytes32,bytes32,uint256,uint256,uint256)[],bytes)\",\"AttestedAgentRounds.bindJob(uint256,(bytes32,bytes32,bytes32,uint256,uint256,bytes32))\",\"AttestedAgentRounds.claim(uint256)\",\"AttestedAgentRounds.expire(uint256)\",\"AttestedAgentRounds.precommitRound(uint256,bytes32[],bytes32)\",\"FINCR.approve(address,uint256)\",\"FINCR.burn(uint256)\",\"FINCR.transfer(address,uint256)\",\"FINCR.transferFrom(address,address,uint256)\",\"FinancierFeeRouter.burnFincr()\",\"FinancierFeeRouter.collect()\",\"FinancierFeeRouter.routeImd()\",\"FinancierMining.arm()\",\"FinancierMining.bid(uint256,uint256,uint256)\",\"FinancierMining.claimFincr()\",\"FinancierMining.claimImd()\",\"FinancierMining.claimOperations()\",\"FinancierMining.payAgentReward(address,uint256)\",\"FinancierMiningWithAgents.arm()\",\"FinancierMiningWithAgents.bid(uint256,uint256,uint256)\",\"FinancierMiningWithAgents.claimFincr()\",\"FinancierMiningWithAgents.claimImd()\",\"FinancierMiningWithAgents.claimOperations()\",\"FinancierMiningWithAgents.payAgentReward(address,uint256)\",\"FinancierMiningWithMarket.arm()\",\"FinancierMiningWithMarket.bid(uint256,uint256,uint256)\",\"FinancierMiningWithMarket.claimFincr()\",\"FinancierMiningWithMarket.claimImd()\",\"FinancierMiningWithMarket.claimOperations()\",\"FinancierMiningWithMarket.dispatchWork(uint256,bytes)\",\"FinancierMiningWithMarket.executeMarket(bool)\",\"FinancierMiningWithMarket.fundWork(uint256)\",\"FinancierMiningWithMarket.payAgentReward(address,uint256)\",\"FinancierMiningWithMarket.payOperationsExact()\",\"FinancierMiningWithMarket.payOutgoingExact(address,uint256)\",\"FinancierMiningWithSettlement.arm()\",\"FinancierMiningWithSettlement.bid(uint256,uint256,uint256)\",\"FinancierMiningWithSettlement.claimFincr()\",\"FinancierMiningWithSettlement.claimImd()\",\"FinancierMiningWithSettlement.claimOperations()\",\"FinancierMiningWithSettlement.dispatchWork(uint256,bytes)\",\"FinancierMiningWithSettlement.payAgentReward(address,uint256)\",\"FinancierMiningWithSettlement.payOutgoingExact(address,uint256)\",\"FounderFundedMining.arm()\",\"FounderFundedMining.bid(uint256,uint256,uint256)\",\"FounderFundedMining.claimFincr()\",\"FounderFundedMining.claimImd()\",\"FounderFundedMining.claimOperations()\",\"FounderFundedMining.dispatchWork(uint256,bytes)\",\"FounderFundedMining.executeMarket(bool)\",\"FounderFundedMining.fundWork(uint256)\",\"FounderFundedMining.onFailure(bytes32,uint8,bytes32,uint16,uint16,bytes)\",\"FounderFundedMining.onResult(bytes32,bytes32,string)\",\"FounderFundedMining.payAgentReward(address,uint256)\",\"FounderFundedMining.payOperationsExact()\",\"FounderFundedMining.payOutgoingExact(address,uint256)\",\"PermanentV4Market.execute((uint256,uint256,uint256,uint256),bool)\",\"PermanentV4Market.unlockCallback(bytes)\",\"ReserveForwarder.forward(bytes,bytes)\",\"RestrictedMarketReserveReceiver.bootstrap(uint64,bytes,bytes,bytes32)\",\"RestrictedReserveReceiver.bootstrap(uint64,bytes,bytes,bytes32)\",\"RobinhoodJobController.commission(uint256,uint256)\",\"RobinhoodJobController.prepareRound(uint256)\"],\"files\":{\".github/workflows/contracts.yml\":15,\".gitignore\":8,\".gitmodules\":6,\"ADAPTATION.md\":131,\"LICENSE\":21,\"README.md\":98,\"SNAPSHOT.json\":153,\"abi/AttestedAgentRounds.json\":1515,\"abi/FINCR.json\":347,\"abi/FounderFundedMining.json\":1989,\"abi/PermanentV4Market.json\":682,\"abi/RobinhoodJobController.json\":110,\"foundry.lock\":14,\"foundry.toml\":18,\"launch.json\":22,\"script/readiness_rpc.py\":107,\"script/rehearse-real-factory.py\":90,\"src/AgentRounds.sol\":197,\"src/AttestedAgentRounds.sol\":432,\"src/EmissionSchedule.sol\":32,\"src/FINCR.sol\":21,\"src/FinancierFeeRouter.sol\":89,\"src/FinancierMining.sol\":329,\"src/FinancierMiningWithAgents.sol\":31,\"src/FinancierMiningWithMarket.sol\":161,\"src/FinancierMiningWithSettlement.sol\":159,\"src/FounderFundedMining.sol\":103,\"src/ReserveForwarder.sol\":189,\"src/RestrictedMarketReserveReceiver.sol\":222,\"src/RestrictedReserveReceiver.sol\":214,\"src/RobinhoodJobController.sol\":49,\"src/UnavailableWorkVerifier.sol\":17,\"src/interfaces/IAgentWorkVerifier.sol\":38,\"src/interfaces/IIMDIntake.sol\":24,\"src/interfaces/IIMDIntakeViews.sol\":9,\"src/interfaces/IIMDLaunch.sol\":32,\"src/market/IV4Market.sol\":38,\"src/market/PermanentV4Market.sol\":255,\"test/AgentRounds.t.sol\":384,\"test/Auction.t.sol\":188,\"test/AutoOutgoing.t.sol\":327,\"test/Custody.t.sol\":228,\"test/Emissions.t.sol\":203,\"test/FINCRLaunch.t.sol\":219,\"test/IntakeInterface.t.sol\":79,\"test/IntegrationInvariant.t.sol\":221,\"test/IntegrationRehearsal.t.sol\":45,\"test/MiningInvariant.t.sol\":198,\"test/ReceiptEvidence.t.sol\":30,\"test/ReserveForwarder.t.sol\":191,\"test/SecurityReview.t.sol\":15,\"test/Task15Agents.t.sol\":399,\"test/Task15Invariant.t.sol\":260,\"test/Task15Receiver.t.sol\":202,\"test/Task15Timing.t.sol\":220,\"test/Task16Dispatch.t.sol\":365,\"test/Task16Invariant.t.sol\":140,\"test/Task23Attacks.t.sol\":220,\"test/Task23Emissions.t.sol\":216,\"test/Task23Invariant.t.sol\":82,\"test/Task23Market.t.sol\":228,\"test/Task23Receiver.t.sol\":202,\"test/Task25Auction.t.sol\":187,\"test/Task25Funding.t.sol\":51,\"test/Task27BGenesis.t.sol\":218,\"test/Task27TrustBoundary.t.sol\":102,\"test/WorkEvidence.t.sol\":32,\"test/fixtures/emissions.json\":1374,\"test/fixtures/imd-work/artifact.json\":9,\"test/fixtures/imd-work/records.json\":1,\"test/fixtures/imd-work/review.json\":1,\"test/fixtures/imd-work/work-record.json\":1,\"test/fixtures/real-chain/launch-1727-calldata.json\":3,\"test/fixtures/real-chain/work-receipt.json\":1543,\"test/fixtures/task16/README.md\":7,\"test/fixtures/task16/imd-runtime.hex\":1,\"test/fixtures/task16/intake-runtime.hex\":1,\"test/fixtures/task23/guard-runtime.hex\":1,\"test/fixtures/task23/manager-runtime.hex\":1,\"test/fixtures/task6/ethereum-oracle.json\":1,\"test/fixtures/task6/pinky-callback.json\":77,\"test/fixtures/task6/robinhood-oracle.json\":1,\"test/helpers/IntegrationBase.sol\":163,\"test/helpers/LaunchMocks.sol\":106,\"test/helpers/MiningTestBase.sol\":61,\"test/helpers/MockToken.sol\":70,\"test/helpers/RoundVerifierMock.sol\":24,\"test/helpers/Task15Base.sol\":187,\"test/helpers/Task16Base.sol\":175,\"test/helpers/Task23Base.sol\":159,\"test/helpers/Task23ReceiverBase.sol\":110,\"verification/fork/AttestedWorkForkFixture.sol\":121,\"verification/fork/IProjectFactory.sol\":66,\"verification/fork/LICENSE-HMM\":21,\"verification/fork/MarketForkFixture.sol\":145,\"verification/fork/ResearchUtility.t.sol\":44,\"verification/fork/RobinhoodFactory.t.sol\":303,\"verification/fork/RobinhoodIntake.t.sol\":109,\"verification/fork/Task15Bootstrap.t.sol\":207,\"verification/fork/Task23Market.t.sol\":265,\"verification/fork/Task25Launch.t.sol\":263,\"verification/fork/Task27BFounder.t.sol\":99,\"verification/fork/Task8Receiver.t.sol\":423,\"verification/task8/IsolatedReserveReceiver.sol\":175},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":false}","passed":true}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"9bd807963c888d1d954db917f3eccbd0291d7ff70812dbe5e896eed66e1d7e14","verifiedTreeHash":"12067d904c3043ae18d3c40a04fef1ef87401de9","verifierVersion":"0.1.0+6a374fcd"},{"checks":[{"durationMs":12548,"exitCode":0,"name":"build","output":"Compiling 94 files with Solc 0.8.30\nSolc 0.8.30 finished in 12.46s\nCompiler run successful with warnings:\nWarning (2519): This declaration shadows an existing declaration.\n  --> test/Task23Emissions.t.sol:67:13:\n   |\n67 |             address a = address(uint160(101 + i % 3));\n   |             ^^^^^^^^^\nNote: The shadowed declaration is here:\n  --> test/Task23Emissions.t.sol:76:23:\n   |\n76 |         (, uint256 f, uint256 a) = vault.cumulativeAt(1);\n   |                       ^^^^^^^^^\n\n","passed":true},{"durationMs":9207,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 2 tests for test/WorkEvidence.t.sol:WorkEvidenceTest\n[PASS] testGenuineDocumentsMatchPublishedCommitmentAndTamperingChangesHash() (gas: 22811)\n[PASS] testGenuineJsonAloneCannotAuthorizeProductionRewards() (gas: 17607)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 669.62µs (529.85µs CPU time)\n\nRan 1 test for test/SecurityReview.t.sol:SecurityReviewTest\n[PASS] testRejectSelfInitializerThatCanNeverArm() (gas: 1885324)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 480.33µs (303.65µs CPU time)\n\nRan 1 test for test/ReceiptEvidence.t.sol:ReceiptEvidenceTest\n[PASS] testActualEthereumReceiptCommitsGenuineWorkDocument() (gas: 485007)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 2.83ms (2.70ms CPU time)\n\nRan 2 tests for test/Task25Funding.t.sol:Task25FundingTest\n[PASS] testFundingRejectsShortTransferAndReentrancy() (gas: 1605506)\n[PASS] testWorkFundingHasNoBidRewardOrAuthorityRights() (gas: 346055)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 3.20ms (444.00µs CPU time)\n\nRan 1 test for test/IntegrationRehearsal.t.sol:IntegrationRehearsalTest\n[PASS] testLocalLaunchFundingTakeoverAndGeneratedAgentSettlement() (gas: 31175548)\nLogs:\n  First agent round FINCR base units paid (GENERATED proofs): 1959183673469387755102040\n  Outgoing financier FINCR base units claimed: 54421768707482993197278\n  Outgoing financier IMD base units claimed: 800000000000000000\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 3.70ms (3.45ms CPU time)\n\nRan 2 tests for test/IntakeInterface.t.sol:IntakeInterfaceTest\n[PASS] testNoWorkBudgetSpenderAllowanceOrGenericExecutor() (gas: 30060139)\n[PASS] testPublishedAbiEncodingAndCallbackBinding() (gas: 318511)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 5.31ms (5.03ms CPU time)\n\nRan 2 tests for test/ReserveForwarder.t.sol:ForwarderMaliciousTokenTest\n[PASS] testForwardReentrancyBlocked() (gas: 19652634)\n[PASS] testTaxedReserveRejected() (gas: 2114547)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 3.43ms (1.38ms CPU time)\n\nRan 2 tests for test/AgentRounds.t.sol:AgentFailureIsolationTest\n[PASS] testClaimReentrancyBlocked() (gas: 32110365)\n[PASS] testRealBoundaryIsDisabledAndUnknownProofCannotPay() (gas: 1968933)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 6.55ms (7.02ms CPU time)\n\nRan 8 tests for test/Task25Auction.t.sol:Task25AuctionTest\n[PASS] testApprovedCurveAndProtectedStreamsAtAllBoundaries() (gas: 47040)\n[PASS] testApprovedGenesisDecayStartsAtArmWithoutPreMining() (gas: 639218)\n[PASS] testFixedTenResetAndSameBlockCompetitorsStale() (gas: 1022377)\n[PASS] testFuzzGenesisAndEpochPricesNeverRise(uint32,uint32) (runs: 512, μ: 594810, ~: 594717)\nLogs:\n  Bound result 732\n  Bound result 735\n\n[PASS] testNoPreArmDecayAndFirstBidUsesActualLivePrice() (gas: 1611018)\n[PASS] testRepeatedFloorBidsRestartHourWithoutMinimumTenure() (gas: 2520792)\n[PASS] testSameBlockRepeatedTenBidsNeverEscalateOrEmit() (gas: 17261459)\n[PASS] testSuccessiveTenHalfNearOneAndFloorEventsAndIndependentClaims() (gas: 1435438)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 62.70ms (70.15ms CPU time)\n\nRan 14 tests for test/Custody.t.sol:CustodyTest\n[PASS] testBlockedFincrClaimRetainsAccrualAndCredit() (gas: 867397)\n[PASS] testBlockedImdClaimRetainsCredit() (gas: 895745)\n[PASS] testBlockedOperationsClaimKeepsItsBudget() (gas: 603569)\n[PASS] testFalseReturnAndLyingTransferRejectPayment() (gas: 648137)\n[PASS] testFeeOnTransferAndExtraPayerDebitReject() (gas: 736323)\n[PASS] testFuzzWaterfallExactAndGenesisSeparate(uint128) (runs: 512, μ: 1124622, ~: 1129497)\nLogs:\n  Bound result 39614081257132168796771975168\n\n[PASS] testIndependentImdAndOperationsClaimsNoDoublePay() (gas: 1019660)\n[PASS] testNoAllowancePaymentFailsWithoutLiabilitiesOrGenesis() (gas: 338115)\n[PASS] testNonReturningTokenSupportedOnBidAndClaims() (gas: 953847)\n[PASS] testReentrantBidAndCrossFunctionClaimBlocked() (gas: 1279861)\n[PASS] testTaxedOutgoingClaimsRejectAndPreserveBothAssets() (gas: 1088569)\n[PASS] testUnknownWithdrawRescueAndUpgradeSelectorsFail() (gas: 539558)\n[PASS] testUnsolicitedDonationsDoNotCreateClaimsOrMining() (gas: 588801)\n[PASS] testUnsuccessfulSuccessorCannotCreditOrReplaceIncumbent() (gas: 824868)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 99.06ms (100.95ms CPU time)\n\nRan 11 tests for test/Task23Attacks.t.sol:Task23AttacksTest\n[PASS] testBothTokenOrdersUseExactCorrectSettlementSides() (gas: 2936725)\n[PASS] testBurnFailurePreservesBudgetButLpStillExecutes() (gas: 958021)\n[PASS] testDishonestSettlementAndManagerReplacementKeepBidSafe() (gas: 996664)\n[PASS] testDonationAndOtherOwnerCannotRecoverPrincipal() (gas: 1083821)\n[PASS] testLpFailureAfterSwapRollsBackAllChanges() (gas: 1029847)\n[PASS] testOutgoingAndOperationsFallbacksStayDisjointFromMarket() (gas: 978548)\n[PASS] testPredictedMarketChildCannotMasqueradeAsOperationsEoa() (gas: 23237)\nLogs:\n  computeCreateAddress is deprecated. Please use vm.computeCreateAddress instead.\n  computeCreateAddress is deprecated. Please use vm.computeCreateAddress instead.\n\n[PASS] testSandwichPreBidPriceManipulationAndBackrun() (gas: 1878818)\nLogs:\n  Baseline victim FINCR burn: 7406249980801611\n  Sandwiched victim FINCR burn: 6134802565454171\n  Attacker IMD fee loss in this scenario: 23746990909645890966711\n\n[PASS] testThinLiquidityPartialFillRevertsMarketNotBid() (gas: 903674)\n[PASS] testWorkDispatchAndMarketSpendsRemainDisjoint() (gas: 58980665)\n[PASS] testWrongTokenUninitializedPoolAndInvalidSettingsFailClosed() (gas: 48733)\nSuite result: ok. 11 passed; 0 failed; 0 skipped; finished in 109.02ms (103.86ms CPU time)\n\nRan 12 tests for test/Task27BGenesis.t.sol:Task27BGenesisTest\n[PASS] testAllowanceDoesNotFundOrActivateAndWrongChainCannotDeploy() (gas: 115338)\n[PASS] testConfigurationCannotSelectSpoofTokenOrOperationsAsFounderOrPublisher() (gas: 7322)\n[PASS] testExcessDuplicateAndUnsolicitedTransfersDoNotExpandReserveOrGrantControl() (gas: 475162)\n[PASS] testFuzzFundingHasFixedBoundedRewards(uint96) (runs: 512, μ: 832730, ~: 832595)\nLogs:\n  Bound result 68\n\n[PASS] testJobFailureAndUnauthorizedScopeCannotBlockClaims() (gas: 1372615)\n[PASS] testMaliciousUnboundDuplicateCallbackAndReplayReject() (gas: 1355615)\n[PASS] testMultipleNativeJobsHaveDistinctBindingButNoRecipientFinalization() (gas: 1641046)\n[PASS] testNativeCompletionAfterTakeoverCannotAuthorizeAnyAgentPayout() (gas: 1859949)\n[PASS] testNoPreActivationBidOrEmissionAndExplicitActivation() (gas: 1188014)\n[PASS] testOfficialSuccessHashOfEmptyWorkNeverAuthorizesAgentRewards() (gas: 1530181)\n[PASS] testShortFundingAndFailedActivationPreserveBalancesThenCanRetry() (gas: 393967)\n[PASS] testWrongAuthorityWrongAssetWrongChainAndCodeDrift() (gas: 460743)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 202.06ms (202.94ms CPU time)\n\nRan 9 tests for test/Emissions.t.sol:EmissionsTest\n[PASS] testActiveFormerAndFinalClaimsIndependentAcrossEveryBoundary() (gas: 1250816)\n[PASS] testAgentIsolationAndIntervalsNotPaymentAuthorization() (gas: 573567)\n[PASS] testExactWeightsBoundariesAndNoTerminalLump() (gas: 69930)\n[PASS] testFincrBurnReducesSupplyAndCannotGriefArming() (gas: 295785)\n[PASS] testFuzzGlobalConservationMonotonicityAndPartitions(uint256,uint32,uint32,uint32) (runs: 512, μ: 15758, ~: 15688)\nLogs:\n  Bound result 143\n\n[PASS] testIndependentPythonFixturesIncludingTinyAndMaxSupply() (gas: 2800847)\n[PASS] testLongInactivityCannotFreezeLaunchRateAndLastHolderCanClaim() (gas: 867638)\n[PASS] testManyTinyTenuresAndClaimsConserveRounding() (gas: 11138171)\n[PASS] testSplitTenuresVersusUninterruptedAcrossHalvings() (gas: 3722977)\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 259.49ms (35.74ms CPU time)\n\nRan 12 tests for test/AutoOutgoing.t.sol:AutoOutgoingTest\n[PASS] testComparableWarmExecutionGasAutoVersusPull() (gas: 1426921)\nLogs:\n  Warm pull takeover execution: 246112\n  Warm separate claim execution: 86114\n  Warm automatic takeover execution: 307616\n\n[PASS] testFallbackCreditSurvivesLaterAutomaticPaymentAndLowGasRevertsAtomically() (gas: 1436109)\n[PASS] testFuzzRoundingUsesExistingEntitlement(uint96) (runs: 512, μ: 884954, ~: 889980)\nLogs:\n  Bound result 14\n\n[PASS] testGasExhaustingOutgoingCallCannotHoldSlotHostage() (gas: 883585)\n[PASS] testGenesisAndExactAutomaticPayoutNoDoubleClaim() (gas: 807986)\n[PASS] testIncomingPaymentFailureRollsBackWholeTakeover() (gas: 703149)\n[PASS] testLargeRevertDataCannotExhaustParentOrPersistPartialPayment() (gas: 808784)\n[PASS] testNoReturnExactTransferIsSuccessfulNotFallback() (gas: 736366)\n[PASS] testReentrancyCannotCollectTwiceOrTakeOver() (gas: 827668)\n[PASS] testRevertFalsePartialAndInexactTransfersAreIsolatedThenClaimable() (gas: 4479470)\n[PASS] testSelfBidSpendsOnlyNetWaterfallButDoesNotInflateEmissions() (gas: 724730)\n[PASS] testZeroTerminalBidAndFinalFincrRemainIndependent() (gas: 868741)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 401.87ms (404.22ms CPU time)\n\nRan 17 tests for test/AgentRounds.t.sol:AgentRoundsTest\n[PASS] testAuthenticatedZeroAgentIdIsNotAnEmptySentinel() (gas: 602692)\n[PASS] testBlockedAgentClaimRollbackAndFinancierIndependence() (gas: 897367)\n[PASS] testClaimBeforeFinalizationAndRecipientSubstitution() (gas: 750694)\n[PASS] testDuplicateAgentOrControllerCannotMultiplyShare() (gas: 557064)\n[PASS] testDuplicateReceiptsSubmissionsAndArtifactsRejected() (gas: 784756)\n[PASS] testEmptyAndExpiredBudgetsRemainQuarantinedNotFutureJackpots() (gas: 1053457)\n[PASS] testFuzzZeroOneManyEqualSharesAndConservation(uint8) (runs: 512, μ: 2923860, ~: 2019027)\n[PASS] testGeneratedCompleteSetEqualRewardsAndNoDoubleClaim() (gas: 1209530)\n[PASS] testIdentityFreshnessExpiryAndCompletionWindow() (gas: 931326)\n[PASS] testIncompleteAcceptedSetCannotExcludeOthersForLargerShare() (gas: 662629)\n[PASS] testJobAndEvidenceReplayAcrossRoundsRejected() (gas: 1086141)\n[PASS] testLastRoundAndFinalFinancierNoSuccessor() (gas: 770662)\n[PASS] testLateOutOfOrderAndBeforeEndCannotTouchLaterRoundOrFinancier() (gas: 1340419)\n[PASS] testRejectedMissingRevokedAndChangedAuthorityFailClosed() (gas: 699230)\n[PASS] testRoundAndProofBoundsAndNoArbitraryVaultExtraction() (gas: 491830)\n[PASS] testTamperedChainJobArtifactIdentityBeneficiaryReceiptAndDomain() (gas: 905600)\n[PASS] testVaultRejectsFutureAgentBudgetEvenFromBoundModule() (gas: 113687)\nSuite result: ok. 17 passed; 0 failed; 0 skipped; finished in 401.99ms (403.65ms CPU time)\n\nRan 5 tests for test/Task27TrustBoundary.t.sol:Task27TrustBoundaryTest\n[PASS] testDishonestAuthorityCanOmitContributorDespiteValidCommitment() (gas: 4188359)\n[PASS] testDuplicateIdentityCannotMultiplyShares() (gas: 3950399)\n[PASS] testLateCompletionAfterTakeoverWithinSameRoundDoesNotAffectFinanciers() (gas: 5122276)\n[PASS] testRealCabalUUIDCannotQualifyAsUnboundFinancierWork() (gas: 3831217)\n[PASS] testTwoProspectiveJobsUnionHasOneSharePerDistinctWallet() (gas: 4345310)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 439.27ms (8.26ms CPU time)\n\nRan 15 tests for test/Task16Dispatch.t.sol:Task16DispatchTest\n[PASS] testBindingMustMatchRealRecordedRequestRoundBodyAndTimestamp() (gas: 1753091)\n[PASS] testConfiguredNoncanonicalAssetRefusesDispatch() (gas: 1688579)\n[PASS] testDelayedOrRefusedAdmissionNeverRefundsRepurchasesOrBlocksHuman() (gas: 1941672)\n[PASS] testDispatchRequiresAuthorityExactBodyAndOpenRound() (gas: 1073251)\n[PASS] testDuplicateAndCrossRoundBodyReuseNeverRepurchase() (gas: 1176672)\n[PASS] testFeeDriftUpDownOrRetiredFailsExplicitlyAndRestoresIntent() (gas: 2180366)\n[PASS] testFuzzWorkSpendNeverTouchesOtherBuckets(uint96) (runs: 512, μ: 4667555, ~: 4667618)\nLogs:\n  Bound result 999000000000000000013\n\n[PASS] testInexactPaymentAndIncorrectRequestRecordRollbackEverything() (gas: 2140075)\n[PASS] testInsolventCustodyCannotSpendEvenWhenWorkAccountingLooksSufficient() (gas: 1106997)\n[PASS] testInsufficientBucketCannotSpendOtherLiabilitiesOrDonations() (gas: 1487877)\n[PASS] testPaidBindingRetainsProspectiveSubmissionCutoff() (gas: 2360040)\n[PASS] testReentrantIntakeCannotBidClaimOrDispatchAndOuterFailureRollsBack() (gas: 1516213)\n[PASS] testRequestFailureRollsBackBudgetApprovalNonceAndIntent() (gas: 1647624)\n[PASS] testVaultSpendsActualWorkThenRecordedBindingEqualClaims() (gas: 2631348)\nLogs:\n  Vault dispatch execution gas: 347648\n\n[PASS] testWrongChainAndRuntimeFailClosed() (gas: 1126773)\nSuite result: ok. 15 passed; 0 failed; 0 skipped; finished in 439.33ms (441.83ms CPU time)\n\nRan 8 tests for test/ReserveForwarder.t.sol:ReserveForwarderTest\n[PASS] testBlockedTransferRollsBackForwardingAndArming() (gas: 3909188)\n[PASS] testCreationSubstitutionAndAnotherLaunchCannotUseReserve() (gas: 2540299)\n[PASS] testFactoryRegistryAndChainPins() (gas: 3632401)\n[PASS] testFuzzDonationCannotIncreaseForwardedReserve(uint128) (runs: 512, μ: 2253975, ~: 2254079)\n[PASS] testLocalOfficialInterfaceLaunchFundingAndPublicBidGenesis() (gas: 4159045)\n[PASS] testPrematureUnauthorizedArmAndMissingReserve() (gas: 2180314)\n[PASS] testWrongLaunchSourceManifestAndAttestation() (gas: 4089924)\n[PASS] testWrongTokenAndCounterfeitMatchingViews() (gas: 4544149)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 459.36ms (456.61ms CPU time)\n\nRan 13 tests for test/Auction.t.sol:AuctionTest\n[PASS] testAcceptedQuotesResetToImmutableOpening() (gas: 950445)\n[PASS] testFloorQuotesAtZeroTenThirtySixtyMinutes() (gas: 408870)\n[PASS] testFundingRecheckedAtFirstBid() (gas: 106101)\n[PASS] testFuzzQuoteNeverBelowFloorAndCorrectRounding(uint192,uint192,uint32) (runs: 512, μ: 590054, ~: 592916)\nLogs:\n  Bound result 6277101735386680763835789423207666416102355444464034512895\n  Bound result 6277101735386680763835789423207666416102355444464034512895\n\n[PASS] testGenesisNoHeadStartWithEqualOpeningAndFloor() (gas: 629964)\n[PASS] testInvalidConfiguration() (gas: 8554)\n[PASS] testMaxPriceIsNotVoluntaryOverpayment() (gas: 321782)\n[PASS] testResetBoundDoesNotOverflow() (gas: 702188)\n[PASS] testSameBlockSelfTakeoversNoEmissionsAndPartialRecovery() (gas: 1838321)\n[PASS] testStaleDeadlineAndSlippageRollback() (gas: 590938)\n[PASS] testSupplyMismatch() (gas: 104041)\n[PASS] testUnauthorizedArmingMissingFundingAndOneShot() (gas: 366684)\n[PASS] testZeroTerminalAndZeroCaptureResetsImmutableOpening() (gas: 1086504)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 556.72ms (559.56ms CPU time)\n\nRan 10 tests for test/Task15Timing.t.sol:Task15TimingTest\n[PASS] testAdmissionNeedsAuthorityCommittedBodyAndEvidence() (gas: 3494598)\n[PASS] testBindingCommitmentIncludedInSettlementDomainAndCannotReplaceScope() (gas: 4267134)\n[PASS] testBodyRequestAndJobAreOneUseAcrossRoundsEvenIfNoPayout() (gas: 3842571)\n[PASS] testBoundaryCrossingJobNeverMigratesAndRewardsStayQuarantined() (gas: 4267256)\n[PASS] testCannotBindBeforeGenesisBeforeWindowOrAtEnd() (gas: 3518271)\n[PASS] testFirstBidThenSimulatedAdmissionCanBeBoundAndSharedWithoutBudgetExpansion() (gas: 4591168)\n[PASS] testFuzzBindingDelayNeverChangesFixedRoundAllocation(uint32) (runs: 512, μ: 3959948, ~: 3959647)\nLogs:\n  Bound result 32\n\n[PASS] testRequestSubmissionAndAdmissionMustFollowRoundStartInOrder() (gas: 3421630)\n[PASS] testSubmissionBeforeOrAtBindingAndAcceptanceBeforeSubmissionReject() (gas: 4045660)\n[PASS] testUnboundJobCannotBecomeEligibleAtFinalization() (gas: 3446355)\nSuite result: ok. 10 passed; 0 failed; 0 skipped; finished in 556.66ms (559.61ms CPU time)\n\nRan 5 tests for test/Task23Emissions.t.sol:Task23EmissionsTest\n[PASS] testFinalAndFormerFinanciersPlusAgentPaymentsExhaustExactlyReserve() (gas: 945423)\n[PASS] testFuzzReserveSplitAndExactDay365(uint256,uint32) (runs: 512, μ: 13023, ~: 12926)\nLogs:\n  Bound result 302393238673562068257922607066133170075276119508453701209224509120629861124\n\n[PASS] testFuzzTinyIntervalsTelescopeWithoutRoundingLoss(uint256,uint8) (runs: 512, μ: 3580134, ~: 2813296)\nLogs:\n  Bound result 1\n\n[PASS] testNoRewardsOrClockBeforeFirstBidRegardlessOfArmingDelay() (gas: 287987)\n[PASS] testSameBlockAndRapidTakeoversHaveNoDuplicateEmission() (gas: 2793171)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 559.58ms (442.81ms CPU time)\n\nRan 13 tests for test/FINCRLaunch.t.sol:FINCRLaunchTest\n[PASS] testConstructorMintsToCallerInsteadOfTransactionOrigin() (gas: 37010)\n[PASS] testConstructorRejectsZeroAndNonDivisibleSupply() (gas: 4098)\n[PASS] testFactoryAndStrangerHaveNoMintAdminOrFreezePowers() (gas: 1981956)\n[PASS] testFactoryNeedsHolderAllowanceAndCannotOverspendIt() (gas: 245206)\n[PASS] testFuzzConstructorAcceptsPositiveMultiplesOf100(uint256) (runs: 512, μ: 27148, ~: 27099)\nLogs:\n  Bound result 32\n\n[PASS] testFuzzConstructorRejectsNonDivisibleSupply(uint256) (runs: 512, μ: 4557, ~: 4557)\n[PASS] testFuzzTransferAndVoluntaryBurnConserveSupply(uint256,uint256) (runs: 512, μ: 168514, ~: 169009)\nLogs:\n  Bound result 453331176249736412080472442\n  Bound result 102\n\n[PASS] testLaunchAllocationsAndSwarmClaimArriveWhole() (gas: 295062)\n[PASS] testMetadataAndWholeSupplyMintedToFactoryCaller() (gas: 82122)\n[PASS] testPinnedCreationAndDeployedRuntime() (gas: 13704)\n[PASS] testPoolTransfersArriveWholeInBothDirections() (gas: 197859)\n[PASS] testRuntimeContainsNoForbiddenOpcodes() (gas: 2408272)\n[PASS] testVoluntaryBurnAndOverdrawRevert() (gas: 170132)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 648.81ms (90.81ms CPU time)\n\nRan 12 tests for test/Task23Receiver.t.sol:Task23ReceiverTest\n[PASS] testAuthorityChainFactoryAndRegistryDrift() (gas: 6055817)\n[PASS] testDonationsCannotSelectAndExcessNeverIncreasesReserve() (gas: 4839628)\n[PASS] testFuzzCodeOrConstructorMutationRejected(uint8,uint8) (runs: 512, μ: 4139185, ~: 4139455)\nLogs:\n  Bound result 5\n  Bound result 1\n\n[PASS] testInexactTransferAndRuntimeSubstitutionFailClosed() (gas: 12629815)\n[PASS] testMatchingEarlyLaunchCannotSelectOrConsumeAuthorization() (gas: 16769563)\n[PASS] testMissingFundingAndFailedArmRollbackDoNotConsumeAuthorization() (gas: 12974728)\n[PASS] testOnlyAuthorityAtomicSetupAndFirstPublicBidGenesis() (gas: 9832269)\n[PASS] testReceiverRejectsUnlaunchableSettingsBeforeReceivingFunds() (gas: 55860)\n[PASS] testSourceAssertionsAreFounderReviewedNotIndependentProof() (gas: 4372784)\n[PASS] testTokenCreationAndMinerPrefixMutationRejected() (gas: 5064218)\n[PASS] testWrongRecordsDuplicateArtifactsAndWrongReviewRejected() (gas: 9456383)\n[PASS] testWrongTokenOrCounterfeitMinerArtifactCannotChooseDestination() (gas: 5385700)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 648.86ms (660.96ms CPU time)\n\nRan 12 tests for test/Task15Receiver.t.sol:Task15ReceiverTest\n[PASS] testAuthorityChainFactoryAndRegistryDrift() (gas: 3998180)\n[PASS] testDonationsCannotSelectAndExcessNeverIncreasesReserve() (gas: 3430184)\n[PASS] testFuzzCodeOrConstructorMutationRejected(uint8,uint8) (runs: 512, μ: 2711424, ~: 2711697)\nLogs:\n  Bound result 4\n  Bound result 10\n\n[PASS] testInexactTransferAndRuntimeSubstitutionFailClosed() (gas: 8418421)\n[PASS] testMatchingEarlyLaunchCannotSelectOrConsumeAuthorization() (gas: 11444483)\n[PASS] testMissingFundingAndFailedArmRollbackDoNotConsumeAuthorization() (gas: 8755277)\n[PASS] testOnlyAuthorityAtomicSetupAndFirstPublicBidGenesis() (gas: 6615250)\n[PASS] testReceiverRejectsUnlaunchableSettingsBeforeReceivingFunds() (gas: 53606)\n[PASS] testSourceAssertionsAreFounderReviewedNotIndependentProof() (gas: 2963566)\n[PASS] testTokenCreationAndMinerPrefixMutationRejected() (gas: 3333537)\n[PASS] testWrongRecordsDuplicateArtifactsAndWrongReviewRejected() (gas: 6319083)\n[PASS] testWrongTokenOrCounterfeitMinerArtifactCannotChooseDestination() (gas: 3623657)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 668.91ms (676.67ms CPU time)\n\nRan 21 tests for test/Task15Agents.t.sol:Task15AgentTest\n[PASS] testAuthorityOnlyAndNoReplayAcrossChainOrModule() (gas: 4458600)\n[PASS] testClaimTransferFailurePreservesCreditAndFinancierCanClaim() (gas: 4594811)\n[PASS] testDuplicateAgentOwnerPayoutAndNFTRejected() (gas: 4640654)\n[PASS] testDuplicateReceiptsSubmissionsArtifactsRejected() (gas: 4375160)\n[PASS] testEarlyLateOrOversizedFinalizationCannotPartiallyPay() (gas: 5071491)\n[PASS] testEmptyExpiredAndOutageNeverRollOverOrGateFinancier() (gas: 4549542)\n[PASS] testEthereumOnlyContractOwnerCannotBePaidAtUndeployedAddress() (gas: 4445076)\n[PASS] testExplicitTrustLimitDishonestAuthorityCanMisdirectOnlyAgentBudget() (gas: 4340795)\n[PASS] testFreshSnapshotCutoffAndObservationBinding() (gas: 4215518)\n[PASS] testFuzzEqualSplitWithinRoundCap(uint8) (runs: 512, μ: 7400924, ~: 6207877)\nLogs:\n  Bound result 32\n\n[PASS] testMultipleOwnersEqualSharesAndDeterministicDust() (gas: 4905679)\n[PASS] testOneOwnerClaimsIndependentOfFinancierAndSuccessor() (gas: 4801242)\n[PASS] testOutOfOrderFinalizationAndCrossRoundReceiptReuse() (gas: 4503357)\n[PASS] testOwnerConsentCannotBeReusedForDifferentRound() (gas: 4531521)\n[PASS] testRedirectNeedsOwnerAuthorizationAndFrozenAfterFinalization() (gas: 4559347)\n[PASS] testRegistryOrAdapterNeverTreatedAsOwnerWallet() (gas: 3973918)\n[PASS] testRobinhoodContractRecipientNeedsReviewedClaimPath() (gas: 4803776)\n[PASS] testScopeMustExistAndBeCommittedBeforeEarning() (gas: 3512511)\n[PASS] testScopePolicyAndJobCannotBeReplacedOrReused() (gas: 228120)\n[PASS] testWrongNamespaceWindowOrMissingSnapshotEvidenceRejects() (gas: 4348227)\n[PASS] testWrongUnrelatedJobOrRejectedMissingEvidenceFails() (gas: 3966947)\nSuite result: ok. 21 passed; 0 failed; 0 skipped; finished in 668.95ms (680.85ms CPU time)\n\nRan 14 tests for test/Task23Market.t.sol:Task23MarketTest\n[PASS] testConfiguredMaxBatchCapsBothBuckets() (gas: 1045636)\n[PASS] testDustDeadlineOutputAndLiquidityBounds() (gas: 235147)\n[PASS] testEachBatchCappedAndOldPositionsNeverChange() (gas: 877140)\n[PASS] testEntryPointsRequireSelfOrVaultAndHaveNoWithdrawalEscape() (gas: 356797)\n[PASS] testFirstBidAutomaticallyBurnsLocksAndPaysOperations() (gas: 238341)\n[PASS] testFuzzRepeatedTakeoversAndExecutionsConserve(uint8) (runs: 512, μ: 5134510, ~: 3970325)\nLogs:\n  Bound result 16\n\n[PASS] testGasGriefingChildIsCappedAndBidCompletes() (gas: 1510210)\n[PASS] testLowGasSkipsMarketWithoutBlockingBid() (gas: 470854)\n[PASS] testMarketFailureRestoresBudgetsAndDoesNotBlockTakeover() (gas: 655633)\n[PASS] testOperationsFailureHasExactFallbackAndIndependentClaim() (gas: 911317)\n[PASS] testOperationsInexactTransferRollsBackCreditAndLaterAutoRetry() (gas: 1503623)\n[PASS] testSmallBidThresholdsAccumulateWithoutLosingAllocation() (gas: 1575800)\n[PASS] testTakeoverFullWaterfallAutomaticWithoutOperator() (gas: 945491)\n[PASS] testWrongChainRuntimeAndUnsolicitedCallbacksRejected() (gas: 104680)\nSuite result: ok. 14 passed; 0 failed; 0 skipped; finished in 669.17ms (672.27ms CPU time)\n\nRan 1 test for test/Task23Emissions.t.sol:Task23EmissionInvariantTest\n[PASS] invariantFiniteCumulativeSplitClaimsAndSolvency() (runs: 128, calls: 16384, reverts: 0)\n\n╭-------------------------+----------------+-------+---------+----------╮\n| Contract                | Selector       | Calls | Reverts | Discards |\n+=======================================================================+\n| EmissionSequenceHandler | advance        | 4162  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | agentClaim     | 3992  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | bid            | 4113  | 0       | 0        |\n|-------------------------+----------------+-------+---------+----------|\n| EmissionSequenceHandler | financierClaim | 4117  | 0       | 0        |\n╰-------------------------+----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 2.27s (2.27s CPU time)\n\nRan 1 test for test/Task16Invariant.t.sol:Task16InvariantTest\n[PASS]\nTask16InvariantTest invariants:\n[PASS] invariantActualWorkAndAllImdBucketsRemainSolvent\n[PASS] invariantFiniteAgentAndIndependentFinancierConservation\n Task16InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+----------+-------+---------+----------╮\n| Contract      | Selector | Calls | Reverts | Discards |\n+=======================================================+\n| Task16Handler | advance  | 4162  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | bid      | 4113  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | claim    | 4117  | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| Task16Handler | dispatch | 3992  | 0       | 0        |\n╰---------------+----------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 4.03s (4.03s CPU time)\n\nRan 1 test for test/MiningInvariant.t.sol:ZeroMiningInvariant\n[PASS]\nZeroMiningInvariant invariants:\n[PASS] invariantGenesisEpochAndPositionCannotResetOrBeSeized\n[PASS] invariantImdPayoutsAndEveryBudgetRemainSolvent\n[PASS] invariantReserveSplitConservationAndBeneficiaryNoDoubleClaim\n ZeroMiningInvariant invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------+-------+---------+----------╮\n| Contract      | Selector        | Calls | Reverts | Discards |\n+==============================================================+\n| MiningHandler | advance         | 3213  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | bid             | 3281  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | claim           | 3301  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | operationsClaim | 3353  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | staleBid        | 3236  | 0       | 0        |\n╰---------------+-----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 5.39s (5.39s CPU time)\n\nRan 1 test for test/MiningInvariant.t.sol:FloorMiningInvariant\n[PASS]\nFloorMiningInvariant invariants:\n[PASS] invariantGenesisEpochAndPositionCannotResetOrBeSeized\n[PASS] invariantImdPayoutsAndEveryBudgetRemainSolvent\n[PASS] invariantReserveSplitConservationAndBeneficiaryNoDoubleClaim\n FloorMiningInvariant invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------+-------+---------+----------╮\n| Contract      | Selector        | Calls | Reverts | Discards |\n+==============================================================+\n| MiningHandler | advance         | 3213  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | bid             | 3281  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | claim           | 3301  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | operationsClaim | 3353  | 0       | 0        |\n|---------------+-----------------+-------+---------+----------|\n| MiningHandler | staleBid        | 3236  | 0       | 0        |\n╰---------------+-----------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 5.55s (5.54s CPU time)\n\nRan 1 test for test/Task23Invariant.t.sol:Task23InvariantTest\n[PASS]\nTask23InvariantTest invariants:\n[PASS] invariantDisjointBucketsAndSolvency\n[PASS] invariantEverySupplementalPositionPersistsAndSumMatches\n[PASS] invariantSupplyBurnOnlyAndReserveConservation\n Task23InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+------------+-------+---------+----------╮\n| Contract      | Selector   | Calls | Reverts | Discards |\n+=========================================================+\n| MarketHandler | bid        | 4089  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | claim      | 4044  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | fundWork   | 4106  | 0       | 0        |\n|---------------+------------+-------+---------+----------|\n| MarketHandler | manipulate | 4145  | 0       | 0        |\n╰---------------+------------+-------+---------+----------╯\n\nLogs:\n  Bound result 999900000000000000021602\n  Bound result 488\n  Bound result 756733248916509320531349\n  Bound result 999999999999999999999998\n  Bound result 777260594047776871340490\n  Bound result 999900000000000000019904\n  Bound result 500\n  Bound result 999900000000000000009063\n  Bound result 83332376334020695\n  Bound result 172228528675187087742200\n  Bound result 999900000000000000010268\n  Bound result 23999999999999999999760\n  Bound result 85000000000000000\n  Bound result 999900000000000000000033\n  Bound result 20\n  Bound result 118860981529935089110701\n  Bound result 999900000000000031622401\n  Bound result 999900000000000000000376\n  Bound result 3628800\n  Bound result 206130223891690901718220\n  Bound result 90000000000000489\n  Bound result 1875\n  Bound result 37500000000000001\n  Bound result 434226586365326529834565\n  Bound result 792793236\n  Bound result 506375856\n  Bound result 999900000000000000072001\n  Bound result 100000000000000000\n  Bound result 3388\n  Bound result 999900000000000000012898\n  Bound result 333\n  Bound result 14\n  Bound result 3468\n  Bound result 999900150000000000000001\n  Bound result 372728648316551611140176\n  Bound result 23838650505300859\n  Bound result 999900600000000000000001\n  Bound result 999900000000000031622401\n  Bound result 99999000000000000\n  Bound result 100000000000000000002\n  Bound result 295033669358545394397978\n  Bound result 479261810234833325989455\n  Bound result 100000000000000000\n  Bound result 697899915\n  Bound result 34190500000000000000000\n  Bound result 32655248906781148\n  Bound result 17815\n  Bound result 999900000000000000007979\n  Bound result 999901000000000000000000\n  Bound result 999900000000000000000128\n  Bound result 999900000000000000016654\n  Bound result 4605962154803271\n  Bound result 990712684557369445258506\n  Bound result 2937\n  Bound result 999900000000000000000334\n  Bound result 5293\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 7.37s (7.36s CPU time)\n\nRan 1 test for test/IntegrationInvariant.t.sol:IntegrationInvariantTest\n[PASS]\nIntegrationInvariantTest invariants:\n[PASS] invariantCombinedCustodyAndIsolatedRoundBudgets\n[PASS] invariantIndependentFinanciersAndImdConservation\n IntegrationInvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭--------------------+-----------------------------------+-------+---------+----------╮\n| Contract           | Selector                          | Calls | Reverts | Discards |\n+=====================================================================================+\n| IntegrationHandler | advance                           | 2677  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | agentClaim                        | 2700  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | bid                               | 2797  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | financierClaim                    | 2765  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | replayForwardOrUnauthorizedPayout | 2740  | 0       | 0        |\n|--------------------+-----------------------------------+-------+---------+----------|\n| IntegrationHandler | settle                            | 2705  | 0       | 0        |\n╰--------------------+-----------------------------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 8.95s (8.94s CPU time)\n\nRan 1 test for test/Task15Invariant.t.sol:Task15InvariantTest\n[PASS]\nTask15InvariantTest invariants:\n[PASS] invariantCombinedCustodyAndIsolatedRoundBudgets\n[PASS] invariantIndependentFinanciersAndImdConservation\n Task15InvariantTest invariants (runs: 128, calls: 16384, reverts: 0)\n\n╭---------------+-----------------------------------+-------+---------+----------╮\n| Contract      | Selector                          | Calls | Reverts | Discards |\n+================================================================================+\n| Task15Handler | advance                           | 2677  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | agentClaim                        | 2700  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | bid                               | 2797  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | financierClaim                    | 2765  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | replayForwardOrUnauthorizedPayout | 2740  | 0       | 0        |\n|---------------+-----------------------------------+-------+---------+----------|\n| Task15Handler | settle                            | 2705  | 0       | 0        |\n╰---------------+-----------------------------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 9.11s (9.10s CPU time)\n\nRan 33 test suites in 9.11s (50.54s CPU time): 231 tests passed, 0 failed, 0 skipped (231 total tests)\n","passed":true},{"durationMs":115,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"AgentRounds.claim(uint256)\",\"AgentRounds.expire(uint256)\",\"AgentRounds.finalize(uint256,(uint256,address,uint256,address,address,bytes32,bytes32,bytes32,bytes32,uint256,uint256,uint256)[],bytes)\",\"AttestedAgentRounds.bindJob(uint256,(bytes32,bytes32,bytes32,uint256,uint256,bytes32))\",\"AttestedAgentRounds.claim(uint256)\",\"AttestedAgentRounds.expire(uint256)\",\"AttestedAgentRounds.precommitRound(uint256,bytes32[],bytes32)\",\"FINCR.approve(address,uint256)\",\"FINCR.burn(uint256)\",\"FINCR.transfer(address,uint256)\",\"FINCR.transferFrom(address,address,uint256)\",\"FinancierFeeRouter.burnFincr()\",\"FinancierFeeRouter.collect()\",\"FinancierFeeRouter.routeImd()\",\"FinancierMining.arm()\",\"FinancierMining.bid(uint256,uint256,uint256)\",\"FinancierMining.claimFincr()\",\"FinancierMining.claimImd()\",\"FinancierMining.claimOperations()\",\"FinancierMining.payAgentReward(address,uint256)\",\"FinancierMiningWithAgents.arm()\",\"FinancierMiningWithAgents.bid(uint256,uint256,uint256)\",\"FinancierMiningWithAgents.claimFincr()\",\"FinancierMiningWithAgents.claimImd()\",\"FinancierMiningWithAgents.claimOperations()\",\"FinancierMiningWithAgents.payAgentReward(address,uint256)\",\"FinancierMiningWithMarket.arm()\",\"FinancierMiningWithMarket.bid(uint256,uint256,uint256)\",\"FinancierMiningWithMarket.claimFincr()\",\"FinancierMiningWithMarket.claimImd()\",\"FinancierMiningWithMarket.claimOperations()\",\"FinancierMiningWithMarket.dispatchWork(uint256,bytes)\",\"FinancierMiningWithMarket.executeMarket(bool)\",\"FinancierMiningWithMarket.fundWork(uint256)\",\"FinancierMiningWithMarket.payAgentReward(address,uint256)\",\"FinancierMiningWithMarket.payOperationsExact()\",\"FinancierMiningWithMarket.payOutgoingExact(address,uint256)\",\"FinancierMiningWithSettlement.arm()\",\"FinancierMiningWithSettlement.bid(uint256,uint256,uint256)\",\"FinancierMiningWithSettlement.claimFincr()\",\"FinancierMiningWithSettlement.claimImd()\",\"FinancierMiningWithSettlement.claimOperations()\",\"FinancierMiningWithSettlement.dispatchWork(uint256,bytes)\",\"FinancierMiningWithSettlement.payAgentReward(address,uint256)\",\"FinancierMiningWithSettlement.payOutgoingExact(address,uint256)\",\"FounderFundedMining.arm()\",\"FounderFundedMining.bid(uint256,uint256,uint256)\",\"FounderFundedMining.claimFincr()\",\"FounderFundedMining.claimImd()\",\"FounderFundedMining.claimOperations()\",\"FounderFundedMining.dispatchWork(uint256,bytes)\",\"FounderFundedMining.executeMarket(bool)\",\"FounderFundedMining.fundWork(uint256)\",\"FounderFundedMining.onFailure(bytes32,uint8,bytes32,uint16,uint16,bytes)\",\"FounderFundedMining.onResult(bytes32,bytes32,string)\",\"FounderFundedMining.payAgentReward(address,uint256)\",\"FounderFundedMining.payOperationsExact()\",\"FounderFundedMining.payOutgoingExact(address,uint256)\",\"PermanentV4Market.execute((uint256,uint256,uint256,uint256),bool)\",\"PermanentV4Market.unlockCallback(bytes)\",\"ReserveForwarder.forward(bytes,bytes)\",\"RestrictedMarketReserveReceiver.bootstrap(uint64,bytes,bytes,bytes32)\",\"RestrictedReserveReceiver.bootstrap(uint64,bytes,bytes,bytes32)\",\"RobinhoodJobController.commission(uint256,uint256)\",\"RobinhoodJobController.prepareRound(uint256)\"],\"files\":{\".github/workflows/contracts.yml\":15,\".gitignore\":8,\".gitmodules\":6,\"ADAPTATION.md\":131,\"LICENSE\":21,\"README.md\":98,\"SNAPSHOT.json\":153,\"abi/AttestedAgentRounds.json\":1515,\"abi/FINCR.json\":347,\"abi/FounderFundedMining.json\":1989,\"abi/PermanentV4Market.json\":682,\"abi/RobinhoodJobController.json\":110,\"foundry.lock\":14,\"foundry.toml\":18,\"script/readiness_rpc.py\":107,\"script/rehearse-real-factory.py\":90,\"src/AgentRounds.sol\":197,\"src/AttestedAgentRounds.sol\":432,\"src/EmissionSchedule.sol\":32,\"src/FINCR.sol\":21,\"src/FinancierFeeRouter.sol\":89,\"src/FinancierMining.sol\":329,\"src/FinancierMiningWithAgents.sol\":31,\"src/FinancierMiningWithMarket.sol\":161,\"src/FinancierMiningWithSettlement.sol\":159,\"src/FounderFundedMining.sol\":103,\"src/ReserveForwarder.sol\":189,\"src/RestrictedMarketReserveReceiver.sol\":222,\"src/RestrictedReserveReceiver.sol\":214,\"src/RobinhoodJobController.sol\":49,\"src/UnavailableWorkVerifier.sol\":17,\"src/interfaces/IAgentWorkVerifier.sol\":38,\"src/interfaces/IIMDIntake.sol\":24,\"src/interfaces/IIMDIntakeViews.sol\":9,\"src/interfaces/IIMDLaunch.sol\":32,\"src/market/IV4Market.sol\":38,\"src/market/PermanentV4Market.sol\":255,\"test/AgentRounds.t.sol\":384,\"test/Auction.t.sol\":188,\"test/AutoOutgoing.t.sol\":327,\"test/Custody.t.sol\":228,\"test/Emissions.t.sol\":203,\"test/FINCRLaunch.t.sol\":219,\"test/IntakeInterface.t.sol\":79,\"test/IntegrationInvariant.t.sol\":221,\"test/IntegrationRehearsal.t.sol\":45,\"test/MiningInvariant.t.sol\":198,\"test/ReceiptEvidence.t.sol\":30,\"test/ReserveForwarder.t.sol\":191,\"test/SecurityReview.t.sol\":15,\"test/Task15Agents.t.sol\":399,\"test/Task15Invariant.t.sol\":260,\"test/Task15Receiver.t.sol\":202,\"test/Task15Timing.t.sol\":220,\"test/Task16Dispatch.t.sol\":365,\"test/Task16Invariant.t.sol\":140,\"test/Task23Attacks.t.sol\":220,\"test/Task23Emissions.t.sol\":216,\"test/Task23Invariant.t.sol\":82,\"test/Task23Market.t.sol\":228,\"test/Task23Receiver.t.sol\":202,\"test/Task25Auction.t.sol\":187,\"test/Task25Funding.t.sol\":51,\"test/Task27BGenesis.t.sol\":218,\"test/Task27TrustBoundary.t.sol\":102,\"test/WorkEvidence.t.sol\":32,\"test/fixtures/emissions.json\":1374,\"test/fixtures/imd-work/artifact.json\":9,\"test/fixtures/imd-work/records.json\":1,\"test/fixtures/imd-work/review.json\":1,\"test/fixtures/imd-work/work-record.json\":1,\"test/fixtures/real-chain/launch-1727-calldata.json\":3,\"test/fixtures/real-chain/work-receipt.json\":1543,\"test/fixtures/task16/README.md\":7,\"test/fixtures/task16/imd-runtime.hex\":1,\"test/fixtures/task16/intake-runtime.hex\":1,\"test/fixtures/task23/guard-runtime.hex\":1,\"test/fixtures/task23/manager-runtime.hex\":1,\"test/fixtures/task6/ethereum-oracle.json\":1,\"test/fixtures/task6/pinky-callback.json\":77,\"test/fixtures/task6/robinhood-oracle.json\":1,\"test/helpers/IntegrationBase.sol\":163,\"test/helpers/LaunchMocks.sol\":106,\"test/helpers/MiningTestBase.sol\":61,\"test/helpers/MockToken.sol\":70,\"test/helpers/RoundVerifierMock.sol\":24,\"test/helpers/Task15Base.sol\":187,\"test/helpers/Task16Base.sol\":175,\"test/helpers/Task23Base.sol\":159,\"test/helpers/Task23ReceiverBase.sol\":110,\"verification/fork/AttestedWorkForkFixture.sol\":121,\"verification/fork/IProjectFactory.sol\":66,\"verification/fork/LICENSE-HMM\":21,\"verification/fork/MarketForkFixture.sol\":145,\"verification/fork/ResearchUtility.t.sol\":44,\"verification/fork/RobinhoodFactory.t.sol\":303,\"verification/fork/RobinhoodIntake.t.sol\":109,\"verification/fork/Task15Bootstrap.t.sol\":207,\"verification/fork/Task23Market.t.sol\":265,\"verification/fork/Task25Launch.t.sol\":263,\"verification/fork/Task27BFounder.t.sol\":99,\"verification/fork/Task8Receiver.t.sol\":423,\"verification/task8/IsolatedReserveReceiver.sol\":175},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":false}","passed":true}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"de99399bf8e99b674adf3a76a262164e88e8429495cc29fe6da59fd8a45768b8","verifiedTreeHash":"474f6ef5e4414b10c43334c58fb7d536a6cc7e9a","verifierVersion":"0.1.0+6a374fcd"}]}