1.3 KiB
1.3 KiB
| id | title | status | assignee | created_date | updated_date | labels | milestone | dependencies | parent_task_id | priority | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TASK-118.8 | Add lightweight sync to rphotos (shared album curation) | Done | 2026-03-16 00:06 | 2026-03-16 00:50 |
|
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, annotationsmodules/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
Implementation Notes
schemas.ts + local-first-client.ts created