quality-gates
Quality Gates & Audit Master Guide
Intent
Document the pre-merge checklist: what gates must pass, which audit artefacts to update, and which tests the repo expects, per .github/instructions/64-quality-testing-copilot-instructions.md.
Gates to Run
- Run
pnpm run architecture:gateafter any structural change (new dependencies, cross-layer imports, new modules); this enforces the dependency cruiser rules described in.github/instructions/61-architectural-governance-copilot-instructions.md. - Before PR, execute
pnpm run lint,pnpm run build -- --noEmit, and the relevant unit suites described in the capability instructions. - Ensure Husky/lint-staged hooks triggered by
git commitpass (eslintandtsc --noEmitperpackage.json).
Documentation & Audit Tracking
- Update
docs/AUDIT-<module>.mdwhenever you change a capability, event, or critical workflow; note invariants, boundaries, and audit findings as specified in.github/instructions/64-quality-testing-copilot-instructions.md. - Document requirements/status in
requirements.mdandtasks.md(status values: not-started, in-progress, completed, blocked) before completion. - Capture
architecture:gatefailures’ logs and include them in your notes so reviewers can see what changed since the last passing gate.
Testing Expectations
- Cover every critical path and domain invariant touched by your change with tests (Jasmine + Karma for unit stores/domains, Playwright for happy-path flows).
- Use Playwright with resilient selectors (
data-testid, roles) and emulator resets so tests are deterministic (.github/skills/e2e-playwrightalready describes these patterns). - When introducing async or signal transitions, do full Arrange-Act-Assert cycles and clean up subscriptions with
takeUntilDestroyed()orrxMethoddisposal.
More from 7spade/black-tortoise
material-design-3
Material Design 3 (Material You) design system knowledge for modern web and Angular applications. Use when implementing Material Design 3 theming, components, typography, color systems, dynamic color, accessibility patterns, or migrating from Material Design 2. Covers design tokens, theming APIs, and Material You principles.
68architecture-ddd
Domain-Driven Design patterns, layer boundaries (Presentation → Application → Domain ← Infrastructure), tactical patterns (entities, value objects, aggregates, repositories), and event-driven flow guidance. Use when designing new features, refactoring across layers, or enforcing DDD architectural boundaries.
13webapp-testing
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
12cohesion-coupling-review
Review a proposed change for high cohesion/low coupling; recommends the smallest boundary-safe refactor (ownership, minimal public surface, no reach-in imports). Use when reviewing code for coupling issues, cross-boundary imports, or excessive dependencies.
10angular-material-cdk-animations
Angular Material + CDK + @angular/animations usage patterns aligned with zoneless + signals-first UI and M3 tokens. Use when implementing Material Design 3 components, accessibility features, animations, overlays, drag-drop, virtual scrolling, or custom UI components using CDK utilities.
10angular-fire
Best practices and code patterns for @angular/fire version 20+, integrating Firestore and Auth with Signals and DDD architecture. Use when implementing Firebase integration, Firestore repositories, or AngularFire Auth in the infrastructure layer.
10