441b9297cee031407cb002b557f61952dd780b8f
The perf job ran on the Playwright image, which bundles Chromium at a non-standard path that Lighthouse's chrome-launcher cannot find — the job failed at the healthcheck with 'Chrome installation not found'. Switch perf to node:24-bookworm and apt-install Debian's chromium (/usr/bin/chromium), pointing CHROME_PATH at it. Preferred over wiring CHROME_PATH to Playwright's bundled Chromium because the latter couples the job to an exact @playwright/test-version vs image-tag match that a Renovate bump would silently break. The future ADR-0016 axe-core e2e job will use the Playwright image; Lighthouse and Playwright want different things, so they get different images rather than one that serves both poorly.
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%