18 Commits
Author SHA1 Message Date
Agent Board 896c94b696 feat: integrate pi rust lab runtime 2026-07-10 10:54:34 +08:00
lix-2026 a1dcfc9f76 fix: use readonly preview for code resource tabs 2026-06-04 23:00:53 +08:00
lix-2026 eccf399142 fix: limit resource preview watches to active tab
Root cause: every local resource preview tab kept its own /api/local-folder/events EventSource alive. Hidden PDF and Office tabs consumed browser same-origin connection slots, so later preview iframes/file reads stalled and rendered as blank pages.

Changes:
- keep passive resource file watching active-tab only
- close inactive resource-tab EventSources on tab activation and release
- update the bug record with the PDF fifth-open and XLSX fourth-open repro and verification

Verification:
- node --check rust/crates/mnote-web/browser/document-resource-tab-runtime.js
- cargo test -p mnote-web --manifest-path rust/Cargo.toml pdf_preview_page_does_not_render_visible_toolbar
- cargo test -p mnote-web --manifest-path rust/Cargo.toml document_shell_returns_page_aggregate_snapshot
- cargo build -p mnote-web --manifest-path rust/Cargo.toml
- browser smoke: opened 5 XLSX previews; #4 and #5 completed with tableCount=1
- browser smoke: opened 5 DHA PDFs; #5 rendered 8/8 canvases, iframeCount=0, browser errors=0
2026-06-04 21:00:42 +08:00
lix-2026 627213dc01 feat: add evidence search and stabilize pdf previews
- add document evidence parsing/search/open routes, Hermes tool wiring, local index settings/status, and the document-evidence skill plus design notes
- fix PDF resource tabs by rendering PDFs inline with pdf.js canvases instead of iframe preview pages, release PDF documents on close, and document the fourth-PDF stall bug
- keep PDF preview at 2x rendering while removing the previous lazy-load/placeholder direction, and make dev:hot bind loopback defaults externally reachable

Verification:
- node --check rust/crates/mnote-web/browser/document-resource-tab-runtime.js
- node scripts/task-dev-hot-plan-test.js
- cargo test -p mnote-web --manifest-path rust/Cargo.toml pdf_preview_page_does_not_render_visible_toolbar
- cargo test -p mnote-web --manifest-path rust/Cargo.toml document_shell_returns_page_aggregate_snapshot
- cargo build -p mnote-web --manifest-path rust/Cargo.toml
- browser smoke: sequentially opened the four tea_seed_oil_cosmetic PDFs; fourth PDF rendered 15/15 canvases, iframeCount=0, browser errors=0
2026-06-04 18:51:16 +08:00
lix-2026 9f4b5c4d48 fix: stabilize local folder AI document workflow
- scope local-folder PageTree revision and document sidebar rendering to fileTreeScope

- preserve projected table/image attrs for local Markdown aggregate fallback

- avoid FileTree restore forced layouts on cold design open

- add API ChatOnly provider runtime and local OCR task handling regressions
2026-06-02 17:17:49 +08:00
lix-2026 1882db7681 收口 MNote P0 P1 P2 审查尾项
- 归档 OnlyOffice live bridge、Page AI、mindmap、design governance 与相关 bug 条目
- 补齐 MinerU OCR 后端 runtime 合同与 smoke/test 基线
- 收口 ChatOnly/Doubao、ObjectIdentity、Page Aggregate compat 与 runtime owner 文档口径

验证:
- cargo test --manifest-path rust/Cargo.toml -p mnote-web local_ocr -- --test-threads=1
- cargo test --manifest-path rust/Cargo.toml -p mnote-web onlyoffice_bridge -- --test-threads=1
- git diff --check
- git diff --cached --check
- codegraph index . --force && codegraph status .
- codegraph sync . && codegraph status .
2026-06-01 09:29:12 +08:00
lix-2026 bd7470d03e Fix starred scope page tree and local edit save 2026-05-27 13:50:31 +08:00
lix-2026 3ae33cc21d Improve local filetree view state and sidebar performance 2026-05-27 11:31:12 +08:00
lix-2026 ab34050742 fix: stabilize block menu undo focus 2026-05-25 02:03:47 +08:00
lix-2026 018eb6ccc2 fix: restore block menu delete undo 2026-05-25 01:45:03 +08:00
lix-2026 5f97800489 chore: align local-first control plane and editor fixes
- wire SQLite control-plane access/session paths into Rust web local-folder routes

- preserve local Markdown attachment semantics across upload, reload, and secondary-pane resource tabs

- refresh design governance docs, Reasonix task templates, and bug records

- retire root .mcp.json local MCP config
2026-05-23 23:38:42 +08:00
lix-2026 eba1010191 fix local office resource editing
- 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
2026-05-21 05:40:06 +08:00
lix-2026 cdff672aa5 feat: align local-first workspace direction
Document the VSCode-like local-first product shape, demote Convex to a control-plane role, and retire stale architecture drafts.

Add local workspace migration/export references plus smoke coverage for no-Convex managed workspace startup, local markdown title/body/options persistence, asset upload behavior, and Convex fixture export.

Verification: git diff --cached --check; node scripts/check-local-first-convex-guard.js --staged; node scripts/task444-convex-workspace-export-local-fixture-smoke.js; node scripts/task166-local-first-managed-workspace-no-convex-smoke.js; node scripts/task167-local-markdown-title-body-options-no-convex-smoke.js
2026-05-19 08:11:58 +08:00
lix-2026 a2cb1338c8 chore: 保存当前架构收口与 bug 修复快照
归档本轮 P0/P1 bug 修复、设计审查迁移、AI selection scope 收口与 stream contract 调整,并保留当前 05 主线迁移起点。
2026-05-18 17:01:35 +08:00
lix-2026 46ede5e251 08 定向 Bug Hunt + 架构文档刷新
## 08 定向 Bug Hunt(3.5)

- Bug 1: 侧栏「复制页面」从 `/api/documents/duplicate` 迁移到
  `copyTreeCommand()` → `/api/tree/commands`(`tree.subtree.copy`)
- Bug 2: 侧栏「清空垃圾箱」标注 TODO,等待 Rust `tree.trash.empty`
- Bug 3: 文档页「应用模板」标注 TODO,等待 Rust `tree.page.template`
- Bug 4: 删除 `createChildDocumentCommand` 死代码(函数 + 类型 + 旧
  Next.js `/api/documents/create-child` 路由)
- 归档 4 份 bug 文档到 `bugs/04-tree-domain/done/` 和
  `bugs/05-editor-mainline/done/`

## 架构文档刷新

- ARCHITECTURE.md: MVP 状态标记、三层树模型(§6.4)、8.4 AI 方向按 7-14 v2
  修正、新增 8.5 定向 Bug Hunt 节、刷新 §5 和 §9 卡点描述
- AGENTS.md: 匹配 ARCHITECTURE.md 的 AI 方向和三层模型口径
- 08 checklist: 标记 7-14 v2 影响(Phase A/B/C 重命名、新增 9 项 checklist)

关联设计稿: 7-14 v2, 08
2026-05-16 23:48:41 +08:00
lix-2026 f292c6710a feat: EditorRuntimeActor - 三层缓存/delta/事件架构
Phase A — EditorRuntimeActor 内存缓存层
- 新增 editor_actor.rs: EditorBlockDocument 内存态 + apply_command + load_or_init
- block.rs 四个写工具(replace/insert/delete/move)接入 actor 路径
- editor_actor feature flag(MNOTE_WEB_ENABLE_EDITOR_ACTOR=true 默认开启)
- bridge-runtime 三个核心函数公开化
- rust-toolchain: 1.89 → stable(修复 spike WASM 编译阻塞)

Phase B — 编辑器增量 delta channel
- BlockDelta/DeltaOperation 类型 + actor.build_block_delta()
- leptos-tiptap spike: mnote:editor:block-delta CustomEvent 监听 + JSON patch
- DocumentAiAgentPanel: 拦截 blockDelta → window dispatchEvent
- 工具响应含 blockDelta 字段供前端消费

Phase C — 事件 stream delta
- broadcast channel 在 AppState/actor/SSE 三层贯通
- tree_events SSE 端点发 block.delta 事件
- 旧客户端降级兼容

环境修复
- rustc recursion_limit = 1024(修复 Leptos SSR 类型深度溢出)
- run-convex-deploy.js(封装 Convex function 部署到本地后端 3210)

ref: design/07-ai/process/7-13-page-block-editor-runtime-actor-v1.md
2026-05-16 22:03:30 +08:00
lix-2026 96e03645f7 chore: 收口 review 执行清单与 runtime 验证
- 补齐 design/10-review 执行清单、验收标准与相关设计治理记录

- 迁移已完成的 tree、mindmap、runtime fallback、AI kernel 等设计和缺陷条目

- 推进 Rust Web runtime、tree/sidebar、page aggregate、mindmap 与 OnlyOffice 路由侧验证支撑

- 增加 task177-task180 smoke/audit 脚本及前端相关测试覆盖
2026-05-14 05:52:08 +08:00
lix-2026 b4a452a8b7 20260513 mindmap优化01 2026-05-13 22:43:16 +08:00