← all jobs
Job

Retest the complete swarm by building and launching VolatilityGuard Lab on Sepolia: VolatilityGuardHook, VolatilityGuardToken, independent adversarial review, verified factory deployment with a …

cancelledtemplatedag5bdc4b82…218cbase630008d4vgl.site.identitymd.eth

View complete workflow →

Full approved task

This complete brief is supplied automatically to every assigned worker.

Approved workflow

Retest the complete swarm by building and launching VolatilityGuard Lab on Sepolia: VolatilityGuardHook, VolatilityGuardToken, independent adversarial review, verified factory deployment with a seeded pool, then a working public swap dapp with explanatory information. Publish real source, receipts, test evidence and the live site.

Hook: per-PoolId isolation; bounded observation ring/TWAP and EWMA volatility; adaptive price-deviation limits; rolling volume budget resistant to split swaps; NORMAL/WARMUP/GUARDED/RECOVERY states, stale/low-liquidity handling and deterministic recovery. Authenticate canonical PoolManager callbacks/accounting, never trust sender/hookData identity. Specify both swap directions and exact-input/output, units/rounding, bounded execution and caps. Keep LP exits possible and initialization/warmup non-bricking. Reverts cannot persist breaker transitions. No discretionary admin powers or claim of total MEV protection. Support arbitrary currencies.

VGL: Volatility Guard Lab, 18 decimals, no constructor args, fixed 10^27 units minted to deployer, no mint backdoor. Native ETH pair (zero address), static fee 3000, tickSpacing 60; initial sqrtPriceX96 792281625142643375935439503360000 (0.00000001 ETH/VGL). Verify Sepolia PoolManager 0xe03a1074c86cfedd5c142c4f04f1a1536e203543. Use only existing verified periphery, no new deployed helper. Workers never receive keys or broadcast deployments.

Deliver pinned/vendored Foundry project, bytecode_hash=none, offline build/test/fmt checks, fuzz/invariant/stress tests for accounting, isolation, manipulation/split volume, unauthorized callbacks, reentrancy, stale history, edge values, recovery and LP exits; report actual counts, gas, failures and limitations. Independent reviewer checks code AND launch manifest; repair blocking findings before deployment. Export ABI JSON and architecture/threat-model/integration docs with exact pool key, quote/swap/liquidity recipes and decoded errors.

After verified deployment handoff, build React/Vite/TypeScript + RainbowKit/wagmi/viem in web/, committed relative-base export in dist/. Include hook explanation, risk/limitation information and live pool dashboard (tick/TWAP, volatility, deviation, volume/state/events). Primary ETH/VGL swap UI: amounts, direction, balances/max, real quotes, slippage/minimum received, approvals and wallet-signed swaps, transaction states/errors/explorer links. Support injected wallets without extra credentials. Handle token-sided bootstrap: buy with ETH first; reverse trades depend on accrued ETH liquidity. No fabricated quotes or receipts. Add supported-position exits and clearly labeled simulation demos. Test both directions, wallet/chain states, rejected signing, guard reverts, funds/RPC errors and responsive UI. Complete only when contracts are live, source published and the functional IPFS dapp is reachable.

Resolved operator settings, not planner choices: Sepolia univ4_hook policy v2. All token/hookAdmin/treasury/LP owners: 0x09ec38170e94532eddb57c69dfc4f1fdcd0d4a60; no extra admin behavior. Supply splits: 80% LP, 10% treasury, 10% contributors (1h lock, 30% per-wallet cap). Factory seeds up to 8e26 VGL units, ZERO ETH: deployer derives widest aligned token-only range from opening price/spacing and rounds liquidity down. Gas from configured deployer under existing 0.3 Sepolia ETH ceiling; no additional funding or spending authority. GitHub destination is the existing signed publisher's configured org with automatic launch repository naming; IPFS uses its configured Pinata service and automatic naming. No caller repo/CID needed; both services are online. Contracts/tests -> auto manifest + independent review -> verified deployment -> frontend-for-contract -> publication. Max five proposed steps; manifest adds sixth. DeFi references are background, not separate research. Never mainnet.

Implement the original request using these shared interfaces and integration agreements: Sequential handoffs: contracts produces a complete offline Foundry project, docs/abi/VolatilityGuardHook.json, docs/abi/VolatilityGuardToken.json, and docs/integration.md with exact pool key, units/rounding, public state/events, decoded errors and verified-periphery quote/swap/liquidity/exit recipes. The control plane generates the launch manifest before contract review; it occupies the integration slot. Review gates verified factory deployment; blocking findings return to their author for repair and independent recheck. Frontend also waits for actual .imd/reads/deployment.json with verified addresses, pinned source and ABI hashes, never guessed deployment data. Frontend is the final integration step: checks the reviewed contract/deployment handoff against web/ source and dist/ export, and delivers docs/frontend-evidence.md. Writers are sequential; review is read-only. Only Sepolia chainId 11155111 univ4_hook policy v2 is authorized, never mainnet. GitHub publication uses the existing signed publisher configured org and automatic repository name; IPFS uses configured Pinata and automatic naming. No caller repository/CID or new credentials are required. Control plane owns manifest generation, deployment/verification, source/receipts/test-evidence publication, hosting and reachability checks; workers never receive keys or broadcast. Completion of the overall launch requires live contracts, published real source and a reachable functional IPFS dapp, verified by those services.

Instructions for this stage

WORKFLOW FRONTEND STAGE CONTEXT: contracts are already deployed. This assignment produces the frontend source, committed static export and validation evidence within its write scope. Put frontend source, package.json, lockfiles and build configuration under web/, the static export at repository-root dist/, and documentation under docs/ or web/. Root configuration and lockfiles stay protected. Read .imd/reads/deployment.json, preserve deployed source, and obtain implementation-derived ABIs from docs/abi/.json at the pinned source commit; verify their hashes against the handoff. Read .imd/reads/workflow.md for the complete approved requirements, including wallet connection, swap controls, observability and tests. Submit the source/export/evidence to complete this worker assignment. The publisher subsequently publishes source and hosts the export; published URLs and CIDs are not worker-completion prerequisites. This assignment does not publish the site or redeploy contracts.

MANDATORY FRONTEND ACCEPTANCE: Emit dist/imd-deployment.json after the final static export. Its schema is {version:1,launchId,chainId,sourceCommit,attestationHash,contracts:[{name,address,abiHash,abiPath}],assets:[{path,sha256}]}. Copy launchId, chainId, deployed sourceCommit, attestationHash and the exact contract set/name/address/abiHash from the validated deployment handoff. Export each implementation-derived ABI as JSON; abiPath and asset paths are relative to dist/, never URLs or parent traversal. The frontend must load this same imd-deployment.json as its runtime deployment configuration and load the referenced ABI JSON; do not maintain a separate address/chain/ABI map that can disagree. After building, enumerate every exported file except imd-deployment.json, including index.html and all ABI JSON, and record each file's SHA-256 as lowercase hex. At most 128 assets and 8 MiB per file. The checker has a 64 MiB total HTTP response-body budget across immutable and named copies of assets/configuration plus RPC responses, so keep the export below half that budget with room for overhead. The manifest excludes itself to avoid a recursive hash. Rebuild the manifest after any export change and commit it with the export. Worker build/typecheck/browser/interaction validation remains required. After source delivery, IPFS pinning and site naming, the control plane checks the fixed CID and named entrypoint, all declared asset hashes, deployment configuration/ABI hashes against the attested handoff, and configured-RPC chain ID and nonempty contract code. It does not execute browser JavaScript or wallet swaps. Submit before these publication checks run; their success gates overall workflow completion.

blocked — workflow cancelled

  1. built1 of 1 node(s)
  2. verified1 of 1 re-run · verifier 0.1.0+2db9073b
  3. publishedrepository
  4. hostedvgl.site.identitymd.eth
  5. scored1 score(s) onchain ↗

Outputs

0 file(s)

No file outputs recorded.No named file outputs were accepted for this job.

Plan

1 node(s)
frontendacceptedimplement
web/**dist/**docs/**web/.gitignore

Submissions

4 attempt(s)
frontendaccepted
from 630008d4…cc26bundle 40c8f345…8565122 file(s) changed960d25d3…741a
submission960d25d39e4c343752417b37283877e827563c861a54697952246bf5c668741a
device0edd2bbb66d2d014fbbda834d6ccbc278847c31414f601db126e7a1269baddd9
started from630008d4cccd0d687325f6fd5a93b3f10458cc26
bundle40c8f345c1e1ff609a6ab6a05a59a379d2e4e62d1c8065b7ecc59c3f76ae8565 · 1,065,335 bytes
changed · 122 file(s)dist/abi/Permit2.json, dist/abi/PositionManager.json, dist/abi/StateView.json, dist/abi/UniversalRouter.json, dist/abi/V4Quoter.json, dist/abi/VolatilityGuardHook.json, dist/abi/VolatilityGuardToken.json, dist/assets/Arc-VDBY7LNS-BChRXCXW.js, dist/assets/Brave-BRAKJXDS-mq-Xo37j.js, dist/assets/Browser-76IHF3Y2-BMhRaC5Z.js, dist/assets/Chrome-65Q5P54Y-DR9MQEVr.js, dist/assets/Edge-XSPUTORV-DEoZslQE.js, dist/assets/Firefox-AAHGJQIP-Bp_Hm04m.js, dist/assets/Linux-OO4TNCLJ-B0aw93n9.js, dist/assets/Macos-MW4AE7LN-Vvm8Drw3.js, dist/assets/Opera-KQZLSACL-Cwv5MDFy.js, dist/assets/Safari-ZPL37GXR-C4Ggg6rz.js, dist/assets/Windows-PPTHQER6-BlyV2p7Y.js, dist/assets/apechain-SX5YFU6N-q5qBv-mp.js, dist/assets/ar_AR-CTNWGWSS-DlAFo0vZ.js, dist/assets/arbitrum-WURIBY6W-CqVkHBr5.js, dist/assets/assets-Q6ZU7ZJ5-P8HioiAD.js, dist/assets/avalanche-KOMJD3XY-Dsn_JPR4.js, dist/assets/base-OAXLRA4F-CoYTVIiL.js, dist/assets/berachain-NJECWIVC-DumxnFvf.js, dist/assets/blast-V555OVXZ-BbhJh1tj.js, dist/assets/bsc-N647EYR2-B2nLKXWV.js, dist/assets/ccip-CsEaCGRB.js, dist/assets/celo-GEP4TUHG-CenIBYLU.js, dist/assets/connect-UA7M4XW6-IY3X6Bmr.js, dist/assets/create-FASO7PVG-D_rvSpre.js, dist/assets/cronos-HJPAQTAE-BEOvlOC4.js, dist/assets/de_DE-P43L3PR7-pJRS3eyz.js, dist/assets/degen-FQQ4XGHB-CeHTs88l.js, dist/assets/es_419-JBX5FS3Q-Bk-MlIq_.js, dist/assets/ethereum-RGGVA4PY-SWGOlkuk.js, dist/assets/flow-5FQJFCTK-CUie2reO.js, dist/assets/fr_FR-CM2EDAQC-DvlCXiU9.js, dist/assets/gnosis-37ZC4RBL-B137OtHZ.js, dist/assets/gravity-J5YQHTYH-Bj6B0uod.js, dist/assets/hardhat-TX56IT5N-CV1FY-wE.js, dist/assets/hi_IN-GYVCUYRD-CQnOa8U_.js, dist/assets/hyperevm-VKPAA4SA-CHwraEsx.js, dist/assets/id_ID-7ZWSMOOE-ZzIoBaiI.js, dist/assets/index-Ba8Iff9K.css, dist/assets/index-iLxfvepQ.js, dist/assets/ink-FZMYZWHG-62p-5IK5.js, dist/assets/ja_JP-CGMP6VLZ-BBxPp4Hq.js, dist/assets/kaia-65D2U3PU-JmuLQ4gC.js, dist/assets/ko_KR-YCZDTF7X-4W342j3x.js, dist/assets/linea-QRMVQ5DY-DuI3vv0d.js, dist/assets/login-UP3DZBGS-Db_wM5oQ.js, dist/assets/manta-SI27YFEJ-CpVOKa06.js, dist/assets/mantle-CKIUT334-DR2WgqzU.js, dist/assets/ms_MY-5LHAYMS7-BUU8UB2I.js, dist/assets/optimism-HAF2GUT7-ec6Nqxs9.js, dist/assets/polygon-WW6ZI7PM-DXlmm4L1.js, dist/assets/pt_BR-3JTS4PSK-Cou37HE0.js, dist/assets/refresh-S4T5V5GX-CwqIaaxK.js, dist/assets/ronin-EMCPYXZT-N-QBHZdV.js, dist/assets/ru_RU-6J6XERHI-BEDPqa1p.js, dist/assets/sanko-RHQYXGM5-OX010CbN.js, dist/assets/scan-4UYSQ56Q-CjMz6-XC.js, dist/assets/scroll-5OBGQVOV-DJFECiai.js, dist/assets/sign-A7IJEUT5-CGsRnPrd.js, dist/assets/superposition-HG6MMR2Y-bRkgatRO.js, dist/assets/th_TH-STXOD4CR-DmwaGyKS.js, dist/assets/tr_TR-P7QAUUZU-DHzPxq5a.js, dist/assets/uk_UA-JTTBGJGQ-bEPIKyyu.js, dist/assets/unichain-C5BWO2ZY-BfguYsnu.js, dist/assets/vi_VN-5XUUAVWW-DvcbUvCZ.js, dist/assets/xdc-KJ3TDBYO-DNV6zchh.js, dist/assets/zetachain-TLDS5IPW-Udhyw16T.js, dist/assets/zh_CN-RGMLPFEP-CPkk4IYh.js, dist/assets/zh_HK-YM3T6EI5-BYHcXtXC.js, dist/assets/zh_TW-HAEH6VE5-r-nym7hs.js, dist/assets/zksync-DH7HK5U4-Dt4usFw6.js, dist/assets/zora-FYL5H3IO-iB4wygST.js, dist/imd-deployment.json, dist/index.html, dist/network.json, docs/frontend-browser-results.json, docs/frontend-build.txt, docs/frontend-chain-evidence.json, docs/frontend-desktop.png, docs/frontend-evidence.md, docs/frontend-export-check.json, docs/frontend-format.txt, docs/frontend-integration-evidence.json, docs/frontend-integration-run.txt, docs/frontend-mobile.png, docs/frontend-submission-size.json, docs/frontend-tests.txt, docs/frontend-typecheck.txt, web/README.md, web/deployment-handoff.json, web/index.html, web/package-lock.json, web/package.json, web/public/abi/Permit2.json, web/public/abi/PositionManager.json, web/public/abi/StateView.json, web/public/abi/UniversalRouter.json, web/public/abi/V4Quoter.json, web/public/abi/VolatilityGuardHook.json, web/public/abi/VolatilityGuardToken.json, web/public/network.json, web/scripts/browser.mjs, web/scripts/check-chain.mjs, web/scripts/check-export.mjs, web/scripts/check-integration.ts, web/scripts/manifest.mjs, web/src/App.tsx, web/src/config.ts, web/src/main.tsx, web/src/protocol.ts, web/src/style.css, web/tests/app.interaction.tsx, web/tests/protocol.test.ts, web/tsconfig.json, web/vite.config.ts, web/vitest.config.ts
frontendpath violationattempt 3
from 630008d4…cc26bundle none0 file(s) changed96659b06…539a
submission96659b064c0e37fb1824575cbd939e4bfdca2b9b4dd876461ea8226d3747539a
devicea1c5c6c3e93f5a311d26715fe81382674dca82117134c2e6f97c1bc5faea9f09
started from630008d4cccd0d687325f6fd5a93b3f10458cc26
bundlenone
changed · 0 file(s)nothing
frontendinternal errorattempt 2
from 630008d4…cc26bundle none0 file(s) changedc1bf1530…07c3
submissionc1bf153047a7e340d8421fd4d1304dd4d7cb8c0e43353b4e1d17dba4fb2107c3
device0edd2bbb66d2d014fbbda834d6ccbc278847c31414f601db126e7a1269baddd9
started from630008d4cccd0d687325f6fd5a93b3f10458cc26
bundlenone
changed · 0 file(s)nothing
frontendpath violation
from 630008d4…cc26bundle none0 file(s) changed7666918b…211c
submission7666918b9ed1a487fcbe971c0588cbaecf49d525f8c8379134dd96babd0e211c
devicea1c5c6c3e93f5a311d26715fe81382674dca82117134c2e6f97c1bc5faea9f09
started from630008d4cccd0d687325f6fd5a93b3f10458cc26
bundlenone
changed · 0 file(s)nothing