githubnext / githubnext/gh-aw-cao

[aw-maintenance:compiler-security] github/gh-aw-actions: gh-aw compile exits non-zero — lock-file drift and inconclusive zizmor result

Open
#944 0 comments 0 reactions 0 assignees View on GitHub
aw-maintenance aw-maintenance:compiler-security security
Dominant language
JavaScript
Stars
3
Forks
1
Avg merge
48m
Merged PRs (30d)
853

Description

**Target:** `github/gh-aw-actions` (sha `49459c75b37a0b82b4ecb15e1079972cc3353bc9`) — `gh aw compile` exited **non-zero (1)** on 1 workflow source / 1 lock file. Result: **findings**. Highest-severity supported finding: the committed lock file for `daily-runtime-threat-scan` is **out of date** relative to the compiler's fresh output (399 insertions / 231 deletions). The scanner step also reported a contradictory line worth human review. Recommended next action: run the local fixing loop below to recompile, review the diff, and confirm a clean strict-mode run.

- **Target repository**: `github/gh-aw-actions`
- **Compiler exit code**: `1`
- **Workflow sources checked**: `1`
- **Generated lock files checked**: `1`
- **Result**: `findings`

### Findings

| Tool | Workflow/Image | Severity | Finding | Remediation |
|---|---|---|---|---|
| gh-aw compile (lock diff) | `daily-runtime-threat-scan.lock.yml` | unknown | Working tree shows the compiled lock file differs substantially from the committed one (399 insertions, 231 deletions) — committed lock is stale relative to the `.md` source at the scanned SHA | Recompile with `gh aw compile`, review the diff for behavior changes, and commit the regenerated `.lock.yml` |
| zizmor | `daily-runtime-threat-scan.lock.yml` | unknown | Scanner step reported `✗ zizmor failed` immediately after stating "zizmor found 0 security warnings/errors" — the pass/fail outcome is self-contradictory in the captured output, so no specific vulnerability can be attributed from this evidence alone | Re-run `gh aw compile` with zizmor enabled locally to capture full, unambiguous scanner output; do not treat this as a confirmed zero-finding clean pass given the reported failure exit |

Note: actionlint (with shellcheck/pyflakes) ran but produced no reported findings in the captured output.

### 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/report output

```
Target: github/gh-aw-actions
Exit code: 1
Workflow sources: 1
Compiled locks: 1

✓ .github/workflows/daily-runtime-threat-scan.md (99.2 KB)
i Using actionlint 1.7.12
i Running actionlint (with shellcheck/pyflakes) on .github/workflows/daily-runtime-threat-scan.lock.yml
i Running zizmor security scanner on .github/workflows/daily-runtime-threat-scan.lock.yml
✗ zizmor failed
strict mode: zizmor found 0 security warnings/errors in daily-runtime-threat-scan.lock.yml - workflows must have no zizmor findings in strict mode
```

Git status / diff stat

```
M .github/workflows/daily-runtime-threat-scan.lock.yml
?? .github/aw/logs/

.../workflows/daily-runtime-threat-scan.lock.yml | 630 +++++++++++++--------
1 file changed, 399 insertions(+), 231 deletions(-)
```

### Control Plane
- Correlation ID: `33818396937-30`
- Central repository: `githubnext/gh-aw-cao`
- Control plane run URL: https://github.com/githubnext/gh-aw-cao/actions/runs/33818396937

> Generated by [:shield: AW Maintenance / Compiler Security](https://github.com/githubnext/gh-aw-cao/actions/runs/33818762630) · copilot · auto · 16.2 AIC · ⌖ 8.4 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 17, 2026, 11:48 PM UTC

Contributor guide

Open the contributing guide

Research direction

In github/gh-aw-actions, start with .github/workflows/daily-runtime-threat-scan.md and run the documented gh aw compile loop with strict validation and zizmor enabled. Review the generated daily-runtime-threat-scan.lock.yml diff and the contradictory scanner output; done means the lock is regenerated, behavior is reviewed, and the full validation run passes or clearly identifies a human-only finding.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions
Domain
ci-cd, devops, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.