Skip to content

chore: sync workflow templates - #606

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

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

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-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
  • agents_pr_meta_update_body.js: Updates PR body with agent metadata

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

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 08:42
@stranske stranske added sync Automated sync from Workflows automated Automated sync from Workflows labels Apr 26, 2026
@stranske-keepalive

Copy link
Copy Markdown
Contributor

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

@agents-workflows-bot

agents-workflows-bot Bot commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

🤖 Keepalive Loop Status

PR #606 | 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/15 complete
Timeout 45 min (default)
Timeout usage 5m elapsed (11%, 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). |

@agents-workflows-bot

agents-workflows-bot 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 08:45:04 Codex wait (missing-agent-label-transient) skipped 0 0/15
0 2026-04-26 08:47:34 Codex wait (missing-agent-label-transient) skipped 0 0/15 cancelled
0 2026-04-26 08:48:10 Codex wait (missing-agent-label-transient) skipped 0 0/15 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

Synchronizes this repository’s workflow automation and metrics tooling with the upstream workflow templates, expanding weekly metrics collection/aggregation and adding richer “contract” artifacts for debugging and reporting.

Changes:

  • Enhanced weekly metrics workflow to generate a download manifest (JSON/Markdown) while fetching artifacts, and to publish a JSON summary alongside the existing Markdown summary.
  • Extended metrics aggregation and terminal-disposition coverage tooling to enrich records with source metadata and to track verifier model compatibility / missing model metadata.
  • Updated the bot-comment handler wrapper workflow to emit and upload a wrapper terminal-disposition artifact (plus skip reasons) to support coverage/telemetry.

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
scripts/aggregate_agent_metrics.py Adds metric source enrichment, parse error detail reporting, JSON “summary contract” output, and verifier model metadata reporting.
.github/workflows/agents-weekly-metrics.yml Tracks artifact download/unzip outcomes via a manifest and publishes additional artifacts (JSON summary + manifest).
.github/workflows/agents-bot-comment-handler.yml Emits wrapper terminal disposition records and exposes skip reasons as job outputs.
.github/workflows/agents-81-gate-followups.yml Adjusts jq invocation to compact output when building metrics JSON.
.github/scripts/weekly_metrics_download_manifest.js New helper to initialize/record/finalize the weekly metrics artifact download manifest (JSON + optional Markdown).
.github/scripts/weekly_metrics_artifacts.js Adds priority-family “missing/available/selected” reporting to the artifact selection contract and Markdown output.
.github/scripts/terminal_disposition_coverage.js Adds verifier model compatibility checks and enriches artifact selection summary with priority-family status info.
.github/scripts/terminal_disposition.js Extends normalized terminal disposition records with model/mode metadata fields.
.github/scripts/coverage_monitor_summary.js New weekly coverage-monitor summary contract that aggregates monitor report statuses into a single summary.
.github/scripts/bot_comment_auth_coverage.js Extends organic evidence reporting with “skipped/missing requirements” details and wrapper→reusable expectations metadata.
.github/scripts/agents_pr_meta_update_body.js Updates PR preamble generation to include an issue marker and an auto-close reference.

Comment on lines +464 to +470
byFamily.set(family, {
family,
status: selectedCount > 0 ? 'selected' : (candidateCount > 0 ? 'available' : 'missing'),
candidate_count: candidateCount,
selected_count: selectedCount,
latest_candidate: selectedArtifact ? normalizeSelectionArtifact(selectedArtifact) : null,
selected_artifact: selectedArtifact ? normalizeSelectionArtifact(selectedArtifact) : null,

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.

In normalizeTerminalPriorityFamilyStatuses, the fallback path for families not present in report.priority_family_statuses sets latest_candidate to the selected artifact (same object as selected_artifact). This misrepresents what “latest candidate” means and can lead to confusing/incorrect coverage markdown (the “Latest artifact” column will mirror the selected artifact even when there are no candidate details). Consider leaving latest_candidate as null in this fallback (or deriving it from candidate artifacts if available) and only populating selected_artifact from the selected list.

Suggested change
byFamily.set(family, {
family,
status: selectedCount > 0 ? 'selected' : (candidateCount > 0 ? 'available' : 'missing'),
candidate_count: candidateCount,
selected_count: selectedCount,
latest_candidate: selectedArtifact ? normalizeSelectionArtifact(selectedArtifact) : null,
selected_artifact: selectedArtifact ? normalizeSelectionArtifact(selectedArtifact) : null,
const normalizedSelectedArtifact = selectedArtifact
? normalizeSelectionArtifact(selectedArtifact)
: null;
byFamily.set(family, {
family,
status: selectedCount > 0 ? 'selected' : (candidateCount > 0 ? 'available' : 'missing'),
candidate_count: candidateCount,
selected_count: selectedCount,
latest_candidate: null,
selected_artifact: normalizedSelectedArtifact,

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