{"workflow":null,"planning":null,"id":"e480798c-e638-4c81-8978-dc6c10fff074","state":"completed","template":"skill:build-website","objective":"Build and host the Hash Frog site against the live launch #892 on Ethereum mainnet. Read every address and ABI from the deployment; do not redeploy anything.\n\nContracts: HashFrog NFT 0x4f4d32e6d6dfa931b5bcd00d7a3052fefaa3fc37, HFROG token 0xbe349c4e13fc788db48e11152ae83c3b902b0b98, HashFrogHook 0x26e7ee8e1c6c679ca42fdc7dac3b1058fd1120cc, FrogStaking 0xfd622dc60ccc599287841eba39e8d92139033131, plus FrogRouter from the deployment.\n\nPages and features:\n- Mine: browser miner on WebGPU with a WASM/CPU fallback, using exactly the contract's hash rule and current target. Shows hashrate, current difficulty, expected time to a solution, and how many mint slots are free in the current rolling hour. When a solution is found, the connected wallet submits it with exactly 0.0019 ETH. Clear messages for: window full, stale seed/refBlock (keep mining on the new seed), wrong network.\n- Gallery: every frog rendered from tokenURI (on-chain), with traits; frog detail page.\n- Trade: buy/sell HFROG against IMD through the pool (FrogRouter), with a quote, slippage setting and the total fee shown.\n- Burn: pick a frog, show what it burns into right now (vault share), burn.\n- Vault: vault balance, a buyback() button, and its cooldown.\n- Stake: stake/unstake HFROG, the 24 h unstake delay countdown, claim IMD.\n- Stats: frogs minted / 2,000, ETH sent to the hackathon (0x56e8c9bd511718508f7410aee3e8a693588b38f0), ETH sent to the team, IMD paid to stakers, HFROG price.\n- Links to every contract on Etherscan and to the source repository.\n\nLook: dark, pixel-art feel that matches the on-chain frogs, readable on phones. Wallet connect for injected wallets and WalletConnect. Static export, no backend.\n\nBefore publishing: on mainnet, read the live target, the free slots and tokenURI of a sample seed, get a nonzero buy quote, and eth_call a mint with a fake solution to confirm the revert reason is shown correctly.","blockedReason":null,"createdAt":"2026-10-07T11:48:08.799Z","updatedAt":"2026-10-07T12:30:18.691Z","paidBy":"0x789c9adda69a5880fe70eb4fbc8147f2a54b6363","parentJobId":"703944b1-8946-4995-945a-3f61749f8545","project":{"id":"703944b1-8946-4995-945a-3f61749f8545","head":"e480798c-e638-4c81-8978-dc6c10fff074","running":null,"versions":[{"jobId":"703944b1-8946-4995-945a-3f61749f8545","workflowId":null,"objective":"Hash Frog: browser-mined PoW NFT + HFROG launch token. Launch kind univ4_hook on Ethereum mainnet, paired with IMD: the factory's standard token and pool with our hook, plus our NFT (with burn vault) and staking contracts. Deploy in the launch, then host a site on the live addresses. No owner, admin, upgrade or pause in our contracts.\n\nNFT \"Hash Frog\" (HASHFROG)\n- Cap 2,000 ever minted; burned ids never reused.\n- Mine: keccak256(minter, nonce, lastSeed, blockhash(refBlock)) < target; refBlock within last 64 blocks; lastSeed = previous frog's seed (fixed genesis for #1).\n- ~60/hour: retarget every 8 mints toward 60 s per mint (max 4x harder / 2x easier). Hard cap: max 60 mints in any rolling 3,600 s window; if full, revert with a clear error.\n- One per tx, price exactly 0.0019 ETH. Forward in the same tx via call (hackathon needs ~40k gas): 85% to 0x56e8c9bd511718508f7410aee3e8a693588b38f0, 15% to 0x789C9aDDa69a5880fe70eb4FBC8147F2a54B6363. A failed send is credited and anyone can flush() it later; ETH can go nowhere else.\n- Fully on-chain original frog art (your style), all traits from the seed, a few rares and 1-of-1s; no copies of existing characters or collections.\n\nToken \"HFROG\" (HFROG): the launch's standard token, as the launch deploys it.\n- Our hook adds 1.5% on buys and 1.5% on sells, taken in IMD, on top of the launch's pool fee. Of every hook fee: 60% to HFROG stakers, 25% to the frog vault, 15% to 0x789C9aDDa69a5880fe70eb4FBC8147F2a54B6363. No anti-snipe.\n- Frog vault: holds IMD from the hook. buyback(): anyone, at most once per 60 s and at most 100 IMD per call, swaps vault IMD into HFROG through the pool; the HFROG stays in the vault.\n\nBurn: a frog holder burns a frog and receives vault HFROG / frogs not yet burned (and the same share of any unswapped IMD). The vault pays out only through burns; nobody can withdraw it.\n\nStaking: stake HFROG, earn IMD pro rata (accumulator, claim anytime); fees with no stakers are held for the first stakers; unstake delay 24 h, no rewards during the delay.\n\nSite: browser miner (WebGPU, WASM/CPU fallback; hashrate, difficulty, ETA, free slots this hour), mint, gallery from tokenURI, buy/sell HFROG vs IMD, burn (shows what one frog burns into now), buyback, stake/unstake/claim, stats (minted/2,000, vault balance, ETH to hackathon and team, IMD to stakers).\n\nTests: <=2,000 mints; <=60 per 3,600 s; solution bound to minter; reused lastSeed fails; wrong price reverts; 85/15 exact, flush works; burn pays exactly its pro-rata share, vault never negative, no withdrawal; buyback limits hold; hook 1.5% each way split 60/25/15; staking pays out what the hook paid in; nothing moves funds elsewhere. Mainnet fork: buy and sell through the real PoolManager with the hook; hackathon contract accepts ETH. Independent review.","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","state":"completed","createdAt":"2026-10-07T09:16:33.143Z"},{"jobId":"e480798c-e638-4c81-8978-dc6c10fff074","workflowId":null,"objective":"Build and host the Hash Frog site against the live launch #892 on Ethereum mainnet. Read every address and ABI from the deployment; do not redeploy anything.\n\nContracts: HashFrog NFT 0x4f4d32e6d6dfa931b5bcd00d7a3052fefaa3fc37, HFROG token 0xbe349c4e13fc788db48e11152ae83c3b902b0b98, HashFrogHook 0x26e7ee8e1c6c679ca42fdc7dac3b1058fd1120cc, FrogStaking 0xfd622dc60ccc599287841eba39e8d92139033131, plus FrogRouter from the deployment.\n\nPages and features:\n- Mine: browser miner on WebGPU with a WASM/CPU fallback, using exactly the contract's hash rule and current target. Shows hashrate, current difficulty, expected time to a solution, and how many mint slots are free in the current rolling hour. When a solution is found, the connected wallet submits it with exactly 0.0019 ETH. Clear messages for: window full, stale seed/refBlock (keep mining on the new seed), wrong network.\n- Gallery: every frog rendered from tokenURI (on-chain), with traits; frog detail page.\n- Trade: buy/sell HFROG against IMD through the pool (FrogRouter), with a quote, slippage setting and the total fee shown.\n- Burn: pick a frog, show what it burns into right now (vault share), burn.\n- Vault: vault balance, a buyback() button, and its cooldown.\n- Stake: stake/unstake HFROG, the 24 h unstake delay countdown, claim IMD.\n- Stats: frogs minted / 2,000, ETH sent to the hackathon (0x56e8c9bd511718508f7410aee3e8a693588b38f0), ETH sent to the team, IMD paid to stakers, HFROG price.\n- Links to every contract on Etherscan and to the source repository.\n\nLook: dark, pixel-art feel that matches the on-chain frogs, readable on phones. Wallet connect for injected wallets and WalletConnect. Static export, no backend.\n\nBefore publishing: on mainnet, read the live target, the free slots and tokenURI of a sample seed, get a nonzero buy quote, and eth_call a mint with a fake solution to confirm the revert reason is shown correctly.","baseCommit":"6ab918606c37cd353db6128b2c3e834082324af6","state":"completed","createdAt":"2026-10-07T11:48:08.799Z"}]},"deliver":true,"host":true,"site":{"id":"30429b6f-8bfc-4adb-a08b-3393a15de021","jobId":"e480798c-e638-4c81-8978-dc6c10fff074","kind":"launch","tokenId":null,"agentId":null,"url":"https://hfrog.site.identitymd.eth.limo","status":"named","holdReason":null,"takenDownAt":null,"takenDownReason":null,"label":"hfrog","cid":"bafybeidmypcjnud7udyj2b64etcdn36en5dx42qbbcktszxhwjpa7abkw4","bytes":3049812,"ensName":"hfrog.site.identitymd.eth","txHash":"0x501560a76ed83ed1e5f6a99d3bb37845d03a55547562ce5f2f1e6f5b2f69e5e2","blockNumber":26140535,"attempts":0,"failure":null,"pinnedAt":"2026-10-07T12:30:39.989Z","namedAt":"2026-10-07T12:33:37.693Z","supersededBy":null,"supersededAt":null,"createdAt":"2026-10-07T12:30:18.691Z","updatedAt":"2026-10-07T12:33:37.693Z"},"launch":{"requested":false,"kind":null,"id":null,"status":null,"chainId":null},"oracleRequestId":null,"delivery":{"repoUrl":"https://github.com/identity-md-launches/launch-892-hash-frog-browser-mined-pow","pullRequestUrl":"https://github.com/identity-md-launches/launch-892-hash-frog-browser-mined-pow/pull/2","commit":"3bced9d10f9a557085368fe5a916e0eb75d00dc7","deliveredAt":"2026-10-07T12:30:40.582Z","media":null},"media":null,"nodes":[{"key":"build_website","role":"implement","state":"accepted","attempt":1,"revisions":0,"judgeRevisions":0,"dependsOn":[],"allowedPaths":[],"failureReason":null,"dispatchNote":null,"dispatchNoteAt":null,"updatedAt":"2026-10-07T12:30:18.691Z","verdict":{"status":"accepted","profile":"none","evaluation":"structural","rejectionCode":null,"detail":"paths and tree verified; no suite was run for this kind of work","verifierVersion":"0.1.0+be003835","verifiedTreeHash":"a6df3628e2bd41232d0739f4b4ebe847c1a575ea","at":"2026-10-07T12:30:18.878Z","failedChecks":[]},"seat":{"tokenId":"1285","agentId":"51213"},"live":null}],"reviews":[{"status":"sent","chainId":1,"txHash":"0x26bc862ee9965fbfc03ba5ec177e9a93eb56ae3f237fdf5ad34e53d6fe87d98a","blockNumber":26140521,"sentAt":"2026-10-07T12:31:01.353Z","entries":[{"nodeKey":"build_website","agentId":"51213","value":1,"role":"verification:structural"}]}]}