Skip to content
D20DAODocs
Keeper LabExplorerGitHub

BUILD / GUIDE

Deployed contracts

Contract addresses for the D20DAO pilot on Arc Testnet, chain ID 5042002.

View deployment manifest
01

Arc Testnet addresses

Use the coordinator proxy when connecting a consumer. The registry holds epoch commitments; the pilot consumer is the deployed example application. Requests currently require keeper consumer allowlisting.

02

Implementation addresses

These addresses follow the deployment manifest, including the confirmed refund-notification upgrade at block 62310349. Integrate through the proxies above. The manifest retains previous implementation and upgrade receipts for historical verification; check the active implementation onchain before integrating.

Work with your agent

Copy a task-specific prompt with the protocol references and integration rules.

 

View prompt
Verify the D20DAO deployment for my application using read-only chain calls. Compare chain ID, proxy implementation slots, runtime hashes, owner, registry and requestFee with the current manifest. Report discrepancies before using an address.

Read these references before choosing APIs:
- Agent guide: https://github.com/d20dao/web/blob/main/public/agents.md
- Full text docs: https://github.com/d20dao/web/blob/main/public/llms-full.txt
- This guide: https://github.com/d20dao/web/blob/main/public/deployments/arc-testnet.json
- Current deployment and upgrade history: https://github.com/d20dao/keeper/blob/main/deployments/arc-testnet.json
- SDK and packaging instructions: https://github.com/d20dao/d20-sdk
- Integration skills: https://github.com/d20dao/skills
- Reviewed protocol source: https://github.com/d20dao/keeper/tree/d7e785dda57499220bd37d73bc6fad9226872dcc
If a reference needs repository access, use the installed package's AGENTS.md and provenance or request the reviewed files. Do not invent signatures or addresses.

Use the existing project toolchain. Install @d20dao/vrf-sdk from npm and read its AGENTS.md and PROTOCOL-PROVENANCE.json. Use Solidity 0.8.28. Configure the actual chain and coordinator proxy; Arc Testnet is 5042002 and requires consumer allowlisting. Read requestFee() instead of hardcoding the fee.

Keep callbacks small and authenticated through D20VRFConsumer. Mapped requests still deliver a raw bytes32 word. Accepted proof with a failed callback is paid service; retry the same stored result, never reroll it. Unfulfilled requests are refundable strictly after 60 seconds. Optional _onRefund(requestId) means the fixed recipient was paid or credited, not that the consumer received funds; notification retries must not pay twice. Do not request randomness from inside a callback. Separate application assets and settlement rules.

For verification, retain original epoch packets, request/target context and accepted proof evidence. Mathematical replay alone does not establish chain inclusion. An implementation upgrade inside a relevant block requires transaction-ordered evidence; block-end storage alone cannot prove which code ran.

Implement only the requested application changes. Do not request keeper, VRF, deployer or bot secrets. Respect my authorization for any deployment or funded transaction. Run relevant compilation and lifecycle tests; report changed files, results, missing inputs and any remaining onboarding step.