新增 Anthropic 链路,LLM 请求收口为 LlmRunRequest/LlmApiKind,新增Agent流程图绘图脚本 #70

Merged
kdletters merged 3 commits from codex/llm-run-request-provider-kind into codex/ai-game-creator-app 2026-06-30 19:33:37 +08:00
Owner

新增 Anthropic 链路,LLM 请求收口为 LlmRunRequest/LlmApiKind,为未来创建更多字段适配高级功能准备

新增 Anthropic 链路,LLM 请求收口为 LlmRunRequest/LlmApiKind,为未来创建更多字段适配高级功能准备
lhk229 added 1 commit 2026-06-29 21:54:56 +08:00
lhk229 force-pushed codex/llm-run-request-provider-kind from d2b3df712a to 2932a4041a 2026-06-30 10:47:16 +08:00 Compare
Member

发现
P1 apps/ai-game-creator-shell/src-tauri/src/main.rs:1348 只读取新的 GENARRATIVE_GAME_CREATOR_LLM_API_KIND / GENARRATIVE_LLM_API_KIND / LLM_API_KIND,旧的 *_LLM_PROTOCOL=chat_completions 不再兼容;但 Planner/Generator 会直接用新读取结果(:1843, :1887)。已有 .env.secrets.local 如果还用旧变量,会静默回默认 openai_responses,旧 Chat Completions 网关会被打错协议。最懒修法:继续接受旧变量别名,或检测到旧变量时报明确迁移错误。
P2 server-rs/crates/platform-llm/src/lib.rs:1833-1844 解析 Anthropic stream 时,message_delta.stop_reason=end_turn 后如果又收到 message_stop,会被覆盖成字面 "stop";覆盖发生在 :932-934。测试 :2641-2644 只覆盖了 message_delta,没覆盖两者同时出现的流。
P2 scripts/draw-agent-loop-flow.py:7-13 新脚本依赖 matplotlib,但仓库没有 requirements/脚本入口/隔离安装说明;我直接跑 python3 scripts/draw-agent-loop-flow.py --help 失败:matplotlib is required...。这个脚本现在是“提交了但仓库环境跑不了”。

发现 P1 apps/ai-game-creator-shell/src-tauri/src/main.rs:1348 只读取新的 GENARRATIVE_GAME_CREATOR_LLM_API_KIND / GENARRATIVE_LLM_API_KIND / LLM_API_KIND,旧的 *_LLM_PROTOCOL=chat_completions 不再兼容;但 Planner/Generator 会直接用新读取结果(:1843, :1887)。已有 .env.secrets.local 如果还用旧变量,会静默回默认 openai_responses,旧 Chat Completions 网关会被打错协议。最懒修法:继续接受旧变量别名,或检测到旧变量时报明确迁移错误。 P2 server-rs/crates/platform-llm/src/lib.rs:1833-1844 解析 Anthropic stream 时,message_delta.stop_reason=end_turn 后如果又收到 message_stop,会被覆盖成字面 "stop";覆盖发生在 :932-934。测试 :2641-2644 只覆盖了 message_delta,没覆盖两者同时出现的流。 P2 scripts/draw-agent-loop-flow.py:7-13 新脚本依赖 matplotlib,但仓库没有 requirements/脚本入口/隔离安装说明;我直接跑 python3 scripts/draw-agent-loop-flow.py --help 失败:matplotlib is required...。这个脚本现在是“提交了但仓库环境跑不了”。
kdletters requested review from kdletters 2026-06-30 11:26:43 +08:00
lhk229 added 1 commit 2026-06-30 14:50:24 +08:00
lhk229 added 1 commit 2026-06-30 19:28:40 +08:00
以 codex/ai-game-creator-app 的客户端配置文件架构(game-creator.config.json)为底,
融合当前分支的 LlmRunRequest/LlmApiKind(openai_responses/openai_chat/anthropic)维度。

手工融合 6 个冲突文件:
- src-tauri/src/main.rs:LLM 配置统一走客户端配置文件,配置字段 protocol→apiKind,
  读取/解析/校验改为 parse_game_creator_llm_api_kind,丢弃 env 读取分支,测试改用配置文件路径
- game-creator.config.json / App.tsx / appSurface.test.ts:配置 schema protocol→apiKind,
  配置面板下拉项改为三种 api_kind
- scripts/smoke-agent-run-local-provider + check-config:smoke 写入 apiKind,drift 校验同步
- 三份文档(decision-log / 技术方案 / 开发运维):改用客户端配置文件 + apiKind 口径

验证:cargo check 全目标通过;63/67 Rust 单测通过(4 个为既有 mock-server flaky 集成测试,
经核实在合并前分支上同样间歇失败,与本次合并无关);TS typecheck、vitest(45)、check-config drift 全通过。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
kdletters merged commit 65d1489bdd into codex/ai-game-creator-app 2026-06-30 19:33:37 +08:00
kdletters deleted branch codex/llm-run-request-provider-kind 2026-06-30 19:33:38 +08:00
Sign in to join this conversation.