Root cause fixes: - Sidebar: handleSidebarItem used item.id instead of item.view for viewId. Platform Test sidebar item has id=verstak.platform-test.sidebar but view=verstak.platform-test.diagnostics. Click now dispatches correct viewId. - PluginManager: EnablePlugin/DisablePlugin only wrote to plugins.json but never re-discovered plugins. UI showed stale state (no Enable button after Disable, no Disable after Enable). Now calls ReloadPlugins() + loadAll() after each toggle. - PluginManager: loadAll() fired async loads (GetCapabilities etc) without awaiting — loading spinner disappeared before data was ready. Now awaits all via Promise.all. - PluginCard: no loading feedback on Enable/Disable buttons. Added actionFeedback prop — buttons show '⟳ Enabling...' / '⟳ Disabling...' and are disabled during operation. - PluginManager: no visible result after Reload/Enable/Disable. Added toast notifications (success/error/info) with auto-dismiss. - Settings: openSettingsFromProps didn't handle missing panel — now shows visible error in modal. |
||
|---|---|---|
| cmd/smoke-platform | ||
| docs | ||
| frontend | ||
| internal | ||
| scripts | ||
| .gitignore | ||
| AGENTS.md | ||
| README.md | ||
| go.mod | ||
| go.sum | ||
| main.go | ||
| wails.json | ||
README.md
verstak-desktop
Verstak Core Platform + UI Shell — plugin runtime, capability registry, vault API, event bus, sync client