# 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: ```bash 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`.