Дмитрий
90f1360065
feat(secretary): устойчивость к обрывам — источник=транскрипт, склейка продолжений, догон сессий
...
Секретарь перестал терять промпт владельца при обрыве (сбой API / ручной стоп /
жёсткий крах). Источник правды — транскрипт на диске: сырьё (Слой 1) пересобирается
из всего транскрипта на каждом завершении, а не дописывается по последнему обмену.
- classifyEntry/assembleExchanges: распознавание машинных меток (isApiErrorMessage,
[Request interrupted by user] обе формы, isCompactSummary, isMeta) — метка не считается
настоящим промптом; промпт после обрыва помечается продолжением (cont=1), хвост — tail=1.
- realBoundariesFromRaw: продолжение не открывает новый спан (одна работа не дробится).
- честные пометки спана: «(связь прерывалась — продолжено)» / «(прервана, не завершена)».
- stop-хук: пересборка сырья из транскрипта + догон недоразобранного хвоста прошлых
(умерших) сессий дела при «включи секретаря <дело>» (_sessions.json, secretary-sessions).
- parseLastExchange → тонкая обёртка над assembleExchanges (без дубля логики).
Свод секретаря зелёный: 172 теста / 12 файлов.
Спека: docs/superpowers/specs/2026-06-23-secretary-interruption-resilience-spec.md
План: docs/superpowers/plans/2026-06-23-secretary-interruption-resilience.md
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 04:19:16 +03:00
..
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-16 14:12:52 +03:00
2026-06-15 10:21:50 +03:00
2026-06-16 14:12:52 +03:00
2026-06-15 09:51:17 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-15 08:06:08 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-15 11:42:26 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 04:25:02 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-16 14:12:52 +03:00
2026-06-15 08:06:08 +03:00
2026-06-16 12:28:22 +03:00
2026-06-16 07:25:51 +03:00
2026-06-16 06:48:06 +03:00
2026-06-16 08:16:27 +03:00
2026-06-16 12:23:40 +03:00
2026-06-16 09:41:58 +03:00
2026-06-16 13:30:32 +03:00
2026-06-17 20:10:14 +03:00
2026-06-17 20:10:14 +03:00
2026-06-17 20:10:14 +03:00
2026-06-17 20:10:14 +03:00
2026-06-17 15:41:09 +03:00
2026-06-17 14:39:40 +03:00
2026-06-17 15:41:09 +03:00
2026-06-17 15:41:09 +03:00
2026-06-17 06:55:43 +03:00
2026-06-17 15:41:09 +03:00
2026-06-17 08:54:54 +03:00
2026-06-17 15:41:09 +03:00
2026-06-18 05:28:49 +03:00
2026-06-17 10:53:25 +03:00
2026-06-17 15:41:09 +03:00
2026-06-17 16:54:52 +03:00
2026-06-17 15:13:28 +03:00
2026-06-17 15:41:09 +03:00
2026-06-18 08:10:39 +03:00
2026-06-17 14:39:40 +03:00
2026-06-17 04:52:00 +03:00
2026-06-17 20:10:14 +03:00
2026-06-18 13:58:05 +03:00
2026-06-18 13:19:22 +03:00
2026-06-18 17:43:58 +03:00
2026-06-18 18:02:28 +03:00
2026-06-18 18:17:46 +03:00
2026-06-18 18:39:48 +03:00
2026-06-18 19:03:10 +03:00
2026-06-18 19:26:24 +03:00
2026-06-18 19:54:25 +03:00
2026-06-18 20:33:42 +03:00
2026-06-18 22:35:59 +03:00
2026-06-18 10:07:04 +03:00
2026-06-18 10:07:04 +03:00
2026-06-18 20:33:42 +03:00
2026-06-18 23:23:05 +03:00
2026-06-19 11:42:40 +03:00
2026-06-19 11:42:40 +03:00
2026-06-19 11:42:40 +03:00
2026-06-19 15:18:22 +03:00
2026-06-19 16:16:25 +03:00
2026-06-19 15:18:22 +03:00
2026-06-19 10:48:31 +03:00
2026-06-19 15:54:13 +03:00
2026-06-20 15:39:57 +03:00
2026-06-21 10:04:10 +03:00
2026-06-22 04:30:30 +03:00
2026-06-22 17:21:06 +03:00
2026-06-22 22:42:04 +03:00
2026-06-22 17:21:06 +03:00
2026-06-22 10:54:20 +03:00
2026-06-22 18:18:57 +03:00
2026-06-24 04:19:16 +03:00
2026-06-23 14:45:31 +03:00
2026-06-23 09:18:56 +03:00