Skip to content

fix(workflows): close fork-PR/workflow-file-PR secret-strip gap and normalize upload-artifact version#1421

Merged
katriendg merged 3 commits intomainfrom
bug/agentic-workflow-forks
Apr 23, 2026
Merged

fix(workflows): close fork-PR/workflow-file-PR secret-strip gap and normalize upload-artifact version#1421
katriendg merged 3 commits intomainfrom
bug/agentic-workflow-forks

Conversation

@bindsi
Copy link
Copy Markdown
Member

@bindsi bindsi commented Apr 22, 2026

Pull Request

Description

Fixes three regression-class bugs in the repository's agentic PR-review workflows and normalizes the repo-wide actions/upload-artifact version comment to match the upgraded gh aw compiler's output.

What changed:

  1. Fork PRs no longer crash pr-review (#1368). forks: ["*"] was removed from pr-review.md frontmatter so gh aw compile auto-emits an activation-job-level fork guard (github.event.pull_request.head.repo.id == github.repository_id). Fork PRs now short-circuit at the activation and pre_activation jobs before the Validate COPILOT_GITHUB_TOKEN secret step runs — the step that was failing because GitHub strips secrets from fork PRs.
  2. Dependabot workflow-file PRs no longer trigger dependency-pr-review (#1367). Removed .github/workflows/*.yml from on.pull_request.paths:. GitHub strips secrets from workflow-file PRs on the same security model as forks; this path-filter entry caused the workflow to activate without the token it needs.
  3. Bot-author short-circuit hardened (#1369). Added an Activation Guard bullet that references github.event.pull_request.user.login for dependabot[bot] and github-actions[bot]. Documents the intent that complements the runtime check_skip_bots.cjs check (which matches github.actor) — once the agentic runtime stops erroneously matching on github.actor upstream.
  4. Repo-wide normalization (WI-06). gh-aw-actions/setup was bumped v0.68.1 → v0.68.3, which caused the compiler to emit # v7.0.1 version comments on actions/upload-artifact@043fb46d…. Updated 27 hand-authored workflows and recompiled 5 lock files so lint:version-consistency stays clean. The underlying SHA is unchanged — only the trailing version comment was updated.

See the changes log and review log for the full RPI + review record.

Related Issue(s)

Type of Change

Code & Documentation:

  • Bug fix (non-breaking change fixing an issue)
  • New feature (non-breaking change adding functionality)
  • Breaking change (fix or feature causing existing functionality to change)
  • Documentation update

Infrastructure & Configuration:

  • GitHub Actions workflow
  • Linting configuration (markdown, PowerShell, etc.)
  • Security configuration
  • DevContainer configuration
  • Dependency update

AI Artifacts:

  • Reviewed contribution with prompt-builder agent and addressed all feedback
  • Copilot instructions (.github/instructions/*.instructions.md)
  • Copilot prompt (.github/prompts/*.prompt.md)
  • Copilot agent (.github/agents/*.agent.md)
  • Copilot skill (.github/skills/*/SKILL.md)

Not applicable to this PR — no AI artifact files modified.

Other:

  • Script/automation (.ps1, .sh, .py)
  • Other (please describe):

Sample Prompts (for AI Artifact Contributions)

Testing

Compile + validation pipeline (all passed):

Check Result
gh aw compile (5 workflows) 0 errors, 0 warnings
npm run lint:md 0 errors across 196 files
npm run lint:yaml actionlint clean, 48/48 workflow files
npm run lint:frontmatter 0 errors
npm run lint:version-consistency 0 mismatches across 361 actions
npm run lint:permissions 48/48 workflow files
npm run lint:dependency-pinning 100% compliance, 275 dependencies

Manual verification:

  • Confirmed .github/workflows/pr-review.lock.yml line 75 (activation job if:) and line 1264 (pre_activation job if:) both gate on github.event.pull_request.head.repo.id == github.repository_id.
  • Confirmed Validate COPILOT_GITHUB_TOKEN secret step at line 141 only runs inside the gated activation job.
  • Confirmed .github/workflows/dependency-pr-review.lock.yml line 79 has the propagated fork guard.

Runtime verification: Deferred to WI-05 (post-deploy verification across maintainer, fork-contributor, and Dependabot PR classes). Cannot run locally against secrets.COPILOT_GITHUB_TOKEN resolution behavior.

Checklist

Required Checks

  • Documentation is updated (if applicable) — N/A (workflow-only change)
  • Files follow existing naming conventions
  • Changes are backwards compatible (if applicable)
  • Tests added for new functionality (if applicable) — runtime verification deferred to WI-05

AI Artifact Contributions

  • Used /prompt-analyze to review contribution
  • Addressed all feedback from prompt-builder review
  • Verified contribution follows common standards and type-specific requirements

Not applicable — no AI artifact contributions.

Required Automated Checks

The following validation commands must pass before merging:

  • Markdown linting: npm run lint:md
  • Spell checking: npm run spell-check
  • Frontmatter validation: npm run lint:frontmatter
  • Skill structure validation: npm run validate:skills
  • Link validation: npm run lint:md-links
  • PowerShell analysis: npm run lint:ps
  • Plugin freshness: npm run plugin:generate
  • Docusaurus tests: npm run docs:test

Note: lint:py / validate:skills has a pre-existing environmental failure (ruff unavailable in Python skill venvs — tracked in planning log as DD-03) that is unrelated to this PR. No Python files were modified.

Security Considerations

  • This PR does not contain any sensitive or NDA information
  • Any new dependencies have been reviewed for security issues
  • Security-related scripts follow the principle of least privilege

Security posture summary: This PR is monotonically restrictive to the agentic workflow attack surface.

  • Attack surface reduced: pr-review no longer enters any post-activation job on fork PRs; dependency-pr-review no longer triggers on workflow-file-only PRs. Neither change broadens privileges.
  • No new dependencies: Only transitive SHA refreshes for already-pinned upstream actions (github/gh-aw-actions/setup v0.68.1 → v0.68.3 and actions/github-script @v9 to the latest tag SHA). SHA pinning preserved (lint:dependency-pinning 100%).
  • No permissions changes: No permissions: blocks modified; no new safe-outputs added.
  • No secret exposure: The fix closes a condition where Validate COPILOT_GITHUB_TOKEN secret could log a predictable failure string from an unauthenticated fork — previously benign but now impossible.

Additional Notes

Commit subject caveat: The branch carries a single commit whose subject (chore(workflows): update upload-artifact action to version 7.0.1 and refine PR review conditions) under-represents the PR's scope. If the reviewer squash-merges, the recommended merge commit subject is:

fix(workflows): close fork-PR/workflow-file-PR secret-strip gap and normalize upload-artifact version (#1365)

Follow-up tracking (from the planning log):

  • WI-01 — Audit doc-update-check.md and issue-triage.md for the same bot-author bypass pattern.
  • WI-02 — Upstream issue against github/gh-aw-actions proposing check_skip_bots.cjs also match pull_request.user.login.
  • WI-03 — Propose a first-class skip-forks: true frontmatter option to gh aw.
  • WI-05 — Post-deploy verification across maintainer-in-repo, non-fork contributor, and Dependabot manifest-only PR classes.

…refine PR review conditions

- remove forks support from PR review workflow
- add conditions to skip review for forked PRs and bot authors
- update all workflows to use the latest upload-artifact version

🔧 - Generated by Copilot

Co-authored-by: Copilot <[email protected]>
Signed-off-by: Marcel Bindseil <[email protected]>
@bindsi bindsi requested a review from a team as a code owner April 22, 2026 13:48
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 22, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 87.64%. Comparing base (2f2edca) to head (d5ff757).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #1421      +/-   ##
==========================================
- Coverage   87.92%   87.64%   -0.29%     
==========================================
  Files          62       61       -1     
  Lines        9593     9325     -268     
==========================================
- Hits         8435     8173     -262     
+ Misses       1158     1152       -6     
Flag Coverage Δ
pester 85.22% <ø> (-0.02%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 3 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

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

Advisory review, this PR is from a maintainer. Findings are informational only.


Review Summary

This is a well-scoped bug-fix PR that addresses three regression-class security-model failures in the agentic CI workflows, plus a repo-wide version-comment normalization. All linked issues are addressed. CI validation passes across the full suite of relevant checks. No blocking concerns identified.


Issue Alignment ✅

All four linked issues are directly addressed:

Issue Fix Verified
#1368 — Fork PRs crash pr-review Removed forks: ["*"] from pr-review.md; compiler emits fork guard on activation and pre_activation job if: conditions
#1367 — Dependabot workflow-file PRs fail dependency-pr-review Removed .github/workflows/*.yml from on.pull_request.paths in dependency-pr-review.md
#1369 — Bot-author short-circuit hardened Added github.event.pull_request.user.login check to pr-review.md Activation Guard
WI-06 — upload-artifact version comment normalization 27 hand-authored workflows updated; 5 lock files recompiled

No scope creep detected. Changes are narrowly scoped to the stated problems.


PR Template Compliance ⚠️ (minor, advisory)

The description, related issues, type of change, testing narrative, and security considerations sections are all exemplary. One minor observation:

Several Required Automated Checks are unchecked without explicit N/A annotations: spell-check, lint:md-links, lint:ps, plugin:generate, docs:test. For a workflow-only PR that touches no markdown prose, PowerShell scripts, or plugin manifests, these are legitimately not applicable — but marking them as N/A (or adding a brief note like was done for validate:skills and documentation) would improve audit clarity for future reviewers scanning the checklist. This is a minor polish item with no impact on correctness.


Coding Standards ✅

Changes to .github/workflows/*.yml files were reviewed against the GitHub Actions workflow instructions:

  • Dependency pinning: All actions remain pinned to full commit SHAs. The actions/upload-artifact SHA 043fb46d1a93c77aae656e7c1c64a875d1fc6a0a is unchanged; only the trailing # v7 → # v7.0.1 version comment was updated. lint:dependency-pinning reports 100% compliance. ✅
  • Permissions: No permissions: blocks were added or removed; existing least-privilege posture preserved. ✅
  • Generated files: Lock files correctly carry the DO NOT EDIT header and are driven by recompilation; direct edits were not made. ✅
  • YAML expression quoting: The folded block scalar (>) used for the fork-guard if: condition in pr-review.lock.yml is the correct pattern for multi-clause conditions and avoids the colon-space YAML parse hazard. ✅

Code Quality and Security ✅

Fork guard logic (pr-review.lock.yml):

if: >
  needs.pre_activation.outputs.activated == 'true' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.id == github.repository_id)

The condition is correct: it short-circuits at the activation job boundary before secrets are needed. The github.event_name != 'pull_request' clause ensures the guard only fires on pull_request events, preserving workflow_dispatch and other manual triggers.

Path filter removal (dependency-pr-review.md): Cleanly prevents workflow-file-only PRs from triggering the workflow at the platform level — the right layer for this fix.

Defense-in-depth: Adding the fork guard bullet to dependency-pr-review.md's Activation Guard is technically redundant now that the path filter prevents workflow-file-only PRs from triggering the workflow. However, this is intentional defense-in-depth and a good practice for resilience against future path-filter changes.

Bot-author guard: The github.event.pull_request.user.login check correctly targets the PR author rather than the event actor (github.actor), closing the maintainer-triggered bypass described in #1369.

Attack surface: This PR is monotonically restrictive — no permissions were broadened, no new secrets were exposed, and two previously reachable failure paths (fork secret-strip crash, bot-skip actor bypass) are now unreachable.


Advisory Observations

  1. WI-01 follow-up (doc-update-check.md, issue-triage.md): The corresponding .md source files for these two lock files are not modified in this PR. As documented, WI-01 tracks auditing these for the bot-author bypass pattern. The lock files in this PR only received version-comment normalization. This is the correct scoping decision.

  2. Commit message mismatch: The PR's suggestion to use fix(workflows): close fork-PR/workflow-file-PR secret-strip gap and normalize upload-artifact version (#1365) as the squash-merge commit message is a good recommendation — the current commit subject does not capture the security significance of the changes.

  3. Runtime verification deferred (WI-05): Post-deploy verification across maintainer, fork-contributor, and Dependabot PR classes is reasonable to defer. The static analysis confirms the logic is correct; live verification is the prudent next step after merge.


Verdict

No blocking issues. The PR is well-engineered, well-documented, and reduces the agentic workflow attack surface. Recommend merge after the maintainer is satisfied with the advisory observations above.

Generated by PR Review for issue #1421 · ● 973.6K

Copy link
Copy Markdown
Member

@WilliamBerryiii WilliamBerryiii left a comment

Choose a reason for hiding this comment

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

✅ Approve with minor suggestions (no blockers)

Reviewed PR #1421 against the three independent moving parts of the fork / secret-strip remediation:

  1. LLM-side Activation Guard in pr-review.md and dependency-pr-review.md — explicit noop instructions for fork PRs.
  2. Compiler-side if: injection via the gh-aw v0.68.1 → v0.68.3 bump that regenerates 5 .lock.yml files with if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.id == github.repository_id on pre_activation and downstream jobs (this is the primary defense; the prompt guard is defense-in-depth).
  3. Path filter trim in dependency-pr-review.md removing '.github/workflows/*.yml' from on.pull_request.paths.

All three changes are surgical and correct. The 44 KB dependency-pr-review.lock.yml diff is fully accounted for by the documented compiler cascade — no unintended drift.

Risk summary

Risk Area Assessment
Functional correctness ✅ Compiler-injected if: is the primary fork guard; LLM prompt is defense-in-depth
Security ⚠️ Verify upstream gh-aw-actions/setup v0.68.3 release notes (see inline RI-6)
Operational visibility ⚠️ Workflow-file dependency PRs no longer auto-reviewed (see inline RI-3) — accepted
Convention compliance ✅ Renovate patch-level convention satisfied across 27 workflows
Reviewability 💡 Diff size inflated by mechanical normalization — acceptable here

General notes (no specific file anchor)

RI-7 🔍 Closes-mapping verification. PR closes #1365 (epic), #1367, #1368, #1369. Mapping for the epic is clear. Worth a quick check that each of #1367 / #1368 / #1369 has a corresponding change visible in the diff — if any describe a separate symptom not covered here, split the closes-target rather than auto-closing on merge.

RI-5 💡 Process note for future PRs. 27 of 35 changed files are pure comment normalizations (# v7# v7.0.1). Bundling them with the substantive fix is acceptable here because the consistency lint runs on the same branch and would fail otherwise. In future, a separate "mechanical" PR for Renovate-convention normalizations would keep substantive review surface tighter. Not a blocker.

RI-4 ✅ # v7# v7.0.1 normalization. Confirmed across all 27 workflows: SHA 043fb46d1a93c77aae656e7c1c64a875d1fc6a0a is unchanged on every touched line; only the trailing version comment moves. This satisfies the Renovate-style patch-level convention enforced by scripts/security/Test-ActionVersionConsistency.ps1 and matches the manifest entry the gh-aw compiler resolves into the regenerated .lock.yml files ({"repo":"actions/upload-artifact","sha":"043fb46d…","version":"v7.0.1"}). No change requested.

Recommended next steps

  1. Author: respond to inline RI-3 (acknowledge manual-review gap, optionally open follow-up issue) and RI-6 (cite upstream github/gh-aw-actions v0.68.3 release notes in the PR description).
  2. Author: optional — pick up the clarifying comment from RI-1.
  3. Reviewer: spot-verify the SHA ba90f2186d7ad780ec640f364005fa24e797b360 against the upstream github/gh-aw-actions v0.68.3 tag.

Once RI-3 and RI-6 are acknowledged, this is ready to merge. Approving now since none of the seven items are blockers.

Reviewed via the pr-review skill against head SHA b398d865. Full handoff and supporting artifacts in .copilot-tracking/pr/review/bug-agentic-workflow-forks/.

Comment thread .github/workflows/dependency-pr-review.md
Comment thread .github/aw/actions-lock.json
Comment thread .github/workflows/pr-review.md
Comment thread .github/workflows/pr-review.md
@bindsi bindsi requested a review from katriendg April 23, 2026 09:42
…t workflow PRs

- pr-review.md: clarify that dependabot[bot] is skipped because dependency-pr-review
  owns automated review for dependency bumps (RI-1).
- CONTRIBUTING.md: document that Dependabot PRs bumping action SHAs inside
  .github/workflows/*.yml require manual maintainer review because GitHub strips
  secrets from workflow-file PRs (RI-3).
@bindsi
Copy link
Copy Markdown
Member Author

bindsi commented Apr 23, 2026

Thanks for the review @WilliamBerryiii — addressed in d5ff757:

RI-1 (bot-guard asymmetry): Added a clarifying sentence to the pr-review.md Activation Guard explaining that dependabot[bot] is skipped here because dependency-pr-review owns automated review for dependency bumps (prevents duplicate review).

RI-3 (dependency-pr-review paths trim): Added a new Dependabot Pull Requests section in CONTRIBUTING.md noting that workflow-file SHA bumps are not covered by the automated review (secrets-stripped on workflow-file PRs) and require manual maintainer verification of SHA pinning, upstream release notes, and license compatibility. The follow-up (workflow_run-trigger relocation) is a good candidate for a standalone issue — happy to file if you want to track it separately from this PR.

RI-6 (gh-aw-actions/setup v0.68.3 supply chain verification):

  • SHA verified: gh api repos/github/gh-aw-actions/git/refs/tags/v0.68.3 returns ba90f2186d7ad780ec640f364005fa24e797b360 — matches the pin.
  • Cascade confirmed against upstream release notes: AWF v0.25.18 → v0.25.20, agent/api-proxy/squid images at 0.25.20, gh-aw-mcpg:v0.2.19, github-mcp-server:v0.32.0, node:lts-alpine. No security-relevant flags raised in the v0.68.2 / v0.68.3 notes.

RI-2 (forks: ["*"] removal posture): Agree the compiler-injected if: gate is the primary mechanism and the prompt guard is defense-in-depth. I'll fold a note into the PR description; an ADR for the fork-sensitive agentic workflow pattern is a good call — can raise a separate follow-up issue if you'd like that tracked explicitly.

No functional workflow changes beyond the two docs edits; lint:md and lint:frontmatter both clean.

Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

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

Advisory review — this PR is from a maintainer. Findings are informational only.


Overview

This PR closes a well-documented triple-regression in the agentic workflow security boundary and performs a mechanical normalization of upload-artifact version comments following a gh aw compiler upgrade. The changes are precise, well-motivated, and backed by a thorough RPI trace. All four linked issues are addressed.


Issue Alignment ✅

Issue Requirement Addressed
#1365 (epic) All three problems resolved
#1367 Remove .github/workflows/*.yml from dependency-pr-review.md paths
#1368 Fork-PR detection in pr-review.md Activation Guard + compiled job condition
#1369 PR-author bot-skip in pr-review.md Activation Guard (partial — see inline note) ✅ (documented partial)

The acceptance criteria for #1368 are satisfied at both the agent-instruction layer and at the compiled workflow level — pre_activation and activation both gate on github.event.pull_request.head.repo.id == github.repository_id. The Validate COPILOT_GITHUB_TOKEN secret step can no longer be reached from a fork PR context.


PR Template Compliance ✅ (one advisory item)

  • Description: well-written; summarises all four changes with implementation rationale.
  • Related Issues: all four linked with proper close keywords.
  • Type of Change: "Bug fix" and "GitHub Actions workflow" are correctly checked; the CONTRIBUTING.md prose addition might arguably warrant "Documentation update" as a third check, though the omission is defensible since it is incidental to the workflow fix.
  • Testing: comprehensive validation table with explicit deferred items and rationale.
  • Security: accurately describes the monotonically-restrictive posture.
  • Advisory: npm run spell-check is unchecked without an N/A annotation. The workflow files don't need spell-check, but CONTRIBUTING.md was updated with new prose. See inline comment.

Coding Standards ✅

All workflow files follow the repository's pinning convention. The actions/upload-artifact SHA (043fb46d...) is unchanged; only the trailing comment was updated from # v7 to # v7.0.1, which is correct per lint:version-consistency. The gh-aw-actions/setup bump is reflected in actions-lock.json and all five compiled lock files.

One observation from the lock-file manifest diff: actions/github-script@v9 previously used two different SHAs (373c709c... and 3a2844b7...). After recompile, only 373c709c... is used, consolidating the react step and the standard github-script step to the same SHA. This is expected compiler behavior (the v0.68.1 → v0.68.3 upgrade standardized the react step SHA) and is safe — both were valid @v9 pins.


Code Quality and Security ✅

  • Fork guard placement: Correct. Both pre_activation (the earliest gating job) and activation check github.event.pull_request.head.repo.id == github.repository_id. The YAML > folded scalar in activation avoids the colon-space YAML parsing hazard documented in the workflow conventions.
  • Path filter removal: Straightforward. Removing .github/workflows/*.yml eliminates the only path that caused dependency-pr-review to trigger on secret-stripped PRs without broadening coverage elsewhere.
  • Bot-skip hardening: The agent-instruction layer is updated to check github.event.pull_request.user.login. The residual gap (runtime check_skip_bots.cjs still uses github.actor) is clearly tracked (WI-02) and acknowledged. See inline note on pr-review.md line 69.
  • CONTRIBUTING.md: The new "Dependabot Pull Requests" section is accurate, well-placed, and provides actionable guidance for maintainers handling workflow-file Dependabot bumps.

Follow-up Tracking (from PR)

The PR's WI-01 through WI-05 items are well-scoped. No additional items identified.


Two inline advisory comments posted. No blocking issues found.

Generated by PR Review for issue #1421 · ● 2.1M

Comment thread .github/workflows/pr-review.md
Comment thread CONTRIBUTING.md
@katriendg katriendg merged commit 6324a69 into main Apr 23, 2026
50 checks passed
@github-actions github-actions Bot mentioned this pull request Apr 23, 2026
WilliamBerryiii pushed a commit that referenced this pull request Apr 24, 2026
## Pre-Release 3.3.101

### ✨ Features

- add removed maturity tier and retire owasp-docker (#1444)
- add evaluation dataset creator (#1279)
- align RAI planner with guide, remove scoring, improve UX (#1287)
- add PSGallery staleness check and BOM cleanup (#1379)
- ISA-95 network planner agent (#1177)
- auto-generate collection.md with maturity filtering (#1316)
- add folder-consistency check and standardize WARN outp… (#1350)
- add synth-data-generate prompt to data-science collection (#1419)
- add canonical deck workflow and customer-card rendering for design
thinking (#1413)
- add Figma MCP integration for DT artifact export (#1222)
- introduce `owasp-docker` (#1245)
- replace hve-core-specific references with portable discovery-based
language (#1335)
- introduce `owasp-cicd` (#1246)
- add secure-by-design knowledge skill (#1223)
- introduce `owasp-infrastructure` (#1244)
- introduce `owasp-mcp` (#1207)
- add OutputPath parameter to Invoke-LinkLanguageCheck.ps1 (#1229)
- add -OutputPath parameter to Validate-SkillStructure.ps1 (#1225)
- add maintainer-only skip-review label guard (#1293)
- add extension collections overview and integrate into getting started
flow (#950)
- add agentic workflows for automated issue triage, implementation, PR
review, dependency review, and doc-staleness detection (#1219)
- consolidate package-lock.json version sync into
Update-VersionFiles.ps1 (#1240)
- add standards code review agent and full review orchestrator (#1174)
- standardize pytest-mock as Python mocking framework (#1170)
- add Jira backlog workflows and Jira/GitLab skills (#978)
- add centralized version bump script and supply-chain attestation
(#1183)

### 🐛 Bug Fixes

- pin PowerShell-Yaml to 0.4.7 across all install sites (#1378)
- close fork-PR/workflow-file-PR secret-strip gap and normalize
upload-artifact version (#1421)
- replace stream-based lookahead with array indexing in
list-changed-files.sh (#1376)
- centralize ISO 8601 timestamp regex in CIHelpers (#1343)
- update stale documentation date in release-process.md (#1363)
- pin basic-ftp to 5.3.0 to resolve GHSA-rp42-5vxx-qpwr (#1374)
- add bot filter to dependency PR review workflow (#1362)
- resolve pip-audit findings in powerpoint, gitlab, and jira skill lock
files (#1360)
- standardize Timestamp JSON key casing across all lint result files
(#1314)
- add synchronize trigger to PR Review workflow (#1323)
- standardize timestamp in Validate-SkillStructure.ps1 to use
Get-StandardTimestamp (#1280)
- add parallel subagent dispatch and structured JSON contracts to
code-review-full (#1304)
- standardize timestamp in SecurityHelpers.psm1 to use
Get-StandardTimestamp (#1284)
- standardize timestamps in Test-DependencyPinning.ps1 and
SecurityClasses.psm1 (#1282)
- derive collection artifact counts from YAML at build time (#1275)
- standardize timestamp in FrontmatterValidation.psm1 to use
Get-StandardTimestamp (#1285)
- standardize timestamp in Markdown-Link-Check.ps1 to use
Get-StandardTimestamp (#1283)
- escape hyphens in Mermaid diagram on Collections page (#1262)
- add summary timestamp to PSScriptAnalyzer output (#1211)
- fix plugin compatibility and robustness for coding-standards code
review agents (#1289)
- standardize timestamp in Test-CopyrightHeaders.ps1 to use
Get-StandardTimestamp (#1278)
- standardize timestamp in Invoke-YamlLint.ps1 to use
Get-StandardTimestamp (#1270)
- standardize timestamp in Invoke-LinkLanguageCheck.ps1 to use
Get-StandardTimestamp (#1264)
- fix dependency-review path filters and sparse-checkout cone mode
(#1259)
- replace invalid bare tool names with official tool identifiers (#1198)
- fix broken links and remove orphaned reference in code review docs
(#1257)
- exclude Python env dirs from skill validation warnings (#1255)
- pin happy-dom and serialize-javascript to resolve Dependabot
vulnerabilities (#1253)
- remove Mermaid diagram and add missing collection cards (#1247)
- disable MCP servers by default to prevent token limit errors (#1144)
- sync package-lock.json after pre-release version bump (#1236)
- separate mermaid node declarations and add dynamic diagram generation
with tests (#1215)
- replace anchor links in meeting-analyst with bold text references
(#1201)
- remove recursive symlinks in jira and gitlab skill directories (#1233)
- validate-installation scripts now check .github/skills directory
(#1010) (#1206)
- resolve npm audit vulnerabilities via dependency overrides (#1200)
- add post-release triggers to scorecard workflow (#1186)
- add missing .md extensions to relative links in agent documentation
(#1180)

### 📚 Documentation

- broaden Security Review description beyond OWASP (#1385)
- document maintainer advisory mode and skip-review label guard (#1386)
- document ExcludePaths/OutputPath for Invoke-LinkLanguageCheck (#1383)
- CLI getting-started: clarify plugin install commands as alternatives
(-all vs base) (#1251)

### ♻️ Refactoring

- align agent and prompt folder names to collection identifier (#1210)

### 🔧 Maintenance

- pin PSScriptAnalyzer to 1.25.0 and sync stale workflow version
comments (#1389)
- bump lxml from 6.0.2 to 6.1.0 in
/.github/skills/experimental/powerpoint (#1424)
- bump @vscode/vsce from 3.7.1 to 3.9.1 in the npm-dependencies group
(#1390)
- bump the github-actions group across 1 directory with 7 updates
(#1391)
- bump follow-redirects from 1.15.11 to 1.16.0 in /docs/docusaurus
(#1356)
- upgrade Node.js from 20 to 24 and bump cspell to v10 (#1353)
- bump basic-ftp from 5.2.0 to 5.2.1 (#1324)
- update github/gh-aw-actions requirement to
536ea1bad8c6715d098a9dc1afea8d403733acfe in the github-actions group
across 1 directory (#1298)
- update security instruction attributions and compliance (#1294)
- bump the npm-dependencies group with 2 updates (#1297)
- pre-release 3.3.41 (#1252)
- streamline RAI Planner phase structure and documentation (#1273)
- bump happy-dom from 20.8.8 to 20.8.9 in /docs/docusaurus (#1237)
- pre-release 3.3.27 (#1191)
- bump pygments from 2.19.2 to 2.20.0 in /.github/skills/gitlab/gitlab
(#1234)
- bump path-to-regexp from 0.1.12 to 0.1.13 in /docs/docusaurus (#1226)
- bump the github-actions group with 4 updates (#1231)
- add missing folders and alphabetize location lists (#1193)
- bump brace-expansion (#1224)
- bump handlebars from 4.7.8 to 4.7.9 in /docs/docusaurus (#1217)
- bump brace-expansion from 5.0.3 to 5.0.5 in /docs/docusaurus (#1213)
- pre-release 3.3.10 (#1187)
- bump markdownlint-cli2 from 0.21.0 to 0.22.0 in the npm-dependencies
group (#1175)
- bump the github-actions group with 3 updates (#1176)
- pre-release 3.3.1 (#1165)

---
*Managed automatically by pre-release workflow.*

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

4 participants