From 42bb0a068addd99d9e20fe3bd5880fa66588686c Mon Sep 17 00:00:00 2001 From: lanrtop Date: Wed, 23 Sep 2026 04:19:08 +0900 Subject: [PATCH] =?UTF-8?q?docs(blueprint/agent):=20=E6=94=B6=E5=8F=A3?= =?UTF-8?q?=E5=8F=8C=E9=A1=B9=E7=9B=AE=E5=8E=9F=E7=94=9F=20MCP=20=E9=AA=8C?= =?UTF-8?q?=E6=94=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rules-Applied: R03,R08,R10,R13 --- .blueprint/manifest.yaml | 4 ++-- .blueprint/modules/agent-access-reliability.md | 8 ++++---- docs/ai-context/agent-button-system.md | 1 + 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.blueprint/manifest.yaml b/.blueprint/manifest.yaml index 74ce1ad..2c9ca99 100644 --- a/.blueprint/manifest.yaml +++ b/.blueprint/manifest.yaml @@ -484,9 +484,9 @@ modules: name: Agent 访问可靠性 area: infra status: in_progress - progress: 89 + progress: 96 updated: 2026-09-23 - note: "A1-A8 已闭环;A9 已通过双项目 scoped HTTP、越界拒绝及完全退出 unavailable 验证,等待关闭窗口托盘、新任务、UI 与正式安装版 autostart human_verify。" + note: "A1-A9 的 Agent 路径已闭环:关闭开发态窗口后托盘 MCP 仍可用,炼境与 Enterprise 新 Codex 任务均原生发现 scoped 工具。仅余设置页视觉与正式安装版 autostart human_verify。" position: [2750, 950] edges: diff --git a/.blueprint/modules/agent-access-reliability.md b/.blueprint/modules/agent-access-reliability.md index 16e3e22..9f4c36f 100644 --- a/.blueprint/modules/agent-access-reliability.md +++ b/.blueprint/modules/agent-access-reliability.md @@ -2,7 +2,7 @@ id: agent-access-reliability name: Agent 访问可靠性 status: in_progress -progress: 89 +progress: 96 --- ## 设计决策:Agent Access Reliability v1 @@ -145,13 +145,13 @@ Codex / Claude 项目 - acceptance: "[cargo test] 旧 unscoped Codex 配置重跑 onboarding → 报 legacy/upgrade_hint 且不覆盖手工同名 server;新配置指向当前 project_id 的 scoped URL;[Skill] MCP 缺失时按 configured→reachable→reload 顺序降级,不猜测状态或要求复制凭证。" - done_note: "verify_onboarding 已区分 scoped ready、旧 /mcp legacy 与错误项目;炼境托管块可幂等迁移到 scoped URL,手工同名 server 仍拒绝覆盖。接入包与私有插件 Skill 均采用 configured→reachable→reload;相关回归及 Rust 全量 176/176 通过。" -### 🔵 A9. 炼境与 Enterprise 消费者端到端验收 -- status: in_progress +### ✅ A9. 炼境与 Enterprise 消费者端到端验收 +- status: done - complexity: M - depends: A7. Agent 连接状态与自启动 UI 投影, A8. 项目作用域配置迁移与 Skill 降级指引 - files: .blueprint/modules/agent-access-reliability.md, .blueprint/manifest.yaml, docs/ai-context/agent-button-system.md - acceptance: "agent_verify: [HTTP MCP] 炼境与 Enterprise scoped endpoint 分别握手 → 只读取本项目状态,跨项目调用被拒绝;关闭窗口保留托盘后仍可调用,完全退出后 readiness=unavailable;新 Codex 任务重载后核心工具可见。human_verify: 用户在两个项目各打开一次新任务,均无需手工提供 project_id 或凭证即可读取自身状态。" -- progress_note: "真实开发实例已只监听 127.0.0.1;炼境与 Enterprise scoped endpoint 均完成 initialize、tools/list、get_delivery_status,返回各自 project_id;跨项目读取和 scoped 全局写工具均返回 scope_violation。两项目 managed config 已经各自 scoped inject_mcp 迁移;完全退出后确认 27190 无 LISTENING。待新任务、关闭窗口保留托盘、UI 与正式安装版 autostart human_verify。" +- done_note: "真实开发实例仅监听 127.0.0.1;炼境与 Enterprise scoped endpoint 均完成 initialize、tools/list、get_delivery_status,跨项目读取和 scoped 全局写工具返回 scope_violation;完全退出后 27190 unavailable。用户关闭窗口但保留托盘后,进程与 health 仍存活、26 个 scoped tools 可见且 get_delivery_status 可调用。新建的炼境任务 01a0ca89-8162-7010-8447-7468fce0a8a3 与 Enterprise 任务 01a0ca8a-1ef0-7d41-8eb7-afbf23185805 均产生原生 lian-jing/get_delivery_status MCP tool marker,分别绑定 dev-manager-tauri 与 d248554e-582d-4131-9e16-43ece91cd203,未使用 shell/手写 HTTP/本地文件兜底。" ## 执行顺序 diff --git a/docs/ai-context/agent-button-system.md b/docs/ai-context/agent-button-system.md index 341fe3f..abd4dd1 100644 --- a/docs/ai-context/agent-button-system.md +++ b/docs/ai-context/agent-button-system.md @@ -133,6 +133,7 @@ acceptance 是 agent 自验的唯一判断依据,必须是可执行断言: - readiness 分为 `configured → reachable → handshake → tools_ready → reload_required`。配置存在不等于当前任务已加载;停在哪层,就只修哪一层。 - `.lian-jing/context.json` 是项目身份唯一来源;Skill 和插件不复制项目身份、Gitea 凭证或 MCP 实现。 - Windows 登录自启动只服务正式安装版,默认关闭且由用户主动启用;debug 和 `target/release` 直接运行明确拒绝注册。single-instance 继续保证同一时间只有一个炼境实例。 +- 日常开发优先运行 `pnpm tauri dev`,Agent 直接消费同一 loopback MCP;正式安装包只在安装、自启动、升级或发布里程碑做一次验收,不作为每次提交的前置条件。 - 开发炼境前先从托盘完全退出正式安装版;不得把正式版与 `pnpm tauri dev` 并行运行。single-instance 是运行时兜底,不替代这一开发约定。 - updater 是独立的发布能力,不属于自启动或 readiness 的完成条件。