Skip to content

feat(registry): 独立原生发行、v2 契约与历史迁移 - #58

Merged
xiaoland merged 22 commits into
mainfrom
feat/native-distribution-completeness
Oct 13, 2026
Merged

xiaoland merged 22 commits into
mainfrom
feat/native-distribution-completeness

Conversation

@xiaoland

@xiaoland xiaoland commented Oct 12, 2026 •

Copy link
Copy Markdown
Member

Registry 原有统一 (name, version) 发行让 Python 与 Web 分发共用生命周期,无法表达各 Peer 独立选择原生版本。本变更采用 v2 (name, distribution, version):生产者只准备并发布自己的分发,发布前验证该分发全部对象,并在事务提交前重新检查文件身份。

历史数据库向前迁移保留文件、R2 key、原生元数据、旧 URL 与文档 receipt。v1 只读历史统一发行,旧控制写入返回 410,新原生发行不进入旧目录。未知历史 global 文档继续留在旧 owner;旧入口状态保守投影,不能绕过原生封禁。Toolkit 0.5、Python Runtime 0.2、Web Runtime 0.4 提供独立原生与本 Peer 参与模型,并由现有机械版本工具生成版本。

验证:完整 pnpm check 通过;额外使用非空 0004 数据库回放验证历史文件/文档身份,真实 HTTP 验证 Python 1.0 与 MF 2.0 独立发布、缺对象拒绝、发布检查期间新增文件返回 409、旧写 410、严格历史 DTO 与分发独立封禁。真实 wheel 隔离安装、SDK import/HTTP 边界与 v2 静态 MF facade 已通过。

生产迁移和正式 SDK 发布尚未执行。合并到 main 会触发 packages-release.yml:受 production 环境保护、核验 current-main 后发布缺失的 Toolkit 0.5、Python Runtime 0.2、Web Runtime 0.4 GitHub Release 及包资产;不会自动部署 Registry 服务。production.yml 仅手动触发,verify 不修改远程资源,获准的 deploy 才迁移既有生产数据库、配置既有 app 并发布镜像。0005/0006 改变分发关联的数据库身份,旧镜像不能与迁移后 schema 并行使用;生产切换应暂停 publisher、停止旧 web dyno,再执行精确 current-main 部署及读写边界验收。控制器在任何数据库/config/release 变更前强制 web quantity=0,且完整 dyno 列表中无存活旧 web;非零 formation、idle/starting/up/未知状态或不完整列表都拒绝,且不自动停机或回滚。阶段日志带 app 与目标 SHA,migration/release 失败不扩容;smoke 失败明确发生于新镜像已启动之后。现有执行边界验证这些拒绝、失败及目标镜像成功启动顺序。跨仓候选使用固定 Git package 与真实 pack 做有界验收;不宣称已建立独立公共 SDK artifact 交付层。可信 preview 控制器来自 main,新建 v2 preview 的 seed 需同步 v2 入口。

Web Runtime 的恢复只消费持久 enabled 意图,显式启停命令先保存意图再串行清理资源。异步加载和初始化后重新检查精确版本与 enabled,撤回或变更时清理迟到模块,不登记 running;真实打包入口验证加载中停用、初始化中停用、独立客户端撤回/变 pin、shutdown 与另一 Peer 保持独立。

本次候选准入例外:维护者 label coordinated-sdk-version-preparation 允许同 PR 包含上述机械版本准备与功能代码。CI 由 PR metadata 显式传入 --allow-feature-version-preparation,添加/移除 label 都重新检查。它仅解除行为路径分类禁令;默认无 label 保持严格规则,版本/changelog 一致、版本前进、已消费 fragments、所有测试与发布权威均保留。CLI 黑盒验证涵盖默认拒绝、允许候选、残留 fragment、版本倒退与 changelog 不一致拒绝。

@github-actions
github-actions Bot temporarily deployed to preview October 12, 2026 13:03 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview October 12, 2026 13:15 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview October 12, 2026 13:29 Destroyed
@xiaoland xiaoland closed this Oct 13, 2026
codex-check added 2 commits October 13, 2026 16:06
撤回原生格式承诺、迁移和安装升级保护;保留原有 prepare/public 契约。\n发布检查全部关联和不可变产物,提交前重新核对检查集合;补齐缺 MF 与并发关联变更回归。
@xiaoland xiaoland changed the title fix(releases): 校验原生分发完整性并保护升级支持范围 fix(registry): 发布前验证全部已声明关联 Oct 13, 2026
@xiaoland xiaoland reopened this Oct 13, 2026
@github-actions
github-actions Bot temporarily deployed to preview October 13, 2026 08:18 Destroyed
codex-check added 6 commits October 13, 2026 19:11
使用 v2 精确 Python 分发读取、显式参与状态存储以及下载/应用边界;启用不再修改共享 Python 环境。源码与 wheel import 已验证,整个 Registry/Web gate 仍等待配套 Core SDK 0.4。
由 Changesets 生成 0.4.0,固定 Core SDK 0.4 实际 package 输入;按 v2 读取 MF 版本、持久化本 Peer 选择并报告真实运行状态。Node 22 下类型、构建和 HTTP boundary 检查通过;整个 Registry gate 与真实宿主验收仍待集成。
@xiaoland xiaoland changed the title fix(registry): 发布前验证全部已声明关联 feat(registry): 独立原生发行、v2 契约与历史迁移 Oct 13, 2026
@xiaoland xiaoland added the coordinated-sdk-version-preparation 经维护者确认的 SDK 协同机械版本准备;保留全部检查与 main 发布权威 label Oct 13, 2026
@github-actions
github-actions Bot temporarily deployed to preview October 13, 2026 12:17 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview October 13, 2026 12:59 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview October 13, 2026 13:20 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview October 13, 2026 13:41 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview October 13, 2026 14:44 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview October 13, 2026 15:31 Destroyed
@xiaoland
xiaoland merged commit ab5a225 into main Oct 13, 2026
3 checks passed
@xiaoland
xiaoland deleted the feat/native-distribution-completeness branch October 15, 2026 13:06

This branch was successfully deployed

No deployments
preview — d92899f7 Deployed Oct 13, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

coordinated-sdk-version-preparation 经维护者确认的 SDK 协同机械版本准备;保留全部检查与 main 发布权威

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant