Status: Deployment ready - The contract and browser transaction path are implemented. No GIWA Sepolia contract address is published until deployment and source verification complete.This page records the evidence needed to verify an Iruka test pull. Testnet ETH and all testnet records have no monetary value and do not represent a commercial pack, custody record, or USDC settlement.
Contract Registry
After broadcast, replace both pending fields with the Explorer contract URL and source-verification URL. The website enables its GIWA transaction path only when the verified address is set as
VITE_GIWA_PACK_BATCH_ADDRESS.
What The Contract Proves
- A
BatchCommittedevent fixes the inventory Merkle root, odds commitment, test price, and server-seed commitment before a pull. PullRequestedrecords the collector and batch after the test-ETH transaction confirms.ClientSeedRevealedrecords the collector seed commitment reveal.PullFulfilledrecords the assigned inventory ID and remaining supply.- The selected inventory position is removed from the batch mapping, so it cannot be assigned twice.
Deploy And Verify
- Claim GIWA Sepolia test ETH and export a dedicated deployer key locally. Do not use a wallet with production assets.
- Generate and retain a private server seed. Its hash is committed onchain; the seed itself is only used by the fulfillment operator.
VITE_ address is public; the deployer key and server seed remain local.
Commit A Test Batch
The batch tool uses the same deterministic inventory IDs as the Vending fixture. It creates the inventory root and a Merkle proof for every item.0.001 test ETH. It is intentionally separate from the product’s displayed USDC pricing and must never be described as canonical USDC settlement.
Verify A Pull
- Connect an EVM wallet in Iruka and switch to GIWA Sepolia.
- Select the committed
Debutbatch and chooseTest pull. - Confirm
requestPullandrevealClientSeedin the wallet. - Open the GIWA receipt link shown in Vending. It exposes the request ID and reveal transaction.
- The operator fulfills it from the committed manifest:
PullFulfilled event, assigned inventory ID, remaining supply, and contract source.
Evidence Checklist
- Verified
IrukaPackBatchExplorer contract URL - Deployment transaction URL
BatchCommittedtransaction URL and generated batch manifest hash- One wallet
requestPullandrevealClientSeedtransaction URL - One operator
PullFulfilledtransaction URL - Screenshot or recording showing the same request ID in Iruka and the Explorer
