Repository navigation
[lockfile-stats] Lockfile Statistics Report — 2026-10-24 #71706
Closed
Replies: 1 comment
|
This discussion has been marked as outdated by Lockfile Statistics Analysis Agent. A newer discussion is available at Discussion #71948. |
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.
Overview
Analysis of 348 compiled
.github/workflows/*.lock.ymlfiles as of 2026-10-24 (run §40129323018). All 348 lockfiles parsed successfully (0 skipped, 0 self-check errors).Key metrics
workflow_dispatchpresentschedulepresentcreate_discussionconfiguredFile size distribution
Sizes range from ~97.9 KiB to ~339.5 KiB, averaging ~175.2 KiB. No lockfiles were skipped as malformed.
Trigger analysis
Top trigger types:
workflow_dispatch338,schedule252,pull_request47,workflow_call5,issues5,issue_comment3,push2 (plus singletons:deployment_status,workflow_run,discussion,discussion_comment,repository_dispatch,pull_request_review_comment).Top combinations:
schedule+workflow_dispatch215,workflow_dispatchalone 73,pull_request+schedule+workflow_dispatch33,pull_request+workflow_dispatch9.Cron cadence is dominated by a shared
0 0 */2 * *(every 2h) slot used by 60 workflows; the remaining roughly 190 scheduled workflows are spread across distinct per-minute offsets, indicating deliberate stagger to avoid runner contention.Safe outputs analysis
Baseline safe-output tools (
noop,report_incomplete,report_missing_data,report_missing_tool) are present in 341/348 workflows (98%), confirming near-universal adoption of the safe-outputs contract. Beyond baseline:create_issue184,create_discussion92 configs resolved (93 workflows declare it),add_comment74,create_pull_request66,push_repo_memory33,add_labels32,upload_asset26. Long tail includes Jira/Linear/Slack integration outputs (1 workflow each).Discussion categories (92 resolved):
audits79,announcements5,artifacts2,dev2,research2,general1,daily-news1.Detection status:
create_discussion_workflows=93which is greater than 0, so discussion-producing workflows do exist (this is not the no-workflows-configured case). 92 of 93 categories resolved; one workflow could not be resolved via JSON or regex fallback. The gap (1.1%) is below the 10% failure threshold, so this is treated as a known per-workflow data quirk rather than a systemic extraction failure.safe_outputs_config_missing=0— theGH_AW_SAFE_OUTPUTS_CONFIGenv var was found in every lockfile.Structural characteristics
Permission patterns
Permissions below reflect the compiled
jobs.agent.permissionsblock (not the always-empty top-levelpermissions: {}), resolved for all 348 workflows:The agent job itself is essentially read-only everywhere except
id-token— writes flow through the safe-outputs mechanism in separate jobs, not the agent job directly. Confirming this, the union across all jobs per workflow shows widespread write grants elsewhere:id-tokenwrite in 348/348,issueswrite in 345/348,contentswrite in 232/348,copilot-requestswrite in 171/348,pull-requestswrite in 153/348,discussionswrite in 97/348.Engine distribution
(from
gh-aw-metadataagent_id, 0 unknown)copilotis the plurality engine (41.7%), followed bycodex(21.8%) andclaude(18.1%).Tool and MCP patterns
MCP server usage (parsed from
gh-aw-manifest, 0 fallback-to-regex needed):safeoutputs348 (universal),github208,agenticworkflows44,work-queue37,mcpscripts33,serena24,tavily5,sentry5,agy-native3,grafana3,ast-grep2,datadog2,deepwiki2,microsoftdocs2, plus single-use servers (kreuzberg,graft,agentdb).Interesting findings
id-token: writesomewhere and uses thesafeoutputsMCP server — the safe-outputs architecture is fully rolled out, with zero legacy or bypass workflows.writeexceptid-token(4 workflows) — writes are strictly delegated to downstream jobs, a strong isolation pattern.0 0 */2 * *cadence, while the rest are deliberately staggered to unique minute/hour offsets, suggesting intentional scheduling discipline to avoid runner thundering-herd effects.audits— this very report lands in the same category, reflecting that most discussion-producing workflows are self-monitoring or audit agents rather than user-facing announcements.Historical trends (vs. 2026-10-21, 3 days prior)
workflow_dispatchcountschedulecountcreate_discussionworkflowscopilotenginecodex/claude/pienginesThe two new workflows both run on the
copilotengine. The largest single lockfile grew about 8.8% since 2026-10-21 and is worth a spot-check if that trend continues. MCP server-usage counts rose markedly (for examplegithub192 to 208,agenticworkflows25 to 44,serena15 to 24) alongside the prior run fallback-regex count dropping from 9 to 0; this is at least partly a methodology improvement in the v4 analyzer manifest-based MCP parsing (less reliance on the regex fallback) rather than a pure usage trend, so treat the magnitude with some caution.Recommendations
create_discussioncategory (98.9% detection rate) to close the last gap, even though it is below the alerting threshold.issues: noneand 93 withpull-requests: noneat the agent-job level reflect intentional scoping, given 345/348 and 153/348 workflows respectively grant write access to those scopes somewhere in the job graph.skipped_malformedover time as a compiler-health signal.Methodology note
Single-script compact JSON analysis. All metrics computed in one pass over 348 lockfiles by
/tmp/gh-aw/cache-memory/scripts/lockfile_stats_v4.py, persisted to cache-memory for reuse across runs; summary JSON (6.9 KB) read once for this report. Engine IDs sourced from the# gh-aw-metadataheader comment; safe-output config and discussion categories sourced from theGH_AW_SAFE_OUTPUTS_CONFIGenv JSON; MCP servers sourced from the# gh-aw-manifestheader comment (0 fallback parses needed this run).References:
All reactions