Skip to content

chore: sync workflow templates - #612

Closed
stranske wants to merge 1 commit into
mainfrom
sync/workflows-fb60c1f4950b
Closed

chore: sync workflow templates#612
stranske wants to merge 1 commit into
mainfrom
sync/workflows-fb60c1f4950b

Conversation

@stranske

Copy link
Copy Markdown
Owner

Sync Summary

Files Updated

  • agents-81-gate-followups.yml: Gate followups hub - consolidates keepalive and autofix followups
  • agents-bot-comment-handler.yml: Bot comment handler - dispatches agents to address bot review comments (deprecated; replaced by agents-80-pr-event-hub.yml, removal no earlier than 2026-02-15)
  • agents-verify-to-new-pr.yml: Verify to new PR - creates follow-up issue and immediately dispatches auto-pilot to prepare a replacement PR (bridge inlined)
  • agents-weekly-metrics.yml: Weekly metrics - aggregates auto-pilot, keepalive, autofix and verifier metrics into summary reports
  • aggregate_agent_metrics.py: Aggregates downloaded weekly agent metrics - required by agents-weekly-metrics.yml
  • terminal_disposition.js: Machine-readable terminal disposition records and source summaries
  • terminal_disposition_coverage.js: Warning-only terminal disposition source coverage preflight
  • bot_comment_auth_coverage.js: Warning-only bot-comment App auth coverage preflight
  • coverage_monitor_summary.js: Machine-readable weekly coverage monitor checkpoint
  • weekly_metrics_artifacts.js: Bounded weekly metrics artifact selection contract
  • weekly_metrics_download_manifest.js: Weekly metrics artifact download and extraction manifest contract
  • keepalive_loop.js: Core keepalive loop logic
  • agents_pr_meta_update_body.js: Updates PR body with agent metadata
  • setup-api-client/ (1 files): Unified API client setup - installs @octokit deps and exports all load balancer tokens

Files Skipped

  • pr-00-gate.yml: File exists and sync_mode is create_only
  • ci.yml: File exists and sync_mode is create_only
  • dependabot.yml: File exists and sync_mode is create_only
  • llm_slots.json: None

Review Checklist

  • CI passes with updated workflows
  • No repo-specific customizations were overwritten

Source: stranske/Workflows
Manifest: .github/sync-manifest.yml

Automated sync from stranske/Workflows
Template hash: fb60c1f4950b

Changes synced from sync-manifest.yml
@stranske stranske added sync Automated sync from Workflows automated Automated sync from Workflows labels Apr 26, 2026
Copilot AI review requested due to automatic review settings April 26, 2026 14:55
@stranske stranske added the automated Automated sync from Workflows label Apr 26, 2026
@stranske-keepalive

Copy link
Copy Markdown
Contributor

⚠️ Action Required: Unable to determine source issue for PR #612. The PR title, branch name, or body must contain the issue number (e.g. #123, branch: issue-123, or the hidden marker ).

@stranske-keepalive

stranske-keepalive Bot commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

🤖 Keepalive Loop Status

PR #612 | Agent: Codex | Iteration 0/5

Current State

Metric Value
Iteration progress [----------] 0/5
Action wait (missing-agent-label)
Disposition skipped (transient)
Gate success
Tasks 0/18 complete
Timeout 45 min (default)
Timeout usage 5m elapsed (13%, 40m remaining)
Keepalive ❌ disabled
Autofix ❌ disabled

🔍 Failure Classification

| Error type | infrastructure |
| Error category | resource |
| Suggested recovery | Confirm the referenced resource exists (repo, PR, branch, workflow, or file). |

@stranske-keepalive

stranske-keepalive Bot commented Apr 26, 2026

Copy link
Copy Markdown
Contributor
Keepalive Work Log (click to expand)
# Time (UTC) Agent Action Result Files Tasks Progress Commit Gate
0 2026-04-26 14:57:44 Codex wait (missing-agent-label-transient) skipped 0 0/18 cancelled
0 2026-04-26 14:58:43 Codex wait (missing-agent-label-transient) skipped 0 0/18 cancelled
0 2026-04-26 15:01:27 Codex wait (missing-agent-label-transient) skipped 0 0/18 success

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Syncs updated workflow templates/scripts from stranske/Workflows, expanding weekly metrics collection/telemetry and adding new terminal-disposition + verifier follow-up ledger reporting.

Changes:

  • Extend weekly metrics aggregation to emit a JSON contract, include parse-error details, infer artifact families, and summarize verifier model/ledger metadata.
  • Add a download-manifest contract for weekly metrics artifacts and enrich artifact selection reporting (priority-family statuses).
  • Enhance automation telemetry (wrapper terminal dispositions, keepalive actionable checklist counting, coverage monitor summary contract, setup-api-client setup contract).

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 13 comments.

Show a summary per file
File Description
scripts/aggregate_agent_metrics.py Adds richer NDJSON parsing (with per-file parse error details), artifact/source inference, and outputs both markdown + JSON summary contracts including verifier/ledger/model metadata.
.github/workflows/agents-weekly-metrics.yml Tracks artifact download/unzip outcomes via a manifest, sanitizes artifact dirs, and uploads the new JSON summary + manifest artifacts.
.github/workflows/agents-verify-to-new-pr.yml Updates follow-up issue creation/telemetry, adds verifier follow-up ledger artifact, and modifies several uses: pins.
.github/workflows/agents-bot-comment-handler.yml Emits/upload wrapper terminal disposition artifacts and exposes a skip_reason output for telemetry.
.github/workflows/agents-81-gate-followups.yml Minor jq invocation change (-cn) for compact JSON output.
.github/scripts/weekly_metrics_download_manifest.js New script to maintain a machine-readable download/unzip manifest + markdown summary.
.github/scripts/weekly_metrics_artifacts.js Adds missing/priority family reporting to the artifact selection contract + markdown.
.github/scripts/terminal_disposition_coverage.js Adds verifier model compatibility checks and surfaces priority-family statuses in coverage reporting/markdown.
.github/scripts/terminal_disposition.js Adds verifier follow-up ledger normalization and expands terminal disposition optional fields (model, mode, reason).
.github/scripts/keepalive_loop.js Changes checkbox counting to focus on actionable checklist items (filters status/placeholder entries).
.github/scripts/coverage_monitor_summary.js New weekly coverage monitor “summary contract” that consolidates monitor statuses and next actions.
.github/scripts/bot_comment_auth_coverage.js Adds optional wrapper/reusable invocation fields and richer missing/skipped organic-evidence requirement reporting.
.github/scripts/agents_pr_meta_update_body.js Adjusts preamble generation to treat campaign issues differently (avoid “Closes” for campaign issues).
.github/actions/setup-api-client/action.yml Adds a redacted setup_contract output describing auth/dependency state for downstream telemetry/debugging.

- name: Checkout repository
if: steps.check-merged.outputs.merged == 'true'
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@v6

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses actions/checkout@v6 (floating tag). Please pin to the exact commit SHA (with a '# v6' comment) to match the repo’s workflow security/reproducibility convention.

Suggested change
uses: actions/checkout@v6
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v6

Copilot uses AI. Check for mistakes.
- name: Set up Python
if: steps.check-merged.outputs.merged == 'true'
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
uses: actions/setup-python@v6

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses actions/setup-python@v6 (floating tag). Please pin to a full commit SHA (with '# v6') as done elsewhere in this repo to avoid unreviewed upstream changes.

Suggested change
uses: actions/setup-python@v6
uses: actions/setup-python@61a6322f88396a6271a6ee3565807d608ecaddd1 # v6

Copilot uses AI. Check for mistakes.
steps.chain-check.outputs.exceeded != 'true' &&
steps.extract-verdict.outputs.needs_human != 'true'
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
uses: actions/github-script@v9

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses actions/github-script@v9 (floating tag). Please pin to a full commit SHA as used in other workflows in this repository.

Suggested change
uses: actions/github-script@v9
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea

Copilot uses AI. Check for mistakes.
steps.chain-check.outputs.exceeded != 'true' &&
steps.extract-verdict.outputs.needs_human != 'true'
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
uses: actions/github-script@v9

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses actions/github-script@v9 (floating tag). Please pin to an exact commit SHA to keep workflows reproducible and reduce supply-chain risk.

Copilot uses AI. Check for mistakes.
steps.chain-check.outputs.exceeded != 'true' &&
steps.extract-verdict.outputs.needs_human != 'true'
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
uses: actions/github-script@v9

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses actions/github-script@v9 (floating tag). Please pin to a full commit SHA to avoid automatic updates to workflow behavior without review.

Copilot uses AI. Check for mistakes.
id: collect
if: steps.check-merged.outputs.merged == 'true'
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
uses: actions/github-script@v9

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses a floating action tag (actions/github-script@v9). Please pin to the action’s commit SHA (retain '# v9') to align with the repo’s pinned-actions workflow convention.

Suggested change
uses: actions/github-script@v9
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v9

Copilot uses AI. Check for mistakes.
id: chain-check
if: steps.check-merged.outputs.merged == 'true'
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
uses: actions/github-script@v9

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses a floating action tag (actions/github-script@v9). Please switch back to a full commit SHA pin to maintain workflow supply-chain hardening and consistency with other workflows in this repo.

Copilot uses AI. Check for mistakes.
steps.chain-check.outputs.exceeded != 'true' &&
steps.extract-verdict.outputs.needs_human == 'true'
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
uses: actions/github-script@v9

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses actions/github-script@v9 (floating tag). Please pin to the specific commit SHA (keeping the major version comment) to match the repository’s action-pinning policy.

Copilot uses AI. Check for mistakes.
steps.extract-verdict.outputs.needs_human != 'true' &&
steps.create-issue.outputs.issue_number != ''
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
uses: actions/github-script@v9

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses actions/github-script@v9 (floating tag). Please pin to the action commit SHA (with '# v9') to align with the pinned-actions convention across this repo’s workflows.

Copilot uses AI. Check for mistakes.
- name: Remove trigger label
if: steps.check-merged.outputs.merged == 'true'
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9
uses: actions/github-script@v9

Copilot AI Apr 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step uses actions/github-script@v9 (floating tag). Please pin to a full commit SHA to match the repo’s workflow hardening convention and keep behavior reproducible.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automated Automated sync from Workflows sync Automated sync from Workflows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants