diff --git a/app/resources/js/router/index.ts b/app/resources/js/router/index.ts index 15a2404f..f0b813ff 100644 --- a/app/resources/js/router/index.ts +++ b/app/resources/js/router/index.ts @@ -1,6 +1,7 @@ import { createRouter, createWebHistory, type RouteRecordRaw } from 'vue-router'; import { useAuthStore } from '../stores/auth'; import { useSalesAuthStore } from '../stores/salesAuth'; +import { ensureLoaded, hit } from '../plugins/metrika'; /** * Vue Router (фаза 2). История — `createWebHistory` (HTML5 history API); @@ -513,3 +514,13 @@ router.beforeEach(async (to) => { return true; }); + +// Метрика/Вебвизор — только в кабинете клиента (layout==='app'). +// Загружаем лениво при первом входе, затем шлём hit на каждом переходе внутри кабинета. +// Вход (auth), публичные (public), админка (admin), портал продаж (salesAuth) — БЕЗ Метрики. +router.afterEach((to) => { + if (to.meta.layout === 'app') { + ensureLoaded(); + hit(to.fullPath); + } +}); diff --git a/app/tests/Frontend/metrika.spec.ts b/app/tests/Frontend/metrika.spec.ts index b1f47042..95c28c62 100644 --- a/app/tests/Frontend/metrika.spec.ts +++ b/app/tests/Frontend/metrika.spec.ts @@ -8,7 +8,6 @@ describe('metrika loader', () => { beforeEach(() => { document.head.innerHTML = ''; document.body.innerHTML = ''; - // @ts-expect-error чистим глобал между тестами delete window.ym; vi.resetModules(); }); @@ -39,7 +38,6 @@ describe('metrika loader', () => { document.head.appendChild(meta); const ym = vi.fn(); - // @ts-expect-error стаб глобала window.ym = ym; const { hit } = await import('../../resources/js/plugins/metrika'); diff --git a/docs/observer/STATUS.md b/docs/observer/STATUS.md index 6bca48a6..1b1bcfd2 100644 --- a/docs/observer/STATUS.md +++ b/docs/observer/STATUS.md @@ -1,6 +1,6 @@ # Brain Status (auto-generated) -Last updated: 2026-07-08T01:33:18.450Z +Last updated: 2026-07-08T01:35:59.804Z | Контролёр | Состояние | Детали | |---|---|---| @@ -112,9 +112,9 @@ Episodes since last run: 542 / threshold: 10 | PID | Имя | CPU-время | Возраст | |---|---|---|---| -| 2132 | Code | 9.47ч | NaNч | -| 3276 | MsMpEng | 9.15ч | NaNч | -| 4 | System | 3.77ч | NaNч | +| 2132 | Code | 9.48ч | 0.0ч | +| 3276 | MsMpEng | 9.16ч | 0.0ч | +| 4 | System | 3.78ч | 0.0ч | ⚠️ Проверь, не «осиротевшие» ли это процессы от завершённых Claude-сессий.