Context
Part of epic #1 — Build production-ready REST microservice with k8s deployment on top of casehub-engine. This provides the mechanism for external systems to send events/signals into running cases to trigger state transitions.
What
Implement signal injection endpoint:
POST /api/v1/cases/{caseId}/signals — send external event/signal into case with payload { signalName, data }
Acceptance Criteria
Notes
- Leverage casehub-engine's signal/event dispatching mechanism
- Check if casehub-engine has built-in signal deduplication (DLQ module from #194, #193)
- Consider adding signal ID for client-side idempotency tracking
- Response should include signal acceptance confirmation, not execution result (async model)
- File paths: casehub-engine's signal handling, WorkerScheduleEventHandler
Context
Part of epic #1 — Build production-ready REST microservice with k8s deployment on top of casehub-engine. This provides the mechanism for external systems to send events/signals into running cases to trigger state transitions.
What
Implement signal injection endpoint:
POST /api/v1/cases/{caseId}/signals— send external event/signal into case with payload{ signalName, data }Acceptance Criteria
Notes