-
Notifications
You must be signed in to change notification settings - Fork 0
Evaluate and implement message bus (asyncio queues vs external broker) #8
Copy link
Copy link
Closed
Labels
prio:criticalBlocks other work, must do firstBlocks other work, must do firstscope:large3+ days of work3+ days of workscope:medium1-3 days of work1-3 days of workspec:communicationDESIGN_SPEC Section 5 - Communication ArchitectureDESIGN_SPEC Section 5 - Communication Architecturetype:featureNew feature implementationNew feature implementationtype:researchEvaluate options, make tech decisionsEvaluate options, make tech decisions
Description
Context
Implement inter-agent message bus per design spec sections 5.1 and 15.2. This is the foundational communication layer that all agent-to-agent messaging will be built upon.
Options to evaluate:
- asyncio queues — simplest, in-process, good for single-process deployment
- Redis Pub/Sub — external broker, supports multi-process deployment
- Custom event system — tailored to our needs, medium complexity
The initial implementation should use asyncio queues for simplicity, but the interface must be abstract enough to swap in Redis or another broker later.
Acceptance Criteria
- Abstract message bus interface defined (swappable implementations)
- In-process asyncio queue implementation as default backend
- Pub/sub with named channels (
#engineering,#all-hands, etc.) - Direct messaging between specific agents
- Message persistence (in-memory log with configurable retention)
- Message ordering guarantees (per-channel FIFO)
- Comprehensive unit tests (>80% coverage)
- Design allows future Redis Pub/Sub swap without changing consumers
Dependencies
- Depends on agent engine (Implement agent engine core with ExecutionLoop protocol integration (DESIGN_SPEC §3.1, §6.1, §6.5) #11)
Design Spec Reference
- Section 5.1 — Communication Patterns
- Section 5.4 — Channel Architecture
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
prio:criticalBlocks other work, must do firstBlocks other work, must do firstscope:large3+ days of work3+ days of workscope:medium1-3 days of work1-3 days of workspec:communicationDESIGN_SPEC Section 5 - Communication ArchitectureDESIGN_SPEC Section 5 - Communication Architecturetype:featureNew feature implementationNew feature implementationtype:researchEvaluate options, make tech decisionsEvaluate options, make tech decisions