Codex-956atf: record scoped parent-focus source correction and unexecuted gates

2026-09-11 14:25:14 +00:00
parent f849aaaddb
commit 7bbe919a47
+9
@@ -0,0 +1,9 @@
# Scenario parent focus — uncompiled source handoff
Codex-956atf /root/scenario_focus_fix, 2026-09-11. Corrects I1/I2 from frozen harness/release-chooser-contextual-integration-review-20260911.md in root checkout based on 8d55d2d. Root owns compilation, runtime, integration and publication; independent source review is separate.
The parent keeps its existing semantic form session and raw draft while a separate presentation mount rotates after successful source Back, Use and Escape. The actual parent sensor requests focus for that mount. App's outer widget tree marks its current document/owner/revision/session/mount only when the parent owns input. A delayed focus task first validates this marker and its exact mounted Name target, then a guarded apply traversal focuses/reveals it. Source child, changed session/context/mount and active Review/hosted/other modal ownership make stale tasks inert. Missing targets do not trigger the unfocusing pass. Existing source branches and form-session scroll keys remain unchanged.
Four prepared scenario_form_focus tests cover initial/stale dispatch, actual App::view initial focus, consumed-initial-focus Back/Use/Escape parent return, saved S1 Widget Action execution after S2/child/real Review/context/remount/hosted changes, and missing-target inertness. Source/history/raw comparisons are included. Actual App tests use iced::Renderer Headless and require a backend; no backend means explicit test failure, not a skip. No Cargo/rustc/native/formatting/commit was executed by the worker. Root must format, compile and run focused, workspace and contextual-source gates before acceptance.
Durable implementation report: harness/release-scenario-focus-fix-20260911.md. Own five Rust paths are app.rs, behavior/scenario.rs, behavior/scenario/workspace.rs, behavior/scenario/workspace/tests.rs and new behavior/scenario/focus.rs under crates/oa-desktop/src. The isolated canvas worker's overlapping changes must preserve these focus edits and union the four tests rather than replace their file. No release-completion claim.