From aa748ae9c0c76dac7231f62ded3e74e2f682e66d Mon Sep 17 00:00:00 2001 From: KXH Date: Wed, 12 Aug 2026 02:50:39 +0800 Subject: [PATCH] docs: close production persistence verification --- README.md | 2 +- docs/deployment-free-tier.md | 2 +- docs/development-log.md | 1 + docs/release-readiness.md | 4 +++- docs/roadmap.md | 2 +- 5 files changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c284ac8..30cc078 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ FieldPilot 面向经常跨省市出差的外勤人员,把口语描述中的地 [FieldPilot 在线项目站](https://fieldpilot-kxh.netlify.app/) 使用 Vite `showcase` 构建模式展示业务问题、Agent Harness 组成、完整运行链路、Eval 驱动修正、检查点后缀重规划和验证边界;同一构建的 [`/workbench`](https://fieldpilot-kxh.netlify.app/workbench) 连接 [Render API](https://fieldpilot-api-t7m6.onrender.com/api/health),可实际完成任务解释、持久化、规划、执行检查点与事件式重规划。 -当前生产部署为 Netlify deploy `6a7b65c4c0df50fb6e96d2b5`,后端为 Render `0.6.0`。已验证根路径与 `/workbench` 返回 HTTPS 200、指纹化 JS/CSS 由 CDN 正确提供,CSP 只允许指定 Render API;Render 只向正式 Netlify origin 返回 CORS 许可,随机 origin 不获得许可。在线浏览器已显示 `API ok`,并完成杭州示例的解析、方案生成与激活。 +`0.6.0` 首次生产验收使用 Netlify deploy `6a7b65c4c0df50fb6e96d2b5`,后端为 Render `0.6.0`。已验证根路径与 `/workbench` 返回 HTTPS 200、指纹化 JS/CSS 由 CDN 正确提供,CSP 只允许指定 Render API;Render 只向正式 Netlify origin 返回 CORS 许可,随机 origin 不获得许可。在线浏览器已显示 `API ok`,并完成杭州示例的解析、方案生成与激活。 ## 本地运行 diff --git a/docs/deployment-free-tier.md b/docs/deployment-free-tier.md index 9fbc831..33db831 100644 --- a/docs/deployment-free-tier.md +++ b/docs/deployment-free-tier.md @@ -42,7 +42,7 @@ Invoke-RestMethod "$apiBase/api/ready" ## 当前状态 -截至 2026-08-12,三层免费拓扑的 `0.6.0` 已上线:Netlify 项目站与工作台为 和 `/workbench`,Render API 为 ,数据进入 Neon `fieldpilot` PostgreSQL。生产合并 commit 为 `c41b51b`,Netlify 生产 deploy 为 `6a7b65c4c0df50fb6e96d2b5`;已完成 health/ready、R1~R5 smoke、政策版本查询、CORS、SPA/CSP 和浏览器主链路复验。 +截至 2026-08-12,三层免费拓扑的 `0.6.0` 已上线:Netlify 项目站与工作台为 和 `/workbench`,Render API 为 ,数据进入 Neon `fieldpilot` PostgreSQL。生产合并 commit 为 `c41b51b`,首次 `0.6.0` 验收 deploy 为 `6a7b65c4c0df50fb6e96d2b5`;已完成 health/ready、R1~R5 smoke、政策版本查询、CORS、SPA/CSP、浏览器主链路和冷启动恢复复验。 已取得的上线证据: diff --git a/docs/development-log.md b/docs/development-log.md index ddc77ff..8f05a6c 100644 --- a/docs/development-log.md +++ b/docs/development-log.md @@ -378,4 +378,5 @@ Stage 4B:增加 AgentRun/DecisionTrace 持久化与请求幂等,建立版本 - Netlify 生产 deploy `6a7b65c4c0df50fb6e96d2b5` 上线。根路径、`/workbench`、SPA 回退、指纹化资源、CSP 和 `0.6.0`/`55 passed` 页面口径均通过。 - 生产 R1~R5 smoke 创建 Mission `msn-cd05f03d864b4dd78a07`;四类事件均 applied,政策快照 sequence 1→2 且 R3 绑定新快照,取消候选被排除,五段受保护前缀保持不变。 - CORS 正例只返回正式 Netlify origin,随机 origin 无许可;真实浏览器显示 `API ok` 与 Mock/Fixture 边界,并完成杭州示例的解析、方案生成和激活。 +- 证据 PR #16 合并为 `main@09ebc66` 后 Render 出现约 50 秒冷启动;恢复后再次读取上述 Mission,仍为 active R5,并保留五个修订、两版政策、执行检查点 V2 和五段受保护前缀,证明状态不依赖容器临时文件系统。 - 真实高德 Web Service Key 尚未配置,仍不声明线上实时路线、餐饮、票价、酒店库存或预订能力。 diff --git a/docs/release-readiness.md b/docs/release-readiness.md index cb07b98..847dc36 100644 --- a/docs/release-readiness.md +++ b/docs/release-readiness.md @@ -8,6 +8,8 @@ 生产合并点:`c41b51b`(PR #15) +生产证据合并点:`09ebc66`(PR #16) + ## 本地已验证 - [x] 工作区基线变更已保留在独立发布分支,没有删除用户已有的前端可读性与运行边界改进。 @@ -45,7 +47,7 @@ - [x] `release/fieldpilot-closure-20260810` 已通过 PR #15 合并,main CI 两次 PR 校验和合并后校验均成功。 - [x] Neon/Render/Netlify 已发布 `0.6.0`,并完成完整 R1~R5 与浏览器复验。 -- [ ] 证据提交触发 Render 重启后读取上述 smoke Mission,完成本版本的重启恢复复核。 +- [x] 证据 PR #16 合并后的 Render 冷启动完成;上述 smoke Mission 仍为 active R5,并恢复五个修订、两版政策、执行检查点 V2 与五段受保护前缀。 - [ ] 配置 GitHub secret `FIELD_PILOT_AMAP_API_KEY`,手动运行 `fieldpilot-amap-provider-validation` 并保存脱敏报告。 - [ ] 只有需要浏览器交互地图时才配置独立 Web JS Key 与安全码;后端 Web Service Key 不得进入前端。 diff --git a/docs/roadmap.md b/docs/roadmap.md index 0d4c5d6..3bef328 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -4,7 +4,7 @@ - [已完成] 本地与 main CI 的 55 项测试、Alembic `20260810_0005` 往返、工作台与专题页双构建通过。 - [已完成] PR #15 合并,Neon/Render/Netlify 发布,R1~R5 smoke、政策版本、CORS、SPA/CSP 和浏览器主链路通过。 -- [发布后复核] 通过证据提交触发服务重启后,再读取生产 smoke Mission,确认 `0.6.0` 的持久化恢复。 +- [已完成] 证据 PR #16 合并后服务发生冷启动;再次读取生产 smoke Mission,确认 R1~R5、两版政策和执行检查点均从 Neon 恢复。 - [待外部凭证] 使用独立高德 Web Service Key 运行 `fieldpilot-amap-provider-validation`,保存不含密钥和原始响应的脱敏报告。 - [可选] 只有产品确实需要交互地图时才配置浏览器 Web JS Key 与安全码。