dApp, CLI, and Smart Contract Interactions
Home · Generic Index · Chain Overlays
This document focuses on high-level interactions between the dApp, CLI, and on-chain contracts, plus how the on-chain registry feeds both the sidecar and the two indexers.
dApp + CLI + Contracts (High-Level)
Notes:
- The dApp uses wagmi write calls to the State Oracle contract for assertion registry actions.
- The dApp reads AdminVerifier to validate ownership before allowing project/contract actions.
- Contract interactions from the UI flow through wallet RPC endpoints configured in chain profiles.
- Chain profiles select production or staging State Oracle addresses; staging is used for pre-production workflows.
- The CLI (
pcl) pushes bytecode to Assertion DA and submits metadata to the dApp API. - On-chain registry updates are validated by AdminVerifier and DA verifier contracts inside State Oracle.
- Contract structure and roles are summarized in
docs/generic/contracts.md.
Contracts + Sidecar + Indexers
Notes:
- The sidecar indexer watches State Oracle events and keeps the local assertion store in sync by fetching bytecode from Assertion DA.
- The Ponder indexer watches both production and staging State Oracle events (when configured) and updates its own database for the dApp UI.