What happens
hey attachment list <topic_id> returns
{"ok": true, "data": [], "summary": "0 attachments in thread <id>"}
for threads that demonstrably carry attachments.
Why I'm confident the attachments are really there
Two independent server-side signals disagree with the CLI:
hey search --attachment pdfs returns these very threads, so HEY's own index has them flagged as carrying a PDF.
hey thread read <topic_id> renders the message body ending in a paperclip marker followed by the real filename.
Rate
Of the 10 most recent threads returned by hey search --attachment pdfs --date last_90_days, only 3 returned anything from attachment list. The other 7 all show a paperclip marker and filename in the rendered body.
One of the missed threads carries six separate attachment markers and discovers none of them.
Versions
Reproduced identically on:
- 1.3.0 (Homebrew cask,
basecamp/tap/hey)
- 1.4.0 (official
hey_1.4.0_darwin_arm64.tar.gz from the release page, SHA-256 verified against checksums.txt)
macOS 15, arm64.
This is not #285
That bug fired ~200 sequential GETs and reported Attachment discovery stopped after 100 pages of thread messages. Here -vv shows exactly two requests and a clean empty return, on both passing and failing threads. The walker isn't spinning; it fetches, finds nothing, and returns.
Retrieval itself is healthy. On threads where discovery does find the file, hey attachment save writes a byte-exact file (verified by size and by opening the PDF).
Not a caching artifact
1.4.0 enables the SDK ETag response cache, and verbose output showed both threads served from cache (304). I moved ~/.cache/hey-cli aside and re-ran cold: identical results.
Shape unknown
It affects both forwarded mail and mail sent directly to me, so it isn't simply a forwarding problem. I could not find a discriminator: inline-image count doesn't predict it (there are failures with zero inline images and successes with one). Senders span several unrelated providers, including Exchange/Outlook relays and ordinary transactional senders.
I've kept thread IDs and filenames out of this report since they're from a personal mailbox, but I'm very happy to run any diagnostic that would help narrow it down, or to send sanitised verbose output.
What happens
hey attachment list <topic_id>returns{"ok": true, "data": [], "summary": "0 attachments in thread <id>"}for threads that demonstrably carry attachments.
Why I'm confident the attachments are really there
Two independent server-side signals disagree with the CLI:
hey search --attachment pdfsreturns these very threads, so HEY's own index has them flagged as carrying a PDF.hey thread read <topic_id>renders the message body ending in a paperclip marker followed by the real filename.Rate
Of the 10 most recent threads returned by
hey search --attachment pdfs --date last_90_days, only 3 returned anything fromattachment list. The other 7 all show a paperclip marker and filename in the rendered body.One of the missed threads carries six separate attachment markers and discovers none of them.
Versions
Reproduced identically on:
basecamp/tap/hey)hey_1.4.0_darwin_arm64.tar.gzfrom the release page, SHA-256 verified againstchecksums.txt)macOS 15, arm64.
This is not #285
That bug fired ~200 sequential GETs and reported
Attachment discovery stopped after 100 pages of thread messages. Here-vvshows exactly two requests and a clean empty return, on both passing and failing threads. The walker isn't spinning; it fetches, finds nothing, and returns.Retrieval itself is healthy. On threads where discovery does find the file,
hey attachment savewrites a byte-exact file (verified by size and by opening the PDF).Not a caching artifact
1.4.0 enables the SDK ETag response cache, and verbose output showed both threads served from cache (
304). I moved~/.cache/hey-cliaside and re-ran cold: identical results.Shape unknown
It affects both forwarded mail and mail sent directly to me, so it isn't simply a forwarding problem. I could not find a discriminator: inline-image count doesn't predict it (there are failures with zero inline images and successes with one). Senders span several unrelated providers, including Exchange/Outlook relays and ordinary transactional senders.
I've kept thread IDs and filenames out of this report since they're from a personal mailbox, but I'm very happy to run any diagnostic that would help narrow it down, or to send sanitised verbose output.