工具链升级报告 · 2026-10-31

Wrangler 4.152.0 → 4.156.0

跨 4 个 stable 版本,全部通过本机登录与只读业务探针
仅 stable,无 beta/rc 已验证 Node v22.23.2

结论:升级完成,Cloudflare 组件从降级恢复为正常。真正与你相关的是 4.156.0 修掉的「根目录直传把 .env、.git 当公开资源上传」——这正是你常用的 Pages 直传路径;以及 4.153.0 对 --secrets-file 的变量展开属于行为变更,写死 $ 字符的旧文件会被改写。

版本变化

4.153.010-26功能安全修复

新功能

  • wrangler dev 新增 --infer-origin-from-routes,可关掉按路由推断 origin 的默认行为,本地 CORS 白名单不再被 route 主机名顶掉。
  • --secrets-file 支持 $VAR / ${VAR} 展开(deploy、versions upload、preview)。

修复

  • Undici 升到 7.30.1,畸形 HTTP 响应不再让开发工具崩溃(GHSA-xjj6-f33q-929c)。
  • Zod 升到 4.6.6,修超大集合校验时的内存耗尽(GHSA-mrhx-c7xc-m3w5)。
  • 本地 kv key list 不再卡在 1000 条却假装列完了。
  • Windows 上配置路径含空格时 keyring 装不上、凭据回落明文的问题。
4.154.010-27功能修复

新功能

  • Miniflare 开发注册表默认开启并统一路径解析(CLOUDFLARE_DEV_REGISTRY_PATH),可用 enableDevRegistry:false 关闭。

修复

  • 本地开发时远程绑定/Node 代理的错误保留 code、numericCode 与自定义错误名,不用再靠匹配文案分支。
4.155.010-28功能修复

新功能

  • Analytics Engine 支持 remote:true,本地 writeDataPoint() 可写真实数据集。

修复

  • tail 输出把终端控制字符转义成可见文本,日志不会被伪造的转义序列搅乱。
  • wrangler flagship flags 更新 flag 时不再清空元数据。
  • .assetsignore 非 UTF-8 或含空字符时直接报错,不再静默丢规则。
4.156.010-29功能重要修复

新功能

  • wrangler d1 insights 可不带库名,跨账户全部 D1 库查慢查询,结果多一个 databaseId。

修复

  • 根目录即静态资源目录时现在会写保护性 .assetsignore。此前比较的是相对路径,判断永远不成立,于是 .env、.dev.vars、.git、node_modules 会被当公开资源传上去。
  • 非交互运行时若项目根同时有静态文件和 Pages functions,autoconfig 直接报错停下,不再「只传静态资源、Functions 悄悄没部署」。
  • d1 insights 被分析 API 拒绝时给可执行错误(限流等待时间、缺少 Account Analytics: Read 权限)。
  • Durable Object 自引用在 vitest 与容器校验里正确解析,--name 覆盖不再打断绑定目标。

对你的影响

验证结果

检查项结果
安装版本4.156.0(升级前 4.152.0)
Node 运行时v22.23.2,仍在 22.x
登录状态已登录,OAuth 令牌自动刷新成功
余额 / 账单Cloudflare 无单一账户余额,仅控制台按产品计费,此项不适用
只读业务探针通过:Pages 项目列表返回 14 个项目
文档 MCP已连接,工具列表正常返回
固定仪表盘已重新发布,显示 4.152.0 → 4.156.0

升级期间的环境故障

19:16 起本机代理客户端核心没在运行,但系统代理仍指向 127.0.0.1:6152,导致部署和文档 MCP 探针全部 connection refused;19:24 后代理进程进入崩溃-看门狗重启循环,TUN 接管默认路由却没转发流量(ping 通、HTTPS 全挂)。

处理:退出该代理应用,恢复 en0 直连后完成部署;维护脚本增加了「系统代理端口不可达则直连」的兜底,避免下次再被同一个死端口卡住。

待你处理:代理客户端(5.10.5,macOS 27.0.1)的崩溃循环本身没修,重开前建议先升级版本或换配置,否则会再次吞掉全部出网流量。

本次未做

Supabase CLI 出现 2.121.0 → 2.122.0,但它的健康检查仍是失败状态(项目非 ACTIVE_HEALTHY,已连续多次失败)。按「一次只升一个、验证失败即停」的规则没有动它,等健康检查恢复后再排下一轮。

生成于 2026-10-31 19:43 · 仅 stable 通道 · 不含凭据与账户标识