v1.91.375.0 captain: stop a finished /ship subagent at READY once its parent subscribes to the PR (#3597)

* captain: stop a finished /ship subagent at its READY after subscribing to its PR

Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>

* chore: CHANGELOG for stopping finished /ship subagents (unreleased)

Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>

* captain: /ship subagent stop review fixes (subscribe at PR open, parent owns post-READY work, unconditional one-line wake, tight budget)

Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
This commit is contained in:
Garry Tanandcapy-ai[bot] authored and GitHub committed 2026-10-31 16:50:03 +00:00
1 parent 1b46f375df
commit 7d4e71bd94
8 files changed
+22 -4

No files matched your search

+7
View File
@@ -254,6 +254,13 @@ a push included. The sequence that works unattended on Capy:
10. After the slot call, the stamp commit keeps the pin's receipt; re-READY with the same
receipt, no second /ship.
When /ship runs in a subagent, the parent subscribes to the pull request's check and
review notices as soon as the subagent opens it, and stops the /ship subagent only once
that subscription is in place and its READY arrives. From then on the parent owns the pull
request: red checks, human review, the slot stamp and re-READY of step 10, and any receipt
carry. It does that work itself or sends it to the subagent as an explicit instruction. On
Capy the mechanics are in [the gstack skill](../capy/skill/gstack/SKILL.md#plan-approve-ship).
When the base moves under a reviewed branch, merge it in; never rebase. A merge that
leaves the product diff unchanged carries the receipt with `gstack-ship-receipt carry`
(pregate at HEAD, no review rerun), and a merge whose resolution changed product code