MotirBuilding in public
MOTIR · moooon
onMotir
You’re viewing a public project. Anyone can view it — no account needed. Sign in to submit, upvote, or comment on requests.View-only — you can’t edit work items
MOTIR-436

6.14.6 Detail child-panel UI — a private epic’s detail page shows the "not public" statement instead of its children

Done
Description

Estimate: 40m · Depends on: 6.14.1, 6.14.4

Build the work-item DETAIL child-panel placeholder per the 6.14.1 design, over the 6.14.4 enforcement. On a private epic’s detail page, the CHILD PANEL (the panel that lists the epic’s children / sub-issues) shows the "this epic is not public" statement instead of a child list, for a public/non-member viewer.

  • The child-panel placeholder: when the detail child-panel read (6.14.4) returns the "children-hidden" marker + zero children for a non-member, render the "this epic is not public" statement (the 6.14.1 copy, the detail-page framing — distinct from the inline tree row, same copy/tone) in the child-panel slot instead of the child list.
  • No tell leak: the detail page’s epic header / summary must NOT render a child count, progress / rollup, or point total for a non-member (the 6.14.4 projection omits them) — the UI must not reconstruct them.
  • Member parity: a project MEMBER on the same detail page sees the normal child list + the real rollups (the projection returns them) — driven by the marker in the payload, no special-casing.

Uses ONLY shipped components/ui/* + --el-* / [data-display-style] tokens, matching the 6.14.1 design.

Acceptance criteria

  • A public/non-member viewer on a private epic’s detail page sees the "this epic is not public" statement in the CHILD PANEL (the 6.14.1 copy), NOT a child list; no child count / progress / points render in the epic header/summary for the non-member.
  • The placeholder is driven by the 6.14.4 marker (no child in the payload); a project member on the same page sees the children + rollups normally.
  • Only --el-* + [data-display-style] tokens + shipped components/ui/*; matches the 6.14.1 design; AA contrast holds.

Context refs

  • 6.14.1 (design asset — required), 6.14.4 (the detail child-panel read + the marker).
  • the work-item detail page + its child / sub-issue panel — the surface this extends.
  • motir-core/components/ui/* (the EmptyState family) + app/globals.css token layers; motir-core/CLAUDE.md § colour + shape tokens.