Repository navigation
sync: 契约同步到 preview 5d38352a1(#1740、#1752),登记协议更新记录 - #22
Merged
Merged
Conversation
- contract/v1 用 contract.mjs sync 同步到 5d38352a1:projectGenerators 2 的 tool 字段、 新示例和用例;删除工具链草案 toolchains/proposal/ 和 fixtures/toolchains/proposal/; toolchains/README.md 新增后端协商和错误回复两节。 - 协议更新记录:记录到改为 5d38352a1;登记 #1740(projectGenerators 2)和 #1752; 首次出现表补 projectGenerators 2,litheToolchains 去掉“提案”。 - 能力与协议版本对照、API 总表、项目生成器和工具链功能页、根 README 随之更新, 去掉所有指向已删除草案的链接。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
为什么
主仓库 #1740 和 #1752 已合入
preview,两者都改了shared/contracts/plugins/v1/。按协议更新记录的“维护”流程,同步契约副本,登记这两个 PR,并更新受影响的页面。本次登记的 PR
两次同步之间(
644afdaac..5d38352a1)改动契约三处路径的 PR 只有这两个:projectGenerators2(API-33):生成器的tool字段litheToolchains1 写入正式契约,删除工具链设计草案@xiaoyumuxi 请核对
reference/protocol-changelog.md里 2026-11-05 的这两行。两个 PR 都没有新增或修改宿主方法、宿主通知,所以 API 总表的方法表和“宿主方法(按 API 编号)”索引不用加行。
改动
契约副本
contract/v1/(脚本生成,未手改)node scripts/contract.mjs sync --revision 5d38352a1757a70fd5fa297d7aa3e43bb2e33607,同步了 80 个文件,contract.lock.json随之更新。README.md新增tool字段和### Tool fields一节;plugin-manifest.schema.json允许projectGenerators2 和tool字段;fixtures/project-generators/project-generator-tool-field.plugin.json和templates/tool-field/README.md;project-plans.json从 10 个用例增加到 22 个;invalid-manifests.json新增 9 个工具字段的拒绝用例。toolchains/proposal/和fixtures/toolchains/proposal/(13 个文件);toolchains/README.md新增## Provider backend negotiation和### Error replies两节。reference/protocol-changelog.md644afdaac(#1747)改为5d38352a1(#1752)。projectGenerators2(2026-11-05,#1740);litheToolchains1 去掉“(提案)”,注明由 #1581 实现、正式契约由 #1752 写入。projectGenerators2 加粗。toolchains/proposal/,是历史记录,保持原样。reference/capabilities-and-versions.mdprojectGenerators2,链接到#tool-fields。宿主现状:Core ✅、macOS ✅、Windows —。litheToolchains1:链接从已删除的toolchains/proposal/protocol.md改为toolchains/README.md#provider-backend-negotiation。reference/api-catalog.mdprojectGenerators1 改为 1、2。reference/domains/project-generators.md(中英)projectGenerators2 一行:tool字段、${field.<id>.executable}、toolPins;tools/installations/toolTooOld,目录条目tools;runtime字段,版本 1 不能用tool字段。runtime注明只用于版本 1;新增tool的说明,包括属性、没有default、初始选择规则和忽略末尾 0 的版本比较。.version/.major注明只用于runtime,新增只用于tool的.executable。toolPins存为项目工具固定,用的是工具设置页的同一个存储。project-generator-tool-field.plugin.json一行,含python-app、node-app;project-plans.json改为 22 个用例,其中 12 个工具字段用例;tool-field/README.md;invalid-manifests.json的 9 个用例。reference/domains/toolchains.md(中英)toolchain_vectors.rs里。README.md(中英)toolchains/proposal/行。toolchains/行的描述补上提供方后端协商(litheToolchains)和稳定失败码。验证
node scripts/contract.mjs verify:通过,80 个文件固定在5d38352a1。node scripts/contract.mjs verify --upstream:通过。node scripts/contract.mjs drift --ref preview:无漂移,上游preview和5d38352a1一致。node --test scripts/*.test.mjs:16 个通过,0 个失败。README.md、reference/、guides/下 27 个文件的 1266 个相对链接和锚点逐个检查,0 个失效。contract/以外查找toolchains/proposal:只剩更新记录里 #1752 和 #1747 两行的历史描述。scripts/sdk-e2e.mjs:#1740 和 #1752 都没改plugin_function.rs,插件后端协议没有变化。