feat(portal-bff): @RequireMfa decorator + freshness guard (ADR-0011)
CI / scan (pull_request) Successful in 2m27s
CI / commits (pull_request) Successful in 2m44s
CI / check (pull_request) Successful in 2m54s
CI / a11y (pull_request) Successful in 2m15s
CI / perf (pull_request) Successful in 5m45s
#128 by julien was merged 2026-05-14 01:34:47 +02:00 4 / 5
feat(portal-bff): admin module + role guard + /api/admin/me self-test
CI / commits (pull_request) Successful in 2m35s
CI / scan (pull_request) Successful in 2m46s
CI / check (pull_request) Successful in 3m10s
CI / a11y (pull_request) Successful in 1m29s
CI / perf (pull_request) Successful in 6m17s
#127 by julien was merged 2026-05-14 01:17:31 +02:00 3 / 4
feat(portal-bff): extract Entra roles claim onto AuthenticatedUser
CI / commits (pull_request) Successful in 2m13s
CI / scan (pull_request) Successful in 2m13s
CI / check (pull_request) Successful in 2m22s
CI / a11y (pull_request) Successful in 2m18s
CI / perf (pull_request) Successful in 5m32s
#126 by julien was merged 2026-05-14 00:30:39 +02:00 3 / 4
docs: refresh CLAUDE.md "Repository status" section
CI / scan (pull_request) Successful in 2m4s
CI / commits (pull_request) Successful in 2m3s
CI / check (pull_request) Successful in 2m10s
CI / a11y (pull_request) Successful in 2m15s
CI / perf (pull_request) Successful in 5m1s
#125 by julien was merged 2026-05-14 00:12:46 +02:00 4 / 4
docs(adr-0021): phase-2 security baseline (helmet, CORS, CSRF, rate-limit, error envelope)
CI / scan (pull_request) Successful in 2m11s
CI / commits (pull_request) Successful in 2m11s
CI / check (pull_request) Successful in 2m20s
CI / a11y (pull_request) Successful in 1m5s
CI / perf (pull_request) Successful in 2m32s
#124 by julien was merged 2026-05-13 23:54:45 +02:00 6 / 6
feat(portal-bff): rate limiting + structured error filter
CI / scan (pull_request) Successful in 2m8s
CI / commits (pull_request) Successful in 2m9s
CI / check (pull_request) Successful in 3m31s
CI / a11y (pull_request) Successful in 1m25s
CI / perf (pull_request) Successful in 4m34s
#123 by julien was merged 2026-05-13 21:34:33 +02:00 7 / 11
feat(portal-bff): helmet + env-driven CORS allowlist + double-submit CSRF
CI / commits (pull_request) Successful in 2m0s
CI / scan (pull_request) Successful in 2m12s
CI / check (pull_request) Successful in 3m40s
CI / a11y (pull_request) Successful in 1m22s
CI / perf (pull_request) Successful in 2m50s
#122 by julien was merged 2026-05-13 20:50:45 +02:00 7 / 9
fix(portal-bff): audit writes use raw INSERT (audit_writer has no SELECT for RETURNING)
CI / scan (pull_request) Successful in 2m12s
CI / commits (pull_request) Successful in 2m22s
CI / check (pull_request) Successful in 2m28s
CI / a11y (pull_request) Successful in 1m49s
CI / perf (pull_request) Successful in 4m49s
#121 by julien was merged 2026-05-13 19:48:34 +02:00 8 / 8
feat(portal-bff): wire ADR-0013 audit pipeline to the auth lifecycle
CI / commits (pull_request) Successful in 2m7s
CI / scan (pull_request) Successful in 2m20s
CI / check (pull_request) Successful in 2m28s
CI / a11y (pull_request) Successful in 1m31s
CI / perf (pull_request) Successful in 4m52s
#120 by julien was merged 2026-05-13 14:21:43 +02:00 4 / 9
docs(architecture): refresh containers + nx boundaries diagrams, add local-infra diagram
CI / commits (pull_request) Successful in 2m2s
CI / scan (pull_request) Successful in 2m14s
CI / check (pull_request) Successful in 2m15s
CI / a11y (pull_request) Successful in 1m57s
CI / perf (pull_request) Successful in 4m54s
#119 by julien was merged 2026-05-13 11:15:04 +02:00 2 / 4
chore(deps): update dependency vite to v8.0.12
CI / commits (pull_request) Has been skipped
CI / perf (pull_request) Has been skipped
CI / scan (pull_request) Successful in 1m12s
CI / a11y (pull_request) Successful in 1m25s
CI / check (pull_request) Successful in 1m58s
#118 by adastra-bot was merged 2026-05-13 13:07:56 +02:00 0 / 1
feat(portal-shell): authGuard + BFF http interceptors + /profile demo route
CI / commits (pull_request) Successful in 1m29s
CI / scan (pull_request) Successful in 1m39s
CI / check (pull_request) Successful in 1m50s
CI / a11y (pull_request) Successful in 55s
CI / perf (pull_request) Successful in 2m22s
#117 by julien was merged 2026-05-13 00:43:57 +02:00 5 / 8
fix(portal-bff): set REDIS_URL + SESSION_* in auth.module.spec so ci:check passes on a clean runner
CI / commits (pull_request) Successful in 1m21s
CI / scan (pull_request) Successful in 1m29s
CI / check (pull_request) Successful in 1m35s
CI / a11y (pull_request) Successful in 50s
CI / perf (pull_request) Successful in 2m18s
#116 by julien was merged 2026-05-12 23:58:56 +02:00 4 / 5
feat(portal-bff): absolute-timeout middleware + user_sessions index per ADR-0010
CI / commits (pull_request) Successful in 1m25s
CI / scan (pull_request) Successful in 1m30s
CI / check (pull_request) Failing after 1m34s
CI / a11y (pull_request) Successful in 1m6s
CI / perf (pull_request) Successful in 3m30s
fix(portal-shell): send withCredentials on /me so the session cookie crosses SPA→BFF in dev
CI / commits (pull_request) Successful in 1m28s
CI / scan (pull_request) Successful in 1m40s
CI / check (pull_request) Successful in 1m56s
CI / a11y (pull_request) Successful in 1m40s
CI / perf (pull_request) Successful in 4m36s
#114 by julien was merged 2026-05-12 22:35:12 +02:00 4 / 5
feat(portal-shell): wire SPA auth state to BFF /me + header login/logout widget
CI / scan (pull_request) Successful in 3m18s
CI / commits (pull_request) Successful in 3m19s
CI / check (pull_request) Successful in 3m31s
CI / a11y (pull_request) Successful in 2m28s
CI / perf (pull_request) Successful in 6m24s
#113 by julien was merged 2026-05-12 20:11:35 +02:00 6 / 8
feat(portal-bff): close the auth loop — callback persists session, /me, RP-initiated /logout
CI / commits (pull_request) Successful in 2m39s
CI / scan (pull_request) Successful in 2m48s
CI / check (pull_request) Successful in 2m57s
CI / a11y (pull_request) Successful in 2m14s
CI / perf (pull_request) Successful in 5m48s
#112 by julien was merged 2026-05-12 19:46:39 +02:00 8 / 8
chore(deps): pin protobufjs to >=8.0.2 to clear 7 transitive advisories
CI / scan (pull_request) Successful in 2m37s
CI / commits (pull_request) Successful in 2m36s
CI / a11y (pull_request) Successful in 1m36s
CI / check (pull_request) Successful in 4m19s
CI / perf (pull_request) Successful in 4m51s
#111 by julien was merged 2026-05-12 19:16:19 +02:00 4 / 4
feat(portal-bff): session middleware with AES-256-GCM at rest per ADR-0010
CI / commits (pull_request) Successful in 2m46s
CI / scan (pull_request) Failing after 2m47s
CI / check (pull_request) Successful in 4m24s
CI / a11y (pull_request) Successful in 1m51s
CI / perf (pull_request) Successful in 3m24s
#110 by julien was merged 2026-05-12 18:06:14 +02:00 4 / 5
feat(portal-bff): redis client foundation per ADR-0010
CI / commits (pull_request) Successful in 2m22s
CI / scan (pull_request) Successful in 2m33s
CI / check (pull_request) Successful in 4m3s
CI / a11y (pull_request) Successful in 1m50s
CI / perf (pull_request) Successful in 5m33s
#109 by julien was merged 2026-05-12 16:48:21 +02:00