v4.3.4
Changes since v4.2.1.
Performance
- Faster page reload (F5) — Startup no longer blocks on full lorebook registry scans, duplicate chat-bootstrap work, or Campaign Records rendering while the Lorebook Agent panel is closed.
- Faster Campaign Records — Routine manifest refreshes skip disk/registry rescans; manual ↻ refresh still does a full scan to discover new books. Lorebooks load in parallel; NPC inline editors build lazily on expand.
disableManagedEntriesoptimized — Uses saved campaign book lists where possible, avoids redundant API probes, and runs deferred in the background.
Lorebook Agent
- Last Run / Next run status — Footer shows when the agent last ran (relative time) and countdown to the next auto-run.
- Since-last-run watermark fixes — Watermark persists per chat, handles swipes/stale indices, restores correctly on undo/redo, and resets auto-run throttle after manual passes.
- [CORE] prompt tightening — Agent instructions now discourage plot-tied scene recaps in permanent NPC identity blocks.
- World Skeleton isolation — Skeleton books are excluded from agent archive, tools, activation, and Campaign Records manifest.
- Activate Books — Refreshes Campaign Records after activation so new books appear without F5.
World Progression
- Timer persistence overhaul — WP “last fired” state saves to chat-linked state, survives reloads, and no longer bleeds between chats.
- Time math refactor — Label-based timer anchor, fixed epoch handling, conditional narrative injection.
- UI fixes — “Next fire” display derives from the stored label; fallback parses current memo time when last fired is “Never”.
- Reset Timeline — New button in the Lorebook Agent panel and Extension Settings to reset WP timer state for the current chat.
NPCs & Portraits
- Show NPC Portraits toggle — When off, NPCs use the compact list view (like Events/Locations), NPC portrait auto-generation is disabled, and Add NPC to Story remains available.
- Compact NPC view — CORE address-card button (left of name), relationship stats (🤝/💗) when Relationship System is enabled, live rel-stat updates without full manifest reload.
- NPC detail popup — Removed “(Immutable)” from Core Identity section header.
Quests
- LogQuest removed — Plain-text
[QUESTS]blocks are now the only quest path; Standard/Tool quest mode dropped. - Quest state on rollback & chat switch — Clears per-chat quest bleed;
settings.questsresyncs from memo on restore; memo is authoritative over stale completed entries in the UI.
Combat & Connection Manager
- Combat auto-switch — When
[COMBAT]is active in the State Tracker memo, switches the main narration Connection Manager profile via/profile; restores baseline when combat ends. - Combat completion preset override — Combat auto-switch can restore a separate chat completion preset alongside the connection profile.
State Tracker & Onboarding
- Character creator XP fix —
[XP]block is always included with level-specific thresholds; onboarding level dropdown value is forwarded correctly for all archetypes (including Custom and Persona). - Onboarding prompt hints — Opening/closing tags enforced in hints to reduce unclosed block output from the model.
- Renamed setting — “Enable RPG Tracker” → “Enable State Tracker” in settings and tooltips.
Fixes
- Fixed
saveSettingsreference error in narrative-hooks.js. - Fixed manifest refresh scoping issues when toggling NPC portrait mode.
- Fixed settings toggle not reloading Campaign Records immediately (manifest refresh wiring).
Upgrade notes
- If you use World Progression, timer state is now per-chat — switching chats should no longer carry “last fired” between scenarios. Use Reset Timeline if a chat’s WP clock looks wrong after upgrading.
- If you relied on LogQuest / tool-based quests, migrate to plain-text
[QUESTS]output in your narrator prompt. - After upgrading, a normal F5 should feel noticeably snappier; open the Lorebook Agent panel when you want Campaign Records to load.
Full commit range: 4.2.1 → 4.3.4 (20 commits)