3.5 KiB
3.5 KiB
Технические риски — ORCH-068
| ID | Риск | Вероятность | Влияние | Митигация |
|---|---|---|---|---|
| R-1 | Plane /states/ не отдаёт поле group (старая версия API / урезанный ответ) → терминал-исключение по группе не срабатывает |
Низкая | Высокое (рецидив livelock) | Fallback на логические ключи терминалов {done, cancelled} при отсутствии group; never-raise → консервативная тишина при сбое резолва |
| R-2 | Over-exclusion: легитимная задача в started/review-группе ошибочно классифицирована как терминал → пропущена легитимная разблокировка (регресс INV-6) | Низкая | Среднее | Исключаем ТОЛЬКО группы completed/cancelled; approved/rejected относятся к started/unstarted → не задеты; регресс-тесты TC-06/TC-07 |
| R-3 | Гонка before/after: между stage_before и stage_after живой webhook двигает стадию → ложный _note_unblock |
Очень низкая | Низкое | active-job guard + max_concurrency=1 уже сериализуют; дедуп TR-3 подавляет повтор; ложный unblock безвреден (0 jobs/токенов) |
| R-4 | TTL 300s провоцирует частые /states/-перезапросы при многих проектах |
Низкая | Низкое | 1 запрос/проект/5 мин — пренебрежимо; ORCH_PLANE_STATES_TTL_S=0 отключает TTL |
| R-5 | TTL-перезапрос в момент недоступности Plane → временный fallback на _DEFAULT_STATES (enduro) для не-enduro проекта |
Низкая | Среднее | Поведение идентично текущему cold-cache fallback; самозалечивается следующим успешным запросом; не хуже статус-кво |
| R-6 | Дедуп-словарь растёт неограниченно (по issue_id) | Очень низкая | Низкое | Ключи — только реально разблокированные issue (редки); сбрасывается при рестарте; при необходимости — ограничить размер/LRU |
| R-7 | Изменение в get_project_states (кэш-запись) ломает прочих потребителей формы возврата |
Низкая | Высокое | Внешняя сигнатура и форма {logical_key: uuid} сохранены; группа — отдельный accessor; покрыто TC-12 (совместимость по умолчанию) |
| R-8 | Self-hosting: правка в работающем прод-инструменте | — | Высокое | Обязательный staging-гейт (8501); запрет рестарта прод-контейнера в рамках задачи; INV-7 |
Замечания
- Все правки локальны (
reconciler.py,plane_sync.py,config.py); схема БД, реестрыSTAGE_TRANSITIONS/QG_CHECKS, контрактыhandle_*, F-1/F-3 — не затронуты (AC-10). - Тесты офлайн (мок Plane API / Telegram /
_dispatch) — сетевых вызовов в CI нет.