test: cover non-retry of INVALID_TBANK_TOKEN reads (WealthLedger/backend#59) #90

Merged
codex-bot merged 1 commits from test/59-invalid-token-read-not-retried into develop 2026-10-16 23:23:13 +03:00
Owner

Refs WealthLedger/backend#59

Что

Consumer proof для backend#59: protected GET с ответом 400 / INVALID_TBANK_TOKEN не ретраится (ровно один запрос). Новый тест в src/shared/api/client.test.ts (MSW, transport boundary); production-код не менялся.

Уже было покрыто: 503/TBANK_UNAVAILABLE ретраится (client.test.ts, "recovers a protected GET after transient server failures"); 401/403/404/409 не ретраятся. Кейса 400/INVALID_TBANK_TOKEN не было.

Проверка теста

Если убрать InvalidTbankToken из isPermanentCode, тест остаётся зелёным, потому что 400 не входит в transient-статусы. Он краснеет, когда одновременно убрать код из permanent и добавить 400 в transient: тест защищает от этой связки, но не от единичной правки.

Gates

npm run verify: exit 0 (67 test files passed, vite build, storybook build).

Merge не зависит от backend PR: тест описывает уже существующее поведение клиента.

Open question: подходящей frontend Issue нет, поэтому ссылка на WealthLedger/backend#59.

Refs WealthLedger/backend#59 ## Что Consumer proof для backend#59: protected GET с ответом `400 / INVALID_TBANK_TOKEN` не ретраится (ровно один запрос). Новый тест в `src/shared/api/client.test.ts` (MSW, transport boundary); production-код не менялся. Уже было покрыто: 503/`TBANK_UNAVAILABLE` ретраится (`client.test.ts`, "recovers a protected GET after transient server failures"); 401/403/404/409 не ретраятся. Кейса 400/`INVALID_TBANK_TOKEN` не было. ## Проверка теста Если убрать `InvalidTbankToken` из `isPermanentCode`, тест остаётся зелёным, потому что 400 не входит в transient-статусы. Он краснеет, когда одновременно убрать код из permanent и добавить 400 в transient: тест защищает от этой связки, но не от единичной правки. ## Gates `npm run verify`: exit 0 (67 test files passed, vite build, storybook build). Merge не зависит от backend PR: тест описывает уже существующее поведение клиента. Open question: подходящей frontend Issue нет, поэтому ссылка на `WealthLedger/backend#59`.
codex-bot added 1 commit 2026-10-16 22:54:12 +03:00
test: cover non-retry of INVALID_TBANK_TOKEN reads (WealthLedger/backend#59)
Frontend verify / commits (pull_request) Successful in 39s
Frontend verify / security (pull_request) Successful in 10s
Frontend verify / verify (pull_request) Successful in 7m2s
875858bbff
codex-bot merged commit 5134106696 into develop 2026-10-16 23:23:13 +03:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WealthLedger/frontend#90