Job

74c5e4b9Blocked

Node build_contract_project: path_violation.

Release pepes armed with ai on Sepolia: a browser game whose jackpot runs on a Uniswap v4 hook. The starting repository (MIT, hosted on gitlawb) holds the finished off-chain game in prototype/index.html and the full specification in SPEC.md; follow SPEC.md exactly.

Contracts: a fixed-supply launch token PepeIce (name pepes ice, symbol ICE, 18 decimals) and a hook JackpotHook on the ETH/ICE pool the factory opens. On every swap the hook takes 1% of the specified amount into that pool's pot …

the approved task

Approved workflow

Release pepes armed with ai on Sepolia: a browser game whose jackpot runs on a Uniswap v4 hook. The starting repository (MIT, hosted on gitlawb) holds the finished off-chain game in prototype/index.html and the full specification in SPEC.md; follow SPEC.md exactly. Contracts: a fixed-supply launch token PepeIce (name pepes ice, symbol ICE, 18 decimals) and a hook JackpotHook on the ETH/ICE pool the factory opens. On every swap the hook takes 1% of the specified amount into that pool's pot (held as ERC-6909 claims, one pot per currency, as the burn-share hook of launch-124 does but kept instead of burned) and issues a ticket to the player named in hookData, or tx.origin without it. Anyone may draw a ticket from the next block's hash within 256 blocks: a roll of 77 out of 100 pays the player 90% of both pots, a roll of 20, 40, 60, 80 or 100 pays 20 times the ticket's fee capped at 10% of that pot, anything else pays nothing, and no ticket is drawn twice. fillTank(key, pees) moves pees times 10 ICE from the caller into the ICE pot so the site can let the player pee that many times. Full Foundry tests including fuzzing that payouts never exceed the pots, an independent adversarial review, deployment on Sepolia, then a website built from prototype/index.html that keeps its art, animation, music and controls and replaces only the simulated balances, swaps, rolls and tank with the deployed contracts.

Sepolia only (chainId 11155111). GitHub publication and IPFS hosting are approved; site label pepes-armed. The repository and everything built from it is MIT. TOKEN SUPPLY (launch policy): PepeIce has a zero-argument constructor that mints exactly 10^27 minor units (1,000,000,000 ICE, 18 decimals) to msg.sender and nothing else; no mint function, owner, pause or proxy. Do not put totalSupply or allocation splits in launch.json; they come from the versioned launch policy and the factory must receive the full 10^27. HOOK: JackpotHook constructor takes only IPoolManager; in launch.json hook.constructorArgs is exactly the literal Sepolia PoolManager 0xE03A1074c86CFeDd5C142C4F04F1a1536e203543, no placeholders. Permissions beforeSwap and beforeSwapReturnDelta only; never beforeInitialize (the factory opens the pool). No owner, admin, fee setter, pause, upgrade, selfdestruct or delegatecall. POOL: pairedCurrency native ETH, fee 3000, tickSpacing 60, initialPrice 79228162514264337593543950336000 (1,000,000 ICE per ETH). There is no $IMD on Sepolia: where the prototype shows $IMD the release uses Sepolia ETH. Climb prizes stay local points. Randomness is a future block hash, acceptable for Sepolia; docs/SECURITY.md must say a mainnet version needs Chainlink VRF. SITE: Vite, React, TypeScript, RainbowKit, wagmi and viem; source under web/, relative-base static export to dist/, runtime addresses and ABIs from dist/imd-deployment.json; the game's DOM and animation code may stay plain JavaScript inside the React shell; swaps go through an official Uniswap v4 router on Sepolia that forwards hookData.

Build PepeIce and JackpotHook per SPEC.md with tests and an independent review, deploy them on Sepolia as univ4_hook, then build the game site from prototype/index.html against the live deployment.

the website assignment

Turn prototype/index.html into the release site as SPEC.md section 4 describes: keep its art, animation, music and controls; replace the simulated balances, swaps, rolls and tank with the deployed PepeIce and JackpotHook.

  • The site shows the connected wallet's ICE and Sepolia ETH, both pots, and the live pool price, all read from the chain.
  • Peeing on the fridge performs a real swap through the pool with the player in hookData, then shows the roll the contract will compute and calls draw only on a win.
  • The golden throne performs a real ETH to ICE swap; the tank is filled through fillTank and pees count down from it.
  • Missing wallet, wrong network, insufficient balance, approvals and rejected transactions each show a short in-game message, and a rules panel explains the pot, the roll, the golden flush and that this is Sepolia test value.

Work

  1. contracts built
    #494Build contract projectpath violationin the task: wrote outside the task's allowed paths: foundry.toml

    wrote outside the task's allowed paths: foundry.toml

    ran oncodex · gpt-6-astra · 10 turns · 20m 20s · 113.4K in · 35.6K out · 3.2M cached
    submission733e135d1e8862d721370ee04565324d3cd3bb9aca7d854758e3dcfe8e6eadde
    devicec4f696e22e7a36f7235c9baaeaec7a27f0a1cc13d82b8d61e1e9f7b019d5015b
    started from9c954db4e80af35e31232344b43c37bd114d5646
    bundlenone
    changed · 0 filesnothing
    #1548path violationin the task: wrote outside the task's allowed paths: foundry.toml

    wrote outside the task's allowed paths: foundry.toml

    ran oncodex · gpt-6-astra · 6 turns · 15m 59s · 84.5K in · 28.8K out · 810.9K cached
    submission38914f8a08802113ca2abdfca3da541dcd1387046901d886f2cd6242d285c564
    device35c52a5b502e847cda633d436a25cd57d809a4ea7935560acc2b18eccfd592ac
    started from9c954db4e80af35e31232344b43c37bd114d5646
    bundlenone
    changed · 0 filesnothing
    #617path violationin the task: wrote outside the task's allowed paths: foundry.toml

    wrote outside the task's allowed paths: foundry.toml

    ran oncodex · gpt-6-astra · 7 turns · 17m 19s · 93.5K in · 32.3K out · 1.3M cached
    submission1d29b988c62ca396a58405389e9c45d8bd3ea4374b1a5a50e21c207231b02f53
    devicebb0a3bf63233e5e5722f6eae6cd08dc581298f894dd83aa00d8a87a846a28c34
    started from9c954db4e80af35e31232344b43c37bd114d5646
    bundlenone
    changed · 0 filesnothing
  2. contracts integratedManifestwaiting
    afterBuild contract project
    writes to
    launch.json
  3. contracts reviewedAdversarial reviewwaiting
    afterBuild contract project, Manifest
  4. contracts publishedidentity-md-launches/launch-182-pepeice-jackpothook
  5. deployedWorkflow paused. Waiting for independent review and GitHub publication.
  6. website builtafter deployment
  7. website publishedafter the website is accepted
  8. hostedWorkflow paused. Waiting for the website build and GitHub publication.
  9. checkednot reached