-
Notifications
You must be signed in to change notification settings - Fork 0
Add keyboard-driven wall height editing to the desktop shell #23
Copy link
Copy link
Open
Labels
ai-readyPortable work packet ready for human-and-AI implementationPortable work packet ready for human-and-AI implementationarea:appDesktop application, interaction, and renderingDesktop application, interaction, and renderingarea:modelSemantic BIM model and validationSemantic BIM model and validationhelp wantedExtra attention is neededExtra attention is neededkind:implementationBounded implementation workBounded implementation workreview:bimBIM or VDC domain review requestedBIM or VDC domain review requestedreview:rustRust API or implementation review requestedRust API or implementation review requestedsize:sOne narrow crate sliceOne narrow crate slicestate:readyReady for a contributor to claimReady for a contributor to claim
Description
Metadata
Metadata
Assignees
Labels
ai-readyPortable work packet ready for human-and-AI implementationPortable work packet ready for human-and-AI implementationarea:appDesktop application, interaction, and renderingDesktop application, interaction, and renderingarea:modelSemantic BIM model and validationSemantic BIM model and validationhelp wantedExtra attention is neededExtra attention is neededkind:implementationBounded implementation workBounded implementation workreview:bimBIM or VDC domain review requestedBIM or VDC domain review requestedreview:rustRust API or implementation review requestedRust API or implementation review requestedsize:sOne narrow crate sliceOne narrow crate slicestate:readyReady for a contributor to claimReady for a contributor to claim
Outcome
Let a user increase or decrease the demo wall height from the native Rustit window, regenerate its neutral mesh, and see the changed wall without replacing its stable
ElementId.Truth source
Wall Lab A starts at 3.0 m. Page Up increases height by 0.1 m and Page Down decreases it by 0.1 m. After two increases, semantic and mesh height are 3.2 m. An edit that would reach zero is rejected and leaves the previous wall and mesh intact.
Invariants
MeshExpected scope
Handle two keyboard events in
rustit-app, invoke domain validation, regenerate throughGeometryKernel, update renderer buffers safely, and add pure tests around the edit/regeneration path.Non-goals
A widget framework, property palette, undo/redo, transactions, arbitrary text input, multiple walls, and persistence.
Acceptance and evidence
cargo xtask verifypassDependencies: #5. Coordinate with mesh mapping #13, but do not combine both packets unless required by review.