Files
mnote/.codex/reasonix-tasks/2026-05-25-batch-g-worker-c-3-20-conflict-actions.md
T

2.1 KiB

Batch G Worker C: 3-20 conflict action boundary

Project root: /mnt/Data1T/mnote-worktrees/0525-g-worker-c-3-20-conflict-actions

Goal

Extract only pure DOM/action wiring helpers for document conflict actions from inline web_shell.rs into rust/crates/mnote-web/browser/document-conflict-panel-runtime.js.

This is a candidate patch only. Codex will review and selectively merge.

Allowed files

  • rust/crates/mnote-web/browser/document-conflict-panel-runtime.js
  • rust/crates/mnote-web/src/routes/web_shell.rs

Do not edit any other file.

Expected shape

  • Keep business logic in web_shell.rs: session lookup, snapshot fetch, editor writes, persistence, status messages, and error handling.
  • You may add small runtime helpers for wiring or invoking callbacks for actions currently near acceptDiskVersion, keepCurrentEditorVersion, or writeMergedConflictResult, but the runtime must receive dependencies/callbacks from web_shell.rs.
  • Preserve the existing inline fallback path.
  • Do not change conflict resolution semantics, button labels, event names, or secondary-pane behavior.
  • Do not touch local upload or filetree runtime files.

Verification

Run these from the project root:

node --check rust/crates/mnote-web/browser/document-conflict-panel-runtime.js
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 document_conflict_panel_runtime_contains_dom_helpers -- --test-threads=1
cargo test --manifest-path rust/Cargo.toml -p mnote-web mnote_browser_runtime_assets_are_explicitly_mounted -- --test-threads=1
NODE_PATH=/mnt/Data1T/mnote/node_modules node scripts/task451-local-markdown-conflict-resolution-ui-smoke.js

If a command fails because of a pre-existing baseline issue, record the exact command and failure.

Required output

  • Produce process-handoff.md, process-handoff.json, result.json, and final.md.
  • Include modified files, exact verification commands, pass/fail evidence, risks, and remaining work.
  • Do not commit.
  • Do not modify /mnt/Data1T/mnote.