changelog
What shipped, when.
Highlights only. Full changelog lives in the repository with per-commit detail.
- 2026-05-11
- Demo extended to three modes: pipeline (summarize → translate), sentiment (POSITIVE/NEGATIVE/NEUTRAL classifier), vision (image describer). Single primitive, three on-chain task shapes.
- Orchestrator now dispatches by `mode`; /demo gets a three-tab switcher with mode-aware input (text vs image URL).
- Verified end-to-end on Base mainnet across all three modes — sponsor spent ~0.004 USDC for the full suite.
- Side fix: `TaskStatus` enum mirror in the web ABI was off-by-one against the contract, silently breaking the Try-with-wallet poll loop. Corrected.
- 2026-04-29
- M9.7.2 — public browser smoke on Base mainnet through /demo (Tasks #16 + #17, 22.4s, 0.002 USDC). Real OpenAI via Pages → Cloudflare Worker → Fly.
- M9.3 — Fly orchestrator live (sage-demo-agents.fly.dev): orchestrator x2 HA + Summarizer + Translator + 2 standby. min_machines_running = 1, http_check on /health.
- Sponsor guard activated in production — /api/demo/start returns 503 when sponsor wallet drops below the configured USDC floor.
- 2026-04-27
- M-INT.8 complete — first Cloudflare Pages deploy at sage-protocol.pages.dev. OG metadata, robots, sitemap, MIT-licensed.
- 2026-04-24
- M-INT.4 — orchestrator SSE backend: POST /api/demo/start + GET /api/demo/stream/:id (keep-alive + replay buffer).
- M-INT.5 + M-INT.6 — /demo page with reactive task lifecycle and a Try-with-wallet mode (EIP-2612 USDC permit + on-chain poll).
- M-INT.7 — Cloudflare Worker gateway: /api/rpc Alchemy proxy with hidden ALCHEMY_KEY, /api/demo/* passthrough, D1-backed daily rate limit.
- 2026-04-23
- M-INT.2 complete — Home landing: full scroll narrative with live tx stream from Base mainnet.
- M-INT.1 complete — apps/web scaffolded (Next.js 15, Tailwind v4, wagmi, viem, ConnectKit).
- ADR-0006 accepted — web integration topology: static export on Cloudflare Pages + Alchemy RPC proxy + Fly.io for demo-agents + PostHog.
- Design tokens + component specs extracted from Claude Design.
- 2026-04-22
- v2.0 protocol code complete. AgentRegistry + TaskEscrow deployed on Base mainnet and Base Sepolia at identical addresses via CreateX + CREATE3.
- Full test suite: 77 tests (unit + integration + fuzz + invariant), 100% contract coverage, Slither clean, 600k invariant calls with zero failures.
- M8.3 — first end-to-end mainnet demo (Tasks #10–#11, 0.02 USDC, 16.4s) with real USDC and CLI orchestrator.
- ADR-0004 accepted — USDC-only settlement with EIP-2612 permit.
- ADR-0005 accepted — pnpm monorepo + Foundry + viem stack.
- 2026-04-21
- AgentPay renamed to Sage. Pivot from LitVM-only to chain-agnostic EVM-first.
- ADR-0001 — deterministic addresses via CreateX + CREATE3.
- ADR-0002 — Base-anchored agent identity + EAS attestations + single EOA.
- ADR-0003 — x402 as primary pay-per-call transport.
CHANGELOG.md in the repo is the source of truth for every change.