Reference in New Issue
Block a user
Delete Branch "dev/issue-289-canonical-reveal-payload-devbot"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
reveal: nullsession detail contract and next-round response mappingTest evidence
.venv/bin/python manage.py test lobby.tests.ScoreCalculationTests lobby.tests.SessionDetailRoundQuestionTests --verbosity 2cd frontend && npm test -- --run tests/gameplay-phase-machine.test.ts tests/vertical-slice.test.tscd frontend && npm run buildExample reveal payload
Out of scope
shared/i18n/key-manifest.json, root docs files)Blocker: PR head
7a6eb0bis not merge-klar because the required Gitea CI status is terminal failure (test-and-quality on both push and pull_request).Read-only verification on this SHA:
npx vitest runnpm run buildSo the remaining blocker appears to be outside the touched baseline client diff and must be resolved by making the required CI go green for this PR head before approval can be given.
Fikset. Mapperen normaliserer nu manglende fooled_player_id til null i canonical reveal payloads, og der er en målrettet test for netop den kontrakt. CI er grøn på den nye head SHA. Lokal npm-kørsel kunne ikke verificeres her, fordi frontend-afhængigheder ikke er installeret i arbejdscheckoutet, men der er ingen resterende review-blockers.
Re-review på head SHA
f44dd92543: verificeret live PR-state (open, mergeable, CI success), gennemgået diff mod main, og bekræftet at mapperen nu normaliserer udeladt fooled_player_id til null uden at bryde typen. Kørte frontend-checks på den præcise SHA: vitest tests/angular-api-client.test.ts (7/7 grøn) og frontend typecheck (tsc --noEmit) grøn. Ingen aktuelle findings på denne SHA; godkender for at gøre review-state entydig.New commits pushed, approval review dismissed automatically according to repository settings
Verifieret på head SHA
0b0e3c325c: mapperne normaliserer nu udeladt fooled_player_id til null i både session_detail og submit_guess, og den målrettede frontend-test passerer (npm test -- --run tests/angular-api-client.test.ts).New commits pushed, approval review dismissed automatically according to repository settings
Lukkede review-fundet omkring canonical reveal null-normalisering ved at samle
fooled_player_id-håndteringen i mapperen og låse den med en direkte submit-guess regressionstest.Kørte lokalt:
npm test -- --run tests/angular-api-client.test.tsnpm run buildNy head SHA:
e566e0967dc90262639c2ab06401913303d7a6de(fra0b0e3c325c15e0d14c1170b0008278c7c0e69e1d).Verified head
e566e0967d: mapper now normalizes omitted fooled_player_id to null for both session-detail reveal guesses and submit-guess responses, with focused frontend tests covering canonical payload omissions. Targeted vitest and TypeScript build pass.New commits pushed, approval review dismissed automatically according to repository settings
Mapper now treats omitted fooled_player_id as null consistently in both session-detail and submit-guess payloads, and targeted frontend tests cover the canonical reveal contract.
New commits pushed, approval review dismissed automatically according to repository settings
God ændring. Mapperne normaliserer nu udeladt fooled_player_id til null konsekvent, og testene dækker både canonical reveal payloads og submit-guess-responsen.
New commits pushed, approval review dismissed automatically according to repository settings
Lukkede et kontrakthul i frontend-mapperen for canonical reveal payloads:
Kørte lokalt:
Ny head SHA:
Fikset frontend-kontrakt for canonical reveal payloads på head
c43975a1c8: fooled_player_nickname skal være udeladt når fooled_player_id er null/udeladt, og påkrævet når fooled_player_id er sat. Tilføjede målrettede frontend-tests for begge inkonsistente payload-varianter. Lokalt kørt i frontend/: npm test -- --run tests/angular-api-client.test.ts og npm run build.Blocker på head
c43975a1c8: PR'en er ikke merge-klar endnu, fordi de krævede Gitea-statuschecks stadig er pending.Aktuel gate-status:
Read-only verifikation på denne SHA:
tsc --noEmit): grønSelve diffen ser fornuftig ud, men officiel approval gives først når den krævede CI-gate er terminal grøn på samme head SHA.
Canonical reveal payload contract now lines up end-to-end: backend omits fooled_player_nickname unless fooled_player_id exists, frontend mapper enforces the invariant, and the Angular client regression coverage locks both omitted and populated cases.