CI quality gates for beta #47

Closed
opened 2026-08-03 22:42:59 +00:00 by TheAnachronism · 1 comment

Part of #41
Blocked by: #46

Question

Which automated quality gates must pass before 1.0 beta is considered ready (analyze, test, build, release workflow expectations), given what already exists?

Part of #41 Blocked by: #46 ## Question Which automated quality gates must pass before 1.0 beta is considered ready (analyze, test, build, release workflow expectations), given what already exists?
Author
Owner

Resolution

CI quality-gate bar for sideload-to-friends 1.0 beta (criteria only — implement later):

Must

  1. PR / push to default branch: flutter analyze + flutter test must pass.
  2. Main / pre-tag: release-mode Android APK build must pass on the commit you cut beta from (flutter build apk --release — assemble only; no install/run smoke).
  3. Tag → packaging workflow: stays packaging/upload only (no analyze/test duplication on the tag job). A successful packaging run for the beta release tag remains part of cutting the build; channel naming is owned by Release channel for beta.

Not must for beta CI

  • dart format / formatting check
  • Android lint (Gradle)
  • Coverage threshold
  • Integration / device / emulator tests
  • Linux desktop build
  • Play testing tracks / pre-launch report

Why

Quality-gate inventory shows local analyze/test/APK primitives exist and only alpha/* tag packaging is automated. Friends beta needs automated regression gates before merge plus a packaging-compile proof before cut — not a full quality orchestra. Test content bar is Test expectations for beta; signing is Signing and update trust.

## Resolution **CI quality-gate bar** for sideload-to-friends **1.0 beta** (criteria only — implement later): ### Must 1. **PR / push to default branch:** `flutter analyze` + `flutter test` must pass. 2. **Main / pre-tag:** release-mode Android APK build must pass on the commit you cut beta from (`flutter build apk --release` — assemble only; no install/run smoke). 3. **Tag → packaging workflow:** stays **packaging/upload only** (no analyze/test duplication on the tag job). A successful packaging run for the beta release tag remains part of cutting the build; channel naming is owned by [Release channel for beta](https://git.anachronis.dev/TheAnachronism/tt-rss-viewer/issues/57). ### Not must for beta CI - `dart format` / formatting check - Android lint (Gradle) - Coverage threshold - Integration / device / emulator tests - Linux desktop build - Play testing tracks / pre-launch report ### Why [Quality-gate inventory](https://git.anachronis.dev/TheAnachronism/tt-rss-viewer/issues/46) shows local analyze/test/APK primitives exist and only `alpha/*` tag packaging is automated. Friends beta needs automated regression gates before merge plus a packaging-compile proof before cut — not a full quality orchestra. Test *content* bar is [Test expectations for beta](https://git.anachronis.dev/TheAnachronism/tt-rss-viewer/issues/49); signing is [Signing and update trust](https://git.anachronis.dev/TheAnachronism/tt-rss-viewer/issues/54).
Sign in to join this conversation.
No description provided.