githubnext / githubnext/gh-aw-cao
[aw-maintenance:compiler-security] Compiler strict-mode failure: 144 actionlint errors across 31 lock files
- Dominant language
- JavaScript
- Stars
- 3
- Forks
- 1
- Avg merge
- 49m
- Merged PRs (30d)
- 837
Description
Compiler run against `githubnext/gh-aw-cao` (target sha `8d282a3b696cdd78a7af7ee91557c6b9495aeaf8`) failed with exit code 1: actionlint strict mode found **144 errors** across 31 of 38 generated lock files, blocking the security scanner pipeline before zizmor/poutine/runner-guard/grype/syft/grant could run. All findings are `[expression]` type-check errors (112) or `[shellcheck]` style warnings (32); highest tool-reported severity is `unknown` (actionlint does not assign severities), but strict-mode failure is a hard compile-time blocker. Recommended next action: run the local fixing loop below to regenerate lock files with corrected `github.aw.*` / dispatch-input expressions and shellcheck-safe redirects, then re-run the full validation suite.
- **Target repository**: `githubnext/gh-aw-cao`
- **Compiler exit code**: `1`
- **Workflow sources checked**: `38`
- **Generated lock files checked**: `38`
- **Result**: `findings`
### Findings
| Tool | Workflow(s) | Severity | Finding | Remediation |
|------|-------------|----------|---------|-------------|
| actionlint | 31 lock files (e.g. `ambient-context-agents-md-curator.lock.yml`, `uk-ai-advisory.lock.yml`, `aw-maintenance*.lock.yml`) | unknown | `[expression]` property `"github-mcp-app-token"` not defined on step-outcome object type (9 occurrences) — likely a step-id mismatch or missing step output declaration in the compiled MCP auth step | Fix the source `.md` step id / output reference generating this expression, then recompile |
| actionlint | 30+ lock files across orchestrator/dispatch workflows | unknown | `[expression]` property `"aw"` not defined on `github` context object type (31 occurrences) — `github.aw.import-inputs.*` references are invalid against actionlint's known `github` context schema | Replace `github.aw.*` expression usage with a schema-recognized context (e.g. `env`/`steps.*.outputs`) or add the required `github.aw` typing support in the compiler |
| actionlint | dispatch-workflow lock files | unknown | `[expression]` properties `"rollout_percent"` (21), `"max_repos"` (21), `"correlation_id"` (8), `"control_plane_run_url"` (8), `"central_repo"` (8) not defined on `github.event.inputs` object type — generated `workflow_dispatch` input schemas don't match the fields referenced in job expressions | Align the compiled `workflow_dispatch.inputs` schema with the fields referenced by `github.event.inputs.*` in the same lock file (add missing inputs or fix field names) |
| shellcheck (via actionlint) | 31 lock files, one script block each | style (SC2129) | Consider using `{ cmd1; cmd2; } >> file` instead of individual redirects (32 occurrences) | Refactor generated shell script blocks to group redirects, or fix the source template producing this pattern |
| zizmor / poutine / runner-guard / grype / syft / grant | not run | not applicable | Scan pipeline halted after actionlint strict-mode failure; no downstream scanner evidence available | Fix actionlint findings first, then re-run full suite to obtain scanner coverage |
### Local fixing loop
1. Install or update the gh-aw extension, then configure the coding agent's MCP client to launch `gh aw mcp-server` over stdio from the target repository.
2. Give the agent the prompt below and require it to use the `fix` and `compile` MCP tools rather than editing generated `.lock.yml` files.
3. Require the agent to repeat the same full compiler validation and security scan until it passes, or stop and explain any finding that needs human action.
Agent prompt
Fix the reported gh-aw compiler and security findings in this repository. Change only `.github/workflows/*.md` sources and directly related files; never edit generated `.lock.yml` files. Use the gh-aw MCP server's `fix` and `compile` tools, rerunning compilation with strict validation, model checks, actionlint, shellcheck, yamllint, zizmor, poutine, runner-guard, grant, grype, and syft until clean. Review generated lock-file diffs, preserve existing behavior, and stop with a concise explanation if a finding cannot be fixed safely.
Raw compiler output (bounded excerpt)
```
i Using actionlint 1.7.12
i Running actionlint (with shellcheck/pyflakes) on 38 files
[... 144 errors across 31 lock files, see categories above ...]
✗ actionlint failed
strict mode: actionlint found 144 errors in workflows - workflows must have no actionlint errors in strict mode
```
Full report: 98878 bytes, 144 actionlint error blocks, no secret/token values observed in output.
Per-file error counts
```
6 optimization-ai-credit-auditor.lock.yml
6 aw-maintenance.lock.yml
6 aw-maintenance-upgrade.lock.yml
6 aw-failures-investigator.lock.yml
5 uk-ai-advisory.lock.yml
5 uk-ai-advisory-operational-resilience.lock.yml
5 software-development-practices.lock.yml
5 self-care.lock.yml
5 optimization.lock.yml
5 optimization-ai-credit-optimizer.lock.yml
5 eu-cra-compliance.lock.yml
5 dependabot.lock.yml
5 dependabot-release-train-updater.lock.yml
5 ambient-context.lock.yml
5 ambient-context-skills-curator.lock.yml
5 ambient-context-agents-md-curator.lock.yml
4 software-development-practices-nist-ssdf.lock.yml
4 software-development-practices-github-well-architected.lock.yml
4 self-care-primer-brand-checker.lock.yml
4 self-care-docs-build-time-investigator.lock.yml
4 self-care-data-acquisition-audit.lock.yml
4 self-care-dashboard-review.lock.yml
4 self-care-code-improvement.lock.yml
4 self-care-accessibility-checker.lock.yml
4 eu-cra-compliance-vulnerability-handling-auditor.lock.yml
4 eu-cra-compliance-supply-chain-sbom-auditor.lock.yml
4 eu-cra-compliance-security-requirements-auditor.lock.yml
4 eu-cra-compliance-scope-classifier.lock.yml
4 eu-cra-compliance-conformity-release-evidence.lock.yml
4 eu-cra-compliance-article-14-reporting-readiness.lock.yml
4 aw-maintenance-compiler-security.lock.yml
```
### Control Plane
- Correlation ID: `33824386621-31`
- Central repository: `githubnext/gh-aw-cao`
- Control plane run URL: https://github.com/githubnext/gh-aw-cao/actions/runs/33824386621
> Generated by [:shield: AW Maintenance / Compiler Security](https://github.com/githubnext/gh-aw-cao/actions/runs/33824842171) · copilot · auto · 23.4 AIC · ⌖ 9.31 AIC · ⊞ 13.9K · [◷](https://github.com/search?q=repo%3Agithubnext%2Fgh-aw-cao+is%3Aissue+%22gh-aw-workflow-call-id%3A+githubnext%2Fgh-aw-cao%2Faw-maintenance-compiler-security%22&type=issues)
> - [x] expires on Sep 18, 2026, 1:19 AM UTC
Contributor guide
Research direction
Start with the .github/workflows/*.md sources that generate the affected lock files, rather than editing generated .lock.yml files. Configure the gh-aw MCP server, then use its fix and compile tools to reproduce the strict actionlint errors and inspect the generated diffs. Done means strict compilation and the listed validation and security scans complete without findings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, javascript, markdown, shell
- Domain
- build-system, ci-cd, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100