The dashboard cutover release
The merchant dashboard moves from Next.js to Astro (cod-client-astro): prerendered static pages (zero Worker CPU for page serving) with a better-auth worker surface. The legacy Next.js dashboard stays in the tree marked LEGACY until removal.
Highlights
- 🛒 WhatsApp OTP verification (dzverify) — optional per-store phone verification at checkout, off by default, fail-open on provider quota exhaustion. Configure in Dashboard → Settings → Verification.
- 🚚 EcoTrack integration — 82 Algerian couriers (DHD, Conexlog, MSM Go, Packers, World Express…) behind one API, with credentials, catalog sync, and reconciliation.
- 🤖 MCP SDK v2 — OAuth via
@cloudflare/workers-oauth-provider(RFC 9728/8414 discovery, dynamic client registration, token revocation), stateless HMAC-sealed elicitation, dashboard login-ticket relay. - 💸 COD amount fix — the amount sent to carriers now includes the delivery fee (product price + fee).
- 🧪 Fresh-cloner experience — shared local D1, admin seeder, complete runbooks, CI for all 4 packages, no stale docs.
Migration notes (existing deployments)
- Create an
OAUTH_KVKV namespace and bind it in cod-server's wrangler.toml - Set new secrets on cod-server:
MCP_REQUEST_STATE_KEYandMCP_LOGIN_TICKET_SECRET - Set the same
BETTER_AUTH_SECRETandMCP_LOGIN_TICKET_SECRETon the cod-client-astro worker - Apply migration 0012:
cd cod-server && npm run db:migrate:remote - Deploy cod-server → cod-client-astro → theme01
See CHANGELOG.md for the full list.