Skip to content

Run tests on pull requests and give each test lane one job - #469

Merged
Marve10s merged 3 commits into
mainfrom
refactor/test-lanes
Oct 14, 2026
Merged

Marve10s merged 3 commits into
mainfrom
refactor/test-lanes

Conversation

@Marve10s

@Marve10s Marve10s commented Oct 13, 2026 •

Copy link
Copy Markdown
Owner

CI only ran the test suites after a push to main. On pull requests, the Test job was skipped and the gate required only Lint, so every PR merged without its ~6,000 package tests. test:release, which runs on push, mixed release checks with 38 test files that the Test job already ran, and it rebuilt types and template-generator twice. 31 test files under scripts/ and testing/ ran only if they happened to be named in that list; some were never named and had never run.

This makes the lanes match what each one is for:

  • The Test job runs on pull requests. The Build Check gate now requires Lint and Test on every PR; release-guard and web-build stay push-only. validate-release-workflow.test.ts pins the new contract.
  • bun run test:scripts runs every test under scripts/ and testing/. That is 204 tests in about 15 seconds, all passing, including the six testing/lib tests and the em-dash lint rule test that no lane ran before. The Test job runs it after bun run test.
  • test:release is the release-only lane: build, test:scripts, the release validators (agent docs, plugin bundle, preview and release workflows, public evidence claims, capability evidence, recommendations, update qualification and action, mutation contracts), the built MCP protocol test, and tech links. It runs in about a minute.
  • 11 aggregate scripts are gone. Each one (test:lifecycle, test:recommendations, test:workflow-security, test:ai-examples and the rest) re-ran files that bun run test or test:scripts already cover. The two guidelines that named them now give the direct command.

The local verified-combinations ledger is removed

build-verified-combinations.ts (1,355 lines) turned test:release steps and local smoke output into docs/verified-combinations.md and apps/web/src/lib/docs/verified-combinations-data.ts. The checked-in report said "0/12 combinations have Pass evidence", and nothing in the web app imported the data file. This PR removes:

  • the builder and its tests;
  • the test:release:record recorder and its testing/.release-guard/ output;
  • the scoring logic in scripts/verified-combinations/evidence.ts;
  • the generated markdown and data;
  • their references in docs/README.md, the roadmap, .gitignore and .oxfmtrc.json.

The smoke test and published-package smoke still write the same JSON envelope, now typed by scripts/evidence/smoke-evidence.ts.

Public release verification is unchanged. The docs/verification page, the /api/verified-combinations badge, release-verification.ts, release receipts and validate-public-evidence-claims.ts read published release receipts, not the local ledger. The old /docs/reference/verified-combinations URL keeps its redirect.

RetriggerView in GreptileConfidence Score: 5/5

The PR appears safe to merge; no actionable new issues remain.

Reviews (2) · Last reviewed commit: "Merge remote-tracking branch 'origin/mai..." · Reviewed by Greptile

Summary by CodeRabbit

  • CI & Testing
    • Pull-request checks now run automated tests alongside linting, and the build gate fails if either check fails.
    • Automated tests now include repository scripts. Release-sensitive changes require both standard and release-specific test suites.
  • Documentation
    • Updated verification guidance to clarify which checks apply to standard and release-specific changes.
    • Removed the verified-combinations evidence ledger and its documentation entry.

@vercel

vercel Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
better-fullstack-web Ready Ready Preview Oct 14, 2026 9:53pm UTC

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ⚠️ Failed 2026-10-14T21:51:41.271790Z 020dea6 New commits
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@coderabbitai

coderabbitai Bot commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 4d241bc9-ba2d-43da-931c-d41c141d4d9b
📥 Commits

Reviewing files that changed from the base of the PR and between 953bebd and 020dea6.

📒 Files selected for processing: 25
  • .github/workflows/test.yaml
  • .gitignore
  • .oxfmtrc.json
  • AGENTS.md
  • apps/web/src/lib/docs/verified-combinations-data.ts
  • docs/README.md
  • docs/guidelines/adding-new-tool-options/README.md
  • docs/guidelines/generated-artifacts-and-sync.md
  • docs/guidelines/generator-change-playbook.md
  • docs/guidelines/lifecycle-commands-and-mcp.md
  • docs/guidelines/preview-publishing-security.md
  • docs/guidelines/stack-graph-and-config-authority.md
  • docs/guidelines/testing-release-and-upstream.md
  • docs/next-updates-roadmap.md
  • docs/verified-combinations.md
  • package.json
  • scripts/evidence/smoke-evidence.ts
  • scripts/release/published-package-smoke.ts
  • scripts/release/record-release-guard.ts
  • scripts/release/validate-release-workflow.test.ts
  • scripts/validation/build-verified-combinations.test.ts
  • scripts/validation/build-verified-combinations.ts
  • scripts/validation/verified-combinations-evidence.test.ts
  • scripts/verified-combinations/evidence.ts
  • testing/smoke-test.ts
💤 Files with no reviewable changes: 11
  • docs/README.md
  • scripts/validation/verified-combinations-evidence.test.ts
  • .gitignore
  • docs/verified-combinations.md
  • docs/next-updates-roadmap.md
  • .oxfmtrc.json
  • scripts/release/record-release-guard.ts
  • scripts/validation/build-verified-combinations.ts
  • apps/web/src/lib/docs/verified-combinations-data.ts
  • scripts/validation/build-verified-combinations.test.ts
  • scripts/verified-combinations/evidence.ts

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.

📝 Walkthrough

The PR revises test commands and CI requirements, removes the generated verified-combinations evidence pipeline and its ledger, and moves the smoke evidence schema into a dedicated module.

Changes: Test and release verification

Layer / File(s) Summary
Test lanes and CI checks
.github/workflows/test.yaml, package.json, scripts/release/validate-release-workflow.test.ts, AGENTS.md, docs/guidelines/*
The test job now runs on pull requests and pushes, and runs bun run test:scripts after Turbo tests. The required-check gate requires test success for all events; release-guard and web-build requirements remain push-specific. The release test scripts, workflow test, and verification guidance are updated.
Verified-combinations evidence removal
scripts/verified-combinations/evidence.ts, scripts/validation/*verified-combinations*, scripts/release/record-release-guard.ts, apps/web/src/lib/docs/verified-combinations-data.ts, docs/verified-combinations.md, docs/README.md, docs/next-updates-roadmap.md, .gitignore, .oxfmtrc.json, package.json
The evidence evaluators, ledger generator, release-guard recorder, generated web summary, associated tests, and ledger documentation are removed. Related package scripts, ignore rules, and documentation references are also removed.
Smoke evidence schema relocation
scripts/evidence/smoke-evidence.ts, testing/smoke-test.ts, scripts/release/published-package-smoke.ts
A schema version constant and generic smoke evidence envelope type are added to scripts/evidence/smoke-evidence.ts. The smoke test and published-package smoke script import the schema version from that module.

Priority: ➖ Normal

Estimated code review effort: 4 (Complex) | ~45 minutes

Change: Bug fix

Sequence Diagram(s)

sequenceDiagram
  participant GitHubActions as GitHub Actions test job
  participant Turbo as Turbo tests
  participant Bun as bun run test:scripts
  participant Gate as Required-check gate
  GitHubActions->>Turbo: Run tests
  GitHubActions->>Bun: Run script tests after Turbo tests
  GitHubActions->>Gate: Report test result
Loading
Merge Risk: ⚪ Minimal · up to 020de

The CI and release-verification changes are mergeable with normal checks; no concrete blocking issue was found.

Pre-merge checks: Passed 5
Passed Passed checks: 5 passed
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly summarizes the primary CI changes: running tests on pull requests and separating responsibilities across test lanes.
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 4…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). labels Oct 13, 2026
Comment thread docs/guidelines/testing-release-and-upstream.md
@Marve10s
Marve10s enabled auto-merge October 14, 2026 21:52
@Marve10s
Marve10s merged commit 9c96456 into main Oct 14, 2026
14 checks passed

This branch was successfully deployed

1 active deployment
Preview — 020dea65 Deployed Oct 14, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant