This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
# Architecture
|
||||
|
||||
YMhut Box is split into a WinUI app and a reusable Core library.
|
||||
|
||||
## Layers
|
||||
|
||||
- `YMhut.Box.WinUI`: window shell, navigation, pages, App Installer update trigger and Windows integration.
|
||||
- `YMhut.Box.Core`: settings, log, HTTP/API, local data, system snapshots, tool catalog and tool execution.
|
||||
- `YMhut.Box.Tests`: MSTest coverage for migration-critical services and tool behavior.
|
||||
|
||||
## Services
|
||||
|
||||
The WinUI app builds a DI container in `AppServices.Configure()` and registers settings, logging, HTTP/API, update, data, system metrics, startup, window state and tool worker services.
|
||||
|
||||
Tool pages call `IToolWorkerService` and `ToolExecutor`; API-backed tools go through `IApiManager`, which owns endpoint resolution, timeout behavior, logging and cache boundaries.
|
||||
|
||||
## Tool Contract
|
||||
|
||||
Every tool is registered as an `IToolModule` with stable metadata. `ToolCatalog` is a static C# registry and no longer reads a runtime tool registry from another project.
|
||||
Reference in New Issue
Block a user