fix(pregate): a caller run clears a workflow_call lane only when a job under the calling job succeeded (GST-971 review)

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-02 12:26:56 +00:00
1 parent ed27e992af
commit 8314b95a07
6 files changed
+33 -17

No files matched your search

+4 -2
View File
@@ -765,8 +765,10 @@ run gh cannot read refuses with `api_error`, and a URL that is not an Actions
run URL or id on this repository with `run_ref_invalid`. A reusable-workflow
lane (one whose file runs only through `workflow_call`) also clears from a run
of a caller: a workflow in the branch's own `.github/workflows/` with a job
that says `uses: ./.github/workflows/<lane's>.yml` (GST-971), and fix lines
only suggest `gh workflow run` for a file with a `workflow_dispatch` trigger.
that says `uses: ./.github/workflows/<lane's>.yml` (GST-971), as long as a
job under that calling job (`<calling job> / …`) succeeded in the run; else it
refuses with `caller_job_skipped`. Fix lines only suggest `gh workflow run` for
a file with a `workflow_dispatch` trigger.
The run must also
have finished green (GSTA-203 PR 8): a run that is still queued or running
refuses with `run_in_progress`, and one that concluded anything but `success`
+2 -1
View File
@@ -3772,7 +3772,8 @@ run of another workflow), `run_in_progress` (still queued or running) or
line; after the last three, clear again with a finished green run of the
lane's own workflow ([run evidence](pregate.md#run-evidence)). For a lane whose
workflow runs only through `workflow_call`, a run of a workflow whose job says
`uses: ./.github/workflows/<lane's>.yml` counts as a run of the lane (GST-971).
`uses: ./.github/workflows/<lane's>.yml` counts as a run of the lane (GST-971);
it refuses `caller_job_skipped` when no job under that calling job succeeded.
Another tree is accepted in exactly one case: it differs from `pregate.json`'s
tree only in the repo's stamp rule (`.gstack/ship-policy.json` on the base