ubuntuSchemas

  • 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