diff --git a/PRERELEASE.md b/PRERELEASE.md index 6c6365e..d0b81dc 100644 --- a/PRERELEASE.md +++ b/PRERELEASE.md @@ -503,3 +503,11 @@ Then Stage 18. - **Schema/wire change → a contour DB wipe** after merge (`DROP SCHEMA backend CASCADE` + restart, the R1/R3 pattern). Bake-back: `docs/ARCHITECTURE.md`, `docs/FUNCTIONAL.md` (+`_ru`), `docs/UI_DESIGN.md`, `backend/README.md`, Go Doc comments. + - **Post-review refinements (owner, same PR):** (1) the **GCG export labels the robot seat "AI"** rather + than its human-like pool name (`ExportGCG` overrides the name via `accounts.IsRobot`; the in-app 🤖 is + unchanged); (2) honest-AI games **emit no `your_turn`** — the robot replies instantly, so the signal + would arrive with the move and be pointless; `opponent_moved` still advances the UI; (3) the **admin + console surfaces the AI flag** — a **🤖 column** in `/games` and an "AI game" line on the game card + (`GameRow`/`GameDetailView` gain `VsAI`); (4) `games_started_total` / `games_abandoned_total` gain a + **`vs_ai`** attribute and the Grafana *Game domain* dashboard splits started/abandoned into **human** + and **AI** panels. diff --git a/backend/internal/adminconsole/templates/pages/game_detail.gohtml b/backend/internal/adminconsole/templates/pages/game_detail.gohtml index 068b1a6..08316b1 100644 --- a/backend/internal/adminconsole/templates/pages/game_detail.gohtml +++ b/backend/internal/adminconsole/templates/pages/game_detail.gohtml @@ -7,6 +7,7 @@
| Game | Variant | Status | Players | Updated | |
|---|---|---|---|---|---|
| Game | Variant | Status | 🤖 | Players | Updated |
| {{.ID}} | {{.Variant}} | {{.Status}} | {{.Players}} | {{.UpdatedAt}} | |
| no games | |||||
| {{.ID}} | {{.Variant}} | {{.Status}} | {{if .VsAI}}🤖{{end}} | {{.Players}} | {{.UpdatedAt}} |
| no games | |||||