- Removed the pending-error design after upstream source (
window.c:5365) showed that automaticos_chdirfailure is silent. The editor does not queueE344on lifecycle transitions and leaves the prior process working directory in place. - Treated
set_window_bufferas an effective working directory transition. Buffer replacement reapplies the active window directory. - Added direct
Editor::close_tabpagetest coverage because the:tabcloseEx command wrapper masked the missing lifecycle hook by callingset_current_tabpage. - Made new tabpages and window splits inherit the source window local and previous directory state.
- Neovim has distinct tabpage- and buffer-local directory slots. The current Oxvim command surface exposes global and window scopes, so this change does not misrepresent either extra scope as window state.
- A relative
:lcdtarget must be read back from the process after a successful change. Storing the argument would make later window switches resolve it against the wrong directory. - Temporary window contexts must persist directory changes on the target window while restoring the caller's effective process directory.