docs: record test environment bridge cutover

This commit is contained in:
wangliang
2026-10-23 12:12:04 +08:00
parent 5c1d2b9129
commit c6669b236a
+13 -8
View File
@@ -11,7 +11,7 @@
| 组件 | 容器 | 宿主端口 | 状态 |
|---|---|---|---|
| LibreDesk v2.9.0-rc.10(客服工作台 + 内置 AI) | `crmnew-libredesk` | `9000` | ✅ healthy |
| LibreDesk v2.9.0-rc.10(渠道/工作台) | `crmnew-libredesk` | `9000` | ✅ healthy |
| Twenty CRM v2.30.1(server) | `crmnew-twenty-server` | `3100` | ✅ healthy |
| Twenty worker | `crmnew-twenty-worker` | — | ✅ running |
| bridge(业务工具 / RPC 集成) | `crmnew-bridge` | `4100` | ✅ healthy |
@@ -74,7 +74,14 @@ RPC 走 **容器网络直连**:compose 把 `bridge` 同时接入外部网络 `
create_opportunity`。
- 默认助理 `Yehwang Assistant`(#1,10 个工具、引用与 handoff 开启)。
- Live chat Inbox `Website`(#1,uuid `ad25d7a4-722d-4561-aebf-9d8f60952d09`)。
- Automation:新会话自动分配给助理(#1,enabled)。
- Automation:Live chat 规则 1 已关闭(AI Assistant);新会话由 bridge webhook 接管。
- **2026-10-23 切流完成**:
- bridge webhook `Bridge AI` 已创建并启用(`message.created` → `http://bridge:4100/libredesk/webhook`)
- LibreDesk API key 已生成并写入 `.env`
- `Wholesale Support` 团队(id=1,Round robin,System 为成员)
- WhatsApp 规则改为 `assign_team=Wholesale Support`,启用
- `IDENTITY_CORS_ORIGIN` 改为 `https://wangliang-crm.dev.gaia888.com`
- bridge AI 端到端已验证,`bridge_ai_metrics` 开始有数据
### Twenty
- Workspace `Yehwang`:`2ff5a56b-95d8-40e1-85cf-529ad3a70ed7`(`ACTIVE`)。
@@ -154,7 +161,7 @@ docker run --rm -v /etc/nginx/conf.d:/c redis:7-alpine rm -f /c/zz-wangliang-crm
| ~~AI Provider(DashScope)~~ | ✅ **已配置**(qwen-plus-latest / text-embedding-v4),端到端已验证 | 换 key:`DASHSCOPE_API_KEY=sk-xxx node scripts/configure-ai.js` |
| **SMTP / 163 邮件** | `SMTP_*` 为空,OTP 与邮件渠道不可用 | 填 `.env` 后 `node scripts/configure-email.js` + `node scripts/add-email-inbox.js` |
| ~~知识库 RAG(search_kb)~~ | ✅ **已配置**:快照导入 `bridge` 库(594 行),`RAG_PG_URL` 已指向,`search_kb` 可用 | 更新:`FORCE=1 bash scripts/import-kb-snapshot.sh` 或 `node scripts/sync-kb-online.js --local-only --force` |
| **WhatsApp 渠道** | 无 Meta 凭据 | 填 `WA_*` 后 `scripts/add-whatsapp-inbox.js`;需要公网回调(本栈已有 HTTPS,可不用 cloudflared) |
| **WhatsApp 渠道** | `WA_*` 已存在,inbox 已存在;规则已指向人工团队 | 仍需确认 Meta callback 是否指向测试域名,并补测试号/模板 |
| **public-gateway / cloudflared** | 未启动 | 需要 Cloudflare 临时隧道时再 `docker compose up -d public-gateway cloudflared` |
> `IDENTITY_DEV_MODE=true` 只适合 dev;上生产前改回 `false`。
@@ -199,8 +206,7 @@ Necklace Star `$5.70`/110,与 RPC 直查一致(首次调试时的编价问
`price=null`/`stock=null` 时必须说“暂不可用”并建议转人工,禁止估算/换算币种。
- 复测:同一条问题,工具调用 612ms 返回真实商品,回复价格/库存与 RPC 完全一致。
⚠️ 仍存在的结构性问题:LibreDesk 内置 AI 的回复**不经过** bridge 的 `输出护栏`(output_guard)。
若后续要硬性拦截虚假价格/链接,需要走 bridge 自己的 agent 路径,或在 LibreDesk 侧加后置校验。
已改为 bridge agent 回复,输出护栏、Citation、飞轮、质量指标都生效;LibreDesk 内置 AI 仅保留作回滚。
验证完已把 `log_level` 恢复为 `info`。
@@ -210,12 +216,11 @@ Necklace Star `$5.70`/110,与 RPC 直查一致(首次调试时的编价问
`node scripts/quality-report.js 1`:自动建表成功。
```text
table_exists = bridge_ai_metrics;当前 rows=0
table_exists = bridge_ai_metrics;切流后已有数据
{"summary":{"runs":0,"errors":0,...},"tools":[],"hours":1}
```
⚠️ 表建好了,但**会一直是 0 行**:`bridge_ai_metrics` 只在 bridge 自己的 agent 路径(webhook 编排)里写入,
而本栈的 AI 回复走的是 LibreDesk 内置 assistant。要让质量报表有数据,需要改用 bridge agent 或另接埋点。
✅ 切流后 `bridge_ai_metrics` 由 bridge agent 写入;当前已有 Live chat AI 运行记录。
### 5.2 全量 sitemap ✅
官网 `sitemap.xml` 受阿里云 WAF 的 JS 挑战保护(直接 fetch 返回 4KB 挑战 HTML、0 个 `<loc>`)。