Summary
Write Architecture Decision Record documenting the user profile data model and hybrid storage strategy.
Parent Epic
Part of #309 (User Profiles & Personalization)
Dependencies
Deliverables
Profile Fields
| Field |
Type |
Description |
Example |
| callsign |
string (optional) |
Amateur radio callsign |
"W1AW" |
| gridSquare |
string (optional) |
Maidenhead locator (2-8 chars) |
"FN31pr" |
| preferredBands |
string[] |
Preferred frequency bands |
["20m", "40m", "2m"] |
| preferredModes |
string[] |
Preferred operating modes |
["SSB", "FT8", "CW"] |
Storage Strategy
┌─────────────────────────────────────────────────────────┐
│ User Preferences │
├─────────────────────────────────────────────────────────┤
│ Anonymous User Logged-in User │
│ ┌─────────────┐ ┌─────────────┐ │
│ │ LocalStorage│ │ LocalStorage│ │
│ │ (primary) │ │ (cache) │ │
│ └─────────────┘ └──────┬──────┘ │
│ │ sync │
│ ┌──────▼──────┐ │
│ │ PostgreSQL │ │
│ │ (primary) │ │
│ └─────────────┘ │
└─────────────────────────────────────────────────────────┘
Acceptance Criteria
Summary
Write Architecture Decision Record documenting the user profile data model and hybrid storage strategy.
Parent Epic
Part of #309 (User Profiles & Personalization)
Dependencies
Deliverables
docs/adr/004-user-profiles-architecture.mdcovering:user_profilestableProfile Fields
Storage Strategy
Acceptance Criteria