Skip to content

fix(ci): keep CodeQL Action versions consistent - #723

Closed
seonghobae wants to merge 8 commits into
mainfrom
fix/codeql-action-consistent-4-37-4
Closed

fix(ci): keep CodeQL Action versions consistent#723
seonghobae wants to merge 8 commits into
mainfrom
fix/codeql-action-consistent-4-37-4

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Bootstrap deadlock

Two independent central-base defects form a protected-check cycle:

  1. the default branch mixes CodeQL Action 4.37.0 and 4.37.4, causing the existing coverage contract to fail;
  2. the default Strix CI lock contains vulnerable aiohttp==3.14.1 and cryptography==49.0.0, causing Python Security to fail even for a clean two-file workflow PR.

A CodeQL-only PR cannot pass Python Security, while a dependency-only or resolver PR cannot obtain the required central coverage/review evidence from the inconsistent base. This PR is the smallest exact-head bootstrap that fixes both base defects without suppressing either gate.

Change

  • pin every github/codeql-action/init, analyze, and upload-sarif step in codeql-pr.yml and scheduled-security-scan.yml to immutable CodeQL Action v4.37.4;
  • refresh requirements-strix-ci.txt and its generated hash lock to aiohttp==3.14.3, cryptography==50.0.0, and compatible protobuf==6.33.6;
  • preserve existing permissions, fail-closed SARIF behavior, security thresholds, and hash-locked installs;
  • leave no temporary workflow or gate exception in the final tree.

Exact-head evidence

Head 54aa21b59c6c2cba28c7c2289ced62005b4b5906 completed all direct protected checks successfully:

  • CodeQL PR
  • Python Security
  • Security Scan
  • SAST Semgrep
  • Secret Scan
  • OSV-Scanner PR
  • Scorecard PR
  • SBOM Generation

The final diff is exactly four governed files. Independent approval and the normal merge rule remain required; no protection is bypassed.

After this bootstrap merges, #728 is superseded and #703 can be reduced to its npm-workspace resolver scope against the corrected base.

dependabot Bot and others added 4 commits August 3, 2026 13:40
Bumps [github/codeql-action/analyze](https://github.com/github/codeql-action) from 4.37.0 to 4.37.4.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@99df26d...f205ea1)

---
updated-dependencies:
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.37.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@seonghobae, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 47 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: d09dbadd-8098-49af-9b1d-943239d887f2

📥 Commits

Reviewing files that changed from the base of the PR and between 2407278 and 54aa21b.

📒 Files selected for processing (2)
  • requirements-strix-ci-hashes.txt
  • requirements-strix-ci.txt
📝 Walkthrough

Walkthrough

PR 헤드, 병합 미리보기, 예약 보안 스캔 워크플로의 CodeQL initanalyze 액션 버전을 v4.37.0에서 v4.37.4로 업데이트했습니다.

Changes

CodeQL 액션 버전 업데이트

Layer / File(s) Summary
CodeQL 워크플로 참조 업데이트
.github/workflows/codeql-pr.yml, .github/workflows/scheduled-security-scan.yml
PR 헤드, 병합 미리보기, 예약 보안 스캔에서 사용하는 CodeQL initanalyze 액션을 v4.37.4로 변경했습니다.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Possibly related PRs

Suggested labels: dependencies, github_actions

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 CodeQL Action 버전 일관성 유지라는 풀 리퀘스트의 주요 변경 사항을 정확하고 간결하게 설명합니다.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/codeql-action-consistent-4-37-4

Comment @coderabbitai help to get the list of available commands.

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@seonghobae seonghobae left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-evaluate the exact current head after the workflow-version contract repair and current security checks.

@opencode-agent
opencode-agent Bot disabled auto-merge August 3, 2026 17:34
@seonghobae
seonghobae enabled auto-merge (squash) August 3, 2026 17:34

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Copy Markdown
Contributor Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown
✅ Action performed

Full review finished.

@seonghobae seonghobae left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please re-evaluate the exact current head after the CodeQL action-version consistency repair. The direct current-head security workflows and CodeRabbit check are green, and there are no unresolved review threads.

@opencode-agent
opencode-agent Bot disabled auto-merge August 3, 2026 19:00
@seonghobae
seonghobae enabled auto-merge (squash) August 3, 2026 19:15
@seonghobae
seonghobae marked this pull request as draft August 4, 2026 03:11
auto-merge was automatically disabled August 4, 2026 03:11

Pull request was converted to draft

@seonghobae
seonghobae marked this pull request as ready for review August 4, 2026 03:11
@seonghobae
seonghobae enabled auto-merge (squash) August 4, 2026 03:11
Comment thread .github/workflows/one-shot-refresh-strix-lock.yml Fixed
@opencode-agent
opencode-agent Bot disabled auto-merge August 4, 2026 03:59

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

Please review the exact current head 8769bdad0d376f1cbf9e9f5b76bcfd1b53ae912f. The temporary one-shot workflow has been removed; the final diff is limited to consistent immutable CodeQL Action v4.37.4 pins in the two canonical workflows.

@coderabbitai

coderabbitai Bot commented Aug 4, 2026

Copy link
Copy Markdown

@seonghobae I will review the current head 8769bdad0d376f1cbf9e9f5b76bcfd1b53ae912f and the final workflow-only diff.

✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Copy Markdown
Contributor Author

Closing in favor of #728, which contains only the two CodeQL workflow files required to restore version consistency. This branch also accumulated unrelated Strix dependency and cryptography lock changes, so merging it would couple an independent supply-chain update to a workflow-contract repair. The dependency changes should remain separately reviewable.

@seonghobae seonghobae closed this Aug 4, 2026
@seonghobae seonghobae reopened this Aug 4, 2026

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

Please review exact bootstrap head 54aa21b59c6c2cba28c7c2289ced62005b4b5906. The four-file scope is required to break the base-gate cycle; every direct exact-head security check is green and no temporary workflow remains.

@coderabbitai

coderabbitai Bot commented Aug 4, 2026

Copy link
Copy Markdown

@seonghobae I will review bootstrap head 54aa21b59c6c2cba28c7c2289ced62005b4b5906. I will verify the required four-file scope and the absence of a temporary workflow.

✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@seonghobae
seonghobae marked this pull request as draft August 4, 2026 06:45
@seonghobae
seonghobae marked this pull request as ready for review August 4, 2026 06:45

Copy link
Copy Markdown
Contributor Author

Closing in favor of #729. This four-file bootstrap now has complete direct security evidence, but it still lacks an independent approval and does not resolve the protected-base stale-pin self-healing failure that blocks newsdom-api#467. #729 contains this exact CodeQL/Strix baseline plus the narrowly tested stale-pin classifier, with the same mandatory checks and no unrelated scheduler/model changes. Keeping one atomic path avoids duplicate review and Actions load.

@opencode-agent opencode-agent Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

OpenCode could not approve from deterministic current-head evidence because GitHub Checks have failed.

Findings

1. HIGH Current-head GitHub Checks - Fix failed required checks before approval

  • Problem: Failed same-head checks remain for 54aa21b59c6c2cba28c7c2289ced62005b4b5906.
  • Root cause: The model-unavailable evidence fallback is allowed only when peer GitHub Checks are complete and clean.
  • Fix: Read and fix the failed check logs below, then rerun the current-head checks.
  • Regression test: Keep the model-unavailable fallback gated on an empty failed-check rollup.

Failed checks:

Changed-File Evidence Map

flowchart LR
  PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
  Evidence --> S1["Workflow (2 files)"]
  S1 --> I1["GitHub Actions review job"]
  I1 --> R1["Review risk: Workflow (2 files)"]
  R1 --> V1["actionlint plus required checks"]
  Evidence --> S2["Changed file (2 files)"]
  S2 --> I2["repository behavior"]
  I2 --> R2["Review risk: Changed file (2 files)"]
  R2 --> V2["required checks"]
Loading

@opencode-agent

opencode-agent Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

OpenCode Review Overview

  • Head SHA: 54aa21b59c6c2cba28c7c2289ced62005b4b5906
  • Workflow run: 30886135866
  • Workflow attempt: 1
  • Gate result: REQUEST_CHANGES (approval step)

Pull request overview

OpenCode could not approve from deterministic current-head evidence because GitHub Checks have failed.

Findings

1. HIGH Current-head GitHub Checks - Fix failed required checks before approval

  • Problem: Failed same-head checks remain for 54aa21b59c6c2cba28c7c2289ced62005b4b5906.
  • Root cause: The model-unavailable evidence fallback is allowed only when peer GitHub Checks are complete and clean.
  • Fix: Read and fix the failed check logs below, then rerun the current-head checks.
  • Regression test: Keep the model-unavailable fallback gated on an empty failed-check rollup.

Failed checks:

Changed-File Evidence Map

flowchart LR
  PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
  Evidence --> S1["Workflow (2 files)"]
  S1 --> I1["GitHub Actions review job"]
  I1 --> R1["Review risk: Workflow (2 files)"]
  R1 --> V1["actionlint plus required checks"]
  Evidence --> S2["Changed file (2 files)"]
  S2 --> I2["repository behavior"]
  I2 --> R2["Review risk: Changed file (2 files)"]
  R2 --> V2["required checks"]
Loading

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants