Skip to main content

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.

  1. Preset data is persisted in browser/device local storage.
  2. Presets are unique per device and are not synchronized across devices.
  3. Backend GET/POST /api/v1/presets and D1 customization_presets table are not planned.
  4. 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.