Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 24562bd10d496a41b56a1d593737f1adcb2188f0
      
https://github.com/WebKit/WebKit/commit/24562bd10d496a41b56a1d593737f1adcb2188f0
  Author: Ryan Haddad <[email protected]>
  Date:   2026-08-25 (Tue, 25 Aug 2026)

  Changed paths:
    M Tools/WebKitBot/src/CommandParser.mjs
    M Tools/WebKitBot/src/WebKitBot.mjs
    M Tools/WebKitBot/tests/WebKitBot.test.mjs

  Log Message:
  -----------
  [webkitbot] webkitbot fails to parse identifiers when they are linkified in 
Slack
https://bugs.webkit.org/show_bug.cgi?id=253031
rdar://105998389

Reviewed by Aakash Jain.

A commit identifier such as 319186@main matches local@domain, so Slack treats 
it as an
email address and linkifies it, delivering the message text to @webkitbot as:

    <@UBOT> revert <mailto:319186@main|319186@main> Causes MotionMark regression

The text extraction only unwrapped <https://url|label> links, so the mailto 
wrapper
survived preprocessing. This caused the whole argument list to fall through to 
the "reason",
resulting in the "Failed to parse revision and reason" response.

In addition to unwrapping mailto links, accept identifiers pasted as 
commits.webkit.org links,
since that is the form webkitbot itself posts and people copy them back into 
the channel.

* Tools/WebKitBot/src/CommandParser.mjs:
(extractRevision): Strip a leading commits.webkit.org URL from each candidate.
(extractTextIfMentioned): Strip Slack's auto-linked email addresses.
* Tools/WebKitBot/src/WebKitBot.mjs:
(WebKitBot.prototype.revertCommand): Log and echo the arguments that failed to 
parse, so
issues like this show up in the pod logs in the future.
* Tools/WebKitBot/tests/WebKitBot.test.mjs: Add coverage for linkified 
identifiers,
commits.webkit.org links, and for leaving user mentions in the reason intact.

Canonical link: https://commits.webkit.org/319815@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to