docs: AGENTS.md 只保留代理规则,项目信息迁入 README 与 docs/
把 AGENTS.md(545 行)中的项目知识按性质拆开,只留下对代理的要求: - AGENTS.md(176 行)只写规则:读文档指引、提交许可、等待规则、TDD、 测试规则(模块边界/三段结构/功能覆盖优先)、注释规范、目标运行环境、 PowerShell 规则、文档维护规则; - 项目信息新建 docs/ 专题:architecture、node-protocol、workflows、 configuration、operations、testing、decisions; - README 改为项目索引(定位、快速开始、文档导航、目录、工作流、结论摘要); - 修正旧文档错误:README 的"详细约定见 AGENTS.md"与"100% 行覆盖率" (pytest 已移除该门槛);环境变量表补齐 WOV_AUTO_VAD 等 3 项。 新增 scripts/check_doc_links.py 校验相对链接与锚点,当前 14 个文档全部可达。
This commit is contained in:
+2
-2
@@ -40,9 +40,9 @@
|
||||
|
||||
- 根因:普通任务删除接口未区分 `source=batch`,直接递归删除 `Path(input_uri).parent`;自动清理器也使用输入路径推导删除目录。
|
||||
- 处理约定:普通删除接口拒绝批量 run(422),提示通过批量任务入口删除;上传任务只清理 `<storage>/uploads/<run_id>` 和 `<storage>/runs/<run_id>`。批量任务已有专用删除入口,保留源视频和视频旁成品。
|
||||
- 测试要求:使用 `testdata/` 真实视频与字幕副本、临时数据库及私有存储;覆盖批量任务拒绝删除、正常上传清理、历史外部输入路径保护和自动清理路径保护。
|
||||
- 测试要求:使用各模块 `data/` 下的真实视频与字幕副本、临时数据库及私有存储;覆盖批量任务拒绝删除、正常上传清理、历史外部输入路径保护和自动清理路径保护。
|
||||
- 实现:[普通删除接口](../src/wov_app/routers/apps.py) 在删除前拒绝批量 run;[自动清理器](../src/wov_app/maintenance.py) 和普通接口均按私有目录布局定位清理范围。
|
||||
- 回归测试:[test_run_deletion_safety.py](../tests/test_run_deletion_safety.py),覆盖五种状态的批量 run、外部输入路径与旁挂字幕保护、其他任务目录保护。
|
||||
- 回归测试:`tests/app/test_batch/`(批量删除与旁挂字幕保护)、`tests/app/test_maintenance/`(自动清理路径保护)、`tests/app/test_routers/test_apps_api.py`(删除接口拒绝批量 run)。测试代码已按模块化重构,原平铺文件 `tests/test_run_deletion_safety.py` 已删除,用例覆盖范围不变(详见 [testing.md](./testing.md#重构历史已完成))。
|
||||
- TDD 红:`uv run pytest tests/test_run_deletion_safety.py -q --tb=short`,7 failed;批量 run 被错误删除,两个外部路径用例复现媒体文件丢失。
|
||||
- TDD 绿及相关回归:`uv run pytest tests/test_run_deletion_safety.py tests/test_apps_api.py tests/test_batch.py tests/test_maintenance.py -q`,73 passed,7.73 秒;仅有既存 Starlette/httpx 弃用警告。
|
||||
- 状态:修复及验证完成,纳入 `fix/review-improvements` 分支;未部署。运行中的旧进程需加载新代码后才能获得保护。
|
||||
|
||||
Reference in New Issue
Block a user