Blockchain & Contracts
EDMA executes on its own L2 for low-cost throughput and anchors final lineage to Ethereum (L1) for permanence and governance. PoV is protocol-layer logic that decides what is admissible before any mint or settlement; Ethereum’s PoS still provides base consensus.
What the chain enforces.
A claim does not mint or settle until it passes three gates:
Attestation quorum (independent verifiers sign the same evidence).
Equality check (all attestations match the same evidenceHash).
One-claim exclusivity (the same evidence can be finalized once across all routes).
If any check fails—or later gets revoked—contracts fail safe (no mint / no settle), and dependent assets are flagged until rectified.
Core on-chain components (v0.1)
PoV Attestor Registry
Curated, role-bound allowlist of verifiers
(e.g., METER_OP, AUDITOR, GRID, INSPECTOR). Holds the quorum spec(default: minTotal=2,AUDITOR required, minDistinctRoles=2). Governance can tighten per product line.One-Claim Ledger
A simple exclusivity contract. For a given
claimId, only the first successful consumer can finalize; duplicates revert. Reserve/finalize happens atomically inside the gate so partial attempts never stick.PoV Gate
The entry point every mint / settle / access call uses. It reads attestations, verifies roles/quorum, compares
evidenceHash, reserves & finalizes theclaimId, then emits aPoVPassedevent. Any mismatch (no auditor, role disabled, hash mismatch, already claimed, revoked/expired) reverts.Asset & Settlement Contracts
Proofs (gas-only, EDMA L2):
ETT (1 per 10 kWh, non-transferable), EMT (milestones), Carbon Credit NFTs (1 per tCO₂).
Energy NFT (1 MWh) is minted when an account reaches 100 ETT (or evidence is converted to Carbon NFTs per standards).
CLE is a separate reward token minted per verified MWh (never converted from ETT).
Marketplace / Payouts (EDM-settled): trades, retirements, and milestone payout releases.
Fees are enforced on-chain: Energy & Carbon 4% total (2% buyer + 2% seller); Commodity 0.5% per tranche with caps ($5k ≤$1M, $12.5k $1–5M, $25k >$5M). 50% of every fee is burned automatically; rebates (if any) apply only to the treasury half.
Fee Router & Burner
Splits settlement fees 50% burn / 50% treasury at the contract level. Burn is never discounted; staking/volume rebates can reduce only the treasury half.
Evidence & identities (how a claim is defined)
Canonical evidence JSON → evidenceHash
A sorted, minified JSON blob (no PII) describing the measured reality (device, window, quantity, method).
evidenceHash = SHA-256(canonical_json).Route-agnostic claimId
Because it’s route-agnostic, the same evidence cannot be consumed in multiple markets. If you need splits, submit smaller batches and get them independently verified.
Attestations (EAS-compatible)
MeterReadingBatch.v1– the meter batch.Verification.v1– a role-tagged PASS/FAIL over the same evidenceHash.RevocationReason.v1– structured reasons when a verification is withdrawn
Lifecycle (end-to-end)
Prepare & attest. Edge devices/registries produce canonical evidence; independent attestors (per Registry) sign Verification.v1 over the same evidenceHash.
Assert & mint (gas-only). The asset contract calls PoV Gate with params + attestation UIDs. The gate checks roles/quorum/equality, reserves & finalizes in the One-Claim Ledger, then the contract mints the ETT / EMT / Carbon NFT (or Energy NFT when 100 ETT are present).
Settle (EDM). Trades, retirements, or milestone payouts call the gate again (fresh or cached attestations if policy requires) and, on pass, transfer value with the route fee → 50% burn / 50% treasury.
Revocation & rectification. If an essential verification is revoked or expires, off-chain monitors flag dependent assets on-chain. Asset contracts expose
flagRevoked(claimId)and a rectify path when quorum is restored; lineage is append-only—never erased.
Invariants
Equality of evidence – all counted verifications reference the same evidenceHash and batch.
Quorum – at least
minTotalverifications including ≥1 AUDITOR, withminDistinctRolesmet.Exclusivity – a
claimIdcan be finalized exactly once network-wide.Fail-safe – if uncertainty or role drift occurs, the default is no mint / no settle.
Privacy & performance
Privacy by design: put only hashes on-chain; keep raw evidence under access control off-chain. Use selective disclosure or ZK wrappers where required (e.g., eligibility checks) without blocking v0.1.
Gas profile: a typical gate call reads 1 meter attestation + 2–3 verifications. Proof mints and conversions are gas-only on EDMA L2; settlement is where EDM fees apply.
Governance & deployment
Quorum & roles – set in Attestor Registry; upgradeable via timelocked governance.
Fee schedule – published in a Fee contract (Energy/Carbon 4%, Trade 0.5% with caps).
Schemas & versions – EAS schema UIDs are immutable once published; new fields roll to .v2.
Monitors & SLA – public status page; revocation flag latency target <24h.
Conformance checklist
Produce canonical evidence JSON and evidenceHash.
Obtain quorum attestations (including AUDITOR) over the same evidenceHash.
Compute route-agnostic
claimId.Call PoV Gate inside the same tx that mints or settles; on success, finalize in One-Claim Ledger.
Store attestation links; subscribe to the PoV feed; flag/freeze/burn on revocation until rectified.
Use $EDM for all settlement actions; treat proof mints/conversions as gas-only on EDMA L2.
Bottom line: the contracts make three guarantees enforceable in code — ex-post verification, one-claim exclusivity, and revocation that actually bites — while keeping proof creation nearly free and charging only at settlement, where value is realized and EDM burns.
Last updated
