acceptance: PR hardens backend locale negotiation from Accept-Language and preserves deterministic en fallback for unsupported locales, matching issue #275 intent.
contract: API error payloads now consistently return {error_code, error, locale} across the affected lobby endpoints while keeping error_code stable even if a catalog key is missing.
coverage: shared i18n manifest/catalog were expanded in lockstep and focused Django tests passed locally in an isolated worktree for SHA db7be0dfc6 (manage.py test on I18nResolver/LieSubmission/GuessSubmission/ScoreCalculation/RevealRoundFlow test classes; 37 tests, OK).
No blocker findings.
APPROVED
- acceptance: PR hardens backend locale negotiation from Accept-Language and preserves deterministic en fallback for unsupported locales, matching issue #275 intent.
- contract: API error payloads now consistently return {error_code, error, locale} across the affected lobby endpoints while keeping error_code stable even if a catalog key is missing.
- coverage: shared i18n manifest/catalog were expanded in lockstep and focused Django tests passed locally in an isolated worktree for SHA db7be0dfc66bf102a8bbd8f4ca4ddccc4680e9e4 (`manage.py test` on I18nResolver/LieSubmission/GuessSubmission/ScoreCalculation/RevealRoundFlow test classes; 37 tests, OK).
No blocker findings.
Ser merge-klar ud. Fejl-svar returnerer nu stabil error_code + locale, shared i18n-kataloget dækker de nye backend-koder, og de nye tests låser både dansk Accept-Language og deterministisk en-fallback.
Ser merge-klar ud. Fejl-svar returnerer nu stabil error_code + locale, shared i18n-kataloget dækker de nye backend-koder, og de nye tests låser både dansk Accept-Language og deterministisk en-fallback.
blocker: merge conflict against current main in lobby/views.py. Gitea reports mergeable=false and a local test-merge as INTEGRATOR conflicts in that file. Please rebase or merge main into feat/issue-275-django-i18n-hardening, resolve the conflict in lobby/views.py, and push a new head SHA; then CI/review can be re-evaluated.
blocker: merge conflict against current main in lobby/views.py. Gitea reports mergeable=false and a local test-merge as INTEGRATOR conflicts in that file. Please rebase or merge main into feat/issue-275-django-i18n-hardening, resolve the conflict in lobby/views.py, and push a new head SHA; then CI/review can be re-evaluated.
Blocker: PR'en er ikke merge-klar i Gitea lige nu (mergeable=false på head db7be0dfc6). Rebasér/løs konflikter mod main og få den tilbage til merge-ready, så kan den godkendes igen.
Blocker: PR'en er ikke merge-klar i Gitea lige nu (mergeable=false på head db7be0dfc6). Rebasér/løs konflikter mod main og få den tilbage til merge-ready, så kan den godkendes igen.
Løst på ny head 8ff552aeae9a610363b79c365a908a7e42f1cf1f.
Ændret:
merged current main ind i feat/issue-275-django-i18n-hardening
løst den konkrete merge-konflikt i lobby/views.py ved at bevare både PR'ens i18n-hardening og main's realtime-imports
Adresserede review-fund:
integrator-bot blocker om mergeable=false / konflikt i lobby/views.py
reviewer-bot REQUEST_CHANGES, som pegede på samme merge-ready blocker for head db7be0d
Verifikation:
.venv/bin/python manage.py test lobby.tests.I18nResolverTests lobby.tests.LieSubmissionTests lobby.tests.GuessSubmissionTests lobby.tests.ScoreCalculationTests lobby.tests.RevealRoundFlowTests --verbosity 2
37 tests, OK
PR er nu mergeable=true; CI er genkørt/pending på den nye head.
Løst på ny head `8ff552aeae9a610363b79c365a908a7e42f1cf1f`.
Ændret:
- merged current `main` ind i `feat/issue-275-django-i18n-hardening`
- løst den konkrete merge-konflikt i `lobby/views.py` ved at bevare både PR'ens i18n-hardening og main's realtime-imports
Adresserede review-fund:
- `integrator-bot` blocker om `mergeable=false` / konflikt i `lobby/views.py`
- `reviewer-bot` REQUEST_CHANGES, som pegede på samme merge-ready blocker for head `db7be0d`
Verifikation:
- `.venv/bin/python manage.py test lobby.tests.I18nResolverTests lobby.tests.LieSubmissionTests lobby.tests.GuessSubmissionTests lobby.tests.ScoreCalculationTests lobby.tests.RevealRoundFlowTests --verbosity 2`
- 37 tests, OK
PR er nu `mergeable=true`; CI er genkørt/pending på den nye head.
Jeg har pushet en minimal CI-fix på PR-head 864984273af5cbcce0ba21714756809e47dab4db.
Rettet:
fjernet ubrugt import i lobby/views.py, som fik ruff check lobby til at fejle på head efter merge-konflikten var løst
Lokale checks kørt:
ruff check lobby
DB_ENGINE=django.db.backends.sqlite3 python manage.py test lobby -v 1 (76 tests, OK)
Acceptance ift. #275 er uændret: locale-negotiation/fallback-kontrakten og de tilhørende lobby-tests passer stadig.
Jeg har pushet en minimal CI-fix på PR-head `864984273af5cbcce0ba21714756809e47dab4db`.
Rettet:
- fjernet ubrugt import i `lobby/views.py`, som fik `ruff check lobby` til at fejle på head efter merge-konflikten var løst
Lokale checks kørt:
- `ruff check lobby`
- `DB_ENGINE=django.db.backends.sqlite3 python manage.py test lobby -v 1` (76 tests, OK)
Acceptance ift. #275 er uændret: locale-negotiation/fallback-kontrakten og de tilhørende lobby-tests passer stadig.
God på current head 864984273a: merge-conflict/findings fra db7be0dfc6 er løst, backend bruger nu stabile error_code-værdier med locale-resolved messages/fallback, og fokuserede Django-tests for i18n + lobby-fejlflow passerede lokalt (37 tests).
God på current head 864984273af5cbcce0ba21714756809e47dab4db: merge-conflict/findings fra db7be0dfc66b er løst, backend bruger nu stabile error_code-værdier med locale-resolved messages/fallback, og fokuserede Django-tests for i18n + lobby-fejlflow passerede lokalt (37 tests).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Testing
Closes #275
APPROVED
db7be0dfc6(manage.py teston I18nResolver/LieSubmission/GuessSubmission/ScoreCalculation/RevealRoundFlow test classes; 37 tests, OK).No blocker findings.
Ser merge-klar ud. Fejl-svar returnerer nu stabil error_code + locale, shared i18n-kataloget dækker de nye backend-koder, og de nye tests låser både dansk Accept-Language og deterministisk en-fallback.
blocker: merge conflict against current main in lobby/views.py. Gitea reports mergeable=false and a local test-merge as INTEGRATOR conflicts in that file. Please rebase or merge main into feat/issue-275-django-i18n-hardening, resolve the conflict in lobby/views.py, and push a new head SHA; then CI/review can be re-evaluated.
Blocker: PR'en er ikke merge-klar i Gitea lige nu (mergeable=false på head
db7be0dfc6). Rebasér/løs konflikter mod main og få den tilbage til merge-ready, så kan den godkendes igen.Løst på ny head
8ff552aeae9a610363b79c365a908a7e42f1cf1f.Ændret:
mainind ifeat/issue-275-django-i18n-hardeninglobby/views.pyved at bevare både PR'ens i18n-hardening og main's realtime-importsAdresserede review-fund:
integrator-botblocker ommergeable=false/ konflikt ilobby/views.pyreviewer-botREQUEST_CHANGES, som pegede på samme merge-ready blocker for headdb7be0dVerifikation:
.venv/bin/python manage.py test lobby.tests.I18nResolverTests lobby.tests.LieSubmissionTests lobby.tests.GuessSubmissionTests lobby.tests.ScoreCalculationTests lobby.tests.RevealRoundFlowTests --verbosity 2PR er nu
mergeable=true; CI er genkørt/pending på den nye head.Jeg har pushet en minimal CI-fix på PR-head
864984273af5cbcce0ba21714756809e47dab4db.Rettet:
lobby/views.py, som fikruff check lobbytil at fejle på head efter merge-konflikten var løstLokale checks kørt:
ruff check lobbyDB_ENGINE=django.db.backends.sqlite3 python manage.py test lobby -v 1(76 tests, OK)Acceptance ift. #275 er uændret: locale-negotiation/fallback-kontrakten og de tilhørende lobby-tests passer stadig.
God på current head
864984273a: merge-conflict/findings fradb7be0dfc6er løst, backend bruger nu stabile error_code-værdier med locale-resolved messages/fallback, og fokuserede Django-tests for i18n + lobby-fejlflow passerede lokalt (37 tests).