fix(#2474): gate worktree dispatch on project-level USE_WORKTREES too (#2561)

* test(#2474): update dispatch gate test for dual-gate behavior

The #2772 test asserted the gate reads USE_WORKTREES_FOR_PLAN only.
Update to accept the dual-gate (USE_WORKTREES + USE_WORKTREES_FOR_PLAN).

* fix(#2474): gate worktree dispatch on project-level USE_WORKTREES too

The per-plan dispatch condition checked only USE_WORKTREES_FOR_PLAN
(submodule-derived), ignoring the project-level USE_WORKTREES flag.
Add USE_WORKTREES to the gate. Net-negative edit: compress two
nearby prose lines to offset the added shell condition (93353 bytes,
down from 93368).

Closes #2474

* docs(#2474): backfill changeset PR number (2561)

* fix: merge coverage gate into single-process check (#2474)

The test:coverage:unit script chained two c8 invocations with &&:
the first ran tests and wrote coverage data to .nyc_output/, the
second read that data for per-file branch checks. On fast CI runners
(ubuntu/24), the second process started before the filesystem flushed
the first process's writes — a classic TOCTOU race that caused
intermittent coverage gate failures.

Replace the two-process chain with a single c8 invocation that
generates both text and json-summary reports, followed by a Node
script (scripts/check-coverage-gate.cjs) that reads the JSON summary
once and checks both overall and per-file thresholds. No filesystem
race is possible because the JSON report is fully written before the
check script reads it.
This commit is contained in:
Tom Boucher
2026-07-23 09:14:02 -04:00
committed by GitHub
parent ae8526cd50
commit 7d298d6d4d
25 changed files with 83 additions and 27 deletions

View File

@@ -24,7 +24,7 @@
"docs-update.md": 56494,
"edit-phase.md": 12927,
"eval-review.md": 10332,
"execute-phase.md": 93383,
"execute-phase.md": 93368,
"execute-plan.md": 35143,
"explore.md": 11127,
"extract-learnings.md": 12893,