From b8e9a63441d243e503b82748e92b262c67a82ac4 Mon Sep 17 00:00:00 2001 From: Jared Lewis Date: Wed, 1 Jul 2026 23:13:47 +1000 Subject: [PATCH 1/2] fix(pre-commit): type-check with tsc -b so build errors are caught The root frontend/tsconfig.json is solution-style (files: [], only project references), so the pre-commit hook's plain tsc --noEmit resolved to it and type-checked zero files under src/. A build-breaking type error could pass the gate locally and in CI, only surfacing in the real build (tsc -b && vite build). Switch the hook to tsc -b --noEmit (project-reference build mode, no emit), matching what the build actually checks. --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 9d60c6b..d84cebd 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -87,7 +87,7 @@ repos: # Frontend: TypeScript typecheck - id: typescript-typecheck name: TypeScript typecheck - entry: bash -lc "cd frontend && npx --yes tsc --noEmit" + entry: bash -lc "cd frontend && npx --yes tsc -b --noEmit" language: system pass_filenames: false files: ^frontend/ From 47da13ff2dd5e631614a828f82011d9d5ebb3d07 Mon Sep 17 00:00:00 2001 From: Jared Lewis Date: Wed, 1 Jul 2026 23:14:50 +1000 Subject: [PATCH 2/2] docs(changelog): add fragment for pre-commit tsc -b fix --- changelog/33.trivial.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog/33.trivial.md diff --git a/changelog/33.trivial.md b/changelog/33.trivial.md new file mode 100644 index 0000000..68e0c3f --- /dev/null +++ b/changelog/33.trivial.md @@ -0,0 +1 @@ +Corrected the pre-commit TypeScript check to use project-reference build mode (`tsc -b`), so build-breaking type errors are caught before they reach CI.