From 9ab229e3ebd717523cae9e4934b5022616922e6d Mon Sep 17 00:00:00 2001 From: distilly agent Date: Fri, 11 Sep 2026 13:15:42 +0800 Subject: [PATCH] ci: make the type check runnable on a fresh checkout and fix the pip cache path The TypeScript job has been red on this branch since before this work: the type-check step runs before any build, so every project reference fails with TS6305 on a fresh checkout, and the Ruff job failed inside setup-python because the pip cache asked for a requirements.txt the repository does not have. typecheck now builds the referenced projects first, which also makes the gate usable locally on a clean clone, and the Ruff job points its cache at requirements-dev.txt. Verified by moving every package's built output aside and running the gate: it passes from that state. --- .github/workflows/ci.yml | 3 +++ package.json | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f5cf489b..bb72b9d2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -124,6 +124,9 @@ jobs: with: python-version: "3.11" cache: pip + # The repository keeps its Python dependencies in requirements-dev.txt; without an + # explicit path the cache step fails on a repository with no requirements.txt. + cache-dependency-path: requirements-dev.txt - name: Install lint dependencies run: pip install -r requirements-dev.txt - name: Run Ruff diff --git a/package.json b/package.json index 015f45e9..a9c14875 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "format:check": "prettier --check .", "lint": "eslint .", "gates:fast": "pnpm run format:check && pnpm run lint", - "typecheck": "pnpm -r exec tsc --noEmit -p tsconfig.json && pnpm -r --if-present run typecheck && tsc --noEmit -p tsconfig.tools.json", + "typecheck": "tsc -b && pnpm -r exec tsc --noEmit -p tsconfig.json && pnpm -r --if-present run typecheck && tsc --noEmit -p tsconfig.tools.json", "test": "vitest run && pnpm run test:panel-browser && pnpm run test:boundaries && pnpm run test:build-artifacts && pnpm run test:plugins", "test:coverage": "vitest run --coverage", "test:panel-http": "vitest run packages/panel/src/server-http.test.ts packages/panel/src/web-client.test.ts packages/panel/src/server-launcher.test.ts packages/panel/src/web-boundaries.test.ts",