Requirements: FR-063, SC-001, SC-002, SC-003 in specs/011-meeting-details-redesign/requirements.md. State model: state-matrix.md in the same directory.
Branch: PRs for this issue target the integration branch feat/meeting-details-v2, not main. Nothing in this epic reaches production until the release PR #3249 merges.
Design: https://claude.ai/design/p/c70cdcac-911f-4337-9d87-3daed9d85f58?file=Meeting+Details.dc.html&via=share
Prototype settings panel: time / viewer / privacy / rsvpTracking / pastAccess / myRsvp / recur / via / pageStatus. Its look and feel differs from the current app on purpose — follow it.
Epic: #1765 · Meetings v2 epic: #1451 · Plan ID: E5-04 · Size: L · Depends on: E0-04, E1–E4
Delivery: this ships as part of meeting details V2, side by side with the existing page, behind MEETING_V2_ENABLED_FLAG. Do not modify, refactor or delete the existing meeting details page. V1 stays fully functional and is what untargeted users see. Parent: Meetings v2 epic #1451. Full rules in #1765.
Components: follow the prototype for design, but build it from the existing lfx-* components in app/shared/components/. Extend a wrapper before forking it; create a new component only when the design can't be expressed otherwise, and say so in the PR.
Scope. Both spec files — meeting-details.spec.ts (content: copy, CTA labels, route transitions, dialogs) and meeting-details-robust.spec.ts (structural: testid presence/nesting/counts, data-kind / data-state values). Cover the eight presets in §6 plus the error path via page.route().
Acceptance criteria
Filed from meeting-details-redesign-implementation-plan.md (revised 2026-09-23).
Design: https://claude.ai/design/p/c70cdcac-911f-4337-9d87-3daed9d85f58?file=Meeting+Details.dc.html&via=share
Epic: #1765 · Meetings v2 epic: #1451 · Plan ID:
E5-04· Size: L · Depends on: E0-04, E1–E4Scope. Both spec files —
meeting-details.spec.ts(content: copy, CTA labels, route transitions, dialogs) andmeeting-details-robust.spec.ts(structural: testid presence/nesting/counts,data-kind/data-statevalues). Cover the eight presets in §6 plus the error path viapage.route().Acceptance criteria
networkidle.quality-check.ymlhas the job commented out) — see H-08.Filed from
meeting-details-redesign-implementation-plan.md(revised 2026-09-23).