fix(webapp): dedupe bulk replay triggers#4098
Conversation
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
WalkthroughReplayTaskRunService.call now builds an idempotency key from bulkActionId and the source task run id when bulk replay options are present, otherwise it uses the prior idempotencyKey value. That computed key is forwarded to TriggerTaskService.call. The PR also adds a Vitest test covering the bulk replay key value and a server-changes note describing the bulk replay idempotency behavior. Changes
Sequence Diagram(s)sequenceDiagram
participant ReplayTaskRunService
participant TriggerTaskService
ReplayTaskRunService->>ReplayTaskRunService: compute idempotencyKey from bulkActionId + existingTaskRun.id or fallback
ReplayTaskRunService->>TriggerTaskService: call(options.idempotencyKey)
Related PRs: None identified. Suggested labels: bug, testing Suggested reviewers: None identified. Poem 🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Use
{bulkActionId}:{existingTaskRunId}as idempotency key to prevent duplicate bulk replays.