Skip to content

fix(ci): use patched Go for dependency validation - #70

Merged
joshavant merged 1 commit into
mainfrom
security/emudhra-go-compatibility
Oct 22, 2026
Merged

joshavant merged 1 commit into
mainfrom
security/emudhra-go-compatibility

Conversation

@joshavant

Copy link
Copy Markdown
Contributor

The dependency CI matrix still downloaded modules and built with Go 1.27.0, whose verifier accepts the compromised eMudhra keys. Use the released Go 1.27.3 compiler for that job and document the patched minimum for supported source builds. Preserve the module’s language baseline, ordinary test job, module verification, tidy checks, vulnerability scan and advisory artifacts.

Validation in the isolated Linux arm64 guest: actual Go 1.27.3 with GOTOOLCHAIN=local; both modules verify and remain unchanged after go mod tidy -diff; all package race tests and the CLI build pass. Workflow parsing, actionlint and git diff --check pass. Independent P0–P2 review found no actionable findings.

The selected compiler’s incident-chain rejection is qualified separately. Published binaries, other platforms, installed runtimes, OS trust and GitHub Actions’ embedded runtimes remain separate delivery and qualification obligations. No release or deployment is included.

@clawsweeper

clawsweeper Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

ClawSweeper review complete

ClawSweeper finished reviewing this revision. The review result is being finalized.

View the workflow run.

@clawsweeper clawsweeper Bot added clawsweeper:intake:bug Preliminary submission classification; full source review pending. clawsweeper:intake:needs-repro Preliminary submission classification; full source review pending. P2 Normal priority bug or improvement with limited blast radius. merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed clawsweeper:intake:bug Preliminary submission classification; full source review pending. clawsweeper:intake:needs-repro Preliminary submission classification; full source review pending. labels Oct 21, 2026
@clawsweeper

clawsweeper Bot commented Oct 21, 2026

Copy link
Copy Markdown

Codex review: needs maintainer review before merge.

What this changes

This PR uses Go 1.27.3 for dependency validation and documents it as the supported source-build minimum.

Example: A pull request runs the dependency-validation workflow.

  • Before: Separate jobs use Go 1.27.0 and Go 1.27.3 with automatic toolchain switching disabled.
  • After: One job asserts Go 1.27.3 and runs module verification, tidy checks, and vulnerability scanning.

Review scores

Measure Result What it means
Overall readiness 🐚 platinum hermit (4/6) A focused, justified CI maintenance change with passing head checks and no actionable findings.
Proof confidence 🌊 off-meta tidepool Not applicable: The supplied maintainer-authored designation exempts this PR from the ordinary contributor proof gate; the body reports isolated compiler validation and head CI passes, without independently proving incident-chain rejection.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Product

Kind: Maintenance · Worth it: Yes · Fix scope: Complete
User problem: Dependency CI continues to execute an older compiler despite the repository's patched preferred toolchain.
Reason: The supplied maintainer-authored designation establishes direction for retiring minimum-compiler validation, and the diff preserves the other dependency safeguards.

Merge readiness

✅ Ready for maintainer review

Keep this PR open: main still runs dependency validation with Go 1.27.0, and this focused change removes that lane while preserving the remaining checks; no actionable patch defect was found.

Priority: P2
Reviewed head: 6b2d220b71d15b296a810a08e2774469e4d80b7e

Before merge

None.

Findings

None.

Agent review details

How this fits together

GitHub Actions consumes the repository's application and tools modules, selects the validation compiler, and produces dependency-check results and retained advisory artifacts.

flowchart TD
  A[Repository modules] --> B[Dependency CI job]
  B --> C[Assert Go 1.27.3]
  C --> D[Verify and tidy both modules]
  D --> E[Vulnerability scanner]
  E --> F[Advisory artifacts]
Loading

Technical review

Best possible solution:

Land the focused compiler-selection change with its explicit source-support documentation.

Do we have a high-confidence way to reproduce the issue?

Current main explicitly runs dependency validation with Go 1.27.0 and GOTOOLCHAIN=local; certificate-chain acceptance itself was not independently reproduced.

Is this the best way to solve the issue?

Selecting the already preferred patched compiler removes the outdated validation lane without adding another owner or changing application behavior.

AGENTS.md: not found in the target repository.

Codex review notes: model internal, reasoning medium; reviewed against cdaaf70f897b.

Provenance checked

Testing

Proof path: unit tests only.

Security

None.

Evidence

What I checked:

Likely related people:

  • Peter Steinberger: Raw commit 15c2cca adds .github/workflows/ci.yml:104 relative to its recorded parents. This identifies author metadata, not feature responsibility or a PR merger. (role: source-line author; confidence: high; commits: 15c2cca0909a; files: .github/workflows/ci.yml)
  • Vincent Koc: Raw commit ee3a8c2 adds .github/workflows/ci.yml:96 relative to its recorded parents. This identifies author metadata, not feature responsibility or a PR merger. (role: source-line author; confidence: high; commits: ee3a8c2f8714; files: .github/workflows/ci.yml)
  • Doug Simpson: Raw commit 33c985d adds .github/workflows/ci.yml:118 relative to its recorded parents. This identifies author metadata, not feature responsibility or a PR merger. (role: source-line author; confidence: high; commits: 33c985de4662; files: .github/workflows/ci.yml)

Labels

Label changes:

  • add P2: This is focused dependency-CI hardening rather than a demonstrated outage in the shipped application.
  • add merge-risk: 🚨 compatibility: Supported source builds move from Go 1.27.0 to Go 1.27.3; the maintainer-authored direction explicitly accepts this change and documents the retained language baseline.
  • add rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🌊 off-meta tidepool and patch quality is 🐚 platinum hermit.
  • add status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR.

Label justifications:

  • P2: This is focused dependency-CI hardening rather than a demonstrated outage in the shipped application.
  • merge-risk: 🚨 compatibility: Supported source builds move from Go 1.27.0 to Go 1.27.3; the maintainer-authored direction explicitly accepts this change and documents the retained language baseline.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🌊 off-meta tidepool and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR.

Rating scale

6/6 🦀 challenger crab · 5/6 🦞 diamond lobster · 4/6 🐚 platinum hermit · 3/6 🦐 gold shrimp · 2/6 🦪 silver shellfish · 1/6 🧂 unranked krab. Overall follows the weaker of proof and patch quality; ✨ marks media proof (a screenshot, video, or linked artifact) that directly shows the changed behavior.

Workflow

ClawSweeper edits this one comment on every review. Comment @clawsweeper re-review for a fresh review only. Repair and merge execution lanes are retired.

Reviewed October 21, 2026, 6:53 PM ET / 22:53 UTC.

@joshavant
joshavant merged commit 146cfdd into main Oct 22, 2026
18 checks passed
@joshavant
joshavant deleted the security/emudhra-go-compatibility branch October 22, 2026 17:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. P2 Normal priority bug or improvement with limited blast radius. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant