Session handoff — state of the build (2026-09-16, pre-compaction)

Read this first after context loss. Everything below is verified unless marked otherwise. Decision log: DECISIONS.md (D001–D042). Architecture: docs/multiuser.md, PLAN.md.

Live right now

Surface Where Status
Site + docs + favicon https://aquila.exaflair.com (Vercel, CI from main) ✅ 200
Relay VPS root@139.84.174.202 (fresh, dedicated) — Caddy + wildcard on-demand TLS ✅ installed (deploy/relay/install-relay.sh)
Reverse tunnel dev machine → relay: deploy/relay/tunnel.sh (uses exaflair key, IdentitiesOnly) ✅ relay→manager 200
POC stack this machine: manager (healthy), gateway (LiteLLM), gateway-admin, telegram (poll, @AquilaAssistantBot), searxng, bot aquila-bot-day1check (~30MB)
Inference OpenCode Zen primary (deepseek-v4.1-flash, x-opencode-session headers) → OpenRouter free fallback; per-bot keys + ₹ budgets + spend log ✅ live-verified
Wildcard DNS *.aquila still points at the OLD relay (139.84.146.236) Bhavya: change A record to 139.84.174.202

After the DNS change: first visit to https://<digits>.aquila.exaflair.com issues the cert on demand (Caddy → manager /internal/tls-ask allowlist → Let's Encrypt HTTP-01). Verify with: curl -sI https://919876543210.aquila.exaflair.com/ then the welcome page.

Credentials (locations only; values in gitignored .env)

Verified checkpoints

Next actions (in order)

  1. Bhavya: Hostinger → *.aquila A record → 139.84.174.202. Then the live link works.
  2. Verify cert + welcome + full OTP flow from a phone; report the live link.
  3. Bhavya: authorize this machine's id_ed25519_exaflair.pub key on node-b2 (cnsku-18@100.113.233.14) → migrate stack + tunnel there as systemd units (D042); it becomes the always-on host. Then retire the dev-machine tunnel.
  4. Day 3: density test (≥10 bots on an 8GB slice) + docs/economics.md (₹/bot verdict at ₹250).
  5. Day 4: demo script + recording (docs/demo-script.md), K8s mapping handoff for Rohan.
  6. Post-POC: WhatsApp official notification-only; UPI billing; deepseek direct paid for production.

Operational notes / lessons