rspace-online/backlog/tasks/task-118.7 - Add-lightweigh...

1.4 KiB

id title status assignee created_date updated_date labels milestone dependencies parent_task_id priority
TASK-118.7 Add lightweight sync to rdata (shared analytics dashboard) Done
2026-03-16 00:06 2026-03-16 00:50
multiplayer
tier-3
Multiplayer Everything
TASK-118 low

Description

rdata is a privacy-first analytics dashboard. Add Automerge sync so space members share dashboard configuration and filter state.

New files:

  • modules/rdata/schemas.ts — DataDoc with dashboardConfig, savedViews, filterPresets
  • modules/rdata/local-first-client.ts — CRUD: saveView, updateFilters, setConfig

Schema:

DataDoc {
  meta: { module: 'data', collection: 'dashboard', version: 1 }
  savedViews: Record<string, { id, name, filters, dateRange, metrics[], createdBy }>
  activeViewId: string
  sharedFilters: { dateRange, granularity, segments[] }
}

Component updates:

  • Dashboard filter changes sync between viewers
  • Saved views shared across space members
  • "Follow" mode: one member's view reflected to all

Acceptance Criteria

  • #1 Saved dashboard views sync across space members
  • #2 Filter changes can optionally sync in real-time
  • #3 Demo mode works with local-only state

Implementation Notes

schemas.ts + local-first-client.ts created