feat: board-first orchestration with Gateway Bridge, live-update, and flow-board
CI - Build & Test / Backend (.NET) (push) Successful in 1m19s
CI - Build & Test / Frontend (Vue/TS) (push) Successful in 18s
CI - Build & Test / Security Check (push) Successful in 3s

- GatewayBridgeController: MCP-artiger Kommando-Adapter für Agent-zu-Backend
- TaskBridgeService + LiveUpdateService: SSE Live-Sync + Bridge-Kommandos
- FlowBoard.vue: Board-first orchestration dashboard panel
- live-sync.ts store + live.ts service: SSE-basierte Live-Updates
- Nullability-Warnung in HealthController.cs gefixt
- nginx.conf: SSE-Proxy + CORS für Bridge-Endpunkte
- .gitignore: pnpm/corepack local caches ausgeschlossen
- docs: architecture-board-first-orchestration.md hinzugefügt
- README: Backend Bridge API dokumentiert
This commit is contained in:
2026-06-22 19:56:45 +02:00
parent de1fc198cb
commit df94ed3cd4
34 changed files with 2115 additions and 118 deletions
+36 -1
View File
@@ -93,7 +93,11 @@ public sealed record DashboardTaskDto(
bool IsAgentTask = false,
string? ExpectedFrom = null,
string? LastActivityMessage = null,
DateTimeOffset? LastActivityAt = null
DateTimeOffset? LastActivityAt = null,
List<DashboardTaskDto>? ChildTasks = null,
int ChildTaskCount = 0,
int OpenChildTaskCount = 0,
bool HasVisibleDelegation = false
);
public sealed record CreateDashboardTaskRequest(
@@ -182,3 +186,34 @@ public sealed record NotificationDto(
);
public sealed record UnreadCountDto(int Count);
public sealed record LiveUpdateEnvelope(
string Type,
DateTimeOffset Timestamp,
object Payload,
long Sequence,
string Channel
);
public sealed record LiveCursorDto(
long Sequence,
DateTimeOffset Timestamp,
string Mode
);
public sealed record NotificationSnapshotDto(
List<NotificationDto> Notifications,
int UnreadCount,
string ForUser
);
public sealed record DashboardLiveSnapshotDto(
BoardResponse Board,
NotificationSnapshotDto Notifications,
LiveCursorDto Cursor
);
public sealed record DashboardLiveEventDto(
LiveUpdateEnvelope Envelope,
LiveCursorDto Cursor
);