Environment
hey version: 0.1.1 (commit c0d3441894f1e04eb6d5bf2c0d71dea15754931c, built 2026-08-20)
- Go: go1.26.6
- Installed via
brew install --cask basecamp/tap/hey
- macOS (arm64)
Summary
hey attachments <thread-id> reports 0 attachments on threads that have a genuine attachment, confirmed by inspecting the raw RFC822 source of the message via the Hey web app. This reproduces consistently across three independent real threads in my mailbox, all sharing a similar MIME shape.
Reproduction
The affected messages share this MIME structure (from Content-Type headers in the raw source):
multipart/mixed
├── multipart/alternative
│ ├── text/plain
│ └── text/html
└── application/pdf (Content-Disposition: attachment; filename="...")
All were relayed through an Exchange/Outlook-based sender (X-MS-Has-Attach: yes present in the header, ARC-sealed).
Running:
hey attachments <thread-id> --json
returns:
{
"ok": true,
"data": null,
"summary": "0 attachments in thread <thread-id>",
"notice": "Attachment discovery stopped after 100 pages of thread messages"
}
for a thread that contains exactly one message. The "100 pages of thread messages" wording is surprising on its own for a single-message thread.
What --verbose shows
Running with -vvv / --verbose, the command issues roughly 200 sequential HTTP GET requests, every one logged as status=200, before giving up:
time=... level=DEBUG msg="http request" method=GET
time=... level=DEBUG msg="http response" status=200
... (repeats ~100 times) ...
So this isn't an auth failure or a 4xx/5xx from the server — every request the client makes succeeds, but the discovery logic never surfaces the attachment. This looks like a pagination bug on the client side (a cursor that never advances, or pagination running against the wrong resource) rather than a server-side data problem.
Expected behavior
hey attachments <thread-id> should list the PDF attachment present on the message, as it does (per the docs) for other threads.
Actual behavior
Always 0 attachments, on every thread I've tested with this MIME shape, despite ~200 successful HTTP requests being made in the process.
Additional notes
hey threads <thread-id> --json correctly returns the message body (text/plain part), so the client can see and parse this message fine — it's specifically the attachment-discovery path that fails.
- Happy to run additional diagnostics (increased verbosity,
--account variations, etc.) if that's useful — I don't want to paste any real thread IDs or message content here since this mailbox carries clinical correspondence, but I'm glad to test against a specific request.
Environment
hey version: 0.1.1 (commitc0d3441894f1e04eb6d5bf2c0d71dea15754931c, built 2026-08-20)brew install --cask basecamp/tap/heySummary
hey attachments <thread-id>reports0 attachmentson threads that have a genuine attachment, confirmed by inspecting the raw RFC822 source of the message via the Hey web app. This reproduces consistently across three independent real threads in my mailbox, all sharing a similar MIME shape.Reproduction
The affected messages share this MIME structure (from
Content-Typeheaders in the raw source):All were relayed through an Exchange/Outlook-based sender (
X-MS-Has-Attach: yespresent in the header, ARC-sealed).Running:
returns:
{ "ok": true, "data": null, "summary": "0 attachments in thread <thread-id>", "notice": "Attachment discovery stopped after 100 pages of thread messages" }for a thread that contains exactly one message. The "100 pages of thread messages" wording is surprising on its own for a single-message thread.
What
--verboseshowsRunning with
-vvv/--verbose, the command issues roughly 200 sequential HTTP GET requests, every one logged asstatus=200, before giving up:So this isn't an auth failure or a 4xx/5xx from the server — every request the client makes succeeds, but the discovery logic never surfaces the attachment. This looks like a pagination bug on the client side (a cursor that never advances, or pagination running against the wrong resource) rather than a server-side data problem.
Expected behavior
hey attachments <thread-id>should list the PDF attachment present on the message, as it does (per the docs) for other threads.Actual behavior
Always
0 attachments, on every thread I've tested with this MIME shape, despite ~200 successful HTTP requests being made in the process.Additional notes
hey threads <thread-id> --jsoncorrectly returns the message body (text/plain part), so the client can see and parse this message fine — it's specifically the attachment-discovery path that fails.--accountvariations, etc.) if that's useful — I don't want to paste any real thread IDs or message content here since this mailbox carries clinical correspondence, but I'm glad to test against a specific request.