Skip to content

bug(discord): streaming edit lost in 0.8.0 — DiscordAdapter missing edit_message and use_streaming overrides #502

Description

@Agent-Mouses

Description

After upgrading from 0.7.5 to 0.8.0, all Discord bots stopped streaming replies. Messages now appear as a single send-once block instead of live-editing as tokens arrive.

Root cause: impl ChatAdapter for DiscordAdapter in src/discord.rs no longer overrides edit_message() or use_streaming(). The trait defaults in src/adapter.rs return false / Err("not supported"), so Discord falls back to send-once mode.

In 0.7.7, edit_message() was present at line 57 of src/discord.rs. In 0.8.0, the entire impl block ends at line 109 without either method.

Likely regression from the Slack streaming refactor in #444.

Steps to Reproduce

  1. Upgrade any Discord bot from 0.7.x to 0.8.0
  2. Send a message that triggers a long reply
  3. Observe: reply appears all at once instead of streaming (edit-in-place)

Confirmable via source diff:

# 0.7.7 — has edit_message
curl -s https://raw.githubusercontent.com/openabdev/openab/openab-0.7.7/src/discord.rs | grep -n edit_message
# 57:    async fn edit_message(...)
# 61:            .edit_message(...)

# 0.8.0 — missing
curl -s https://raw.githubusercontent.com/openabdev/openab/openab-0.8.0/src/discord.rs | grep -n edit_message
# (no output)

Expected Behavior

Discord replies should stream via edit-in-place (same as 0.7.x behavior). The DiscordAdapter should override:

  • use_streaming() -> true
  • edit_message() using serenity http.edit_message()

Environment

  • OpenAB: 0.8.0 (ghcr.io/openabdev/openab:0.8.0)
  • Platform: Discord (4 bots, all affected)
  • Agent: kiro-cli 2.0.0 via ACP
  • Host: macOS (Docker Desktop)
  • Previous working version: 0.7.5 / 0.7.7

Screenshots / Logs

No errors in logs — the adapter silently falls back to send-once because use_streaming() returns false by default. The edit_message default returns Err but is never called since use_streaming() gates it.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions