{"workflow":null,"planning":null,"id":"14f8bbf3-040c-4da2-8f44-61c55b70ee1d","state":"completed","template":"skill:build-website","objective":"Build and host the imd/place website (x.com/imdplace) against the live launch #1033 on Robinhood Chain (4663). Read every address and ABI from the deployment; deploy nothing.\n\nContracts: token i/p 0x9aa7bef88c90d237b19afe77c8883ff119b606e7, PlaceHook 0x512b15372f42f687d366fc0c3342267dc73120cc, Canvas 0xda4339c3b9a4e2d6e1cd7706b8419ccc7d112086, PlaceRouter 0x137182424e1b55819da5cf06c2c0a65284a0d558, Seasons (NFT + auction) 0xd29e47e4c4c337cd4226dd523a73af398585d1dc. Paired with IMD 0x5f7bb59365ce557c26dbcaa4ee9d39a4b95b7127 on Robinhood Chain.\n\nPages and features:\n- Canvas: the live 64x64 canvas read from Canvas, zoom and pan, 16-colour palette, click a pixel to see owner, times painted in its 24 h window and current repaint price. Select many pixels and paint up to 50 per transaction; show the paint cost before signing and the wallet's paint balance.\n- Buy paint: buy and sell i/p against IMD through PlaceRouter (it passes the buyer in hookData so paint is credited), with quote, slippage, IMD approval, and the current hook fee (including the launch decay) shown before signing.\n- My pixels: pixels I own now, IMD earned and claimable, claim button.\n- Season: countdown to endSeason, a button to call it when due, the season pot, the current auction of the last season's canvas NFT with live price/bids, bid and withdraw-refund buttons, settle.\n- Gallery: every past season NFT rendered from its on-chain tokenURI, with winner and sale price.\n- Leaderboard: top painters by pixels owned now and by IMD earned.\n- Stats: IMD paid to painters, season pot, total paint credited, pixels painted.\n- Header and footer: link to x.com/imdplace and to every contract on the Robinhood Chain explorer.\n\nLook: dark background, the canvas's 16-colour palette, chunky pixel font, the i/p logo; the canvas is the hero, full width. Works on phones.\n\nWallet connect: injected browser wallets only (EIP-6963 discovery: MetaMask, Rabby, Coinbase Wallet and others), no WalletConnect and no project IDs or API keys of any kind; on phones it works inside wallet in-app browsers. Auto-switch to Robinhood Chain (add the chain if missing). Static export, no backend; read state from chain and events through the public Robinhood Chain RPC.\n\nBefore publishing: on mainnet read the canvas, a pixel's repaint price and the season end time, get a nonzero buy quote through PlaceRouter, and eth_call a paint with too little paint to confirm the error is shown clearly.","blockedReason":null,"createdAt":"2026-10-08T09:57:20.553Z","updatedAt":"2026-10-08T10:45:15.637Z","paidBy":"0xa7e99bb7155d7477e0c838e201b16e62b9c0b5ac","parentJobId":"bace0acb-d19b-40e6-b06b-71525fbc8358","project":{"id":"29d399e2-2640-44cb-b036-ec23544bc3b3","head":"14f8bbf3-040c-4da2-8f44-61c55b70ee1d","running":null,"versions":[{"jobId":"29d399e2-2640-44cb-b036-ec23544bc3b3","workflowId":null,"objective":"imd/place (x.com/imdplace): a pixel war on a Uniswap v4 hook, where your pixels earn: buying the token gives paint, painting pixels on a shared on-chain canvas earns a share of every trade, and each weekly canvas is auctioned as a 1/1 NFT with the proceeds paid to its artists. Launch kind univ4_hook on Robinhood Chain (4663), paired with IMD: the launch's standard token and pool with our hook, plus our canvas and season-NFT contracts. Deploy in the launch, then host a site on the live addresses. No owner, admin, upgrade or pause in our contracts.\n\nToken name: imd/place. Symbol: i/p (if the launch refuses the slash, use IP).\n\nSTART FROM EXISTING CODE: this exact project was already built, tested (44 tests, Robinhood fork swaps) and accepted in job 834c0e87-f40c-4a5d-9935-03d865b034ec; its source is the accepted bundle https://api.imd.fun/bundles/624e4be3dda1c33c6258619a53a63170bebcefca7c0890da5dcd5fa2a34cfac0. Download it and use it as the starting point; keep its logic and only fix what review finds. That job stopped only because launch.json lacked the pool values below.\n\nPool (launch.json): use the launch factory's standard settings for an IMD-paired univ4_hook launch on Robinhood Chain, the same as live launch #1015: fee 12500, tickSpacing 60, initialPrice 79228162514264337593543950336, pairedCurrency 0x5f7bb59365ce557c26dbcaa4ee9d39a4b95b7127.\n\nPAINT\n- The hook credits paint on every buy (afterSwap): 1 drop per 0.05 IMD spent. The buyer is the address passed in hookData by our router; without hookData, tx.origin. Paint is not transferable and never expires.\n- Sells give no paint and take none away.\n\nCANVAS\n- 64x64 pixels, 16-colour palette (bright, classic pixel-art colours), stored in the contract. Per pixel, one packed slot: owner, colour, paints in the current 24 h window, window start.\n- paint(pixels[], colours[]): up to 50 pixels per call. An empty pixel costs 1 drop. Repainting costs 2^k drops, k = times that pixel was painted in its current 24 h window (cap 2^10). Spent paint is consumed.\n\nPIXELS EARN\n- Hook fee 2% on every buy and sell, taken in IMD (on top of the launch's pool fee). Split: 67% to pixel owners, 25% to the season pot, 8% to 0xA7e99BB7155D7477E0C838E201b16E62B9c0b5Ac.\n- The 67% is shared pro rata by pixels currently owned: a global accumulator per pixel, settled on every ownership change, so a pixel earns while it is yours and earnings already accrued stay claimable after it is painted over. claim() anytime. Fees with no painted pixels go to the season pot.\n- First 30 minutes after launch: the hook fee decays linearly from 35% to 2%; the extra goes to the season pot.\n\nSEASONS\n- A season lasts 7 days. After it, anyone calls endSeason(): the final canvas is frozen and minted as a 1/1 ERC-721 to the season contract (tokenURI: on-chain SVG of the canvas, crisp pixels, name \"imd/place season N\", external_url https://x.com/imdplace, attributes: season, painters, paints), and the canvas resets for the next season immediately.\n- The NFT is sold in a 24 h English auction in IMD (5% minimum raise, bids in the last 10 min extend by 10 min, outbid bids withdrawable at once, pull-based so a reverting bidder cannot block the auction). Winning bid + the season pot go to the final canvas's pixel owners, pro rata by pixels held at the freeze. No bids: the NFT goes to the top painter and the pot carries to the next season.\n\nSITE\nLive canvas (zoom, pan, palette, pixel info: owner, times painted, current repaint price), batch painting, buy paint (swap via our router with hookData), my pixels and my IMD earnings with claim, leaderboard, season timer, auction with bidding, gallery of past season NFTs, totals paid to painters. Header and footer link to x.com/imdplace and to every contract on the explorer. Look: dark background, the canvas's 16-colour palette, chunky pixel type, the i/p logo. Phones work.\n\nTESTS\nPaint credited only on buys and to the right address; repaint cost doubles inside 24 h and resets after; batch limit; fee split exactly 67/25/8 and the launch decay; owner earnings match accumulator math across many repaints (fuzz); claims never exceed fees received; endSeason only after 7 days, freezes the right canvas, resets; auction rules, pull refunds, extensions; payout sums equal pot + bid; no function moves IMD, NFTs or paint anywhere else. Robinhood fork: buy and sell through the real PoolManager with the hook. Independent review.","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","state":"completed","createdAt":"2026-10-08T08:50:52.730Z"},{"jobId":"bace0acb-d19b-40e6-b06b-71525fbc8358","workflowId":null,"objective":"Build and host the imd/place website (x.com/imdplace) against the live launch #1033 on Robinhood Chain (4663). Read every address and ABI from the deployment; deploy nothing.\n\nContracts: token i/p 0x9aa7bef88c90d237b19afe77c8883ff119b606e7, PlaceHook 0x512b15372f42f687d366fc0c3342267dc73120cc, Canvas 0xda4339c3b9a4e2d6e1cd7706b8419ccc7d112086, PlaceRouter 0x137182424e1b55819da5cf06c2c0a65284a0d558, Seasons (NFT + auction) 0xd29e47e4c4c337cd4226dd523a73af398585d1dc. Paired with IMD 0x5f7bb59365ce557c26dbcaa4ee9d39a4b95b7127 on Robinhood Chain.\n\nPages and features:\n- Canvas: the live 64x64 canvas read from Canvas, zoom and pan, 16-colour palette, click a pixel to see owner, times painted in its 24 h window and current repaint price. Select many pixels and paint up to 50 per transaction; show the paint cost before signing and the wallet's paint balance.\n- Buy paint: buy and sell i/p against IMD through PlaceRouter (it passes the buyer in hookData so paint is credited), with quote, slippage, IMD approval, and the current hook fee (including the launch decay) shown before signing.\n- My pixels: pixels I own now, IMD earned and claimable, claim button.\n- Season: countdown to endSeason, a button to call it when due, the season pot, the current auction of the last season's canvas NFT with live price/bids, bid and withdraw-refund buttons, settle.\n- Gallery: every past season NFT rendered from its on-chain tokenURI, with winner and sale price.\n- Leaderboard: top painters by pixels owned now and by IMD earned.\n- Stats: IMD paid to painters, season pot, total paint credited, pixels painted.\n- Header and footer: link to x.com/imdplace and to every contract on the Robinhood Chain explorer.\n\nLook: dark background, the canvas's 16-colour palette, chunky pixel font, the i/p logo; the canvas is the hero, full width. Works on phones. Wallet connect for injected wallets and WalletConnect, auto-switch to Robinhood Chain. Static export, no backend; read state from chain and events.\n\nBefore publishing: on mainnet read the canvas, a pixel's repaint price and the season end time, get a nonzero buy quote through PlaceRouter, and eth_call a paint with too little paint to confirm the error is shown clearly.","baseCommit":"4ba07cc1aa427c5cf5ca67f6a0494adf57222ec4","state":"blocked","createdAt":"2026-10-08T09:49:51.139Z"},{"jobId":"14f8bbf3-040c-4da2-8f44-61c55b70ee1d","workflowId":null,"objective":"Build and host the imd/place website (x.com/imdplace) against the live launch #1033 on Robinhood Chain (4663). Read every address and ABI from the deployment; deploy nothing.\n\nContracts: token i/p 0x9aa7bef88c90d237b19afe77c8883ff119b606e7, PlaceHook 0x512b15372f42f687d366fc0c3342267dc73120cc, Canvas 0xda4339c3b9a4e2d6e1cd7706b8419ccc7d112086, PlaceRouter 0x137182424e1b55819da5cf06c2c0a65284a0d558, Seasons (NFT + auction) 0xd29e47e4c4c337cd4226dd523a73af398585d1dc. Paired with IMD 0x5f7bb59365ce557c26dbcaa4ee9d39a4b95b7127 on Robinhood Chain.\n\nPages and features:\n- Canvas: the live 64x64 canvas read from Canvas, zoom and pan, 16-colour palette, click a pixel to see owner, times painted in its 24 h window and current repaint price. Select many pixels and paint up to 50 per transaction; show the paint cost before signing and the wallet's paint balance.\n- Buy paint: buy and sell i/p against IMD through PlaceRouter (it passes the buyer in hookData so paint is credited), with quote, slippage, IMD approval, and the current hook fee (including the launch decay) shown before signing.\n- My pixels: pixels I own now, IMD earned and claimable, claim button.\n- Season: countdown to endSeason, a button to call it when due, the season pot, the current auction of the last season's canvas NFT with live price/bids, bid and withdraw-refund buttons, settle.\n- Gallery: every past season NFT rendered from its on-chain tokenURI, with winner and sale price.\n- Leaderboard: top painters by pixels owned now and by IMD earned.\n- Stats: IMD paid to painters, season pot, total paint credited, pixels painted.\n- Header and footer: link to x.com/imdplace and to every contract on the Robinhood Chain explorer.\n\nLook: dark background, the canvas's 16-colour palette, chunky pixel font, the i/p logo; the canvas is the hero, full width. Works on phones.\n\nWallet connect: injected browser wallets only (EIP-6963 discovery: MetaMask, Rabby, Coinbase Wallet and others), no WalletConnect and no project IDs or API keys of any kind; on phones it works inside wallet in-app browsers. Auto-switch to Robinhood Chain (add the chain if missing). Static export, no backend; read state from chain and events through the public Robinhood Chain RPC.\n\nBefore publishing: on mainnet read the canvas, a pixel's repaint price and the season end time, get a nonzero buy quote through PlaceRouter, and eth_call a paint with too little paint to confirm the error is shown clearly.","baseCommit":"4ba07cc1aa427c5cf5ca67f6a0494adf57222ec4","state":"completed","createdAt":"2026-10-08T09:57:20.553Z"}]},"deliver":true,"host":true,"site":{"id":"36b877e2-dcfa-4607-88e9-1938d905db9a","jobId":"14f8bbf3-040c-4da2-8f44-61c55b70ee1d","kind":"launch","tokenId":null,"agentId":null,"url":"https://ip.site.identitymd.eth.limo","status":"named","holdReason":null,"takenDownAt":null,"takenDownReason":null,"label":"ip","cid":"bafybeifbyue5biu5xopktptu5otne27b4r4wgtxup5pekdvoulamfmsw3e","bytes":438572,"ensName":"ip.site.identitymd.eth","txHash":"0xad5d8cc80d3809b53d90b5f1ea63205dd4692232d023471d36a23ef11f090a8f","blockNumber":26147176,"attempts":0,"failure":null,"pinnedAt":"2026-10-08T10:45:30.299Z","namedAt":"2026-10-08T10:46:52.517Z","supersededBy":null,"supersededAt":null,"createdAt":"2026-10-08T10:45:15.637Z","updatedAt":"2026-10-08T10:46:52.517Z"},"launch":{"requested":false,"kind":null,"id":null,"status":null,"chainId":null},"oracleRequestId":null,"delivery":{"repoUrl":"https://github.com/identity-md-launches/launch-1033-imd-place-symbol-i-p-if-the-launch-refus","pullRequestUrl":"https://github.com/identity-md-launches/launch-1033-imd-place-symbol-i-p-if-the-launch-refus/pull/2","commit":"105b98cd77ccc3c5e3293967fc2a1f30130edae6","deliveredAt":"2026-10-08T10:45:27.015Z","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-08T10:45:15.637Z","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+ad90ce4c","verifiedTreeHash":"00a9e613ce2ffc4fe6662fe68f207ca0bcc96001","at":"2026-10-08T10:45:15.637Z","failedChecks":[]},"seat":{"tokenId":"74","agentId":"51196"},"live":null}],"reviews":[{"status":"queued","chainId":1,"txHash":null,"blockNumber":null,"sentAt":null,"entries":[{"nodeKey":"build_website","agentId":"51196","value":1,"role":"verification:structural"}]}]}