Skip to content

fix(deploy): zone 路由对象补 zone_name——wrangler schema 必填,部署脚本 API 探测注入 - #66

Merged
HandyWote merged 1 commit into
m0/devfrom
fix/core-zone-route
Sep 8, 2026
Merged

fix(deploy): zone 路由对象补 zone_name——wrangler schema 必填,部署脚本 API 探测注入#66
HandyWote merged 1 commit into
m0/devfrom
fix/core-zone-route

Conversation

@HandyWote

Copy link
Copy Markdown
Contributor

真机首次部署暴露(wrangler schema 拒收)

routes: [{ pattern: "unself.demo.handywote.top/*" }] 被 wrangler 配置校验拦下:

Expected "routes" to be an array of ... objects with the shape
{ pattern, custom_domain, zone_id | zone_name, enabled, previews_enabled }

zone 路由对象必须带 zone_id 或 zone_name——#61 的测试断言的是非法形态(T5 假 Wrangler 盲区实证:假 wrangler 来者不拒,真 schema 拒收)。

修法

  • assemble.ts:core/module 配置生成器接受 zoneName,routes 对象带 zone_name
  • steps.ts:部署前经 API 逐级上溯探测 zone(resolveZone 注入口,默认 findZone 读 CLOUDFLARE_API_TOKEN);探测失败硬报错(zone 路由必需 zone 标识);zone 结果复用给 DNS 自愈步骤
  • 测试:assemble/三方一致性断言同步 zone_name 形态;steps 测试全面改用 configOverride(部署者本地 domain 填充会让非 domain 用例误走真实探测路径——一并修掉)

验证

  • 全仓三件套绿(deploy 54 用例含:zone 上溯 3、DNS 幂等 4、顺序断言 deploy→ensureDns→registry)
  • 下一步即真机重部署验证 schema 通过

Ref #59

真机首次部署被 wrangler schema 拦下:routes[] 元素形态是
{ pattern, custom_domain, zone_id | zone_name, ... },zone 路由无
zone_id/zone_name 直接拒收(#61 的测试断言了不合法形态——T5 假
Wrangler 类盲区实证)。修法:

- assemble.ts:core/module 两个配置生成器接受 zoneName,routes 对象
  带 zone_name(wrangler 按 zone 名解析,无需 zone_id)
- steps.ts:部署前经 API 逐级上溯探测 zone(resolveZone 注入口),
  探测失败硬报错(zone 路由必需);zone 结果复用给 DNS 自愈步骤,
  避免二次 API 调用
- 测试:assemble/三方一致性断言同步 zone_name 形态;steps 测试全面
  改用 configOverride(隔离部署者本地 domain 状态——此前 domain 填充
  导致非 domain 用例误走 zone 探测路径,一并修掉)

Signed-off-by: huangyinghui <18666119673@163.com>
@HandyWote
HandyWote merged commit b98e98e into m0/dev Sep 8, 2026
1 check passed
@HandyWote
HandyWote deleted the fix/core-zone-route branch September 8, 2026 12:33
@HandyWote
HandyWote restored the fix/core-zone-route branch September 8, 2026 12:37
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.

1 participant