[2026-10-04] eagle: personal/plans/personal-os-operating-plan-2026-10-03.md personal/plans/personal-os-v2-plan.md personal/projects/personal-os/personal-os-status-2026-10.md personal/projects/personal-os/zoom-ai-transcript-export.md

This commit is contained in:
Alexey Martemyanov committed 2026-10-04 11:20:11 +06:00
1 parent a9e16d5ee2
commit 0c33226a30
4 files changed
+18 -15

No files matched your search

@@ -17,7 +17,7 @@ updated: '2026-10-04'
**Утверждённое решение от 2026-10-03:** сначала запустить контур управления самочувствием, фокусом и посильной нагрузкой Алекса. Его главная проблема сейчас — **рваный фокус**: одновременно идут его задачи и много агентных задач, которые неожиданно возвращаются к нему как ревью/решения. Технические источники дают факты, но само приложение на переднем плане не определяет рабочую тему. Кодинговые агенты — второй контур, ограниченный человеческим временем ревью и токенами. Этот документ заменяет прежнюю версию плана от 2026-10-03, где на первое место ошибочно поставлена техническая надёжность feed.
**Состояние выполнения на 2026-10-04:** пакеты A–C реализованы для подтверждённых источников; D работает как локальный shadow-фокус с явными `unknown`; E запущен как тихий сбор 3 октября. `com.personalos.focus-shadow` выполнял полный цикл 3 октября (последний код 0), после этого запускается по будням 08:00–20:00 каждые 15 минут. Корпоративный Mattermost теперь собирается отдельным read-only клиентом каждые 15 минут. Двухдневная калибровка, ручная проверка 20 интервалов и пользовательский пилот ещё не завершены. Старый Executor, push-уведомления и запись в Asana/GitHub не включены. Миссия: [[personal/projects/personal-os/personal-os-purpose]]. Текущее состояние: [[personal/projects/personal-os/personal-os-status-2026-10]].
**Состояние выполнения на 2026-10-04:** пакеты A–C реализованы для подтверждённых источников; D работает как локальный shadow-фокус с явными `unknown`; E запущен как тихий сбор. `com.personalos.focus-shadow` работает по будням 08:00–20:00 каждые 15 минут; проверка 4 октября: 54 запуска, последний код 0, последний снимок 00:41 +06. Корпоративный Mattermost собирается отдельным read-only клиентом. Zoom: два transcript сохранены, ночной LaunchAgent включён на 02:15, первый запуск по расписанию ещё впереди. Через Balda на Monterey/Xcode 13 запущено создание пустого iPad-проекта; сборка и установка нового приложения не подтверждены. Двухдневная калибровка, ручная проверка 20 интервалов и пользовательский пилот ещё не завершены. Старый Executor, push-уведомления и запись в Asana/GitHub не включены. Миссия: [[personal/projects/personal-os/personal-os-purpose]]. Текущее состояние: [[personal/projects/personal-os/personal-os-status-2026-10]].
## 1. Системная задача и критерий пользы
@@ -88,7 +88,7 @@ updated: '2026-10-04'
4. **Калибровать без нагрузки на Алекса.** Новый локальный `scripts/run-focus-shadow.sh`/LaunchAgent запускает только read-only incremental Asana/GitHub refresh и локальную сборку timeline/решений без карточек и уведомлений; отдельные каналы помечают `fresh/stale/failed`, целевая свежесть важных обязательств в рабочее время — до 15 минут, с проверкой API затрат и задержек. Два рабочих дня shadow-сбора и 20 интервалов разных типов сравнить с ID/URL/состояниями источников; два дня воспроизвести focus-рекомендации без доставки. Исправлять по одному правилу и сохранять пример/до/после в `calibration_cases/changes`; у Алекса уточнять максимум один вопрос в день только если ответ меняет рекомендацию. **Приёмка:** ноль ложных high-confidence привязок и выдуманных `needs_human`, нет скрытого пропуска важного обязательства, неизвестное не маскируется. **Польза:** рекомендации опираются на проверенные факты, а не на названия окон.
5. **Включить ограниченный пользовательский пилот.** После отдельного согласования границы дня и канала показывать одну карточку на естественном переходе; обычные обновления копить молча. Пять рабочих дней измерять добровольную оценку самочувствия/рваного фокуса, неплановые обращения, минуты ревью, пропущенные обязательства и использование карточки. На «неверно/слишком много» исправлять следующее предложение; неиспользуемую карточку остановить. **Приёмка:** нет обычных прерываний во время focus/meeting и после границы дня; Алекс за ≤10 секунд корректирует план. **Польза:** система начинает помогать в моменте, не создавая новый поток сообщений.
**Утверждённая граница:** локальные read-only интеграции, файлы контекста, проверка на выборке и новый тихий автозапуск shadow-сборщика после теста одного прогона. Старый `com.personalos.readonly` и Executor остаются выключенными. Push-уведомления, запись в Asana/GitHub, Zoom-импорт и iPad-деплой требуют отдельного решения после работающего P0 контракта. Участие Алекса до пилота больше не требуется; к пилоту нужны граница рабочего дня и канал короткой карточки.
**Утверждённая граница плана от 3 октября:** локальные read-only интеграции, файлы контекста, проверка на выборке и тихий автозапуск shadow-сборщика. Позже Zoom-экспорт отдельно включён и создание пустого iPad-проекта запущено; это не означает приёмку iPad-клиента или автоматического импорта новых встреч. Старый `com.personalos.readonly` и Executor остаются выключенными. Push-уведомления и запись в Asana/GitHub не включены. До пользовательского пилота нужны граница рабочего дня и канал короткой карточки.
### Передача в следующую сессию — исполняемые пакеты
@@ -188,8 +188,8 @@ updated: '2026-10-04'
### Параллельно: Zoom и iPad, но по контракту P0
- **Zoom:** существующие записи найти через фактический источник учётной записи; импортировать одну прошлую встречу в `meeting_context` с участниками, решениями, обещаниями, сроками и ссылкой/фрагментом. Обязательства попадают в рабочий контекст, подтверждённый вклад — в карьерный; это влияет на план *после встречи*, а не создаёт ещё один длинный brief. Затем идемпотентный импорт новых. Новый адаптер `zoom-import.js` и миграция `meeting_context`; метод доступа выбирается после проверки аккаунта, старую заметку [[personal/projects/personal-os/zoom-ai-transcript-export]] считать вариантами, не доказанным текущим доступом. Приёмка: одна существующая встреча даёт проверяемое обязательство и/или факт вклада со ссылкой, повторный импорт не создаёт дубль.
- **iPad Desk:** установка на физический iPad уже подтверждена. Передать агенту ограниченное приложение «фокус сейчас / вместимость дня / когда вернуться / одно ожидание меня / свежесть», читающее `focus.json` по LAN с минимальными полями. iPad — пассивный интерфейс того же контура; не проект по повторной проверке установки. Приёмка: на iPad виден тот же focus state, после отключения сети ясно показана устаревшая версия; нет лишних алертов.
- **Zoom:** текущий доступ к My Notes подтверждён через отдельный headless Chrome. Два transcript сохранены с `note_id` и источником; первый запуск по расписанию 5 октября и импорт первой новой заметки ещё нужно проверить. Следующий содержательный этап — из сохранённого transcript извлечь проверяемые решения, обещания, сроки и вклад с ссылкой на фрагмент; кандидаты проходят review перед попаданием в рабочий/карьерный профиль. Повторный импорт не должен создавать дубль. См. [[personal/projects/personal-os/zoom-ai-transcript-export]].
- **iPad Desk:** установка прежнего тестового проекта на физический iPad была подтверждена; создание нового пустого проекта через Balda на Monterey/Xcode 13 запущено 4 октября. Следующая контрольная точка — собираемый проект и артефакт установки нового приложения. Первый экран читает ограниченный `focus.json` по LAN: «фокус сейчас / одно ожидание меня / свежесть / нет связи». Приёмка: на iPad виден тот же focus state, после отключения сети ясно показана устаревшая версия; нет лишних алертов.
## 5. Последовательность, зависимости, участие Алекса
@@ -197,6 +197,6 @@ updated: '2026-10-04'
2. **P0.1 — блокер фактов:** после аудита собрать тихую временную линию человека/агентов/рабочих тем, проверить привязки к Asana/PR/meeting/worktree и честно показать неизвестные интервалы. Проверить 20 интервалов и два дня без новых сообщений Алексу.
3. **P0.2 — затем блокер решений:** выбрать посильную работу из Asana, PR, TD, Ship Review, встреч, team growth и агентных ревью по роли, пользе, сроку, энергии и доступному времени; испытать перегруженный день до включения schedule.
4. **P0.3 → P0.4:** показать один короткий живой focus state, провести 5 рабочих дней измеряемого пилота с возможностью исправить перегрузку. Только после этого решать о регулярной доставке.
5. **P1 и параллельные ветки:** включить ограниченный coding loop с учётом review/tokens; импортировать Zoom; отдать тот же focus state на iPad. Balda/Broker/Virfield не дублировать.
5. **P1 и параллельные ветки:** продолжить ограниченный coding loop с учётом review/tokens; проверить первый ночной Zoom-запуск и извлечение кандидатов из transcript; принять пустой iPad-проект и затем вывести тот же focus state на устройство. Balda/Broker/Virfield не дублировать.
**Необходимое участие Алекса в пилоте:** перед доставкой карточки — граница рабочего дня и канал; затем по желанию один короткий сигнал «полезно/неверно/слишком много» и ручная смена энергии/фокуса, когда захочется. Система не требует ежедневного ведения журнала. Внешние записи и старый автономный Executor этим планом не разрешены.
+4 -2
View File
@@ -5,12 +5,14 @@ tags:
- plan
- v2
created: '2026-10-03'
updated: '2026-10-03'
updated: '2026-10-04'
status: draft
---
# Personal OS v2 — план перезапуска
> Черновик 2026-10-03. Вход: [[personal/projects/personal-os/personal-os-status-2026-10]] ·
> Исторический черновик 2026-10-03: заменён утверждённым [[personal/plans/personal-os-operating-plan-2026-10-03]]. iPad-идея здесь описывает старый тестовый проект, не новое приложение, создание которого запущено через Balda 4 октября. Текущий статус: [[personal/projects/personal-os/personal-os-status-2026-10]].
>
> Исходный вход: [[personal/projects/personal-os/personal-os-status-2026-10]] ·
> уроки: [[personal/projects/personal-os/personal-os-failed-approaches]].
> Пометка **⚠️ проверить** = моё допущение, не подтверждено фактом.
@@ -12,11 +12,11 @@ confidence: 1
## Коротко
- **Тихий read-only сбор работает.** `com.personalos.focus-shadow` запущен каждые 15 минут (12 запусков, последний код 0); после ночи расписание ограничено рабочими днями 08:00–20:00. Результаты: `~/context/shadow.json`, `shadow.md`, `focus.json`, `shadow-history/`. Доставки карточек и старого Executor нет.
- **Тихий read-only сбор работает.** `com.personalos.focus-shadow` загружен по будням 08:00–20:00 каждые 15 минут; проверка 4 октября: 54 запуска, последний код 0. Последний снимок `~/context/shadow.json` и `focus.json` создан 4 октября в 00:41 +06; в воскресенье новый рабочий снимок не ожидается. Доставки карточек и старого Executor нет.
- **Корпоративный Mattermost подключён отдельно.** Клиент с собственной Chrome-сессией читает сообщения `chat.duckduckgo.com` каждые 15 минут (первый запуск 21 сообщение из 202 каналов, повторный 0 новых; LaunchAgent код 0). Тест на `mm.qentra.top` дал 265 сообщений из 9 каналов; Qentra не добавлена в фоновое расписание. Токены/куки в Personal OS не копируются, файлы снимков имеют режим 0600.
- **iTerm и рабочие ветки учитываются.** Последний снимок: 78 worktrees, 40 с незавершёнными изменениями, 2157 изменённых путей, 64 коммита за 30 дней. Диффы не сохраняются. Из 53 интервалов iTerm 18 привязаны к worktree по пути в заголовке, прочие остаются `unknown`.
- **Outlook подключён только как активность окна.** За последний снимок интервалов Outlook нет; письма и встречи не читаются. Outlook Email/Calendar connectors отключены администратором; для Graph нужен разрешённый client ID/tenant ID с `Mail.Read` и `Calendars.Read`. Календарь остаётся `unknown`.
- **Zoom My Notes загружается ночью.** Отдельный headless Chrome запускается в 02:15, читает мои новые заметки и закрывается после импорта. Два transcript сохранены в Obsidian как Markdown/JSON с дедупликацией по `note_id`; повторный запуск не создал дубликатов. LaunchAgent проверен: код 0. Код импорта и запасного API-пути сохранён в коммитах `4b403ed` и `2728aee`; тесты Zoom: 14/14. Детали: [[personal/projects/personal-os/zoom-ai-transcript-export]].
- **Zoom My Notes настроен на ночной импорт.** `com.personalos.zoom-browser` запускает отдельный headless Chrome в 02:15. Два transcript от 29 сентября сохранены в Obsidian как Markdown/JSON с дедупликацией по `note_id`; два ручных запуска LaunchAgent завершились с кодом 0, но нашли 0 новых заметок. Первый запуск по расписанию ожидается 5 октября; импорт новой заметки этим расписанием ещё не проверен. Детали: [[personal/projects/personal-os/zoom-ai-transcript-export]].
- **Пилот не завершён.** Двухдневная калибровка, ручная проверка 20 интервалов и пятидневный пользовательский пилот впереди. План: [[personal/plans/personal-os-operating-plan-2026-10-03]]. Аудит: [[personal/plans/personal-os-source-audit-2026-10-03]].
## Проверенные источники (основной снимок 2026-10-04 00:41 +06; Zoom проверен 10:16 +06)
@@ -31,14 +31,14 @@ confidence: 1
| Mattermost | Корпоративный и тестовый снимки `fresh`; фоновый сбор включён только для корпоративного сервера. |
| iTerm | Частичная привязка к worktree по точному пути shell prompt в заголовке окна. |
| Outlook/календарь | Активность приложения — частично; сообщения, события и тема встречи — `unknown`. |
| Zoom My Notes | Ночной headless-импорт включён на 02:15. Два transcript сохранены в Obsidian; повторный импорт пропустил оба. Chrome закрывается после запуска. |
| Zoom My Notes | LaunchAgent включён на 02:15; два transcript в Obsidian. Ручные запуски: код 0, новых заметок 0. Первый запуск по расписанию — 5 октября. |
| Balda | Подтверждённого read-only контракта для этого среза нет. |
## Что остаётся выключенным
- Старый Executor, Hermes briefs и их push-уведомления остаются на паузе после инцидента 2026-04/05 ([[personal/projects/personal-os/executor-security-analysis]]).
- Старый `com.personalos.readonly` не является контуром нового shadow-сбора.
- Запись в Asana/GitHub, доставка focus-карточек и iPad-клиент не включены.
- Запись в Asana/GitHub и доставка focus-карточек не включены. Создание пустого iPad-проекта через Balda на Monterey/Xcode 13 запущено пользователем; сборка и установка нового приложения ещё не подтверждены.
## Что живо рядом (не Personal OS, но связано)
@@ -59,7 +59,7 @@ confidence: 1
1. Проверить 20 разнообразных интервалов и два рабочих дня shadow-сбора; исправить ложные уверенные связи и пропуски обязательств.
2. Настроить локальный импорт выгруженных транскриптов других агентов и извлечение сигнала раздражения из сообщений Алекса; проверить ложные срабатывания, не создавая диалог с Personal OS.
3. Получить разрешённый Microsoft Graph app (tenant ID, client ID, делегированные `Mail.Read`/`Calendars.Read`) для чтения Outlook; до этого встречи не учитываются как подтверждённая занятость.
4. Проверить первый запуск Zoom My Notes по ночному расписанию 2026-10-05; ручной запуск LaunchAgent уже завершился с кодом 0.
4. Проверить первый запуск Zoom My Notes по ночному расписанию 2026-10-05 и отдельно подтвердить импорт первой новой заметки. Ручные запуски уже завершились с кодом 0, но новых заметок не нашли.
5. Перед доставкой карточки согласовать границу рабочего дня и канал; затем провести пятидневный пилот с короткой обратной связью.
6. Старый Executor возвращать только после контролей безопасности и лимитов ревью/токенов из утверждённого плана.
@@ -90,14 +90,15 @@ Webhook:
## Caveats
- My Notes transcript retention включён и управляется политикой аккаунта. Заметки могут удаляться автоматически.
- Два transcript сохранены в Obsidian. Повторный браузерный импорт пропустил оба без изменений. LaunchAgent `com.personalos.zoom-browser` проверен ручным запуском: завершился с кодом 0; Chrome закрылся. Старый Codex heartbeat остановлен.
- Пользовательский Chrome может оставаться закрытым: расписание использует отдельный headless-профиль.
- Два transcript от 29 сентября сохранены в Obsidian. Два ручных запуска LaunchAgent завершились с кодом 0, но нашли 0 новых заметок; по ночному расписанию импорт ещё не проверен. Первый запуск по расписанию — 5 октября. Старый Codex heartbeat остановлен.
- Пользовательский Chrome может оставаться закрытым: расписание использует отдельный headless-профиль. `ZOOM_BROWSER_SINCE` по умолчанию равен `2026-09-30`; более ранние заметки требуют явного backfill.
## Recommended path
1. ✅ Headless-экспортёр и ночной LaunchAgent активны; отдельный Chrome-профиль авторизован.
2. ✅ Markdown + JSON сохраняются в Obsidian с дедупликацией по `note_id`.
3. ⏳ Индексация сохранённых transcript в pgvector ещё не реализована.
3. ⏳ Проверить запуск 5 октября по расписанию и первый новый transcript; код 0 при `scanned: 0` доказывает только успешный пустой проход.
4. ⏳ Превращение всех сохранённых transcript в проверенные обязательства/карьерные факты и индексация в pgvector ещё не завершены.
---