cards/apps/api
Till JS 506aec3357
Some checks are pending
CI / validate (push) Waiting to run
Phase 2a: Cards-API JWT-Verify (additiv zum Dev-Stub)
cards-api akzeptiert jetzt zwei Auth-Quellen:
  1. Authorization: Bearer <jwt>  — JWT aus mana-auth, gegen
     /api/auth/jwks gecached, sub→userId
  2. X-User-Id: <uuid>            — Dev-Stub, bleibt aktiv

Schalter: CARDS_AUTH_DEV_STUB=false deaktiviert den Dev-Stub
hart (für die spätere Phase-10b-Cutover-Stufe). Default behält
beide Pfade — Tests + Anki-Importer + Sprint-9-User-Smokes
laufen unverändert weiter.

Cards-App ist heute in mana-auth (auth.mana.how) registriert
(app_id='cards', ownership_kind='verein', status='active'),
Service-Key generiert + per direktem DB-Insert in
auth.app_service_keys gelegt (Migrations-Tabellen waren in
prod-DB noch nicht angewendet, jetzt nachgezogen).

56 API-Tests grün, jose als neue Dependency.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 20:41:09 +02:00
..
src Phase 2a: Cards-API JWT-Verify (additiv zum Dev-Stub) 2026-05-08 20:41:09 +02:00
tests Phase 9l: Image-Occlusion als 4. MVP-CardType 2026-05-08 18:50:45 +02:00
Dockerfile fix(api Dockerfile): COPY app-manifest.json (runtime-import) 2026-05-08 20:14:20 +02:00
drizzle.config.ts Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
package.json Phase 2a: Cards-API JWT-Verify (additiv zum Dev-Stub) 2026-05-08 20:41:09 +02:00
tsconfig.json Phase 3 follow-up: type-check + tests grün, ts-fsrs v5 API 2026-05-08 14:41:04 +02:00