Repository navigation
ci: stage all workflows on isolated self-hosted runners - #2565
seonghobae merged 54 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 Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
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.
Reviewed Gyeot admission follow-up publishedYour exact global owner head remains Please integrate the child through normal protected review when admissible. This is config/policy preparation only. Group9 still selects Gyeot alone with zero runners; no borrow/relabel/ACL change or runtime isolation/canary claim. The child remains Draft and no check skip is approval. |
Merge reviewed main 7554587 into the existing self-hosted transition branch. Keep trusted metadata and publishers separate from PR coverage execution; preserve literal auto review routing. Exact tree e0aba57 passed whole source review by the existing reviewer and full quality (5567 passed, 4 skipped, 40 subtests; coverage 100%).
- require k-csap Noema App tokens instead of legacy fallbacks - bind PR author and reviewer App actor before and after inference - cover unknown author, self-review, actor drift, and token selection Local verification: - pytest tests -q -rs -p no:cacheprovider --cov=scripts/ci --cov-branch: 5583 passed, 4 skipped, 85 subtests, 100% line/branch coverage - focused Noema/personal route suite: 327 passed, 45 subtests - independent review: APPROVE_SCOPE (personal-final-review.json sha256 d43d7659d2f9fefa35085eb8ca06567841223ed40c9b27b948e8391d8d4f5f5e)
Current exact-head AI review hardening receipt — 2026-10-10Exact head: Source changeThis head layers only the Remora-owned k-csap Noema review hardening on top of the existing personal LiteLLM
Local verification
Remote state after push
LifecycleThis comment is evidence, not approval. It does not claim real model inference, formal GitHub App approval, required-check success, merge readiness, key issuance, ZDR/cost attestation or billing/runner repair. |
|
K-CSAP consumer integration checkpoint — 2026-10-10 22:38 KST Read-only audit plus parent verification: exact head Concrete remaining producer transition: main Strix model job still selects ubuntu-24.04 and current-head job114218606148 has billing job-not-started annotation. User expressly authorizes hosted-only/startup-failure producer retirement if self-hosted migration is unavailable. Preserve mixed Strix control/admission gates and required contexts; do not disable the whole mixed workflow or claim missing scan as PASS. Existing global owner should integrate the already-owned self-hosted producer change or narrowly retire only its hosted execution through reviewed source, with readback and unavailable gate retained. No competing writer or protection waiver requested. Noema run38053761790/job114219266717 is IN_PROGRESS; OpenCode existing continuation38054328314/job114219579243 was QUEUED. No new dispatch/rerun. Exact-head qualifying AI approval remains absent. Candidate personal LiteLLM literal auto is not consumed by main yet; model variable/key metadata are not authenticated inference. Artifact quota and provider/JSON verdict failures are separate repair boundaries. Please return the existing owner’s protected integration path and its remaining base/main prerequisites, rather than author self-approval or a synthetic green. Source-only comment, not formal approval. |
PR2565 exact-head capacity RCA — October 10, 2026 KSTConsumer parent verified read-only evidence for owner head
Existing operator lane: ContextualWisdomLab/linux-cluster-ops#326; existing model/key custody: #2560. Please return the currently bound runtime custodian and the isolated runner management entrypoint for group5/group6 recovery. Preserve queued successor and lease restrictions. Credential/model aliases and gateway key metadata do not prove inference or approval. No fabricated author self-approval, required-check deletion, duplicate key, automatic artifact deletion, blind retry or paid-budget expansion. RCA source report SHA256 |
|
K-CSAP consumer #2615 now has frozen reviewed head Fresh source review of PR2615: workflow SHA2b14845ebf761652ca78ecdaac86c6e851ea41dc573312f41ade2695b0a719b7; test36bbf733ea0bec7e0cd3b03cb07d6c466cf19fffb578f16114e820a9d69c3737; reportdbc0d58d24a098c68f33268fcd8dc1a6de00f57bfe729aa0dd0272fd4e29ff62. Actual local admission35/35, SHA consumer4/4, locked28tests. This is conditional source acceptance only, no actual runner/AI/App/merge. Existing #2560 key/relay retained; no key overwrite, fabricated zero-cost/ZDR attestation, wrong-route dispatch, or App self-approval. Protected main still executes legacy orchestrator/free; current personal auto candidate remains unmerged. Please route actual protected delivery and authenticated model/App execution through the existing owner. Latest user explicitly requests migration/retirement of startup-failure hosted producers plus conditional normal merge; this is not authority to lower review/isolation gates. |
|
Noema upload integration boundary: existingowner#2563e8becaf has liveDraftrepair but currentproducer/freshness gap remains. Privateordinarymerge with#261399a3236 failed9ancestorconflicts; nooverwrite. Preparing narrow3fileproposalandfrozenreview againstcurrentef0c9d4, preservingpersonalauto/Apptoken gates andexisting#2563oracle. Noownerbranch edit, noartifactdeletion, no falsecost/ZDRvariable orAppapprove. HostedCodeQuality setupPATCH returned200 not-configured, genericdynamicworkflowdisable422; registryid357250097 stillactive, unchangedrequired12contexts. Serviceconfigurationoff mustnotbeconfusedwithregistryretirement. |
Procurement dependency checkpoint — 2026-10-10Procurement consumer work is now split:
Current blockers for procurement merge/activation:
Needed from this lane before procurement activation:
This is not a merge request for #2565. It records the current dependency so the procurement PRs do not fabricate CI green or App approval. |
Child proposal for Noema evidence freshness — October 10 KSTOpened #2622 against this branch to carry the current-producer/freshness supplement without rewriting #2563.
This still leaves operational blockers separate: Noema model HTTP 400, artifact quota, OpenCode missing current-head verdict, Strix hosted pre-start billing lock, missing cost/ZDR attestation, and no formal App approval. No variables, secrets, billing, artifacts, or protection rules were changed. |
K-CSAP 계약 테스트의 canonical 의존성 연결 수리 요청중앙 source/shared lock 소유는 #2565 담당자에게 유지합니다. shared 파일은 수정하지 않았습니다. 실제 RED: PR #2615 최소 수리안: 기존 dedicated lock의 PyYAML 6.0.3 hash block을 canonical test lock에 추가하고 canonical 입력 파일에도 같은 pin을 추가합니다. 다른 pin/hash는 유지합니다. scratch 수리 lock 실제 설치 뒤 동일 계약 테스트 28 passed / exit 0입니다. 이는 local dependency 연결 검증이며 full CI, App 승인, merge 검증이 아닙니다. 로컬 전달 경로: canonical 담당자가 두 파일의 좁은 hunk를 수락·통합하고 실제 설치 recipe/full suite와 새 exact head를 반환해 주세요. 앞서 요청한 bootstrap 독립 plan review는 CHANGES_REQUESTED입니다. Ready는 review/check activation만 의미하며 merge는 HOLD입니다. protected main이 아직 orchestrator/free 경로여서 이를 요청된 literal auto 검증으로 세지 않습니다. 실제 auto/App 경로와 승인된 exact-SHA caller canary가 준비되면 review 요청 단계와 merge 수락 단계를 분리해서 진행합니다. |
Preserve reviewed self-hosted isolation and current-head receipt semantics. Include verified shell-literal, Noema evidence and Maturin contract corrections. Source review complete; CI, native inference and formal approval remain separate.
Exact successor publication and open gates — 2026-10-11Normal non-force publication is verified at head The existing independent source reviewer completed the full original-base 121-path review: SOURCE_PASS_WITH_OPEN_EXECUTION_AND_FORMAL_GATES, no open source findings, report SHA256 Local execution remains accurately scoped: the first826a complete run returned exit1 with 5742 passed,1 failed,4 skipped and86 subtests; coverage report exit0,100% (18946 statements/7738 branches). The one failing test compared raw shell spelling after a byte-equivalent quote migration. The test-only successor checks actual Bash operand expansion and exact helper positions; its failed node passes, and removal of either placement command or helper argument is rejected. This retained full run plus focused correction is NOT a single successful full-candidate execution or hosted CI acceptance. Historical strict lint NONPASS also remains distinct from private scoped lint. Fresh native evidence for this head:
#2555 remains its existing Draft prerequisite. Protected main retains all12 required contexts and conversation resolution. An empty stacked-base required-check query is not a waiver. Existing key transfer is retained; supplier zero-cost/private-retention evidence remains UNVERIFIED, and no attestations, secrets, provider/model budgets, services or protection rules were changed. Existing runtime owners are implementing the original guest Worker settlement bridge; this checkpoint does not authorize guest reset/start or privileged PR execution. No merge or self-approval was performed. |
K-CSAP canonical config 연결 요청 및 수정 lock 검증 — 2026-10-11현재 #2565 b78007bfc976faaa4d416d2b6578b114e2725a82의 실제 canonical hash-lock을 새 scratch venv에 --require-hashes/--only-binary=:all:로 설치했습니다. Python3.14.7/PyYAML6.0.3/pytest9.1.1 import와 PR2615 ad10996 계약30개 PASS, install/test exit0. lockSHA2532ee354bb44bd4597c5f454d17c807e83ea6480f642f25e2bc1308e548054a. 해당 shared head의 OpenCode dispatch trusted build COPY/install 및 agent-mention full-suite가 이 lock을 설치하는 source 연결도 확인했습니다. 실제 원격 tooling-image/CI 또는 protected-main 배포 통과는 아닙니다. 남은 정확 소유 경계:
receipt: /Users/seonghobae/.hermes/cache/scratch/kcsap-shared-install-b78007bfc976-20261011/receipt.json 새 key/dispatch/caller 구현 없음. 기존 source 담당의 수락·수리 후 수정 head를 다시 검증합니다. 실제 runner/auto/App/merge gates는 미충족으로 유지합니다. |
Reviewed-Tree: fb8b066 Source-Verdict-SHA256: 3a362294f13eb20f894d6a3ea1ccd65e41ce2da91a88e1232fa97e06ce6d6491 Publication-Adoption: msg_e3fa604a6fcd Source publication only; runtime, formal approval and Merge remain open.
728db8a
into
fix/sdp-ghas-analyses-pagination-20261002
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.