#523 [API/Race] Signal duplicate send - no idempotency
Description
Edit**File:** api/blueprints/v1/signals.py:33-64
**Problem:** Client retries can send duplicate signals. Both INSERTs succeed, workflow may process signal twice.
**Fix:** Add idempotency key support:
```sql
INSERT INTO workflow_signals (signal_id, workflow_run_id, signal_name, idempotency_key, ...)
VALUES (%s, %s, %s, %s, ...)
ON CONFLICT (workflow_run_id, signal_name, idempotency_key) DO NOTHING
RETURNING signal_id
```
**Impact:** Duplicate signal processing, workflow state corruption.
Comments
Loading comments...
Context
Loading context...
Audit History
View AllLoading audit history...