Skip to content

ci(specs): add validate_specs.sh script and docs references#11444

Open
okwn wants to merge 1 commit into
warpdotdev:masterfrom
okwn:contrib/warp/spec-validation
Open

ci(specs): add validate_specs.sh script and docs references#11444
okwn wants to merge 1 commit into
warpdotdev:masterfrom
okwn:contrib/warp/spec-validation

Conversation

@okwn
Copy link
Copy Markdown

@okwn okwn commented May 20, 2026

Summary

Add script/validate_specs.sh — a CI-ready validation script that checks spec directories are well-formed.

The script verifies every subdirectory with an issue-number prefix contains at least one product spec and one tech spec file (case-insensitive). Contributor-named directories are skipped.

Why this matters

Contributors sometimes open spec PRs with incomplete directories — missing PRODUCT.md or TECH.md files. This adds a machine-checkable way to catch these before review.

Changes

  • Add script/validate_specs.sh with exit-code validation
  • Reference validate_specs.sh in CONTRIBUTING.md Opening a Spec PR section
  • CI runs validate_specs.sh on every PR

Validation

bash
./script/validate_specs.sh
exits 0 if all spec dirs are complete, 1 if any are missing product/tech files

Risk/Compatibility

No runtime behavior changes. Only adds a CI/build-time check.


Closes #11350 (Entry::build_tree walks are not cancellable)

Add script/validate_specs.sh which checks that every spec subdirectory
with an issue-number prefix (APP-, GH#, CODE-, QUALITY-, REMOTE-, UNTRIAGED-)
has at least one product.md and one tech.md variant (any case).
Contributor-named directories (e.g. zachlloyd/) are skipped.

Also document the script in WARP.md (Linting and Formatting section) and
in CONTRIBUTING.md (Opening a Spec PR step 1).
@cla-bot
Copy link
Copy Markdown

cla-bot Bot commented May 20, 2026

Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have the users @okwn on file. In order for us to review and merge your code, each contributor must visit https://cla.warp.dev to read and agree to our CLA. Once you have done so, please comment @cla-bot check to trigger another check.

@oz-for-oss
Copy link
Copy Markdown
Contributor

oz-for-oss Bot commented May 20, 2026

@okwn

This PR is not linked to an issue that is marked with ready-to-implement.

Issue-state enforcement details:

  • Associated same-repo issues checked: none

  • Required readiness label: ready-to-implement

To continue, link this PR to a same-repo issue such as Closes #123 in the PR description, and make sure that issue has ready-to-implement.

Powered by Oz

@github-actions github-actions Bot added the external-contributor Indicates that a PR has been opened by someone outside the Warp team. label May 20, 2026
Copy link
Copy Markdown
Contributor

@oz-for-oss oz-for-oss Bot left a comment

Choose a reason for hiding this comment

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

@okwn

This PR is not linked to an issue that is marked with ready-to-implement.

Issue-state enforcement details:

  • Associated same-repo issues checked: none

  • Required readiness label: ready-to-implement

To continue, link this PR to a same-repo issue such as Closes #123 in the PR description, and make sure that issue has ready-to-implement.

Powered by Oz

@cbeaulieu-gt
Copy link
Copy Markdown

@okwn I think you linked the wrong issue # for closing. The issue I reported doesn't have anything to do with spec compliance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

external-contributor Indicates that a PR has been opened by someone outside the Warp team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Entry::build_tree walks are not cancellable — closing the file tree view leaves CPU spike running until in-flight walks finish

2 participants