Repository navigation
Conversation
Replace the hand-written check_result lines in ci-success with one step driven by toJSON(needs) and jq. Always-required jobs (changes, precommit, lint, agent-skill) are listed in the script; every other needed job is go-gated by default, so new needed jobs are checked without script edits. Error messages and exit semantics are unchanged.
✅ Deploy Preview for devsydev canceled.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
✅ Deploy Preview for images-devsy-sh canceled.
|
|
This pull request does not currently match the merge queue conditions, so it cannot be queued from here. The box comes back if it matches again. |
What
ci-successno longer lists each required job twice.needs:is the single list of jobs. The 40-line hand-writtencheck_resultfunction and its per-job call lines are replaced by one step that readstoJSON(needs)throughenv:and checks it withjq+ bash.changes precommit lint agent-skill) are named in one commented list in the script.successis required for them.skippedis allowed only whenGO_CHANGES != "true".needs:is now checked with no script edit.if: always(), and exit semantics are unchanged.needs:membership and other jobs are untouched.GO_CHANGESandNEEDSgo throughenv:, not${{ }}interpolation into the script body.jqfails to parseNEEDS, the step exits non-zero (fail closed).rows=assignment under the defaultbash -eo pipefailshell.Verification
Run body extracted from
pr-ci.yml(via YAML parse) and run in a throwaway harness underbash --noprofile --norc -eo pipefail. Old function was run against the same inputs, withneeds.<job>.resultmapped to variables. Same exit code and same message set in every case. Run on jq 1.7.1 and jq 1.8.2 with identical output.build-cliskipped::error::build-cli ended with result=skipped unexpectedlylintskipped::error::lint ended with result=skipped unexpectedlyintegration-testsfailure::error::integration-tests ended with result=failureunit-testscancelled::error::unit-tests ended with result=cancelledlicensesfailure, go=false::error::licenses ended with result=failureunit-testsfailure,lintcancelled,agent-skillskippedNEEDSbrand-newskipped, no script editOther checks:
YAML.load_file;check-yamlhook passes).prek run --files .github/workflows/pr-ci.yml: actionlint hook passes (with the repo's existingbackgroundignore); check-yaml passes.-elist: clean.U: good signature, key not in local trust store).Note: toJSON key order is GitHub-defined. The new step prints errors in that order. The old function printed them in fixed order. Messages are the same set; only order can differ.
CodeRabbit
coderabbit review --agent --committed --base-commit 7d04a4732completed: 0 findings, 1 reviewed file.Part of the pr-ci.yml restructuring series (gate)
Summary by CodeRabbit