diff --git a/work/projects/cpm-pr0-episode-telemetry-summary-2026-10-16.md b/work/projects/cpm-pr0-episode-telemetry-summary-2026-10-16.md index 14c72d15..650577f9 100755 --- a/work/projects/cpm-pr0-episode-telemetry-summary-2026-10-16.md +++ b/work/projects/cpm-pr0-episode-telemetry-summary-2026-10-16.md @@ -43,6 +43,22 @@ Both platforms use `daily+count` (`.dailyAndCount`). The first completed episode - `response_after`: elapsed time since the first failure, bucketed as `under_30s`, `30s_to_1m` or `1m_to_deadline`. Omitted for the no-response outcome. +**Parameters to add (not implemented yet):** + +Port and adapt four fields from `alex/cpm-messaging-readiness-telemetry`: + +- `bg_ready_after` — whether background loading is pending, failed or complete. Values: `none` (no background view), `pending`, `failed`, or completion-time buckets `under_1s`, `1s_to_4s`, `4s_to_10s`, `10s_to_30s`, `over_30s`. Separates a background still starting from one already ready. + +- `bg_view_age` — age of the current background view: `under_4s`, `4s_to_8s`, `8s_to_30s`, `30s_to_2m`, `over_2m`. Distinguishes a fresh wake from a failure long after view creation; omitted when no current view exists. + +- `bg_load_error_after` — time from the affected view's creation to WebKit error 6: `under_5s`, `5s_to_25s`, `25s_to_35s`, `over_35s`. Tests whether the failure coincides with the 30-second background-load timer. + +- `bg_load_error_app_state` — app state when that error occurred: `active`, `inactive` or `background` (macOS: active/inactive). Helps distinguish foreground failures from background suspension conditions. + +Capture these values in the first-failure snapshot and send them in the same terminal episode report, retaining `daily+count`. Omit unavailable values. Send the two error fields only for error 6 attributed to the corresponding background-load attempt, rather than any historical error in the context. Check the added fields' combined distinguishability with the retained `bg_events`. + +`app_state` and `open_tabs` remain deferred to targeted startup/no-view diagnostics; `loading_tabs` is not planned for this change. These additions do not change the four-second detector or add page-side `initResp` acknowledgement. + **Eight existing diagnostic booleans** from [✓ TD: CPM failure pixels attribution](https://app.asana.com/1/137249556945/project/481882893211075/task/1218619301158188?focus=true): all are captured at the first failure; unavailable facts are omitted. - `context_loaded` — extension context loaded; `bg_view_alive` — current background view exists.