[Fix] Fast conversations receive duplicate canned PR status updates - #1739
[Fix] Fast conversations receive duplicate canned PR status updates#1739roomote-roomote[bot] wants to merge 8 commits into
Conversation
|
No new code issues found. See task
Reviewed 91d8030 |
|
Addressed the stale-run fallback finding in 91d80305. The terminal notifier now orders runs by descending creation/id and selects one authoritative latest run per task, matching The resumed-run regression covers an older Fast payload, a newer non-Fast run, and a current failed sibling relay, verifying the required direct fallback is not suppressed. Focused API tests pass (30), focused SDK tests pass (11), full lint/typechecking pass, pre-push checks pass, and the review thread is resolved. |
…erge-notifications-27y3lsscwh5ns
What changed
pull_request_status_changedto Fast before the independent Redis/task-history claim, then suppress the matching direct canned target only after that Fast path completes.white_check_markreaction owned by Fast parent-turn setup on success and by the direct notifier only on fallback or non-Fast paths.Why this change was made
Fast child payloads inherit their parent conversation coordinates. The terminal webhook fan-out read those fields as an ordinary direct destination and posted its fixed
was merged/closed bytext into the Fast conversation, independently of the structured platform event that Fast also received.Impact
Fast conversations receive the structured event and report it conversationally in session-owned wording without a preceding canned duplicate. Ordinary task conversations and dedicated child threads retain automated terminal updates. Pre-Fast failures restore the direct message and reaction only for affected tasks; post-Fast history failures do not duplicate either or prevent later linked tasks from being notified.