The release flow, install policy, and on-device rules previously lived in
session context. Now:
- scripts/release.sh: the executable release — gate 1 static checks,
gate 2 full go test (incl. TestNoFramesWhileIdle), gate 3 frame-regression
profile on the emulator, build (SKIP_CHECK=1 avoids double static checks),
then install to EVERY connected device (emulators and phones; the
wireless-debugging serial changes per reconnect, the loop sidesteps it).
Any gate failure aborts before install; dirty tree is warned, not fatal.
- doc/release.md: the process, the install-to-all-devices default, the rule
that a phone is INSTALL-ONLY during a release (on-device
profiling/testing is diagnostic and needs explicit approval per run),
failure-handling table, versioning gap (still gogio default 1.0.0.1), and
emulator requirements.
- doc/README.md: release.md added to the doc table.
- architecture.md §11: pointer to the release flow.
Validated end-to-end: release.sh ran all three gates (PASS), built the APK,
and installed it on both the phone and the emulator in one command.