fix(telegram): prevent non-abort slash commands from racing chat replies#17899
fix(telegram): prevent non-abort slash commands from racing chat replies#17899
Conversation
|
The formal models extracted constants ( This check is informational (not blocking merges yet). If this change is intentional, follow up by updating the formal models repo or regenerating the extracted artifacts there. |
|
The formal models extracted constants ( This check is informational (not blocking merges yet). If this change is intentional, follow up by updating the formal models repo or regenerating the extracted artifacts there. |
f8b9020 to
5c2f6f2
Compare
|
The formal models extracted constants ( This check is informational (not blocking merges yet). If this change is intentional, follow up by updating the formal models repo or regenerating the extracted artifacts there. |
…ies (openclaw#17899) Merged via /review-pr -> /prepare-pr -> /merge-pr. Prepared head SHA: 5c2f6f2 Co-authored-by: obviyus <[email protected]> Co-authored-by: obviyus <[email protected]> Reviewed-by: @obviyus
…ies (openclaw#17899) Merged via /review-pr -> /prepare-pr -> /merge-pr. Prepared head SHA: 5c2f6f2 Co-authored-by: obviyus <[email protected]> Co-authored-by: obviyus <[email protected]> Reviewed-by: @obviyus
…ies (openclaw#17899) Merged via /review-pr -> /prepare-pr -> /merge-pr. Prepared head SHA: 5c2f6f2 Co-authored-by: obviyus <[email protected]> Co-authored-by: obviyus <[email protected]> Reviewed-by: @obviyus
…ies (openclaw#17899) Merged via /review-pr -> /prepare-pr -> /merge-pr. Prepared head SHA: 5c2f6f2 Co-authored-by: obviyus <[email protected]> Co-authored-by: obviyus <[email protected]> Reviewed-by: @obviyus
…ies (openclaw#17899) Merged via /review-pr -> /prepare-pr -> /merge-pr. Prepared head SHA: 5c2f6f2 Co-authored-by: obviyus <[email protected]> Co-authored-by: obviyus <[email protected]> Reviewed-by: @obviyus
Summary
/status,/model,/queue, etc.) on the normal chat/topic lane/statusRoot cause
getTelegramSequentialKeyrouted all control commands totelegram:<chat>:control, which let non-abort slash commands execute concurrently with in-flight normal message handling. That race could preempt/lose queued follow-up processing from the first run.Validation
pnpm test src/telegram/bot.create-telegram-bot.test.tspnpm test src/telegram/bot.test.tsGreptile Summary
Narrowed Telegram control-lane sequentialization to abort-style commands only (
stop,abort,exit,wait,interrupt,esc), while non-abort slash commands like/status,/model,/queuenow execute on the normal chat/topic lane. This prevents non-abort commands from executing concurrently with in-flight message handling, which could cause race conditions and preempt queued follow-up processing.Confidence Score: 5/5
isAbortTriggerfunction and properly normalizes command bodies. Tests are updated to match the new behavior. The logic is straightforward and the changes are minimal.Last reviewed commit: e629902