Skip to content

Conversation

@Kirrrusha
Copy link
Collaborator

@Kirrrusha Kirrrusha commented Dec 18, 2025

Summary

  • Исправили рассинхронизацию UI (галочка/значение) и реально применённых request headers (DNR rules), которая проявлялась как периодические 404 и лечилась перезапуском браузера.
  • Сделали обновление правил более устойчивым к “бурстам” событий (переключение вкладок + быстрые изменения + Ctrl+R).
  • Добавили/усилили e2e, которые воспроизводят сценарий “много вкладок + меняю галочку + reload” и проверяют реальный dcs-documents-back на запросе.

What changed

  • src/shared/utils/setBrowserHeaders.ts
    • Обновление DNR правил сделано атомарным (remove+add одним вызовом).
    • Добавлен механизм сериализации/очереди, чтобы не было гонок при параллельных апдейтах.
    • Применяется актуальная конфигурация из storage; невалидные URL-фильтры не ломают обновление целиком (пропускаются).
  • src/entities/*/utils/save.ts
    • Убраны прямые вызовы updateOverrideHeaders — обновление теперь централизовано через обработчик storage.onChanged в background.
  • E2E
    • tests/e2e/dcs-documents-back-sync.spec.ts: проверяет, что при переключении вкладок/галочки и reload на активной вкладке на сервер реально уходит корректный dcs-documents-back.
    • tests/e2e/tab-switching-race-condition.spec.ts: стресс-сценарии на переключение вкладок/профилей.
  • Playwright
    • tests/e2e/fixtures.ts: уникальный userDataDir на запуск, чтобы проекты не конфликтовали при параллельном выполнении.

Test plan

  • pnpm test:e2e:ci tests/e2e/dcs-documents-back-sync.spec.ts
  • pnpm test:e2e:ci tests/e2e/tab-switching-race-condition.spec.ts
  • Ручная проверка: много вкладок → быстро переключать строки/галочки → Ctrl+R → убедиться, что dcs-documents-back в DevTools совпадает с выбранной строкой и 404 не появляется

Copilot AI review requested due to automatic review settings December 18, 2025 10:14

This comment was marked as duplicate.

github-actions bot added a commit that referenced this pull request Dec 18, 2025
github-actions bot added a commit that referenced this pull request Dec 18, 2025
github-actions bot added a commit that referenced this pull request Dec 18, 2025
@github-actions
Copy link

github-actions bot commented Dec 18, 2025

@Kirrrusha Kirrrusha force-pushed the fix/change-tab-and-request branch from bbb5296 to 4a991b0 Compare December 18, 2025 10:52
github-actions bot added a commit that referenced this pull request Dec 18, 2025
github-actions bot added a commit that referenced this pull request Dec 18, 2025
github-actions bot added a commit that referenced this pull request Dec 18, 2025
@Kirrrusha Kirrrusha force-pushed the fix/change-tab-and-request branch from 4a991b0 to b47f59f Compare December 18, 2025 11:09
github-actions bot added a commit that referenced this pull request Dec 18, 2025
github-actions bot added a commit that referenced this pull request Dec 18, 2025
github-actions bot added a commit that referenced this pull request Dec 18, 2025
github-actions bot added a commit that referenced this pull request Dec 24, 2025
github-actions bot added a commit that referenced this pull request Dec 24, 2025
github-actions bot added a commit that referenced this pull request Dec 24, 2025
…dd mutex mechanism to setBrowserHeaders to prevent concurrent execution Remove redundant updateOverrideHeaders calls since storageonChanged already handles updates Make DNR rule updates atomic in a single call Add e2e tests for tab switching race condition scenarios
@Kirrrusha Kirrrusha force-pushed the fix/change-tab-and-request branch from d10f5c2 to 91b4762 Compare January 21, 2026 14:38
github-actions bot added a commit that referenced this pull request Jan 21, 2026
github-actions bot added a commit that referenced this pull request Jan 21, 2026
github-actions bot added a commit that referenced this pull request Jan 21, 2026
@Kirrrusha Kirrrusha marked this pull request as draft January 23, 2026 12:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants