docs(acceptance): A1 补钉钉取件走 dws 的实现与复核结论
- 记录开关/路由/平台侧判定保留、凭据共享与续期 runbook 依赖 - 本人复核:worker 内 dws v1.0.63 接线、鉴权(须 HOME=DWS_HOME,否则误报未登录)、 真实调用 ok、回归测试 18 项 + 19 断言、CI #6/#7/#8 全 success
This commit is contained in:
@@ -11,12 +11,27 @@
|
||||
## A. 内容进入
|
||||
|
||||
### A1 取件(钉钉知识库 / PP 清单)
|
||||
- 入口:**来源与目录 → 内容来源**(勾选条目;钉钉扫码会话失效时先刷新会话)
|
||||
- 入口:**来源与目录 → 内容来源**(勾选条目;钉钉**扫码会话失效时先刷新会话**——注意:走 dws 取件后钉钉这条不再依赖浏览器会话)
|
||||
- 步骤:选来源 → 展开目录 → 勾选 → 取件(后台入队)
|
||||
- 期望:解析监控出现"处理中";失败进**死信**,可重排
|
||||
- 证据:`解析监控 → 死信` 队列;重排轮次键 `artifact-fetch:<version>:r<n>`
|
||||
- 状态:✅(死信重排修复 `cddc4c9`)
|
||||
|
||||
#### A1 补充:钉钉取件改走 dws(`f4e1ecc` / `6496ee3` / `9155bd3`,2026-10-09)
|
||||
- 开关:`ARTIFACT_DINGTALK_FETCHER=dws|auto|legacy`,线上为 **auto**(先 dws;**仅可重试错误**回落老路径)。
|
||||
- 路由:`adoc`→doc export docx;`axls`→sheet 读取转 xlsx;其余→drive 直下;`dlink/hlink`→missing;`amind/appt`→unsupported(详见 `docs/DINGTALK_DWS_FETCHER.md`)。
|
||||
- 平台侧判定全部保留:后缀路由、PPT 必须 PDF 双胞胎、magic、大小上限、sha256、spool 原子写、空壳检查 → dws 只负责"取字节"。
|
||||
- 本人复核(2026-10-09,在**已部署 worker** 内):
|
||||
- 接线:`dws` v1.0.63(`Edition: open`)在 `/usr/local/bin/dws`;`DWS_HOME=/data/home`、`DWS_CONFIG_DIR=/data/dws`、`DWS_DISABLE_KEYCHAIN=1`;宿主两份 state 已按文档挂载 ✓
|
||||
- 鉴权(**必须带 `HOME=DWS_HOME`**,直接 `docker exec dws` 会误报"未登录"):`authenticated:true`、`refresh_token_valid:true`、`refresh_expires_at 2026-11-08`、账号 姚章浩 / 深圳市越疆科技股份有限公司 ✓
|
||||
- 真实调用:`dws wiki +space-list --limit 1` → `ok:true`,返回"公司级技术支持知识库" ✓
|
||||
- 回归测试:`artifact_fetch_test.py` 18 项、`test_dws_error_map.py` 19 断言全绿 ✓
|
||||
- 运维依赖(验收时作为背景知识):
|
||||
- **refresh token 30 天轮换**:到期前 7 天按 runbook `dws auth login --device` 续期(本人浏览器授权);出现 `code=credentials` **立即停批**,不要重试风暴,授权后 `--retry-failed` 续跑。
|
||||
- 在线文档并发建议 **≤4**(当前 `ingestion_concurrency=2` ✓ 满足);8 路混合时巨型文档曾现 `export_failed`(已判可重试)。
|
||||
- 回退开关:`ARTIFACT_DINGTALK_FETCHER=legacy` 可完全绕过 dws。
|
||||
- CI:Gitea Run **#6/#7/#8 全 success**(#8 = 含本清单的 `b1b4ca5`)✓
|
||||
|
||||
### A2 标注与目录范围(路由到哪个库)
|
||||
- 入口:**来源与目录 → 勾选 → 标记**:`对内` / `对外` / `不需要`(目录级标记决定整目录)
|
||||
- 步骤:标注 → 生成修订
|
||||
|
||||
Reference in New Issue
Block a user