Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
5a7c1d1
docs: add Concept 1 The Zen Scene Editor with floating Action Island
ScottMorris Apr 6, 2026
718e783
docs: add Concept 2 The Component Boutique
ScottMorris Apr 6, 2026
e8b19ae
docs: add Concept 3 The Transit Map for Navigation
ScottMorris Apr 6, 2026
7eef195
docs: add Concept 4 The Timeline for Motion-Aware Architecture
ScottMorris Apr 6, 2026
95170bb
docs: add Concept 5 The Honest Compile Preview for Diagnostics
ScottMorris Apr 6, 2026
e37c2d5
style: remove all caps and uppercase styling from headings and titles
ScottMorris Apr 6, 2026
fb34dc5
chore: move Yuli mockups into their own folder
ScottMorris Apr 6, 2026
2a9f0d6
chore: move Yuli mockups to set-1 subdirectory
ScottMorris Apr 6, 2026
fb3ff73
docs: add Concept 1 The Waystation hub-and-spoke unified editor
ScottMorris Apr 6, 2026
15847d6
docs: add Concept 2 The Greenhouse template-first progressive editor
ScottMorris Apr 6, 2026
f1bfe52
docs: add Concept 3 The Cartographer multi-menu navigation map
ScottMorris Apr 6, 2026
9e25466
docs: add Concept 4 The Darkroom state-focused visual editor
ScottMorris Apr 6, 2026
59d281b
docs: add Yuli set 3 menu editor foundations
ScottMorris Apr 7, 2026
20d058a
docs: add final Yuli set 3 menu editor concepts
ScottMorris Apr 7, 2026
b558ddf
docs: add app-native Yuli set 3a foundations
ScottMorris Apr 7, 2026
a818159
docs: add final app-native Yuli set 3a concepts
ScottMorris Apr 7, 2026
f6c12d7
docs: add integrated Yuli set 3b menu editor concepts
ScottMorris Apr 7, 2026
e6aeb28
docs: add merged Yuli set 2m menu editor concept
ScottMorris Apr 7, 2026
eee146e
docs: add Concept 5 The Switchboard action binding workspace
ScottMorris Apr 7, 2026
c184c66
docs: add index page for Yuli's set-2 menu editor concepts
ScottMorris Apr 7, 2026
c1a74e4
docs: add set-2a blended Menu Editor mockup
ScottMorris Apr 7, 2026
9d27ec9
docs: add index page for set-2a mockups
ScottMorris Apr 7, 2026
c1b162b
feat: add set-2b unified editor with inline binding, preview, and nav…
ScottMorris Apr 7, 2026
91bbd98
feat: revise set-2b to restore minimap, fix map arrows, add auto-nav
ScottMorris Apr 7, 2026
3e0542e
fix: map connections, background editing, auto-generate, and bug fixes
ScottMorris Apr 7, 2026
625ff4a
refactor: split `menu-editor.html` into three modular files
ScottMorris Apr 7, 2026
f1572a9
feat: add button/text styles, collapsible inspector, video markers
ScottMorris Apr 7, 2026
b572e49
fix: canvas rendering off-screen due to missing flex height chain
ScottMorris Apr 7, 2026
edac4be
docs: formalize Blu-ray format scaling strategy and agent handoffs fo…
ScottMorris Apr 8, 2026
7a0913c
docs: update Franklin's memory with Set 2b architectural alignment
ScottMorris Apr 8, 2026
5365f9d
chore: apply prettier formatting to mockups
ScottMorris Apr 8, 2026
762a12d
docs: reference format scaling in set-2b spec
ScottMorris Apr 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/agents/memory/edward-memory.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ Prefer structural facts over narration.
- **Technical Trap**: Placeholder-based development can lead to 'Glossy but Broken' UI releases. All authored modes (Bind, Compile, Design, Remote) must be functional before a UI milestone is marked as 'Verified.'
- **Validation Oracle**: The `execute_build_plan_smoke_authors_titleset_menu_return_path` test in the Rust plugin is the primary proof of a working end-to-end authoring loop.
- **Architectural Boundary**: The project model and state are intentionally "format-agnostic" to support future Blu-ray, but implementation logic must remain strictly DVD-Video compliant for now.
- **Product Strategy**: Blu-ray (HDMV/IG) is the primary authoring ceiling. DVD and VCD are targets for graceful degradation. The UI should hide complexity but honestly expose downsampling constraints via the Compile Preview.
- **Technical Trap**: Fluid UI transitions simulated via seamless branching (timecode jumping) require absolute precision with I-frame alignment on sector boundaries to avoid laser seek "clunks".

## Open Questions

Expand Down
2 changes: 2 additions & 0 deletions docs/agents/memory/franklin-memory.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ Prefer durable, reusable context over narration.
- Trust and support surfaces should be checked alongside release surfaces; for example, diagnostics export can drift from runtime versioning even when the main app UI is current.
- The shared filesystem-based agent communication layer now lives under `docs/agents/shared/`, with `context/` for Franklin/Edward broadcast state and `handoffs/<agent>/` inboxes for point-to-point JSON requests and responses.
- The current laptop environment should be treated as container-first for verification work: when Rust tooling or mixed workspace validation is needed, prefer `ghcr.io/liminal-hq/tauri-dev-desktop:latest` rather than assuming host-installed Rust tools are available.
- We have adopted Yuli's Set 2b unified menu editor design, establishing Blu-ray (HDMV/IG) as the primary authoring ceiling and DVD/VCD as a graceful degradation floor managed via the Compile Preview overlay.
- Seamless branching (multiplexed BOV) for UI states and SPRM manipulation (`setAudioStream`, `setSubtitleStream`) are now confirmed backend requirements that the compiler and multiplexer must support reliably.

## Open Questions

Expand Down
36 changes: 36 additions & 0 deletions docs/menu-editor-set-2b-format-scaling.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Menu Editor Set 2b Format Scaling and Hardware Reality

## Strategic Context

The Spindle project targets Blu-ray (HDMV with Interactive Graphics/IG) as the primary authoring ceiling, and DVD (or VCD) as the graceful degradation floor. This approach shifts our design philosophy from "build for the lowest common denominator" to "design for premium and downsample gracefully."

## 1. The Blu-ray Baseline

Yuli's Set 2b designs, particularly the `Button Style` and `Text Style` panels, are completely valid under the Blu-ray specification. HDMV Interactive Graphics streams can handle:

- 8-bit color depth
- 256 levels of alpha transparency
- Rich interactive states (Focus and Activate)
- Complex visual effects like soft drop shadows and glowing borders

## 2. Graceful Degradation (The Preview Compass)

If DVD is the floor, the interface must honestly manage the constraints.

- **Format-Aware Interface:** When a user specifies they are authoring only for DVD, the UI should gracefully fold away 8-bit alpha controls and present the 4-color CLUT (Color Look-Up Table).
- **The Compile Preview Overlay:** When authoring for "Blu-ray + DVD Fallback", the `Compile Preview` overlay becomes the most vital compass in the application. Toggled via the `P` key, this overlay must show the user precisely how their rich Blu-ray UI will be downsampled (dithered into harsh blocks or flattened) when compiled to DVD subpictures. It translates BD ambition into DVD reality.

## 3. Seamless Branching for UI States (The Timecode Jump Illusion)

To achieve modern, fluid UI states on constrained optical formats, Spindle will employ seamless branching and multiplexed Button Over Video (BOV).

- **The Magic Trick:** By jumping the playhead to a different timecode in the background multiplex when a button is pressed, we can simulate "transitions."
- **The Mechanical Reality:** This requires incredible precision with I-frame alignment. A timecode jump requires the laser to physically move across the platter. If jumps are not authored perfectly on sector boundaries, the user will experience a half-second black screen and a mechanical "clunk" instead of a fluid transition. Our multiplexing engine must be flawless.

## 4. SPRM Management and the Workspace

The auto-generated menus feature actions like `setAudioStream` and `setSubtitleStream`.

- **The User Experience:** The UI makes this look like a simple dropdown, hiding the complexity. This is the correct approach for the majority of users.
- **The Under-the-Hood Reality:** Spindle must write `SetSystemStream` instructions to SPRM 1 and SPRM 2 in the virtual machine. The compiler logic must be ready to handle these new VM instructions before they are exposed.
- **Advanced Scripting Mode:** We should reserve architectural space for a low-level scripting "advanced mode" (a trapdoor in the basement) where power users can manually manipulate player registers, but this is an extension beyond the v1 workspace.
Loading
Loading