Untch
public · no login

Changelog

What has actually shipped. Every date comes from a commit or an on-chain transaction, and every entry states whether the capability is live or still in beta. Where there is evidence you can check without trusting us, the link goes to the chain.

Production maturity

Untch has completed an externally funded Consumer Intent in production. The user funding wallet and Untch provider-settlement treasury are separate, while policy, payment, delivery verification and accounting remain bound to one intent. Providers are currently settled from Untch's pre-funded operational treasury. The externally funded intent flow is implemented and undergoing final production proof.

Receipts currently include durable Untch records and X Layer testnet anchors. Mainnet receipt anchoring is pending writer activation through the contract's three-day timelock.

  1. BETA

    Externally funded Consumer Intent in production

    A wallet that is not any Untch treasury funded a Consumer Intent with real USDT0 on X Layer. Untch then paid StableDomains in USDC on Base from its own settlement float, verified the result through public RDAP, and reconciled both rails to zero under one intent.

    Why it matters: Until now Untch was both funder and settler, so the only novel leg exercised was the outbound merchant payment. This proves the two parties are genuinely separate while policy, payment, delivery verification and accounting stay bound to a single intent. Providers are still settled from Untch's pre-funded operational treasury.

    external funding transaction on X Layer
  2. LIVE

    Mandatory ownership authentication

    Reading a tenant's consumer intents now requires a SIWE signature over a server-issued, single-use, expiring nonce, verified against the policy's on-chain owner. The legacy path of passing a policy id as a query parameter is refused outright.

    Why it matters: A policy id is public on-chain data. Deriving a tenant from it was namespacing, not authorisation: anyone who read one off the explorer could see that tenant's amounts, provider and decisions. Fourteen attacks were run against live production with real signatures, and all fourteen were refused, including a cryptographically valid signature from a wallet that does not own the policy.

    catalog reports auth.required
  3. LIVE

    Public receipts

    Every completed consumer action has a receipt anyone can open with no account, showing what was paid, to whom, on which chain, what was delivered and what Untch independently verified.

    Why it matters: A receipt only the buyer can read is not a receipt. The public view is built by naming the fields that may be published rather than by removing fields from the private one, so a field added later cannot silently become public. The request payload, correlation id and approval channel are all withheld.

    open a real receipt
  4. BETA

    Production worker executed a governed purchase end to end

    The deployed worker picked an approved intent off the queue, paid StableDomains 0.050000 USDC on Base, verified the result, booked the ledger and wrote a receipt, with no local driver involved.

    Why it matters: The first settlement was driven by a script on a laptop. This one proves the deployed system does it by itself, which is the only version that matters.

    Base settlement transaction
  5. LIVE

    Independent delivery verification via RDAP

    Domain results are checked against public RDAP, the registry itself, rather than against the merchant's own response.

    Why it matters: A merchant confirming its own delivery is not verification. The receipt reports the merchant's claim and Untch's independent check as two separate fields and never merges them.

  6. BETA

    First real provider settlement

    Untch paid a real merchant on the merchant's own rail, USDC on Base, from a capped, single-use EIP-3009 authorisation, for an action a deterministic policy had approved.

    Why it matters: Everything before this was a decision about money. This was money.

    Base settlement transaction
  7. BETA

    Consumer Pack

    An agent proposes a real-world action. Untch decides whether it is authorised, funds it for the exact approved amount, pays the merchant on the merchant's rail, verifies delivery and produces one receipt spanning both payments.

    Why it matters: The purchase value is separate from the call fee, an ambiguous outcome goes to a human rather than a retry, and what the merchant says is never presented as what Untch proved. Untch has completed an externally funded Consumer Intent in production. The user funding wallet and Untch provider-settlement treasury are separate, while policy, payment, delivery verification and accounting remain bound to one intent. Providers are currently settled from Untch's pre-funded operational treasury.

    live capability matrix
  8. LIVE

    OKX.AI listing — ASP #6086

    Untch listed as an Agent Service Provider on OKX.AI, with ERC-8004 agent #6047 and seven priced x402 services.

    Why it matters: Agents can discover and pay for the authority layer without a bespoke integration.

    ERC-8004 registration card
  9. LIVE

    Mainnet contracts on X Layer

    PolicyRegistry, SpendIntentRegistry, UntchReceipts and VaultFactory deployed to X Layer mainnet with separated role keys.

    Why it matters: None of them holds funds. There is no payable, receive or fallback, so the registry layer cannot become a honeypot.

    UntchReceipts on OKLink
  10. LIVE

    Trust Bureau

    Receipt-backed vendor and buyer scores with a lower-confidence bound, so a vendor with two good receipts does not outrank one with two hundred.

    Why it matters: Reputation built from receipts you can check, rather than from self-reported stars.

  11. LIVE

    Escalation across four channels

    Human approval over Telegram, Discord, Slack and the operator dashboard, with dual-channel enforcement and a single authority boundary.

    Why it matters: When policy says a human must decide, the human must be reachable where they already are, and no channel may become a way around the boundary.

  12. BETA

    Receipts anchored on chain

    Durable Postgres receipts, batched and anchored to the UntchReceipts contract with retry, reorg re-verification and honest degradation.

    Why it matters: The ledger is authoritative. Anchoring is publication. When anchoring fails the receipt says so rather than implying an anchor that does not exist. Receipts currently include durable Untch records and X Layer testnet anchors. Mainnet receipt anchoring is pending writer activation through the contract's three-day timelock.

  13. LIVE

    Deterministic policy engine

    Fourteen rules over a bounded SpendIntent, evaluated in a fixed order: budget, per-call cap, category, recipient, agent, duplicate, cooldown, rate limit and expiry.

    Why it matters: No LLM call appears anywhere on the money decision path. The engine is a pure function of the intent, the policy and the ledger window, so the same inputs always produce the same decision and the decision can be re-derived by anyone.

  14. LIVE

    Exact approvals and mutation rejection

    An approval binds to a hash of the canonical quote, not to a description of it.

    Why it matters: Change the amount, recipient, item or deadline and the hash changes, so the approval stops applying and execution refuses. There is no path where a human approves $5 and $500 leaves.

What is deliberately not here

Domain registration, shopping, gift ordering, travel booking, notification sending, Solana settlement and Tempo settlement are implemented and gated, and every one of them refuses with a named reason. They are not listed above because they have not shipped. The live capability matrix at /consumer/catalog reports each provider’s real maturity, so any claim here can be checked against the machine rather than against this page. The full production-proof page lives at docs.untch.xyz/consumer-pack-proof.