docs: add boundary violation fixture and document rule in COLLABORATING.md

Adds src/lib/tag/__fixtures__/cross-domain.fixture.ts — a permanent fixture
that demonstrates the boundaries rule firing on a tag → person import. The
fixture is excluded from npm run lint via --ignore-pattern; run
npm run lint:boundary-demo to see it produce an error (exit 1).

Documents the full allow-list, the escape hatches ($lib/shared/ move, explicit
rule entry, eslint-disable-next-line), and the verify command in COLLABORATING.md.

Refs #410
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Marcel
2026-05-05 17:39:13 +02:00
committed by marcel
parent 4966855c24
commit 9cb44fc70c
2 changed files with 44 additions and 0 deletions

View File

@@ -0,0 +1,7 @@
// Deliberate boundary violation: tag domain importing from person domain.
// This file exists to prove the boundaries/dependencies rule fires.
// It is excluded from `npm run lint` via --ignore-pattern and must NEVER be imported by production code.
// Run `npm run lint:boundary-demo` to see ESLint report the violation (exit 1).
// eslint-disable-next-line @typescript-eslint/no-unused-vars
import { getInitials } from '$lib/person/personFormat';