Ci/biome format check#1601
Conversation
Adds @biomejs/biome (pinned) with a formatter-only configuration tuned to the codebase's dominant style (single quotes, semicolons as-needed, 2-space indent, 80 cols, arrow parens as-needed). Linter rules and assist/import-sorting stay disabled — this enforces formatting only; enabling lint rules later needs no CI or script changes. Generated artifacts (integrations, sdk *.generated.ts) and json/md are excluded so generator byte-stability checks are unaffected. New scripts: lint (biome check .), lint:fix (biome check --write .). New parallel lint job in pr-checks mirrors the typecheck job split. Co-Authored-By: OpenClaude <openclaude@gitlawb.com>
bun run lint:fix over src/, scripts/, tests/, web/src — 1147 files. One @ts-expect-error in AppState.types.test.tsx needed a biome-ignore format pin to stay adjacent to its erroring line; no other manual edits. Validation: biome check clean; tsc exit 0; integrations artifacts byte-stable; type-tests green; full suite 3698 green; smoke + bundle guard green. Co-Authored-By: OpenClaude <openclaude@gitlawb.com>
Co-Authored-By: OpenClaude <openclaude@gitlawb.com>
|
Important Review skippedToo many files! This PR contains 299 files, which is 149 over the limit of 150. To get a review, narrow the scope: ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (299)
You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
jatmn
left a comment
There was a problem hiding this comment.
please rebase, the entire code base was submitted as changed.
Summary
reviewable commits:
ci:— @biomejs/biome (pinned) +biome.jsontuned to the codebase's dominantexisting style (single quotes, semicolons as-needed, 2-space indent, 80 cols,
arrow parens as-needed). Formatter only: lint rules and assist/import-sorting are
explicitly disabled. Generated artifacts (
src/integrations/generated/,sdk/*.generated.ts) and json/md are excluded so generator byte-stability checksare unaffected. New scripts
lint/lint:fix; new parallellintjob inpr-checks (same shape as the typecheck job).
style:— the one-time mechanical reformat:bun run lint:fixover src/, scripts/,tests/, web/src — 1,147 of 2,687 files, zero behavior change. One
@ts-expect-errorneeded a
biome-ignore formatpin to stay adjacent to its erroring line; no othermanual edits.
chore:—.git-blame-ignore-revslisting the reformat commit (GitHub honors itautomatically; locally:
git config blame.ignoreRevsFile .git-blame-ignore-revs).single-quote/no-semi style), and with no formatter there's no defense against drift —
format churn pollutes review diffs. Biome runs the whole repo in ~300ms, fits the
bun-first toolchain, and leaves a zero-config path to lint rules later.
Impact
lintstatus check;bun run lint:fixbeforecommitting (or editor Biome integration) keeps it green. Reviewing commit 2 is best
done per-commit, not as one diff. In-flight branches will need a rebase +
bun run lint:fixpass. Lint rules remain off — enabling a conservative rulesetlater requires only a biome.json change.
Testing
bun run buildbun run smoke(incl. bundle guard, after the full reformat)bun run check(3,698 tests, 0 fail, on the reformatted tree)bun run lintclean (2,687 files);bun run typecheckexit 0;bun run integrations:checkbyte-stable;bun run typecheck:type-testsgreen —all run after the reformat commit.
Notes
within
bun run check.invasive-by-design one-time diff; merging promptly minimizes rebase pain for open
PRs. (2) The sibling PR adding the separate
typecheckjob touches the sameworkflow file; whichever merges second has a trivial conflict (both add a job).
(3) Enabling Biome lint rules (recommended set + burn-down) is a natural follow-up.
(4) Required-checks settings may need the new
lintcheck added by a maintainer.