Skip to main content

Assertion Lifecycle

Home · Generic Index · Chain Overlays

This document covers the end-to-end lifecycle of assertions across credible-sdk and credible-layer-dapp.

Lifecycle Sequence

Components

  • PCL CLI (credible-sdk/crates/pcl): compiles, tests, stores, and submits assertions.
  • Assertion DA (credible-sdk/crates/assertion-da): JSON-RPC data availability for assertion bytecode and source.
  • Credible dApp API (credible-layer-dapp/packages/dapp-api): accepts submissions, deploys registry updates.
  • State Oracle Contract: on-chain registry mapping assertions to adopters.
  • Sidecar Indexer (credible-sdk/crates/sidecar/src/indexer.rs): watches State Oracle and fetches assertions into the local store.

Data Artifacts

  • Assertion bytecode + metadata stored in Assertion DA (JSON-RPC methods da_submit_solidity_assertion, da_get_assertion).
  • Registry updates on-chain (State Oracle events consumed by dApp indexer and sidecar indexer).
  • Local assertion store inside the sidecar (used to match triggers during transaction simulation).

Next: enforcement runtime in docs/generic/credible-layer-runtime.md.