Skip to content

hackbot: Slack notifications unfurl every link, so a two-line message renders as a screenful #6612

Description

@msujaws

Problem

PostMessageHandler.apply calls chat_postMessage(channel=..., text=...) (libs/hackbot-runtime/hackbot_runtime/actions/handlers/slack_handler.py:43) and takes Slack's unfurl defaults. Both agents that post are link-dense by design, so every notification renders several times taller than it reads:

  • agents/frontend-triage/hackbot_agents/frontend_triage/notify.py sends exactly two lines — a Bugzilla link with the run's one-line summary, and a link to the run. The whole point of the message is that it is two lines.
  • agents/test-repair/hackbot_agents/test_repair/notify.py sends six links in six lines: Treeherder, Taskcluster, two hg.mozilla.org revisions, a github.com commit, and the run.

The links themselves are already in <url|label> form, which is what makes them readable; the unfurl is a chat.postMessage argument, not a formatting question.

Change

Pass unfurl_links=False, unfurl_media=False in slack_handler.py. One change in the shared handler rather than a per-action flag: there is no channel that wants the other behavior, and a flag is a knob to forget. Affects #hnt-dev-triage, #android-core-dev, #installer-updater-bug-triage, #privacy-team-automation, and test-repair's #sheriff-notifications.

Done when: test_slack_handler.py asserts chat_postMessage is called with both params false.

Scope

Independent of everything else and can land on its own. I am filing it separately from the Slack action-button work for that reason — it needs no schema change, no new config, and no Slack app change.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions