Resolves the REQUEST_CHANGES findings on ORCH-114 (durable transition-ownership lease + expected-stage CAS): P1 — documentation = golden source: - .env.example: add ORCH_TRANSITION_LEASE_ENABLED / ORCH_TRANSITION_LEASE_REPOS (canon of 100% start keys, ORCH-101), next to the other gate kill-switches. - CLAUDE.md: add the ORCH-114 passport section (mechanism, invariant, flags, ADR links) so a future agent editing advance_stage/reaper/webhooks finds the ownership invariant in the first mandatory-read doc (ORCH-078 traceability index). P2 — should-fix: - docs/overview/ (system showcase, ORCH-011): add transition_lease to tech-data-model.md (helper tables), tech-observability.md (/queue blocks) and tech-architecture.md (components). - ADR-001 D4 alignment: the four side-effectful-edge rollback handlers (_handle_merge_gate_rollback / _handle_security_gate / _handle_coverage_gate / _handle_image_freshness) now write `development` through the expected-stage CAS via a shared _rollback_stage_cas helper (defence against the rollback↔done contradiction, BR-6) instead of a bare unconditional update_task_stage. Under the held lease the sole owner always wins; a lost race aborts WITHOUT side effects. Kill-switch off / out-of-scope repo -> degenerates to the prior write -> 1:1. - Test isolation: make tests/test_webhooks.py order-independent by pinning the proj-1 registry per-test (mirrors test_webhook_dedup.proj_registry); it had only passed by relying on import order. Drop the needless module-level ORCH_DB_PATH setdefault in test_orch114 (fresh_db already isolates db_path). New regression tests (TC-11): in-region rollback writes route through CAS; rollback CAS wins when at expected stage; rollback CAS-lost does NOT clobber `done`; kill-switch-off rollback degenerates to the unconditional write. ruff clean (src/stage_engine.py, src/transition_lease.py); full suite 2052 passed. Refs: ORCH-114 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Витрина системы — Orchestrator
Что это за система. Orchestrator — автономная фабрика разработки: конвейер из шести ИИ-агентов (аналитик → архитектор → разработчик → ревьюер → тестировщик → деплойер), который проводит задачу от бизнес-постановки до выкладки на прод. Человек ставит задачу и принимает результат; всё между — автономно, под защитой машинных гейтов качества. Платформа ведёт несколько проектов из одного инстанса, дорабатывает сама себя (self-hosting) и тиражируется на новые хосты.
Зачем эта витрина. Это единая точка входа в документацию системы: связное описание на двух уровнях — бизнес (для нетехнического читателя) и технический (7 блоков), с маршрутами чтения для трёх аудиторий и слайдо-готовой основой для презентации. Витрина — обзор; за деталями она ведёт ссылками в инженерные golden sources, не подменяя их.
Состав витрины
| Файл | О чём |
|---|---|
| business.md | Бизнес-уровень: проблема, решение, что умеет, ценность, сценарии |
| tech-architecture.md | Блок 1: компоненты и связи, схема потока |
| tech-pipeline.md | Блок 2: конвейер, стадии, гейты, откаты, человеческие гейты |
| tech-agents.md | Блок 3: 6 ролей агентов, артефакты, модель/эффорт |
| tech-data-model.md | Блок 4: каноническая модель объектов, словарь терминов |
| tech-integrations.md | Блок 5: Plane, Gitea, LLM, Telegram |
| tech-quality-security.md | Блок 6: гейты качества, безопасность, секреты |
| tech-observability.md | Блок 7: наблюдаемость, аналитика, журнал уроков |
| presentation.md | Слайдо-источник презентации + сборка .pptx |
Маршруты чтения
Я заказчик
- business.md — проблема, решение, ценность.
- business.md → Сценарии использования — как это выглядит в работе.
- presentation.md — слайдовая версия рассказа (собирается в PowerPoint).
- Развернуть у себя: LITE_SETUP (своя инфраструктура) или BUNDLED_SETUP (весь стек одним комплектом).
Я менеджер проекта
- business.md — что платформа делает и где в процессе человек.
- tech-pipeline.md — конвейер, статусная модель Plane, человеческие гейты (одобрение постановки, подтверждение прод-деплоя).
- tech-observability.md — как следить за ходом: живая Telegram-карточка, статусы, стоимость.
Я разработчик
- Тех-блоки 1→7: архитектура → конвейер → агенты → модель объектов → интеграции → качество/безопасность → наблюдаемость.
- Инженерный справочник архитектуры и internals — детали реализации.
- Стандарты (структура доков конвейера), HANDOFF_PROTOCOL (машинный контракт стадий), TRACEABILITY (маркеры решений).
- Реестр сквозных ADR — история архитектурных решений.
- CLAUDE.md — паспорт проекта и правила для агентов.
Норматив сопровождения
Изменил функциональность платформы → обнови витрину
docs/overview/в том же PR.
Какой файл правится при каком классе изменений:
| Класс изменения | Файл витрины |
|---|---|
| Новый компонент / демон / поток данных | tech-architecture.md |
| Стадии, гейты, под-гейты, маршруты задач | tech-pipeline.md |
| Роли агентов, промпты, модель/эффорт | tech-agents.md |
| Таблицы БД, объекты, термины | tech-data-model.md |
| Plane / Gitea / LLM / Telegram | tech-integrations.md |
| Гейты качества, секреты, self-hosting-страховки | tech-quality-security.md |
| Эндпоинты наблюдаемости, метрики, уроки | tech-observability.md |
| Новая способность уровня продукта | business.md + при необходимости presentation.md |
Каркас и машинно-проверяемые факты витрины (перечень стадий, имена гейтов, полнота агентов,
валидность ссылок) защищены структурными тестами tests/test_system_docs.py — дрейф рвёт CI.
Прозу проверяет reviewer: необновлённая витрина при изменении описанной в ней функциональности —
finding ≥ P1 (расширение оси обзорных доков).
Витрина — обзорный слой документации. Текущее состояние и реестр доработок — CLAUDE.md; концепция развития — Product Vision.