2.9 KiB
Integration verification — 2026-10-09
Merged Phase 6 → hygiene → settings → autosave into codex/integrate; measured 6ae81d1, build 7760d5727244.
Reconciled response capture, contracts/pinning, resumable completion, Save-Data, stale-header sanitization and cache-poisoning tests. Manifest preserves exclusions/direct hashes, CSP hashes and rollback flags. Harness documentation survives.
Executed:
node perf/baseline.mjs --runs 5 --browser all --profile all --scenario all --assert-cold --compare perf/results/final-2026-10-08.json --out perf/results/integration-baseline.json
Five-run medians; Phase 5 → combination. Wire values are bytes.
| Engine/profile | Cold FCP ms | Cold wire B | Positive app.js bodies |
|---|---|---|---|
| Chromium LTE | 1356 → 1360 | 651,012 → 663,611 | 1 × 5 |
| Chromium LOSSY | 2052 → 1992 | 651,096 → 663,611 | 1 × 5 |
| Webkit LTE | 1739 → 895 | 1,097,048 → 999,794 | 1 × 5 |
| Webkit LOSSY | 4303 → 2744 | 1,105,402 → 1,006,620 | 1 × 5 |
| Engine/profile | Warm boot ms | Offline boot ms | Core update B | CSS update B | Feature update B |
|---|---|---|---|---|---|
| Chromium LTE | 410 → 395 | 185 → 236 | 125795 → 126116 | 35363 → 43741 | 33408 → 41769 |
| Chromium LOSSY | 403 → 386 | 189 → 200 | 125795 → 126116 | 35363 → 43741 | 33408 → 41769 |
| Webkit LTE | 83 → 83 | 86 → 78 | 147259 → 148181 | 45659 → 57529 | 43318 → 42636 |
| Webkit LOSSY | 85 → 80 | 81 → 84 | 147259 → 148181 | 43705 → 54421 | 41364 → 42636 |
All cold samples start worker/background transfers after paint: WebKit/LTE sample paint 936 ms, worker 2,989 ms, background CSS 6,637 ms. Controlled-page resumptions remain event-driven.
CSS overhead includes /sw.js?v=… (9,439 B) and larger sync-core responses. Chromium cold bytes increase ~2%; LTE offline boot increases 51 ms. These costs remain.
| Verification | Result |
|---|---|
| Frontend / server / measurement suites | 242 / 187 / 3 pass; zero failures |
| Migration: all engines, lossy + unthrottled | pass; one banner/reload, playback guard, offline |
| Offline-complete: all engines + interruption/Save-Data/two tabs | 102/102 runtime files, missing/failures zero |
| Lazy / hidden timers | pass; warmed first-use network zero |
| UI geometry / icons | 384 / 24 cases pass |
| Autosave / persisted settings | Chromium native OPFS pass; both engines preserve 24 keys |
Actual output excerpts:
ℹ pass 242
ℹ fail 0
after: 384 cases; 0 failed checks
Result: ALL ASSERTIONS PASSED
Evidence: perf/results/integration-*.json, including commands/exits. Linux WebKit lacks native OPFS; offline tests use the documented proxy workaround. Settings records an existing null-listener error. Expected offline API errors are tolerated; asset failures are not. iPhone checks: OPFS, suspension/resumption, quota/eviction, safe areas, locked-screen audio.