All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- Web3Auth social login for Web2 onboarding (#214): "Login with Google" (and
other Web3Auth socials) provisions a non-custodial Stellar keypair beside
Freighter/Albedo/Ledger, with in-app transaction signing for commitments and
disputes. Set
VITE_WEB3AUTH_CLIENT_IDto enable the modal. - Optimistic rollup engine for high-frequency micro-commitment batching (#182):
client-side deterministic state transitions + Merkle accumulator, Soroban
submit_batch_root/force_includeendpoints, and React UI for pending rollup vs on-chain finalized states. - Formal verification pipeline for dispute-slashing economics (#192): pure
registry::economicsmodules (slash cut, vault TVL, slash policy), unit tests in default Contract CI, and an optional Kani workflow (workflow_dispatchonly) with bounded SMT proofs. - Zero-trust state proof aggregation pipeline (#178): the relayer buffers
commitment proofs until
MAX_BATCH_SIZEorBATCH_TTL, emits one unified Merkle aggregation proof, andPactumZeroTrustOracle.submitBatchedStateProofunpacks the batch on-chain so EVM verification cost no longer scales linearly with event volume. - Multi-arbitrator support with majority-vote dispute resolution (#11):
initialize()now accepts aVec<Address>arbitrator committee stored asDataKey::ArbitratorSet,resolve_dispute()records per-dispute votes underDataKey::Votes(commitment_id)and finalizes only when votes exceed half the committee size, and a newget_arbitrators()exposes the full set. Commitments that name a custom resolver outside the committee keep direct resolution.
- Per-address reputation tracking (fulfilled/late/breached counts) as issuer
dispute()— raise a dispute within 7-day window after attestationresolve_dispute()— arbitrator-only final resolution with re-dispute prevention
attest()— issuer/counterparty outcome attestationis_overdue()— helper for checking commitment deadline
create_commitment(),get_commitment()core lifecycle- Soroban persistent storage with TTL management