kamilkrzywda
6c52e10898
Bump to v0.22.0 (no man's land, #16 P3) + AGENTS.md/CHANGELOG
CI / build + unit + e2e (pull_request) Successful in 1m33s
2026-10-14 12:04:03 +00:00
kamilkrzywda
0b999f1448
Bump to v0.21.0 (region transfers + getNeighbours tool, #16 P2)
CI / build + unit + e2e (pull_request) Successful in 1m34s
2026-10-14 10:48:28 +00:00
kamilkrzywda
f53f9072f4
Build region-adjacency manifest (Stage 1 of #16 P2)
...
Generate public/region-adjacency.json: regionKey -> neighbourKeys, built
from regions.geo.json (bbox proximity reject + @turf/boolean-intersects
arbitration; symmetric, deduped, no self-refs). Deterministic + idempotent.
This is the data backing the LLM's getNeighbours tool (Stage 2) which lets
it move contiguous frontier regions instead of whole countries.
2026-10-14 10:05:06 +00:00
kamilkrzywda
6949739956
Bump to v0.20.0 (region loader prod-path fix)
CI / build + unit + e2e (pull_request) Successful in 1m31s
2026-10-14 09:32:29 +00:00
kamilkrzywda
b9ac79c57f
Bump to v0.19.0: region-level ownership (Part 1 of #16 )
...
CI / build + unit + e2e (pull_request) Successful in 1m36s
Version 0.19.0 + changelog. Breaking: pre-v0.19 saved games are dropped
(territory now holds region keys, not ISO_A3 codes) — deploy wipes the
history-data volume.
2026-10-14 09:15:33 +00:00
kamilkrzywda
2b84c34f41
Add region-key manifest (build:region-keys) + public/region-keys.json (v0.19 P1 of #16 )
...
Deterministic <name-slug>-<4char> key per sub-region: name via NFKD strip +
fold table (ə ø ð đ œ ł) + a-z0-9 collapse; 4-char from FNV-1a of the stable
feature id, salted on within-slug collision so all 1,796 keys are unique.
Builtins only (no @turf). Idempotent (byte-identical on re-run).
2026-10-14 08:32:36 +00:00
kamilkrzywda
3cd8dcecfa
Stop printing the static parent-country code in the region hover tooltip and dossier label (v0.18.0)
CI / build + unit + e2e (pull_request) Successful in 2m34s
2026-10-13 18:58:43 +00:00
kamilkrzywda
b1081eefde
Fill no-one's-land gaps between merged sub-regions (v0.17.0)
...
CI / build + unit + e2e (pull_request) Successful in 2m19s
Part of #16
2026-10-13 15:18:31 +00:00
kamilkrzywda
f1cc4fbc10
Smooth jagged sub-national region boundaries (v0.16.0)
...
CI / build + unit + e2e (pull_request) Successful in 2m18s
Part of #16
2026-10-13 09:42:44 +00:00
kamilkrzywda
8eedc37e05
Clean up holes/gaps in sub-national regions (v0.15.0)
...
CI / build + unit + e2e (pull_request) Successful in 2m15s
Part of #16
2026-10-12 13:51:47 +00:00
kamilkrzywda
7bf11fa5b9
Coarsen sub-national regions to ~100km floor (v0.14.0)
...
CI / build + unit + e2e (pull_request) Successful in 1m47s
Part of #16
2026-10-12 09:52:52 +00:00
kamilkrzywda
99188b5b15
Replace geometric sub-regions with real historical regions (v0.13.0)
...
CI / build + unit + e2e (pull_request) Successful in 2m34s
Part of #16
2026-10-12 08:33:07 +00:00
kamilkrzywda
06cdbf3d81
Switch map to sub-national regions (v0.12.0)
...
CI / build + unit + e2e (pull_request) Successful in 1m18s
Part of #16
2026-10-12 01:07:33 +00:00
kamilkrzywda
d5285ce28d
Add sub-national regional dataset + generator (v0.11.0)
...
CI / build + unit + e2e (pull_request) Successful in 1m21s
Fixes #16
2026-10-12 00:33:11 +00:00
kamilkrzywda
7d50cba061
Fix map coastal-water bleed-through and border lines (v0.10.0)
...
CI / build + unit + e2e (pull_request) Successful in 2m13s
Fixes #2
2026-10-11 21:26:25 +00:00
kamilkrzywda
e38cc5933f
Reduce turn latency: cap recent events (10→5) + concise-reasoning constraint (v0.9.0)
...
CI / build + unit + e2e (pull_request) Successful in 2m9s
Fixes #22
2026-10-11 20:59:18 +00:00
kamilkrzywda
17d6cecab9
feat: remove a saved game & redirect on missing/deleted game ( #20 )
...
CI / build + unit + e2e (pull_request) Successful in 1m14s
- DELETE /api/games/:id route + Db.delete() (404 when absent)
- PresetPicker: per-saved-game trash button + confirm dialog (Cancel/Delete)
- App: runDeleteGame; useSse onError -> goHome on 'deleted'/'not found'
(a deleted/missing game now returns the live tab and any deep link home)
- DeleteGameResponse in shared/protocol.ts; api.deleteGame()
- unit test (Db.delete) + 2 e2e tests (home-screen delete; in-flight delete
returns the active tab home and a fresh deep link lands on home)
- version 0.7.0 -> 0.8.0 + changelog
Fixes #20
2026-10-11 20:32:55 +00:00
kamilkrzywda
eadae4dc4f
map: click a region to switch the dossier to its owner; fix "no owner" (v0.7.0)
CI / build + unit + e2e (pull_request) Successful in 1m58s
2026-10-11 19:22:33 +00:00
kamilkrzywda
c19db2c118
advisor: show a "thinking" indicator during advisor fetches (v0.6.0)
CI / build + unit + e2e (pull_request) Successful in 1m33s
2026-10-11 18:32:09 +00:00
kamilkrzywda
6b167cb435
hud chrome: remove Map window, pin top bar, dockable left/right panels (v0.5.0)
CI / build + unit + e2e (pull_request) Successful in 2m18s
2026-10-11 17:40:01 +00:00
kamilkrzywda
ef27b59762
0.4.0 — fix queue-add race + per-item remove button ( #10 , #11 )
2026-10-11 16:09:29 +00:00
kamilkrzywda
f622cb676a
url deep-link: game id in #/game/<id>, multi-tab + bad-link fallback (v0.3.0)
CI / build + unit + e2e (pull_request) Successful in 1m52s
2026-10-11 15:32:51 +00:00
kamilkrzywda
9bce14254d
batched round: queue actions/diplomacy, jump forward commits one turn (v0.2.0)
CI / build + unit + e2e (pull_request) Successful in 1m51s
2026-10-11 14:36:35 +00:00
kamilkrzywda and OpenCode
e2936e85bb
History: AI-driven alternate-history simulator
...
Pax Historia-style sim where the LLM is the world engine.
- React 19 + Vite 6 + Tailwind v4 + shadcn/ui frontend
- Express single-port backend (/api + /sse + built client + SPA fallback)
- SQLite (better-sqlite3) persistence, one row per game
- MapLibre choropleth map (OpenFreeMap dark + ISO_A3 regions)
- Defensive turn loop: strip fences, balanced-{} extract, parse, clamp 0-100,
retry-once nudge, generic 'unclear' fallback; never crashes on bad output
- 5 seed presets (wwii-1939, coldwar-1955, modern-2025, no-wwii-1940, aegis-2400)
- LLM client over native fetch w/ injectable transport (mesh-bot pattern);
LLM_STUB=1 deterministic transport for tests/e2e
- Unit (vitest, 19) + deterministic Playwright e2e
- Multi-stage node:22-slim Docker + Traefik (history.dev.kkhost.pl:4321)
Co-Authored-By: OpenCode <opencode@users.noreply.github.com >
2026-10-10 21:20:23 +00:00