Repository navigation
fix(ci): lock dependency review actions and detect lockfile changes - #2460
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.OpenSSF Scorecard
Scanned Files
|
257b803 to
be94021
Compare
There was a problem hiding this comment.
🟡 Changes recommended
Lockfile-only updates are not recognized by dependency-change detection and would skip the dependency-review gate.
1 open issue
What changed in this PR
This PR pilots GitHub Actions dependency locking for EventRelay’s dependency-review workflow, adding recorded action commits and repository identities without changing its existing jobs or policies.
Changes:
- Adds a generated lockfile covering one workflow and three actions.
- Updates three action references to exact version tags backed by the lockfile.
- Preserves the security fixes inherited from merged PR #2456 and leaves separate gh-aw lock formats unchanged.
| File | Description |
|---|---|
.github/workflows/dependency-review.yml |
Uses exact action version tags matching the locked graph. |
.github/workflows/actions.lock |
Records action commits and owner/repository identities. |
Review effort: Balanced
Recognize the exact Actions lockfile path in the dependency-input detector. Exercise the workflow detector against real single-file Git diffs, including unrelated actions.lock names and the separate gh-aw lock format. Refs #2448; addresses review discussion_r4354819144.
TEST — conflict repair and final-head verification, 2026-10-29Owner: groupthinking / MCP Strategic Watch. Ledger action156. Implemented and VERIFIED: reconciled this existing pilot with main Published:
Complete current recipe, official evidence, access/cost constraints and rollback. Effort to repeat: ESTIMATE15–30minutes, not measured savings. Workflow benefit: deterministic reviewed action commits; possible CI provenance service revenue remains a hypothesis. Remaining: merge is BLOCKED on Hayden's explicit approval of PR#2460 or this exact head. Then re-fetch head/checks/reviews/threads/mergeability and use expected-head protection; record actual merge commit. No production deployment or live-provider acceptance is claimed. Existing Watch remains enabled; next execution timestamp returned null (UNKNOWN), and no duplicate timer was created. Historical interim lock startup failure and two literal-ref test failures were repaired and retained in the audit trail. Earlier green old-head results were not reused as current proof. |
Approved merge verified — 2026-10-29Hayden explicitly approved PR #2460 in the conversation following the request identifying this PR and head Executed: expected-head protected merge; GitHub returned merged=true at Pre-merge checks were freshly fetched:34 checks (31success,3skipped), both external commit statuses success, zero pending/failing. Active main ruleset24057160 required issue-closer check passed; no bypass actors or override used. Legacy branch-protection detail returned403 due connector access, but branch summary and active ruleset were read successfully. One review thread was resolved; no CHANGES_REQUESTED reviews; mergeability true/clean. Expected-head SHA protected against races. This completes the approved lockfile pilot integration. Earlier test/repair evidence and runnable recipe remains historical proof for the exact tree. Automatic post-merge workflows started, including CI40923845147 and Dependency Review40923844984; at this receipt those fresh runs are IN PROGRESS, not yet claimed passed. No manual deployment or workflow dispatch was initiated. Existing main-push automation may interact with external services; production acceptance and external auto-deployment status are not inferred from this merge. Image findings #2478/#2396 and account applicability #2471 remain separate. Canonical ledger action158; review follows readback. |
|
Post-merge verification — 2026-10-30 Verified merge commit
Scope of proof: the main-push snapshot and lock execution succeeded. PR-only comparison/evidence steps were skipped on this push; this is not a new PR comparison, vulnerability-free assertion, or production acceptance test. The six named runs were inspected individually; no claim is made that every repository automation was enumerated. The approved #2448/#2460 pilot is integrated and its post-merge verification is complete. The separate identity/scope correction is already in draft #2515 for #2514; this run did not duplicate or merge that work. No deployment or paid provider call was initiated. |

Merged — approved lockfile pilot, 2026-10-29
This PR locks the Actions dependencies of
.github/workflows/dependency-review.ymland ensures futureactions.lock-only changes reach Dependency Review. It preserves main's full-tree scans, complete npm/uv lock snapshots, graph-drift checks, evidence retention, timeouts and license/advisory policy.Head:
854c4050ee9189b2665051615cab374416376cfb. Base reviewed:0c99258342fa862e6bb1b38f8dc819879bf83175. Three changed files: workflow, generated Actions lock, workflow regression tests. The temporary generator is removed. Merged after Hayden's explicit approval atf258db8a6cc38c064ba4d7ca1baee02bedbd0534; merge tree matches the tested head exactly. Verified merge receipt. The validation and prior approval-blocker statements below describe the pre-merge checkpoint.Closes #2448. Security prerequisite #2456 is merged; #2459 is not being reopened.
October 29 repair and acceptance
Fresh GitHub state reported the old head
5cd469aas conflicting. A local merge reproduced conflicts in the workflow and its tests. The repair preserves main's scannerv0.2.0, four-minute pip bound, complete lock-snapshot submission and graph checks, while retaining the exact Actions lockfile detector and gh-aw exclusions. Existing tests now resolve the generated lock to verify the same required commit hashes rather than assuming literal YAML SHA syntax.3c4d90c25ea2dec4dd613fd30c6eea0bdf68b32c: generation, local coverage, online verification, missing-reference negative test, restoration and scoped changes all passed.7c730cc452c55360d3d66aee401dd5a072d57f5cb32fb9a48930f7407628018f.c3fd17377d2fc3d699ca665f60c6bc25d4aabed56539fc380d49d650ec8903cb.cd0624feea45849ca6d358927f5feb8d26d204f8.Locked graph
The additional upload-artifact action and scanner update come from current main; the generated graph preserves those exact commits.
Current official evidence, access and cost
GitHub's October28 GA announcement explicitly includes Free, Team, Enterprise Cloud and data-residency plans. The setup guide still displays Enterprise Cloud only; retain that documentation discrepancy. Concept documentation describes locked commits and repository identity; reusable workflows and other build inputs are outside its protection. Locking does not establish upstream code safety.
Official CLI v0.4.0 Linux-amd64 SHA-256:
f9da98f2a6e9e0ae77deadf9a2319a8a86bb002b541cc3203b247cc59fb04842. Local generation could not authenticate; the existing safe alternative used a standard Ubuntu job in this public repository with only contents:read and its runner-issued token. No connector credential was exported. The generator uploaded no artifacts. Billing: standard public-repository hosted runners are free; artifact storage and larger runners have separate billing. Existing final workflow evidence upload is inherited from main.Repeatable bounded recipe
Prerequisites: clean checkout of this exact head, Python3.11 or3.12 with pytest/pytest-asyncio/PyYAML, GitHub CLI and official actions-lock0.4.0; online verification needs authorized upstream read access.
854c4050ee9189b2665051615cab374416376cfb.v0.0.0-pilot-missing; local verification must exit1. Restore the exact workflow and require exit0.gh actions-lock --no-interactive .github/workflows/dependency-review.yml; review generated files. Never hand-edit the lock or use moved-ref exceptions unattended.**ESTIMATE:**15–30 minutes to repeat/review; not measured savings. Possible deliverable: supervised workflow provenance audits for software teams; revenue remains a hypothesis. Rollback before merge: revert only this pilot's branch changes; after an approved merge, use a reviewed revert preserving unrelated main fixes.
Audit and limits
Interim dependency-review startup failure occurred with the stale pre-regeneration lock; it is superseded, not waived. After generation two literal-ref assertions failed; resolving the generated pins preserved their exact SHA expectations and all23 tests passed. Local Python3.11 was unavailable; hosted matrix remains the verification source. No new provider calls, production deployment, permission/license exception or merge was initiated. Canonical ledger action156; prior receipt remains historical.