fix(cron): deliver media files via live adapter#5679
Closed
0xbyt4 wants to merge 1 commit into
Closed
Conversation
…ropping them Two bugs in _deliver_result() live adapter path: 1. Used raw delivery_content (with MEDIA: tags) instead of cleaned_delivery_content, exposing raw tags to users 2. Extracted media_files were never sent — adapter.send() only accepts text, so files were silently lost after return Fix: send cleaned text via adapter.send(), then deliver extracted media through adapter's typed methods (send_voice, send_image_file, send_video, send_document) matching the pattern already used in _deliver_media_from_response() for streaming.
teknium1
added a commit
that referenced
this pull request
Apr 7, 2026
…failure isolation Adapted from PR #5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
teknium1
added a commit
that referenced
this pull request
Apr 7, 2026
…failure isolation Adapted from PR #5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
Contributor
Tommyeds
pushed a commit
to Tommyeds/hermes-agent
that referenced
this pull request
Apr 12, 2026
…failure isolation Adapted from PR NousResearch#5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
angelburgosrosado
pushed a commit
to angelburgosrosado/hermes-agent
that referenced
this pull request
Apr 27, 2026
…failure isolation Adapted from PR NousResearch#5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
angelburgosrosado
pushed a commit
to angelburgosrosado/hermes-agent
that referenced
this pull request
Apr 28, 2026
…failure isolation Adapted from PR NousResearch#5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
02356abc
pushed a commit
to 02356abc/hermes-agent
that referenced
this pull request
May 14, 2026
…failure isolation Adapted from PR NousResearch#5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
olympus-terminal
pushed a commit
to olympus-terminal/hermes-agent
that referenced
this pull request
May 16, 2026
…failure isolation Adapted from PR NousResearch#5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
gweeteve
pushed a commit
to gweeteve/hermes-agent
that referenced
this pull request
Jun 2, 2026
…failure isolation Adapted from PR NousResearch#5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
Egavasyug
pushed a commit
to Egavasyug/hermes-agent
that referenced
this pull request
Jun 10, 2026
…failure isolation Adapted from PR NousResearch#5679 (0xbyt4) to cover edge cases not in the integration tests: video routing, unknown extension fallback to send_document, multi-file delivery, and single-failure isolation.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Live adapter path in
_deliver_result()had two bugs:delivery_content(withMEDIA:tags) instead ofcleaned_delivery_content— users saw raw tags likeMEDIA:/tmp/voice.oggin messagesmedia_fileswere silently discarded —adapter.send()only accepts text, so attachments were lostStandalone fallback path already handled both correctly (line 271), so this only affected cron delivery when the gateway was running with live adapters
Fix sends cleaned text via
adapter.send(), then delivers media through the adapter's typed methods (send_voice,send_image_file,send_video,send_document) — same pattern already used in_deliver_media_from_response()for streamingFully backward compatible: without media, behavior is identical to before. If media delivery fails, text is already sent and errors are logged without crashing
Test plan
_deliver_media_via_adapter: audio/image/video/document routing, multi-file delivery, single failure isolation