fix(tradein/ui): чистить TanStack Query cache при смене identity (#2567) #2651

Merged
bot-backend merged 1 commit from fix/tradein-clear-query-cache-identity into main 2026-08-05 10:06:32 +00:00

1 commit

Author SHA1 Message Date
482b0be1fa fix(tradein/ui): чистить TanStack Query cache при смене identity (#2567)
All checks were successful
CI Trade-In / changes (pull_request) Successful in 7s
CI / changes (pull_request) Successful in 8s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Successful in 1m1s
Логин, логаут и 401-редирект инвалидировали только ME_QUERY_KEY — данные
предыдущего пользователя (team/employees, история оценок, квоты) оставались
в кэше и могли отрендериться следующему в той же SPA-сессии до рефетча.
queryClient.clear() во всех трёх точках смены identity.

clear() вместо точечного removeQueries: allowlist ключей пришлось бы
синхронизировать с каждым новым запросом приложения, один промах — снова
утечка. In-flight запросы безопасны: удалённый Query получает новый
инстанс при следующей подписке, поздний ответ старого пользователя пишет
в осиротевший объект. Легаси basic-auth logout (hard reload) не тронут —
там весь JS-heap и так уничтожается. Persist-слоя у QueryClient нет.

Refs #2567
2026-08-05 15:03:40 +05:00