New Features
· Pack progress display — shows completion count per pack (e.g. "3/10 completed")
· Shareable spoiler-free result card — spine word shown as silhouettes with solve time and streak
· Streak milestone celebrations — visual and haptic rewards at 3, 7, 14, 30, 50, and 100-day milestones
· Daily puzzle pack icon — distinct icon for the daily puzzle in the library
· MetricKit + Axiom integration — crash and hang diagnostics forwarded to Axiom with no user identifiers
· Daily puzzle selection events forwarded to Axiom for operational visibility
· Holiday-themed daily puzzle selection — special puzzles on holidays
· Daily puzzle history — browse past daily puzzles with streak credit gating
Bug Fixes
· Polished daily streak counter display
· Fixed: double acrostic completion view was leaking spine word answers as labels (regression)
· Fixed: app icon now displays correctly in share sheet preview
Testing Tasks
The following should be verified before shipping this release:
· Verify pack progress shows correct completion ratio for each pack
· Verify share card renders spine word as silhouettes (not readable answers)
· Verify share card includes solve time and current streak
· Verify share sheet opens correctly on first tap (no blank sheet)
· Verify app icon appears in share sheet preview
· Verify streak milestone celebration triggers at 3, 7, 14, 30, 50, and 100 days
· Verify milestone celebration includes both visual animation and haptic pattern
· Verify daily puzzle pack icon is distinct from regular pack icons
· Verify MetricKit diagnostic payloads are forwarded to Axiom
· Verify no user identifiers are included in Axiom payloads (privacy check)
· Verify daily puzzle selection events log to Axiom with correct puzzle ID and date
· Verify holiday-themed puzzles appear on configured holiday dates
· Verify daily history view lists past daily puzzles in chronological order
· Verify streak credit gating prevents replaying past dailies for streak credit
· Verify double acrostic completion view does NOT leak answers (regression test)
· Run full unit test suite (LamplitTests) — all tests pass
Not Yet Implemented
The following features are planned but not included in this release:
· Phase 2.3 — Ambient audio loop (crackling fire / rain) — deferred due to licensing
· Phase 6 — Monetization: StoreKit 2 one-time unlock, puzzle packs, hint bundles, streak shields
· Phase 7 — Game Center leaderboards and achievements
· Phase 8 — Launch readiness: privacy manifest, full accessibility audit, localization
· Settings screen — audio/haptic toggles, restore purchases