Part of the rich menu editor epic. Plan: docs/rich-menu-editor-plan.md §2 decision 3. Lands with whichever of Slice A / Slice C ships first.
Menus carry semantic intent; physical placement becomes a backend mapping.
Reconciles with docs/blu-ray-integration-plan.md §1.7: BdMenuType becomes the BD backend's mapping of role, as MenuDomain is DVD's.
Part of the rich menu editor epic. Plan:
docs/rich-menu-editor-plan.md§2 decision 3. Lands with whichever of Slice A / Slice C ships first.Menus carry semantic intent; physical placement becomes a backend mapping.
MenuRoleenum (root,title-select,chapter,setup,extras,popup) onMenuDocumentgeneratorKind(or per-generator ids) toMenuGenerationMeta— today every generator writesgeneratorId: 'menu-workspace', which cannot discriminate chapter vs setup menusPlayChapter→ chapter,SetAudioStream/SetSubtitleStream→ setup) → entry-menu-onlyRoot→TitleSelectfallback; user-reassignable afterwardsMenuDomain(VMGM/VTSM placement)popupauthorable only when the activeFormatProfilesupports it (none until BD)Reconciles with
docs/blu-ray-integration-plan.md§1.7:BdMenuTypebecomes the BD backend's mapping ofrole, asMenuDomainis DVD's.