[lockfile-stats] Lockfile Statistics Analysis — 2026-08-20 #54344
Closed
Replies: 1 comment
|
This discussion has been marked as outdated by Lockfile Statistics Analysis Agent. A newer discussion is available at Discussion #54614. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Lockfile Statistics — 2026-08-20
Analysis of all
.github/workflows/*.lock.ymlcompiled workflow lockfiles ingithub/gh-aw, generated via a single-script compact JSON pass (no per-filecat/grep).Executive summary
workflow_dispatchpresentschedulepresentFile size distribution
example-permissions-warning.lock.yml(84.6 KB),codex-github-remote-mcp-test.lock.yml(84.9 KB),notion-issue-summary.lock.yml(85.4 KB)smoke-copilot.lock.yml(224.6 KB),smoke-copilot-aoai-entra.lock.yml(224.5 KB),smoke-copilot-aoai-apikey.lock.yml(221.9 KB)smoke-*integration/test workflows — these appear to embed more setup/config boilerplate than typical workflows.Trigger analysis
Top trigger combinations:
schedule + workflow_dispatch(189),workflow_dispatchonly (48),pull_request + workflow_dispatch(36).Cron schedules are almost entirely unique per-minute/hour offsets (only a handful repeat 2–3×, e.g.
7 5 * * *×3), indicating deliberate staggering to avoid a scheduling thundering herd. ~9 workflows use interval-style crons (*/6,*/4,*/2,*/7,*/12).Safe outputs analysis
Raw substring match counts across compiled files (includes prompt/schema text, so these overcount relative to per-workflow adoption — see Methodology):
Discussion category breakdown was not extractable via the regex fallback (see Methodology).
Structural characteristics
run:) blocks per workflowJob counts could not be reliably extracted by the fallback parser (indentation-dependent regex missed nested
runs-on:markers) — omitted rather than reported as zero.Permission patterns
Not available this run — the regex fallback did not reliably locate
permissions:blocks without a real YAML parser. Flagged as a gap rather than reported as "no write permissions."Tool & MCP patterns
Engine distribution (matched 247 / 286 lockfiles):
MCP server mentions:
safeoutputs(286 — present in every lockfile, expected),github(117),mcpscripts(12), plus av1-labeled match (1,237) that is very likely a false positive from JSON schema/version fields rather than a real server name — not reported as a finding.Interesting findings
workflow_dispatchis a house convention for debuggability even on scheduled jobs.schedule + workflow_dispatch— the dominant pattern is a recurring job that can also be triggered ad hoc.smoke-*test workflows are the largest lockfiles — 6 of the top 10 by size, likely due to broader tool/config surface for integration testing.Historical trends
No prior summary found in cache memory (
/tmp/gh-aw/cache-memory/history/) — this is the first recorded baseline (2026-08-20). Future runs can diff against this snapshot.Recommendations
PyYAMLinstall (this sandbox had no PyPI egress) to fill the gaps in job counts, permissions, discussion categories, and MCP tool names — the regex fallback is a lower bound, not a null result.jobs.*.safe-outputsconfig rather than scanning raw text.Methodology note: single-script compact JSON analysis.
PyYAMLwas unavailable in this environment (no network egress to install it), soyaml_available=falseand the analyzer used a regex/text fallback instead of a real YAML parse. This fallback reliably populated triggers, cron, safe-output/engine substring counts, and step/script counts, but could not reliably populate job counts, permissions, discussion categories, or MCP tool names — those are reported as unavailable/omitted rather than as zero, per the parser-reliability requirement.All reactions