Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 12 additions & 4 deletions PLAN.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

本计划把已核对的 DesireCore 接口整理成公开站点中的“集成与 API”区域。用户应能根据文档取得正确的服务地址和授权凭据,完成一次调用,理解响应与运行结果,并处理实际错误。实施采用主 Agent 协调、多个 subAgent 按接口能力并行核查、编写和验证的方式;先交付一个完整可用的接入流程,再按各项能力的实际进度发布扩展参考和 OpenAPI 下载。

状态:P0—P5 完整选定范围已实施并通过本地验收;8 组双语页面、示例客户端、24 个端点及三个服务的规范就绪。上游 #4793、源码 #4798 与公开文档 #72 已合并,自动部署成功;16个API页面和8个下载正式线上验收通过。全站验收发现应用场景入口的旧canonical冲突,正在补修。更新日期:2026-10-15。
状态:P0—P6 选定范围实施与发布验收完成。源码 #4798 已合并;文档 #72 及场景入口修复 #73 已合并并完成网站自动部署;16个API页面、8个下载和全站716URL线上验收通过。即时站内搜索尚未返回新增API页,未宣称搜索收录完成。更新日期:2026-10-15。

## 1. 实施目标与完成标准

Expand Down Expand Up @@ -304,9 +304,9 @@ pnpm exec docusaurus serve --host 127.0.0.1 --port 3000
- [x] **T6.2** 按批次创建 `codex/` 分支与 PR;涉及其它仓库的前置修正分别发布并记录依赖。
- [x] **T6.3** 进入发布流程后,将已验证改动合并/推送到公开仓库 `main`,等待自动部署结果。按仓库规范无需手动执行 Vercel 部署命令。
- [x] **T6.4** 核对线上 `/api`、`/en/api`、已公开叶子页面、语言切换及 OpenAPI 下载(若本批包含)。
- [ ] **T6.5** 部署成功后执行 `pnpm sitemap:check`,验证生产 URL、canonical、robots、跳转和软 404。
- [ ] **T6.6** 检查新增内容的搜索可发现性;区分搜索爬取延迟与页面部署失败。
- [ ] **T6.7** 回写本计划状态、公开端点清单与内部台账,记录最终代码/文档/发行基线。
- [x] **T6.5** 部署成功后执行 `pnpm sitemap:check`,验证生产 URL、canonical、robots、跳转和软 404。
- [x] **T6.6** 检查新增内容的搜索可发现性;区分搜索爬取延迟与页面部署失败。
- [x] **T6.7** 回写本计划状态、公开端点清单与内部台账,记录最终代码/文档/发行基线。

发布后若发现错误的调用合同,先修正文档承诺与示例并重新走 Git 自动部署;必要时撤下有误的入口/下载项,保留合理迁移路径。仅回退公开文档提交不应修改客户端数据或权限配置。

Expand Down Expand Up @@ -477,3 +477,11 @@ P0—P5 表示工作范围,不能作为全局串行阶段。主 Agent 先完
严格生产验收16页、8下载全部200,canonical、语言/同页alternate、可索引性、两语言sitemap条目、robots及下载字节/规范来源全部通过,逐项报告见 `api/production-verification.json`。浏览器从中文对话指南切换英文,保持同页,英文正文和API导航渲染正常、无整页水平溢出。

全站718URL均200,但 `/use-cases` 与 `/en/use-cases` 的canonical被目录README隐式索引覆盖为尾斜杠地址。作者资产说明已重命名为默认排除的 `_README.md`,不改正常入口slug、不放宽验收器。待该修正自动部署后重跑全站检查,再完成T6.5。

## 15. 最终发布验收结果(2026-10-15)

场景入口修复 #73 已合并为 `5d9cef1eac584ffa8c925636ac5d24ae174e5150`,Production deployment `7088538260` 于北京时间17:09:54成功。部署后 `pnpm sitemap:check` 716URL全部200,canonical/robots/跳转/软404检查全部通过。原718条中的两个作者README隐式索引别名已移除,正式页面保留。16个API页和8个下载的最终严格复验全部通过,所有下载字节仍与发布源码一致。

即时站内搜索返回19条已有Webhook结果,未返回新增API路径;新页均可通过导航访问且sitemap/robots允许抓取。已完成索引状态检查,但不把可抓取写成已经收录,也不把搜索未更新当作部署失败。

来源清单固定最终源码与对应内部docs指针;内部全量发现台账保留原核查快照,不将本次选定合同差异复核冒充全量重新扫描。最终发布链、部署编号、生产逐项结果及限制保存在 `api/publication.json` 与 `api/production-verification.json`。
2 changes: 1 addition & 1 deletion api/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,4 +64,4 @@ pnpm api:check -- --build

## 当前验证记录

参见 [核查与验证](./verification.md)。后续更改认证、路由、配置入口或结果交付时,只重新核对受影响合同和相关示例,不将本批测试结果传播为其它功能的运行保证。
参见 [核查与验证](./verification.md)、[发布与验收摘要](./publication.json)及[生产逐项报告](./production-verification.json)。后续更改认证、路由、配置入口或结果交付时,只重新核对受影响合同和相关示例,不将本批测试结果传播为其它功能的运行保证。
42 changes: 21 additions & 21 deletions api/production-verification.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"checkedAt": "2026-10-15T08:55:45.929Z",
"checkedAt": "2026-10-15T09:10:42.184Z",
"mode": "strict",
"result": "passed",
"origin": "https://docs.desirecore.com",
Expand All @@ -13,20 +13,20 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/sitemap.xml",
"contentType": "application/xml",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "sitemap",
"entries": 359
"entries": 358
},
{
"pathname": "/en/sitemap.xml",
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/sitemap.xml",
"contentType": "application/xml",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "sitemap",
"entries": 359
"entries": 358
},
{
"pathname": "/robots.txt",
Expand All @@ -49,7 +49,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/api",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "集成与 API | DesireCore Docs",
Expand All @@ -69,7 +69,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/api/connection-and-auth",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "连接实例与认证 | DesireCore Docs",
Expand All @@ -89,7 +89,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/api/agent-webhook",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "智能体 Webhook | DesireCore Docs",
Expand All @@ -109,7 +109,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/api/errors-and-troubleshooting",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "错误与排查 | DesireCore Docs",
Expand All @@ -129,7 +129,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/api/conversations-and-runs",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "对话与运行记录 | DesireCore Docs",
Expand All @@ -149,7 +149,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/api/model-proxy",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "模型协议代理 | DesireCore Docs",
Expand All @@ -169,7 +169,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/api/workflow-integration",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "工作流集成 | DesireCore Docs",
Expand All @@ -189,7 +189,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/api/openapi",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "OpenAPI 下载 | DesireCore Docs",
Expand Down Expand Up @@ -270,7 +270,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/api",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "Integration & API | DesireCore Docs",
Expand All @@ -290,7 +290,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/api/connection-and-auth",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "Connect to an Instance and Authenticate | DesireCore Docs",
Expand All @@ -310,7 +310,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/api/agent-webhook",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "Agent Webhook | DesireCore Docs",
Expand All @@ -330,7 +330,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/api/errors-and-troubleshooting",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "Errors and Troubleshooting | DesireCore Docs",
Expand All @@ -350,7 +350,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/api/conversations-and-runs",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "Conversations and Runs | DesireCore Docs",
Expand All @@ -370,7 +370,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/api/model-proxy",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "Model Protocol Proxy | DesireCore Docs",
Expand All @@ -390,7 +390,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/api/workflow-integration",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "Workflow Integration | DesireCore Docs",
Expand All @@ -410,7 +410,7 @@
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/api/openapi",
"contentType": "text/html; charset=utf-8",
"cacheStatus": "MISS",
"cacheStatus": "HIT",
"problems": [],
"kind": "page",
"title": "OpenAPI download | DesireCore Docs",
Expand Down
78 changes: 78 additions & 0 deletions api/publication.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
{
"recordedAt": "2026-10-15T09:10:42.184Z",
"productionOrigin": "https://docs.desirecore.com",
"source": {
"pullRequest": "https://github.com/desirecore/desirecore/pull/4798",
"headRevision": "3801f4d79cd4e578b8f3e006913a0c552e3763f3",
"mergeRevision": "e45f22902af2dc45b109cfa8f454795538aea2ed",
"ciRun": "https://github.com/desirecore/desirecore/actions/runs/38559639612",
"internalDocsRevision": "9cc47fc9216db4a3803a982f00649f7af667c933",
"checks": "passed"
},
"documentation": {
"pullRequest": "https://github.com/desirecore/docs/pull/72",
"mergeRevision": "93fcbd26c64465e147b8c6532f48c1558a3c989a",
"productionDeploymentId": 7088235715,
"deployedAt": "2026-10-15T08:54:38Z",
"checks": "passed"
},
"canonicalRepair": {
"pullRequest": "https://github.com/desirecore/docs/pull/73",
"mergeRevision": "5d9cef1eac584ffa8c925636ac5d24ae174e5150",
"productionDeploymentId": 7088538260,
"deployedAt": "2026-10-15T09:09:54Z",
"reason": "Exclude author-only README implicit index, preserving the intended bilingual use-case pages.",
"checks": "passed"
},
"acceptance": {
"apiPages": 16,
"downloads": 8,
"apiFailures": 0,
"apiDetails": "production-verification.json",
"sitemapUrls": 716,
"sitemapHttp200": 716,
"sitemapSeoFailures": 0,
"useCases": {
"checkedAt": "2026-10-15T09:10:39.368Z",
"results": [
{
"pathname": "/use-cases",
"status": 200,
"finalUrl": "https://docs.desirecore.com/use-cases",
"canonical": "https://docs.desirecore.com/use-cases",
"h1": "应用场景",
"expectedH1": "应用场景",
"passed": true
},
{
"pathname": "/en/use-cases",
"status": 200,
"finalUrl": "https://docs.desirecore.com/en/use-cases",
"canonical": "https://docs.desirecore.com/en/use-cases",
"h1": "Use Cases",
"expectedH1": "Use Cases",
"passed": true
}
]
},
"browser": {
"page": "https://docs.desirecore.com/api/conversations-and-runs",
"localeSwitchTo": "https://docs.desirecore.com/en/api/conversations-and-runs",
"samePage": true,
"englishHeading": "Conversations and Runs",
"documentHorizontalOverflow": false
}
},
"search": {
"checkedAt": "2026-10-15T09:10:17.966Z",
"httpStatus": 200,
"query": "Webhook",
"hits": 19,
"newApiUrls": [],
"status": "New API pages not returned by immediate search; page deployment, sitemap inclusion and crawlability passed. Search indexing is not claimed complete."
},
"limitations": [
"No commercial model, packaged-client or production business-operation acceptance is inferred from this documentation deployment.",
"Original source tests retain their recorded fixed revisions; final source CI and contract comparisons are recorded separately."
]
}
8 changes: 7 additions & 1 deletion api/verification.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ CAS回归使用受控writer钩子证明冲突分支无事件写入和无secret

网站 `pnpm typecheck`、双语 `pnpm build`、`pnpm api:check -- --build` 通过。后者核对HTML、canonical、hreflang、sitemap及两语言的3个spec和Node示例下载副本字节。1440、1280、1024、375宽度下六个API主/新页面均无整页水平溢出;中文对话指南切换英文后仍在同页。复制按钮反馈成功,浏览器提供的剪贴板读数为空,未声称核验剪贴板内容。

源码 PR:[desirecore/desirecore#4798](https://github.com/desirecore/desirecore/pull/4798)。内部文档合并保留并行应用开发文档,指定gitlink已可达远程main。公开文档 PR:[desirecore/docs#72](https://github.com/desirecore/docs/pull/72),Vercel预览与CLA通过;自动部署结果待回写。CodeQL发现XML实体串联替换可重复解码,已改为单次匹配,并验证五类实体、嵌套编码和未知实体。尚未宣称生产部署成功。未验证商业模型、公网Caddy/TLS部署、已发行桌面安装包或用户业务副作用;新能力按实际服务支持条件使用。
源码 PR [desirecore/desirecore#4798](https://github.com/desirecore/desirecore/pull/4798) 已全绿合并,指定内部文档gitlink远程可达。公开文档 PR [desirecore/docs#72](https://github.com/desirecore/docs/pull/72) 与场景入口修复 #73 已合并并自动部署成功,API页面/下载及全站716URL验收通过,完整发布链见 [publication.json](./publication.json)。CodeQL发现的XML实体重复解码已修为单次匹配,并验证五类实体、嵌套编码和未知实体。商业模型、Agent服务公网Caddy/TLS部署、已发行桌面安装包或用户业务副作用不在本次文档部署验收范围;新能力按实际服务支持条件使用。

---

Expand Down Expand Up @@ -167,3 +167,9 @@ node_modules/.bin/vitest run --project integration --maxWorkers=1 --no-file-para
公开PR #72 已合并为 `93fcbd26c64465e147b8c6532f48c1558a3c989a`,Production deployment `7088235715` 于北京时间16:54:38成功。16个API页面与8个下载的严格验收全部通过,报告为 [production-verification.json](./production-verification.json):包含逐页canonical/语言/alternate/索引条件、sitemap/robots及下载长度和SHA-256;三个规范指向最终源码 `e45f229`。中文对话指南在浏览器切换英文后保持同页,正文和导航正常。

全站sitemap初次检查718项均200,但两个应用场景入口存在README/index输出覆盖导致的canonical冲突。修复只重命名作者资产说明为 `_README.md`,继续保留严格验收规则;修复后的生产验收单独记录。

## 发布完成与全站复验(2026-10-15)

修复 #73 合并为 `5d9cef1eac584ffa8c925636ac5d24ae174e5150`,Production deployment `7088538260` 成功后,全站 `pnpm sitemap:check` 716URL全部200及SEO检查通过。两个应用场景入口的canonical与正文标题均准确。16个API页面、8下载及两sitemap/robots再次严格通过,`production-verification.json` 已更新为这次最终报告。

完整发布链与限制见 [publication.json](./publication.json)。站内即时Webhook检索返回19个已有结果,尚无新增API路径;页面、导航和抓取条件已经通过,未宣称搜索索引刷新完成。商业模型、安装包与生产业务执行仍不属于本次文档部署验收。
Loading