Skip to content

Persist Scenario Studio authoring state - #304

Merged
caoergou merged 1 commit into
mainfrom
agent/issue-286-studio-state
Jul 29, 2026
Merged

caoergou merged 1 commit into
mainfrom
agent/issue-286-studio-state

Conversation

@caoergou

Copy link
Copy Markdown
Owner

Summary

  • persist Scenario Studio layout preferences, including inspector width, canvas mode, and viewport preset
  • preserve the active authoring task, subtool, selected graph node, and selected rehearsal beat across reloads
  • validate stored state, isolate it by authored input, and safely fall back for corrupt, stale, or incompatible values
  • make the inspector splitter keyboard-adjustable with current ARIA values

Why

Scenario Studio already preserved selection during a valid hot reload in memory, but a browser refresh discarded the writer's layout and authoring context. This completes the remaining persistence item in #286 without changing ContentPack, snapshot, or embedded-engine state.

Validation

  • npx vitest run test/scenarioTools.test.ts
  • npm test -- --run
  • npm run typecheck
  • npm run typecheck --workspace @caoergou/xp-scenario-tools
  • changed-file ESLint and Prettier checks
  • npm run guard:nocheck
  • npm run guard:purity
  • npm run scenario:build
  • development and packaged Scenario Studio virtual modules compiled through Vite

Closes #286

@caoergou
caoergou marked this pull request as ready for review July 29, 2026 06:12
@caoergou
caoergou merged commit 9658d20 into main Jul 29, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[P1] Scenario Studio: a browser authoring tool over scenario-tools serve

1 participant