[2026-09-23] eagle: work/projects/cpm-web-extension-breakage-validation.md
This commit is contained in:
1 parent
ea6e19f4f8
commit
bf2a1aa850
1 file changed
+3
-3
@@ -10,7 +10,7 @@
|
||||
- **Per-tab lifecycle** исправлен в M1 и уже merged.
|
||||
- **All-tabs CPM outage** идёт stack: M3 telemetry → M4 hung recovery → M5 bounded graveyard → M6 A/B.
|
||||
|
||||
M4 перезагружает Web Extensions только после второго сигнала `hung`, когда монитор подтверждает global CPM outage. Первый сигнал остаётся диагностическим: он не меняет состояние расширений.
|
||||
M4 перезагружает Web Extensions при первом сигнале `hung`, который подтверждает global CPM outage после предшествующего `messaging init failure`. Сам `messaging init failure` остаётся диагностическим: он не меняет состояние расширений.
|
||||
|
||||
## Статус проблем
|
||||
|
||||
@@ -34,7 +34,7 @@ M4 перезагружает Web Extensions только после второ
|
||||
| M1 tab lifecycle | `codex/cpm-tab-lifecycle-fixes` | **Merged:** [PR #6827](https://github.com/duckduckgo/apple-browsers/pull/6827), CI green. |
|
||||
| M2 stable base URL | `alex/cpm-stable-base-url` — `/Users/admin/DuckDuckGo/apple-browsers.git/cpm-stable-base-url` | **Production-ready:** 2 files; 11/11 targeted tests. Добавлена safe URL construction и negative validation вместо force-unwrap. |
|
||||
| M3 attribution telemetry | `alex/cpm-failure-telemetry` — `/Users/admin/DuckDuckGo/apple-browsers.git/cpm-failure-telemetry` | **Production-ready code:** passive PII-free buckets, app-update/launch attribution, stable-base-URL transition fact, iOS/macOS schema validation green. Privacy triage: [[cpm-m3-telemetry-privacy-triage]]. |
|
||||
| M4 hung recovery | `alex/fix-cpm-breakage` — `/Users/admin/DuckDuckGo/apple-browsers.git/cpm-breakage-pixel` | **In progress:** после второго сигнала `hung` перезагружает Web Extensions; первый сигнал только открывает диагностический episode. |
|
||||
| M4 hung recovery | `codex/cpm-hung-recovery` — `/Users/admin/DuckDuckGo/apple-browsers.git/cpm-hung-recovery` | **In progress:** первый `messaging init failure` открывает diagnostic episode; первый последующий `hung` перезагружает Web Extensions. |
|
||||
| M5 graveyard mitigation | `alex/cpm-graveyard-mitigation` — `/Users/admin/DuckDuckGo/apple-browsers.git/cpm-graveyard-mitigation` | **Production-ready, default off:** one retained view maximum, 3-second bounded hold, stale release cancellation, unload/reload/runtime kill-switch cleanup. 24/24 targeted tests; earlier real forced-kill iOS E2E recovered with release at ≈3.15 s. |
|
||||
| M6 graveyard A/B | `alex/cpm-graveyard-ab` — `/Users/admin/DuckDuckGo/apple-browsers.git/cpm-graveyard-ab` | **Production-ready code:** lazy exposure enrollment, stable cohorts, control/treatment isolation, bounded pending queue, operational pixels and standard `experiment_metrics` outcome. 421/421 WebExtensions tests; iOS/macOS app builds; iOS/macOS pixel validators. |
|
||||
|
||||
@@ -46,7 +46,7 @@ Independent PRs:
|
||||
|
||||
1. M2 — stable base URL.
|
||||
2. M3 — production telemetry.
|
||||
3. M4 — reload after confirmed `hung` (the second signal).
|
||||
3. M4 — reload on the first `hung`, after `messaging init failure`.
|
||||
|
||||
Stacked PRs:
|
||||
|
||||
|
||||
Reference in new issue
Block a user