61b8abe134
reviewer(ET): auto-commit from reviewer run_id=499
CI / test (push) Successful in 33s
CI / test (pull_request) Successful in 31s
2026-06-09 21:10:24 +03:00
ad5bd901e3
feat(cancel): STOP-status task cancellation + relaunch-hole close (ORCH-090)
...
CI / test (push) Successful in 33s
CI / test (pull_request) Successful in 32s
Introduce the dedicated Plane STOP status as a single declarative task-cancel
mechanism: stop the active agent (graceful SIGTERM cascade), cancel all jobs
(terminal `cancelled`, never requeued), remove the worktree + delete the remote
feature branch (never main, never force-push), drive the task to the new
system-terminal state `cancelled` and tombstone the natural keys so a later
"To Analyse" re-creates it from scratch (docs artefacts preserved). STOP during a
critical merge/deploy window is deferred until the irreversible step finishes
honestly. Also closes the relaunch hole: handle_status_start relaunch is gated to
the `analysis` stage; the only pipeline-start entry point remains "To Analyse".
Cross-cutting (adr-0026): the "task terminal" predicate is widened {done} ->
{done, cancelled} in serial_gate / task_deps / stages sink + reaper/worker
requeue guards. STAGE_TRANSITIONS exit-gates / QG_CHECKS / check_* are unchanged
(`cancelled` is a sink, not a new edge). Additive, never-raise, restart-safe,
under kill-switch ORCH_STOP_STATUS_ENABLED (off -> zero regression).
New: src/cancel.py (leaf), src/gitea.py (delete_remote_branch), tasks columns
cancelled_at/cancel_requested_at, jobs status `cancelled`, GET /queue `stop` block.
Tests: tests/test_stop_status.py (TC-01..TC-14 + D7); full suite green (1345).
Docs updated in-PR (architecture README, CLAUDE.md, README.md, .env.example,
CHANGELOG). ADR-001 D4 refinement: plane_issue_id is tombstoned too (the lookup
ORs on it) — original UUID recoverable from the parseable suffix.
Refs: ORCH-090
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 21:01:57 +03:00
269cbde3e3
architect(ET): auto-commit from architect run_id=497
CI / test (push) Successful in 30s
2026-06-09 20:37:21 +03:00
610619edc2
analyst(ET): auto-commit from analyst run_id=496
CI / test (push) Successful in 29s
2026-06-09 20:06:31 +03:00
cd24643c98
docs: init ORCH-090 business request
CI / test (push) Successful in 29s
2026-06-09 19:59:15 +03:00
deploy-finalizer
c816b33c19
deploy(ORCH-036): finalize SUCCESS for ORCH-062
CI / test (push) Successful in 29s
2026-06-09 19:59:13 +03:00
5ead4543ee
tester(ET): auto-commit from tester run_id=494
CI / test (push) Successful in 33s
CI / test (pull_request) Successful in 29s
2026-06-09 19:55:00 +03:00
247915e3d1
reviewer(ET): auto-commit from reviewer run_id=493
2026-06-09 19:55:00 +03:00
d2604e42cd
architect(ET): auto-commit from architect run_id=491
2026-06-09 19:55:00 +03:00
621c1352e1
analyst(ET): auto-commit from analyst run_id=490
2026-06-09 19:55:00 +03:00
e86ea82501
docs: init ORCH-062 business request
2026-06-09 19:55:00 +03:00
1b03f6b3a7
docs(ORCH-062): staging gate log — SUCCESS (8/10, C9a/C9b infra-waived)
2026-06-09 19:54:36 +03:00
deploy-finalizer
2bd3bb75d4
deploy(ORCH-036): finalize SUCCESS for ORCH-063
CI / test (push) Successful in 30s
CI / test (pull_request) Successful in 30s
2026-06-09 19:08:50 +03:00
efd744f766
tester(ET): auto-commit from tester run_id=488
CI / test (push) Successful in 35s
CI / test (pull_request) Successful in 32s
2026-06-09 19:04:36 +03:00
fb4203b8f9
reviewer(ET): auto-commit from reviewer run_id=486
2026-06-09 19:04:36 +03:00
8759cb7df8
feat(disk-watchdog): host-FS fill heartbeat + Telegram alert at >=85% (ORCH-063)
...
Adds src/disk_watchdog.py — a background daemon thread modelled on
reconciler/job_reaper that measures host-FS fill via the mounted bind-paths
(/repos, /app/data) with shutil.disk_usage and Telegram-alerts the operator at
>= threshold (default 85%). The missing proactive signal: on 07.06.2026 the
mva154 host disk silently hit 100% and stalled the whole self-hosting pipeline.
- Pure decide_action(used_pct, threshold, prev, now, realert_s): alert on
crossing up, cooldown re-alert, single recovery below threshold (unit-tested
without a thread/timer; clock injected).
- measure_paths: shutil.disk_usage per path, dedup by st_dev, per-path
never-raise (a broken path never fails the tick).
- Config flags ORCH_DISK_MONITOR_* with defensive validation (threshold 1..100,
positive intervals -> default + warning). Kill-switch -> daemon does not start.
- Additive disk_monitor block in GET /queue; start/stop in main.lifespan.
- never-raise (per-path/per-tick/per-send); STAGE_TRANSITIONS/QG_CHECKS/check_*/
DB schema untouched, no migration (anti-spam state in-memory).
Tests: tests/test_disk_watchdog.py (TC-01..TC-12, 18 cases); full suite green
(1296). Docs: INFRA.md, .env.example, CHANGELOG.md (architecture/README.md +
ADRs authored at architecture stage).
Refs: ORCH-063
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 19:04:36 +03:00
4d9251c698
architect(ET): auto-commit from architect run_id=484
2026-06-09 19:04:36 +03:00
8ace9f880d
analyst(ET): auto-commit from analyst run_id=483
2026-06-09 19:04:36 +03:00
8c97a6ab1c
docs: init ORCH-063 business request
2026-06-09 19:04:36 +03:00
a499ee8e42
docs(ORCH-063): staging gate log — SUCCESS (8/10, C9a/C9b infra-waived)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 19:04:16 +03:00
deploy-finalizer
2265cb4a93
deploy(ORCH-036): finalize SUCCESS for ORCH-092
CI / test (push) Successful in 30s
CI / test (pull_request) Successful in 29s
2026-06-09 17:50:41 +03:00
caea18577a
tester(ET): auto-commit from tester run_id=481
CI / test (push) Successful in 37s
CI / test (pull_request) Successful in 33s
2026-06-09 17:46:27 +03:00
ef43e4a48c
reviewer(ET): auto-commit from reviewer run_id=480
2026-06-09 17:46:27 +03:00
6cae171745
docs(prompts): ORCH-092 — аудит 6 агент-промптов (расхардкод, escalation, чистка)
...
Эпилог эпика ORCH-52. Docs/prompts-only: src/**, STAGE_TRANSITIONS, QG_CHECKS,
machine-verdict ключи и схема БД не тронуты; frontmatter_validation_strict=False.
- FR-1/FR-2: копируемые frontmatter-примеры всех 6 промптов расхардкожены
(created_at: <YYYY-MM-DD> / model_used: <resolve ORCH-41> + врезка «не копируй
буквально, подставь date +%F и модель из конфига»); литерал claude-opus-4-8 —
только справка в таблице полей.
- FR-3: имена check_* в промптах сверены с QG_CHECKS — несовпадений нет
(закреплено интеграционным тестом TC-03).
- FR-4: developer «PR>1500 → разбивай» переформулирован в эскалацию на уровне задач.
- FR-5: секция <escalation> у developer/reviewer/tester (после </success_criteria>):
back-to:analysis / back-to:dev / REQUEST_CHANGES.
- FR-6: deployer — критичные self-hosting-запреты в видной рамке в начале <context>.
- FR-7: tester обогащён worktree-путём, smoke serial_gate (ORCH-088), покрытием TC.
- FR-8: из reviewer удалена мёртвая строка «тот же экземпляр Developer».
- FR-9 (ADR-001 D1): убран ручной git rebase origin/main — свежесть базы держит
движок (serial-gate ORCH-088 + auto_rebase_onto_main под merge-lease).
- FR-10 (ADR-001 D2): deployer.md оставлен на английском как нормативное исключение.
- FR-11: расширен tests/test_agent_prompts_canon.py (ORCH-092 TC-01…TC-08);
канон 52d и test_agent_frontmatter_no_model.py зелёные; полный регресс 1278 зелёный.
Документация: 6 промптов, CLAUDE.md, docs/architecture/README.md, CHANGELOG.md.
Refs: ORCH-092
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 17:46:27 +03:00
f61d963f9b
architect(ET): auto-commit from architect run_id=478
2026-06-09 17:46:27 +03:00
484069851e
analyst(ET): auto-commit from analyst run_id=477
2026-06-09 17:46:27 +03:00
334b8dd8fd
docs: init ORCH-092 business request
2026-06-09 17:46:27 +03:00
d0b2208087
docs(ORCH-092): staging gate log — SUCCESS (8/10, C9a/C9b infra-waived)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 17:46:08 +03:00
deploy-finalizer
99db59a277
deploy(ORCH-036): finalize SUCCESS for ORCH-079
CI / test (push) Successful in 35s
2026-06-09 16:37:43 +03:00
991443b215
tester(ET): auto-commit from tester run_id=475
CI / test (push) Successful in 34s
CI / test (pull_request) Successful in 34s
2026-06-09 16:33:33 +03:00
499a040ee6
reviewer(ET): auto-commit from reviewer run_id=474
2026-06-09 16:33:33 +03:00
07a2d6ad1e
architect(ET): auto-commit from architect run_id=472
2026-06-09 16:33:33 +03:00
7d1346d90f
analyst(ET): auto-commit from analyst run_id=471
2026-06-09 16:33:33 +03:00
4a2a50c12b
docs: init ORCH-079 business request
2026-06-09 16:33:33 +03:00
0d4f579c3f
docs(ORCH-079): staging gate log — SUCCESS (8/10, C9a/C9b infra-waived)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 16:32:52 +03:00
deploy-finalizer
8e2179a890
deploy(ORCH-036): finalize SUCCESS for ORCH-078
CI / test (push) Successful in 30s
2026-06-09 15:52:56 +03:00
da709895f9
tester(ET): auto-commit from tester run_id=469
CI / test (push) Successful in 35s
CI / test (pull_request) Successful in 33s
2026-06-09 15:48:43 +03:00
fb9c133ef9
reviewer(ET): auto-commit from reviewer run_id=468
2026-06-09 15:48:43 +03:00
572b3172cd
docs(ORCH-078): ORCH-52e — стандарт трассировки ORCH-NNN + правило чтения ADR
...
Слой 4 (трассировка) эпика ORCH-52, замыкающий цепочку 52b/52c/52d.
Docs + prompts-only: src/**, STAGE_TRANSITIONS, QG_CHECKS, src/frontmatter.py,
схема БД — не тронуты; новый QG не вводится; ретро-фит 51 маркера вне объёма.
- Новый нормативный стандарт docs/_standards/TRACEABILITY.md: формат маркера,
правило размещения, чтение истории с реальным проверяемым примером
(src/serial_gate.py → ORCH-088 → ADR-001-serial-gate.md), fallback-доступ
(git show origin/main:...), анти-археология (3+ → сводный сквозной ADR),
каноничный текст правила чтения (единый источник).
- Точечные аддитивные врезки в промпты (52d-канон не переписан): developer.md
(правило чтения чужого маркера + fallback, «❌ X → ✅ Y»), architect.md
(правило чтения + анти-археология), reviewer.md (усиление оси «Соответствие
ADR» под-пунктом: слом маркированного инварианта → finding ≥P1). Все три
ссылаются на единый текст в TRACEABILITY.md, не копируют (анти-дубль BR-6).
- Сопутствующе: CLAUDE.md, docs/architecture/README.md (слой 4 эпика 52),
CHANGELOG.md.
- Анти-регресс: расширен tests/test_agent_prompts_canon.py (9 новых проверок);
проверки 52d и test_agent_frontmatter_no_model.py зелёные;
полный pytest tests/ -q зелёный (1253 passed), src/ не изменён.
Refs: ORCH-078
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 15:48:43 +03:00
14f037a8a9
architect(ET): auto-commit from architect run_id=466
2026-06-09 15:48:43 +03:00
8064ae2c5d
analyst(ET): auto-commit from analyst run_id=465
2026-06-09 15:48:43 +03:00
5349a41182
docs: init ORCH-078 business request
2026-06-09 15:48:43 +03:00
e8523ac116
docs(ORCH-078): staging gate log — deploy-staging SUCCESS
...
Staging suite passed inside orchestrator-staging (exit 0); C9a/C9b waived (ORCH-061).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 15:48:16 +03:00
deploy-finalizer
9fd99cb67a
deploy(ORCH-036): finalize SUCCESS for ORCH-077
CI / test (push) Successful in 31s
2026-06-09 15:12:39 +03:00
7619f12169
tester(ET): auto-commit from tester run_id=463
CI / test (push) Successful in 35s
CI / test (pull_request) Successful in 30s
2026-06-09 15:08:27 +03:00
93d5c9c296
reviewer(ET): auto-commit from reviewer run_id=462
2026-06-09 15:08:27 +03:00
b21e9d8898
architect(ET): auto-commit from architect run_id=460
2026-06-09 15:08:27 +03:00
bd5d681083
analyst(ET): auto-commit from analyst run_id=459
2026-06-09 15:08:27 +03:00
9deff540f5
docs: init ORCH-077 business request
2026-06-09 15:08:27 +03:00
8455e31dae
deploy-staging(ORCH-077): staging gate SUCCESS
...
Staging check suite exit 0 (8/10 REAL green; C9a/C9b infra-waived per ORCH-061).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-09 15:08:02 +03:00