feat(FN-3040): make peer exchange shutdown deterministic and improve dashbo

This merge lands seven features and fixes across the dashboard and engine. Notable changes: restructured TodoView rows with improved action row styling, added `/clear` command to Chat and QuickChat, persisted session banner dismissals with a hide-banner setting, made peer exchange shutdown determini

Fusion-Task-Id: FN-3040
This commit is contained in:
Fusion
2026-05-01 13:32:23 -07:00
committed by gsxdsm
parent 4fb90bcc94
commit 8b7f20f207
7 changed files with 143 additions and 7 deletions

View File

@@ -48,6 +48,12 @@ import { TriageProcessor } from "../triage.js";
* - Graceful shutdown with configurable timeout
* - Automatic orphaned task recovery on startup
*
* Lifecycle boundary:
* - Mesh networking services (PeerExchangeService + mDNS discovery) are process-level
* concerns owned by CLI startup paths (`runServe`/`runDashboard`) because discovery
* requires the final bound HTTP port. InProcessRuntime remains project-scoped and
* intentionally does not start process-level mesh services.
*
* @example
* ```typescript
* const config: ProjectRuntimeConfig = {