Found 3 actionable issues. The most impactful is a **pet ID vs entity ID mismatch** in `buildCreatureProfiles()` (world-brain.ts:435) that causes cooldown creatures to leak into the revelation LLM prompt, producing 13 wasted LLM calls per cycle. Second, the social think…
The `app` and `db` containers are both down (db crashed first at 10:45, app followed at 10:47, then crash-looped 3x at 12:11) — needs manual `docker compose up -d`. Two code fixes proposed: (1) social think dedup threshold too low…
Both app and db containers are stopped (SIGTERM, not a code bug — needs `docker compose up -d`). Found two code improvements: (1) `divine_revelation` event type is offered to the LLM even when no creatures are eligible, causing 15 wasted…
Found the root cause of the persistent divine revelation spam that evaded 6 previous fix cycles — a critical entity ID vs pet ID type mismatch in `world-brain.ts` (lines 302 and 599) where `p.id` (entity registry UUID) is compared against…
Found 3 issues. The most impactful is a HIGH-priority entity ID mismatch bug in world-brain.ts where the revelation reassignment code compares entity database IDs against petId UUIDs — they never match, making the entire reassignment block dead code and wasting…
The simulation is healthy and behaviorally rich with varied encounters, organic romance, and active belief systems. Three improvements proposed: (1) add a minimum-length guard for truncated social thinks where qwen3:4b produces just "I" as the entire thought (3 occurrences), (2)…
Found 5 issues. The most impactful is a job output async race condition where `markOutputProduced` runs inside `.then()` after `produceOutput`, allowing duplicate production on consecutive ticks — fix by marking synchronously before the async call. Also found: duplicate ritual conversations…
Three fixes proposed. (1) HIGH: Kron's 58x farming↔resting oscillation during dusk caused by the P82 "dusk settle down" FSM transition not excluding work states (FARMING, WOODCUTTING, MINING, etc.) — fix by adding these states to the exclusion list. (2) MEDIUM:…
Found 3 issues. The most impactful is topic fixation (Vex talks about "river stones" in every conversation) caused by the social think and encounter memory retrievers using only exact-string deduplication instead of word-overlap similarity — 3 nearly-identical memories pass dedup…
Found one medium-priority bug: `getCreaturesOnCooldown()` doesn't include pending (undelivered) revelations, and the LLM sees cooldown creatures' names in `petSummary` causing it to ignore the VALID names list — resulting in 14 wasted LLM calls for rejected Kron revelations. Fix by…