Repository navigation
ci: stage all workflows on isolated self-hosted runners - #2565
seonghobae wants to merge 42 commits into
Conversation
Retire the reverse-PR restack path and preserve the six dependency-review owner paths while recording protected main as the second parent.
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Historical circular-admission receipt — 2026-10-03
|
seonghobae
left a comment
There was a problem hiding this comment.
Exact-head review for cd49a60f1299fb8f7984de8d8ba223db673f7b84 (tree 5cbbaac086e19c94ac37abf2ca8a5914c88eac9b):
Blocking predecessor defect repaired: label-only cwlab-ci-isolated routing did not establish the runner access boundary. All 63 isolated selectors now require the dedicated CWL CI isolated group plus their existing labels; trusted-main groups and predicates are preserved. RED was reproduced before repair, focused contracts pass 42/42, all 38 workflows parse, git diff --check passes, and the complete suite passes 5,426 tests with 10 explicit skips and 40 subtests.
This is a COMMENT, not approval. Hosted jobs at this exact head fail before step execution (empty step lists and absent job logs) because verified group/capacity is still missing. Keep Draft/HOLD. Required next evidence is operator-created least-privilege group, disposable capacity and cleanup proof, canary, fresh exact-head required Checks, then eligible independent approval and ordinary protected merge.
Adopt the exact 17-path increment on ab0c865. Preserve current R JSON serialization and hostile-OS regression controls. Bind source tree 0ed180c to the existing whole57 independent SOURCE PASS and parent-verified normal full quality / coverage 100%. No runner registration, credential changes, policy changes or review redispatch.
seonghobae
left a comment
There was a problem hiding this comment.
Exact-head COMMENT for 98beb17c43072f7f749ac8641d23db044436c055 / tree f20f58e28a0980b1401be6a54e36d9d5a011c228.
RCA: exact Security run 37242578328 mixed two infrastructure failures with scanner verdicts. Trivy job 112314054734 restored its pinned binary cache and then failed before scanning with trivy: command not found (127). OSV job 112314054619 completed the base/head comparison with no PR-introduced finding and uploaded SARIF, then failed only because optional debug-artifact storage quota was exhausted.
TDD publication is ordinary fast-forward only: RED cc42969ba8ed4abeb1819412c146af2a9dadae8f failed the two new contracts; GREEN 26f993c0bbe88d50bf81473e31d179ad7b317657 disables runner-local Trivy binary caching and makes only OSV debug retention non-blocking. Scanner, reporter, finding, and SARIF gates remain fail-closed. Evidence commit 98beb17c… updates CHANGELOG and the product/technical Gap baseline.
Verification: focused 2/2 normally and under GITHUB_ACTIONS=true; warning-fatal repository suite 5,488 passed, 10 skipped, 40 subtests; documentation/evidence contracts 9 passed plus 4 subtests; compileall and diff checks GREEN.
This is a COMMENT, not approval. Keep Draft / Proposed / HOLD pending fresh exact-head hosted Security/SAST/quality evidence, isolated-capacity cleanup canary, zero unresolved threads, and qualifying independent approval. No blind rerun, access expansion, runner relabeling, bypass, or merge.
seonghobae
left a comment
There was a problem hiding this comment.
Exact-head COMMENT for 62c051bd2668cee351a1648aba3d8e72af774f20 / tree 43059a6fbdd174ed63e6f4612af512f364402ef9.
The security RCA and RED→GREEN remain unchanged: RED cc42969ba8ed4abeb1819412c146af2a9dadae8f captures the runner-cache and optional-artifact failures; GREEN 26f993c0bbe88d50bf81473e31d179ad7b317657 disables Trivy binary caching and makes only OSV debug retention non-blocking while scanner/reporter/SARIF gates remain fail-closed.
Exact-tree verification then detected that intermediate evidence commit 98beb17c… carried a truncated product/technical Gap blob. The ordinary fast-forward corrective commit 62c051bd… restores the complete 373,083-byte baseline as blob b50add6bef62fc4eb083a4a3e280e5c672995c51. Fresh fetch proves the remote tree equals the fully verified local tree 43059a6f… byte-for-byte.
Final-tree verification: 5,488 passed, 10 skipped, 40 subtests; focused contracts 2/2 normally and under GITHUB_ACTIONS=true; compileall, diff check, clean worktree, remote/local tree equality, and full Gap blob size/hash all pass.
This is a COMMENT, not approval. Keep Draft / Proposed / HOLD pending fresh exact-head hosted Security/SAST/quality evidence, isolated-capacity cleanup canary, zero unresolved threads, and qualifying independent approval.
seonghobae
left a comment
There was a problem hiding this comment.
Exact-head owner repair review (COMMENT, not approval). RCA: mixed matrices silently filtered macOS/Windows/ARM rows and returned success whenever one Ubuntu row remained. RED proved a mixed unsupported matrix exited 0; GREEN rejects the entire matrix if any row is outside the supported Ubuntu set, with the workflow copy kept byte-equivalent to the owner script. Offline warnings-fatal focused verification: 10 passed; compile and git diff --check passed. Exact-head CodeQL PR run 37887239686 is skipped and Repository Metadata Reconcile run 37887239528 is queued. Draft / Proposed / merge HOLD remains pending terminal required Checks and qualifying independent approval.
|
Stack ownership receipt for exact #2565 head |
|
Stack ownership receipt for exact #2565 head |
|
Stack ownership receipt for exact #2565 head |
Downstream stack receipt — #2603PR #2603 now non-force-stacks on this exact owner head
No shared runner-policy rollback remains in the downstream diff. |
Current authority addendum — exact head
|
|
Stack ownership receipt for exact #2565 head |
Downstream consumption receipts — exact head
|
Current exact-head security scanner isolation receipt — 2026-10-07
62c051bd2668cee351a1648aba3d8e72af774f20; tree43059a6fbdd174ed63e6f4612af512f364402ef9; parent98beb17c43072f7f749ac8641d23db044436c055.cc42969ba8ed4abeb1819412c146af2a9dadae8f→ GREEN26f993c0bbe88d50bf81473e31d179ad7b317657→ evidence98beb17c43072f7f749ac8641d23db044436c055→ full-baseline restore62c051bd2668cee351a1648aba3d8e72af774f20, each an ordinary one-parent fast-forward withforce=false; no rebase or Force Push.RCA → RED → GREEN
Security run
37242578328exposed two independent infrastructure false failures. Trivy job112314054734restoredtrivy-binary-v0.70.0-Linux-X64but then exited 127 withtrivy: command not found, so the heterogeneous isolated runner group may not reuse runner-local binary cache state. OSV job112314054619completed the base/head comparison with no PR-introduced finding and uploaded SARIF before the optional debug artifact failed because the GitHub artifact quota was exhausted.RED adds contracts for both boundaries and failed 2/2 on the prior source. GREEN disables only the Trivy binary cache and makes only OSV debug retention non-blocking; scanner, reporter, finding, and SARIF gates remain fail-closed.
Exact-tree executable evidence
GITHUB_ACTIONS=truegit diff --check, and clean worktree: GREENdocs/product-technical-gap-baseline.md(373,083 bytes; blobb50add6bef62fc4eb083a4a3e280e5c672995c51) and CHANGELOG carry the exact run/job/RCA/RED/GREEN receipt62c051bd…restored the complete document; remote and verified local trees now both equal43059a6f…Lifecycle
Draft / Proposed / merge HOLD. Fresh exact-head hosted Security/SAST/quality evidence, the isolated-capacity cleanup canary, zero unresolved review threads, and a qualifying independent approval remain required. This COMMENT/evidence is not approval. No blind rerun, runner relabeling, access expansion, bypass, auto-merge, or paid/model fallback is authorized.
Current exact-head provenance repair receipt — 2026-10-03
f0f7ed988fba5d94eda6513f35d171f23c4bd9a5; tree3a1407a8bd162566a291a2adef6c7b006a0884ad.665321c169500029ede42112a2aa72b994f1ce16adds the executable provenance contract; GREENf0f7ed988fba5d94eda6513f35d171f23c4bd9a5corrects both canonical receipts. Parent remains reviewed combined head650bc6e35409d52d24fec890c2ab74063794e9b8; Git Data publication usedforce=false. No rebase or Force Push occurred.ec7c1b58…. Both now name published two-parent merge650bc6e35409d52d24fec890c2ab74063794e9b8(tree9522f0b9c96247b3412e147bc6f89fd2595c0776) and its 53/53 focused / 5,437 passed, 10 skipped, 40 subtests historical receipt. The new contract requires both records to agree on a resolvable current-ancestry commit with exact parentscd2c3f97…and22902728….GITHUB_ACTIONS=true; Python compile,git diff --check, clean worktree, and exact tree match pass. The unavailable localruffexecutable was not treated as evidence.37120498641is Draft-skipped. Security37120498599, Metadata37120498646, SAST37120498634, Trusted uv37120498647, and Cloudflare37120498635failed before executable steps; every materialized failing job hassteps=nullandlogs_url=null. This confirms the absent isolated runner group/capacity admission blocker and does not authorize a blind rerun.Lifecycle: Draft / Proposed / merge HOLD. Missing
CWL CI isolatedgroup/capacity, disposable cleanup/canary proof, passing exact-head hosted Checks, and a qualifying independent approval still block ordinary merge. No runner relabeling, access expansion, bypass, auto-merge, source-neutral rerun, predecessor closure, or merge is authorized.Scope
User instruction: move this SDP workstream entirely to self-hosted runners. All 73 central job declarations retain dedicated control/CodeQL/OpenCode boundaries and replace every hosted fallback.
Blocking review finding and RCA
The predecessor exact head
d6ba56d04e22476b2ea41bfe7bb26e2cbc98f98fselected ordinary/non-main work with the mutablecwlab-ci-isolatedlabel alone, even though its rollout document correctly stated that a generic label does not attest separation. GitHub runner labels are routing metadata and GitHub does not validate that OS/architecture labels match the machine. A persistent or privileged runner with matching labels and repository access could therefore receive untrusted PR work.The repair scopes every affected direct, conditional, CodeQL and R-matrix selector through the dedicated
CWL CI isolatedrunner group and the existing platform/isolation labels. The group is the repository-access boundary; labels express required capability inside it. Trusted-main control/CodeQL/OpenCode groups and repository predicates are unchanged.Historical predecessor evidence —
cd49a60f1299fb8f7984de8d8ba223db673f7b84This section is retained for audit history and is superseded by the current exact-head receipt above.
test_isolated_label_is_scoped_to_dedicated_runner_groupfailed first at.github/workflows/actions-queue-health.ymlon the label-only selector.git diff --checkpassed.cd49a60f1299fb8f7984de8d8ba223db673f7b845cbbaac086e19c94ac37abf2ca8a5914c88eac9bd6ba56d04e22476b2ea41bfe7bb26e2cbc98f98f(ordinary one-parent fast-forward; no force push or rebase).Safety and rollout hold
DRAFT / HOLD. The retained organization inventory had no
cwlab-ci-isolatedcapacity and no verifiedCWL CI isolatedgroup/capacity record. Do not add a privileged runner to this group, relabel privileged runners, widen runner access, or merge until an authorized operator:CWL CI isolatedwith least-privilege repository access;Source configuration is not runtime activation. No credentials, production deployment, existing runner ACLs, protections, inference budgets or active model runs were changed. Model-backed workflows remain fixed to
orchestrator/free; no provider/model/group/paid fallback was added.Historical hosted evidence —
cd49a60f1299fb8f7984de8d8ba223db673f7b84This predecessor evidence is superseded by the fresh
cd2c3f9748e6bc50efd8bdfee9a385a74ec6e3barun receipt above.At
cd49a60f1299fb8f7984de8d8ba223db673f7b84, Cloudflare DNS, SAST Semgrep, Security Scan, Repository Metadata Reconcile and Trusted uv Materializer completed failure before any step existed; their job step lists are empty and job log blobs are absent. CodeQL PR was skipped. This was fail-closed pre-runner evidence consistent with the missing group/capacity prerequisite, not a passing runtime canary and not merge authorization. CodeRabbit status was success; no qualifying independent review or review threads existed.The PR must remain Draft/HOLD until capacity and fresh exact-head hosted evidence are available.