Skip to content

Docs call npm run check "the CI gate" / "what CI runs", but the CI workflow never invokes it #103

Description

@Deepam02

Files:

  • .github/workflows/ci.yml:12-39 — what CI actually runs
  • README.md:91npm run check # lint + typecheck + test, what CI runs
  • CONTRIBUTING.md:30npm run check # everything CI runs
  • CHANGELOG.md:84 — "...npm run check (lint + typecheck + test) is the CI gate"

Problem (one line): Three docs tell contributors npm run check is "what CI runs"/"the CI gate", but ci.yml never invokes npm run check — it runs npm run lint (lint job) and npm run build + npm run test (test job) as separate steps, and runs no standalone npm run typecheck — so running npm run check locally does not reproduce CI step-for-step, and the docs misdescribe both.

Details

ci.yml runs, across two jobs:

# lint job
- run: npm run lint
# test job (matrix node 20/22/24)
- run: npm run build
- run: npm run test

There is no - run: npm run check and no standalone npm run typecheck step anywhere. Meanwhile npm run check (root package.json) is lint && typecheck && build && test. So the docs are inaccurate in two ways: (a) CI does not invoke npm run check at all, and (b) the "lint + typecheck + test" gloss omits the build step that check actually runs.

Note: this is distinct from the existing issue about the CLAUDE.md wording of npm run check omitting build — that one is about CLAUDE.md's description; this is about the CI-invocation claim in README/CONTRIBUTING/CHANGELOG vs the actual ci.yml.

What "done" looks like

Either:

  1. Make CI actually run the documented gate — replace the split lint/build/test steps with a single - run: npm run check (simplest way to make the docs true), or
  2. Reword the three docs to describe what CI really runs (lint job + build/test matrix), and drop/adjust the "what CI runs" / "the CI gate" phrasing.

Pick one; option 2 is doc-only and lowest-risk.

Scope

Doc edits (and optionally a small CI-yaml tweak). No code changes. Good for a first-time contributor; under an hour.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions