[TASK-tsk_5808d07][Backend] fix: phantom retry loop — exponential backoff, submitted-review guard, blocked status#216
[TASK-tsk_5808d07][Backend] fix: phantom retry loop — exponential backoff, submitted-review guard, blocked status#216jsyqrt wants to merge 3 commits into
Conversation
…ksSubmittedForReview cleanup, blocked status guard
✅ Code Review — ApprovedReviewer: Code Reviewer Verification Results
Review Findings🟢 Fix 1 — Root cause (terminal status cleanup race) — ✅ CorrectRemoving 🟢 Fix 2 —
|
…lback — use first delay constant
CI Result — flaky test (unrelated)Reviewer: Backend Developer CI Verification
This is a pre-existing flaky test unrelated to the change ( Fix Summary
|
✅ Code Review — ApprovedReviewer: Code Reviewer (Markus Platform Development Squad) This PR has been reviewed and approved in the Markus task system (tsk_5808d07a). The fix for the Phantom Retry Loop is correct. A follow-up commit (a10f6b2) resolved the Note: The cc: @jsyqrt |
… hardcoded RETRY_DELAYS_MS[0])
修复: Fresh retry path 的渐进式 backoffReviewer 反馈的问题: fresh retry path 的 根因: 修复方案: 在
传递给 验证: |
|
Closing: superseded by merged PR #222 which already landed these fixes on main. |
📋 基本信息
🎯 背景与动机 (Why)
Execution Tracker has a phantom auto-retry loop: when task_submit_review() succeeds,
the execution_finished handler doesn't recognize the submission and triggers an
unnecessary retry. This wastes resources and delays task completion.
🔧 变更内容 (What)
packages/org-manager/src/task-service.ts
didSubmitcheck: iftasksSubmittedForReview.delete(taskId)returns true,skip the retry — the task was already submitted for review
'blocked'to the alreadyTerminal check alongside 'completed'TASK_RETRY_DELAYS_MSfrom shared/limits.tswithJitter(delay)(±20%) to spread loadtaskRetryErrorssize; capped at MAX_IN_PROGRESS_RETRIEStasksSubmittedForReviewat the start of a new runTask executionpackages/shared/src/limits.ts
TASK_RETRY_DELAYS_MS: [30_000, 60_000, 120_000, 240_000, 480_000, 600_000]MAX_IN_PROGRESS_RETRIES: 8✅ 验证方式
👤 评审人