Skip to content

feat(mattermost): add rich markdown support for formatted messages (#59401) - #60464

Open
webtecnica wants to merge 1 commit into
NousResearch:mainfrom
webtecnica:feat/59401-mattermost-markdown
Open

feat(mattermost): add rich markdown support for formatted messages (#59401)#60464
webtecnica wants to merge 1 commit into
NousResearch:mainfrom
webtecnica:feat/59401-mattermost-markdown

Conversation

@webtecnica

Copy link
Copy Markdown
Contributor

Add rich markdown support for Mattermost platform. Adds "props": {"format": "markdown"} to all post payloads. Closes #59401

@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have comp/gateway Gateway runner, session dispatch, delivery labels Jul 7, 2026
(cherry picked from commit e73cbb04208ba31b61fc01d782ffa07a35cc7dcc)
@webtecnica
webtecnica force-pushed the feat/59401-mattermost-markdown branch from e73cbb0 to 172e903 Compare July 11, 2026 12:49

@teknium1 teknium1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for covering the Mattermost gateway and its standalone sender consistently.

Problems

  • Required CI is currently red: tests/tools/test_send_message_missing_platforms.py:115 still asserts the old exact standalone payload, while the changed _standalone_send payload now includes props.format. The failed required slice reports TestSendMattermost.test_success.
  • This PR says it closes #59401, but that issue requests an opt-in mattermost.rich_markdown/extended_markdown configuration and a Mattermost-flavored Markdown transformer. Current format_message() already preserves standard Markdown at plugins/platforms/mattermost/adapter.py:476-484; this diff only adds REST payload properties and does not add the requested config or transformation.

Suggested changes

  • Update the exact-payload test and add coverage for the changed adapter send paths.
  • Either rescope the PR away from closing #59401 or implement the issue's requested opt-in behavior.

Automated hermes-sweeper review.

@@ -1071,6 +1075,7 @@ async def _standalone_send(
payload: Dict[str, Any] = {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please update the standalone sender's exact-payload assertion at tests/tools/test_send_message_missing_platforms.py:115. Required CI currently fails because it still expects only channel_id and message; include the intended props contract in that test.

@teknium1 teknium1 added sweeper:risk-message-delivery Sweeper risk: may drop, duplicate, misroute, or suppress messages sweeper:risk-compatibility Sweeper risk: may break existing users, config, migrations, defaults, or upgrades sweeper:blast-moderate Sweeper blast radius: moderate — a subsystem or single platform labels Jul 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/gateway Gateway runner, session dispatch, delivery P3 Low — cosmetic, nice to have sweeper:blast-moderate Sweeper blast radius: moderate — a subsystem or single platform sweeper:risk-compatibility Sweeper risk: may break existing users, config, migrations, defaults, or upgrades sweeper:risk-message-delivery Sweeper risk: may drop, duplicate, misroute, or suppress messages type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Mattermost Rich Markdown Support

3 participants