diff --git a/personal/projects/psychologist-app/session-design.md b/personal/projects/psychologist-app/session-design.md index 6dc56c85..f325a685 100644 --- a/personal/projects/psychologist-app/session-design.md +++ b/personal/projects/psychologist-app/session-design.md @@ -208,10 +208,10 @@ step_state { ## 6. Открытые вопросы -- [ ] Как именно Narrator детектирует что вопросы в 3-м лице и нужно переформулировать? Prompt rule или регекс-паттерн? -- [ ] Сценарий планировщика — отдельный агент или встроен в посредника? -- [ ] Как хранить расписание сессий: отдельный `schedule.md` в профиле? -- [ ] Что если "one last thing" раскрывает новую тему — прерывать или кратко зафиксировать? +- [x] Narrator детектирует 3-е лицо — prompt rule достаточно, регекс не нужен. +- [ ] Планировщик — отдельный tool у Narrator (как `search_sessions`). Архитектура агента — дизайн-решение, отложено. +- [x] Расписание — через системный календарь (EventKit), не `schedule.md`. +- [x] "one last thing" + новая тема → агент добавляет в заметки и отвечает коротко, не перезапускает сессию (§3.3). --- @@ -586,11 +586,10 @@ func startSession() { ### 12.3 Следующая итерация -- mood_delta → Orb visual feedback (Section 9.4) -- save_session app API tool для агента (Section 7.5) -- Vault sync архитектура: on-device → vault отдельным job (Section 11.4) -- Retention protocol при пропущенных сессиях (Section 5) -- Android Skip совместимость новых типов +- [ ] mood_delta → Orb visual feedback: declining=холодный синий/медленный пульс, stable=нейтральный, improving=amber/живой (§9.4) +- [ ] Планировщик как tool у Narrator — аналогично `search_sessions` / `read_profile` (EventKit-интеграция) +- [ ] Retention protocol при N пропущенных сессиях подряд (§5) +- [ ] Android: проверить `TextEditor` в Skip Fuse — при необходимости заменить на `TextField(axis:.vertical)` ---