ea9430d8a7
Brain-retro #5 surfaced a correlation: long sessions (≥50 turns) correlate with discipline drift. Reviewer pass showed regulated rate dropped 19% → 4.5% during a long session. This commit adds: • computeSessionLengthBlock(episodes, opts?) — pure function that groups today's (UTC) episodes by task_id, finds the MAX session_turn per session, and surfaces sessions with ≥threshold turns (default 50) in a markdown block. • Wire-up in renderStatus + main CLI: new "## Длинные сессии" section inserted between disciplineBlock/activeProjects and costBlock. • 7 new unit tests (36/36 total green). Behavior: • No sessions today → ✅ "Ни одной сессии с >50 ходов". • One+ flagged → ⚠️ table { session_id, max turn, regulated %, last episode ts }. • Custom threshold via opts.threshold. Per memory project_enforce_hard_rules.md: this is an indicator, not a hook; no blocking, just observability. Owner can decide whether to restart when regulated % drops in a long session.