Schemas
All dossiers serialize as canonical JSON: sorted keys, UTC Z timestamps, decimal strings, SET vs SEQ array semantics.
Files referenced by: {name, sha256, size}; no binary inline.
Redactions: appear in redactions[] with salted commitments.
schema_id: part of the claim_id domain; versions are immutable.
A. TRADE.ON_BOARD.v1
{
"schema_id":"TRADE.ON_BOARD.v1","version":"1.0",
"fields":{
"order_id":{"type":"string_id","required":true},
"bl_number":{"type":"string_id","required":true},
"seal_number":{"type":"string_id","required":true},
"container_ids":{"type":"array|string_id","cardinality":"SET","required":true},
"load_port":{"type":"string_id","required":true},
"voyage":{"type":"string_id","required":false},
"created_at":{"type":"timestamp_rfc3339","required":true}
},
"files_required":[{"name":"bl.pdf"},{"name":"seal.jpg"}],
"quorum":{"roles":["TERMINAL","CARRIER"],"min_attestations":2,"min_distinct_roles":2},
"freshness_hours":{"TERMINAL":48,"CARRIER":48},
"post_production":true
}B. TRADE.ARRIVAL_QA.v1
C. TOKENS.ENERGY.MWH.v1
D. TOKENS.CARBON.VCM.v1
17. APPENDIX — CLAIM ID FORMULAS
General form:
pov_hash: ensures two dossiers with same identity fields but different evidence become different claims.
A. Trade — On-Board (sealed):
B. Trade — Customs Cleared:
C. Trade — Arrival & QA:
D. Tokens — Energy (1 MWh):
E. Tokens — Carbon (VCM program serial):
F. Mirror mapping (external registry):
G. Replacement lineage:
Mirrors bind to an existing claim_id: they do not create a second claim. We store mirror_id with claim_id linkage.
17. APPENDIX — GAS BENCHMARKS
Notes: gas varies by calldata size, role set, and storage warm/cold state. These are p50/p95 targets from devnets; updated with on-chain telemetry post-launch. Fees shown at 0.02 gwei L2 gas and $2,000/ETH (changeable).
Tx type
Core work
Gas p50
Gas p95
Est. fee (USD) p50
trade.proof (Gate PASS)
verify roles, equality, reserve One-Claim
120k
180k
~$0.05
trade.emt+release
mint EMT, flip Locked→Unlocked, fee calc, 50% burn
210k
300k
~$0.09
tokens.mint
Gate PASS + token storage
160k
220k
~$0.07
tokens.settle (Buy)
transfer, 4% fee, 50% burn
190k
260k
~$0.08
tokens.retire
mark retired, 4% fee, 50% burn
200k
280k
~$0.09
registry.mirror.create
bind external serial to claim_id
110k
160k
~$0.05
pov.revoke
record revocation + freeze flags
95k
140k
~$0.04
trade.replace
corrective EMT (replaces)
180k
250k
~$0.08
gov.param.change (Timelock exec)
ParameterStore update
80k
120k
~$0.03
What’s expensive? Big dossiers (large arrays) and many roles increase calldata; Merkle-proof verification (on-chain) adds ~40–70k per proof (we often accept attested off-chain checks to keep business clocks fast). Burns are constant-cost ERC-20 transfers.
17. APPENDIX — CONTRACT HEADERS
Full ABIs + error catalogs ship in the SDK and /v1/contracts.
17. APPENDIX — KPIs & SLOs
A. L2 & Infra:
Block time (p50/p95): ≤ 2s / 4s;
Batch to L1 (median): 2–10 min; anchor-guarded switch at ≥ 60 min lag;
Forced inclusion resolution: ≤ 30 min;
Availability: ≥ 99.9% monthly
B. PoV / Admissibility:
EMT→release latency (p50/p95): ≤ 5s / 15s;
Gate fail mix: serialization ≤ 1%; identity ≤ 2%; sensors ≤ 1%;
Duplicate block rate (One-Claim): > 99.9%;
Revocation SLA: detect→freeze ≤ 15 min; pack ≤ 4 h; resume ≤ 72 h p95
C. Marketplaces (Ops):
Disputes per 100 gates: ≤ 3;
False-block (buyer review) rate: ≤ 1%;
Top-up SLA breaches: ≤ 1% of gates;
Throughput: capacity ≥ 300 orders/month per mature region
D. Finance & Economics:
Burn coverage: 100% of settlements/releases with visible burn hash;
PoR daily freshness: 100%;
Escrow reconciliation (Trade):
escrow_start − Σ(stage_fees) = escrow_end 100%;Advance loss rate (if enabled): 0; auto-sweep success ≈100%
E. Compliance & Interop:
Mirror SLA (freeze→replace): ≤ 48 h p95;
Audit replay success: 100% from L1 blobs + proof packs;
Redaction compliance: 100% of redactable paths carry salted commitments
F. Governance:
Param changes within bounds: 100%; no failed executes;
Timelock visibility: 100% proposals w/ ≥ 72 h queue;
Vote participation (avg): ≥ 15% veEDM;
No proposals against brakes: 100% filtered
Formulas & sources:
Latencies from L2 indexer; burns from Fee Router events; duplicates from One-Claim logs; PoR from treasury snapshots; mirrors from mirror events; governance from Governor/Timelock events. Each KPI links to a dashboard and raw event queries in the Explorer.
Last updated
