Commit Graph

34 Commits

Author SHA1 Message Date
null 96fdd67e1a docs: add R23-DQ-001 reconcile check to QAPlan Pass N 2026-06-30 19:06:20 -05:00
null a0bd5fa1ac docs(date-memories): update QAPlan with date memories and reflection coverage 2026-06-30 18:15:11 -05:00
null 7cc2e78cfb Revert "docs(date-memories): update QAPlan, Report, iOS parity plan, and glyph README (batch 8/8)"
This reverts commit 6179a46c96.
2026-06-30 18:13:00 -05:00
null 6179a46c96 docs(date-memories): update QAPlan, Report, iOS parity plan, and glyph README (batch 8/8) 2026-06-30 16:52:09 -05:00
null 2a5c40508e feat(notifications): QuietHoursManager + NotificationSettingsScreen rewrite, Cloud Functions (streakReminder, quietHours, reengagement, gameRetention), UserRepository E2EE wiring, SettingsDataStore, firestore rules, wiring-scan 2026-06-30 00:38:06 -05:00
null 912b8c8093 feat(onboarding): RecoveryKeyManager fix, OnboardingScreen polish, build.gradle bump, Future.md planning update 2026-06-29 13:01:08 -05:00
null b5b8ad8df9 feat(games): GameSessionManager cleanup, QuestionSessionRepositoryImpl fixes, HomeViewModel game-state wiring, QA docs 2026-06-29 12:20:07 -05:00
null 403be3939c feat(wheel): finish gate UX polish — bounced-back banner on unanswered prompts, screen-reader live region, ViewModel unit test 2026-06-28 19:54:31 -05:00
null 3970608a1c docs(qa): record O-ONBOARD-001 close + add painter-xml-scan to Pass C scanners in ClaudeQAPlan/Coverage 2026-06-28 16:57:22 -05:00
null faa0d9007f docs: consolidate Future backlog, update ClaudeQAPlan/ClaudeReport, note FUTURE.md removal in Engineering Manual 2026-06-28 12:45:54 -05:00
null 4ee154d8ed docs(qa): update ClaudeQAPlan + ClaudeQACoverage with living-doc guardrails, wiring scanner, and device-matrix honesty 2026-06-28 11:30:29 -05:00
null 3a6ae5c69a feat: theme-scan.sh summary counts, BrandIllustration exclusion, QAPlan scanner-first wiring 2026-06-28 10:50:27 -05:00
null 4deed13845 feat: theme-scan.sh + improved Pass C scanner methodology (tier 1A-1G, tier 2, tier 3 roadmap) 2026-06-28 10:28:17 -05:00
null fe3ea7715c feat: add automated theme-mismatch scanner to Pass C methodology (Tier 1-3) 2026-06-28 10:20:41 -05:00
null 37ed7cebec feat: quiet hours notifications, settings UI, game session updates, docs 2026-06-28 10:00:25 -05:00
null 9f09ebbc67 chore: R12 working tree — QA docs, brand illustration updates, date-match paywall routing, theme tweaks 2026-06-27 15:34:38 -05:00
null 439ae7ce51 docs(manual): review fixes — secure subdoc reveal flow, encryption version accuracy, anchor slug corrections, ToC/how-to updates, helper function list, gitignore case-sensitivity note 2026-06-27 15:00:47 -05:00
null 58d09ac8d3 docs(qa): cross-reference Engineering Reference Manual by Pass with anchor links 2026-06-27 14:51:23 -05:00
null 2cd0af65a8 chore: working tree changes — QA docs, app tweaks, Cloud Functions updates 2026-06-27 13:31:09 -05:00
null e6a8deef67 docs(qa): update report with couple-key encryption, onAnswerRevealed, both-answered unlock 2026-06-26 12:41:22 -05:00
null 96987bf29a docs(qa): merge notification-suite playbook, add report hygiene + finding-routing, clean report/coverage
- ClaudeQAPlan.md: fold the deep notification + join-game suite into Pass E (both-client
  matrix, 6 assertions, expanded inventory, game/join-game suites, payload security,
  malformed/stale tests); add Pass B join-paths + Pass C routes-into-games; add missing
  batch rows G/H; add Report-hygiene (one-confirmation-round prune) + coverage-matrix
  hygiene + easy-to-read mandate; add "Where every finding goes" routing table.
- ClaudeReport.md: collapse stacked R1-R7 run-states + fixed tables to current-state
  (0 open P0-P3; F-RACE-001 pending one confirm; older fixed IDs archived).
- ClaudeQACoverage.md: current-status matrix (flip stale fail->A-001 to pass, drop
  contradictory Pass B footer, add status-at-a-glance, surface todo/deferred).
- removed stray seed/questions/Claude_QA_Playbook_Full_App_QA_Notifications_Merged.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 23:23:30 -05:00
null 4686a2c200 docs(seed): replace question guides with v2 — content guide, rewrite plan, new quality checklist 2026-06-25 18:48:37 -05:00
null 450ddccd16 qa(plan): add Pass H Branding & artwork + ClaudeBrandingReview.md (house style + ChatGPT prompts)
- Pass H: consumer-mindset branding review of every screen; output = ready-to-paste ChatGPT image
  prompts; must lock the house style first (read brand docs + open existing illustrations) so all
  generated art matches the shipped artwork.
- ClaudeBrandingReview.md: canonical House Style prompt prefix + palette + negatives; screen-by-screen
  audit (every route); 12 illustration prompts (A1-A12) + glyph set + pack-art prompt, all reusing the
  house style; flags 'wire existing iOS art into Android' vs new generation.
- Future.md QA: non-art branding ideas (wire iOS illustrations to Android, consistent glyphs, rotate
  privacy messages on auth screens).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 13:46:06 -05:00
null 2545da5c8b qa(plan): play every depth x question-count + consumer mindset; add Future.md (QA backlog)
- Pass B: cover the full depth x round-length matrix (Light/Everyday/Deep/All x 5/10/15), not one combo;
  short+long, shallow+deep, every answer type.
- Methodology: THINK AS A CONSUMER (approach from many angles); capture works-but-could-be-better /
  feature ideas to Future.md '## QA' (kept separate from the ClaudeReport.md bug log).
- New Future.md seeded with 5 grounded QA improvement ideas (inclusive onboarding options, turn-aware
  'waiting to play' copy, rate-limit exemption for high-value pushes, suppress redundant results push,
  friendlier paywall error state).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 13:39:16 -05:00
null 3de4178fd3 qa(plan): add varied gameplay styles, exhaustive nav fuzzing, Pass G account-creation/fake-account
- Pass B: vary style of play (lengths/moods/answer types, result patterns, turn orders, exit/resume
  styles, edge inputs) to hit different code paths.
- Pass C: 'take every avenue' exhaustive nav fuzzing — tap every element, every order, rapid/repeated
  input, interrupt mid-nav, hunt dead-ends/traps.
- Pass G (new): account creation happy path + validation + duplicate/conflict + fake/malicious
  creation attempts (live D3 non-member denial, invite-code abuse, App Check, self-premium).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 12:35:49 -05:00
null 21504098c2 qa(plan): Pass B — play-as-the-user mindset; report-first-then-workaround on any broken flow 2026-06-24 22:27:40 -05:00
null 60a6ce1dbf docs(qa): continue across auto-compaction without the user (file-state is authoritative)
Don't hand back when context fills: harness auto-summarizes + you continue from the committed
run-state + coverage. Can't self-invoke /compact and don't need to. Commit before interruptible
work; session-start ritual recovers stuck sessions. Only true blockers (denied gated action /
macOS) stop the run.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 22:13:48 -05:00
null bbd7ef0806 docs(qa): define per-pass chunk granularity (sub-batch to one context window)
Round-1 calibration: A & D fit as single batches; B/C/E overflowed and got deferred.
Add a batch-sizing table: B=1 game/chunk, C=1 screen-group/chunk, D=~4 sub-areas,
E=3-5 types/chunk, F=1 dimension/chunk. Chunk = largest unit that finishes+commits in one
window; commit + run-state update per chunk.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 21:47:04 -05:00
null 84dd5f1152 docs(qa): senior-QA review additions — Pass F, env/matrix, migration, iOS-native dims
- Pass F (cross-cutting): concurrency/realtime races, lifecycle/process-death, network
  resilience, idempotency/rapid-input, time-dependent (daily rollover/streaks/capsules),
  account/couple lifecycle, crash reporting.
- Methodology: prefer Firebase emulator/staging over prod; device/OS matrix; automate the
  smoke; test-data hygiene.
- Pass D7: encryptionVersion 0->1->2 migration. Reporting/re-QA now A-F.
- iOS: iOS-native QA dims (Dynamic Type/VoiceOver/safe-area/edge-swipe-back/sizes),
  real-device/sandbox needs (App Attest/APNs/StoreKit), crypto golden vectors.
- Logged D-OBS: PERMISSION_DENIED on outcomes/challenges/capsules to investigate in Round 2.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 21:44:02 -05:00
null e907453f3f docs(plan): add Part 2 (build iOS to parity) + Part 3 (iOS QA) — ClaudeiOSPlan.md
Program now Part1 Android QA -> Part2 iOS build -> Part3 iOS QA + cross-platform.
iOS = native SwiftUI (iphone/ scaffold, audit stale at v0.2.0). Decisions: full
Tink-compatible E2EE (Android<->iOS decrypt), working-parity build (no App Store).
Hard constraint: iOS build/run/QA needs macOS (not this Linux box) — Linux = author
Swift + refresh audit only; compile/run/QA deferred to a Mac.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 21:37:26 -05:00
null 16ba464752 docs(qa): autonomous run-to-completion mode — never stop; unblock by fixing; finish to flawless
Adds Execution-mode directive: run all passes -> fixes -> re-QA continuously to a flawless
round without checking in; fix anything that BLOCKS progress inline (stale data, crash, build
break, broken nav) to keep going; context limits = checkpoint not stop. Only a denied gated
action (prod deploy / admin write / entitlement toggle) may be surfaced, after all other work.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 21:28:45 -05:00
null 99f0ae0c49 docs(qa): Pass C also checks navigation from every entry point + back-stack/double-back
UI review now verifies each screen opens correctly from ALL its entry points (inbox/Discuss/
notification, Play/notification, paywall from each gate) and that back (system + in-app)
returns correctly with no dead-ends, exit-app surprises, or two-back/duplicate-stack issues.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 21:26:23 -05:00
null f121eab67f docs(qa): require a full one-time playthrough of each game (not just launch)
Pass B now mandates playing each game end-to-end on both devices (start -> every step ->
finish/reveal/results); launch-only = partial. Reflected in playbook, report run-state,
and coverage (full playthroughs owed in Round 2).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 21:24:08 -05:00
null 64f0a7e6c8 docs(qa): save full-app QA playbook (5 passes: premium, games, visual, security, notifications)
Reusable QA → fix → re-QA plan. Report-only passes with severity labels, then fix
one-at-a-time by severity, then re-QA until flawless. State/resume lives in ClaudeReport.md
+ ClaudeQACoverage.md. Not yet executed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 19:43:19 -05:00