From daf67470579f5ecbf04710b0a6a6d0b173757164 Mon Sep 17 00:00:00 2001 From: Alexey Martemyanov Date: Mon, 5 Oct 2026 14:49:53 +0600 Subject: [PATCH] [2026-10-05] eagle: work/projects/cpm-web-extension-breakage-validation.md --- .../cpm-web-extension-breakage-validation.md | 32 ++++++++++++++++--- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/work/projects/cpm-web-extension-breakage-validation.md b/work/projects/cpm-web-extension-breakage-validation.md index 64ebbc87..e1dd2fe2 100755 --- a/work/projects/cpm-web-extension-breakage-validation.md +++ b/work/projects/cpm-web-extension-breakage-validation.md @@ -1,8 +1,32 @@ -# CPM Web Extension Breakage — статус и PR-план +# CPM Web Extension Breakage — статус и проверка причин -> Актуально на 2026-09-23. Полная трассировка: [[cpm-web-extension-breakage-findings]]. -> Experiment Definition: [[cpm-background-graveyard-experiment-definition]]. -> **2026-09-25 source audit:** [[cpm-service-worker-architecture-and-diagnostics]]. Earlier readiness/test results below are historical, not validation of the newly identified gaps. Additional gates: M2 stable-origin + M5/M6 reload/Fire interaction; worker exception contract; distinguish dashboard response from actual page initialization. No new device tests were run for this audit. +> **Текущий milestone, 2026-10-05: проверить attribution data и найти причины CPM breakage.** Исторический PR-план ниже — не текущая оценка готовности. Подробная трассировка: [[cpm-web-extension-breakage-findings]]; архитектура: [[cpm-service-worker-architecture-and-diagnostics]]. + +## Сейчас: attribution и breakage reasons + +**Граница данных.** До 2026-10-05 macOS 1.210 использовалась в internal testing примерно неделю; iOS 7.240 ещё не опубликована в App Store. macOS 1.211 / iOS 7.241 — ранние internal-сборки. Считать public incidence только по данным после начала public rollout (ожидается 2026-10-06), отдельно по платформе и версии. Internal-тесты могли специально воспроизводить failure, поэтому частоту и причинность по ним не выводим. + +**Что видно в attribution-bearing `debug.web.extension.cpm.messaging.stuck.*` за завершённые 2026-09-28—10-04:** + +| Версия | `.count` | `.daily` | Статус | +|---|---:|---:|---| +| macOS 1.210 | 131 | 82 | Internal testing; не оценка затронутых пользователей. | +| iOS 7.240 | 6 | 5 | До App Store release. | +| macOS 1.211 / iOS 7.241 | 0 | 0 | Включены в проверку; attributed stuck пока нет. | + +`.count` — репорты, `.daily` — дневные пиксели, не уникальные пользователи. Большой поток iOS stuck на 7.238/7.239 в основном **без** новых attribution-полей; его нельзя смешивать с 7.240. Сверка фильтров Kibana и Grafana ещё нужна. [Breakage board](https://grafana.duckduckgo.com/d/dfon7whlilnggb/cpm-weird-error-investigation?orgId=1). + +**Проверяемые сигнатуры, пока не root causes:** + +1. `bg_events`: повторный `dealloc` есть в 88/131 macOS 1.210 `.count` stuck. Internal forced-failure testing может полностью объяснять этот сигнал; он **не доказывает** естественную смерть WebContent-процесса или эффект graveyard. +2. Tab-side: в 24/131 macOS stuck отсутствуют extension scripts. В 17 из 24 `tab_controller_match=false`, хотя `tab_in_context=true`; 10 из 17 помечены `app_version_change=updated`. Гипотеза: старая/restored вкладка сохраняет прежний `webExtensionController` после создания или замены WebExtensionManager. В остальных 7 controller совпадает, но `bg_view_creations=0` (6 после update): это больше похоже на недошедший до background-view/injection startup, а не на доказанное удаление scripts. `removeAllUserScripts()` остаётся отдельной кодовой гипотезой без подтверждения этими пикселями. +3. `base_url_changed`, reload и другие причины анализировать отдельно: совпадение с stuck ещё не подтверждает причинность. + +**Следующая проверка:** на public macOS 1.210 / iOS 7.240 с 2026-10-06 раздельно считать affected daily users (recovered и permanent) против DAU той же версии; разбирать ordered `bg_events` и tab-поля по каждой сигнатуре. Воспроизвести на macOS 1.210 update/session restore и off→on Web Extensions с уже открытой вкладкой: сравнить старую и новую вкладки по controller, scripts и CPM outcome. До этого не ранжировать причины по internal `.count`. + +## Исторический статус и PR-план (2026-09-23—09-25) + +> Ниже сохранён прежний план. Его формулировки о shipped status, готовности PR и дизайне graveyard A/B не являются текущим release/experiment contract; сверять с `apple-browsers.git/main` и актуальной privacy config. ## Решение