平台资料云工适配
把公共[平台资料接口](../../../豫言操作系统接口/平台资料/规范.汉语.md)映射到云工宿主。适配本身很薄:参数检查(集名 1 至 64 字节且无控制字符、前缀至多 512 字节、键 1 至 512 字节,违规抛「平台资料参数无效」)和结果整形,真正的取资料、解压、筛键、排序与缓存在宿主 JS 豫言操作系统/宿主/云工/平台资料.mjs,经两个新的宿主原语:
豫言_云工_平台资料列键安全(集, 前缀)返回(是否成功,JSON 字符串数组文字或错误文);豫言_云工_平台资料读文字安全(集, 键)返回(状态,文字或错误文),状态 0 键存在、1 键不存在、2 失败。
两个原语都是“安全变体”:宿主失败作为值返回,适配再转成可捕获的豫言异常,不让 JS 异常越过 Wasm 边界。
- 为什么放宿主:云工作台的资料集
标准库是约 2.7 MB 的 gzip(解压后约 57 MB 的 JSON,共 1879 个条目,其中只有 51 个是豫言标准库源码)。豫言的 JSON 解析器不能吞下 57 MB,也不该每个事件解一次;宿主用DecompressionStream解压、解析,只保留键以/库/标准库/起首的字符串条目,按宿主实例缓存,应用每次只拿到需要的键列表或某个键的文字。 - 授权:
标准库映射到许可授权的服务绑定BROWSER_COMPILER(许可.json的SERVICE里要有它),网址固定为https://yuyan-lang.org/试写间/编译/资源/标准库.json.gz,应用不能自选来源。 - 接入宿主的改动(已落实):
宿主.mjs头部import {创建平台资料} from './平台资料.mjs';创建云工宿主里const 平台资料 = 创建平台资料({全局});能力表里登记上述两个原语;豫言操作系统/应用/双宿主构建/入口。豫复制宿主文件的清单里加上平台资料.mjs。改动片段见平台资料.mjs文末注释。
验证见 一致性验证/。