Files
History/CHANGELOG.md
T
2026-10-11 15:32:51 +00:00

3.1 KiB

Changelog

All notable changes to History are listed here, newest first.

v0.3.0 — 2026-10-11 15:29

  • Deep-linking — the active game's id now lives in the URL (#/game/<id>), so a link opens that exact game and two tabs can run two different games; a bad or missing id falls back to the home screen. Fixes #3.

v0.2.0 — 2026-10-11 14:24

  • Batched round model — replaced the single-action/turn with a queued-round model. Actions and diplomatic messages accumulate in game.pending (no LLM call, no turn advance); a single "Jump forward" button commits the whole batch in one LLM turn. This fixes the 502 reliability problem by making each LLM call do one coherent batch of work instead of one tiny fragment.
  • New routes — POST /api/games/:id/action and POST /api/games/:id/diplomacy (fast, no LLM); POST /api/games/:id/jump (the single LLM call); POST /api/games/:id/turn removed.
  • New client API functions — api.addAction(id, text), api.addDiplomacy(id, to, message), api.jump(id); api.turn(...) removed.
  • ActionPanel rewrite — Action tab: textarea + small "Add action" button. Diplomacy tab: target select + textarea + small "Add to round" button. Advisor tab: input + "Ask advisor" button. Below the tabs: a visible pending-queue list (⚡ for action, 💬 for diplomacy with target name, truncated text, count badge) and a large "Jump forward" primary button that shows the pending count and disables while a jump is in flight.
  • App.tsx — runAddAction / runAddDiplomacy handlers (no busy state); runJump (with busy); the "Your move" window's title bar now shows a pending-count badge chip instead of the old jump button.
  • Deterministic stub updated — deterministicTurn now emits one event per queued item (action → military/success, diplomacy → diplomatic/partial) instead of one event per turn; still sets player military to clamp(cur+5) and allies with the first other nation.
  • Unit tests — rewrote engine.test.ts with batch-aware tests (7 new tests, 35 total up from 28); updated db.test.ts and map.test.ts fixtures to include pending: [].
  • E2E — rewrote e2e/sim.spec.ts to the new flow: queue action → assert pending list → queue diplomacy → assert pending list → jump → assert turn+1, date+2, military 80→85, two events, pending cleared, ally relation.
  • AGENTS.md — added Gitea-issue step to the change process; updated Layout and Conventions to reflect the batched-round model.

v0.1.0 — 2026-10-11 08:02

  • Added a Gitea Actions CI pipeline (.gitea/workflows/ci.yml: typecheck → lint → unit → build → deterministic Playwright e2e). E2e runs against the app's own dev webServer (LLM_STUB=1) — no dind/docker.
  • Committed package-lock.json so CI uses a reproducible npm ci.
  • Switched to the mandatory PR-based workflow: feature branch → PR to master → CI green → auto-merge → tag + manual deploy (documented in AGENTS.md).
  • Versioned the repo at 0.1.0 (package.json) and added CHANGELOG.md, .env (gitignored) and .env.example.
  • This change is the first one landed through the new PR process (dogfooding it).