e05557814297bac5a89b6cf40fdfd26b562e279a
portal-bff/tsconfig.app.json declares a TypeScript project reference to libs/shared/auth, so when webpack runs tsc against that tsconfig it validates that the referenced project's declarations exist at the location libs/shared/auth/tsconfig.lib.json declares as outDir (dist/out-tsc/libs/shared/auth). But nx's @nx/js:tsc executor was emitting them to dist/libs/shared/auth (the project.json outputPath), so tsc fails with TS6305 "Output file ... has not been built". The mismatch was harmless locally because a manual `tsc --build` during development populated both directories. Fresh CI runners only run nx's executor, so only one directory was populated. Aligning outputPath to dist/out-tsc/libs/shared/auth makes both agree. shared-auth is the first lib in the workspace that's consumed by portal-bff in a way that triggers tsc project-reference validation; the SPA-targeted libs (shared-util, shared-tokens) ride the same mismatch but don't hit it because the Angular build pipeline doesn't validate project references the same way.
Documentation index
This is the entry point to all project documentation. It is maintained automatically: any addition, rename, or removal of a .md file under docs/ must be reflected here in the same change.
Conventions
- Documentation is written in English.
- One topic per file. Group related files into a folder when there are three or more.
- Cross-reference with relative links so they keep working in GitHub, IDEs, and exported sites.
- For architectural decisions, do not add them here — they belong in decisions/ as MADR 4.0.0 ADRs.
Sections
Daily development
- development.md — repo layout, prerequisites, initial setup, daily commands, observability dev-loop (Jaeger UI, log ↔ trace correlation), dependency updates (Renovate), conventional commit cycle. Day-to-day reference for working on the project.
Architecture
- architecture.md — cross-cutting Mermaid diagrams: C4 system context, C4 containers, Nx module boundaries, CI/CD pipeline. Single-decision diagrams (auth sequence, ERD, etc.) live inline in their ADR.
Onboarding & environment
Setup guides for new contributors:
- setup/01-wsl-terminal-setup.md — modern WSL terminal (Zsh + Powerlevel10k + CLI tools)
- setup/02-dev-web-stack.md — Node via nvm, pnpm via corepack, Docker
- setup/03-angular-nx-monorepo.md — Angular + Nx monorepo bootstrap
Operations & runbooks
Empty — to be populated when we deploy.
Security, performance, accessibility
Empty — placeholders to be filled with rationale docs alongside their corresponding ADRs.
Description
Languages
TypeScript
85.3%
JavaScript
5.4%
SCSS
4.3%
HTML
3.9%
Shell
0.8%
Other
0.3%