维护者裁决,2026-09-18,直接下达给 domain:spec#4 席位(session_01AmH9bKvGoLjiY86Q4Z3og2)。原话:
升级只需要支持从 16.0版本开始。
⇒ MIGRATION_SUPPORT_FLOOR(packages/spec/src/migrations/registry.ts:48)由 10 抬到 16。
⛔ 本卡由席位代录,⛔ 席位不是裁决人;裁决归维护者,记录在案是为了让它不停留在 chat(结论只在 chat 是半状态)。
口径
PROTOCOL_VERSION = '17.0.0'(kernel/protocol-version.ts:18),@objectstack/spec 包版本 17.4.0,step18 是在研大版本。⇒ 「16.0」读作协议大版本 16,与 MIGRATION_SUPPORT_FLOOR 同单位。⚠️ 该口径已回呈维护者确认,未被否定前按此执行。
变更内容
下限为 16 ⇒ --from 16 必须可用 ⇒ 需要 step17(16→17)与 step18(17→18)。step11–step16 成为死代码。
| 项 |
处置 |
MIGRATION_SUPPORT_FLOOR |
10 → 16 |
step11–step16 及其在 MIGRATIONS_BY_MAJOR 的登记 |
删除 |
entries/ 下前缀 11. 12. 13. 15. 16. 的条目文件(共 10 个;major 14 为 0) |
删除后重新生成,⛔ 不在 <os-generated> 标记间手改 |
RETIRED_KEYS_BY_MAJOR / RETIRED_DEFS_BY_MAJOR 中 11–16 的行 |
⚠️ 先测再决定 —— 见下方未决项 |
| 低于 16 的重放夹具 |
随链删除(migrations.test.ts 从最老受支持大版本重放全链) |
⭐ 一个必须先测的未决项,⛔ 不要顺手删
RETIRED_KEYS_BY_MAJOR / RETIRED_DEFS_BY_MAJOR 记录「某个可授权键在哪个大版本被立墓碑」。这两张表是否只服务于迁移链,还是也被 schema 里的 retiredKey() 墓碑或 build-schemas.ts 读作独立事实? 已知 packages/spec/scripts/build-schemas.ts:113 就 import 了这两个符号。
⚠️ registry.ts 头部写明:两张表都按集合消费,一次丢掉条目的改动在任何地方都不报错,被声明的退役就静默失效(#6957,613 行手工冲突的教训)。⇒ 删 11–16 的行之前,必须先证明没有任何读者把它们当作「这个键已退役」的事实来源。测不出来就保留,并在卡上说明。
席位实测的爆炸半径(2026-09-18T14:4xZ,origin/main)
| step |
行数 |
占 registry.ts |
| step11 |
61 |
0.4% |
| step12 |
41 |
0.2% |
| step13 |
104 |
0.6% |
| step14 |
27 |
0.2% |
| step15 |
45 |
0.3% |
| step16 |
54 |
0.3% |
| step11–16 合计 |
332 |
1.9% |
| step17 |
4,708 |
27.5% |
| step18 |
12,041 |
70.2% |
entries/ 共 598 个条目文件,按大版本前缀:11=2 · 12=1 · 13=5 · 14=0 · 15=1 · 16=1 · 17=159 · 18=429。
⭐ 所以:本卡不是一张"瘦身"卡。 文件体积的 98.1% 是 step17+18,而它们必须留下。席位此前向维护者建议「抬下限可显著瘦身」是未经测量的错误建议,在此更正;本卡的价值在支持承诺收窄(6 条永久可重放链不再需要维护、夹具与 CI 重放缩短),⛔ 不在行数。
代价,须写进 changeset
MIGRATION_SUPPORT_FLOOR 是 @objectstack/spec 的公开导出(migrations/index.ts:23)。抬高后 applyMetaMigrations(doc, N) 对 N ∈ 10..15 抛 MigrationFloorError(chain.ts:73-74)。停在协议 10–15 的用户失去一条命令直升的路径。
⇒ Clause-②: yes(收窄已发布面),达档合约复核;changeset @objectstack/spec major 或 minor 由施工方按仓库口径判定,正文写明支持下限变更与受影响版本区间。
已知读者(按符号取,⛔ 非文件名)
migrations/index.ts:23(公开导出)· migrations/chain.ts:18,73,74 · migrations/migrations.test.ts:15,56,387,445,493 · packages/spec/scripts/build-spec-changes.ts:65,194,198,213,214 · packages/spec/scripts/build-upgrade-guide.ts:24,40,60 · packages/spec/scripts/build-schemas.ts:113(读两张退役表)
查重词
MIGRATION_SUPPORT_FLOOR · migration support floor · migrate meta --from · MigrationFloorError · RETIRED_KEYS_BY_MAJOR
⛔ 立卡席不查重(本席只附词);分诊按词查自有列表,零命中须控制词背书。
Generated by Claude Code
Generated by Claude Code
维护者裁决,2026-09-18,直接下达给
domain:spec#4席位(session_01AmH9bKvGoLjiY86Q4Z3og2)。原话:⇒
MIGRATION_SUPPORT_FLOOR(packages/spec/src/migrations/registry.ts:48)由 10 抬到 16。⛔ 本卡由席位代录,⛔ 席位不是裁决人;裁决归维护者,记录在案是为了让它不停留在 chat(结论只在 chat 是半状态)。
口径
PROTOCOL_VERSION = '17.0.0'(kernel/protocol-version.ts:18),@objectstack/spec包版本17.4.0,step18是在研大版本。⇒ 「16.0」读作协议大版本 16,与MIGRATION_SUPPORT_FLOOR同单位。变更内容
下限为 16 ⇒
--from 16必须可用 ⇒ 需要step17(16→17)与step18(17→18)。step11–step16成为死代码。MIGRATION_SUPPORT_FLOOR10→16step11–step16及其在MIGRATIONS_BY_MAJOR的登记entries/下前缀11.12.13.15.16.的条目文件(共 10 个;major 14 为 0)<os-generated>标记间手改RETIRED_KEYS_BY_MAJOR/RETIRED_DEFS_BY_MAJOR中 11–16 的行migrations.test.ts从最老受支持大版本重放全链)⭐ 一个必须先测的未决项,⛔ 不要顺手删
RETIRED_KEYS_BY_MAJOR/RETIRED_DEFS_BY_MAJOR记录「某个可授权键在哪个大版本被立墓碑」。这两张表是否只服务于迁移链,还是也被 schema 里的retiredKey()墓碑或build-schemas.ts读作独立事实? 已知packages/spec/scripts/build-schemas.ts:113就 import 了这两个符号。registry.ts头部写明:两张表都按集合消费,一次丢掉条目的改动在任何地方都不报错,被声明的退役就静默失效(#6957,613 行手工冲突的教训)。⇒ 删 11–16 的行之前,必须先证明没有任何读者把它们当作「这个键已退役」的事实来源。测不出来就保留,并在卡上说明。席位实测的爆炸半径(2026-09-18T14:4xZ,
origin/main)registry.tsentries/共 598 个条目文件,按大版本前缀:11=2 · 12=1 · 13=5 · 14=0 · 15=1 · 16=1 · 17=159 · 18=429。⭐ 所以:本卡不是一张"瘦身"卡。 文件体积的 98.1% 是 step17+18,而它们必须留下。席位此前向维护者建议「抬下限可显著瘦身」是未经测量的错误建议,在此更正;本卡的价值在支持承诺收窄(6 条永久可重放链不再需要维护、夹具与 CI 重放缩短),⛔ 不在行数。
代价,须写进 changeset
MIGRATION_SUPPORT_FLOOR是@objectstack/spec的公开导出(migrations/index.ts:23)。抬高后applyMetaMigrations(doc, N)对 N ∈ 10..15 抛MigrationFloorError(chain.ts:73-74)。停在协议 10–15 的用户失去一条命令直升的路径。⇒
Clause-②: yes(收窄已发布面),达档合约复核;changeset@objectstack/specmajor 或 minor 由施工方按仓库口径判定,正文写明支持下限变更与受影响版本区间。已知读者(按符号取,⛔ 非文件名)
migrations/index.ts:23(公开导出)·migrations/chain.ts:18,73,74·migrations/migrations.test.ts:15,56,387,445,493·packages/spec/scripts/build-spec-changes.ts:65,194,198,213,214·packages/spec/scripts/build-upgrade-guide.ts:24,40,60·packages/spec/scripts/build-schemas.ts:113(读两张退役表)查重词
MIGRATION_SUPPORT_FLOOR·migration support floor·migrate meta --from·MigrationFloorError·RETIRED_KEYS_BY_MAJOR⛔ 立卡席不查重(本席只附词);分诊按词查自有列表,零命中须控制词背书。
Generated by Claude Code
Generated by Claude Code