Files
orbit/docs/reports/phase-7-sdk-remote-release.md

43 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# P7:首个远端 SDK 接入版本
验证日期:2026-09-20。仓库为公开的 [k2safe/orbit](https://git.yuntuo.hk/k2safe/orbit),默认分支为 `main`。本批完成源码推送、独立 SDK 版本发布和真实外部项目取包验证。
## 发布身份
| 发布物 | Git 标签 | 不可变源码提交 |
| --- | --- | --- |
| Orbit 服务端 | `v0.1.0` | `0e8b2ef2975df6b55f2240dd14eda83adf30ea94` |
| 独立 Go SDK | `sdk/go/v0.1.0` | `0e8b2ef2975df6b55f2240dd14eda83adf30ea94` |
通过公开 Git 远端读取标签并解引用,确认两个标签指向同一提交。仓库 API 返回 `private=false`、`empty=false`、`default_branch=main`。`main` 后续可以继续更新文档和代码,接入方应固定上述 SDK 版本。
## 外部项目验证
环境为 Go 1.27.1、darwin/arm64。在仓库外创建 `example.com/orbit-remote-consumer`,使用空 `GOMODCACHE`、独立 `GOPATH`、`GOWORK=off` 和 `GOENV=off`;未添加任何 `replace`。关闭 Go HTTP 身份认证及全局 Git 配置,SDK 通过公开代理下载。
本机 Go 进程直连代理发生网络超时。最终使用 `GOPROXY=https://goproxy.cn,direct`,并仅在验证进程中沿用系统已有的 HTTP/HTTPS 网络代理。保留 `GOSUMDB=sum.golang.org`,未设置 `GOPRIVATE` 或 `GONOSUMDB`,未关闭校验和验证,也未修改用户全局 Go/Git 设置。
| 验证 | 实际结果 |
| --- | --- |
| `go get git.yuntuo.hk/k2safe/orbit/sdk/go@v0.1.0` | 从空缓存下载 SDK 和 `github.com/coder/websocket v1.8.15`,退出 0 |
| `go mod tidy` | 退出 0 |
| 外部项目 `go build` | 退出 0 |
| 外部项目运行 SDK HTTP smoke | 真实调用本地 `httptest` HTTP 服务的健康接口,输出 `remote_sdk_http_smoke=passed`,退出 0 |
| `go mod verify` | `all modules verified`,退出 0 |
| `go list -m -json` | `Version=v0.1.0`、`GoVersion=1.27.1`、无 `Replace` |
| 本地独立 SDK 门禁 | race、vet、build 通过;30 个包,禁止依赖为 0 |
| 协议与文档门禁 | 当前 HTTP/Worker/Event/schema 契约匹配,Markdown 本地链接检查通过 |
下载得到的模块校验和:
```text
git.yuntuo.hk/k2safe/orbit/sdk/go v0.1.0 h1:OJp+U8dDNKjiXy4ZhO4MMq68Ek8TkjphUAqsjOOg77c=
git.yuntuo.hk/k2safe/orbit/sdk/go v0.1.0/go.mod h1:9KlMW7Gy+EGaDoEwr3wHHFY47mnAymSfYeQpMS7h4ag=
```
业务接入命令、导入方式和场景见 [SDK 手册](../sdk/README.md#5-外部项目通过远端接入)。若网络无法访问默认模块代理,可单次执行 `GOPROXY=https://goproxy.cn,direct go get git.yuntuo.hk/k2safe/orbit/sdk/go@v0.1.0`;需要网络代理的环境应让 Go 进程使用可用的网络代理,不需要关闭模块校验。
## 结论与边界
业务项目可以固定 `v0.1.0` 进行开发和测试接入,无需取得本机源码或配置本地替换。本批验证远端发布与取包,没有重新声明生产环境验收完成;真实 MySQL/进程全量回归沿用[已记录结果](phase-7-regression-status.md),生产容量、数据库自动切换、完整跨标签矩阵和运维条件仍按[交付清单](../release-checklist.md)完成。