Skip to content

Add private Download all ZIP for task attachments - #29

Merged
headertag merged 1 commit into
mainfrom
feat/download-all-attachments
Oct 18, 2026
Merged

headertag merged 1 commit into
mainfrom
feat/download-all-attachments

Conversation

@headertag

Copy link
Copy Markdown
Owner

Tasks with multiple saved attachments now offer Download all (ZIP) next to Add image / PDF / file. The private download includes each original once, including comment attachments, with safe filenames and numbered duplicates.

The browser and MCP share the canonical attachment list and download path: list_attachments returns an authenticated downloadPath, keeping binary data out of tool context. ZIP entries stream sequentially from R2 with backpressure and size/SHA-256 verification; missing/corrupt files abort the archive. Read-only users retain download access. No schema migration or persistent archive copies.

Validation: typecheck, production build, UI tests, browser/OAuth authorization and cross-owner denial, ZIP byte/CRC verification, duplicate/unsafe filenames, corrupt/missing files, cancellation, metadata and deployment guard tests. All other suites passed; the large-file workerd test now passes with a 105 MiB ZIP containing a 100 MiB original. CI reruns the full suite before merge and production deployment.

Closes #28.

@headertag
headertag merged commit ff33f0f into main Oct 18, 2026
4 checks passed
@headertag
headertag deleted the feat/download-all-attachments branch October 18, 2026 17:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Download all ZIP for task attachments

1 participant