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

1.2 KiB

id title status assignee created_date labels milestone dependencies parent_task_id priority
TASK-118.8 Add lightweight sync to rphotos (shared album curation) To Do
2026-03-16 00:06
multiplayer
tier-3
Multiplayer Everything
TASK-118 low

Description

rphotos wraps Immich for photo display. Add Automerge sync for shared album curation and selections.

New files:

  • modules/rphotos/schemas.ts — PhotosDoc with albums, selections, annotations
  • modules/rphotos/local-first-client.ts — CRUD: createAlbum, addToAlbum, annotatePhoto

Schema:

PhotosDoc {
  meta: { module: 'photos', collection: 'curation', version: 1 }
  albums: Record<string, { id, name, photoIds[], createdBy, updatedAt }>
  selections: Record<string, { photoId, selectedBy[], note }>
  activeAlbumId: string
}

Photo IDs reference the external Immich instance — this syncs curation metadata only.

Acceptance Criteria

  • #1 Shared albums sync across space members
  • #2 Photo selections and annotations visible to all
  • #3 Demo mode works with local-only state