As a curator I want to label quiet spans on the /zeitstrahl (e.g. "Nachkriegsjahre") so readers get narrative context across thin years #829

Open
opened 2026-06-13 19:13:07 +02:00 by marcel · 0 comments
Owner

Curator-authored quiet-span labels on /zeitstrahl

Milestone: Zeitstrahl — Family Timeline (#14)
Deferred from: #779. Canonical visual spec: docs/specs/zeitstrahl-final-spec.html §3 (the 1916 – 1922 · Nachkriegsjahre · 96 Briefe editorial span).

Context & Why

The Concept-A mockup shows a folded multi-year span carrying a curator-authored editorial label — "Nachkriegsjahre" — across a quiet but non-empty run of years (96 letters), giving readers narrative orientation. #779 only folds fully-empty interior year runs (REQ-015, a plain {from}–{to} · keine Einträge); non-empty quiet years render normally as cards or a strip. There is no curator-authored span-label data model today, so the editorial label was fenced out.

Scope

  • Backend: a span-label entity/data model (a [fromYear, toYear] + label, curator-authored, WRITE_ALL) surfaced on TimelineDTO.
  • Frontend: render the label on a (possibly non-empty) folded span; a curator authoring affordance (likely alongside the #9 curator forms).
  • i18n for any chrome.

Out of Scope

  • Empty-edge decades (separate issue); the empty-run folding shipped in #779.

Open Questions (needs-discussion)

  • New entity vs. a special TimelineEvent variant?
  • Interaction with a span that overlaps curated events / world-bands already on the axis?

Follow-up to #779. Harden to EARS REQ-NNN + ACs + RTM before implementation.

# Curator-authored quiet-span labels on /zeitstrahl **Milestone:** Zeitstrahl — Family Timeline (#14) **Deferred from:** #779. **Canonical visual spec:** `docs/specs/zeitstrahl-final-spec.html` §3 (the `1916 – 1922 · Nachkriegsjahre · 96 Briefe` editorial span). ## Context & Why The Concept-A mockup shows a folded multi-year span carrying a **curator-authored editorial label** — "Nachkriegsjahre" — across a quiet but **non-empty** run of years (96 letters), giving readers narrative orientation. #779 only folds **fully-empty** interior year runs (REQ-015, a plain `{from}–{to} · keine Einträge`); non-empty quiet years render normally as cards or a strip. There is **no curator-authored span-label data model** today, so the editorial label was fenced out. ## Scope - Backend: a span-label entity/data model (a `[fromYear, toYear]` + label, curator-authored, `WRITE_ALL`) surfaced on `TimelineDTO`. - Frontend: render the label on a (possibly non-empty) folded span; a curator authoring affordance (likely alongside the #9 curator forms). - i18n for any chrome. ## Out of Scope - Empty-edge decades (separate issue); the empty-run folding shipped in #779. ## Open Questions (`needs-discussion`) - New entity vs. a special `TimelineEvent` variant? - Interaction with a span that overlaps curated events / world-bands already on the axis? _Follow-up to #779. Harden to EARS REQ-NNN + ACs + RTM before implementation._
marcel added this to the Zeitstrahl — Family Timeline milestone 2026-06-13 19:13:07 +02:00
marcel added the P3-laterfeatureneeds-discussionui labels 2026-06-13 19:13:24 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: marcel/familienarchiv#829