- 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
54 lines
2.0 KiB
Markdown
54 lines
2.0 KiB
Markdown
# Reasonix Worker C: OnlyOffice Docx Upload Open Freeze
|
|
|
|
Project root: `/mnt/Data1T/mnote`
|
|
|
|
## 背景
|
|
|
|
用户报告:上传 `DHA美黑化妆品监管综述_2026-05-16.docx` 后卡死,docx 打不开,并出现 OnlyOffice 连接失败信息。
|
|
|
|
事实源:
|
|
|
|
- Review: `bugs/05-editor-mainline/process/2026-05-21-workbench-filetree-office-slash-bugs-review-v1.md`
|
|
- Checklist: `bugs/05-editor-mainline/process/5-29-onlyoffice-docx-upload-open-freeze-v1.md`
|
|
|
|
## Ownership
|
|
|
|
你负责:
|
|
|
|
- `rust/crates/mnote-web/src/routes/onlyoffice.rs`
|
|
- `rust/crates/mnote-web/src/routes/local_folder_source.rs` 中 local file open / upload 的小范围修复
|
|
- `rust/crates/mnote-web/src/routes/web_shell.rs` 中 office resource tab 打开/错误 UI 的小范围修复
|
|
- `rust/crates/mnote-web/src/ssr/pages/layout.rs` 中附件 open URL 的小范围修复
|
|
- OnlyOffice/local upload 相关 tests
|
|
|
|
不要修改文件树 trash、默认 workspace、右键菜单结构、slash 定位、ACP/Hermes 文件。你不是独自在代码库中工作;不要回滚、覆盖、格式化或清理其他 worker 的改动。不要提交 git。
|
|
|
|
## 任务
|
|
|
|
1. 定位 docx 卡死发生层级:上传、附件插入、主 tab iframe、OnlyOffice DocumentServer 回源或错误处理。
|
|
2. 确保本地 docx 打开时:
|
|
- `fileUrl` 指向 `/api/local-folder/files/open?rootUri=...&path=...`
|
|
- `fileType=docx`
|
|
- `assetId=local-file:<relativePath>`
|
|
- 主 tab 打开优先,不默认弹出浏览器窗口。
|
|
3. OnlyOffice iframe 加载失败时显示非阻塞错误,不让主页面卡死。
|
|
4. 补 targeted test。
|
|
|
|
## 验证
|
|
|
|
至少运行:
|
|
|
|
```bash
|
|
cd /mnt/Data1T/mnote/rust
|
|
cargo test -p mnote-web local_file_open_sets_pdf_and_office_content_type -- --test-threads=1
|
|
cargo test -p mnote-web onlyoffice_page_exposes_documentserver_fetch_base_for_local_files -- --test-threads=1
|
|
cargo test -p mnote-web sidebar_tree_runtime_opens_office_assets_through_resource_shell -- --test-threads=1
|
|
```
|
|
|
|
## 最终回复格式
|
|
|
|
- 修改文件列表
|
|
- 完成的 checklist 项
|
|
- 运行过的命令和结果
|
|
- 未完成项/风险
|