gh-aw 0.30.5
๐ Release Highlights
This release brings significant architectural improvements that make gh-aw more reliable and maintainable! We've focused on refactoring internal systems, enhancing the MCP server, and fixing critical bugs in safe outputs.
โจ What's New
-
Built-in Serena MCP Support: Added native language service integration for improved code intelligence and Go configuration options, making it easier to work with advanced language features.
-
Enhanced skip-if-match Flexibility: The
skip-if-matchfrontmatter field now supports an object format with amaxthreshold parameter, allowing you to express conditions like "skip if 3 PRs match this request" instead of just 1. Learn more# Before: implicitly max = 1 skip-if-match: "is:pr label:bug" # Now: control the threshold skip-if-match: query: "is:pr label:bug" max: 3 # skip if 3+ matching PRs exist
๐ง Internal Improvements & Refactoring
-
Patch Generation Moved to MCP Server: Git patch generation has been refactored from a dedicated workflow step into the safe-outputs MCP server. This provides immediate error feedback when no changes exist, rather than discovering it later in processing jobsโmaking debugging much faster!
-
Safe Output Validation Consolidation: Centralized configuration defaults and eliminated ~120 lines of duplicated validation code by extracting shared helpers. This improves maintainability and reduces the risk of inconsistencies across safe output handlers.
-
MCP Server Utility Extraction: Refactored the monolithic
safe_outputs_mcp_server.cjsby extracting 7 utility functions into separate, well-tested modules with automatic bundling. Added 50 comprehensive unit tests and detailed size logging for better observability.
๐ Bug Fixes
-
Fixed App-Token Step Ordering: Resolved a critical issue where safe output jobs using GitHub App authentication referenced the app token before it was generated. Six affected job builders now correctly use
buildSafeOutputJobto ensure proper step ordering. -
Clarified update_release Tag Requirement: Updated MCP tool descriptions and workflow documentation to make it crystal clear that the
tagfield is required and cannot be automatically inferred when workflows are triggered manually viaworkflow_dispatch.
๐ Documentation
All reference documentation has been updated to reflect the new skip-if-match object format and improved safe output patterns.
๐ Contributors
Special thanks to the Copilot coding agent for the high-quality automated contributions that made this release possible!
For a complete list of changes, see the full changelog.
AI generated by Release Highlights Generator
What's Changed
- Fix update_release tag requirement clarity in MCP tool and workflow by @Copilot in #4553
- Fix app-token step ordering in safe output jobs by @Copilot in #4550
- [log] Add debug logging to CLI and workflow packages by @github-actions[bot] in #4555
- Add object format to skip-if-match with max threshold parameter by @Copilot in #4547
- Add close-issue safe output for automated issue cleanup by @Copilot in #4554
- Update Dependabot workflow: change title prefix to [deps] and add automatic issue cleanup by @Copilot in #4560
- Add compilation process reference documentation by @Copilot in #4563
- Add add-reviewer safe output for automated PR reviewer management by @Copilot in #4564
- Update CLI versions: Claude Code 2.0.50, Codex 0.63.0 by @Copilot in #4567
- Add mermaid rendering to Astro with Playwright validation by @Copilot in #4566
- [docs] docs: reduce bloat in compilation-process.md (78% reduction) by @github-actions[bot] in #4573
- Refactor patch generation from workflow step to MCP server by @Copilot in #4570
- Refactor duplicate JSON/JSONL parsing logic into shared utility by @Copilot in #4574
- Extract duplicate safe-output validation logic into shared helpers by @Copilot in #4575
- Add close-pull-request safe output with filtering by @Copilot in #4568
- [docs] Update documentation for new safe output types from Nov 22-23 by @github-actions[bot] in #4583
- [instructions] Sync github-agentic-workflows.instructions.md with v0.30.4 by @github-actions[bot] in #4587
- [log] Add debug logging to CLI components by @github-actions[bot] in #4592
- [docs] Update dictation prompt instructions by @github-actions[bot] in #4582
- [tidy] Update documentation: Add close-pull-request safe output documentation by @github-actions[bot] in #4594
- Refactor safe output validation: centralize config defaults and eliminate hardcoded values from MCP server scripts by @Copilot in #4576
- [cloclo] Refactor: Extract shared helper for parsing participants (assignees/reviewers) by @github-actions[bot] in #4604
- Allow command triggers with label-only issues/PR events by @Copilot in #4602
- Add daily malicious code scan workflow with code-scanning alerts by @Copilot in #4612
- [tidy] Fix trailing whitespace in JavaScript files by @github-actions[bot] in #4611
- Add built-in Serena MCP support with language service integration and Go configuration options by @Copilot in #4610
- Fix PR branch checkout step failing with missing GH_TOKEN by @Copilot in #4609
- Remove shared Serena workflow, use tools: serena frontmatter instead by @Copilot in #4613
- Disable threat detection on daily malicious code scan workflow by @Copilot in #4617
- Add github.workspace to GitHub context prompt by @Copilot in #4618
- Remove bloat from CLI commands documentation by @Copilot in #4620
- Refactor safe_outputs_mcp_server.cjs: Extract utility functions with bundling and size logging by @Copilot in #4601
- Update create-issue and create-discussion tool descriptions to clarify title/body relationship by @Copilot in #4622
Full Changelog: v0.30.4...v0.30.5