[2026-10-20] eagle: work/projects/CPM Breakage Testing Steps.md work/projects/cpm-background-graveyard-experiment-definition.md work/projects/cpm-extension-health-pixels-privacy-triage.md work/projects/cpm-m3-telemetry-privacy-triage.md work/projects/cpm-metrics-causes-and-mitigations-2026-10-16.md work/projects/cpm-pr0-episode-telemetry-summary-2026-10-16.md work/projects/cpm-readiness-telemetry-tech-design-2026-10-15.md work/projects/cpm-service-worker-architecture-and-diagnostics.md work/projects/cpm-telemetry-data-requirements-2026-10-15.md work/projects/cpm-web-extension-breakage-findings.md
This commit is contained in:
1 parent
5b8f6bc510
commit
8f39ed45d1
17 files changed
+256
-42
No files matched your search
@@ -6,6 +6,28 @@ tags:
|
||||
- cpm
|
||||
- webkit
|
||||
---
|
||||
# CPM Web Extension — карта кода по worktree и строкам
|
||||
|
||||
**Проверено 20 октября 2026:** карта ниже отражает существующие worktree и опубликованные heads; старые line numbers и результаты в архивных разделах относятся к своим ревизиям. PR/CI — [[cpm-status-2026-10-15#2. PR и quality gates]]. Пользовательский dirty `Package.resolved` в telemetry worktree сохранён.
|
||||
|
||||
## 0. Текущая карта worktree и точек входа
|
||||
|
||||
Все пути относительно `/Users/admin/DuckDuckGo/apple-browsers.git/`.
|
||||
|
||||
- **Episode telemetry:** `alex/cpm-telemetry-pr0`, ветка `alex/cpm-messaging-readiness-telemetry`, head **`5d1cb4abd2`**, #7376. PR закрыт без merge, CI зелёный. Начинать с [report/payload](/Users/admin/DuckDuckGo/apple-browsers.git/alex/cpm-telemetry-pr0/SharedPackages/WebExtensions/Sources/WebExtensions/Pixels/WebExtensionPixelFiring.swift), затем [monitor](/Users/admin/DuckDuckGo/apple-browsers.git/alex/cpm-telemetry-pr0/SharedPackages/WebExtensions/Sources/WebExtensions/Autoconsent/CPMMessagingHealthMonitor.swift), [diagnostics/encoder](/Users/admin/DuckDuckGo/apple-browsers.git/alex/cpm-telemetry-pr0/SharedPackages/WebExtensions/Sources/WebExtensions/Autoconsent/CPMMessagingDiagnostics.swift), [recorder](/Users/admin/DuckDuckGo/apple-browsers.git/alex/cpm-telemetry-pr0/SharedPackages/WebExtensions/Sources/WebExtensions/Autoconsent/CPMMessagingDiagnosticsRecorder.swift) и [readiness observer](/Users/admin/DuckDuckGo/apple-browsers.git/alex/cpm-telemetry-pr0/SharedPackages/WebExtensions/Sources/WebExtensions/Autoconsent/CPMBackgroundReadinessObserver.swift). Полный contract — [[cpm-pr0-episode-telemetry-summary-2026-10-16]].
|
||||
- Тесты episode/state transitions: `SharedPackages/WebExtensions/Tests/WebExtensionsTests/CPMMessagingHealthMonitorTests.swift`; payload/timeline — соответствующие Diagnostics/Recorder tests в том же каталоге. Definitions и dictionaries — обе платформы, `{iOS,macOS}/PixelDefinitions/pixels/`. Новый `stuck` — четыре значения; `bg_events` — `initial;until-first-stuck`, общие 12 events/255 chars, `...` означает усечение. Initial phase не имеет зарезервированного бюджета.
|
||||
- **macOS telemetry:** `alex/cpm-telemetry-macos-release`, ветка `alex/cpm-messaging-readiness-telemetry-macos-release`, **`3fb13b81fe`**, #7484. Старый `was_stuck`, без двухфазного timeline; release-base conflict. Это не идентичная копия текущего #7376.
|
||||
- **P1/P2/P4:** `alex/cpm-fix-init-loss-production`, `alex/cpm-fix-init-loss`, **`674bb809f2`**, #7379 на telemetry branch. Главные точки — `Manager/WebExtensionManager.swift`, `Autoconsent/CPMBackgroundReadinessRecovery.swift` и `Pixels/WebExtensionPixelFiring.swift` внутри WebExtensions Sources. Independent `startup_response_missing` не зависит от default-OFF late reload; recovery outcomes не являются page ACK. CI BSK красный. Отдельный app harness — `alex/cpm-fix-p1-p2`, `codex/cpm-fix-init-loss-integration-tests`.
|
||||
- **Network recovery:** `alex/cpm-network-process-recovery`, **`f41c7b7047`**, #7459 на telemetry branch; [watch/restart](/Users/admin/DuckDuckGo/apple-browsers.git/alex/cpm-network-process-recovery/SharedPackages/WebExtensions/Sources/WebExtensions/Lifecycle/CPMNetworkProcessRecovery.swift), manager wiring и `CPMNetworkProcessRecoveryTests.swift`. Applied pixel в metadata/обоих definitions: daily+count, no custom params, только после принятого restart. Нет доказательства recovery и нет `network_replaced_since_view` в episode. Harness: `alex/cpm-network-process-integration-tests`, `codex/cpm-network-process-integration-tests`.
|
||||
- **P3 stable origin:** `alex/cpm-p3-stable-base-url`, **`dd96018da9`**, #7493 на telemetry branch; production default ON, remote kill switch. Это уже опубликованный ограниченный CPM origin policy, не старый глобальный M2 prototype. Harness `alex/cpm-p3-integration-tests`, `codex/cpm-p3-integration-tests`; full P3 failure остаётся невоспроизведённым.
|
||||
- **P5 shared pinned close:** `alex/cpm-p5-pinned-window-close`, **`574e9288ae`**, #7473 на `release/macos/1.213.0`, CI зелёный; harness `alex/cpm-p5-integration-tests`, `codex/cpm-p5-release-integration-tests`. Один доказанный tab-lifecycle mechanism.
|
||||
- **Большой rewrite:** `alex/cpm-episode-telemetry`, **`7e8128c94f`** — альтернативный prototype, **не** реализация #7376. Не читать `CPMEpisodeTelemetry.swift`/`CPMEpisodeSummary.swift` как текущий PR.
|
||||
- Старый самостоятельный harness #7378 и baseline #7384 закрыты без merge. Native progress #7385 и JS #3727 открыты и не встроены в #7376; end-to-end delivery требует обеих сторон и обновлённого extension bundle.
|
||||
|
||||
Для ручной проверки именно terminal-report contract — [[CPM Breakage Testing Steps]]. Прежние commands/counts/line mappings ниже сохранены как история, а не инструкции для текущего head.
|
||||
|
||||
## Архив кратких обновлений — 16–19 октября
|
||||
|
||||
> **Актуально — 19 октября 2026, error-6/P4 finding закрыт в опубликованном PR.** [#7379](https://github.com/duckduckgo/apple-browsers/pull/7379) **`8275bcce36`**, база #7376 **`39fe56af4c`**, содержит fix **`fc124938e0`** + 2 штатные регрессии. **201 shared PASS**, strict lint **4 files / 0 violations**. Signed app: **ON 9 PASS → OFF 6 ожидаемых functional FAIL → restored ON 9 PASS**, 0 SKIP, те же бинарники; первый restored attempt **7 PASS / 2 FAIL** (teardown timeout / SIGINT) сохранён, повтор выполнен без изменений и отключения проверок. CI завершён: **43 SUCCESS / 17 SKIPPED**, failures/pending нет. Harness **`6d04496882`** содержит production head и ровно **12 review-only paths**; 38 новых shared regressions относительно базы. Проверенный shipping scope: P1/P2 и независимый P4 detection; late reload остаётся default **OFF**, формы не менялись. Прежние открытые findings ниже — история до fix.
|
||||
|
||||
> **История ревью — 19 октября 2026, до исправления error-6/P4 в `fc124938e0`.** Проверен опубликованный после rebase **`a00dc4afeb`** / база #7376 **`c7adf28e12`**, 7 commits / 22 paths. Остаётся **1 P2: error-6 startup может ошибочно попасть в P4 detection после позднего callback успешного retry**. На текущем head: **196 существующих shared tests PASS + 2 дополнительных probes PASS / 1 новый probe FAIL**. Проверочная однострочная правка только в изолированной копии даёт **199 PASS**; в PR она не внесена. Pixel validators обеих платформ PASS. CI завершён: **53 SUCCESS / 25 SKIPPED**, failures и pending нет; повторный probe подтвердил тот же незакрытый дефект. Предыдущие 197 unit и app 9→6→9 относятся к `fc87237a47`; новая база убрала один retired-telemetry тест. Подробности и границы воспроизведения — в разделе «Полное ревью после P4 detection — error-6 attribution». История ниже сохранена.
|
||||
@@ -27,11 +49,10 @@ tags:
|
||||
> **App integration update — 16 октября 2026, 01:48 Бишкек.** В `cpm-e2e-init` добавлены 20 методов настоящего app-hosted CPM suite: финальные **20/20 PASS, 0 failures/skips/expected failures**, группы 18+1+1 на одной signed build. Схема `CPM Integration Tests`; файлы/guards/запуск/ограничения — §5 ниже, полный реестр и история — [[cpm-status-2026-10-15#Финальный app-hosted итог — 16 октября 2026]]. Без commits. Карта остальных worktree/PR ниже сохраняет свою датированную сверку 15 октября.
|
||||
|
||||
|
||||
# CPM Web Extension — карта кода по worktree и строкам
|
||||
|
||||
> **Актуальная карта — 15 октября 2026.** Текущий статус PR/CI, данные и все 14 новых P5/P6 результатов: [[cpm-status-2026-10-15]] (§2, §5, §10–12). Датированные исходные разделы 1–4 ниже сохранены; их «ничего не закоммичено», номера строк и общий worktree описывают 9 октября, а не текущее состояние.
|
||||
|
||||
## 0. Текущая карта worktree и запусков
|
||||
## Историческая карта worktree и запусков — 15–19 октября
|
||||
|
||||
Корень: `/Users/admin/DuckDuckGo/apple-browsers.git/`. Проверены `git worktree list`, HEAD и наличие тестовых файлов. **Единого worktree со всеми suites нет.** Общая база в истории не включает local dirty/untracked файлы; особенно это относится к remaining-failures и scratch init-progress E2E.
|
||||
|
||||
|
||||
Reference in new issue
Block a user