Skip to content

chore: sync workflow templates - #599

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

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

Conversation

@stranske

Copy link
Copy Markdown
Owner

Sync Summary

Files Updated

  • 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)
  • 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

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: f2ff566b326e

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 04:58
@stranske stranske added sync Automated sync from Workflows automated Automated sync from Workflows labels Apr 26, 2026
@agents-workflows-bot

Copy link
Copy Markdown
Contributor

⚠️ Action Required: Unable to determine source issue for PR #599. 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 #599 | 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/11 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 05:00:20 Codex wait (missing-agent-label-transient) skipped 0 0/11 cancelled
0 2026-04-26 05:01:25 Codex wait (missing-agent-label-transient) skipped 0 0/11 cancelled
0 2026-04-26 05:04:24 Codex wait (missing-agent-label-transient) skipped 0 0/11 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

This PR syncs workflow-template changes from stranske/Workflows, extending weekly metrics/coverage telemetry and adding additional terminal-disposition and bot-comment-auth coverage reporting details.

Changes:

  • Extend weekly verifier metrics aggregation to include model, model-selection reasons, and verifier mode counts.
  • Add wrapper terminal-disposition artifact emission to agents-bot-comment-handler.yml and enrich artifact-selection reporting (missing priority families / statuses).
  • Introduce a new coverage_monitor_summary.js contract to summarize weekly coverage monitor checkpoints.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
scripts/aggregate_agent_metrics.py Adds verifier model / selection-reason / mode rollups to the weekly metrics summary output.
.github/workflows/agents-bot-comment-handler.yml Emits wrapper terminal-disposition artifacts and propagates skip reasons for clearer telemetry.
.github/scripts/weekly_metrics_artifacts.js Adds “missing priority families” and per-family status reporting to artifact selection output/markdown.
.github/scripts/terminal_disposition_coverage.js Expands artifact-selection normalization and markdown reporting for terminal coverage preflight.
.github/scripts/terminal_disposition.js Extends terminal-disposition schema normalization to include LLM metadata fields.
.github/scripts/coverage_monitor_summary.js New script to build a machine-readable weekly coverage monitor summary and markdown output.
.github/scripts/bot_comment_auth_coverage.js Enhances organic-evidence reporting with skipped/missing requirement details (esp. wrapper vs reusable expectations).

Comment on lines +258 to +266
- name: Upload wrapper terminal disposition
if: always()
uses: actions/upload-artifact@v7
with:
name: review-thread-terminal-disposition-${{ github.run_id }}
path: |
agent-metrics/review-thread-terminal-disposition.ndjson
terminal-disposition-summary.md
if-no-files-found: error

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.

actions/upload-artifact is referenced via the floating @v7 tag here, while the rest of the repo pins third-party actions to full commit SHAs. Please pin this action to a specific SHA (with the inline major-version comment) to avoid supply-chain risk and unexpected breakages.

Copilot uses AI. Check for mistakes.
Comment on lines +206 to +214
- name: Write wrapper terminal disposition
if: always()
env:
RESOLVED_PR_NUMBER: ${{ steps.resolve.outputs.pr_number }}
REUSABLE_INVOCATION_EXPECTED: ${{ steps.resolve.outputs.should_run }}
SKIP_REASON: ${{ steps.resolve.outputs.skip_reason }}
run: |
mkdir -p agent-metrics
node <<'NODE'

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.

The new wrapper step executes node directly, but this workflow/job never sets up a specific Node version (no actions/setup-node). For consistency with other workflows and to avoid runner-image drift, add a pinned actions/setup-node step (Node 20) before running setup-api-client/Node scripts in this job.

Copilot uses AI. Check for mistakes.

function overallStatus(monitors) {
if (monitors.some((monitor) => monitor.should_fail || monitor.status === 'fail')) return 'fail';
if (monitors.some((monitor) => ['missing', 'parse-error', 'warning'].includes(monitor.status))) {

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.

overallStatus() doesn’t treat monitor status === 'unknown' as a warning/missing state. If a report parses but has a missing/invalid status (so normalizeStatus() returns 'unknown'), the overall result can incorrectly be pass. Consider including 'unknown' in the warning set (or mapping it to 'parse-error').

Suggested change
if (monitors.some((monitor) => ['missing', 'parse-error', 'warning'].includes(monitor.status))) {
if (monitors.some((monitor) => ['missing', 'parse-error', 'warning', 'unknown'].includes(monitor.status))) {

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