# Rel Platform Release Policy **Document type:** Release / Platform Release Policy **Version:** 0.9.2 **Status:** Baseline Candidate **Language:** English **Product:** Chanora **Repo path:** `docs/release/platform-release-policy.md` --- ## 1. Purpose This document separates runtime deployment targets from app-store upload build-SDK gates. ## 2. iOS / iPadOS Policy | Policy item | Decision | |---|---| | Runtime deployment target | iOS 13 or later unless Flutter, plugin, audio, or product constraints require raising it. | | App Store Connect upload build-SDK gate | For upload on or after 2026-04-28, use Xcode 26 or later and the iOS 26 / iPadOS 26 SDK or later, unless Apple publishes a newer applicable requirement before upload. | | Internal Alpha / local development | May use development toolchains suitable for internal testing if no App Store Connect upload is performed. | | TestFlight / App Store upload | Must satisfy the active Apple App Store Connect upload requirement. | ## 3. Android Policy | Policy item | Decision | |---|---| | Runtime minimum | Android API 24 or later unless Flutter, plugin, audio, or product constraints require raising it. | | Store upload target API | Target the Google Play-required API level on the upload date. | | Internal Alpha / sideload testing | May use internal build configuration suitable for internal testing, but release readiness must state whether Google Play rules apply. | ## 4. Release Readiness Rule The Go/No-Go record shall record: - runtime minimum versions; - store upload build/toolchain gates; - build number; - commit SHA; - tag; - artifact hashes; - platform-specific release status; - whether the release is internal-only or store-uploaded. ## 5. Traceability | Policy | Traceability | |---|---| | iOS runtime minimum | SysRS-286 -> SysDes-133 -> SRS-185 -> SAD-061 -> SDD-071 | | Apple App Store Connect upload SDK gate | SysRS-287 -> SysDes-134 -> SRS-186 -> SAD-062 -> SDD-072 | | Android runtime and target API policy | SysRS-288/289 -> SysDes-135 -> SRS-187/188 -> SAD-063 -> SDD-073 | ## 6. Change History | Version | Date | Description | |---|---|---| | 0.9.2 | 2026-05-14 | Initial platform release policy separating runtime targets from store upload build-SDK gates. | ## Baseline Candidate 0.9.2 Update | Version | Date | Description | |---|---|---| | 0.9.2 | 2026-05-14 | Corrected Apple App Store Connect upload gate to 2026-04-28 and checked full-package naming, references, and coverage. | ## Desktop Push-to-Talk Release Policy Addendum (Baseline Candidate 0.9.3) Per SysDes-148 the release readiness record shall carry, for every desktop release artefact, the following per-platform evidence: | Field | Source | Acceptance | |---|---|---| | Detected `PttCapabilityLevel` | Live runtime measurement on the verification host. | Must equal the level the release notes claim. | | Active backend identifier | `DesktopPttBackend::backend_id()` reported by the live measurement. | Must equal the backend the release notes claim. | | Focused fallback exercised | Manual verification step. | Must record "yes" with a re-measurement of the same backend identifier after the user revokes the relevant permission / blocks the relevant input path. | | Capability badge UI | Screenshot or platform-test trace. | Must match the runtime capability. | Release notes shall not claim Global PTT support on a platform when the live measurement returned `L0Focused`. Release notes shall not claim mouse-side-button support on a platform when the live measurement did not include a side-button binding (per DEC-026 the Linux portal may not expose side-button bindings on every session). Per DEC-025 the only officially-tested Linux environment for the first public release is GNOME on Wayland. Other Linux environments are supported at the `L0Focused` capability only; the release notes shall not claim Global PTT support outside the tested compositor. | Version | Date | Description | |---|---|---| | 0.9.3 | 2026-05-15 | Added desktop PTT release-policy evidence requirements: per-platform capability level + backend identifier + fallback-exercised + capability badge UI screenshot must be recorded before release notes may claim Global PTT support. |