-
Notifications
You must be signed in to change notification settings - Fork 134
Closed
Description
🚀 Feature Request
Implement the foundational event-driven system and workflow architecture for the Devr.AI bots.
📌 Description
We need to establish the core event-driven architecture that will serve as the backbone for all platform integrations. This system should allow for modular testing of individual bot components before integrating them into the unified workflow.
🎯 Targets
1. Event Bus System
- Define standardized event schema for cross-platform compatibility
- Create base event class with common fields (platform, event_type, timestamp, actor)
- Implement platform-specific event classes for GitHub, Discord, Slack, Discourse
- Create event producers for each platform
- Implement event consumers with appropriate routing logic
- Implement event serialization/deserialization with proper error handling
2. Event Handler Implementation
- Can be encapsulated as of now with a general class and base functions, later on to be extended as per individual bot's workflow which can be done via inheritance in individual bots.
-
IssueHandler- For GitHub issue events -
PRHandler- For GitHub PR events -
MessageHandler- For Discord/Slack messages -
OnboardingHandler- For new contributor detection -
FAQHandler- For knowledge-based questions
-
- Create handler registry system for dynamic event routing
- Fallback/Retry Mechanism
3. Vector DB Interactions
- Create a
VectorDBServiceclass for Supabase vector operations - Implement
EmbeddingGeneratorservice - Design caching mechanism for frequent queries
4. Analytics Data Collection Updates
- Create event listeners for analytics events
- Can be extended as per dashboard
- Pipeline for aggregating and storing events/updates (Preferably will redirect to the dashboard config part)
5. Event Processing Pipeline
- Implement
EventEnricherservice to add context to events - Create
EventPrioritizerto determine processing order - Implement
EventRouterto direct events to appropriate handlers - Design
ProcessingPipelineclass with middleware support
6. Configuration Management
- Create configuration system for managing bot settings
- Implement feature flags for gradual rollout
- Add logging and monitoring hooks throughout the system
Initial start can be highly encapsulated with some tests of individual components preferably of directing/workflow
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels