Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Deploy after a secret change fails for Workers over ~750 KB: source read-back capped at 1 MiB

Đang mở Phù hợp với người mới
#459 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
82/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
node.js, typescript
Lĩnh vực
devtools

Hướng nghiên cứu

Bắt đầu tại dist/cli/cloudflare-operation-process.mjs, ở lời gọi versions.view có includeSource; so sánh thiết lập maxOutputBytes với giá trị mặc định của runCf và các lời gọi khác. Tái hiện với một Worker lớn sau void secret put, rồi xác minh rằng thao tác đọc và triển khai hoàn tất với giới hạn đầu ra cao hơn.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

After a secret change (void secret put), the next void deploy --platform cloudflare reads the live version back with its source, and that read is capped at 1 MiB of output. A Worker with more than about 750 KB of JavaScript (the modules come back base64-encoded) overflows the cap and the deploy stops:

■ Could not verify existing Cloudflare Worker "<name>". Check the account, Worker name, and Cloudflare permissions before retrying.

The underlying result is spawnSync …/node ENOBUFS / Cloudflare CLI terminated by SIGTERM.

The cap is in dist/cli/cloudflare-operation-process.mjs (versions.view with includeSource):

const called = runCf([..."workers","versions","get", versionId, "--worker-id", worker,
    ...operation.includeSource ? ["--include","modules"] : []],
  process.cwd(), operation.includeSource ? { timeoutMs: 3e4, maxOutputBytes: 1048576 } : void 0);

runCf passes maxOutputBytes to spawnSync as maxBuffer; every other call there defaults to 32 MiB. Raising this one to 32 MiB makes the read succeed for a 1 MB Worker.

Repro (direct Cloudflare target, Durable Objects, preview_urls: false, version_metadata binding):

  1. Deploy a Worker with ~1 MB of minified JavaScript: succeeds.
  2. void secret put SOME_SECRET.
  3. void deploy: fails as above. Every later deploy fails the same way until the secret-changed version is replaced.

Code deploys without a secret change are unaffected, so this only shows up on the first deploy after a secret change, which makes it look like a size limit on Void projects.

void 1.1.11, cf CLI bundled with it, Node 24.18, macOS.

Ngôn ngữ chính
TypeScript
Star
402
Fork
32
Merge trung bình
12 giờ 28 phút
Pull request đã merge (30 ngày)
77

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của voidzero-dev/void

Tất cả issue của voidzero-dev/void

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.