Add AI-powered mental wellness features: Reflection Companion, Pattern Tags, Weekly Digest
Three new Foundation Models features to deepen user engagement with mental wellness: 1. AI Reflection Companion — personalized feedback after completing guided reflections, referencing the user's actual words with personality-pack-adapted tone 2. Mood Pattern Tags — auto-extracts theme tags (work, family, stress, etc.) from notes and reflections, displayed as colored pills on entries 3. Weekly Emotional Digest — BGTask-scheduled Sunday digest with headline, summary, highlight, and intention; shown as card in Insights tab with notification All features: on-device (zero cost), premium-gated, iOS 26+ with graceful degradation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -48,11 +48,28 @@ final class MoodEntryModel {
|
||||
// Guided Reflection
|
||||
var reflectionJSON: String?
|
||||
|
||||
// AI-extracted theme tags (JSON array of strings)
|
||||
var tagsJSON: String?
|
||||
|
||||
// Computed properties
|
||||
var mood: Mood {
|
||||
Mood(rawValue: moodValue) ?? .missing
|
||||
}
|
||||
|
||||
/// Decoded tags from tagsJSON, or empty array if none
|
||||
var tags: [String] {
|
||||
guard let json = tagsJSON, let data = json.data(using: .utf8),
|
||||
let decoded = try? JSONDecoder().decode([String].self, from: data) else {
|
||||
return []
|
||||
}
|
||||
return decoded
|
||||
}
|
||||
|
||||
/// Whether this entry has AI-extracted tags
|
||||
var hasTags: Bool {
|
||||
!tags.isEmpty
|
||||
}
|
||||
|
||||
var moodString: String {
|
||||
mood.strValue
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user