fix(ship-queue): wave plan links PRs only on a real code conflict and leaves out READY heads whose CI is not green (GST-770)

Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
This commit is contained in:
garrytanandcapy-ai[bot] committed 2026-11-01 11:09:06 +00:00
1 parent f739756389
commit e3f14bd89a
3 files changed
+84 -16

No files matched your search

+9 -3
View File
@@ -573,9 +573,15 @@ gstack-ship-queue wave settle --wave <nonce> [--dry-run] # after the wave
```
- **When.** `wave plan` counts the live READY PRs (open, head equal to their
READY receipt). Over the trigger (6) it prints `WAVE_ADVISED` and suggested
groups of 3 to 6: PRs that change a common file always share a group (their
conflicts are resolved once), each group takes its largest PR's functional
READY receipt, CI green at that head; a READY head whose CI is red or still
running prints a `NOT_GREEN` line and stays out of the plan). Over the
trigger (6) it prints `WAVE_ADVISED` and suggested groups of 3 to 6: PRs
whose changes to a common code file conflict (`git merge-tree` cannot merge
the two heads) always share a group, so that conflict is resolved once. Hub
files never link PRs: anything under `docs/`, Markdown and its `.tmpl`
sources, and JSON ledgers and registries. Most PRs append to them, and
linking through them once chained a 55-PR queue into a single area
(GST-770). Each group takes its largest PR's functional
area (a skill directory, the first word of a `lib/`, `bin/` or `test/`
module name, or `docs`), smaller groups ride solo, and the integrator is
the PR with the most changed lines. `train build` handed more than 6 pins