Repository navigation
feat(gate): open local reusable workflows instead of refusing them - #3378
Conversation
Size Report
Startup median (7 runs, lower is better):
|
|
The change to open local reusable workflows in the gate looks correct at 634c1ce. I found nothing to fix. No conflicts. The Smoke Tests job 114251069258 is still running, so the checks are not final. The other three Smoke Tests jobs passed. The diff touches only the gate scripts and their tests, and no smoke route overlaps it, so I expect that job to pass. I did not run the tests or the gate-manifest check, so the 22/22 and 53/26 results are the author's. No workflow on main calls a local reusable workflow today, so only the planted test exercises the open path. I could not check from this PR whether the release workflow in #3380 audits correctly. Optionally, add planted tests for the remote and nested fail-closed branches. Once Smoke Tests finishes green, take the PR out of draft. |
634c1ce to
441cd1a
Compare
|
I added planted tests for both fail-closed branches at |
There was a problem hiding this comment.
All reported issues were addressed across 3 files
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
|
The code in 441cd1a looks good. Local reusable workflows now open instead of being refused, and remote, missing and nested callees still fail closed. The earlier review of 634c1ce found nothing, and nothing new came up in this change. CI is green: all 19 checks pass, and the gate-manifest and gate unit lanes exercise the changed files directly. No conflicts. Both open cubic-dev-ai threads still apply: the unresolved inputs gate under-credit (#3378 (comment), P2) and the jobless callee opening as a lane (#3378 (comment), P3). Both err toward crediting fewer gates, so they cannot hide a missing check. Passing I did not run the gate tests or |
A job that calls ./.github/workflows/<file>.yml now contributes the called workflow's steps, gates, and machinery to its lane. Remote, missing, or nested reusable workflows still fail closed.
…less one
A callee's run-gate step that reads ${{ inputs.gate }} now resolves against the
caller's with, and a local workflow file that declares no jobs fails closed
like a missing one instead of opening as an empty lane.
9594d77 to
6308cbf
Compare
|
This PR is ready at 6308cbf. Both earlier findings from #3378 (comment) are fixed: gate inputs now resolve from the caller's Not blocking, and you can take or leave it: in https://github.com/callstack/agent-device/blob/6308cbf/scripts/gate/workflows.ts#L176 The two cubic-dev-ai threads no longer apply, so please resolve them: the P2 on gate inputs (#3378 (comment)) is fixed by I did not run the gate tests locally, so the 25/25 and The other 18 checks pass. Smoke Tests is still running and shows no failure so far. It looks unrelated, since the diff only touches |
|
Summary
The gate-manifest loader refused any job that calls a reusable workflow (
uses: ./.github/workflows/x.yml). It now opens a local reusable workflow, so the called workflow's steps, gates, and files count toward the calling lane. Its${{ inputs.* }}gate names resolve from the caller'swith. A remote, missing, jobless, or nested reusable workflow still fails closed. Planted tests cover every case.This is the base layer of the release-channel stack:
release.yml(#3380) calls the iOS runner, Android helper, and MCP Registry workflows this way. 3 files.Validation
At
6308cbf1be:pnpm check:gate-manifest: ok, 53 checks across 26 lanes.pnpm check:affected --runpasses at the stack top (9d7a69a9f5).