Skip to content

fix(harness): files-only ctx.glob and an incomplete-run summary - #484

Merged
Shironex merged 2 commits into
mainfrom
fix/lint-meta-reporting
Oct 1, 2026
Merged

Shironex merged 2 commits into
mainfrom
fix/lint-meta-reporting

Conversation

@Shironex

@Shironex Shironex commented Oct 1, 2026

Copy link
Copy Markdown
Collaborator

Summary

Two harness fixes, one commit each.

  • ctx.glob returns files only. Node's fs.globSync also returns matching directories, and vitest names its image snapshot directories <name>.test.tsx, so a rule that globbed then read threw EISDIR. The guarantee now lives in one portableFileGlob shared by the published ctx and the in-repo one, and is documented on IMetaCtx.glob.
  • A run where a rule threw no longer ends with "lint-meta: no violations". Both CLIs print lint-meta: INCOMPLETE, N of M rules threw and checked nothing, and the in-repo CLI now fails the build on any throwing rule, not only ciCritical ones (the published CLI already did).

Closes #476
Closes #478

Test plan

  • New regression tests for both (directory named like a file is dropped; a throwing rule reads as incomplete)
  • bun test packages/harness tools/lint-meta (207 pass), bun run test:node
  • bun run lint, bun run build
  • Manually registered a throwing rule: output ends with the INCOMPLETE line, exit 1

Replaces #482, which GitHub closed when its base branch was deleted on merging #481.

Node's fs.globSync also returns matching directories, and vitest names its
image snapshot directories <name>.test.tsx, so a rule that globbed then read
threw EISDIR. The files-only guarantee now lives in portableFileGlob, shared by
the published ctx and the in-repo one, and is stated on IMetaCtx.glob.

Closes #476
A rule that throws checked nothing, yet the summary still read
"lint-meta: no violations". Both CLIs now end such a run with an INCOMPLETE
line naming how many rules threw, and the in-repo CLI reds the build on any
throw, not only for ciCritical rules.

Closes #478
@Shironex Shironex added bug Something isn't working area: tooling lint-meta, eslint plugin, CI, dogfood scripts labels Oct 1, 2026
@Shironex
Shironex merged commit 14e6b40 into main Oct 1, 2026
14 checks passed
@Shironex
Shironex deleted the fix/lint-meta-reporting branch October 1, 2026 21:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: tooling lint-meta, eslint plugin, CI, dogfood scripts bug Something isn't working

Projects

None yet

1 participant