Skip to content

Latest commit

 

History

History
13 lines (7 loc) · 1.96 KB

distribution-raw-binding.md

File metadata and controls

13 lines (7 loc) · 1.96 KB

raw 制品内容与缓存锁定位关联

对应 OpenSpec 5.3,正式安装未完成。

清单 1.2 raw 绑定要求原锁入口精确为 <二进制摘要>.bin;即使来源引用摘要与锁匹配,错误路径也拒绝。旧 1.0/1.1 仍可观察,但 inspect_distribution_raw 返回缺少新版映射,不能猜测/重写锁。

inspect_distribution_raw 静态绑定同一原清单/锁与工具/平台,核对精确包长度及 128 KiB 分块摘要,共享期限/取消。RawDistribution 借用冻结输入,不复制内容;只读访问器保留二进制摘要、锁/清单原字节摘要和精确定位,不提供批准或门禁状态;Debug 只输出长度/摘要,避免制品内容转储。发布层仍重新核验字节。

新增契约最初因 API 缺失编译失败。4 项普通 raw 契约覆盖无复制、长度/内容/陈旧锁拒绝、旧映射拒绝、工具选择、预算/取消、错误定位(连同相符来源摘要)拒绝;真实临时缓存发布后原锁入口摘要和基础可执行位匹配。预览对已绑定新版 raw 引导 verify_source_then_raw_package,旧声明仍提示 bind_raw_cache_locator;内容核验 not_run,不读包/写缓存。错误定位固定原因纳入反馈 schema。

本轮 raw 4、清单 14、包/完整布局 5、命令 25、crate 边界 5,共 53 项普通测试通过。另显式执行 1 项真实原生用例:本机 /opt/anaconda3/bin/ruff 0.16.8 的有界字节,经新版候选清单/锁关联、临时私有缓存发布,再由 runtime 精确核对原生 --version 输出,2.17 秒完成。此测试使用明确本机输入、固定预期版本及未批准测试声明,不发起下载、不执行 lint、不证明规则覆盖或发行批准。

4 份真实 raw 预览 schema 输出通过(新版 dry-run/apply、旧声明、错定位),伪造内容已验证被拒。全 workspace、其它平台和宿主未运行。可信下载/批准、运行时安装、正式 apply 与恢复仍未接通,5.3 不勾选。