Files
HealthLog/.github/workflows/knip.yml
T
Marc-André Bombeck b18775f36c ci(knip): flip exports + types tiers to enforcing
Drop the `--include files,dependencies,binaries,unlisted` scope on the
Knip workflow. The tree is now at zero unused exports + zero unused
types, so the gate enforces every issue type knip reports by default.
The `knip.json` ignore-block documents the two muted surfaces
(`src/components/ui/**` for shadcn parity, `src/lib/validations/**`
for the contract-type API surface) so any new addition that breaks
either invariant trips CI immediately.
2026-05-21 19:06:22 +02:00

37 lines
755 B
YAML

name: Knip
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
jobs:
knip:
name: Dead-code gate
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v6
with:
node-version: 22
cache: pnpm
- run: pnpm install --frozen-lockfile
- run: pnpm db:generate
# v1.4.42 — exports + types tiers promoted to enforcing. The
# `knip.json` ignore-block carries the shadcn UI surface and the
# `src/lib/validations/**` contract types; everything else has
# to clear or get justified there.
- run: pnpm knip --reporter compact