IOC Desktop UI — architecture

Main.cs         STA process, named mutex/events, lifecycle, WinEvent hooks,
                hotkey registration, tray, monitor changes, shared timer.
Native.cs       Documented Win32 interop, window detection, shell icons,
                DWM thumbnails, AppBar, memory/CPU/power APIs.
Config.cs       Validated JSON profile, atomic replacement and backup,
                damaged-profile recovery, current-user Run registration.
Theme.cs        Dynamic WPF resources, eight palettes, shared UI components.
Locale.cs       RU / KK / EN keyed primary UI strings.
Panels.cs       TopBar with AppBar work-area reservation, floating Dock,
                pinned/running applications, window previews and menus.
Launcher.cs     STA shell/Start menu index; asynchronous fuzzy and translit
                search; arithmetic parser restricted to numeric expressions.
Services.cs     Monitoring, launch actions, Core Audio COM, WMI brightness,
                wallpaper backup/restore and explicit power confirmations.
Dashboard.cs    Live cards, local notes, drag ordering; Control Center;
                manual multiwindow arrangements and monitor selection.
Settings.cs     Native settings pages, import/export and custom accent.
Updater.cs      Bounded HTTPS downloads, RSA-signed manifest, SHA-256 package.
Tests.cs        Offline automated unit/native integration tests.
Diagnostics.cs Isolated test-window operations and layout checks.
installer/     NSIS per-user setup and uninstaller; RU/KK/EN resources.

No frontend server, generic command execution IPC, Explorer injection,
system DLL changes, Windows services, telemetry, or bundled compilers.
Persistent OS changes: optional per-user Run value; explicitly selected
wallpaper with a stored original; installer registration and shortcuts.
AppBar reservation is removed on graceful exit; Explorer owns registration.

The background shell samples light native counters every 2 seconds
(5 seconds in low-resource mode). A WinEvent hook marks window data dirty;
enumeration is coalesced to once per second with a 10-second fallback.
Start-menu/AppsFolder indexing runs on a separate STA thread.
File contents are not indexed.

Actual compatibility limits, scope omissions and test results are documented
in README.txt and TEST-REPORT.txt. This is not the Rust/Tauri workspace from
the original preferred architecture.

Official API references used:
https://learn.microsoft.com/windows/win32/api/shellapi/nf-shellapi-shappbarmessage
https://learn.microsoft.com/windows/win32/api/winuser/nf-winuser-enumwindows
https://learn.microsoft.com/windows/win32/api/endpointvolume/nn-endpointvolume-iaudioendpointvolume
https://learn.microsoft.com/windows/win32/dwm/thumbnail-ovw
https://nsis.sourceforge.io/Download
