Skip to content

feat(review): run every added or changed E2E spec as PR proof - #5175

Merged
benjaminshafii merged 3 commits into
devfrom
fix/pr-proof-git-paths
Sep 20, 2026
Merged

benjaminshafii merged 3 commits into
devfrom
fix/pr-proof-git-paths

Conversation

@benjaminshafii

@benjaminshafii benjaminshafii commented Sep 20, 2026

Copy link
Copy Markdown
Member

Intent

Replace the "must add a new spec" gate with a simpler rule: every E2E spec a PR adds or changes is run and published as that PR's proof. Nothing blocks. A PR touching no spec publishes nothing and says so.

Why

The gate correctly refused #5170/#5171/#5172, but #5172 rewrites three existing E2E specs that are its real proof, and the runner never executed them. Counting only newly added files was a poor proxy.

Change

  • Selection: added, modified, renamed, copied evals/specs/**/*.e2e.test.ts. Removed specs and non-E2E files are ignored.
  • proof-contract job and its openwork-tests-required wiring removed; the structural validator is deleted. No branch-protection impact.
  • Proof runner installs a virtual display (like the nightly local lane), builds the review app once, runs each selected spec under xvfb-run in its own bounded job.
  • Publisher accepts the same selection, requires one artifact per spec and attempt, and aggregates all records into one report (one section per test). Refuses unrelated artifacts, stale heads, foreign records.
  • Path safety relaxed to normalized Git paths (Den routes contain (den)); traversal, absolute paths, backslashes and control chars still refused.

Proof on this PR

evals/specs/pr-proof-git-paths.e2e.test.ts (new) is selected and runs here. Local: 1 passed, 0 skipped.

Verification

  • node --test .github/scripts/pr-proof.test.mjs evals/scripts/publish-review.test.mjs evals/packages/test-artifacts/test/*.test.ts — 26 passed.
  • node --test scripts/ci/workflow-authoring-gate.test.mjs .github/scripts/required-verification.test.mjs — passed.
  • actionlint on the three workflows — passed.

No new environment variables or secrets.

After merge: update #5172, #5170, #5171, #5168 branches; their changed specs will run and publish.

@benjaminshafii
benjaminshafii requested a review from a team September 20, 2026 15:15
@vercel

vercel Bot commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

4 Skipped Deployments
Project Deployment Actions Updated
openwork-app Ignored Ignored Preview Sep 20, 2026 4:22pm UTC
openwork-den Ignored Ignored Preview Sep 20, 2026 4:22pm UTC
openwork-diagnostics Ignored Ignored Preview Sep 20, 2026 4:22pm UTC
openwork-landing Ignored Ignored Preview Sep 20, 2026 4:22pm UTC

@github-actions

github-actions Bot commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

Selected evidence: Passed · 1/1 tests · 2/2 assertions · 0 images

Commit 5021622a43029e2919d9ca3fdc80f264c10f2548 · selected evidence
Required verification is reported separately by the current-head Required verification check.

Open review report

@benjaminshafii benjaminshafii changed the title fix(review): accept normalized Git paths in proof selection feat(review): run every added or changed E2E spec as PR proof Sep 20, 2026
@benjaminshafii
benjaminshafii merged commit 653a212 into dev Sep 20, 2026
24 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant