From 56fb6d9a85a80473cd3f3557d15b077e1c30e430 Mon Sep 17 00:00:00 2001 From: serversdown Date: Sun, 5 Jul 2026 03:30:10 +0000 Subject: [PATCH] =?UTF-8?q?docs:=20roadmap=20=E2=80=94=20mark=20monolith?= =?UTF-8?q?=20deleted,=20classifier=20hardened,=20Phase=20C=20flip-ready?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- docs/ROADMAP.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md index 480c9da..637bc54 100644 --- a/docs/ROADMAP.md +++ b/docs/ROADMAP.md @@ -27,14 +27,17 @@ Spec: `docs/superpowers/specs/2026-07-01-poker-prompts-design.md` `classify(msg, roster_handles)` (READ|HAND|TABLE|MENTAL|STATUS|LOG|CHAT), lean always-on `BASE`, per-type `FRAGMENTS`. Wired into `build_messages`; the ~100-line `_CASH_CARD` monolith is sharded out (`CASH.card=""`). -- ⬜ **Delete the dead `_CASH_CARD`** in `modes.py` once the fragments are proven - in a live session (kept now only as the distillation source). -- ⬜ **Classifier hardening.** It's a heuristic — will miss weird phrasings. - `classify()` is the swappable seam; upgrade to an LLM / fine-tuned-MI50 classifier - IF real-session misses justify it. Tune against actual transcripts first. -- ⏸ **Phase C — MI50 tool-calling.** Flip `TOOL_BACKENDS` to include `mi50`. - Blocked on the MI50 llama.cpp server running with `--jinja` + a tool-capable - model loaded. +- ✅ **Deleted the dead `_CASH_CARD`** monolith (modes.py 256→161 lines). +- ✅ **Classifier hardening (round 1).** Fixed 6 real gaps found by probing + live-style phrasings (-ing action forms, "the whale" bare descriptor, player + departures→TABLE, "stack" leaking questions into LOG, thin MENTAL lexicon). 18 + unit tests. Still a heuristic + swappable seam — upgrade to an LLM/MI50 + classifier only if live misses justify it; keep tuning against real transcripts. +- 🔨 **Phase C — MI50 tool-calling (code done, flip pending).** Enabling it is now + a config toggle: `cfg.tool_backends` (env `TOOL_BACKENDS`, default "cloud"). To + turn on: MI50 llama.cpp up with `--jinja` + a tool-capable model, then set + `TOOL_BACKENDS="cloud,mi50"`. NOT flipped — MI50 is currently offline, `--jinja` + unconfirmed. No code change needed when ready. ## Persona (the "person" layer)