Skip to content

fix: update dependency update workflows to fix #1075 and #1076#1079

Merged
dgee2 merged 4 commits into
mainfrom
dgee2/fix-workflow-failures-1075-1076
May 25, 2026
Merged

fix: update dependency update workflows to fix #1075 and #1076#1079
dgee2 merged 4 commits into
mainfrom
dgee2/fix-workflow-failures-1075-1076

Conversation

@dgee2

@dgee2 dgee2 commented May 25, 2026

Copy link
Copy Markdown
Owner

Summary

Fixes two GitHub Actions agentic workflow failures, and adds missing source-file coverage for future Node code-changing updates.

Issue #1075 - Dependency Update Node

Root cause: When msw is updated, pnpm dlx msw init public/ --save regenerates ui/menu-website/public/mockServiceWorker.js. This file was not in the allowed-files list, so the safe-output system rejected the PR.

Fix: Added ui/menu-website/** to the allowed-files list in dependency-update-node.md, covering all UI source, config, and generated files.

Issue #1076 - Dependency Update GitHub Actions

Root cause (two parts):

  1. Scope problem: The dependency-update-github-actions skill was parsing *.lock.yml files (auto-generated by gh aw compile) as valid update targets - these should never be directly edited.
  2. Safety problem: The protect_top_level_dot_folders default in gh-aw blocks any .github/ file edits, causing hard failures when attempting to update main.yml and codeql.yml.

Fix:

  • Updated SKILL.md to explicitly exclude *.lock.yml files from discovery (they are compiled outputs, not source files).
  • Added protected-files: fallback-to-issue to dependency-update-github-actions.md so that workflow files in .github/ create a review issue instead of hard-failing.

Proactive fix - Node code-changing update PRs

Root cause: If a Node package bump requires source code changes (TypeScript type fixes, Vue component updates, config file changes, etc.), the safe-output would block the PR because ui/menu-website/** was not in the allowed-files list.

Fix: Added ui/menu-website/** to the allowed-files in dependency-update-node.md, covering src/**, e2e/**, .storybook/**, vite.config.ts, eslint.config.ts, tsconfig*.json, playwright.config.ts, and any other UI files.

.NET workflow - proactive fix

Added allowed-files: backend/** to the .NET dependency update workflow, applying the principle of least privilege. This covers all legitimate update scenarios (.csproj for simple bumps, .cs for code-changing updates, .props/.targets for Aspire tool-driven updates) while preventing the agent from accidentally touching frontend or workflow files.

All three .lock.yml files were regenerated via gh aw compile after the .md changes.

Verification

Both originally-failing workflows were triggered on this branch and completed successfully:

Closes #1075
Closes #1076

Issue #1075 (Dependency Update Node):
- Add ui/menu-website/public/mockServiceWorker.js to the allowed-files
  list so PRs that update msw can include the regenerated worker file

Issue #1076 (Dependency Update GitHub Actions):
- Add protected-files: fallback-to-issue so workflow file updates in
  .github/ create a review issue instead of failing outright
- Update SKILL.md to exclude auto-generated *.lock.yml files from
  GitHub Actions discovery scope (they are compiled outputs from
  gh aw compile and must not be edited directly)

Recompiled both .lock.yml files via gh aw compile after the .md changes.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 25, 2026 19:53

Copilot AI 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

This PR fixes two failures in the repo’s agentic dependency-update workflows by adjusting safe-output allowlists and tightening GitHub Actions workflow discovery so generated lock workflows aren’t treated as update targets.

Changes:

  • Allow ui/menu-website/public/mockServiceWorker.js to be modified by the Node dependency-update workflow safe-output gate.
  • Configure the GitHub Actions dependency-update workflow to fall back to creating a review issue when protected .github/ files are touched.
  • Update the GitHub Actions dependency-update skill to exclude *.lock.yml workflow outputs from discovery; regenerate the corresponding compiled .lock.yml workflows.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.

Show a summary per file
File Description
.github/workflows/dependency-update-node.md Adds mockServiceWorker.js to safe-output allowed files to prevent PR creation failures when msw regenerates it.
.github/workflows/dependency-update-node.lock.yml Regenerated compiled workflow reflecting the updated safe-output allowlist.
.github/workflows/dependency-update-github-actions.md Sets protected-files: fallback-to-issue to avoid hard failures when updates touch protected .github/ workflow files.
.github/workflows/dependency-update-github-actions.lock.yml Regenerated compiled workflow reflecting the protected-files fallback policy.
.github/skills/dependency-update-github-actions/SKILL.md Excludes *.lock.yml from workflow discovery so the agent doesn’t attempt to update compiled outputs.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

dgee2 and others added 2 commits May 25, 2026 22:06
…e PRs

ui/menu-website/src/** and ui/menu-website/e2e/** are now in the
allowed-files list so that code-changing Node updates (e.g. TypeScript
or Vue fixes required by a package bump) can create PRs without being
blocked by the safe-outputs allowed-files check.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Scope the .NET dependency updater to backend/** only, applying the
principle of least privilege. Without this, the agent could include
any repo file in a PR. Covers all legitimate update scenarios:
- .csproj for simple NuGet version bumps
- .cs for code-changing updates
- .props/.targets for Aspire tool-driven updates

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 25, 2026 21:50
@dgee2 dgee2 enabled auto-merge (squash) May 25, 2026 21:51
@dgee2 dgee2 disabled auto-merge May 25, 2026 21:52

Copilot AI 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

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Comment thread .github/workflows/dependency-update-node.md Outdated
Comment thread .github/workflows/dependency-update-dotnet.md
… PRs

Replaces the three separate entries (mockServiceWorker.js, src/**, e2e/**)
with a single ui/menu-website/** pattern. This also covers config files
(.storybook/**, vite.config.ts, eslint.config.ts, tsconfig*.json,
playwright.config.ts) that may need changes during code-changing
dependency updates, preventing future safe-output rejections.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@sonarqubecloud

Copy link
Copy Markdown

@dgee2 dgee2 merged commit 41f1173 into main May 25, 2026
13 checks passed
@dgee2 dgee2 deleted the dgee2/fix-workflow-failures-1075-1076 branch May 25, 2026 22:04
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.

[aw] Dependency Update GitHub Actions failed [aw] Dependency Update Node failed

2 participants