Implement Phase 17a Prop Roles UI/UX Specification and associated functionality

- Added UI/UX specification for prop roles and set down mechanics in phase 17a.
- Created `PropStageRoles` script to manage normalized behavior for props, including depth, motion, and collision settings.
- Introduced `StagePhysicsPolicy` for shared physics configurations related to props and actors.
- Developed comprehensive tests for prop roles, including default settings, legacy migration, serialization, and runtime behavior.
- Ensured proper handling of set down actions, including clearance and orientation preservation.
This commit is contained in:
2026-10-09 23:11:34 -04:00
parent 3f66cc3195
commit 1d4a71525a
52 changed files with 20051 additions and 109 deletions
+9 -1
View File
@@ -7,6 +7,14 @@ sandbox_mode = "read-only"
developer_instructions = """
## 1. Kid-Friendly UI Guardrails (10-Year-Old Persona)
* **Shared Stage Inspector UI:** Before proposing an in-stage selected-object inspector, read
`docs/specs/stage_panel_ui_system.md` and inspect the existing controls in
`scripts/shared/stage_ui/`. Treat the shared shell, choice group, toggle row, and
`stage_panels` theme tokens as the default visual and interaction system. Prefer extending
them over inventing a parallel panel style. The system is scoped to in-stage inspectors;
for dialogs or other editor workflows, reuse its visual principles only when their layout
and interaction model fit, and call out any exception.
* **Touch & Click Target Rules:**
* Minimum pointer hit-target: **44×44 logical pixels** (never build tiny 16px/24px buttons).
* Control heights (buttons, dropdowns, rows) must obey `button_min_height` tokens from the theme.
@@ -56,4 +64,4 @@ Output a structured spec covering:
* Theme & Color Tokens (Active state colors, badge accents)
* Cursor & Canvas Feedback (Floating labels, ghost markers, trajectory lines)
* Kid-Friendly Copy Map (Exact string replacements for all visual labels)
"""
"""