All DIS-001 through DIS-110 set to status:done with merge dates. BOARD.md reorganized with Done sections per phase. Phase 1.5 Refinement epic added as planning placeholder. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1.3 KiB
1.3 KiB
| id | status | phase | priority | labels | branch | assignee | started | pr | merged | |||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DIS-103 | done | 1 | p0 |
|
phase-1/channel-queue | claude-agent | null | null | 2026-04-10 |
DIS-103: ChannelQueue — Per-Channel-FIFO
Ziel
Mehrere Nachrichten im selben Channel werden strikt seriell abgearbeitet. Parallele Channels bleiben parallel. Keine Race Conditions auf Workspace-Dateien.
Kontext
→ docs/development-plan.md §2.3, Phase 1 Task 3.
Scope
- In:
src/runtime/channel-queue.tsmitChannelQueue-Klasse · Integration inrouter.ts:messageCreateläuft durchchannelQueue.enqueue(channelId, () => runAgent(...)) - Out: Persistente Queue über Prozessneustart
Definition of Done
- Unit-Test
tests/unit/channel-queue.test.ts: FIFO-Ordnung, Error-Recovery (fehlgeschlagene Task blockiert Queue nicht), Map-Cleanup nach leerer Queue - Integration-Test
tests/integration/channel-queue-router.test.ts: drei schnell enqueued Messages werden in Reihenfolge abgearbeitet npm run build && npm testgrün
Dateien (erwartet)
src/runtime/channel-queue.tssrc/router.tstests/unit/channel-queue.test.tstests/integration/channel-queue-router.test.ts
Abhängigkeiten
Blockiert durch: DIS-101.
Spec
→ docs/backlog.md #DIS-103