docs: dev/v0.2.0/STATUS.md as session-continuation context
Single source of truth for the v0.2.0 iteration: - what shipped per rc (rc.1/rc.2/rc.3), with links to PRs/commits - live DB snapshot from 2026-05-27 ~15:30 - 7 known issues / followups ranked by impact (rc.4 candidates) - quick-start checklist for the next session Also: - docs/v0.2.0-self-learning.md: phase checklist updated to reflect shipped state and points at dev/v0.2.0/STATUS.md for live data - README status bullet refreshed with rc.1/2/3 summary Folder convention: dev/v<version>/ for per-version development notes. Anything still in flight or candidate for the next iteration lives here; design docs that pre-date the iteration stay in docs/. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -153,37 +153,74 @@ This is the loop that closes "I died yesterday in this exact spot
|
||||
attacking a creeper with fists" → "tonight I avoid attack and dig
|
||||
shelter instead".
|
||||
|
||||
## Phases — what ships in which rc
|
||||
## Phases — what shipped
|
||||
|
||||
### v0.2.0-rc.1 (this branch)
|
||||
> Live status, observed metrics, and rc.4 followups: [`dev/v0.2.0/STATUS.md`](../dev/v0.2.0/STATUS.md).
|
||||
|
||||
### v0.2.0-rc.1 — substrate (merged 2026-05-27)
|
||||
|
||||
- [x] WIP baseline commit (pathfinder/reflex/metrics fixes).
|
||||
- [ ] This design doc.
|
||||
- [ ] `better-sqlite3` dep + `runtime/knowledge/{store,schema,seed,index,lessons}.js`.
|
||||
- [ ] Seed knowledge DB from `docs/minecraft-recipes.json` + the
|
||||
mob/biome/food/recipe tables in `docs/minecraft-knowledge.md`.
|
||||
- [ ] `runtime/coach/postmortem.js` — death event capture, deaths table,
|
||||
Pi-extracted lessons (initial version uses async one-shot, no batch).
|
||||
- [ ] `runtime/persona/chatter.js` — narration on death/respawn,
|
||||
gather-start, threat-spotted (templates only, no Pi yet).
|
||||
- [ ] Wire-in: `bot.js` calls `coach.attach(bot)` and
|
||||
`persona.attach(bot)` once on connect.
|
||||
- [ ] Tests for store, lessons, postmortem context capture, persona
|
||||
cooldowns.
|
||||
- [x] This design doc.
|
||||
- [x] `better-sqlite3` dep + `runtime/knowledge/{store,schema,seed,index,lessons}.js`.
|
||||
- [x] Seed knowledge DB from `docs/minecraft-recipes.json` + inline
|
||||
starter tables: 38 recipes, 15 mobs, 30 blocks, 12 starter lessons.
|
||||
- [x] `runtime/coach/postmortem.js` — death event capture, deaths table,
|
||||
Pi-extracted lessons (5 min drain, ≤3 Pi calls/h, 12 min cooldown).
|
||||
- [x] `runtime/persona/chatter.js` — narration on death/respawn, gather
|
||||
start, threat spotted, dusk/dawn, milestone done (templates).
|
||||
- [x] Wire-in: `bot.js` calls `coach.attach`, `reflect.attach`,
|
||||
`persona.attach` once on connect.
|
||||
- [x] Retrieval-augmented dispatch via `runtime/coach/advice.js` —
|
||||
`consult()` before curriculum + defend reflexes. SAFE_OVERRIDES
|
||||
whitelist guards what skills lessons may dispatch into.
|
||||
- [x] Auto-patch loop switched to PR-on-merge instead of direct
|
||||
cherry-pick. Branch protection on `main`: 1 required approver.
|
||||
- [x] Tests for store, lessons, postmortem context, advice
|
||||
consultation, persona cooldowns.
|
||||
|
||||
### v0.2.0-rc.2
|
||||
### v0.2.0-rc.2 — P0 hardening (merged 2026-05-27)
|
||||
|
||||
- [ ] Wiki crawler with cache + parser.
|
||||
- [ ] Retrieval-augmented dispatch (curriculum + dispatch hooks).
|
||||
- [ ] `runtime/persona/look.js` — head movement.
|
||||
- [ ] `runtime/coach/index.js` — periodic batched Pi pass.
|
||||
- [x] `PEPA_HEADLESS=1` guard in `extensions/mineflayer-bridge.ts` so
|
||||
`pi -p` subprocesses don't open a second MC connection.
|
||||
- [x] Test state isolation — `runtime/config.js` redirects `stateDir`
|
||||
to `/tmp/pepa-test-state-<pid>/` under node test runner.
|
||||
- [x] `defendReflex` outcome bug — `reportAdviceOutcome` now fires
|
||||
AFTER the flee skill returns, not before.
|
||||
- [x] Mode-name → skill-id translation (`night_shelter` →
|
||||
`survive.sleep`, etc.) in `coach/advice.js`.
|
||||
- [x] **Self-reflection loop** (`runtime/coach/reflect.js`) — every
|
||||
30 min Pi gets asked *"are you in a loop?"*. Verdict + summary
|
||||
+ new lessons. Reflection written to
|
||||
`state/<host>/reflections/<ts>.md`.
|
||||
|
||||
### v0.2.0 (final)
|
||||
### v0.2.0-rc.3 — escape mechanics (merged 2026-05-27)
|
||||
|
||||
- [ ] Tune rate limits + thresholds with real data from the prior weeks.
|
||||
- [ ] Cross-server lesson abstraction (raw → committed `skills/<name>.md`
|
||||
when applied repeatedly across situations).
|
||||
- [ ] Roadmap update.
|
||||
- [x] `survive.pillar-up` — vertical pit escape, NO pickaxe required.
|
||||
- [x] Wedged-emergency reflex — auto-fires pillar-up after 60s of no
|
||||
horizontal progress + no hostile + placeable block.
|
||||
- [x] `consult()` runs on curriculum's wander/explore.far fallback
|
||||
path (closes the gap where Pi-coach lessons fired but were
|
||||
ignored by the dispatcher's fallback).
|
||||
- [x] `recordPOI(kind:"danger")` on every death — spatial memory.
|
||||
- [x] `SAFE_OVERRIDES` extended with `survive.pillar-up`,
|
||||
`village.choose-base`.
|
||||
|
||||
### rc.4 candidates — see [`dev/v0.2.0/STATUS.md §"Known issues"`](../dev/v0.2.0/STATUS.md)
|
||||
|
||||
1. Fix hallucinated `prefer_skill` from Pi (e.g. `choose.safe.surface`).
|
||||
2. Tool-progression auto-craft: `gather.stone → missing_tool →
|
||||
craft.wooden-pickaxe`.
|
||||
3. `village.choose-base` ranking should penalise nearby danger POI.
|
||||
4. Pillar-up perimeter sense — abort if ceiling above.
|
||||
5. Persist persona cooldowns across restarts.
|
||||
6. Populate `chat_log` table on every chat in/out.
|
||||
|
||||
### Wiki crawler — pushed to v0.2.1
|
||||
|
||||
`runtime/knowledge/wiki.js` still planned but isn't on the critical
|
||||
path while the seeded intel + Pi-extracted lessons are sufficient.
|
||||
Will land when the bot has stabilised enough that "learning new things
|
||||
from the wiki" beats "applying things it already learned".
|
||||
|
||||
## Out of scope for v0.2.0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user