Found 2 actionable issues in an otherwise healthy simulation. (1) Blog posts are duplicated 3-5x on WordPress because the posted-days tracking file is only saved after ALL journals complete β if the server restarts mid-batch, everything re-posts; fix by saving incrementally after each post. (2) Memory retrieval cross-contaminates similar creature names (Lyxar/Lyxara, Vex/Vexnix) because name partitioning uses substring matching instead of word-boundary matching; fix with a regex-based whole-word matcher.
β MEDIUM: Duplicate blog posts on server restart
Fix: Save the tracking file incrementally after each successful post, not just at the end. `world/src/server/blog-poster.ts`, lines 348-359 (postWorldRecap):
(code change) `world/src/server/blog-poster.ts`, lines 395-407 (postCharacterJournal):
(code change) And remove the now-redundant batch save atβ¦
β MEDIUM: Memory cross-contamination with similar creature names
Fix: Use word-boundary matching instead of substring matching. Create a helper function and use it in both locations. `world/src/server/pet-brain.ts`, add helper near the top (or in a utils file):
(code change) Then replace the 4 occurrences at `pet-brain.ts:4924`, `4927`, `4933`, `4934`:
(code change)β¦
β LOW: Missing day 17 in posted-days tracking
Fix applied via code changes.