[2026-10-16] eagle: personal/plans/balda-callee-prism-plan.md personal/projects/balda/execution-broker.md
This commit is contained in:
1 parent
7ce31ab6ce
commit
23c63a0ef6
2 files changed
+19
-13
No files matched your search
@@ -1,6 +1,6 @@
|
||||
# Execution Broker — эксплуатация
|
||||
|
||||
Проверено: **2026-10-16** по исходникам, работающим контейнерам и реальным запускам. Полная release-ready приёмка ещё не завершена.
|
||||
Проверено: **2026-10-16** по исходникам, работающим контейнерам и реальным запускам. Приёмка закрыта в согласованном проверенном объёме; Broker готов к релизу и боевой эксплуатации в принятых конфигурациях.
|
||||
|
||||
## Развёрнутый комплект
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
| macOS bootstrap | Codex: `macos-codex-review-probe-20261016.tar.gz`, SHA256 `463f47ce73bc76e02082faa8b34f3619a135012ee1f077bff5aa536cd7843d62`, Runner с Darwin zombie-group fix, workflow `b09f2be2` и ограниченный ACP audit. Claude/OpenCode сохраняют `*-c5f63ef.tar.gz`; Xcode — `macos-xcode-fee5409.tar.gz`. Старые assets/config сохранены |
|
||||
| Оба Balda | Чистый upstream `b5f7d5b4`, image `sha256:6703dfc84b0d383cd0bbdd014a803074963a1ce87a11ae036b46cd3a3c0389bd`; подробности в [[personal/projects/balda/setup]] |
|
||||
| Managed plugin | rc32 у обоих, Enabled=true, Drifted=false; прежние plugin data, revisions и marketplace сохранены |
|
||||
| Release archives | `0.1.0-rc.33` candidate, source `d296c73`; четыре runtime archives и plugin в `dist/`, SHA256 и native binary-only checks на всех четырёх платформах проверены. `make check`/race/vet прошли. Публикации нет; rc32 сохранён |
|
||||
| Release archives | `0.1.0-rc.33` candidate, source `ae92c15`; четыре runtime archives и plugin в `dist/`, SHA256 и native binary-only checks на всех четырёх платформах проверены. `make check`/race/vet прошли. Публикации нет; rc32 сохранён |
|
||||
|
||||
Docker socket и daemon group отсутствуют у coding workers. Административный доступ к Docker остаётся у gateway. Основные модели, home volumes и история обоих Balda сохранены; сессии не сбрасывались. Серверная проверка Codex auth: models endpoint отвечает HTTP 200 у обоих инстансов. У @balda дополнительно проверена реальная генерация в ephemeral read-only сессии: `AUTH_OK`, `turn.completed`, exit 0. Исходный аккаунт сохранён; Balda перечитал credentials после обычного перезапуска.
|
||||
|
||||
@@ -58,12 +58,14 @@ Managed lifecycle и native wait restart проверены на развёрн
|
||||
|
||||
Сервисные fixtures не подтверждают выбор tools и доставку результата моделью в настоящей беседе.
|
||||
|
||||
## Незавершённый объём
|
||||
## Принятый объём и ограничения
|
||||
|
||||
| Область | Что остаётся |
|
||||
2026-10-16 владелец явно ответил **«Да, закрыть в проверенном режиме»**: закрыта приёмка подтверждённых конфигураций с перечисленными ниже непроверенными ограничениями. Публикация релиза не выполнялась.
|
||||
|
||||
| Область | Проверено / границы |
|
||||
| --- | --- |
|
||||
| Docker providers | Linux OpenCode/DeepSeek прошёл две полные Story на свежих workers: реальные роли, повторное выполнение quality assertions, SHA256 всех артефактов, restart Broker/issuer, credential checkpoint/reuse, `cleanup=done`, без нового OAuth. Linux Claude также прошёл две полные Story на свежих workers, включая restart Broker/issuer: шесть ролей, независимый повтор unit tests, SHA256 семи артефактов каждого запуска, checkpoint и cleanup подтверждены; новый OAuth не понадобился. Linux Claude прошёл также component-проверку: фактический permission-handler обеих read-only ролей отклонил инъецированные ACP-запросы записи; marker не создан. Expiry/upstream revocation остаются открыты. Linux Codex прошёл две полные Story на свежих workers с `nested-v1`: все шесть ролей, quality, независимые unit tests (4/4 и 3/3), SHA256 артефактов, restart Broker/gateway/issuer, checkpoint/reuse и cleanup. Штатный Codex fallback сохраняет Docker proc masks; отдельные AppArmor/seccomp профили сохраняют non-root, cap-drop, read-only root и no-new-privileges. Реальная попытка записи в read-only workspace отклонена. Исправление `f9ca7c3`, gateway развёрнут с точным worker pin; итоговая Story через production Broker/Prism также прошла все шесть ролей, quality, независимые unit tests (3/3), SHA256 артефактов и cleanup=done. Default Docker policy не поддерживает нужные namespaces. Expiry/upstream revocation остаются отдельными gates. Проверка запрета записи OpenCode прошла на Linux и свежей macOS VM: обе read-only сессии получили прямые ACP-запросы записи, Callee отклонил их, marker отсутствовал; native plan policy не менялась. Это protocol fault injection, а не попытка tool call, выбранная моделью |
|
||||
| Provider lifecycle | На Linux приняты контролируемые native отказы Codex (401/token_expired), Claude (Authentication required, reauthentication_required) и DeepSeek (invalid API key) на отдельных synthetic vault. Все runs failed/cleanup=done, credential owners освобождены, артефакты сохранены/SHA256-проверены, secret scans прошли. Natural expiry/refresh Claude принята отдельно. Реальный upstream revoke существующей авторизации и последующий browser login не выполнялись; аккаунты менять запрещено. Отрицательные прогоны не заменяют этот исходный пункт полного плана и не доказывают macOS failure lifecycle |
|
||||
| Docker providers | Linux OpenCode/DeepSeek прошёл две полные Story на свежих workers: реальные роли, повторное выполнение quality assertions, SHA256 всех артефактов, restart Broker/issuer, credential checkpoint/reuse, `cleanup=done`, без нового OAuth. Linux Claude также прошёл две полные Story на свежих workers, включая restart Broker/issuer: шесть ролей, независимый повтор unit tests, SHA256 семи артефактов каждого запуска, checkpoint и cleanup подтверждены; новый OAuth не понадобился. Linux Claude прошёл также component-проверку: фактический permission-handler обеих read-only ролей отклонил инъецированные ACP-запросы записи; marker не создан. Natural expiry/refresh Claude принята отдельно; намеренный upstream revoke исключён из согласованной приёмки и не проверен. Linux Codex прошёл две полные Story на свежих workers с `nested-v1`: все шесть ролей, quality, независимые unit tests (4/4 и 3/3), SHA256 артефактов, restart Broker/gateway/issuer, checkpoint/reuse и cleanup. Штатный Codex fallback сохраняет Docker proc masks; отдельные AppArmor/seccomp профили сохраняют non-root, cap-drop, read-only root и no-new-privileges. Реальная попытка записи в read-only workspace отклонена. Исправление `f9ca7c3`, gateway развёрнут с точным worker pin; итоговая Story через production Broker/Prism также прошла все шесть ролей, quality, независимые unit tests (3/3), SHA256 артефактов и cleanup=done. Default Docker policy не поддерживает нужные namespaces. Контролируемый Codex 401/token_expired проверен на отдельном synthetic vault; реальный upstream revoke и browser login исключены из принятого объёма и не проверены. Проверка запрета записи OpenCode прошла на Linux и свежей macOS VM: обе read-only сессии получили прямые ACP-запросы записи, Callee отклонил их, marker отсутствовал; native plan policy не менялась. Это protocol fault injection, а не попытка tool call, выбранная моделью |
|
||||
| Provider lifecycle | На Linux приняты контролируемые native отказы Codex (401/token_expired), Claude (Authentication required, reauthentication_required) и DeepSeek (invalid API key) на отдельных synthetic vault. Все runs failed/cleanup=done, credential owners освобождены, артефакты сохранены/SHA256-проверены, secret scans прошли. Natural expiry/refresh Claude принята отдельно. Реальный upstream revoke существующей авторизации и последующий browser login не выполнялись; аккаунты менять запрещено. По явному решению владельца реальный upstream revoke и последующий browser login исключены из закрываемого объёма и остаются непроверенным ограничением; отрицательные прогоны не считаются их прохождением и не доказывают macOS failure lifecycle |
|
||||
|
||||
Источник требований — `docs/work-plan.md`. iPad, прикладные UI/PR workflows и права Obsidian принадлежат вызывающему проекту или Balda.
|
||||
|
||||
@@ -79,7 +81,7 @@ Production Story `run-d643dd9154d4766fe82b72805dabdc9e` завершилась `
|
||||
|
||||
Итоговые `make check` (race/vet/scripts), Callee compatibility/race, Staticcheck (0 findings), source/binary Govulncheck и source/artifact secret scans прошли. Достижимых уязвимостей нет. Семь binaries собраны для Darwin/Linux ARM64/AMD64; это cross-build gate, не новая native archive-приёмка. Результаты — `source-validation.json`, `cross-build.json`, `staticcheck-final.log`.
|
||||
|
||||
Beads `.6.4` macOS, `.6.5` Linux и `.4` protected host-loss recovery закрыты. Кандидат rc33 собран и нативно проверен на всех четырёх платформах. В полной приёмке остался `.6.6`: реальный upstream revoke и повторная browser authorization; по указанию владельца существующие аккаунты менять нельзя. Контролируемые отказы на synthetic credentials для всех трёх провайдеров прошли и записаны отдельно. Рабочие сессии не отзывались; destructive gate не отмечен пройденным.
|
||||
Beads `.6.4` macOS, `.6.5` Linux, `.4` protected host-loss recovery, `.6.6`, `.6` и корневая Story `eb-71b7971ac3fdd03b8ff6b198` закрыты; все дочерние задачи закрыты. Основание для `.6.6` — явное решение владельца принять проверенный объём, а не утверждение о выполненном отзыве аккаунтов. Финальный rc33 source `ae92c15` собран с согласованной документацией; все четыре exact runtime archives прошли native binary-only checks, `make check`/race/vet и SHA256 проверены. Итог: `state/broker-acceptance-20261016/final-release-readiness.json`, `beads-acceptance-closure.json`, `rc33-release-verification.json`. Публикации нет. Блокеров в согласованном объёме нет; реальный upstream revoke и browser login остаются непроверенными ограничениями. Рабочие сессии не отзывались, тестовые ресурсы очищены. Recovery-копия сохранена вне тестовых leases с проверенным исходным runtime rc33 `d296c73` (до финального документационного commit).
|
||||
|
||||
## Конфигурация и восстановление
|
||||
|
||||
|
||||
Reference in new issue
Block a user