Skip to content

SYM-208: add PR checklist local preflight#1270

Draft
jwalin-shah wants to merge 2 commits intotinyhumansai:mainfrom
jwalin-shah:codex/SYM-208-pr-checklist-preflight
Draft

SYM-208: add PR checklist local preflight#1270
jwalin-shah wants to merge 2 commits intotinyhumansai:mainfrom
jwalin-shah:codex/SYM-208-pr-checklist-preflight

Conversation

@jwalin-shah
Copy link
Copy Markdown
Contributor

Summary

  • Adds local PR checklist validation for generated PR body files, PR_BODY, and stdin pipelines.
  • Tightens checklist parsing so every unchecked item fails, including unchecked N/A lines.
  • Documents the local preflight command for Codex/Linear agents before PR handoff.
  • Adds a root pnpm pr:checklist alias for the existing script.

Problem

Codex-authored PRs can fail the PR Submission Checklist workflow after handoff because unchecked template items are only discovered once CI runs. The existing parser also treated unchecked N/A checklist items as satisfied.

Solution

  • scripts/check-pr-checklist.mjs now reads a PR body from a file path, stdin (-), or PR_BODY.
  • scripts/lib/checklist-parser.mjs now requires every checklist item to be checked.
  • docs/agent-workflows/codex-pr-checklist.md now includes local preflight commands for generated body files and gh pr view pipelines.

Submission Checklist

  • Tests added or updated (happy path + at least one failure / edge case) per docs/TESTING-STRATEGY.md (N/A: script behavior validated with direct good and bad CLI fixtures)
  • Diff coverage >= 80% - changed lines (Vitest + cargo-llvm-cov merged via diff-cover) meet the gate enforced by .github/workflows/coverage.yml. Run pnpm test:coverage and pnpm test:rust locally; PRs below 80% on changed lines will not merge. (N/A: docs/root script change outside app and Rust coverage harnesses)
  • Coverage matrix updated - added/removed/renamed feature rows in docs/TEST-COVERAGE-MATRIX.md reflect this change (N/A: agent workflow/script tooling only)
  • All affected feature IDs from the matrix are listed in the PR description under ## Related (N/A: no coverage matrix feature IDs affected)
  • No new external network dependencies introduced (mock backend used per docs/TESTING-STRATEGY.md
  • Manual smoke checklist updated if this touches release-cut surfaces (docs/RELEASE-MANUAL-SMOKE.md) (N/A: not a release-cut surface)
  • Linked issue closed via Closes #NNN in the ## Related section (N/A: Linear issue only)

Impact

No runtime app impact. This only affects repository tooling and agent workflow documentation.

Related


AI Authored PR Metadata (required for Codex/Linear PRs)

Linear Issue

Commit & Branch

  • Branch: codex/SYM-208-pr-checklist-preflight
  • Commit SHA: ff1d78c5fe801f29cccfc6ea3e1139f595b80494

Validation Run

  • pnpm --filter openhuman-app format:check (N/A: no app workspace files changed)
  • pnpm typecheck (N/A: no TypeScript app files changed)
  • Focused tests: pnpm pr:checklist "$ok_file"; pnpm pr:checklist "$bad_file" expected failure; PR_BODY="$(cat "$ok_file")" pnpm pr:checklist; printf ... | pnpm pr:checklist -
  • Rust fmt/check (if changed): N/A, no Rust changed
  • Tauri fmt/check (if changed): N/A, no Tauri changed

Validation Blocked

  • command: N/A
  • error: N/A
  • impact: N/A

Behavior Changes

  • Intended behavior change: unchecked checklist items now fail even when the text starts with N/A; N/A items must be checked with a reason.
  • User-visible effect: AI-authored PRs can validate body checklist completion before CI.

Parity Contract

  • Legacy behavior preserved: existing PR_BODY workflow remains supported.
  • Guard/fallback/dispatch parity checks: file input and stdin are additive input modes; no workflow changes required.

Duplicate / Superseded PR Handling

  • Duplicate PR(s): N/A
  • Canonical PR: this PR
  • Resolution (closed/superseded/updated): N/A

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 6, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 25fba3f2-8fc1-40e1-89f2-d530198add79

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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 and usage tips.

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.

2 participants