Skip to content

feat(consilium): develop-scope chooser — ship P0s as one small MR per round - #580

Merged
100rd merged 1 commit into
mainfrom
feat/develop-scope-p0
Jul 25, 2026
Merged

feat(consilium): develop-scope chooser — ship P0s as one small MR per round#580
100rd merged 1 commit into
mainfrom
feat/develop-scope-p0

Conversation

@100rd

@100rd 100rd commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Проблема

Develop-раунд реализует все action-points вердикта в одну ветку → один огромный MR (5–10 тяжёлых задач), который невозможно ревьюить.

Решение — использовать раундовую природу лупа

  • controller.develop(loopId, {scope: "p0"|"all"}): «p0» режет вердикт до P0-задач; absent/«all» — байт-в-байт прежнее поведение.
  • Роут: опциональный body.scope с валидацией (иначе 400).
  • UI: кнопка «Hand off to SDLC» открывает выбор, когда есть и P0, и не-P0: «Only P0s (n) — small MR» vs «All action points (m)». Смержил маленький MR → следующий review-раунд сам пересчитает и понесёт остаток.

Тесты

166 passed (2 новых: passthrough scope, 400 на мусорный scope). tsc + vite build чистые.

… round

A develop round implemented EVERY verdict action point in one branch,
producing a single huge MR (5-10 heavyweight tasks) that no human can
review. The loop is round-based by design — use that: let the operator
scope a round to the P0s, merge a small MR, and let the next review
round re-derive and carry the remainder.

- controller.develop(loopId, {scope?: 'p0'|'all'}) filters the verdict's
  action points to the P0 slice on 'p0'; absent/'all' is byte-identical.
- route: optional body.scope validated ('p0'|'all' else 400); absent
  scope keeps the historical single-arg controller call.
- UI: 'Hand off to SDLC' opens a scope chooser when the verdict has both
  P0s and non-P0s — 'Only P0s (n) — small MR' vs 'All action points (m)';
  no meaningful choice ⇒ direct hand-off as before.

develop-route/fsm/autoplan: 166 passed (2 new). tsc + vite build clean.
@100rd
100rd merged commit c387fc8 into main Jul 25, 2026
12 checks passed
@100rd
100rd deleted the feat/develop-scope-p0 branch July 25, 2026 11:47
100rd added a commit that referenced this pull request Jul 29, 2026
…e: top) (#581)

The PDO-819 develop round shipped all 6 action points in one ~100-file
MR the operator closed as unreviewable. The binary p0/all chooser (#580)
dead-ends after the P0 merge: the next verdict starts at P1 and the p0
scope filters to empty.

- filterDevScope (pure, exported, unit-tested): scope 'top' keeps only
  the HIGHEST priority tier still present (P0→P1→P2→P3→unprioritized) —
  each round ships one small MR and the next round's verdict naturally
  carries the following tier, all the way to convergence.
- develop()/route/hook accept 'top'; the UI chooser offers
  'Only <tier> (n) — small MR' with the tier resolved dynamically.
- ADR-005 records the full mechanism: Phase 2 (stacked MRs in one
  round, bottom-up merge) and Phase 3 (repo-map size-aware grouping)
  as proposed follow-ups.

loop-fsm + develop-route: 161 passed (4 new). tsc + vite build clean.

Co-authored-by: Igor Gerasimov <gerasimowigor@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant