- add local-folder OnlyOffice sign/callback writeback and edit-tab handling - align main resource tabs, attachment edit menu, slash isolation, and filetree context behavior - record Sidex/Hermes gap reviews and Reasonix task checklists
1.9 KiB
1.9 KiB
Reasonix Worker A:OnlyOffice local-folder 不再误请求 media/sign
你是编码 worker,不是审查员。你不独占代码库,可能有其他 worker 同时修改不同文件;不要回滚、覆盖或清理他人的改动。
Project Root
/mnt/Data1T/mnote
背景
详见:
bugs/05-editor-mainline/process/2026-05-21-office-edit-sign-plugin-gap-review-v1.mdbugs/05-editor-mainline/process/5-34-local-folder-media-sign-office-url-contract-v1.md
当前 /onlyoffice 页面只要有 assetId 就请求 /api/media/sign。local-folder asset 形如 local:asset:<path>,本来应直接使用传入的 local open fileUrl,因此这个请求会产生误导性的 404。
Ownership
你负责:
rust/crates/mnote-web/src/routes/onlyoffice.rs- 与 above 契约直接相关的
mnote-web单测 - 更新
bugs/05-editor-mainline/process/5-34-local-folder-media-sign-office-url-contract-v1.md的本轮执行记录
不要修改:
rust/crates/mnote-web/src/ssr/pages/layout.rs- ACP / Hermes 相关文件
- git 状态无关文件
任务
- 让
/onlyoffice页面识别 local-folder asset / local fileUrl,并在这种情况下跳过/api/media/sign。 - 保持非 local asset 仍可请求
/api/media/sign。 - 保持 doc key 安全化,不引入
/、:、中文等危险字符。 - 补或调整单测,确保页面脚本包含该判断。
设计约束
- local 判断应保守:优先基于
assetId前缀local:/local-file:,以及fileUrlpath 为/api/local-folder/files/open。 - 不要把
/api/media/sign改成本地文件签名端点。 - 不要改变 callback 或 edit/save 逻辑。
验收命令
请至少运行:
cargo test -p mnote-web onlyoffice -- --test-threads=1
如果失败,记录失败原因和相关输出。
最终输出
在 final 中列出:
- 修改文件
- 关键实现点
- 运行过的命令和结果
- 未完成项或风险