BS-PR-603 - Editor session persistence and crash diagnostics #41
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#41
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?
Summary
Restore a productive editor session after restart and make abnormal termination actionable.
Scope
Acceptance criteria
Current-state audit (2026-07-10):
Already persisted machine-locally:
UserPreferences.dock_layout),Confirmed gaps:
editor_prefs.ronhas no explicit schema version or migration layer;SceneIofrom the compiled default scene rather than a versioned last-session record;CameraBookmarksis memory-only;Implementation direction for the next slice:
blacksite-editor/session.ron) from durable user preferences;Implemented locally and acceptance-tested end to end.
Delivered:
session.ronschema v1 in the XDG user-state directory, written transactionally and kept outside project source control.Live acceptance evidence:
Alt+F4persistedclean_shutdown: true; clean relaunch restoredassets/levels/editor_scene.scn.ronwith no recovery prompt.SIGKILLleftclean_shutdown: false; relaunch displayed the recovery prompt.Verification:
cargo fmt --all -- --checkgit diff --checkcargo clippy --workspace --all-targets -- -D warningscargo clippy -p editor --all-targets --features dev -- -D warningscargo test --workspace: 141 passed, 1 intentionally ignoredcargo validate-levels: okThe rebuilt editor is left open after a final clean launch.