The final tracker layer per design §3.4 / §3.6 / §11 polish list:
- Per-proceeding "· Gewählt · / Alle Optionen" toggle (§3.4) lives in
the card header next to the show/hide button. State persists in
localStorage per proceeding code, so a page with multiple cards
can keep one expanded without affecting siblings. Toggle drives the
detail mode for filterByDetailMode + sets includeHidden=true on the
calc, so previously-skipped conditional rules re-surface muted.
- Appeal-target chip group (§3.2 #3) renders below the header on
proceedings with applies_to_target rules — today only upc.apl.unified.
Endentscheidung / Kostenentscheidung / Anordnung / Schadensbemessung
/ Bucheinsicht. Picking a target re-fetches the calc with the
appealTarget param so the timeline narrows to the matching subset.
- Cross-party muted treatment (§3.6) — when the find-header Partei
pill is set, rows whose primary_party is the opposite side render
with a "Gegen." badge and a muted style. Court / both / informational
rows are never cross-party.
- "Unselected" + "hidden" styling — under "Alle Optionen" the rules
that filterByDetailMode stamps __detailUnselected on render dotted
italic, and previously-skipped (isHidden) rules render at reduced
opacity. Honest preview of what the user is NOT considering.
- Cross-surface scenario-flag-changed listener — the tracker now reseeds
its flags state when Mode B / Verfahrensablauf / Verlauf patches the
same project's flags, so toggling there flows through here without a
refresh.
Out of T4 (court-set choices_offered chip groups and the court-set date
override from appointments) — those need a follow-up backend pass to
surface the choicesOffered payload on TimelineEntry through the calc
response in a usable shape. The data field exists on CalculatedDeadline
but isn't yet wired to a paint route on the tracker.
t-paliad-338