mirror of
https://github.com/zvx-echo6/meshai.git
synced 2026-06-11 09:24:44 +02:00
feat(dashboard): embedded FastAPI backend with REST API + WebSocket
- FastAPI runs in MeshAI asyncio loop (no separate process) - REST API: /api/status, /api/health, /api/nodes, /api/edges, /api/regions, /api/sources, /api/config, /api/alerts - WebSocket at /ws/live pushes health updates and alerts - Config CRUD: GET/PUT per section with validation and save - DashboardConfig with port/host in config.yaml
This commit is contained in:
parent
914c21e167
commit
3ec09ad158
17 changed files with 1140 additions and 103 deletions
|
|
@ -257,6 +257,16 @@ class MeshIntelligenceConfig:
|
|||
alert_rules: AlertRulesConfig = field(default_factory=AlertRulesConfig)
|
||||
|
||||
|
||||
|
||||
|
||||
@dataclass
|
||||
class DashboardConfig:
|
||||
"""Web dashboard settings."""
|
||||
|
||||
enabled: bool = True
|
||||
port: int = 8080
|
||||
host: str = "0.0.0.0"
|
||||
|
||||
@dataclass
|
||||
class Config:
|
||||
"""Main configuration container."""
|
||||
|
|
@ -274,6 +284,7 @@ class Config:
|
|||
knowledge: KnowledgeConfig = field(default_factory=KnowledgeConfig)
|
||||
mesh_sources: list[MeshSourceConfig] = field(default_factory=list)
|
||||
mesh_intelligence: MeshIntelligenceConfig = field(default_factory=MeshIntelligenceConfig)
|
||||
dashboard: DashboardConfig = field(default_factory=DashboardConfig)
|
||||
|
||||
_config_path: Optional[Path] = field(default=None, repr=False)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue