d964b46dbe
deploy cube / build-and-deploy (push) Successful in 1m22s
前端 apps.ts 之前是 source of truth,后端 chatbot 只能用硬编码的 "werewolf / articulate / karaoke / music / simpleasm 等" 句式糊 弄 + 靠训练知识猜。改成 apps.json 当 SSOT: - 前端 apps.ts 改为 import data from './apps.json' - 后端 include_str! 同一份 → 解析渲染 markdown bullet 列表 注进 system prompt,附带 slug / status / desc / url - prompt 显式约束:只能基于列表事实回答,不存在的 app 直说没有 - 兜底:JSON 解析失败把 raw 文本喂 LLM,不让 chatbot 因为 ssot 坏掉 500 - 10 个 cargo test(多覆盖 render_apps_list / prompt 含 apps)