Skip to content

Fix autofix detection + speed up reusable Python CI - #1502

Merged
stranske merged 9 commits into
mainfrom
fix/event-hub-reusable-workflows
Feb 15, 2026
Merged

stranske merged 9 commits into
mainfrom
fix/event-hub-reusable-workflows

Conversation

@stranske

@stranske stranske commented Feb 15, 2026

Copy link
Copy Markdown
Owner

Source: Issue #1503

Automated Status Summary

Scope

Scope section missing from source issue.

Context for Agent

Related Issues/PRs

Tasks

  • Tasks section missing from source issue.

Acceptance criteria

  • Acceptance criteria section missing from source issue.

Head SHA: 76e1e04
Latest Runs: ✅ success — Gate
Required: gate: ✅ success

Workflow / Job Result Logs
Agents PR meta manager ❔ in progress View run
Gate ✅ success View run
Health 40 Sweep ✅ success View run
Health 44 Gate Branch Protection ✅ success View run
Health 45 Agents Guard ✅ success View run
Health 50 Security Scan ✅ success View run
Health 73 Template Completeness ✅ success View run
Health 74 Template Drift ✅ success View run
Maint 52 Validate Workflows ✅ success View run
PR 11 - Minimal invariant CI ✅ success View run
Selftest CI ✅ success View run
Validate Sync Manifest ✅ success View run

Copilot AI review requested due to automatic review settings February 15, 2026 04:01
@stranske
stranske temporarily deployed to agent-high-privilege February 15, 2026 04:01 — with GitHub Actions Inactive
@agents-workflows-bot

Copy link
Copy Markdown
Contributor

⚠️ Action Required: Unable to determine source issue for PR #1502. 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 Feb 15, 2026

Copy link
Copy Markdown
Contributor

Automated Status Summary

Head SHA: 2e97162
Latest Runs: ⏳ pending — Gate
Required contexts: Gate / gate, Health 45 Agents Guard / guard
Required: core tests (3.11): ⏳ pending, core tests (3.12): ⏳ pending, docker smoke: ⏳ pending, gate: ⏳ pending

Workflow / Job Result Logs
(no jobs reported) ⏳ pending

Coverage Overview

  • Coverage history entries: 1

Coverage Trend

Metric Value
Current 93.12%
Baseline 85.00%
Delta +8.12%
Minimum 70.00%
Status ✅ Pass

Top Coverage Hotspots (lowest coverage)

File Coverage Missing
src/cli_parser.py 81.8% 4
src/percentile_calculator.py 95.0% 1
src/aggregator.py 95.0% 2
src/__init__.py 100.0% 0
src/ndjson_parser.py 100.0% 0

Updated automatically; will refresh on subsequent CI/Docker completions.


Keepalive checklist

Scope

No scope information available

Tasks

  • No tasks defined

Acceptance criteria

  • No acceptance criteria defined

@agents-workflows-bot

agents-workflows-bot Bot commented Feb 15, 2026

Copy link
Copy Markdown
Contributor

🤖 Keepalive Loop Status

PR #1502 | 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/2 complete
Timeout 45 min (default)
Timeout usage 3m elapsed (8%, 42m 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). |

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 improves autofix detection reliability and reduces Python CI runtime by removing implicit heavyweight dependencies. The autofix workflow now correctly resolves failures against the triggering workflow_run SHA (with fallback to PR head if needed), proceeds with autofix attempts even when rate-limited on file listing, and prioritizes automation PATs for better rate limit headroom. The Python CI workflow removes ~10 implicit baseline test dependencies (hypothesis, pandas, numpy, pydantic, etc.), requiring consumer repos to declare their own dependencies explicitly, which reduces 3.11/3.12 runtime significantly.

Changes:

  • Autofix detection now checks workflow_run.head_sha first, falling back to PR head SHA if no failures found
  • Rate-limit handling changed from skip-run to proceed-without-filter for better throughput
  • Token selection prioritizes AGENTS_AUTOMATION_PAT and ACTIONS_BOT_PAT over github.token
  • Python CI no longer installs heavyweight baseline test dependencies implicitly
  • Extensive code formatting improvements for readability (multi-line statements, consistent indentation)

Reviewed changes

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

File Description
.github/workflows/autofix.yml Added triggerHeadSha resolution, listFilesOrNullOnRateLimit helper, setOutputs helper, token prioritization, and code cleanup
templates/consumer-repo/.github/workflows/autofix.yml Same autofix improvements as main workflow (inline instead of helpers), token prioritization, rate limit handling
.github/workflows/reusable-10-ci-python.yml Removed base_test_specs heavyweight dependencies, reformatted long lines, simplified cache restore-keys

Comment on lines 1684 to 1685
mypy-${{ runner.os }}-
mypy-${{ runner.os }}-${{ matrix.python-version }}-

Copilot AI Feb 15, 2026

Copy link

Choose a reason for hiding this comment

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

The restore-keys order should be from most specific to least specific, but it's currently reversed. GitHub Actions tries restore-keys in order, so putting the generic key first (mypy-${{ runner.os }}-) means it could match caches from different Python versions or project configurations before trying a more specific match. This could cause mypy cache mismatches.

Consider reordering to:

restore-keys: |
  mypy-${{ runner.os }}-${{ matrix.python-version }}-
  mypy-${{ runner.os }}-

This ensures caches from the same Python version are preferred before falling back to any OS-level cache.

Suggested change
mypy-${{ runner.os }}-
mypy-${{ runner.os }}-${{ matrix.python-version }}-
mypy-${{ runner.os }}-${{ matrix.python-version }}-
mypy-${{ runner.os }}-

Copilot uses AI. Check for mistakes.
Comment thread .github/workflows/reusable-10-ci-python.yml Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 243f47f8a7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/reusable-10-ci-python.yml Outdated
@stranske
stranske temporarily deployed to agent-high-privilege February 15, 2026 04:11 — with GitHub Actions Inactive
@github-actions github-actions Bot added the autofix Opt-in automated formatting & lint remediation label Feb 15, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Autofix updated these files:

  • tests/workflows/test_reusable_ci_workflow.py

@stranske
stranske temporarily deployed to agent-high-privilege February 15, 2026 04:27 — with GitHub Actions Inactive
@stranske
stranske temporarily deployed to agent-high-privilege February 15, 2026 04:30 — with GitHub Actions Inactive
@stranske
stranske merged commit 91b8e5e into main Feb 15, 2026
111 of 113 checks passed
@stranske
stranske deleted the fix/event-hub-reusable-workflows branch February 15, 2026 04:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autofix:patch autofix Opt-in automated formatting & lint remediation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants