Some checks failed
CI / test (push) Has been cancelled
Artifact-only production deploy verdict for ORCH-044. All gates green (review APPROVED, tests PASS, staging SUCCESS 10/10). src/ runtime changed → real rebuild+restart of prod orchestrator (8500) delegated to Owner-run deploy hook (ORCH-36); prod container not touched by agent. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
91 lines
5.1 KiB
Markdown
91 lines
5.1 KiB
Markdown
---
|
||
deploy_status: SUCCESS
|
||
timestamp: 2026-06-06T08:44:04Z
|
||
work_item: ORCH-044
|
||
branch: feature/ORCH-044-preflight-auth-effort
|
||
commit: 08ace892bbf1809a65c1dc504459d052bfd71f79
|
||
target_service: orchestrator
|
||
target_port: 8500
|
||
deploy_mode: artifact-only
|
||
staging_gate: SUCCESS
|
||
prod_container_restarted: false
|
||
rebuild_required: true
|
||
---
|
||
|
||
# Deploy Log — ORCH-044
|
||
|
||
## Verdict
|
||
|
||
**`deploy_status: SUCCESS`** — артефактный (artifact-only) деплой-вердикт.
|
||
|
||
Реальный `git pull` + `docker compose ... --build` + рестарт прод-контейнера
|
||
`orchestrator` (8500) в рамках этой стадии **НЕ выполняется**. Он делегирован
|
||
хуку `scripts/orchestrator-deploy-hook.sh` (ORCH-36), который запускается
|
||
Владельцем **после** мерджа ветки `feature/ORCH-044-preflight-auth-effort` в
|
||
`main`. Guardrail: агент никогда не перезапускает общий прод-инстанс внутри
|
||
ORCH-задачи (CLAUDE.md / INFRA.md §Self-hosting).
|
||
|
||
## Pre-conditions (все ✓)
|
||
|
||
| Артефакт | Поле | Значение |
|
||
|----------|------|----------|
|
||
| `12-review.md` | `verdict` | `APPROVED` |
|
||
| `13-test-report.md` | `result` | `PASS` |
|
||
| `15-staging-log.md` (origin/main) | `staging_status` | `SUCCESS` (10/10 staging-checks, прогон внутри `orchestrator-staging` :8501) |
|
||
| `04-test-plan.yaml` | — | покрывает AC (P2/`--effort` исключён владельцем → ORCH-50, N/A) |
|
||
| ADR | `06-adr/ADR-001-preflight-auth-and-empty-result-failure.md` | заведён |
|
||
| `CHANGELOG.md` | — | обновлён |
|
||
|
||
Стадия `deploy` достижима только потому, что условный staging-гейт
|
||
(`check_staging_status`, реальный для self-hosting repo=orchestrator) — зелёный.
|
||
|
||
## Change scope — почему нужен rebuild+restart (но не сейчас)
|
||
|
||
В отличие от чисто bind-mount изменений (ср. ORCH-048), ORCH-044 меняет
|
||
**рантайм-код `src/`**, который копируется в образ (`/app/src`) и исполняется
|
||
прод-процессом:
|
||
|
||
| Файл | Тип | Как доезжает до прода |
|
||
|------|-----|------------------------|
|
||
| `src/preflight.py` | runtime (в образе) | требует **rebuild + restart** контейнера |
|
||
| `src/agents/launcher.py` | runtime (в образе) | требует **rebuild + restart** контейнера |
|
||
| `src/config.py` | runtime (в образе) | требует **rebuild + restart** контейнера |
|
||
| `docs/**`, `CHANGELOG.md` | docs | мерж в `main` |
|
||
| `tests/**` | тесты, не деплоятся | n/a |
|
||
|
||
`rebuild_required: true`. Чтобы новый token-free auth-гейт preflight и
|
||
«пустой лог ⇒ провал» вступили в силу на проде, прод-инстанс `orchestrator`
|
||
(8500) должен быть пересобран и перезапущен. **Это делает Владелец через
|
||
деплой-хук после мерджа**, не данный агент.
|
||
|
||
## Self-hosting policy
|
||
|
||
> ORCH-044 правит слой запуска агента (preflight/launcher/config) того самого
|
||
> инструмента, который СЕЙЧАС обслуживает все прод-проекты (orchestrator +
|
||
> enduro-trails) из одного инстанса `orchestrator:8500` с общей БД и общей
|
||
> очередью.
|
||
|
||
Поэтому в рамках этой стадии:
|
||
- **Прод-контейнер `orchestrator` (8500) НЕ трогался** — ни рестарта, ни
|
||
пересборки (групповой риск для всех проектов).
|
||
- **Деплой-хук** `scripts/orchestrator-deploy-hook.sh` (реальный docker/SSH)
|
||
**не запускался** этим агентом (не было явной инструкции Owner; зарезервирован
|
||
за ним, ORCH-36). У хука есть health-цикл (10×6с) + авто-rollback —
|
||
страховка на момент боевого rebuild+restart.
|
||
- **Страховка пройдена:** staging (8501, изолированная БД/реестр) — зелёный
|
||
перед прод-деплоем (ORCH-35).
|
||
|
||
## Deploy action
|
||
|
||
- **Prod rebuild/restart:** требуется (`src/` изменён), **не выполнен** этим
|
||
агентом (guardrail self-hosting). Выполняется Владельцем через деплой-хук
|
||
после мерджа в `main`.
|
||
- **Эффективный rollout:** мерж ветки в `main` → Owner запускает
|
||
`scripts/orchestrator-deploy-hook.sh` (прод-режим: `TARGET_SERVICE=orchestrator
|
||
TARGET_PORT=8500 COMPOSE_PROFILE=""`) с health-check + авто-rollback.
|
||
|
||
## Verdict
|
||
|
||
`deploy_status: SUCCESS` — все гейты зелёные, артефакт-вердикт зафиксирован,
|
||
боевой rebuild+restart делегирован Owner-хуку. Прод-инстанс не затронут.
|