Commit Graph

11 Commits

Author SHA1 Message Date
airkjw ea42c76f84 docs: Phase 6 implementation plan (icon, sound toggle, juice, l10n, store assets)
9 tasks. Icon + feature graphic drawn via CustomPainter and rasterized to PNG
under flutter test (no SVG tooling), consumed by flutter_launcher_icons. Sound
& vibration toggle follows the repo-backed Notifier pattern. Juice: press
feedback + fade routes + themed settings. Tasks 1-6 subagent-friendly; 7-9
controller-run (KO overflow, screenshots, icon-on-device).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 15:11:45 +09:00
airkjw 84a6749b5e docs: Phase 6 design spec (icon + l10n finalize + juice + store assets)
App icon = clean 2x2 glossy block mark (vector, no AI image). l10n EN/KO
finalize + KO overflow pass. Light juice: sound/haptics toggle, themed
settings, button press feedback, screen transitions. Store feature graphic +
EN/KO screenshots. Procedural visuals mean no raster background assets needed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 15:06:39 +09:00
airkjw c5c6af0313 docs: Phase 5 UMP consent flow verified on simulator (evidence)
First-launch UMP consent form displays, ATT requested, MobileAds SDK
initialized, no crash. Settings gear present, home renders. Banner visual +
sandbox IAP are owner device-test items (consent form blocks automated taps).
2026-06-13 14:29:52 +09:00
airkjw 0781e817d0 docs: Phase 5 monetization (AdMob + IAP) implementation plan
14 tasks: pure-Dart frequency policy (TDD), adsRemoved persistence, ad config
(test ids), AdService/ConsentService/IapService, ref-constructed providers
(single ownership source), rewarded-gated rescue, stage-end interstitial,
home/map banner, settings (remove ads + restore), simulator verification.
Runs on Google test ids today; owner real ids slot in by config later.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 12:50:59 +09:00
airkjw 3a83c0a2b1 docs: add Firebase-integrated build runtime screenshot (evidence)
Firebase Analytics SDK initialized on the iOS simulator; debug build renders
gameplay and (per system log) disables GA4 collection. Evidence for the
analytics wiring milestone.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 12:20:38 +09:00
airkjw 8555397c43 feat: phase 4 remote seasons verified end-to-end; owner hosting guide
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 22:43:53 +09:00
airkjw 63ac8c6b9e docs: add Phase 4 remote seasons implementation plan
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 12:44:41 +09:00
airkjw f9eaa3ae59 docs: polish round simulator screenshots (splash, season card, home)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 07:39:19 +09:00
airkjw a69120e46b docs: add Phase 3.5 commercial polish implementation plan
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 20:52:26 +09:00
airkjw 1397746845 Add Phase 3.5 commercial polish design spec
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 20:38:27 +09:00
airkjw 607278928b Add daily streak system and normalize bundle id to com.airkjw.blockseasons
Pure advanceStreak (1-day grace none, milestone flags at 3/7/14/30),
persisted in the save blob; StreakNotifier advances on every finished
attempt; home screen flame chip and milestone snackbar. Fix flutter
create's camelCased iOS bundle id and underscored Android application
id to the agreed lowercase form before any store registration.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 17:25:39 +09:00