v0.22.0: lifecycle nudge engine, audit resilience, profile badge
What's New
Lifecycle Nudge Engine
Priority-based state machine replaces static message rotation. Nudge order: open TODOs > stale facts > pending facts > unreflected logs > context-specific fallback. Intervals: prompt/tool every 5, stop every 8.
Three New Hooks
- Stop: Turn counter per session with periodic micro-nudges (interval 8) to capture decisions or mark TODOs done.
- SessionEnd: Finalizes session stats with accurate end timestamp. Silent (no stdout).
- TaskCompleted: Auto-logs DONE entry to daily log when a task is marked complete.
PreCompact TODO Discipline
Speculative TODO detection demotes LLM narration to FACT, caps at 2 user-requested TODOs per compaction, auto-closes resolved TODOs via completed_todos field with match validation.
Ghost Session Filter
Excludes IDE restart artifacts (0 prompts, 0 tools, <5s) from all session metrics.
Dashboard
- Profile badge in nav bar shows active profile name
- Tool trend arrows, pulse component breakdown, sparkline tooltips, session depth labels
Demo Asset Pipeline
just demo-gif and just demo-screenshots recipes. VHS tape with 10-command walkthrough. Prompt template seeding.
Fixes
- Audit model resilience:
VaultPerspective,CleanerPerspective,StrategistPerspectivedefaultissuesto[]. Prevents Pydantic crash when LLM omits the field. - Stats error visibility: Silent
except Exception: passreplaced with stderr logging for Session Quality and Session Metrics. - Todo watch hint spam:
show_hint()suppressed in--watchmode. - Test isolation:
hive_envfixture clearsHIVE_SESSION_LAUNCHEDenv var for sessions launched viahive go. - E2E output verification: Skips stale LLM error artifacts instead of failing.
Developer
- Python minimum bumped to 3.13
hentrypoint (shortest possible alias)- README restructured with feature table and lifecycle diagram
- 1774 tests, <35s