[2026-10-16] eagle: work/projects/cpm-metrics-causes-and-mitigations-2026-10-16.md work/projects/cpm-status-2026-10-15.md
This commit is contained in:
1 parent
7bf4dce428
commit
ee4cd992c1
2 files changed
+12
-1
No files matched your search
@@ -875,3 +875,14 @@ SwiftPM автоматически обновил только package-local con
|
||||
Все артефакты: `/private/tmp/cpm-p1-p2-clean-20261016/`; машинная сводка `validation-summary.json`, source hashes `cleanup-source-hashes.json`, JSON evidence в `enabled-cleanup-evidence/` и `disabled-evidence/`. Все 18 зафиксированных файлов (включая unchanged ZIP) неизменны во время финальных прогонов. Исходный scratch также сверён с hash прежнего 22/22 прогона: изменений нет. HEAD не сдвинут, commitsCreated=0, generated package pin diff убран из новой ветки.
|
||||
|
||||
Границы доказательства сохранены: P1 проверяет imposed 8 s worker start при gate cap 5 s; P2 — реальную error 6 на macOS с одним начальным window/tab и остановкой только своего PID. Естественный триггер в затронутых production-сессиях и поведение iOS suspension/resume этим не доказаны; отдельный resume recovery не добавлен. P3/P5 и другие research-сценарии не включены в чистую ветку и их прежние ограничения не сняты.
|
||||
|
||||
|
||||
## Полная замена #7379: upgrade context и background guard — 16 октября 2026
|
||||
|
||||
В том же `alex/cpm-fix-p1-p2` выполняется следующий этап по запросу: объединить P1/P2 с гарантиями #7379 и убрать зависимость recovery safety от diagnostics flag. До изменений сохранены `before.tar.gz`, `before.diff`, `before-hashes.json` в `/private/tmp/cpm-p1-p2-replacement-20261016/`. Коммитов нет.
|
||||
|
||||
Изменения: после успешного install выбран и отслеживается **точный новый context по identifier**; navigation waiter захватывает именно его, включая период сосуществования старого/нового. Для fallback учитывается порядок installation store (новый append до удаления старого), между несколькими неизвестными contexts больше нет произвольного выбора. Retry error 6 работает только с актуальным выбранным context и повторно проверяет flag/background перед вызовом WK API.
|
||||
|
||||
`isApplicationInBackground` перенесён из diagnostics recorder в самостоятельный lifecycle provider менеджера. iOS factory передаёт прямое чтение `UIApplication.shared.applicationState`, даже при `cpmDiagnosticsRecorder=OFF`. Прежний read-only diagnostics getter удалён. Добавлены unit-регрессии coexistence/replacement removal, diagnostics=nil + background→foreground, runtime recovery kill switch и отказ retry superseded context.
|
||||
|
||||
Два install/upgrade-сценария #7379 перенесены с сохранением test method names **в текущий app-hosted harness** (адаптация исходного SPM harness, без копирования остальных research-тестов). Проверяются реальные feature-flag/lifecycle install и version-triggered upgrade, настоящий native dashboard + page initResp; worker новой установки/версии задерживается на 5 s. Отдельно записываются реальные context sets в notifications, чтобы подтвердить coexistence при upgrade. Запущены общий signed build для четырёх app-кейсов и targeted unit suites. Strict lint: 16 Swift files, 0 violations. Результаты предыдущего 2/2 прогона остаются историей и не заменяют проверку новой сборки.
|
||||
Reference in new issue
Block a user