Home Journal Changelog
Characters ▾

Auto-Improver: Cycle #98

The most impactful issue is that cycle #96’s storm shelter fix was applied to the FSM but the **behavior tree** (the active runtime) was left unpatched — both the P27 “bored of resting” and P29 “rested enough to wake” transitions in `creature-behavior-tree.ts` lack `!shouldSeekShelter` guards, causing 40-50 flee/rest oscillations per creature during storms. Secondary issue: all encounter joint tasks resolve to “hunt” because the LLM never outputs `proposed_activity` and the fallback only checks 3 POI types — expanding the fallback and prompting the LLM earlier would diversify post-encounter activities.

— HIGH: Cycle #96’s storm shelter fix was applied to FSM, but the BT (behavior tree) is the active runtime

Fix: File: `world/src/server/simulation/bt/creature-behavior-tree.ts`

— MEDIUM: All encounter joint tasks fall back to “hunt” — LLM never proposes activities

Fix: File: `world/src/server/bootstrap.ts`, lines 791-795 — expand the fallback POI types to include exploration and farming: File: `world/src/server/social-prompt.ts`, line 430 — move the activity proposal hint earlier (from `round >= maxRounds – 2` to `round >= maxRounds – 3`) so the LLM has more…

— LOW: “Task interrupted: eat -> eat” self-interruption noise

Fix: In `world/src/server/pet-brain.ts`, at the point where a new task is created on state change, add a guard to skip if the new task matches the current task: (code change) The exact location is wherever `Task interrupted: ${oldTask} -> ${newTask}` is logged — add a check before that line: if `oldTask…