Files
kandev/backend/internal/events/bus/subscription.go
T
jcfs ba919305c2 Initial commit: Kandev with SQLite persistence and agent integration
Features:
- Unified Go binary running Task Service, Agent Manager, and Orchestrator
- SQLite persistence for boards, columns, and tasks
- Docker-based agent execution with ACP message streaming
- Augment Agent integration with session resumption support
- RESTful API for all operations (port 8080)
- In-memory event bus for service communication

Architecture:
- cmd/kandev: Single entry point for all services
- internal/task: Task, board, and column management
- internal/agent: Docker container lifecycle and ACP streaming
- internal/orchestrator: Agent coordination and monitoring
- internal/events: In-memory pub/sub event bus

Documentation:
- README.md: Project overview and quick start
- docs/ARCHITECTURE.md: System architecture (current + planned)
- docs/GETTING_STARTED.md: Development setup guide
- docs/IMPLEMENTATION_PLAN.md: Original microservices plan
- backend/NEXT_STEPS.md: Development roadmap
2026-01-10 01:30:24 +00:00

26 lines
533 B
Go

package bus
import "github.com/nats-io/nats.go"
// natsSubscription wraps a NATS subscription to implement the Subscription interface
type natsSubscription struct {
sub *nats.Subscription
}
// Unsubscribe removes the subscription from the server
func (s *natsSubscription) Unsubscribe() error {
if s.sub == nil {
return nil
}
return s.sub.Unsubscribe()
}
// IsValid returns whether the subscription is still active
func (s *natsSubscription) IsValid() bool {
if s.sub == nil {
return false
}
return s.sub.IsValid()
}