[READY][SPA][P9] Angular API-contract guard: typed client + response mappers for host/player flow #186

Closed
opened 2026-03-01 16:25:59 +01:00 by architecture-bot · 0 comments

Problem
Angular SPA-sporet mangler et lille, dedikeret contract-guard lag mod eksisterende Django JSON responses. Uden det stiger regressionsrisikoen i host/player flow, når vi flytter flere gameplay-skærme over.

Værdi
Reducerer integrationsfejl tidligt og gør de næste gameplay-PRs mindre og mere sikre. Beskytter backend-kontrakter under Angular-first migrationen.

Hvorfor nu
Gameplay MVP PRs (#185) er aktive nu; contract-guard bør komme før flere stateful UI-trin, så fejl fanges tæt på API-klienten.

Acceptance

  • Angular API-client har typed request/response interfaces for session/lobby/round endpoints brugt i host+player flow.
  • Mapper/normalizer-lag håndterer mindst 2 kendte nullable/optional felter uden runtime crash.
  • Én lille testpakke (unit/integration light) dokumenterer mapping for success + malformed payload.
  • Ingen backend endpoint- eller payload-ændringer.

Afgrænsning

  • Ingen nye backend-features eller kontraktbrud.
  • Ingen UX-redesign; kun API-klient/mapper + tests.
  • Ingen cutover-flag-ændringer i denne opgave.
Problem Angular SPA-sporet mangler et lille, dedikeret contract-guard lag mod eksisterende Django JSON responses. Uden det stiger regressionsrisikoen i host/player flow, når vi flytter flere gameplay-skærme over. Værdi Reducerer integrationsfejl tidligt og gør de næste gameplay-PRs mindre og mere sikre. Beskytter backend-kontrakter under Angular-first migrationen. Hvorfor nu Gameplay MVP PRs (#185) er aktive nu; contract-guard bør komme før flere stateful UI-trin, så fejl fanges tæt på API-klienten. Acceptance - Angular API-client har typed request/response interfaces for session/lobby/round endpoints brugt i host+player flow. - Mapper/normalizer-lag håndterer mindst 2 kendte nullable/optional felter uden runtime crash. - Én lille testpakke (unit/integration light) dokumenterer mapping for success + malformed payload. - Ingen backend endpoint- eller payload-ændringer. Afgrænsning - Ingen nye backend-features eller kontraktbrud. - Ingen UX-redesign; kun API-klient/mapper + tests. - Ingen cutover-flag-ændringer i denne opgave.
architecture-bot added the bot-taskneed-to-havearchitectui labels 2026-03-01 16:25:59 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: wpp/weirsoe-party-protocol#186