From d043fa32efcdf4f4fc087d6d618fc4e1d9970f5a Mon Sep 17 00:00:00 2001 From: lix-2026 Date: Mon, 25 May 2026 07:14:08 +0800 Subject: [PATCH] docs: correct runtime batch worker limit --- .../3-20-browser-runtime-followup-checklist-v1.md | 8 +++++--- .../5-29-editor-runtime-followup-checklist-v1.md | 10 ++++++---- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/design/03-rust-web/process/3-20-browser-runtime-followup-checklist-v1.md b/design/03-rust-web/process/3-20-browser-runtime-followup-checklist-v1.md index 43cefa2e..f1f9c981 100644 --- a/design/03-rust-web/process/3-20-browser-runtime-followup-checklist-v1.md +++ b/design/03-rust-web/process/3-20-browser-runtime-followup-checklist-v1.md @@ -185,11 +185,13 @@ UI / 浏览器可见项必须有真实浏览器截图或结构化 smoke 证据 - 修改:`filetree-runtime.js` 新增并导出 `markLocalFolderWatchApplied(value)`;`layout.rs` 的同名 wrapper 优先委托 runtime,inline fallback 保留 `data-mnote-local-folder-watch-applied="projection"` 行为。 - 边界:未改 projection fetch URL、JSON 渲染、selection/focus/sidebar shell 副作用、附件存在性刷新、tree live SSE consumer;本批只外置刷新完成证据标记。 - 已验证:`node --check rust/crates/mnote-web/browser/filetree-runtime.js`、`git diff --check`、`cargo fmt --manifest-path rust/Cargo.toml --all --check`、`cargo check --manifest-path rust/Cargo.toml -p mnote-web`、`cargo test --manifest-path rust/Cargo.toml -p mnote-web filetree_runtime -- --test-threads=1`。 -- 2026-05-25:Batch AC 按用户纠正继续采用独立 worktree 流程;当前 goal 上限为每批最多 2 个 worker,本轮实际 3 个 worker,超过当前 2-worker 上限,应视为异常历史记录;任务书均写入各 worktree `tmp/`,未新增主工作区 `.codex/reasonix-tasks`。 +- 2026-05-25:Batch AC 按用户纠正继续采用独立 worktree 流程;本轮实际 3 个 worker,超过当前 goal 每批最多 2 个 worker 的上限,应视为异常历史记录;任务书均写入各 worktree `tmp/`,未新增主工作区 `.codex/reasonix-tasks`。 - Worker C `/mnt/Data1T/mnote-worktrees/0525-ac-worker-c-3-20-conflict-action-boundary`,Reasonix run `reasonix-2026-05-24T22-52-30-772Z-464df4b4`,Codex 已读取 Hindsight recall、`process-handoff.md/json`、`result.json`,并核对 worktree `git status --short` / `git diff --stat` 为空。 - 审计结论经 Codex 复核后采纳:`acceptDiskVersion`、`keepCurrentEditorVersion`、`writeMergedConflictResult` 仍强依赖 fetch、persist、session views、Tiptap hydrate、conflict key 计算和 `setSessionStatus`,不应整体迁入 `document-conflict-panel-runtime.js`;共享的 session 状态字段重置块暂不外置,以保持 runtime=DOM/promise wrapper、shell=业务编排的边界。 - Worker D `/mnt/Data1T/mnote-worktrees/0525-ac-worker-d-smoke-regression`,Reasonix run `reasonix-2026-05-24T22-52-30-854Z-dfad6786`,源码零 diff;`task489`、`task488`、`task487`、`task451` 在 3001 均通过,其中 `task451` 覆盖 accept-disk、keep-current、merge-save、agent-conflict-source。 - 未完成:conflict action 业务逻辑仍留在 `web_shell.rs`;secondary pane conflict 专项 smoke 仍可后续单独补强。 -- 2026-05-25:Batch AD 出现未由主控明确派发的 3 个 Reasonix runner(Worker B/C/D),超过当前 2-worker 上限;主控已终止相关 runner / ACP 进程。 +- 2026-05-25:Batch AD 采用 3 个独立 worktree worker(B/C/D),超过当前 goal 每批最多 2 个 worker 的上限,应视为异常历史记录;任务书均写入各 worktree `tmp/`,未新增主工作区 `.codex/reasonix-tasks`。 - 涉及 worktree:`/mnt/Data1T/mnote-worktrees/0525-ad-worker-b-5-29-drop-indicator-block-rect`、`/mnt/Data1T/mnote-worktrees/0525-ad-worker-c-3-20-upload-target-readonly`、`/mnt/Data1T/mnote-worktrees/0525-ad-worker-d-regression-smoke`。 - - 本文件不采纳 Batch AD 的任何 3-20 输出;后续如需继续 upload target 审计,必须重新按最多 2 worker 的受控批次派发。 + - Worker C run `reasonix-2026-05-24T23-05-57-201Z-41882fef` 仅产出 `prompt.md` / `memory-recall.json` / `reasonix-transcript.jsonl`,无 `final.md`、`result.json`、`process-handoff.md/json`,worktree 零 diff;3-20 输出拒收。 + - Worker D run `reasonix-2026-05-24T23-05-57-257Z-c917f1ef` 有完整 `process-handoff.md/json`、`result.json`、`final.md`,源码零 diff;`task489`、`task488`、`task487`、`task451` 在 3001 均通过,其中 `task487` 覆盖 local-folder tree live consumer、`task451` 覆盖 conflict UI actions。Codex 已读取 Hindsight recall 与 handoff/result,并独立复跑 `task487` / `task451` / `task489` / `task488` 主控验收,全部通过。 + - 后续如需继续 upload target 审计,必须重新按最多 2 worker 的受控批次派发。 diff --git a/design/05-editor-mainline/process/5-29-editor-runtime-followup-checklist-v1.md b/design/05-editor-mainline/process/5-29-editor-runtime-followup-checklist-v1.md index 775acc2d..14a04d17 100644 --- a/design/05-editor-mainline/process/5-29-editor-runtime-followup-checklist-v1.md +++ b/design/05-editor-mainline/process/5-29-editor-runtime-followup-checklist-v1.md @@ -243,14 +243,16 @@ UI / 浏览器可见项必须有真实浏览器截图或结构化 smoke 证据 - 修改:`editor_runtime/block_dnd.rs` 新增 `direct_block_index_from_element(element, root, handle_selector)`,统一封装“排除 handle shell + 解析直接顶层块 index”;`lib.rs::hovered_block_from_target` 改为委托该 helper,仍保留 `target_element`、`block_state_from_index`、拖拽 listener 和 reorder 行为在壳层。 - 边界:未迁 `target_element`、`drop_indicator_from_target`、`drop_indicator_from_point`、block reorder HTML 行为、DOM event listener 或 Leptos signal 编排。 - 已验证:`cargo fmt --manifest-path rust/Cargo.toml --all --check`、`git diff --check`、`cargo check --manifest-path rust/spikes/leptos-tiptap-spike/Cargo.toml`、wasm release build、`wasm-bindgen`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task489-block-menu-delete-undo-smoke.js`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task488-local-attachment-link-delete-undo-smoke.js`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task479-local-folder-markdown-resource-lifecycle-smoke.js`。 -- 2026-05-25:Batch AC 按用户纠正继续采用独立 worktree 流程;当前 goal 上限为每批最多 2 个 worker,本轮实际 3 个 worker,超过当前 2-worker 上限,应视为异常历史记录;任务书均写入各 worktree `tmp/`,未新增主工作区 `.codex/reasonix-tasks`。 +- 2026-05-25:Batch AC 按用户纠正继续采用独立 worktree 流程;本轮实际 3 个 worker,超过当前 goal 每批最多 2 个 worker 的上限,应视为异常历史记录;任务书均写入各 worktree `tmp/`,未新增主工作区 `.codex/reasonix-tasks`。 - Worker B `/mnt/Data1T/mnote-worktrees/0525-ac-worker-b-5-29-hover-target-helper`,Reasonix run `reasonix-2026-05-24T22-52-30-715Z-4b6e4d37`,Codex 已读取 Hindsight recall、`process-handoff.md/json`、`result.json` 和 worktree diff;worker 临时创建的未跟踪 `reference-code` symlink 未采纳。 - Codex 选择性合入 Worker B 的两文件候选 patch:`editor_runtime/block_dnd.rs` 新增 `direct_block_index_from_element(element, root, handle_selector)`,封装 handle-shell 过滤、direct block 解析和 top-level index 查询;`lib.rs::hovered_block_from_target` 仍负责 root/target 壳层获取和 `block_state_from_index` 状态组装。 - Worker D `/mnt/Data1T/mnote-worktrees/0525-ac-worker-d-smoke-regression`,Reasonix run `reasonix-2026-05-24T22-52-30-854Z-dfad6786`,源码零 diff;`task489`、`task488`、`task487`、`task451` 在 3001 均通过,其中 `task487` 为 `transport=local-folder-events`、PageTree/FileTree 外部创建/删除均 `treeLiveApplied=resync`、导航数为 0。 - 未迁:`hovered_block_from_target` 的壳层函数、`drop_indicator_from_target`、拖拽 listener、block reorder 行为仍留在 `lib.rs`。 -- 2026-05-25:Batch AD 出现未由主控明确派发的 3 个 Reasonix runner(Worker B/C/D),超过当前 2-worker 上限;主控已终止相关 runner / ACP 进程。 +- 2026-05-25:Batch AD 采用 3 个独立 worktree worker(B/C/D),超过当前 goal 每批最多 2 个 worker 的上限,应视为异常历史记录;任务书均写入各 worktree `tmp/`,未新增主工作区 `.codex/reasonix-tasks`。 - 涉及 worktree:`/mnt/Data1T/mnote-worktrees/0525-ad-worker-b-5-29-drop-indicator-block-rect`、`/mnt/Data1T/mnote-worktrees/0525-ad-worker-c-3-20-upload-target-readonly`、`/mnt/Data1T/mnote-worktrees/0525-ad-worker-d-regression-smoke`。 - - Codex 未按 Reasonix 结果直接采纳;随后独立复核 Worker B 遗留 diff,确认范围只涉及 `drop_indicator_from_target` 内部 block/stage rect 读取封装,并选择性合入。 + - Worker B run `reasonix-2026-05-24T23-05-57-072Z-aa9927f0` 仅产出 `prompt.md` / `memory-recall.json` / `reasonix-transcript.jsonl`,无 `final.md`、`result.json`、`process-handoff.md/json`;Reasonix 结论拒收。Codex 仅把 worktree 中的两文件 diff 当作候选 patch 独立复核,确认范围只涉及 `drop_indicator_from_target` 内部 block/stage rect 读取封装后选择性合入。 - 修改:`editor_runtime/block_dnd.rs` 新增 `drop_indicator_from_block_rects(block_index, block, stage, client_y)`;`lib.rs::drop_indicator_from_target` 仍负责 hovered block、root/stage DOM 查询和 shell 状态,只委托新 helper 计算 `DropIndicatorState`。 - 边界:未迁 `drop_indicator_from_target` 壳层函数、`drop_indicator_from_point`、拖拽 listener、block reorder 行为或 Leptos signal 编排;Worker C/D 输出不采纳。 - - 已验证:`cargo fmt --manifest-path rust/Cargo.toml --all --check`、`git diff --check`、`cargo check --manifest-path rust/spikes/leptos-tiptap-spike/Cargo.toml`、wasm release build、`wasm-bindgen`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task489-block-menu-delete-undo-smoke.js`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task488-local-attachment-link-delete-undo-smoke.js`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task479-local-folder-markdown-resource-lifecycle-smoke.js`。 + - Worker D run `reasonix-2026-05-24T23-05-57-257Z-c917f1ef` 有完整 `process-handoff.md/json`、`result.json`、`final.md`,源码零 diff;`task489`、`task488`、`task487`、`task451` 在 3001 均通过。 + - Codex 已读取 Hindsight recall 与 handoff/result,并独立复跑主控验收。 + - 已验证:`cargo fmt --manifest-path rust/Cargo.toml --all --check`、`git diff --check`、`cargo check --manifest-path rust/spikes/leptos-tiptap-spike/Cargo.toml`、wasm release build、`wasm-bindgen`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task489-block-menu-delete-undo-smoke.js`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task488-local-attachment-link-delete-undo-smoke.js`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task487-local-folder-tree-live-consumer-smoke.js`、`MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3001 NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task451-local-markdown-conflict-resolution-ui-smoke.js`。