mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-02 06:54:50 +01:00
docs: receipt evidence keys and carry record fields; carry refusal fix line
Documentation audit for #3564 (/document-release, audit ship3564-docs-1). Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
This commit is contained in:
1 parent
bf9a417d54
commit
3b90122ef2
3 files changed
+10
-5
No files matched your search
+5
-2
@@ -777,7 +777,8 @@ written by the pr-body section of `/ship` after the body is composed.
|
||||
|
||||
The ```` ```gstack-ship-receipt ```` block is the handoff record: identifiers
|
||||
first (`pr`, `head`, `version`, `base`), then the evidence (`gate`, `ci`,
|
||||
`pregate`, `issues`, `approval`, `docs`, `review_loop`, `carry`), validated
|
||||
`head_tree`, `product_patch_id`, `pregate`, `issues`, `approval`, `docs`,
|
||||
`review_loop`, `carry`), validated
|
||||
against the `ship-receipt` schema (`gstack-artifact schema ship-receipt`) and
|
||||
read back by `gstack-ship-receipt read`, `result`, `carry` and the queue.
|
||||
|
||||
@@ -944,7 +945,9 @@ full rerun because a merge changed its generated index's diff). A base merge
|
||||
contributes no product change of its own. A receipt carried twice keeps the reviewed head as
|
||||
`carry.from` and adds up the merges and paths. The carried receipt records
|
||||
`carry: { from, reason, product_patch_id, changed_paths, merge_commits,
|
||||
range_diff, covers, reruns }` with the `git range-diff` evidence, prints
|
||||
range_diff, covers, reruns, ancestry, trees }` (`ancestry` is `linear`
|
||||
along the receipt's own history, `rewritten` once any hop was a rebase;
|
||||
`trees` lists the earlier covered trees) with the `git range-diff` evidence, prints
|
||||
`CARRY: carried from <old> to <new> (<reason>)` and the `GSTACK_RESULT:
|
||||
skill=ship status=complete` line, and its summary line ends with
|
||||
`carried_from=<old12>`. `CARRY: current` means the receipt already names HEAD;
|
||||
|
||||
@@ -4734,7 +4734,9 @@ is not the reviewed one. The reviewed verdict does not cover HEAD, so the
|
||||
receipt is not carried. The refusal names the changed product paths.
|
||||
|
||||
**Fix.** Run /ship on the new head. The receipt carries only across a
|
||||
conflict-only base merge, a test-only change or release metadata, which the
|
||||
conflict-only base merge, a test-only change, release metadata, a registered
|
||||
output the pregate's regen check proved, or a rebase onto a covered tree with
|
||||
the recorded product diff, which the
|
||||
`carry` object in the carried receipt records with the product patch-id and
|
||||
the range-diff evidence ([unattended.md](unattended.md#the-terminal-line)).
|
||||
|
||||
|
||||
+2
-2
@@ -225,8 +225,8 @@ and reruns carry with `--pregate .gstack/tmp/pregate.json`. `CARRY: carried from
|
||||
now names HEAD with a `carry` object holding the `git range-diff` evidence, and
|
||||
`ship-run.json` gains `carried_from` and `carry_reason`; the `review_loop`
|
||||
counters are kept, because the reviewed product diff is unchanged. `CARRY:
|
||||
current` means nothing moved. `CARRY: refused (RECEIPT_CARRY_PRODUCT_CHANGED)`
|
||||
, `(RECEIPT_CARRY_TREE_MISMATCH)` or `(RECEIPT_CARRY_REFUSED)` with the refused
|
||||
current` means nothing moved. `CARRY: refused (RECEIPT_CARRY_PRODUCT_CHANGED)`,
|
||||
`(RECEIPT_CARRY_TREE_MISMATCH)` or `(RECEIPT_CARRY_REFUSED)` with the refused
|
||||
result line means the product diff changed, or history was rewritten onto a
|
||||
tree no review saw, so /ship runs again;
|
||||
`(RECEIPT_GIT_TOO_OLD)` means the machine's git predates 2.39 and cannot run
|
||||
|
||||
Reference in new issue
Block a user