[2026-10-16] eagle: work/projects/cpm-pr0-episode-telemetry-summary-2026-10-16.md work/projects/cpm-status-2026-10-15.md

This commit is contained in:
Alexey Martemyanov committed 2026-10-16 17:59:55 +06:00
1 parent d6bc977f00
commit 4b5fe9af6a
2 files changed
+8 -2

No files matched your search

@@ -22,12 +22,12 @@ The initial snapshot records fixed facts about the extension context, background
Keep `daily+count`: daily estimates installations with a completed episode that day; count measures completed episodes. The first report each day sends both legs with the same payload; subsequent reports send count only.
**Fix attribution.** The agreed PR0 contract excludes graveyard attribution; removing that legacy field from the local code is still pending. Add fix-specific application/outcome metrics in the relevant fix PRs when needed. Preventive fixes must also count eligible attempts that succeed without a failure episode. Current diagnostic facts do not distinguish all five failure groups.
**Fix attribution.** Graveyard attribution is removed from the episode and its diagnostic payload. Add fix-specific application/outcome metrics in the relevant fix PRs when needed. Preventive fixes must also count eligible attempts that succeed without a failure episode. Current diagnostic facts do not distinguish all five failure groups.
**Limits.** A dashboard response does not prove document-level `initResp` delivery or recovery of every failing tab. A deadline means no qualifying response was observed. Unfinished episodes can be lost when the process exits.
Retired pixel definitions and unused parameters are removed on both platforms. The manager still sends the separate `debug_web_extension_reload_failed` event.
**Validation.** 82 focused tests, macOS PixelKitMock verification, both platform definition validators and strict SwiftLint passed.
**Validation.** All 742 WebExtensions tests passed after removing graveyard attribution, including a regression test proving the monitor neither reads nor reports its treatment state. macOS PixelKitMock verification, both platform definition validators and strict SwiftLint also passed.
Related: [[cpm-status-2026-10-15|CPM status]], [[cpm-readiness-telemetry-tech-design-2026-10-15|Readiness telemetry design]].
+6
View File
@@ -760,3 +760,9 @@ P2 реализация уточнена: manager наблюдает публи
`fixed-final.xcresult`: P1 снова **PASS 49.908 s**. P2 получил настоящий `WKWebExtensionContextErrorDomain:6` и **автоматический context reload**; но регрессия осталась **красной**: existing-tab probe имел native dashboard=true и 0 detector failures, но page initResp mark=false. Новое окно и новая вкладка получили оба подтверждения. Нельзя объявлять восстановление старого tab по одному native ack. В harness фиксированный sleep 150 ms заменён bounded polling реального page initResp (до 2 s); идёт повтор `fixed-page-ack.xcresult`. Проверка page receipt сохранена строгой, зелёный P2 пока не заявлен.
Оговорка о пользе P2: исходный standalone `testBackgroundStalledPastUnloadTimerFailsToLoad` уже проверяет, что **следующий wake может восстановиться без нового фикса**. Новый кандидат делает recovery заранее, по error notification; его проверка сама по себе не доказывает, что SIGSTOP-модель объясняет persistent iOS stuck или что без reload следующая навигация обязательно сломана.
### Первый зелёный P2 regression на окончательном production-кандидате
`fixed-page-ack.xcresult`: **P2 PASS, 85.562 s**, 1/1, 0 failures/skips/expected failures. Exported evidence: `fixed-page-ack-evidence/755EA182-FC24-479A-95B5-CFF1493D0404.json`. Реальный error 6 записан до recovery: context_errors=WKWebExtensionContextErrorDomain:6, bg_load_error_after=25s_to_35s, app_state=inactive, view_creations=2, view_alive=false. Первая fault-navigation: native=false/page=false, 1 initialization failure. После автоматического reload, без явного test reload: **existing tab native=true/page=true, 0 failures**; новое окно и новая tab также native=true/page=true, 0 failures. Existing-tab probe занял 0.149 s: сам по себе этот повтор не доказывает, что предыдущий page-negative был только недостаточными 150 ms; intermittent/order-dependent delivery остаётся причиной дополнительной проверки повторяемости.
Сборка `build-page-ack.log` — project signing defaults, TEST BUILD SUCCEEDED; подписи app dylib/XCTest проверены, bundled ZIP сохранён с исходным SHA-256 `4254967bb447aa45deb371b26fea1dd93850a8e6a654f8ebecd70fccc3859936`. Начат общий прогон оставшихся 19 app methods на этой же сборке (новый P1 включён, P2 уже проверен отдельно, P5/cache отдельно). Контроль с выключенными фиксами и итоговая полная матрица пока не завершены. HEAD не изменился, commits/PR изменений нет.