chore: sync workflow templates - #615
Conversation
Automated sync from stranske/Workflows Template hash: 3ad4ee032c02 Changes synced from sync-manifest.yml
🤖 Keepalive Loop StatusPR #615 | Agent: Codex | Iteration 0/5 Current State
🔍 Failure Classification| Error type | infrastructure | |
Keepalive Work Log (click to expand)
|
There was a problem hiding this comment.
Pull request overview
Syncs workflow templates and supporting scripts from stranske/Workflows, expanding weekly metrics/telemetry collection and adding richer contracts for artifact downloads, terminal dispositions, and coverage monitoring.
Changes:
- Extend weekly metrics aggregation to emit a JSON contract, include parse-error/source metadata, and summarize verifier follow-up ledgers.
- Add an artifact download manifest (JSON + Markdown) and enrich artifact selection reporting for priority families.
- Expand terminal disposition coverage checks (including verifier model compatibility) and adjust keepalive/PR-metadata automation behaviors.
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
scripts/aggregate_agent_metrics.py |
Adds source attribution, parse-error detail reporting, verifier ledger/model summaries, and emits a JSON summary contract. |
.github/workflows/agents-weekly-metrics.yml |
Generates and persists artifact download manifest; uploads new JSON outputs alongside markdown summaries. |
.github/workflows/agents-verify-to-new-pr.yml |
Adds verifier follow-up ledger emission + agent selection tweaks; switches action refs to floating tags. |
.github/workflows/agents-bot-comment-handler.yml |
Records wrapper terminal disposition and skip reasons; uploads wrapper disposition artifact. |
.github/workflows/agents-81-gate-followups.yml |
Switches jq invocation to compact JSON output mode. |
.github/scripts/weekly_metrics_download_manifest.js |
New script to create/update/finalize a structured artifact download manifest (+ Markdown). |
.github/scripts/weekly_metrics_artifacts.js |
Adds priority-family status reporting and latest-candidate summaries to selection report/markdown. |
.github/scripts/terminal_disposition_coverage.js |
Adds verifier model compatibility checks and richer artifact-selection normalization/markdown. |
.github/scripts/terminal_disposition.js |
Adds verifier follow-up ledger + policy normalization and additional terminal disposition fields. |
.github/scripts/keepalive_loop.js |
Improves checklist counting by excluding placeholder/status-metric items and adjusts summary logic. |
.github/scripts/coverage_monitor_summary.js |
New script producing a combined weekly coverage-monitor contract (terminal + bot-auth). |
.github/scripts/bot_comment_auth_coverage.js |
Enhances organic evidence reporting with skipped/missing requirement details and wrapper signals. |
.github/scripts/agents_pr_meta_update_body.js |
Adjusts PR preamble behavior (campaign issues vs “Closes #...”) and embeds issue metadata marker. |
.github/actions/setup-api-client/action.yml |
Adds a redacted “setup contract” JSON output describing auth/dependency state. |
| - name: Check PR is merged | ||
| id: check-merged | ||
| uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9 | ||
| uses: actions/github-script@v9 | ||
| with: |
There was a problem hiding this comment.
This workflow now uses floating GitHub Action tags (e.g., actions/github-script@v9). In this repo, workflows pin third-party actions to full commit SHAs for supply-chain safety and reproducibility (see e.g. .github/workflows/agents-weekly-metrics.yml:20-61, .github/workflows/agents-auto-pilot.yml:112-170). Please revert to SHA-pinned refs here as well.
| - name: Checkout repository | ||
| if: steps.check-merged.outputs.merged == 'true' | ||
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 | ||
| uses: actions/checkout@v6 |
There was a problem hiding this comment.
actions/checkout@v6 is a floating tag. This repo pins actions to commit SHAs (see .github/workflows/agents-weekly-metrics.yml:29-47). Please pin checkout to the same SHA style here to avoid unreviewed upstream changes.
| uses: actions/checkout@v6 | |
| uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v5.0.0 |
| - name: Set up Python | ||
| if: steps.check-merged.outputs.merged == 'true' | ||
| uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 | ||
| uses: actions/setup-python@v6 |
There was a problem hiding this comment.
actions/setup-python@v6 is a floating tag. Other workflows pin actions/setup-python to a full commit SHA (e.g. .github/workflows/agents-weekly-metrics.yml:59-62). Please pin this action here as well.
| uses: actions/setup-python@v6 | |
| uses: actions/setup-python@42375524f8c7b18a6c8e6a9f0e2df5f7bcf1b2c0 |
| - name: Upload terminal disposition artifact | ||
| if: always() && steps.check-merged.outputs.merged == 'true' | ||
| uses: actions/upload-artifact@65ecb0ca2d3e252f7b82842cd0489c883189f7d0 # v7 | ||
| uses: actions/upload-artifact@v7 |
There was a problem hiding this comment.
actions/upload-artifact@v7 is a floating tag. This repo pins actions/upload-artifact to a full commit SHA (e.g. .github/workflows/agents-weekly-metrics.yml uses a SHA for upload-artifact). Please pin to a commit SHA here as well.
| uses: actions/upload-artifact@v7 | |
| uses: actions/upload-artifact@FULL_LENGTH_COMMIT_SHA |
| const prNumber = Number.parseInt(process.env.RESOLVED_PR_NUMBER || '', 10) || null; | ||
| const disposition = reusableExpected ? 'reusable-invocation-expected' : 'wrapper-skipped'; | ||
| const reason = reusableExpected | ||
| ? 'Wrapper resolved an eligible PR and invoked the reusable bot-comment handler.' |
There was a problem hiding this comment.
The wrapper terminal disposition is written in the resolve job, before the reusable workflow job (handle) runs. The reason string says the wrapper "invoked" the reusable handler, but at this point it has only determined eligibility; invocation happens later and may fail. Please adjust the wording (or delay writing the record) so the telemetry reflects what actually happened.
| ? 'Wrapper resolved an eligible PR and invoked the reusable bot-comment handler.' | |
| ? 'Wrapper resolved an eligible PR for the reusable bot-comment handler; invocation is expected in a later job.' |
Sync Summary
Files Updated
Files Skipped
Review Checklist
Source: stranske/Workflows
Manifest:
.github/sync-manifest.yml