mirror of
https://git.openapi.site/https://github.com/desirecore/config-center.git
synced 2026-10-21 06:04:08 +08:00
fix(data): complete verified contracts and source maintenance (#114)
This commit is contained in:
23
docs/runtime-sources/README.md
Normal file
23
docs/runtime-sources/README.md
Normal file
@@ -0,0 +1,23 @@
|
||||
# 运行时数据来源
|
||||
|
||||
这里记录运行时官方目录、推荐归档校验和客户端安装契约。数据文件仍在 `runtimes/`;模型来源另见 [模型来源目录](../model-sources/README.md)。
|
||||
|
||||
| 范围 | 来源及边界 |
|
||||
| --- | --- |
|
||||
| 推荐 Node | [版本、六平台官方校验和](node-recommended.md) |
|
||||
| 推荐 Python | [Standalone 六平台官方资产摘要](python-recommended.md) |
|
||||
| Node 离线列表 | [官方目录快照](node-snapshot.md) |
|
||||
| Python 离线列表 | [内置 Hatch 精确版本映射](python-fallback.md) |
|
||||
| npm | [官方发布快照](package-managers/npm-snapshot.md) |
|
||||
| pnpm | [官方发布快照](package-managers/pnpm-snapshot.md) |
|
||||
| Yarn | [官方 CLI 发布快照](package-managers/yarn-snapshot.md) |
|
||||
|
||||
## 更新流程
|
||||
|
||||
1. 先核查 DesireCore 最新远端 `origin/main` 的 `runtime-manager.ts`、静态打包脚本、运行时 schema 及客户端版本门槛。Python 离线列表来自**内置 Hatch 的 pin 表**,不能拿 Standalone 最新版本替代。
|
||||
2. `node scripts/update-runtime-catalog.mjs` 只读取固定官网/API、验证推荐归档摘要并显示候选数量;`--write` 才更新 Node/包管理器离线列表及对应细分快照记录。任何来源读取失败、结构错误、推荐发布日期缺失/晚于核验时间或推荐摘要不一致都中止写入。
|
||||
3. 更新推荐运行时时,先同步客户端安装器/打包器契约,再逐平台核对官方档名及摘要。当前脚本不会自动修改推荐版本、Python 离线映射或客户端门槛,也不会推算未知 SHA-256。
|
||||
4. Node 每个大版本最多三条(从 16 开始),包括历史版本;包管理器读取各仓最近 100 个 releases,再筛选最多 30 个正式 CLI 版本。目录可安装性和操作系统支持仍需按目标平台测试,不能把目录存在视为安装验收。
|
||||
5. 执行 `node scripts/validate-runtime-sources.mjs`、`npm run validate`、`npm test`、`git diff --check`。离线门禁检查 Node/包管理器快照条目指纹、日期、数量、首版、固定官方入口,以及 Python pin 表、推荐版本/LTS/tag、六平台档名与摘要表。它只证明本仓数据与来源记录一致;不能替代 updater 重新读取官网,也不证明安装成功。更新推荐参数时重新记录本文档的官方证据和读取日期。历史快照由 Git 保留。
|
||||
|
||||
`generatedAt` 表示本轮完整读取目录的时间,不表示推荐策略被重新选择。Python pin 因客户端安装契约保持不变,见单独来源记录;不为了让版本号“看起来同步”而改动该映射。
|
||||
17
docs/runtime-sources/node-recommended.md
Normal file
17
docs/runtime-sources/node-recommended.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# 推荐 node 官方归档核验
|
||||
|
||||
- 实际读取:2026-10-03(UTC)。
|
||||
- 数据:`runtimes/recommended.json#node`,版本 `24.21.0`。
|
||||
- 官方来源:[官方摘要清单](https://nodejs.org/dist/v24.21.0/SHASUMS256.txt)。
|
||||
- 官方目录:[Node dist index](https://nodejs.org/dist/index.json) 记录 v24.21.0 于 2026-09-07 发布,LTS 名 Krypton;本轮与推荐值完全一致。
|
||||
|
||||
| 平台 | 精确归档路径 | 官方 SHA-256(与本仓一致) |
|
||||
| --- | --- | --- |
|
||||
| darwin-arm64 | `v24.21.0/node-v24.21.0-darwin-arm64.tar.gz` | `bed7eea5325e1108f32ce5228ddd6a5f0f08a499ee42aa7442aea583702f6057` |
|
||||
| darwin-x64 | `v24.21.0/node-v24.21.0-darwin-x64.tar.gz` | `1462cb3b3046b815cf8ea436d3da450ec1a9f11dac7e5a46b0ada5305d7e8097` |
|
||||
| win32-x64 | `v24.21.0/node-v24.21.0-win-x64.zip` | `158f7685b44de51f6c0df1d153526cbcd3e1bc739a8dfc607721cef75de9e541` |
|
||||
| win32-arm64 | `v24.21.0/node-v24.21.0-win-arm64.zip` | `8779b1bde1d39f8d420e3b57aa657b39891af434d3de44a919044cec06785921` |
|
||||
| linux-x64 | `v24.21.0/node-v24.21.0-linux-x64.tar.gz` | `6e1db87ef58b8819e5d5402eff1536491b18edd8eb7bee5ef7897876e88dc5ff` |
|
||||
| linux-arm64 | `v24.21.0/node-v24.21.0-linux-arm64.tar.gz` | `724282c3b43aec998aa9527380465b45d229e021b58035f5f4f63095eabfe5d5` |
|
||||
|
||||
本轮仅核对官方发布目录/摘要,没有下载六个平台的整个归档,也没有在六个平台运行安装;不将此核验声明为下载字节复算、解压或客户端验收。推荐版本与 `minClientVersion` 保留原值。
|
||||
11
docs/runtime-sources/node-snapshot.md
Normal file
11
docs/runtime-sources/node-snapshot.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# node 离线目录快照
|
||||
|
||||
- 实际读取:2026-10-03T10:24:20.059Z
|
||||
- 官方来源:[官方目录](https://nodejs.org/dist/index.json)
|
||||
- 数据位置:`runtimes/versions-fallback.json#node`
|
||||
- 目录条数:33
|
||||
- 首条版本:v26.10.0
|
||||
- 本仓条目指纹(JSON.stringify、SHA-256):`d32502b95539459aec2d389de79f72fc1f4eee0645db5a411dab44c2ab716ff8`
|
||||
- 本轮读取的官方正文 SHA-256:`700401a06eb352ec19100649afbf767f76db33f194b22a9b903b3ff48e3bc482`
|
||||
|
||||
筛选规则:Node 16 及以上,每个大版本最多三条正式发布;保留上游顺序。不表示所有大版本仍受支持。
|
||||
11
docs/runtime-sources/package-managers/npm-snapshot.md
Normal file
11
docs/runtime-sources/package-managers/npm-snapshot.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# npm 离线目录快照
|
||||
|
||||
- 实际读取:2026-10-03T10:24:20.059Z
|
||||
- 官方来源:[官方目录](https://api.github.com/repos/npm/cli/releases?per_page=100)
|
||||
- 数据位置:`runtimes/versions-fallback.json#pkgManagers.npm`
|
||||
- 目录条数:13
|
||||
- 首条版本:v12.2.0
|
||||
- 本仓条目指纹(JSON.stringify、SHA-256):`27056f323070f8656d383f78af6cb087214fec8a64f6219577c1c4ed5732de87`
|
||||
- 本轮读取的官方正文 SHA-256:`962e64b30f02983acbd621d3dedb48ee9aa7826e441c9d928efcb9f494ba077a`
|
||||
|
||||
筛选规则:读取官方仓库最近 100 个 releases,排除 draft、prerelease、非正式版本标签及未来发布日期,最多 30 条;Yarn 只接受 @yarnpkg/cli 正式标签。created_at 字段保持客户端结构,值取 published_at。目录不代表当前平台安装测试已通过。
|
||||
11
docs/runtime-sources/package-managers/pnpm-snapshot.md
Normal file
11
docs/runtime-sources/package-managers/pnpm-snapshot.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# pnpm 离线目录快照
|
||||
|
||||
- 实际读取:2026-10-03T10:24:20.059Z
|
||||
- 官方来源:[官方目录](https://api.github.com/repos/pnpm/pnpm/releases?per_page=100)
|
||||
- 数据位置:`runtimes/versions-fallback.json#pkgManagers.pnpm`
|
||||
- 目录条数:30
|
||||
- 首条版本:v12.9.0
|
||||
- 本仓条目指纹(JSON.stringify、SHA-256):`96af5818605de45cf9c929e30d51c74c012ac978dac7e77a305c3f636829909a`
|
||||
- 本轮读取的官方正文 SHA-256:`35dac278b3f9725d02522fb3389a01bd5f5d25c9a6b2c3bc2c3bd9d322891b73`
|
||||
|
||||
筛选规则:读取官方仓库最近 100 个 releases,排除 draft、prerelease、非正式版本标签及未来发布日期,最多 30 条;Yarn 只接受 @yarnpkg/cli 正式标签。created_at 字段保持客户端结构,值取 published_at。目录不代表当前平台安装测试已通过。
|
||||
11
docs/runtime-sources/package-managers/yarn-snapshot.md
Normal file
11
docs/runtime-sources/package-managers/yarn-snapshot.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# yarn 离线目录快照
|
||||
|
||||
- 实际读取:2026-10-03T10:24:20.059Z
|
||||
- 官方来源:[官方目录](https://api.github.com/repos/yarnpkg/berry/releases?per_page=100)
|
||||
- 数据位置:`runtimes/versions-fallback.json#pkgManagers.yarn`
|
||||
- 目录条数:30
|
||||
- 首条版本:v4.18.1
|
||||
- 本仓条目指纹(JSON.stringify、SHA-256):`e8e15f9f1eb9d5eedd89fe7dc56b0b3ea0a187debabfafaeaded50bec837cd27`
|
||||
- 本轮读取的官方正文 SHA-256:`2df4d47de5ac9080ab062a5f3c2f62cad5de3f4f2abd4d72b696a4fbe622570a`
|
||||
|
||||
筛选规则:读取官方仓库最近 100 个 releases,排除 draft、prerelease、非正式版本标签及未来发布日期,最多 30 条;Yarn 只接受 @yarnpkg/cli 正式标签。created_at 字段保持客户端结构,值取 published_at。目录不代表当前平台安装测试已通过。
|
||||
25
docs/runtime-sources/python-fallback.md
Normal file
25
docs/runtime-sources/python-fallback.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# Python 离线版本列表
|
||||
|
||||
- 核查日期:2026-10-03(UTC)。
|
||||
- 数据:`runtimes/versions-fallback.json#python`,12 条映射,本轮保留原值。
|
||||
- 官方来源:[Hatch 1.16.5 distribution 表](https://github.com/pypa/hatch/blob/b998d2b755bc0dca20054f96da8981532444fc2a/src/hatch/python/distributions.py)。`hatch-v1.16.5` 官方 tag 指向该 commit;本轮实际读取 raw 正文,全部 12 条版本均在该表中。
|
||||
- 客户端依据:[DesireCore runtime-manager.ts](https://github.com/desirecore/desirecore/blob/412e05b043656d1f3ba2b56307ef5ceabbf8a77a/packages/agent-service/src/session/runtime-manager.ts) 与 [静态打包脚本](https://github.com/desirecore/desirecore/blob/412e05b043656d1f3ba2b56307ef5ceabbf8a77a/scripts/prepare-static.ts)。本轮 fetch 后 `origin/main` SHA 为 `412e05b043656d1f3ba2b56307ef5ceabbf8a77a`,两处 `HATCH_VERSION = '1.16.5'`。
|
||||
|
||||
`listAvailablePythonVersions` 使用 `hatch python show`,该命令读取内置映射,不向 Python 官网实时查询;二进制缺失或命令失败时才返回本文件。`name` 是安装实参,`version` 是该 Hatch 版本对该 name 的发行版映射。
|
||||
|
||||
因此 `3.14 → 3.14.0` 与推荐归档 `3.14.8` 不同,**并不能单凭最新 Standalone 目录将 fallback 改成 3.14.8**。安装器升级或可靠自定义源策略完成前,必须保留真实 pin 语义。待完成:确认推荐 3.14.8 的首启导入、后续 Hatch 安装/更新幂等判断及受门控客户端版本是否已支持;本轮不将官方归档存在等同于客户端安装验收。
|
||||
|
||||
| 名称 | 内置 pin |
|
||||
| --- | --- |
|
||||
| 3.7 | 3.7.9 |
|
||||
| 3.8 | 3.8.20 |
|
||||
| 3.9 | 3.9.24 |
|
||||
| 3.10 | 3.10.19 |
|
||||
| 3.11 | 3.11.14 |
|
||||
| 3.12 | 3.12.12 |
|
||||
| 3.13 | 3.13.9 |
|
||||
| 3.14 | 3.14.0 |
|
||||
| pypy2.7 | 7.3.20 |
|
||||
| pypy3.9 | 7.3.16 |
|
||||
| pypy3.10 | 7.3.19 |
|
||||
| pypy3.11 | 7.3.20 |
|
||||
19
docs/runtime-sources/python-recommended.md
Normal file
19
docs/runtime-sources/python-recommended.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# 推荐 python 官方归档核验
|
||||
|
||||
- 实际读取:2026-10-03(UTC)。
|
||||
- 数据:`runtimes/recommended.json#python`,版本 `3.14.8`。
|
||||
- 官方来源:[官方摘要清单](https://api.github.com/repos/astral-sh/python-build-standalone/releases/tags/20261001)。
|
||||
- 官方 release:tag `20261001`,published_at `2026-10-01T22:37:31Z`;非 draft/prerelease。逐平台精确资产名称、uploaded 状态和 API `digest` 均与推荐值一致。
|
||||
|
||||
| 平台 | 精确归档路径 | 官方 SHA-256(与本仓一致) |
|
||||
| --- | --- | --- |
|
||||
| darwin-arm64 | `20261001/cpython-3.14.8+20261001-aarch64-apple-darwin-install_only_stripped.tar.gz` | `69e48cd7f54261df5b6abbd374f69fe6e496fa781d271592aeef49cd5ffbea6c` |
|
||||
| darwin-x64 | `20261001/cpython-3.14.8+20261001-x86_64-apple-darwin-install_only_stripped.tar.gz` | `d613a1cb9e31dd512298c73fd300975e689938cc39d1486250cf47918963061c` |
|
||||
| win32-x64 | `20261001/cpython-3.14.8+20261001-x86_64-pc-windows-msvc-install_only_stripped.tar.gz` | `b7ff8b700995379e425b39abce9b087d84a45aa265ea465c0069c2747ea5b2ea` |
|
||||
| win32-arm64 | `20261001/cpython-3.14.8+20261001-aarch64-pc-windows-msvc-install_only_stripped.tar.gz` | `607b19be2bfcdbd0ba51dd4d225a6eeaa9b0c32c85d5b0521ced135033af5ecf` |
|
||||
| linux-x64 | `20261001/cpython-3.14.8+20261001-x86_64-unknown-linux-gnu-install_only_stripped.tar.gz` | `b373a4a4e4e70fc05f368c9b53d7738bf37637682b650d96c742805d2da26c32` |
|
||||
| linux-arm64 | `20261001/cpython-3.14.8+20261001-aarch64-unknown-linux-gnu-install_only_stripped.tar.gz` | `4395ae16388f9d3409cba7e20161753ed3359b13d959345415029f874f675162` |
|
||||
|
||||
本轮仅核对官方发布目录/摘要,没有下载六个平台的整个归档,也没有在六个平台运行安装;不将此核验声明为下载字节复算、解压或客户端验收。推荐版本与 `minClientVersion` 保留原值。
|
||||
|
||||
安装契约尚需闭环:当前核查的 DesireCore 远端 main 仍内置 Hatch 1.16.5,其 3.14 pin 是 3.14.0。推荐归档虽有真实官网依据,但不能据此证明旧安装器后续更新判断兼容;详见 [Python fallback 来源](python-fallback.md)。在客户端升级/定制源策略与实测前,不提高核验状态为账号或安装实测通过。
|
||||
Reference in New Issue
Block a user