JefferyAkorful.sol

Work / symbolon

Symbolon

Vendors sign invoices; a Vault pays only when invoice, order and delivery match.

  • Arc testnet
  • AI agents
  • Payments
  • Solidity
  • TypeScript

Arc testnet, under active development. Not audited.

// proof

Tests

$ forge test
tests
175
fuzz tests
7
invariants
6

Stateful invariant runs: 128 × depth 64, through VaultHandler.

  • invariant_creditedNeverExceedsTotal
  • invariant_vendorReceivedExactlyWhatWasPaid
  • invariant_vaultBalanceConserved
  • invariant_creditedMatchesLedger
  • invariant_noLingeringAllowance
  • invariant_paidNeverExceedsCredited

Deployed

Arc testnet No mainnet deployment.

Counted from symbolon@98be17a on 2026-10-05. Addresses from contracts/deployments/5042002.json, each checked onchain; explorer verification checked 2026-10-05.

# symbolon// the record

A two-sided payables network on Arc. Vendors sign invoices with an EIP‑712 Seal; each business pays from its own Vault, which pays a sealed invoice only when the invoice, the order, delivery and the owner's policy all match. A Steward agent handles timing and treasury moves, inside limits the Vault enforces.

  1. 01

    No funds move on model output: the agent drafts and explains, deterministic code and the Vault decide.

  2. 02

    Pay once: the ledger keys every invoice by its EIP‑712 fingerprint and never credits it past its total.

  3. 03

    New payout addresses need the vendor's signature, the owner's confirmation and a cooldown.

  4. 04

    UUPS Vaults, upgraded only by their owner after a delay. Solidity and Foundry.

// what the contract refuses
  • PayoutMismatch(address expected, uint32 expectedDomain)The invoice's payout address is not the signed and confirmed one on record for the payee.SymbolonVault.sol:550