diff --git a/memory/2026-06-08.md b/memory/2026-06-08.md index d8f6d31..320ab93 100644 --- a/memory/2026-06-08.md +++ b/memory/2026-06-08.md @@ -55,6 +55,12 @@ - Plane-статусы переходов: To Analyse → Analysis (`cb834d55`) → In Review (`c52e99b9`, approve-pending BRD) → Approved (`63f2c8fe`) → Architecture (`795cc32f`). UUID approved для ORCH = `63f2c8fe-dcda-4ace-952f-dd88bd0118ff`. - Решение «state.group vs allowlist» правильно оставлено архитектору в ADR. +## 🟢 ORCH-69 заведена и запущена (05:09 UTC) — QG-0 title-лимит в параметр +- Решение Славы: «заведи задачу, сделаем как параметр, 200 по умолчанию». +- **Предыстория:** выяснили что 80 в QG-0 — НЕ техническое ограничение. Проверила все места ниже по течению: slug ветки `re.sub(...)[:30]` (webhooks/plane.py:488) режется независимо + выкидывает кириллицу ([^a-z0-9]→дефис); БД `title TEXT` без лимита; Telegram-карточка `html.escape(title)` без обрезки; worktree-путь по branch (=work_item_id+slug[:30]), не по title. Расширять безопасно. +- **ORCH-69** (seq=69, id=35338a57-d905-4958-b70c-fa1afd66110f): новый `ORCH_QG0_TITLE_MAX` (дефолт 200) в config.py, `_qg0_errors` читает из settings, текст ошибки динамичный. Нижние лимиты (title<5, desc<20) НЕ трогать. Аддитивно/обратносовместимо (200>80). +- Запущена: stage=analysis, ветка `feature/ORCH-069-qg-0-title-orch-qg0-title-max-`. ⚠️ Обе (68 и 69) трогают `webhooks/plane.py` — следить за merge-конфликтом (merge-gate должен поймать, но держать в голове). + ## ⚠️ QG-0 — правила заголовка/описания Plane-задач для орка (важно!) - **QG-0** = первый quality gate конвейера, функция `_qg0_errors(name, description)` в `src/webhooks/plane.py:366`. Проверяет **заголовок (name) и описание** до старта аналитика. - Три проверки: **Title ≥ 5**, **Title ≤ 80** (хардкод, без конфига), **Description ≥ 20** символов (`.strip()`). `len()` по Unicode-символам (кириллица = 1 символ, не байт).