[lockfile-stats] Lockfile Statistics Audit — 2026-07-13 #45325
Closed
Replies: 1 comment
|
This discussion has been marked as outdated by Lockfile Statistics Analysis Agent. A newer discussion is available at Discussion #45552. |
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.
Executive Summary
Analysis of all 257
.github/workflows/*.lock.ymlfiles as of 2026-07-13. All files parsed cleanly with PyYAML (yaml_available: true, 0 skipped).File Size Distribution
Lockfiles are large and tightly clustered (~120 KB), reflecting the substantial boilerplate the compiler injects. Largest:
smoke-copilot-aoai-entra(185.5 KB),smoke-copilot-aoai-apikey(185.1 KB),smoke-copilot(185.0 KB). Smallest:example-permissions-warning(79.5 KB),firewall(80.4 KB),codex-github-remote-mcp-test(80.6 KB).Trigger Analysis
Top trigger combinations:
schedule+workflow_dispatch(171),workflow_dispatchalone (44),pull_request+workflow_dispatch(28). Nearly every workflow (249/257) keeps a manual dispatch escape hatch. Schedules are well spread across the clock and use off-round minutes (fleet-friendly). Cadence mix: daily dominates, with a band of weekday-only (* * 1-5) and several*/6h/*/12hhigh-frequency jobs.Safe Outputs Analysis
Discussion categories:
audits76,announcements5,artifacts2,dev2,daily-news1,research1. Theauditscategory is the overwhelming publish target.Structural Characteristics
Most-jobs:
release(12). Most-steps:smoke-copilot(163). Across the fleet: 1,612 jobs, 30,129 steps, 13,609 run/script steps.Permission Patterns
contents:readandactions:readare universal.issues:write(250) is the most common write scope — consistent with the issue/comment-heavy safe-output profile.Timeout & Engine Patterns
Timeouts: 31–60 min band on every workflow (257), with 28 also carrying a short 6–15 min job and 2 with ≤5 min jobs — i.e. a short setup job plus a longer agent job.
Engines: copilot 64, claude 60, codex 14, plus antigravity/gemini/opencode singletons. A large
otherbucket (116) reflects a detection gap in the regex-based engine sniff rather than 116 unknown engines — see Methodology.Tool & MCP Patterns
githubis the dominant MCP server (101);serena(code navigation) is a strong second at 24. The long tail is diverse: search (tavily/brave), observability (sentry/grafana/datadog), docs (markitdown/microsoftdocs/deepwiki), and research (arxiv).Interesting Findings
workflow_dispatchescape hatch — a healthy operability pattern.issues:writeon 250 workflows andcreate-issueconfigured on 117 make issues the fleet's primary write surface, ahead of discussions and PRs.auditsis the discussion monoculture. 76 of 87 discussion-writing workflows target theauditscategory — this report included.49 14,23 11,27 */6) rather than piling on:00, reducing fleet-wide API bursts.Historical Trends
Day-over-day vs 2026-07-12 (same schema
lockfile_stats_v1):Steady incremental growth: one net-new workflow added, adding ~785 KB and ~109 steps. Engine and MCP mix are unchanged day-over-day. (Summaries older than 2026-07-10 used a different engine/MCP detection method — e.g. token-occurrence MCP counts in the thousands — so cross-method comparisons before then are not meaningful.)
Recommendations
otherengine bucket by extending the analyzer's engine-detection regex so the 116 unmatched files resolve to real engines — the current split understates true engine share.issues:writebreadth. 250 workflows hold issue-write; confirm each truly emits issue-family outputs and trim scopes where only reads are needed.auditsload. 76 workflows publishing to one category can bury signal — consider sub-categories or digest rollups.Methodology
Single-script compact JSON analysis: one cached Python analyzer (
lockfile_stats_v1.py) parsed all 257 lockfiles withyaml.safe_loadin a single pass, emitting a ~7 KB summary JSON; all reasoning was derived from that summary (no per-file reads). Safe-output types, discussion categories, and permissions use regex/job-name detection over the compiled YAML, so the boilerplate default outputs are counted alongside author-configured ones (flagged above), and engine detection has a knownothergap. History is persisted undercache-memory/history/<date>.jsonfor trend deltas.References: §29282982423
Warning
Firewall blocked 1 domain
The following domain was blocked by the firewall during workflow execution:
awmgmcpgSee Network Configuration for more information.
All reactions