mirror of
https://github.com/Matysh/houseplan-card
synced 2026-10-07 15:09:30 +00:00
feat(process): a failed show verdict re-routes to ask without a fresh budget (#726)
A non-green show verdict that found "something to decide" went down the same path as "fix the code": S6 with a limit of 2. Promoting the task to track:ask was left to the agent's memory, with no named criterion and no trace, and the exhausted budget only surfaced on the next S7 - after a fix nobody would read. The structured verdict now carries `route` (fix | reclassify) and an optional `criterion` (one of the six show criteria of PROCESS.md section 5). The trust boundary reads a missing route as fix, rejects one outside the dictionary and rejects reclassify on a green verdict. `reviewRoute` in process-track.mjs is the single decision: on a code review of an unconfirmed show it moves the task to track:ask and S3-spec; on an owner-confirmed show it adds `blocked` and asks the owner; anywhere else reclassify degrades to fix with a note. The verdict that spends the last cycle sets review-4 at once; the stage budget is shared across tracks, so promotion changes the limit (4), not the count. The "Решение по вердикту" step makes one `process-track.mjs route` call (from dev, like the track step) and only executes its output: comment from a file, labels from add/remove lists, status via status-label.mjs as before. The track step also emits `confirmed` and a `route_note` for the review prompt; the review document anchor gains a route tail that the old reader still parses; wait-verdict reports the two new pipeline comments. The guard's own spent >= limit check stays as the safety net. Issue: #726 User-Visible: no Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018qZfe7YS4rqEMKoVeS3GKd
This commit is contained in:
@@ -60,6 +60,12 @@
|
||||
`S7`; на `show` ревьюер спросит, где поведение зафиксировано, — нет ссылки,
|
||||
повысь трек до `ask` до `S7`. Классы и следствие печатает пакет задачи
|
||||
([§5](../../PROCESS.md#5-треки-ship-show-ask--метка-владельца)).
|
||||
- Вердикт код-ревью `show` с `route: reclassify` конвейер исполняет сам:
|
||||
`track:ask`, `S3-spec` и комментарий с критерием §5 (#726). Дальше — полное ТЗ
|
||||
по §7.1 в теле issue под `## ТЗ` и ревью ТЗ; код остаётся в ветке, код класса A
|
||||
не пушить до `S5`. Бюджет код-ревью не обнуляется, лимит — 4. Подтверждённый
|
||||
владельцем `show` получает `blocked` и вопрос владельцу
|
||||
([§5](../../PROCESS.md#5-треки-ship-show-ask--метка-владельца)).
|
||||
- `track:show`: `S2-analysis` → `S5-ready`, до трёх AC автор пишет в теле
|
||||
issue до перехода; ревью ТЗ нет, лимит код-ревью 2. Уместен, когда всё
|
||||
сразу: сложность и риск ≤ 3, одна поверхность, нет миграции, нового
|
||||
@@ -102,8 +108,9 @@
|
||||
открытых продуктовых вопросов. На `ship` и `show` пункты DoR закрываются
|
||||
словом «нет» ([§2.5](../../PROCESS.md#25-готово-к-разработке-dor)).
|
||||
- Лимит — 4 цикла ревью, на `track:show` 2 цикла код-ревью; зелёный вердикт цикла
|
||||
не тратит; исчерпание — решение владельца: разделить, отклонить, арбитраж
|
||||
([§4](../../PROCESS.md#4-лимит-циклов-ревью-4)).
|
||||
не тратит; бюджет этапа один на все треки задачи; вердикт, исчерпавший
|
||||
бюджет, сразу ставит `review-4`; исчерпание — решение владельца: разделить,
|
||||
отклонить, арбитраж ([§4](../../PROCESS.md#4-лимит-циклов-ревью-4)).
|
||||
|
||||
## Реализация (`S6-in-progress`)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user