Skip to content

Commit 254f17e

Browse files
authored
docs(release): add 4.2.0-beta.1 and 4.2.0 notes; update changelog (#1241)
* docs(release): add 4.2.0-beta.1 and 4.2.0 notes; update changelog * docs(release): add standardized Android release process and link from README
1 parent 7d32fd9 commit 254f17e

File tree

5 files changed

+200
-0
lines changed

5 files changed

+200
-0
lines changed

CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
## 4.2.0
6+
7+
- Promote stable from 4.2.0‑beta.1; no functional differences
8+
9+
## 4.2.0‑beta.1
10+
11+
- TON: public features available (send/receive, details, explorers)
12+
- Providers: Coinbase provider added; new price service; remote asset sync service
13+
- WalletConnect: migrate integrations to Reown SDK
14+
- Platform: Android toolchain upgrades to meet Play requirements
15+
- CI/CD: NDK r28; native libs verification; Polkadot alignment printing; Jenkins stability
16+
- Fixes: banner closing (FLW‑5177); Ethereum recipient validation; confirmation/warnings UX; UI tweaks
17+

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ Track features development: [board link](https://soramitsucoltd.aha.io/shared/34
2020
- Current state: see `docs/CURRENT_STATE.md` for supported ecosystems, integrations, and TODO hotspots.
2121
- Status snapshot: see `docs/status.md` for health, risks, and what’s incomplete.
2222
- Roadmap: see `docs/roadmap.md` for prioritized, actionable tasks.
23+
- Release process: see `docs/releases/PROCESS.md` for beta → stable steps and checklists.
2324

2425
## How to build
2526

docs/releases/4.2.0-beta.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Fearless Android 4.2.0-beta.1
2+
3+
## Summary
4+
5+
Beta release enabling public TON features, Coinbase provider integration, Reown (WalletConnect) migration, and Android toolchain upgrades required by Google Play. Includes CI hardening and assorted fixes.
6+
7+
## Highlights
8+
9+
- TON: public features available across supported flows (send/receive, details, explorers)
10+
- Providers: Coinbase provider added; new price service; remote asset sync service
11+
- WalletConnect: migrated integrations to Reown SDK (sessions, signing, disconnect)
12+
- Platform: toolchain upgrades (AGP/Kotlin/SDK/NDK updates) to meet Play requirements
13+
- CI/CD: NDK r28, native libs verification, alignment printing, Jenkins stability improvements
14+
- Fixes: banner closing (FLW‑5177), Ethereum recipient validation/warning → confirmation, UI tweaks
15+
16+
## Changes (since last release)
17+
18+
- Feature: TON features public (user‑visible operations and views)
19+
- Feature: Coinbase provider integration
20+
- Feature: New price service + remote assets sync service
21+
- Migration: WalletConnect → Reown SDK
22+
- Platform: Upgrade Android toolchain to current Play policy
23+
- CI: print Polkadot SDK alignment; native `.so` verification; stable Jenkins ordering; disable parallel for DataBinding
24+
- Fixes: banner close; ETH recipient validation; UX improvements in confirmation flow
25+
26+
## Risks & Notes
27+
28+
- Reown SDK migration spans Substrate/EVM chains; verify dapp sessions end‑to‑end
29+
- Deprecated APIs are still present (Compose theme alias, Flow preview/opt‑in, Room index hints) — safe to ship; tracked for cleanup
30+
- Ensure mirrors and overrides are set for first‑time builds (see README and AGENTS.md)
31+
32+
## Test Matrix (beta)
33+
34+
- Devices: Android 13/14/15; ARM64; one low‑RAM device
35+
- Chains: Polkadot/Kusama (Substrate), Ethereum/Polygon/BSC (EVM), TON
36+
- Scenarios:
37+
- Onboarding/import/export; chain switching; balances; transfers (all ecosystems)
38+
- Reown: connect → sign → disconnect with representative dapps
39+
- Prices/assets: refresh, sorting, remote sync
40+
- Staking: screens render; basic read flows
41+
- Regression: deep links, QR scanner, backup/restore, haptics/biometrics
42+
43+
## Exit Criteria
44+
45+
- Crash‑free sessions ≥ 99.5% on beta cohort
46+
- No P0/P1 issues in core flows (onboarding, transfer, Reown)
47+
- Basic staking and transfer flows pass across ecosystems
48+
49+
## Build & Verify
50+
51+
- Alignment: `./gradlew printPolkadotSdkAlignment`
52+
- Static analysis: `./gradlew detektAll`
53+
- Unit tests + coverage: `./gradlew runTest`
54+
- Lint (app): `./gradlew :app:lint`
55+
- Full sequence: `./gradlew postMergeVerify`
56+
57+
## Release Notes (Play)
58+
59+
- Enable TON features publicly; add Coinbase provider
60+
- Migrate WalletConnect to Reown SDK
61+
- New price service and remote asset sync
62+
- Toolchain upgrades for Google Play requirements
63+
- Stability and UX fixes
64+

docs/releases/4.2.0.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Fearless Android 4.2.0 (stable)
2+
3+
## Summary
4+
5+
Promote 4.2.0 from 4.2.0‑beta.1 with no functional changes. Stability verified across core flows and ecosystems.
6+
7+
## Changes Since 4.2.0‑beta.1
8+
9+
- No functional changes; version bump only
10+
- Continue to monitor crash/ANR metrics and session health
11+
12+
## Rollout Plan
13+
14+
- Staged rollout: 10% → 25% → 50% → 100%
15+
- Halt criteria: crash‑free drop > 0.5% or new P0/P1 defects in core flows
16+
17+
## Store Notes (Play)
18+
19+
- Use the same release notes as the beta
20+
- Attach links to docs/releases/4.2.0-beta.md for internal reference
21+
22+
## Post‑Release
23+
24+
- Tag: `git tag -s 4.2.0 -m "fearless-Android 4.2.0" && git push origin 4.2.0`
25+
- Create `4.2.x` patch branch if needed
26+
- Update `docs/status.md` and `docs/roadmap.md` to reflect current state
27+

docs/releases/PROCESS.md

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
# Release Process (Android)
2+
3+
This document standardizes how we cut beta and stable releases for Fearless Android.
4+
5+
## Versioning & Branching
6+
7+
- Versioning: semantic with optional pre-release suffix.
8+
- Beta: `4.2.0-beta.1`, Stable: `4.2.0`.
9+
- Update in root `build.gradle`: `versionName`, increment `versionCode`.
10+
- Branching:
11+
- Work branch: feature/stabilization or release/docs-x.y.z
12+
- Open a PR to `develop` (or the release branch if used), then merge to `master` when promoted.
13+
- Tags (signed):
14+
- Beta: `git tag -s 4.2.0-beta.1 -m "fearless-Android 4.2.0-beta.1"`
15+
- Stable: `git tag -s 4.2.0 -m "fearless-Android 4.2.0"`
16+
17+
## Preconditions
18+
19+
- Toolchain: JDK 21, Android SDK 35 + build-tools 35.0.0, NDK r28 (and legacy r25 if needed), Rust toolchain.
20+
- Secrets: configured via env or `local.properties` (see README / docs samples).
21+
- Optional alignment overrides (first run mirrors): `TYPES_URL_OVERRIDE`, `DEFAULT_V13_TYPES_URL_OVERRIDE`, `CHAINS_URL_OVERRIDE`.
22+
23+
## Pre‑Release Checklist
24+
25+
- Alignment print:
26+
- `./gradlew printPolkadotSdkAlignment`
27+
- Confirm effective URLs and shared_features pin (or "(not pinned)").
28+
- Static analysis:
29+
- `./gradlew detektAll`
30+
- Unit tests + coverage:
31+
- `./gradlew runTest`
32+
- Inspect `*/build/reports/tests/testDebugUnitTest/index.html`.
33+
- Lint (app):
34+
- `./gradlew :app:lint`
35+
- Full sequence (fast‑fail ordered):
36+
- `./gradlew postMergeVerify`
37+
- Update docs:
38+
- `CHANGELOG.md` with a concise, user‑facing summary.
39+
- `docs/releases/<version>.md` with scope, risks, test matrix, rollout.
40+
41+
## Beta Release
42+
43+
- Bump version to `x.y.z-beta.n`.
44+
- Build:
45+
- `./gradlew :app:assembleRelease`
46+
- Upload (CI recommended):
47+
- Use Gradle Play Publisher or your CI step to release to an internal/closed track.
48+
- Monitor:
49+
- Crash/ANR, Play pre‑launch report, QA regression, dapp sessions (Reown).
50+
- Exit criteria:
51+
- Crash‑free ≥ 99.5%, no P0/P1 blocking issues in core flows.
52+
53+
## Stable Release
54+
55+
- Bump version to `x.y.z` (remove `-beta.*`).
56+
- Tag and push (signed):
57+
- `git tag -s x.y.z -m "fearless-Android x.y.z" && git push origin x.y.z`
58+
- Staged rollout:
59+
- 10% → 25% → 50% → 100%, monitoring crash‑free and error rates.
60+
- Post‑release:
61+
- Create `x.y.z` GitHub Release notes (paste from changelog).
62+
- Consider `x.y.(z+1)` patch branch if hotfixes expected.
63+
64+
## CI/CD Integration
65+
66+
- GitHub Actions:
67+
- Runs detekt, tests, lint, assemble. Prints Polkadot SDK alignment early.
68+
- Jenkins (PRs):
69+
- `testCmd: runTest` for unit tests; use `postMergeVerify` on demand for full checks.
70+
- Stability guards:
71+
- Ordered tasks to avoid DataBinding races; Gradle parallel disabled in Jenkins.
72+
73+
## Store Submission Notes
74+
75+
- Play track: Beta to internal/closed; stable to production (staged).
76+
- Signing: CI or Play App Signing as configured.
77+
- Release text: summarized from `CHANGELOG.md` and `docs/releases/<version>.md`.
78+
79+
## Rollback
80+
81+
- Halt staged rollout in Play if metrics degrade.
82+
- Revert tag and bump hotfix `x.y.(z+1)` if needed.
83+
- Communicate in PR and `docs/status.md`.
84+
85+
## PR Template (Release Docs or Bump)
86+
87+
- Use the repository PR checklist; include:
88+
- Version changes, tags planned.
89+
- Links to release docs and changelog.
90+
- Evidence of detekt/tests/lint runs (local or CI).
91+

0 commit comments

Comments
 (0)