THE entry point for reviewing a diff or PR in safe-client-gateway, and for verifying your own completed work before committing or opening a PR - load this one first and let it pull in cgw-remarks as its catalog. Covers the repo's two-part review standard -…
Use when writing a commit message, a PR title, or a PR body in safe-client-gateway, or when deciding whether a change is too large for one PR. Covers the Conventional Commits shape this repo uses, the nine allowed types and when each applies, module-name…
Use when adding or changing an endpoint, a controller handler, a request or response DTO, a Zod schema, Swagger/OpenAPI annotations, or pagination in safe-client-gateway. Covers the ValidationPipe(ZodSchema)-on-every-input rule, the DTO pairing (Zod schema…
The system map for safe-client-gateway - load it whenever a change spans more than one layer, or when you need to know what happens between the request arriving and the upstream call. Covers the request lifecycle (Fastify to guards to ValidationPipe to…
Use before writing or changing TypeScript in safe-client-gateway PRODUCTION code (src/, excluding spec files) - the cross-cutting dos and don'ts that no domain guide owns and biome does not fully catch. Covers parse-don't-assert (no `as X` or `as unknown as…
Use when adding or changing an environment variable, a feature flag, or any configuration read in safe-client-gateway. Covers the rule that every env var is declared in configuration.ts AND validated in RootConfigurationSchema with no fallback default for a…
Use when writing a migration, adding or changing a TypeORM entity (*.entity.db.ts), or writing a database query in safe-client-gateway. Covers the raw-SQL migration convention, the rule that every foreign-key and WHERE-target column gets a CREATE INDEX in the…
Use when creating a new module in safe-client-gateway, moving or renaming files, naming a file or a class, versioning a controller, or wiring Symbol-based DI. Covers the canonical module skeleton (module file plus domain/ mandatory, routes/ only with…