Family-facing archive view: browse the finished collection #129

Open
opened 2026-07-28 16:02:34 +00:00 by claude-bot · 1 comment

Decision

Split out of #121 following a product decision by the user.

The audit recommended against building a family-facing viewer, on the grounds that Immich
already exists and the spec names it as the destination. The user has rejected that reasoning:

"The intended usecase for Circa is very different from Immich. Immich is much more personal;
Circa is intended for a family to see their history."

That is a real distinction. Immich is a personal photo library — one person's timeline, their
device backups, their memories. Circa's output is a shared family history: a dated,
evidence-backed, annotated collection that several people contributed to and that is meant to be
explored as a family record. Those are different products with different browsing models, and the
second is not served well by the first.

So Circa needs its own presentation layer for the finished collection, and #121 is reduced to
verifying Immich interoperability for people who also want their photos there.

What this is

A read-oriented archive view, distinct from the reviewer workspace. The workspace is a work
queue; this is the museum.

  • Timeline browsing across years and decades, driven by the histogram work (#115)
  • Album galleries in physical order (#18), presented as albums rather than as a review backlog
  • A people index from the person registry (#110) — "show me everything with Grandma in it"
  • Search across filenames, notes, comments, and people
  • A photo view that presents the story: the date, who is in it, the comments and recollections
    family members left, and where it sits in the album — without decision controls, evidence
    reliability tiers, or review machinery
  • Shareable within the family, gated by the viewer role (#73)

Design considerations

  • It must degrade gracefully while the collection is partly dated. This will be usable long
    before dating is finished, and undated photos should be presented honestly ("date unknown")
    rather than hidden or guessed at.
  • The reviewer's vocabulary — evidence, precision, reliability, review_version — has no place
    here. A family member should never see the word "projection."
  • Approximate dates should read naturally: "sometime in the 1970s," not "1970-01-01 to
    1979-12-31, precision: decade."
  • This is where the comments finally pay off. "This was the day Dad got the boat" is the point of
    the archive, and the review workspace buries it in a tab.

Relationship to the viewer role

#73 notes the viewer role is defined but unreachable — no user is ever assigned it and no route
enforces it. This feature is what makes that role meaningful: a family member who browses the
finished archive and adds comments, but never decides anything.

Future direction, not in scope

The user has noted that family tree and genealogy tooling may eventually be worth reconsidering
against the non-goals list — but explicitly "very far down the road." Recorded here so the thought
is not lost. Do not scope it into this issue. If it is ever taken up, the person registry
(#110) with birth and death years is the natural foundation, and the archive view is the natural
surface.

Spec amendment required

docs/circa-spec.md currently frames Immich as the family-facing destination. Amend it to state
that Circa provides its own family archive experience, and that Immich interoperability is for
users who also want their photos in a personal library — so the document reflects the actual plan.

Done when

  • A family member can browse the collection by time, album, and person
  • Search covers notes, comments, and people
  • The photo view presents dates and stories in plain language, with no review machinery
  • Undated photos are presented honestly
  • Access is gated by the viewer role
  • The spec reflects that Circa is standalone, not an Immich feeder

References

  • docs/circa-spec.md §16
  • #121 (Immich interoperability, now reduced to that)

Depends on: #73 (viewer role), #110 (person registry), #115 (histogram), #18 (album ordering),
#119 (search).

## Decision Split out of #121 following a product decision by the user. The audit recommended **against** building a family-facing viewer, on the grounds that Immich already exists and the spec names it as the destination. The user has rejected that reasoning: > "The intended usecase for Circa is very different from Immich. Immich is much more personal; > Circa is intended for a family to see their history." That is a real distinction. Immich is a personal photo library — one person's timeline, their device backups, their memories. Circa's output is a **shared family history**: a dated, evidence-backed, annotated collection that several people contributed to and that is meant to be explored *as a family record*. Those are different products with different browsing models, and the second is not served well by the first. So Circa needs its own presentation layer for the finished collection, and #121 is reduced to verifying Immich interoperability for people who also want their photos there. ## What this is A **read-oriented archive view**, distinct from the reviewer workspace. The workspace is a work queue; this is the museum. - Timeline browsing across years and decades, driven by the histogram work (#115) - Album galleries in physical order (#18), presented as albums rather than as a review backlog - A people index from the person registry (#110) — "show me everything with Grandma in it" - Search across filenames, notes, comments, and people - A photo view that presents the *story*: the date, who is in it, the comments and recollections family members left, and where it sits in the album — without decision controls, evidence reliability tiers, or review machinery - Shareable within the family, gated by the `viewer` role (#73) ## Design considerations - **It must degrade gracefully while the collection is partly dated.** This will be usable long before dating is finished, and undated photos should be presented honestly ("date unknown") rather than hidden or guessed at. - The reviewer's vocabulary — evidence, precision, reliability, `review_version` — has no place here. A family member should never see the word "projection." - Approximate dates should read naturally: "sometime in the 1970s," not "1970-01-01 to 1979-12-31, precision: decade." - This is where the *comments* finally pay off. "This was the day Dad got the boat" is the point of the archive, and the review workspace buries it in a tab. ## Relationship to the viewer role #73 notes the `viewer` role is defined but unreachable — no user is ever assigned it and no route enforces it. This feature is what makes that role meaningful: a family member who browses the finished archive and adds comments, but never decides anything. ## Future direction, not in scope The user has noted that family tree and genealogy tooling may eventually be worth reconsidering against the non-goals list — but explicitly "very far down the road." Recorded here so the thought is not lost. **Do not scope it into this issue.** If it is ever taken up, the person registry (#110) with birth and death years is the natural foundation, and the archive view is the natural surface. ## Spec amendment required `docs/circa-spec.md` currently frames Immich as the family-facing destination. Amend it to state that Circa provides its own family archive experience, and that Immich interoperability is for users who also want their photos in a personal library — so the document reflects the actual plan. ## Done when - [ ] A family member can browse the collection by time, album, and person - [ ] Search covers notes, comments, and people - [ ] The photo view presents dates and stories in plain language, with no review machinery - [ ] Undated photos are presented honestly - [ ] Access is gated by the viewer role - [ ] The spec reflects that Circa is standalone, not an Immich feeder ## References - `docs/circa-spec.md` §16 - #121 (Immich interoperability, now reduced to that) Depends on: #73 (viewer role), #110 (person registry), #115 (histogram), #18 (album ordering), #119 (search).
claude-bot added this to the v0.5.0 milestone 2026-07-28 16:02:34 +00:00
Author

Spec amendment done in 66d5e77 — the "Done when" item for it can be considered closed.

docs/circa-spec.md §16 now states that Circa provides its own family-facing archive experience and
must remain useful standalone, and that Immich compatibility serves users who also want a personal
library rather than making Circa a feeder system.

The reasoning is recorded in the spec itself: Immich is a personal photo library — one person's
timeline and their own memories — while Circa's output is a shared family history that several people
contributed to and that is meant to be explored as a family record.

Four requirements were written into the spec alongside it:

  • the archive view is read-oriented, distinct from the reviewer workspace, gated by the viewer role
  • reviewer vocabulary (evidence, precision, reliability, review version) does not appear in it
  • approximate dates read naturally — "sometime in the 1970s", not a raw range plus precision enum
  • it degrades gracefully while the collection is only partly dated, presenting undated photos
    honestly rather than hiding or guessing at them
**Spec amendment done** in 66d5e77 — the "Done when" item for it can be considered closed. `docs/circa-spec.md` §16 now states that Circa provides its own family-facing archive experience and must remain useful standalone, and that Immich compatibility serves users who *also* want a personal library rather than making Circa a feeder system. The reasoning is recorded in the spec itself: Immich is a personal photo library — one person's timeline and their own memories — while Circa's output is a shared family history that several people contributed to and that is meant to be explored as a family record. Four requirements were written into the spec alongside it: - the archive view is read-oriented, distinct from the reviewer workspace, gated by the `viewer` role - reviewer vocabulary (evidence, precision, reliability, review version) does not appear in it - approximate dates read naturally — "sometime in the 1970s", not a raw range plus precision enum - it degrades gracefully while the collection is only partly dated, presenting undated photos honestly rather than hiding or guessing at them
Sign in to join this conversation.
No description provided.