[2026-10-03] eagle: personal/plans/balda-callee-prism-plan.md personal/plans/personal-os-operating-plan-2026-10-03.md personal/projects/balda/balda.md personal/projects/virfield.md

This commit is contained in:
Alexey Martemyanov committed 2026-10-03 22:46:21 +06:00
1 parent 35b4495a3f
commit d24df5f431
4 files changed
+14 -10

No files matched your search

+2 -2
View File
@@ -1,10 +1,10 @@
# Текущее состояние — Balda / Broker — 2026-10-03 22:41 Бишкек
Статус: **приёмочный Docker-прогон выполнен на прежнем образе; автоматическая публикация исправлена, а Balda запущена из предыдущего чистого HEAD PR #12 (`c5186037`); новый исправленный HEAD `73e02156` ещё не развёрнут. Общий release остаётся NO-GO до нового end-to-end прогона, подтверждающего публикацию и уведомления на образе из текущего HEAD `73e02156`.** Записи ниже — история и могут содержать устаревшие статусы.
Статус: **приёмочный Docker-прогон выполнен на прежнем образе; автоматическая публикация исправлена, а Balda запущена из текущего исправленного HEAD PR #12 (`73e02156`). Общий release остаётся NO-GO до нового end-to-end прогона, подтверждающего публикацию и уведомления на образе из текущего HEAD `73e02156`.** Записи ниже — история и могут содержать устаревшие статусы.
- **Прогон:** `run-fbe2cb459fe2965554402aba1bd5fcd0` стартовал с `a030ce3`, завершился `succeeded`, `cleanup=done`, `quality.passed=true`. Worker создал `4dafb9d` для команды `hi`. В исходном Mattermost треде `jqor5w1qd3n5irizqd1jqued1a` Balda durable outbox хранит два разных отправленных сообщения с provider ID: запрос апрува (event 13) и финал (event 30). Повторы webhook шли с теми же dedupe keys; cleanup (event 31) не создал третий финальный пост.
- **Доставка кода:** после успеха Balda не вызвала `execution_publish_artifacts`. Коммит `4dafb9d` опубликован вручную через проверяющий API Broker в Git-зеркало и чистый локальный `/Users/admin/Developer/go-cli-test`. После публикации `go test ./...` прошёл, `go run . hi` напечатал `hello world!`, `add 2 3` — `5`. Причина пропуска найдена: MCP давал Balda ссылки на артефакты, но требовал недоступный ей SHA из `commit.json`; webhook prompt также не называл публикацию явно. Broker теперь сам проверяет commit/quality/bundle, а `expected_head` в MCP необязателен. Активный Broker обновлён, Balda webhook prompt требует публикацию перед закрытием Story, плагин обновлён до rc.19. Idempotent вызов действующего API без `expected_head` вернул HTTP 200 и прежнюю ревизию `4dafb9d`; новый автоматический end-to-end прогон ещё не проведён.
- **PR [#12](https://github.com/baldaworks/balda/pull/12):** открыт, не draft, HEAD `73e02156`; локальные проверки прошли, GitHub CI этого HEAD выполняется, ревьюер запросил исправление ошибки HTTP 404/503, которое включено в новый коммит. Изменение маршрутизирует header-authenticated webhook по `chat_id`, даёт fallback для отсутствующей/неактивной сессии и receipt после реальной отправки. Чистый checkout PR находится на `73e02156`. Прежний вывод о другом SHA Balda был неверен: `d094943b` в Go metadata относился к внешнему репозиторию Broker, а `deepseekfix` был унаследованной меткой старого образа. Теперь Balda запущена на образе `balda-mm:pr12-c5186037-20261003`, собранном из предыдущего чистого HEAD PR #12; хеш запущенного бинарника совпадает с build artifact `55154c44…`. Текущий конфиг прошёл `balda validate`, плагин rc.19 установлен. Ревьюер `metalgman` оставил `CHANGES_REQUESTED` из-за HTTP 404 при временном сбое чтения session. Исправление отправлено в PR коммитом `73e02156`: 404 остаётся только для `ErrSessionUnavailable`, прочие ошибки resolver дают 503, HTTP-регрессия добавлена. Локально `go test -race ./...` и `go tool golangci-lint run` прошли; CI нового HEAD выполняется. После CI нужен повторный сквозной прогон.
- **PR [#12](https://github.com/baldaworks/balda/pull/12):** открыт, не draft, HEAD `73e02156`; локальные проверки прошли, GitHub CI этого HEAD выполняется, ревьюер запросил исправление ошибки HTTP 404/503, которое включено в новый коммит. Изменение маршрутизирует header-authenticated webhook по `chat_id`, даёт fallback для отсутствующей/неактивной сессии и receipt после реальной отправки. Чистый checkout PR находится на `73e02156`. Прежний вывод о другом SHA Balda был неверен: `d094943b` в Go metadata относился к внешнему репозиторию Broker, а `deepseekfix` был унаследованной меткой старого образа. Теперь Balda запущена на образе `balda-mm:pr12-73e02156-20261003`, собранном из чистого текущего HEAD PR #12; хеш запущенного бинарника совпадает с build artifact `7673f939…`. Текущий конфиг прошёл `balda validate`, плагин rc.19 установлен. Ревьюер `metalgman` оставил `CHANGES_REQUESTED` из-за HTTP 404 при временном сбое чтения session. Исправление отправлено в PR коммитом `73e02156`: 404 остаётся только для `ErrSessionUnavailable`, прочие ошибки resolver дают 503, HTTP-регрессия добавлена. Локально `go test -race ./...` и `go tool golangci-lint run` прошли; CI нового HEAD выполняется. После CI нужен повторный сквозной прогон.
- **Следующий контроль:** проверить автоматическую публикацию без ручного API-вызова в новом прогоне и повторить уведомления на образе из `c5186037`. PR и Broker-изменения не слиты автоматически.
---
@@ -4,7 +4,7 @@ tags: [personal-os, execution-plan, focus, work-life-balance]
date: 2026-10-03
status: approved-for-implementation
approved_on: 2026-10-03
implementation_status: in-progress
implementation_status: shadow-running
mission: "[[personal/projects/personal-os/personal-os-purpose]]"
---
@@ -12,7 +12,7 @@ mission: "[[personal/projects/personal-os/personal-os-purpose]]"
**Утверждённое решение от 2026-10-03:** сначала запустить контур управления самочувствием, фокусом и посильной нагрузкой Алекса. Его главная проблема сейчас — **рваный фокус**: одновременно идут его задачи и много агентных задач, которые неожиданно возвращаются к нему как ревью/решения. Технические источники дают факты, но само приложение на переднем плане не определяет рабочую тему. Кодинговые агенты — второй контур, ограниченный человеческим временем ревью и токенами. Этот документ заменяет прежнюю версию плана от 2026-10-03, где на первое место ошибочно поставлена техническая надёжность feed.
**Состояние выполнения:** пакет A выполнен 3 октября в следующей сессии; следующий пакет — B (GitHub obligations). Утверждение охватывает локальный код, read-only интеграции и новый тихий shadow-автозапуск после теста; не охватывает старый Executor, push-уведомления или запись в Asana/GitHub. Миссия: [[personal/projects/personal-os/personal-os-purpose]]. Исходное состояние: [[personal/projects/personal-os/personal-os-status-2026-10]].
**Состояние выполнения:** пакеты A–C реализованы до доступных сегодня источников; D работает как локальный shadow-фокус с явными unknown; E запущен как тихий сбор 3 октября. Двухдневная калибровка и пользовательский пилот ещё не завершены. Утверждение охватывает локальный код, read-only интеграции и новый тихий shadow-автозапуск после теста; не охватывает старый Executor, push-уведомления или запись в Asana/GitHub. Миссия: [[personal/projects/personal-os/personal-os-purpose]]. Исходное состояние: [[personal/projects/personal-os/personal-os-status-2026-10]].
## 1. Системная задача и критерий пользы
@@ -61,6 +61,9 @@ mission: "[[personal/projects/personal-os/personal-os-purpose]]"
**Пакет A — выполнен 2026-10-03.** Добавлены локальная очередь `work_demands`, статус источника и классификация прямых вопросов, ревью, назначений и неопределённостей. После одного read-only refresh очередь `fresh`: 2 прямых вопроса и 1 запрос на ревью из Asana; FYI и автоматические напоминания не названы обязанностью. Проверены 20 реальных комментариев без переноса текста в отчёт, 6 автоматических тестов проходят. Обновлён `~/context/attention.md`. Старый Executor и расписание не запускались.
**Ход 2026-10-03, 22:42 +06.** `com.personalos.focus-shadow` загружен с интервалом 15 минут: 3 октября тихий сбор продолжается до полуночи, затем — рабочие дни 08:00–20:00; два полных read-only прогона сегодня завершились без ошибок. Снимок сохраняется в `~/context/shadow.json`, `focus.json` и `shadow-history/`. GitHub: 27 моих open PR и 5 текущих review requests, оба набора точно совпали с независимым REST API; CI, head SHA, approvals и unresolved threads читаются. ActivityWatch: 254 локальных интервала; текущая тема `unknown`, потому что AFK-данные сейчас stale. DDG URL watcher загружен, но свежего URL ещё нет — не строить привязку по названию окна. Метаданные Codex/Claude и локальные worktrees читаются без текста разговоров; `needs_human` остаётся unknown без подтверждённого события. Календарь и Balda не имеют подтверждённого read-path/контракта в этом срезе. 18 тестов проходят. Два рабочих дня shadow и проверка 20 разнообразных интервалов остаются впереди; доставка карточек, Zoom, iPad и старый Executor не включены.
**Режим разработки:** одна активная coding-задача Personal OS за раз, один проверяемый результат на задачу, без unattended respawn; текущие Balda/Broker/Virfield уже занимают часть reviewer capacity. До достоверного учёта токенов не выдавать агенту бесконечный Ralph loop. Лимиты первого среза: одна попытка исправления после неудачной проверки, один пакет на ревью Алексу в день, целевой размер ревью до 20 минут. Фактические токены/стоимость логировать, отсутствие usage обозначать `unmetered`; численные token caps P1 согласуются отдельно. Параллельно coding-задаче можно вести read-only диагностику следующего адаптера без нового запроса к Алексу.