Child of linksys/PRODUCT_MANAGEMENT#63 · Phase 3a — UI contract double + mock tier
Make the PrivacyGUI mock lane actually runnable. PrivacyGUI#1149 is a design proposal today, not a mergeable tier.
Acceptance criteria
Ref: linksys/PrivacyGUI#1149
Codex review update (2026-07-16)
Per the review (GAP 8): keep this 1.x work bounded. #1149 is useful for stabilizing the shipping 1.x line but does not advance the 2.x USP runtime (Austin independently agreed the in-process suite is 1.x-source-bound; 2.x goes Playwright + screenshot). Primary Phase 3 effort moves to the 2.x Wasm boundary (#70 + the new vertical-slice ticket), where integration risk is highest and currently ungated.
Child of linksys/PRODUCT_MANAGEMENT#63 · Phase 3a — UI contract double + mock tier
Make the PrivacyGUI mock lane actually runnable.
PrivacyGUI#1149is a design proposal today, not a mergeable tier.Acceptance criteria
--dart-define=force=localis same-origin routing towindow.location.host, not a mock backend)PrivacyGUI#1149mock tier reaches green execution — fix submodule init (plugins/widgets, currently 13/13 red atflutter pub get)E2E_MOCKco-design session with Austin (gate lifted 2026-07-16 when PrivacyGUI#1147 mergeddev-2.6.0→usp)#1149into a Mock PR (per-PR, 13 flows) and a Device PR (nightly, 8 flows)Ref:
linksys/PrivacyGUI#1149Codex review update (2026-07-16)
Per the review (GAP 8): keep this 1.x work bounded.
#1149is useful for stabilizing the shipping 1.x line but does not advance the 2.x USP runtime (Austin independently agreed the in-process suite is 1.x-source-bound; 2.x goes Playwright + screenshot). Primary Phase 3 effort moves to the 2.x Wasm boundary (#70 + the new vertical-slice ticket), where integration risk is highest and currently ungated.