ADR-012: Device-Local Customization Presets
Status: Accepted
Date: 2026-03-08
Context
The product target is one operator device per user, and each device must keep its own unique customization configuration.
Given this constraint, persisting customization presets in backend APIs/D1 does not provide required business value and adds avoidable complexity.
Decision
Customization presets will be stored and managed locally on-device only.
- Preset data is persisted in browser/device local storage.
- Presets are unique per device and are not synchronized across devices.
- Backend
GET/POST /api/v1/presetsand D1customization_presetstable are not planned. - Multi-device preset synchronization is intentionally excluded from the product design.
Rationale
- Matches operational model: one device per user.
- Preserves uniqueness requirement for each device configuration.
- Reduces backend surface area, migration burden, and failure modes.
- Keeps customization UX fast and available offline.
Consequences
Positive
- No backend dependency for preset save/load.
- Simpler deployment and lower operational cost.
- Better offline reliability during events.
Negative
- No cross-device sharing or backup from backend.
- Device reset/browser data loss can remove presets.
- Admin-level auditing/versioning of presets is not available centrally.
Follow-up
- Document operator backup/export recommendation for local presets.
- Remove backend preset API/database items from RFC execution checklists.