First deploy after void secret put fails with Cloudflare 100405 (exports differ) on a Durable Object Worker
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 1-2 天
- 新手友好度
- 48/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- typescript
- 领域
- cloud
调研方向
Start by tracing void secret put and the Cloudflare deploy path that stages a Worker Version at 0% traffic; compare the version exports produced after the secret change with those from a normal deploy. The report gives a reproducible sequence on a fresh Worker with Durable Objects, crons, routes, and version metadata. Done when deploying unchanged code after void secret put succeeds without Cloudflare error 100405.
由索引模型根据 Issue 内容生成。
描述
On a Worker with Durable Objects, the first void deploy --platform cloudflare after void secret put fails when Void stages the new version at 0% beside the secret-changed one:
■ deploy: Cloudflare could not stage the uploaded Worker Version at zero-percent traffic (exit 1); production traffic is unchanged. Cloudflare error code: 100405.
│ [100405] All versions in a multi-version deployment must declare identical `exports`. Deploy the version that changes `exports` at 100% first, then split traffic.
Repro (unmodified void 1.1.11; a fresh Worker each time; ~670 KB, so the 1 MiB read-back in #459 is not involved):
void deploya new Worker with two SQLite Durable Object classes (defineDurableObject), routes, twodefineScheduledcrons,preview_urls: falseand aversion_metadatabinding: succeeds.void secret put JEV_API_KEY(declared optional inenv.ts): succeeds.void deploywith no code change: fails as above, and so does every retry.
The same code was rebuilt between steps 1 and 3, so the exports shouldn't differ; it looks like the version created by the secret change declares different exports from a version Void uploads. An older Worker of ours did deploy after secret changes, so it may depend on something about a fresh Worker's first versions, but we haven't narrowed that down.
Found while looking into #459. void 1.1.11, cf CLI bundled with it, Node 24.18, macOS.
- 主要语言
- TypeScript
- 星标
- 402
- 派生
- 32
- 平均合并
- 12 小时 28 分钟
- 30 天内合并 PR
- 77
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
voidzero-dev/void 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 82/100
voidzero-dev/void#478 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
voidzero-dev/void#463 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
voidzero-dev/void#459 ·
维护者通常 1 天内回复
-
bug
难度 1/5 1-3 小时 新手友好度 78/100
voidzero-dev/void#428 ·
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 68/100
voidzero-dev/void#480 ·
维护者通常 1 天内回复
查看 voidzero-dev/void 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 76/100
ccch1mneyyy/dsh-TUI#1631 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
MiniMax-AI/minimax-code#507 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
-
Transient OAuth login failure persists in getLoginStatus and masks active account in dashboard可能重新可做 关联的 PR 已关闭且未合并。 未关闭account-pool bug gui
难度 2/5 1-3 小时 新手友好度 67/100
lidge-jun/opencodex#7378 · 2 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复