{"workflow":null,"planning":null,"id":"31731677-968e-46e0-82b2-1e6a64463c3b","state":"completed","template":"shape:chain","objective":"Token name: SOVRN.ONE (the name itself contains one full stop; it is exactly the 9 characters S O V R N . O N E). Token symbol: SVO. Total supply 1,000,000,000 with 18 decimals. Chain id 11155111 (Sepolia rehearsal; the mainnet version differs only in this chain id and REFUEL_SAFE), paired with native ETH, opening cap 10 ETH (currency0 native ETH, currency1 SVO, sqrtPriceX96 792281625142643375935439503360000 = 100,000,000 SVO per ETH, as in the base).\n\nBASE. The workspace is a Uniswap v4 hook launch whose hook constructor deploys its child contracts. Keep layout, lib/, foundry.toml UNCHANGED (bytecode_hash \"none\"; README quotes it), errors, guards and still-applicable tests. Rename OG* to Sovrn*. Delete OGDistributor, OGAuction, SPEPE interfaces and constants, TEAM, and every NFT/reward/auction path. README credits the base, lists changes and who can call what; no yield, returns, profit or investment wording; no audit claim.\n\nPURPOSE. SVO trading fees (ETH only) fund the inference of a voice AI. All hook fees go to one immutable vault that only accounts for them: 70% is earmarked for inference, 30% for buying SVO to burn. The vault never swaps; a Safe withdraws and does the buyback by hand. Holders get no payouts.\n\nCONTRACTS (exact).\n1. SovrnToken: constructor() no args; name \"SOVRN.ONE\", symbol \"SVO\", 18 decimals; fixed supply minted to msg.sender; name() returns exactly \"SOVRN.ONE\" and symbol() exactly \"SVO\" (launch.json token.name and token.symbol match); plain ERC-20 (no tax, owner, mint, pause, blacklist). Keep the base's DEAD constant (0x000000000000000000000000000000000000dEaD) and totalBurned.\n2. SovrnHook: constructor(IPoolManager manager, SovrnToken token, address factory); launch.json FLAT [\"$poolManager\",\"$token\",\"$factory\"]. Behaviour UNCHANGED from the base hook (3.5% ETH fee on buys and sells, buy fee decaying 50% to 3.5% over 3,600 s, same exact-in/out handling, quote mechanism, permissions, flags 8396, one pool) EXCEPT the destination: the ENTIRE hook fee goes to the vault (ETH directly when the manager holds enough, else ERC-6909 claims; redeemFees() permissionless, pays the vault; one claim counter). Remove teamCredit/payTeam. The constructor deploys the vault: new LifeForceVault(manager, token, address(this)). Getters: vault(), poolKey(), launchFeeNow(), decayMinutesLeft().\n3. LifeForceVault: constructor(IPoolManager manager, SovrnToken token, address hook) (manager unused beyond a code check). Constants REFUEL_SAFE = 0xb1eC9d1C36974d05eb9889eBf8A150b05791E559, INFERENCE_BPS 7000, BUYBACK_BPS 3000. No owner, setters, swap logic or upgrade.\n - receive() payable: floor(value*3000/10000) to buybackReserve, the rest to inferenceReserve; event LifeForceFunded(address indexed from, uint256 amount, uint256 inference, uint256 buyback).\n - withdrawInference(uint256 amount) and withdrawBuyback(uint256 amount): only REFUEL_SAFE; amount <= the matching reserve; reduce it, pay REFUEL_SAFE, revert if the payment fails; events InferenceWithdrawn(uint256), BuybackWithdrawn(uint256). These are the ONLY ways ETH leaves the vault.\n - burn(): anyone; sends the vault's ENTIRE SVO balance to DEAD and nothing else; reverts at zero; event Burned(uint256). The vault can send SVO nowhere else (anyone may transfer SVO to it).\n - Views: inferenceReserve, buybackReserve, sovrnHeld. ETH balance always equals inferenceReserve + buybackReserve. Reentrancy-guard both withdrawals.\n\nMANIFEST. launch.json kind univ4_hook, token SovrnToken, hook SovrnHook with the flat args; the vault is NOT in it. Keep the base pool block (fee 12500, tickSpacing 60). script/PrepareLaunch.s.sol still mines CREATE2 salts for the new initcode and flags; no env vars, no broadcast.\n\nTESTS (Foundry; these numbers are the contract of record). Cover: name() == \"SOVRN.ONE\" and symbol() == \"SVO\"; fee identical to the base in all four exact modes; decay at 0/1800/3600 s; 100% of fees reach the vault (direct and via claims + redeemFees); 70/30 split rounding; each withdraw only by REFUEL_SAFE and never above its reserve, reentrancy-safe, and reverting when the Safe rejects ETH; burn sends the full balance to DEAD, reverts at zero, cannot send elsewhere; exact permissions; second init and wrong pool key rejected; ETH accounting invariant; no privileged roles besides REFUEL_SAFE. Use a real v4 PoolManager if possible, else a faithful mock and say which.\n\nDELIVER README with every number and privilege, the prepare script, the launch attestation.","blockedReason":null,"createdAt":"2026-10-08T16:44:01.668Z","updatedAt":"2026-10-08T18:55:02.904Z","paidBy":"0x566d1086230b73eb180e1ca7eaea6b8476ce4a92","parentJobId":null,"project":{"id":"31731677-968e-46e0-82b2-1e6a64463c3b","head":"31731677-968e-46e0-82b2-1e6a64463c3b","running":null,"versions":[{"jobId":"31731677-968e-46e0-82b2-1e6a64463c3b","workflowId":null,"objective":"Token name: SOVRN.ONE (the name itself contains one full stop; it is exactly the 9 characters S O V R N . O N E). Token symbol: SVO. Total supply 1,000,000,000 with 18 decimals. Chain id 11155111 (Sepolia rehearsal; the mainnet version differs only in this chain id and REFUEL_SAFE), paired with native ETH, opening cap 10 ETH (currency0 native ETH, currency1 SVO, sqrtPriceX96 792281625142643375935439503360000 = 100,000,000 SVO per ETH, as in the base).\n\nBASE. The workspace is a Uniswap v4 hook launch whose hook constructor deploys its child contracts. Keep layout, lib/, foundry.toml UNCHANGED (bytecode_hash \"none\"; README quotes it), errors, guards and still-applicable tests. Rename OG* to Sovrn*. Delete OGDistributor, OGAuction, SPEPE interfaces and constants, TEAM, and every NFT/reward/auction path. README credits the base, lists changes and who can call what; no yield, returns, profit or investment wording; no audit claim.\n\nPURPOSE. SVO trading fees (ETH only) fund the inference of a voice AI. All hook fees go to one immutable vault that only accounts for them: 70% is earmarked for inference, 30% for buying SVO to burn. The vault never swaps; a Safe withdraws and does the buyback by hand. Holders get no payouts.\n\nCONTRACTS (exact).\n1. SovrnToken: constructor() no args; name \"SOVRN.ONE\", symbol \"SVO\", 18 decimals; fixed supply minted to msg.sender; name() returns exactly \"SOVRN.ONE\" and symbol() exactly \"SVO\" (launch.json token.name and token.symbol match); plain ERC-20 (no tax, owner, mint, pause, blacklist). Keep the base's DEAD constant (0x000000000000000000000000000000000000dEaD) and totalBurned.\n2. SovrnHook: constructor(IPoolManager manager, SovrnToken token, address factory); launch.json FLAT [\"$poolManager\",\"$token\",\"$factory\"]. Behaviour UNCHANGED from the base hook (3.5% ETH fee on buys and sells, buy fee decaying 50% to 3.5% over 3,600 s, same exact-in/out handling, quote mechanism, permissions, flags 8396, one pool) EXCEPT the destination: the ENTIRE hook fee goes to the vault (ETH directly when the manager holds enough, else ERC-6909 claims; redeemFees() permissionless, pays the vault; one claim counter). Remove teamCredit/payTeam. The constructor deploys the vault: new LifeForceVault(manager, token, address(this)). Getters: vault(), poolKey(), launchFeeNow(), decayMinutesLeft().\n3. LifeForceVault: constructor(IPoolManager manager, SovrnToken token, address hook) (manager unused beyond a code check). Constants REFUEL_SAFE = 0xb1eC9d1C36974d05eb9889eBf8A150b05791E559, INFERENCE_BPS 7000, BUYBACK_BPS 3000. No owner, setters, swap logic or upgrade.\n - receive() payable: floor(value*3000/10000) to buybackReserve, the rest to inferenceReserve; event LifeForceFunded(address indexed from, uint256 amount, uint256 inference, uint256 buyback).\n - withdrawInference(uint256 amount) and withdrawBuyback(uint256 amount): only REFUEL_SAFE; amount <= the matching reserve; reduce it, pay REFUEL_SAFE, revert if the payment fails; events InferenceWithdrawn(uint256), BuybackWithdrawn(uint256). These are the ONLY ways ETH leaves the vault.\n - burn(): anyone; sends the vault's ENTIRE SVO balance to DEAD and nothing else; reverts at zero; event Burned(uint256). The vault can send SVO nowhere else (anyone may transfer SVO to it).\n - Views: inferenceReserve, buybackReserve, sovrnHeld. ETH balance always equals inferenceReserve + buybackReserve. Reentrancy-guard both withdrawals.\n\nMANIFEST. launch.json kind univ4_hook, token SovrnToken, hook SovrnHook with the flat args; the vault is NOT in it. Keep the base pool block (fee 12500, tickSpacing 60). script/PrepareLaunch.s.sol still mines CREATE2 salts for the new initcode and flags; no env vars, no broadcast.\n\nTESTS (Foundry; these numbers are the contract of record). Cover: name() == \"SOVRN.ONE\" and symbol() == \"SVO\"; fee identical to the base in all four exact modes; decay at 0/1800/3600 s; 100% of fees reach the vault (direct and via claims + redeemFees); 70/30 split rounding; each withdraw only by REFUEL_SAFE and never above its reserve, reentrancy-safe, and reverting when the Safe rejects ETH; burn sends the full balance to DEAD, reverts at zero, cannot send elsewhere; exact permissions; second init and wrong pool key rejected; ETH accounting invariant; no privileged roles besides REFUEL_SAFE. Use a real v4 PoolManager if possible, else a faithful mock and say which.\n\nDELIVER README with every number and privilege, the prepare script, the launch attestation.","baseCommit":"f194fb113c1afbb56850fb09c8d7be603b474d1a","state":"completed","createdAt":"2026-10-08T16:44:01.668Z"}]},"deliver":true,"host":false,"site":null,"launch":{"requested":true,"kind":"univ4_hook","id":"bf870e61-7867-483a-b1d3-894e72e97312","status":"parked","chainId":11155111},"oracleRequestId":null,"delivery":{"repoUrl":"https://github.com/identity-md-launches/launch-1069-sovrn-one-the-name-itself-contains-one-f","pullRequestUrl":"https://github.com/identity-md-launches/launch-1069-sovrn-one-the-name-itself-contains-one-f/pull/1","commit":"19c642a782b0c8d1e18b87b8ceaf5ed8ad6cbf75","deliveredAt":"2026-10-08T18:55:21.239Z","media":null},"media":null,"nodes":[{"key":"audit_economics","role":"review","state":"accepted","attempt":1,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T18:13:10.723Z","verdict":null,"seat":{"tokenId":"715","agentId":"51169"},"live":null},{"key":"audit_flow","role":"review","state":"accepted","attempt":1,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T18:03:56.078Z","verdict":null,"seat":{"tokenId":"1860","agentId":"50976"},"live":null},{"key":"audit_imported_code","role":"review","state":"accepted","attempt":1,"revisions":0,"judgeRevisions":0,"dependsOn":[],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T17:03:48.715Z","verdict":null,"seat":{"tokenId":"1235","agentId":"51419"},"live":null},{"key":"audit_judge","role":"review","state":"accepted","attempt":1,"revisions":1,"judgeRevisions":1,"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-08T18:55:02.904Z","verdict":null,"seat":{"tokenId":"757","agentId":"51877"},"live":null},{"key":"audit_math","role":"review","state":"accepted","attempt":1,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T18:05:29.513Z","verdict":null,"seat":{"tokenId":"559","agentId":"51168"},"live":null},{"key":"audit_permissions","role":"review","state":"accepted","attempt":1,"revisions":0,"judgeRevisions":0,"dependsOn":["build_contract_project","write_foundry_tests","manifest"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T18:02:32.911Z","verdict":null,"seat":{"tokenId":"1023","agentId":"52263"},"live":null},{"key":"build_contract_project","role":"implement","state":"accepted","attempt":1,"revisions":1,"judgeRevisions":1,"dependsOn":["audit_imported_code"],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T18:33:49.203Z","verdict":{"status":"accepted","profile":"foundry","evaluation":"checks","rejectionCode":null,"detail":"all checks passed","verifierVersion":"0.1.0+ad90ce4c","verifiedTreeHash":"6dd7809085e581128776fba473dacecb436d6a17","at":"2026-10-08T18:33:49.203Z","failedChecks":[]},"seat":{"tokenId":"1673","agentId":"51408"},"live":null},{"key":"manifest","role":"integrate","state":"accepted","attempt":1,"revisions":1,"judgeRevisions":1,"dependsOn":["audit_imported_code","build_contract_project","write_foundry_tests"],"allowedPaths":["launch.json"],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T18:46:31.898Z","verdict":{"status":"accepted","profile":"foundry","evaluation":"checks","rejectionCode":null,"detail":"all checks passed","verifierVersion":"0.1.0+ad90ce4c","verifiedTreeHash":"5dfbd44bb3842930dd9d20145a408b3348d1b441","at":"2026-10-08T18:46:31.900Z","failedChecks":[]},"seat":{"tokenId":"1079","agentId":"51063"},"live":null},{"key":"write_foundry_tests","role":"tests","state":"accepted","attempt":1,"revisions":1,"judgeRevisions":1,"dependsOn":["build_contract_project"],"allowedPaths":["test/**"],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-08T18:40:08.390Z","verdict":{"status":"accepted","profile":"foundry","evaluation":"checks","rejectionCode":null,"detail":"all checks passed","verifierVersion":"0.1.0+ad90ce4c","verifiedTreeHash":"25176c566effd8003f7be54b2204689d0817d04a","at":"2026-10-08T18:40:08.392Z","failedChecks":[]},"seat":{"tokenId":"1953","agentId":"51010"},"live":null}],"reviews":[{"status":"queued","chainId":1,"txHash":null,"blockNumber":null,"sentAt":null,"entries":[{"nodeKey":"audit_economics","agentId":"51169","value":1,"role":"review:submission"},{"nodeKey":"audit_flow","agentId":"50976","value":1,"role":"review:submission"},{"nodeKey":"audit_imported_code","agentId":"51419","value":1,"role":"review:submission"},{"nodeKey":"audit_judge","agentId":"51877","value":1,"role":"review:submission"},{"nodeKey":"audit_judge","agentId":"52270","value":1,"role":"review:submission"},{"nodeKey":"audit_math","agentId":"51168","value":1,"role":"review:submission"},{"nodeKey":"audit_permissions","agentId":"52263","value":1,"role":"review:submission"},{"nodeKey":"build_contract_project","agentId":"51228","value":1,"role":"verification:checks"},{"nodeKey":"build_contract_project","agentId":"51408","value":1,"role":"verification:checks"},{"nodeKey":"manifest","agentId":"51413","value":1,"role":"verification:checks"},{"nodeKey":"manifest","agentId":"51063","value":1,"role":"verification:checks"},{"nodeKey":"write_foundry_tests","agentId":"51090","value":1,"role":"verification:checks"},{"nodeKey":"write_foundry_tests","agentId":"51010","value":1,"role":"verification:checks"}]}]}