Skip the second `[verify]` pass when the review is skipped and the tree is unchanged
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 49/100
Hướng nghiên cứu
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.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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.
- Ngôn ngữ chính
- Python
- Star
- 165
- Fork
- 69
- Merge trung bình
- 1 ngày 1 giờ
- Pull request đã merge (30 ngày)
- 79
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của bmad-code-org/bmad-loop
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 69/100
bmad-code-org/bmad-loop#973 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
bmad-code-org/bmad-loop#965 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
bmad-code-org/bmad-loop#835 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 72/100
bmad-code-org/bmad-loop#1004 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
tickets: an injected plan_halt result for a built plan escalates with stopped-attempt wordingĐang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 36/100
bmad-code-org/bmad-loop#972 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của bmad-code-org/bmad-loop
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
521xueweihan/HelloGitHub#4150 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
aws-samples/sample-per-model-bedrock#595 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
Maintainer thường phản hồi trong vòng 1 ngày
-
bug connectors
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 67/100
pyinfra-dev/pyinfra#2036 ·
Maintainer thường phản hồi trong vòng 9 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày