NousResearch/hermes-agent

Fix invalid emoji reactions in Telegram integration

Cluster 6068. Data as of

Nothing open on GitHub. Fix merged in #7175 on 10 Apr 2026. Check it covers your case.

The short answer

0open issues
0open PRs
4items grouped
Known?
Yes. 4 related items grouped here, 1 issue already closed.
Fix event
A fix was merged to main in PR #7175. Check it covers your case. No release data is tracked.
Tracker
The maintainers' tracker marks this resolved, deciding PR #7175. That is separate from the fix event.
Still open
Nothing open on GitHub.

These issues and pull requests address a bug where Telegram message reactions were not appearing correctly, specifically because invalid or improperly typed emoji values were being used for reaction events like processing completion.

Open issues0

No open issues.

Open PRs0

No open pull requests.

Fixes on record

Merged to main. A stamp counts the issues a fix is linked to.

  • #7175 fix(telegram): use valid reaction emojis for processing completion

    merged to main

    files: gateway/platforms/telegram.py, tests/gateway/test_telegram_reactions.py

    Show the diff
    • gateway/platforms/telegram.py
      @@ -2802,5 +2802,5 @@ async def on_processing_complete(self, event: MessageEvent, outcome: ProcessingO
                   await self._set_reaction(
                       chat_id,
                       message_id,
      -                "\u2705" if outcome == ProcessingOutcome.SUCCESS else "\u274c",
      +                "\U0001f44d" if outcome == ProcessingOutcome.SUCCESS else "\U0001f44e",
                   )
    • tests/gateway/test_telegram_reactions.py
      @@ -175,7 +175,7 @@ async def test_on_processing_start_handles_missing_ids(monkeypatch):
       
       @pytest.mark.asyncio
       async def test_on_processing_complete_success(monkeypatch):
      -    """Successful processing should set check mark reaction."""
      +    """Successful processing should set thumbs-up reaction."""
           monkeypatch.setenv("TELEGRAM_REACTIONS", "true")
           adapter = _make_adapter()
           event = _make_event()
      @@ -185,13 +185,13 @@ async def test_on_processing_complete_success(monkeypatch):
           adapter._bot.set_message_reaction.assert_awaited_once_with(
               chat_id=123,
               message_id=456,
      -        reaction="\u2705",
      +        reaction="\U0001f44d",
           )
       
       
       @pytest.mark.asyncio
       async def test_on_processing_complete_failure(monkeypatch):
      -    """Failed processing should set cross mark reaction."""
      +    """Failed processing should set thumbs-down reaction."""
           monkeypatch.setenv("TELEGRAM_REACTIONS", "true")
           adapter = _make_adapter()
           event = _make_event()
      @@ -201,7 +201,7 @@ async def test_on_processing_complete_failure(monkeypatch):
           adapter._bot.set_message_reaction.assert_awaited_once_with(
               chat_id=123,
               message_id=456,
      -        reaction="\u274c",
      +        reaction="\U0001f44e",
           )
       
       

2 PRs closed without merging

From the close comments: merged via another change 1 · other 1

  • #6097 fix(telegram): use valid Telegram reaction emojis in processing hooks · other
  • #6685 fix(telegram): use ReactionTypeEmoji for message reactions · merged via another change → #7175
Closed issues · 1
  • Closed#6068bug(telegram): on_processing_complete reaction not firing — ✅ never appears after response
How this cluster was grouped
  • Link evidence (structural links throughout): every member is connected by structural evidence: shared changed files, or a closing/superseded reference.
  • Pairwise link density 0.50: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. 1.00 means every pair is linked.

Pick up a Lab task

Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.

Open the Lab

At a glance

Merged PRs
#7175
Closed issues
1
Attempts
2 PRs closed without merging
Fix link checked
10 Apr 2026. This confirmation is old and may be out of date (a revert or reopen would not have invalidated it here); re-verify.

For your agent

The same facts, typed.