Predictable state changes with Redux-inspired state management. ``` type ApplicationState = { config: { currentTarget: ConfigurationTarget; buttons: ButtonConfig[]; validationErrors: ValidationError[]; }; buttonSets: { sets: ButtonSet[]; activeSet: string | null; }; execution: { history: ExecutionHistoryEntry[]; terminals: Map<string, TerminalState>; }; }; class StateManager { dispatch<T>(action: Action<T>): Promise<void>; getState(): Readonly<ApplicationState>; subscribe(selector: StateSelector, callback: SubscriberCallback): Disposable; // Time-travel debugging getStateHistory(): ApplicationState[]; replayActions(actions: Action[]): void; } ``` Reason: State predictability Current: State is distributed across multiple managers Improvement: Single state store + action-based changes - Easier debugging (state change tracking) - Natural implementation of Undo/Redo
Activity
refactor(stores): add zustand-based central state store
refactor(stores): add StoreSync layer for settings synchronization
refactor(stores): convert StatusBarManager to Store-based architecture
refactor(stores): convert StatusBarManager to Store-based architecture
3 remaining items
refactor(stores): convert CommandTreeProvider to Store-based architec…
refactor(stores): implement Store → Settings bidirectional sync
refactor(stores): implement Store → Settings bidirectional sync
refactor(stores): implement Store → Settings bidirectional sync
kubrickcode commentedon Dec 7, 2025
🎉 This issue has been resolved in version 0.10.0 🎉
The release is available on GitHub release
Your semantic-release bot 📦🚀