Files
wyndham-ARR/README.md
2026-07-29 18:34:03 +08:00

53 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Wyndham ARR
ARR 是一套受控的 Opera 日报处理与经营数据应用。当前可部署链路为:
```text
业务页面上传 XML
-> ARR 写入私有 OSS 并登记任务
-> ARR 调用 SuperAgent Open API
-> SuperAgent 读取 OSS XML 并执行确定性日报 Skill
-> SuperAgent 调用 ARR MCP 的 arr_submit_processing_result
-> ARR 独立复验源 XML 后事务落库
-> 日报历史、月度投影和渠道看板从数据库读取
```
## 公网部署
仓库提供 Docker 镜像与 Docker Compose + Caddy 部署入口。Dockerfile
默认 Web CMD 和 Compose Web command 都显式使用 `--enable-processing`
打开 XML 上传处理Compose 另使用 `--secure-cookies`、HTTPS、Web Basic Auth
和 MCP Bearer 保护公网服务。
完整步骤见 [`deploy/README.md`](deploy/README.md)。部署后必须确认:
- `GET /api/health``database_ready=true`
- `GET /api/health``processing_ready=true`
- MCP 未认证请求返回 `401`
- 认证后的 MCP 工具发现只返回 `arr_submit_processing_result`
应用源码默认仍为 fail-closed直接运行 `python -m arr_web.run` 不会自动开启上传处理。
运维若覆盖镜像 CMD必须在 Web 命令中保留 `--enable-processing`
## 主要入口
- `arr_web`:上传、任务历史、月度数据与渠道看板 Web/API
- `arr_mcp`SuperAgent 结构化处理结果的单工具 MCP 入库网关;
- `arr-opera-daily-ingest`Opera XML 的确定性日报处理 Skill
- `database`PostgreSQL 15+ schema、增量迁移和 MCP 契约;
- `tests`:单元、契约和无隐私合成链路测试。
## 当前能力边界
- XML 上传、私有 OSS 保存、SuperAgent 任务发起和 MCP 直接落库代码已接线;
- 正式公网环境仍需部署者注入数据库、OSS、SuperAgent 和 MCP Secret并完成一次无隐私 XML 竖切验收;
- “日报落库后自动触发月报”与月报 `TOTAL PRICE` 指定公式仍未实现,本部署配置不会开启月报/公司报表写入端点,也不会把远端 Agent `success` 误报为数据库已提交。
## 本地测试
```bash
python3 -m unittest discover -s tests -v
```
项目不会从仓库内自动加载 `.env`。真实凭据、业务 XML/XLSX、数据库文件、运行输出和虚拟环境均不得提交。