batch E: close tail checks and refresh smoke evidence
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
# Reasonix Worker A:GFM AST 保存失败与降级策略尾项
|
||||
|
||||
Project root: `/mnt/Data1T/mnote`
|
||||
|
||||
你不是唯一 worker。不要回滚、覆盖或整理他人改动;只处理本任务 ownership 范围。
|
||||
|
||||
## 背景
|
||||
|
||||
上位 checklist:`design/01-tree-first-graph-kernel/process/1-12-batch-e-p1-p2-tail-execution-checklist-v1.md`
|
||||
|
||||
当前 `design/03-rust-web/process/3-13-rust-web-local-markdown-gfm-ast-parser-migration-v1.md` 仍保留几个尾项:
|
||||
|
||||
- 保存失败时保留编辑器状态并给出可解释错误。
|
||||
- 表格带 mark 单元格 / 不支持结构的降级策略测试仍不足。
|
||||
- `web_shell.rs` 中 `legacyStylesToTiptapMarks` 等临时适配分支是否可移除尚未判定。
|
||||
|
||||
## Ownership
|
||||
|
||||
允许修改:
|
||||
|
||||
- `design/03-rust-web/process/3-13-rust-web-local-markdown-gfm-ast-parser-migration-v1.md`
|
||||
- `rust/crates/mnote-web/src/routes/local_folder_source.rs`
|
||||
- `rust/crates/mnote-web/src/routes/local_markdown_parser.rs`
|
||||
- 可新增或修改一个 `scripts/task48*-local-markdown-save-error-*.js`
|
||||
|
||||
只读审查,不允许修改:
|
||||
|
||||
- `rust/crates/mnote-web/src/routes/web_shell.rs`
|
||||
|
||||
禁止修改:
|
||||
|
||||
- AI / Hermes / OnlyOffice 文件
|
||||
- FileTree action / trash 代码
|
||||
- `rust/crates/mnote-web/src/routes/web_shell.rs`(只读审查即可,避免与 Worker B 冲突)
|
||||
- git commit、git reset、git checkout
|
||||
|
||||
## 任务
|
||||
|
||||
1. 先审查代码,确认保存失败状态保留是否已有行为和测试。
|
||||
2. 尽量补一个最小单测或 smoke,覆盖保存失败时编辑器仍保留当前内容,并能显示可解释错误。
|
||||
3. 补表格带 mark 单元格或不支持结构降级策略的最小测试;如果已有测试足够,更新文档证据。
|
||||
4. 只读审查 `web_shell.rs` 临时 legacy marks 分支;不能安全移除就把 `3-13` 的“必须移除”改为“保留兼容层 + 明确退出条件”。不要修改 `web_shell.rs`。
|
||||
5. 更新 `3-13` 的本轮执行记录,不把未验证项标完成。
|
||||
|
||||
## 验收命令
|
||||
|
||||
- `cargo test -p mnote-web local_markdown -- --test-threads=1`
|
||||
- `cargo test -p mnote-web web_shell -- --test-threads=1`
|
||||
- 如新增 smoke:`node --check scripts/task48*-local-markdown-save-error-*.js`,并尽量实跑。
|
||||
|
||||
## 最终回复
|
||||
|
||||
请列出:
|
||||
|
||||
- 修改文件
|
||||
- 运行的命令和结果
|
||||
- 未完成项
|
||||
- 风险或需要 Codex 再判断的点
|
||||
@@ -0,0 +1,51 @@
|
||||
# Reasonix Worker B:BufferStore conflict UI 数据源
|
||||
|
||||
Project root: `/mnt/Data1T/mnote`
|
||||
|
||||
你不是唯一 worker。不要回滚、覆盖或整理他人改动;只处理本任务 ownership 范围。
|
||||
|
||||
## 背景
|
||||
|
||||
上位 checklist:`design/01-tree-first-graph-kernel/process/1-12-batch-e-p1-p2-tail-execution-checklist-v1.md`
|
||||
|
||||
`1-6` Gap A2 中 BufferStore 基础设施和保存后刷新读回已完成,但 conflict UI 数据源尚未接入 buffer state。当前 conflict UI 已存在,`task451-local-markdown-conflict-resolution-ui-smoke.js` 能验证 accept disk / keep current / merge,但文档仍指出它主要靠 session/local state。
|
||||
|
||||
## Ownership
|
||||
|
||||
允许修改:
|
||||
|
||||
- `design/01-tree-first-graph-kernel/process/1-6-next-phase-gap-closure-checklist-v1.md`
|
||||
- `rust/crates/mnote-web/src/document_buffer_store.rs`
|
||||
- `rust/crates/mnote-web/src/routes/documents.rs`
|
||||
- `rust/crates/mnote-web/src/routes/web_shell.rs`
|
||||
- `scripts/task451-local-markdown-conflict-resolution-ui-smoke.js`
|
||||
|
||||
禁止修改:
|
||||
|
||||
- GFM parser 代码
|
||||
- FileTree action / command context 代码
|
||||
- AI / Hermes / OnlyOffice 文件
|
||||
- git commit、git reset、git checkout
|
||||
|
||||
## 任务
|
||||
|
||||
1. 审查 `BufferStore` 当前 API 与 conflict UI 事件链。
|
||||
2. 为当前打开文档暴露最小 buffer state 查询能力,或把已有 Page Aggregate / session conflict envelope 明确桥接到 BufferStore 状态。
|
||||
3. conflict UI 应可验证 editor base version、disk/current version、source actor 或等价字段来自 buffer state / conflict envelope,不是临时纯前端猜测。
|
||||
4. 保持 `task451` 三条交互不回退;必要时扩展该 smoke 读取新的 DOM/data 属性。
|
||||
5. 更新 `1-6` Gap A2 记录,不把未覆盖项标完成。
|
||||
|
||||
## 验收命令
|
||||
|
||||
- `cargo test -p mnote-web document_buffer -- --test-threads=1`
|
||||
- `cargo test -p mnote-web local_folder -- --test-threads=1`
|
||||
- `PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/google-chrome-stable node scripts/task451-local-markdown-conflict-resolution-ui-smoke.js`
|
||||
|
||||
## 最终回复
|
||||
|
||||
请列出:
|
||||
|
||||
- 修改文件
|
||||
- 运行的命令和结果
|
||||
- 未完成项
|
||||
- 风险或需要 Codex 再判断的点
|
||||
@@ -0,0 +1,51 @@
|
||||
# Reasonix Worker C:CommandContext FileTree 菜单 / 快捷键最小接入
|
||||
|
||||
Project root: `/mnt/Data1T/mnote`
|
||||
|
||||
你不是唯一 worker。不要回滚、覆盖或整理他人改动;只处理本任务 ownership 范围。
|
||||
|
||||
## 背景
|
||||
|
||||
上位 checklist:`design/01-tree-first-graph-kernel/process/1-12-batch-e-p1-p2-tail-execution-checklist-v1.md`
|
||||
|
||||
`core-protocol` 已有 `CommandContext` / `when` evaluator / `is_command_enabled`,但 `1-6` Gap A7 仍显示 FileTree 右键菜单、快捷键、AI 写入能力未消费统一 enablement。本轮只做 FileTree 菜单和 Delete/Backspace 快捷键最小接入。
|
||||
|
||||
## Ownership
|
||||
|
||||
允许修改:
|
||||
|
||||
- `design/01-tree-first-graph-kernel/process/1-6-next-phase-gap-closure-checklist-v1.md`
|
||||
- `rust/crates/core-protocol/src/command.rs`
|
||||
- `rust/crates/mnote-web/src/ssr/pages/layout.rs`
|
||||
- `scripts/task476-filetree-editor-context-menu-download-smoke.js`
|
||||
- `scripts/task471-local-folder-bulk-resource-trash-smoke.js`
|
||||
|
||||
禁止修改:
|
||||
|
||||
- GFM parser / web_shell conflict UI
|
||||
- AI / Hermes / OnlyOffice 文件
|
||||
- git commit、git reset、git checkout
|
||||
|
||||
## 任务
|
||||
|
||||
1. 审查 `core-protocol` 的 CommandContext 测试口径。
|
||||
2. 在 SSR sidebar JS 中引入最小 `CommandContext` 等价 enablement helper,先覆盖 FileTree 右键菜单和 Delete/Backspace 快捷键。
|
||||
3. readonly / sourceKind / selectionCount / resourceKind 的禁用语义应与 Rust `CommandContext` 现有测试一致;本轮不要求把 Rust evaluator 直接编译到 JS。
|
||||
4. 保持下载、多选删除、粘贴、只读阻断 smoke 不回退。
|
||||
5. 更新 `1-6` Gap A7 记录,不把 AI 写入能力标完成。
|
||||
|
||||
## 验收命令
|
||||
|
||||
- `cargo test -p mnote-web sidebar_filetree -- --test-threads=1`
|
||||
- `cargo test -p core-protocol command_context -- --test-threads=1`
|
||||
- `node scripts/task471-local-folder-bulk-resource-trash-smoke.js`
|
||||
- `node scripts/task476-filetree-editor-context-menu-download-smoke.js`
|
||||
|
||||
## 最终回复
|
||||
|
||||
请列出:
|
||||
|
||||
- 修改文件
|
||||
- 运行的命令和结果
|
||||
- 未完成项
|
||||
- 风险或需要 Codex 再判断的点
|
||||
@@ -0,0 +1,32 @@
|
||||
# Batch E Worker A — GFM AST 保存失败尾项 timeout
|
||||
|
||||
> 执行时间:2026-05-21
|
||||
>
|
||||
> 状态:`TIMEOUT_NO_RESULT`
|
||||
|
||||
## 任务
|
||||
|
||||
任务书:`.codex/reasonix-tasks/2026-05-21-batch-e-worker-a-gfm-save-error.md`
|
||||
|
||||
目标:
|
||||
|
||||
- 核对 `3-13` 中保存失败时保留编辑器状态并显示可解释错误的尾项。
|
||||
- 补表格带 mark 单元格或不支持结构降级策略测试。
|
||||
- 只读审查 `web_shell.rs` legacy marks 兼容层是否可移除。
|
||||
|
||||
## 结果
|
||||
|
||||
Reasonix runner 启动后长期未生成 `final.md` / `result.json`:
|
||||
|
||||
- runtime 目录:`/home/lix/.codex/runtime/reasonix-coding-worker/reasonix-2026-05-21T08-37-56-342Z-ea4f1446/`
|
||||
- 落盘文件只有 `prompt.md` 和 `reasonix-transcript.jsonl`
|
||||
- 未发现可采纳的代码 diff 或最终结论
|
||||
|
||||
Codex 已终止该卡住的 runner / reasonix acp 进程,避免继续占用 worker。
|
||||
|
||||
## Codex 判定
|
||||
|
||||
- 不采纳为完成项。
|
||||
- `design/03-rust-web/process/3-13-rust-web-local-markdown-gfm-ast-parser-migration-v1.md` 保持 `process`。
|
||||
- `3-13` 仍保留未完成项:保存失败状态保留、`web_shell.rs` 临时适配分支退出条件、迁移完成后归档。
|
||||
|
||||
Reference in New Issue
Block a user