Construct alpha27 — consent and approximate-location fixes
Pre-releaseAlpha27: consent and approximate-location fixes
This host update includes the review fixes for module updates and rollback:
- Removing HTTP clears its consent; narrowing destinations forgets removed origins even if the enabled switch is untouched. Later updates/rollback cannot silently recover that scope, including stale saved state from alpha26.
- Reintroduced sensitive capabilities require fresh opt-in, matching the installer’s off switch. Unchanged grants, explicitly revoked storage and saved module data remain preserved.
- Coarse-only location uses a permitted network provider without attempting fine-only GPS registration.
Install
Install the ARM64 APK over existing Construct; do not uninstall. Sky Watch 0.2.2 is unchanged and needs no further module update if already installed.
Continue using the pilot catalog: https://feat-modular-sky-watch.construct-20x.pages.dev/index.json
The production catalog and previous releases are unchanged. PR #23 remains open and unmerged; the legacy Sky launcher is still supported.
Exact-artifact verification
- Frozen host source:
b2b249b629eae93afd1c1b1ce786853b33187887. Later PR commits only change test drivers, documentation and catalog presentation; the core diff is empty. - 208 JVM tests, zero lint errors, 13/13 Sky, 5/5 upgrade/legacy, 6/6 HTTP consent and 4/4 location checks.
- Four independently completed Android 17 x86_64 scopes, all stopped cleanly. Old bugs were reproduced on alpha26 before in-place upgrades; counters survived. Coarse-only permission returned an approximate synthetic network fix.
- Signing identity, Android permissions, 17 protected assets and native-library bytes match the prior baseline. Both APK architecture/size/alignment checks passed.
- The same-APK signed module glossary update and rollback remain verified. Reviewed map/large-text and native consent/denial screenshots are attached.
The test harness needed corrections for dialog timing, fixture CSP, trial-version sequencing, a child timeout and emulator memory pressure. Failed/incomplete runs remain excluded; HTTP and location now use separate clean snapshots. Some immediate captures lagged the asserted state and are excluded from visual evidence; live accessibility assertions and saved result text are retained. See the attached sanitized evidence for details.
Human Pixel acceptance applies to the earlier alpha26/Sky0.2.2 pilot—not physical-phone acceptance of this new host. These are scoped emulator checks, not every Android version, physical GPS accuracy or a complete sandbox proof. GitHub CI is independent of this local exact-artifact acceptance.
Source/review: #23