{"workflow":null,"planning":null,"id":"23ea78f8-a419-4162-a296-e46f94d5b665","state":"blocked","template":"shape:chain","objective":"[SIMD-LAUNCH]\nToken name: SIMDTEST\nToken symbol: SIMDTEST\n\nYou are launching SIMDTEST (symbol SIMDTEST), a token on Ethereum paired with IMD using Identity.md's launch.open with an onchain univ4_hook called SIMDTESTHook. The project is a test preset on the SIMD Launchpad featuring anti-snipe and buyback-and-burn mechanics. The total supply is 1,000,000,000 tokens with 18 decimals. The token itself only supports basic transfers with no taxes, limits, pausing, or minting; all mechanics live exclusively in the hook.\n\nSupply Distribution:\n- 80% of the total supply seeds the IMD-SIMDTEST pool.\n- 10% of supply is sent to the SIMD Hackathon vault at 0x3dd5f73dd1a4e62630fad3909673f130ad429985.\n- The remaining 10% is reserved outside this scope (e.g., the launcher or other destination as desired).\n\nSIMDTESTHook Mechanics:\n- Triggers on Uniswap v4 hook callbacks involved in token swaps (swap callbacks).\n- Anti-snipe fee: for the first 10 blocks after the pool opens, an extra fee starts at 30% and linearly decays to 0% at block 10. This fee is deducted from the swap amount.\n- The anti-snipe fee is not burned or sent elsewhere: it is donated back into the pool's in-range liquidity via PoolManager.donate(), increasing liquidity and reducing slippage.\n- Buyback-and-burn fee: on every swap, an additional 0.5% fee is charged on top of the pool's default 1.25% fee and the anti-snipe fee if applicable.\n- The 0.5% buyback fee (taken in the paired currency IMD) accumulates inside SIMDTESTHook.\n- Anyone can call buybackAndBurn(), which swaps all accumulated paired currency fees for SIMDTEST tokens in the same pool and sends those tokens immediately to the burn address 0x000000000000000000000000000000000000dEaD.\n\nAdministrability:\n- The hook has no owner, no pausing ability, no upgradeability, and no fee adjustments after deployment.\n\nTesting Instructions:\n- Verify the anti-snipe fee correctly starts at 30% at pool start and linearly decreases to 0% by block 10.\n- Confirm the anti-snipe fees are donated correctly into pool liquidity, increasing the pool’s balances.\n- Check that the 0.5% buyback fee is properly collected in paired currency.\n- Test buybackAndBurn() swaps accumulated IMD fees into SIMDTEST tokens within the correct pool and burns them.\n- Confirm no unexpected minting, blacklisting, or owner privileges exist that could trap buyers.\n\nNote on Fees:\n- The pool charge remains 1.25%.\n- The hook adds up to 30.5% extra fee only during initial anti-snipe period, otherwise only 0.5% extra.\n- Identity.md's 1% creator fee is handled externally and omitted here.\n\nThis setup ensures a fair launch and emission control by buyback and burn, while sustaining pool depth through liquidity donation.\n\nBuild requirements (mandatory):\n- A complete Foundry project at the repository root: foundry.toml with solc 0.8.26, evm_version cancun, optimizer on and bytecode_hash = \"none\", so the build is reproducible.\n- Contracts: SIMDTESTHook. The hook is the hook of this launch's pool; keep its creation code within the EIP-3860 size limit.\n- No selfdestruct and no delegatecall anywhere in runtime code. No proxies, no owner, no upgradeability.\n- Chain: Ethereum mainnet (chainId 1). Uniswap v4 PoolManager: 0x000000000004444c5dc75cB358380D2e3dE08A90 (pass it to the hook constructor).\n- Paired currency: IMD, the ERC-20 at 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7 on Ethereum mainnet (18 decimals).\n- Every address the hook needs is known now and fixed at deployment; nothing may require an owner or a setter after launch.\n- launch.json pool: pairedCurrency 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7, fee 12500, tickSpacing 60, initialPrice \"79228162514264337593543950336\" (provenance only; the launch factory sets the opening price from the economics).","blockedReason":"node build_contract_project: analysis_failed","createdAt":"2026-10-08T02:05:22.889Z","updatedAt":"2026-10-08T02:57:18.884Z","paidBy":"0x9fadab91f6fa03dbd7f4f8a08a338704baacf63f","parentJobId":null,"project":{"id":"23ea78f8-a419-4162-a296-e46f94d5b665","head":"23ea78f8-a419-4162-a296-e46f94d5b665","running":null,"versions":[{"jobId":"23ea78f8-a419-4162-a296-e46f94d5b665","workflowId":null,"objective":"[SIMD-LAUNCH]\nToken name: SIMDTEST\nToken symbol: SIMDTEST\n\nYou are launching SIMDTEST (symbol SIMDTEST), a token on Ethereum paired with IMD using Identity.md's launch.open with an onchain univ4_hook called SIMDTESTHook. The project is a test preset on the SIMD Launchpad featuring anti-snipe and buyback-and-burn mechanics. The total supply is 1,000,000,000 tokens with 18 decimals. The token itself only supports basic transfers with no taxes, limits, pausing, or minting; all mechanics live exclusively in the hook.\n\nSupply Distribution:\n- 80% of the total supply seeds the IMD-SIMDTEST pool.\n- 10% of supply is sent to the SIMD Hackathon vault at 0x3dd5f73dd1a4e62630fad3909673f130ad429985.\n- The remaining 10% is reserved outside this scope (e.g., the launcher or other destination as desired).\n\nSIMDTESTHook Mechanics:\n- Triggers on Uniswap v4 hook callbacks involved in token swaps (swap callbacks).\n- Anti-snipe fee: for the first 10 blocks after the pool opens, an extra fee starts at 30% and linearly decays to 0% at block 10. This fee is deducted from the swap amount.\n- The anti-snipe fee is not burned or sent elsewhere: it is donated back into the pool's in-range liquidity via PoolManager.donate(), increasing liquidity and reducing slippage.\n- Buyback-and-burn fee: on every swap, an additional 0.5% fee is charged on top of the pool's default 1.25% fee and the anti-snipe fee if applicable.\n- The 0.5% buyback fee (taken in the paired currency IMD) accumulates inside SIMDTESTHook.\n- Anyone can call buybackAndBurn(), which swaps all accumulated paired currency fees for SIMDTEST tokens in the same pool and sends those tokens immediately to the burn address 0x000000000000000000000000000000000000dEaD.\n\nAdministrability:\n- The hook has no owner, no pausing ability, no upgradeability, and no fee adjustments after deployment.\n\nTesting Instructions:\n- Verify the anti-snipe fee correctly starts at 30% at pool start and linearly decreases to 0% by block 10.\n- Confirm the anti-snipe fees are donated correctly into pool liquidity, increasing the pool’s balances.\n- Check that the 0.5% buyback fee is properly collected in paired currency.\n- Test buybackAndBurn() swaps accumulated IMD fees into SIMDTEST tokens within the correct pool and burns them.\n- Confirm no unexpected minting, blacklisting, or owner privileges exist that could trap buyers.\n\nNote on Fees:\n- The pool charge remains 1.25%.\n- The hook adds up to 30.5% extra fee only during initial anti-snipe period, otherwise only 0.5% extra.\n- Identity.md's 1% creator fee is handled externally and omitted here.\n\nThis setup ensures a fair launch and emission control by buyback and burn, while sustaining pool depth through liquidity donation.\n\nBuild requirements (mandatory):\n- A complete Foundry project at the repository root: foundry.toml with solc 0.8.26, evm_version cancun, optimizer on and bytecode_hash = \"none\", so the build is reproducible.\n- Contracts: SIMDTESTHook. The hook is the hook of this launch's pool; keep its creation code within the EIP-3860 size limit.\n- No selfdestruct and no delegatecall anywhere in runtime code. No proxies, no owner, no upgradeability.\n- Chain: Ethereum mainnet (chainId 1). Uniswap v4 PoolManager: 0x000000000004444c5dc75cB358380D2e3dE08A90 (pass it to the hook constructor).\n- Paired currency: IMD, the ERC-20 at 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7 on Ethereum mainnet (18 decimals).\n- Every address the hook needs is known now and fixed at deployment; nothing may require an owner or a setter after launch.\n- launch.json pool: pairedCurrency 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7, fee 12500, tickSpacing 60, initialPrice \"79228162514264337593543950336\" (provenance only; the launch factory sets the opening price from the economics).","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","state":"blocked","createdAt":"2026-10-08T02:05:22.889Z"}]},"deliver":true,"host":false,"site":null,"launch":{"requested":true,"kind":"univ4_hook","id":null,"status":null,"chainId":1},"oracleRequestId":null,"delivery":null,"media":null,"nodes":[{"key":"audit_economics","role":"review","state":"waiting","attempt":0,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T02:05:22.889Z","verdict":null,"seat":null,"live":null},{"key":"audit_flow","role":"review","state":"waiting","attempt":0,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T02:05:22.889Z","verdict":null,"seat":null,"live":null},{"key":"audit_judge","role":"review","state":"waiting","attempt":0,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest","audit_math","audit_permissions","audit_economics","audit_flow"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T02:05:22.889Z","verdict":null,"seat":null,"live":null},{"key":"audit_math","role":"review","state":"waiting","attempt":0,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T02:05:22.889Z","verdict":null,"seat":null,"live":null},{"key":"audit_permissions","role":"review","state":"waiting","attempt":0,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T02:05:22.889Z","verdict":null,"seat":null,"live":null},{"key":"build_contract_project","role":"implement","state":"failed","attempt":3,"revisions":0,"judgeRevisions":0,"dependsOn":[],"allowedPaths":[],"failureReason":"analysis_failed","dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T02:57:18.884Z","verdict":{"status":"rejected","profile":"foundry","evaluation":"checks","rejectionCode":"analysis_failed","detail":"launch.json is not a valid launch manifest: token.decimals: Invalid input: expected number, received undefined","verifierVersion":"0.1.0+ad90ce4c","verifiedTreeHash":"0b62310de9b34f6e1b457f4761ebcb3a98bdf099","at":"2026-10-08T02:57:18.884Z","failedChecks":[]},"seat":null,"live":null},{"key":"manifest","role":"integrate","state":"waiting","attempt":0,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests"],"allowedPaths":["launch.json"],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T02:05:22.889Z","verdict":null,"seat":null,"live":null},{"key":"write_foundry_tests","role":"tests","state":"waiting","attempt":0,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project"],"allowedPaths":["test","test/**"],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T02:05:22.889Z","verdict":null,"seat":null,"live":null}],"reviews":[{"status":"queued","chainId":1,"txHash":null,"blockNumber":null,"sentAt":null,"entries":[{"nodeKey":"build_contract_project","agentId":"51725","value":0,"role":"verification:checks"},{"nodeKey":"build_contract_project","agentId":"51544","value":0,"role":"verification:checks"},{"nodeKey":"build_contract_project","agentId":"51724","value":0,"role":"verification:checks"}]}]}