Skip the second `[verify]` pass when the review is skipped and the tree is unchanged
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 49/100
Direzione di ricerca
Start by tracing _skip_review_and_commit through _review_verify_gate, _verify_review, verify_review_stories, and _verify_review_commands, then locate the post-dev verify-command-result journal record. Check how verification settings and Git tree state are represented. Done means unchanged trees can reuse a prior result only when enabled, while changes still run verification and the reuse is recorded in the journal.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe your idea
When the review session is skipped (review-not-recommended → review-skipped), _skip_review_and_commit runs the review verify gate, which executes [verify] commands again on a working tree that has not changed since the post-dev verify that just passed. Allow that second pass to reuse the first result when nothing changed.
Why is this needed?
The two passes exist for a good reason: on the review path, a review session can change code between them, and the gate proves what goes into the commit. On the skip-review path no session runs in between, so the second pass re-proves the same tree with the same commands.
With a slow suite this is the dominant cost of a story. In our project [verify] commands = ["npm test"] takes 11–14 minutes on Windows, so every story whose review is skipped spends that time twice. In one run (0.12.0), the post-dev verify-command-result passed at 15:15:32 and the review gate's npm test started in the same second on the identical tree. Checked against main (v0.13.2): _skip_review_and_commit → _review_verify_gate → _verify_review → verify_review_stories → _verify_review_commands still runs the commands unconditionally.
How should it work?
A deterministic check, no LLM involved:
- After the post-dev verify passes, record a fingerprint of what it verified:
HEADplus a hash of the working tree, tracked and untracked but not ignored (for examplegit add -Ainto a temporary index,GIT_INDEX_FILE, followed bygit write-tree), together with the resolved[verify] commands. - At the review gate on the skip-review path, compute the same fingerprint. If it matches, journal a
verify-command-resultthat points to the earlier pass (for examplereused_from_sequence: N) instead of running the commands again. The spec-done gates still run as today. - Any difference (a fix session, a review session, an operator edit, a policy change) runs the commands as now.
Because suites can depend on state outside git (services, clocks, caches), it could be opt-in, for example [verify] reuse_unchanged = true, defaulting to today's behaviour.
PR
Not working on it. Happy to test a build on Windows.
Additional context
- Platform: Windows 11, psmux 3.3.8, Claude Code adapter, stories mode (
bmad-loop run --spec),[gates] mode = "none". - The journal already has what step 2 needs (
verify-command-resultwithverification_stageandverification_sequence), so reuse stays auditable.
- Lingua principale
- Python
- Stelle
- 165
- Fork
- 69
- Merge medio
- 1g 1h
- PR unite (30g)
- 79
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di bmad-code-org/bmad-loop
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 69/100
bmad-code-org/bmad-loop#973 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
bmad-code-org/bmad-loop#965 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
bmad-code-org/bmad-loop#1004 ·
I maintainer di solito rispondono entro 1 giorno
-
tickets: an injected plan_halt result for a built plan escalates with stopped-attempt wordingAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 36/100
bmad-code-org/bmad-loop#972 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 1-2 giorni Idoneità per principianti 49/100
bmad-code-org/bmad-loop#971 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di bmad-code-org/bmad-loop
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
[oblt-aw][autodoc] Document obs-aw-automerge contract and fix automerge doc inconsistenciesForse già presa @github-actions l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
admission-deferred priority: medium status: ready work-class: scoped
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
melodic-software/claude-code-plugins#10887 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
backend bug good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
PoCInnovation/Distribox#255 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
google/langextract#598 ·
I maintainer di solito rispondono entro 1 giorno