Skip to content

fix(ci): stop Dependabot desyncing the gh-aw lock files - #155

Merged
WomB0ComB0 merged 1 commit into
masterfrom
fix/gh-aw-lockfile-drift
Aug 3, 2026
Merged

fix(ci): stop Dependabot desyncing the gh-aw lock files#155
WomB0ComB0 merged 1 commit into
masterfrom
fix/gh-aw-lockfile-drift

Conversation

@WomB0ComB0

@WomB0ComB0 WomB0ComB0 commented Aug 3, 2026

Copy link
Copy Markdown
Member

What

Every agentic workflow in this repo has been failing — 50 runs in the last 30 days, the largest single failure cluster in the org after the runner watchdog. The agent never starts:

Error: Cannot find module '/home/runner/work/_temp/gh-aw/actions/merge_awf_model_multipliers.cjs'
    code: 'MODULE_NOT_FOUND'
##[error]Process completed with exit code 1.

Root cause

*.lock.yml files are generated and carry a DO NOT EDIT banner. Their body is only valid against the exact github/gh-aw-actions/setup release that produced it — that action is what materialises the .cjs helpers into $RUNNER_TEMP.

Ours had split-brained:

version
compiler_version in metadata v0.79.4
sha recorded in the manifest d059700c… (v0.79.4)
what the body actually uses: 6f8e8ef2… (v0.83.3)

So a v0.79.4 body ran against a v0.83.3 setup action, and called a helper that release no longer ships.

Dependabot did the bumping. Every single commit touching these generated files is a Dependabot bump (#149, #146, #144, #135, #123, #114). The ignore rule intended to prevent exactly this never matched anything:

- dependency-name: "github/gh-aw-actions"   # never matched

Dependabot identifies an action by its full path, so the dependency is github/gh-aw-actions/setup. Without a wildcard the rule was a no-op.

This is corroborated org-wide — the only two repos whose ignore lacks the wildcard are the only two with skewed lock files:

repo ignore rule lock files
crates github/gh-aw-actions 4 skewed
resQ github/gh-aw-actions 8 skewed
dev, docs, landing, npm, research github/gh-aw-actions* all consistent

Fix

  1. Widen the ignore to github/gh-aw-actions* so it actually applies.
  2. Recompile all four workflows with gh aw compile (v0.83.4) so body, manifest and pinned action agree again. This matches viz, already on v0.83.4.

Verification

  • gh aw compileCompiled 4 workflow(s): 0 error(s), 0 warning(s)
  • compiler_version now equals the pinned setup version in all four lock files (v0.83.4)
  • Manifest SHA e89c65e1… now matches the body's uses: SHA
  • The regenerated output no longer references merge_awf_model_multipliers.cjs at all — that helper was a v0.79.4-era artifact, so the crash is structurally gone

The large diff is entirely regenerated output; the only hand-written change is the 1-line ignore pattern in .github/dependabot.yml.

Note

resq-software/resQ has the identical bug across 8 lock files and is being fixed in a companion PR.

Summary by CodeRabbit

  • Maintenance

    • Updated automated repository workflows for improved reliability, security, and runtime handling.
    • Improved automated cleanup across discussions, issues, and pull requests with more focused permissions.
    • Enhanced activity reporting, usage tracking, artifact collection, and operational logging.
  • Bug Fixes

    • Improved handling of authentication failures, usage limits, unsupported models, and other workflow errors.
    • Improved automated detection coverage by ensuring eligible runs are evaluated consistently.

Every gh-aw run in this repo has crashed before reaching the agent:

    Error: Cannot find module '.../gh-aw/actions/merge_awf_model_multipliers.cjs'
    MODULE_NOT_FOUND

The lock files are generated ("DO NOT EDIT") and their body is only valid
against the exact `github/gh-aw-actions/setup` release that produced it. Ours
had drifted apart — metadata said compiler v0.79.4 while the body had been
bumped to setup v0.83.3 — so the body invoked a helper that release no longer
ships.

Dependabot did the bumping. The ignore rule meant to prevent that never
matched: Dependabot names an action by its full path, so the dependency is
`github/gh-aw-actions/setup`, and a bare `github/gh-aw-actions` silently
matched nothing. Every commit touching these files is a Dependabot bump.

Widen the ignore to `github/gh-aw-actions*` so the rule actually applies, and
recompile all four workflows with gh aw v0.83.4 so body, manifest and pinned
action agree again.
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

@github-actions github-actions Bot added size/XXL A-DevOps CI/CD and tooling labels Aug 3, 2026
@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The pull request upgrades generated GitHub workflows to gh-aw v0.83.4. It updates Copilot CLI and AWF runtimes, adds daily AI-credit and OAuth handling, moves Safe Outputs to MCP stdio containers, and revises maintenance jobs and reporting.

Changes

gh-aw workflow upgrade

Layer / File(s) Summary
Maintenance and generated toolchain updates
.github/aw/actions-lock.json, .github/dependabot.yml, .github/workflows/agentics-maintenance.yml, .github/workflows/ai-auditor.lock.yml, .github/workflows/auto-triage-issues.lock.yml, .github/workflows/daily-secrets-analysis.lock.yml, .github/workflows/duplicate-code-detector.lock.yml
Actions and generated workflows now use gh-aw v0.83.4. Maintenance cleanup uses separate permissions for discussions, issues, and pull requests. Reporting uses updated repository variables and activity-log options.
Agent activation and rootless runtime
.github/workflows/ai-auditor.lock.yml, .github/workflows/auto-triage-issues.lock.yml, .github/workflows/daily-secrets-analysis.lock.yml, .github/workflows/duplicate-code-detector.lock.yml
Agent jobs use daily AI-credit outputs, OAuth validation, Copilot CLI 1.0.75, AWF 0.27.42, rootless execution, home-based configuration, expanded model mappings, and runtime diagnostics.
MCP gateway and Safe Outputs execution
.github/workflows/ai-auditor.lock.yml, .github/workflows/auto-triage-issues.lock.yml, .github/workflows/daily-secrets-analysis.lock.yml, .github/workflows/duplicate-code-detector.lock.yml
Safe Outputs now runs through stdio MCP containers. Gateway setup uses bridge networking, rootless Docker socket handling, expanded mounts and environment variables, and updated processing logs.
Conclusion, usage, and detection flow
.github/workflows/ai-auditor.lock.yml, .github/workflows/auto-triage-issues.lock.yml, .github/workflows/daily-secrets-analysis.lock.yml, .github/workflows/duplicate-code-detector.lock.yml
Conclusion jobs collect expanded usage artifacts, persist daily AI-credit state, report new failure types, and run detection whenever the agent is not skipped.

Estimated code review effort: 5 (Critical) | ~120 minutes

Sequence Diagram(s)

sequenceDiagram
  participant Activation
  participant Agent
  participant MCPGateway
  participant Conclusion
  Activation->>Agent: provide AI-credit and runtime configuration
  Agent->>MCPGateway: invoke GitHub and Safe Outputs MCP services
  MCPGateway-->>Agent: return tool results
  Agent->>Conclusion: provide outputs and usage data
  Conclusion->>Conclusion: persist credits and process Safe Outputs
Loading
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main change: preventing Dependabot from causing gh-aw lock-file desynchronization.
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.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/gh-aw-lockfile-drift

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.

❤️ Share

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/auto-triage-issues.lock.yml:
- Around line 555-558: Update the add_labels.labels schema to match
create_issue.labels by restoring its per-item type declaration, sanitization
rule, and maximum label length. Preserve the required array configuration and
use the same existing safety-policy values as create_issue.labels rather than
adding a separate policy.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 6acaa9e7-1147-4774-96e8-ed2392c46360

📥 Commits

Reviewing files that changed from the base of the PR and between 3c0cdd9 and 9399dc8.

📒 Files selected for processing (7)
  • .github/aw/actions-lock.json
  • .github/dependabot.yml
  • .github/workflows/agentics-maintenance.yml
  • .github/workflows/ai-auditor.lock.yml
  • .github/workflows/auto-triage-issues.lock.yml
  • .github/workflows/daily-secrets-analysis.lock.yml
  • .github/workflows/duplicate-code-detector.lock.yml

Comment thread .github/workflows/auto-triage-issues.lock.yml
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Audit Results: PASS

The audit of the changes in this pull request has been completed. No security vulnerabilities, logic bugs, or performance issues were identified.

Summary of changes:

  • Updated .github/dependabot.yml to correctly ignore github/gh-aw-actions* sub-paths, preventing Dependabot from desyncing lock files.
  • Upgraded gh-aw framework and associated GitHub Actions to version v0.83.4 across all lock files and maintenance workflows.
  • Improved the agentics-maintenance.yml workflow by splitting the entity cleanup into granular jobs and enhancing security through the use of environment variables instead of expression expansion in shell scripts.
  • Systematic update of container images and internal script handling in the .lock.yml files, aligned with the latest framework standards.

Overall, these changes improve the stability and maintainability of the CI/CD pipeline.

Warning

Firewall blocked 1 domain

The following domain was blocked by the firewall during workflow execution:

  • localhost

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "localhost"

See Network Configuration for more information.

Generated by ai-auditor for #155 · age00 · 23.3 AIC · ⌖ 1.23 AIC · ⊞ 7.4K ·

@WomB0ComB0
WomB0ComB0 merged commit 87c93f0 into master Aug 3, 2026
22 checks passed
@WomB0ComB0
WomB0ComB0 deleted the fix/gh-aw-lockfile-drift branch August 3, 2026 08:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-DevOps CI/CD and tooling size/XXL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant