fix(hub): revert worker streaming + disable whole-package zip; cut email 0.2.4#1855
Conversation
The ~177 MB all-platforms whole-package zip (#1843) exceeds Cloudflare's edge upload limit (POST /publish returns 413), which blocked the release on 0.2.1-0.2.3. Pairs with the preceding revert of the worker streaming attempt (#1849): with the zip publish + its edge-verify step disabled (if: false, revivable via presigned or per-platform zips), 0.2.4 ships the per-platform binaries + npm client + website without the combined zip. All version targets synced via stamp_version.py; no agent wire-contract change (SCHEMA_VERSION stays 2.0).
itomek-amd
left a comment
There was a problem hiding this comment.
Unblocks the release: reverts the worker streaming attempt and disables the over-limit whole-package zip; 0.2.4 ships binaries + npm without it. Version targets in sync. Approving to land on main.
|
Verdict: Approve ✅ This unblocks the email-agent release by reverting the worker-side streaming publish attempt and disabling the ~177 MB whole-package zip step (which Cloudflare's edge upload limit rejects with a 413 before the worker even runs), then cuts 0.2.4 shipping the per-platform binaries + npm client without the combined zip. The revert is clean: the worker's multipart path and the per-platform binary publish are untouched, and the version bump is consistent everywhere. The bottom line: this is the right call — the 413 is a plan-based edge limit that worker code can't fix, so reverting #1849 and parking the zip behind 🔍 Technical detailsVerification performed
Notes (non-blocking)
Strengths
|
Gets the email-agent release unblocked. The ~177 MB all-platforms whole-package zip (#1843) exceeds Cloudflare's edge upload limit —
POST /publishreturns413 Payload Too Largebefore the request even reaches the worker, which blocked the release on 0.2.1–0.2.3 (each published its binaries but never the zip/npm). That edge limit is plan-based and not fixable in worker code, so the worker-side streaming attempt (#1849) couldn't have solved it.This reverts that streaming change and disables the whole-package zip publish (
if: false, with a note to revive it via presigned-to-R2 or per-platform zips). 0.2.4 ships the per-platform binaries + npm client + website with no combined zip — the binaries stay individually downloadable from the Hub. No agent wire-contract change (SCHEMA_VERSIONstays 2.0).What's in here
publish_to_r2.pyto the multipart-only path; worker suite back to 64 tests passing.if: false; the binary fetch-verify, npm publish, and website redeploy are untouched.stamp_version.py+ CHANGELOG.Test plan
stamp_version.py --checkpasses (all targets 0.2.4)npm run typecheck && npm test— 64 pass (revert clean)cd hub/agents/npm/agent-email && npm run build && npm test— 46 passagent-pkg-email-v0.2.4→ release publishes binaries + npm @0.2.4 + website (no zip step)