This repository enforces package import boundaries with:
bun run imports:verifyscripts/verify-package-import-boundaries.tsThe goal is to keep package type-check scope predictable and avoid accidental coupling to unrelated modules.
Not the same as the wire/type boundary. For parse-once / unknown / decodeUnknown* rules, see WIRE_BOUNDARY.md.
Rules are currently enforced for package src/ imports:
packages/business/src/**
packages/business/src/**lib/docs/**packages/docs-tools/src/**
packages/docs-tools/src/**lib/docs/**packages/package/src/**
packages/package/src/**lib/docs/**Only relative imports are validated by the guard script.
imports:verify runs in .github/workflows/typescript-checks.yml before type-check jobs.
Run manually:
bun run imports:verify
When a package needs a new dependency root:
RULES in scripts/verify-package-import-boundaries.ts.bun run imports:verify and bun run type-check:full.An optional hook is provided at .githooks/pre-commit.
To enable local hooks:
git config core.hooksPath .githooks