Wire go-config into display orchestrator to replace the in-memory
loadConfig() stub with real .core/gui/config.yaml file loading and
persistence via handleConfigTask.
Co-Authored-By: Virgil <virgil@lethean.io>
Display methods now route through IPC bus instead of direct Manager calls.
Menu/tray setup uses PERFORM. Tray click actions handled via HandleIPCEvents.
WindowInfo aliased from window package. Direct Manager refs removed.
Integration tests verify full 4-service conclave startup and communication.
Service struct no longer holds windows/tray/menus fields — uses windowService()
for direct Manager access where IPC messages are not yet defined.
Co-Authored-By: Virgil <virgil@lethean.io>
Display HandleIPCEvents converts sub-service actions to WS events.
ActionServiceStartup triggers buildMenu/setupTray after all services start.
Export mock platforms from each sub-package for integration tests.
Co-Authored-By: Virgil <virgil@lethean.io>
Menu package is now a full core.Service with typed IPC messages.
TaskSetAppMenu carries MenuItems with OnClick closures (in-process IPC).
Co-Authored-By: Virgil <virgil@lethean.io>
Systray package is now a full core.Service with typed IPC messages.
Menu item clicks emit ActionTrayMenuItemClicked via IPC.
Co-Authored-By: Virgil <virgil@lethean.io>
Window package is now a full core.Service with typed IPC messages.
Register(Platform) factory closure captures platform adapter for WithService.
OnStartup queries config and registers query/task handlers.
Platform events converted to IPC actions via trackWindow.
Co-Authored-By: Virgil <virgil@lethean.io>
Service now delegates to window.Manager, systray.Manager, and menu.Manager
instead of directly using Wails types. WSEventManager accepts EventSource
interface instead of calling application.Get() directly.
AttachWindowListeners now accepts window.PlatformWindow.
Removes migrated files: window.go, window_state.go, layout.go, tray.go, menu.go.
Tests rewritten against mock platform implementations.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Uses reusable workflows from core/go-devops for Go testing
(with race detector and coverage) and security scanning
(govulncheck, gitleaks, trivy).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update Enchantrix, Mining dependency paths and snider/i18n import
to forge.lthn.ai equivalents across go.mod files and imports.
Also update go-i18n pseudo-version to v0.0.1 tag.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
GUI packages, examples, and documentation for building
desktop applications with Go and web technologies.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>