Skip to content

[P2] Eval-harness workflow runs the review-quality gate on Python 3.12 with unpinned actions, while CI pins 3.14 by SHA #496

Description

@itsmiso-ai

Ask: Align the eval-harness workflow with ci.yaml — same pinned Python interpreter and SHA-pinned actions — so the review-quality gate exercises the same interpreter as production CI.
Expected files: .github/workflows/eval-harness.yaml

Problem: eval-harness.yaml (added in #488 to close #472) is the regression gate for review quality — it imports and exercises pr_reviewer.* (tool loop, parser, routing). But it runs on Python 3.12 with floating actions/checkout@v4, actions/setup-python@v5, actions/upload-artifact@v4, while ci.yaml pins SHA-pinned v7 actions and Python 3.14 — with a comment documenting that interpreter skew between local and CI is exactly how a broken regression test once shipped. A quality gate that runs on a different interpreter than the one that ships can pass while CI fails (or worse, mask an interpreter-specific regression), and the weekly scheduled run makes the skew self-reinforcing. Renovate PRs #491–493 already bump the eval-harness actions to the pinned v7 forms (in flight), so the remaining, renovate-invisible gap is the interpreter and the pinning-style inconsistency.

Evidence:

Acceptance:

  • eval-harness.yaml pins the same Python version as ci.yaml (single source for the version, e.g. a repo-level default or matching literal) and uses the same SHA-pinned action style.
  • The weekly scheduled eval run and CI both exercise the identical interpreter for the same pr_reviewer code.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions