Skip to content

chore: sync workflow templates - #644

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

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

Conversation

@stranske

Copy link
Copy Markdown
Owner

Sync Summary

Files Updated

  • aggregate_agent_metrics.py: Aggregates downloaded weekly agent metrics - required by agents-weekly-metrics.yml
  • source_context.js: Classifies PR workflow source context for issue, local, automation, sync, Dependabot, review follow-up, and direct GitHub work
  • coverage_monitor_summary.js: Machine-readable weekly coverage monitor checkpoint
  • weekly_metrics_artifacts.js: Bounded weekly metrics artifact selection contract
  • agents_pr_meta_keepalive.js: PR metadata handling for keepalive
  • 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
Source SHA: 8a344d64eb1ca1e2318692e5f4c17c45415c7dcc
Template hash: 20d0e241bca2
Sync branch: sync/workflows-20d0e241bca2
Consumer repo: stranske/Template
Manifest: .github/sync-manifest.yml

Automated sync from stranske/Workflows
Template hash: 20d0e241bca2

Changes synced from sync-manifest.yml
Copilot AI review requested due to automatic review settings April 27, 2026 05:23
@stranske stranske added sync Automated sync from Workflows automated Automated sync from Workflows labels Apr 27, 2026

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 workflow-consumer automation scripts from stranske/Workflows into this repo, updating weekly metrics aggregation/selection and PR source-context + metadata automation behavior.

Changes:

  • Tightens metrics aggregation typing/contracts and artifact selection reporting.
  • Extends weekly metrics artifact collection to additionally pull artifacts from “priority producer” workflows (bounded by a new cap).
  • Enhances PR workflow source-context parsing and propagates a new “no automation” signal into parts of PR automation.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
scripts/aggregate_agent_metrics.py Adds Counter[str] typing and normalizes missing_priority_families contract output.
.github/scripts/weekly_metrics_artifacts.js Adds priority-workflow artifact collection + new option priority_workflow_runs_per_source.
.github/scripts/source_context.js Improves checkbox parsing and introduces noAutomation context detection.
.github/scripts/coverage_monitor_summary.js Wraps statSync in try/catch to avoid crashes on filesystem races.
.github/scripts/agents_pr_meta_update_body.js Refines workflow-source repair comment text and adds issue-sync detection helpers + repair-comment resolution flow.
.github/scripts/agents_pr_meta_keepalive.js Skips keepalive dispatch when PR source context opts out of automation.

Comment on lines +758 to +762
if (sourceContext.noAutomation) {
outputs.reason = 'no-automation-source-context';
outputs.dispatch = 'false';
core.info(
`Keepalive dispatch skipped: PR source context opts out of automation (${formatSourceContextForLog(sourceContext)}).`,

Copilot AI Apr 27, 2026

Copy link

Choose a reason for hiding this comment

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

sourceContext.noAutomation is checked only after the workflow has already added/validated the instruction + lock reactions. If workflow:no-automation is meant to avoid automation side-effects, consider short-circuiting earlier (right after resolvePrSourceContext) so the workflow doesn't mutate comment reactions before skipping dispatch.

Copilot uses AI. Check for mistakes.

const explicitNonIssueSourceContext = resolveExplicitNonIssueWorkflowSourceContext(pr);
const issueNumber = extractIssueNumberFromPull(pr);
const sourceContext = resolvePrSourceContext(pr);

Copilot AI Apr 27, 2026

Copy link

Choose a reason for hiding this comment

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

resolvePrSourceContext(pr) now exposes a noAutomation flag, but this script does not currently honor it and can still perform PR-body sync / comment updates when workflow:no-automation is set. If no-automation is intended to opt out of PR metadata automation, add an early return when sourceContext.noAutomation is true (before any syncing or comment mutations).

Suggested change
const sourceContext = resolvePrSourceContext(pr);
const sourceContext = resolvePrSourceContext(pr);
if (sourceContext && sourceContext.noAutomation) {
core.info(
`PR #${pr.number} has workflow no-automation enabled (${formatSourceContextForLog(sourceContext)}); skipping PR metadata automation.`,
);
return;
}

Copilot uses AI. Check for mistakes.
@stranske

Copy link
Copy Markdown
Owner Author

Closing as stale: newer sync workflow templates PR #657 is open for this repo.

@stranske stranske closed this Apr 29, 2026
@agents-workflows-bot
agents-workflows-bot Bot deleted the sync/workflows-20d0e241bca2 branch May 14, 2026 19:30
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