BS-JD-219 - Editor asset dirty state and explicit save transactions #67
Labels
No Label
area:animation
area:assets
area:audio
area:brushes
area:build-release
area:extensions
area:governance
area:hierarchy
area:inspector
area:navigation
area:operators
area:physics
area:project-ux
area:quality
area:rendering
area:runtime
area:scene-io
area:terrain
area:viewport
priority:P0
priority:P1
priority:P2
priority:P3
roadmap:jackdaw
roadmap:production
type:architecture
type:docs
type:epic
type:feature
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Falling-Metal-Interactive/Blacksite#67
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Goal
Introduce editor-owned dirty state for authored asset documents so interactive editing is immediate and filesystem publication happens only through an explicit Save/Save All transaction.
P0 reproduction
Editing a Material parameter updates the viewport in real time, but releasing the slider currently publishes the Material file. That wakes guarded file/collaboration/content processing and stalls the editor for roughly one minute or longer. Pointer release must remain an interactive operation and must not perform source-file publication or project-wide processing.
Product contract
Implementation direction
Acceptance criteria
Non-goals
This does not add a proprietary binary asset database, auto-stage Git files, auto-commit, or replace source RON/image/model files. Background texture/model processing remains separate and may run after explicit save when the saved document actually changes processing inputs.
Child of #59 and required by #65 before M2 closure.
Selected asynchronous processing semantics
process-assets --checkremains the read-only source/derived consistency gate.Engineering implementation remains local and uncommitted. Native/visual acceptance is user-owned; keep this issue open until that acceptance and explicit publication approval.
Corrective implementation boundary
Live overlay/runtime resolver and conditional processing remain in #67. Modular Inspector/Content Browser composition and the permanent architecture-debt ratchet are tracked by #68.
Candidate-ready — commit
cf6eabaThe authored-document/save contract is implemented and verified. The matching UI states are pinned in the Material state catalog and adjusted color overlay.
Candidate gates passed: full workspace tests, strict all-target/all-feature Clippy, deterministic asset check, validators, packaging, documentation audit, and native Inspector/material scenarios.