An unsaved tab and its file on disk are two revisions, even when they share one path. A text replace unsaved tabs workflow should inventory saved files, mutable buffers, and excluded files separately before authorizing any change. The STUDIO-327 command evidence measures search, preview, apply, save, and reverse search against disk files. It does not expose a mutable editor buffer, so this article keeps the unsaved-tab interface step explicitly unmeasured.
Put All Five Disk Matches on a Review Sheet
A workspace search for Old327 found five matches in four files. Limiting the search to the intended included folder found four matches in three files. The difference is one result in excluded/archive.md, classified as ARCHIVE and deliberately left unchanged.
The four in-scope results still require editorial decisions. Three current statements are marked EDIT; one quotation is marked KEEP. The sheet records relative path, line, surrounding sentence, label, and reason. If an unsaved tab exists for one of those paths, add a separate buffer row. Never let the shared filename conceal the fact that the disk and memory contents differ.
Preview One Saved Edit as the Canary
Preview only the first EDIT row. Match the returned path and replacement sentence to the review sheet, then apply that one change. Save the file and search it again. The measured result was canary=1. After that receipt passed, preview and apply the other two approved rows; the measured continuation was remaining=2.
This staged operation limits a bad scope or replacement token to one candidate. If the preview points at the quotation or archive, cancel and repair the scope instead of editing the result afterward. A success response is not the final receipt. Reopen the saved file and confirm the intended new wording at the exact location.
Accept Two Explained Old Matches
Reverse search inside the selected folder returned one Old327 occurrence: the KEEP quotation. Reverse search outside that folder returned one more: the ARCHIVE line. The accepted values are therefore old inside=1 and old outside=1, not zero.
Map both survivors back to their reasons. Two in-scope survivors could mean an approved edit was missed. No outside survivor could mean the operation crossed its boundary. The nonzero counts are useful controls because they expose an overbroad replacement that an “old text equals zero” rule would mistakenly celebrate.
Keep Mutable Buffers on a Separate Test Card
Public product material describes confirmation that can include unsaved tabs, but the retained CLI search does not surface live memory buffers. Rune Studio was present and accessibility trust could be read, yet there was no deterministic fixture for creating and asserting the same mutable tab state. Launching the application alone would not prove the title-specific behavior, so no graphical operation was claimed.
A future UI run should place Disk327 in the saved file and change the open tab to Buffer327 without saving. Record the screen name, unsaved indicator, both preview candidates, the accepted candidate, and the canceled candidate. Then save deliberately, close the tab, reopen the disk file, and record which revision persisted. The UI result belongs on a receipt separate from the measured disk run.
Recover Without Erasing the Rejected Buffer
One failure discards valuable tab edits because the older disk file was treated as authoritative. The opposite failure saves an unreviewed buffer and changes a protected quotation. Preserve either failed state under a new name instead of overwriting it during cleanup.
Recovery compares the starting disk digest, the exported buffer copy, and the five-row review sheet. Decide the accepted sentence row by row and write a new working file. Search again after saving. Three EDIT rows must contain the replacement, while the quotation and archive retain Old327. The receipt must also say whether each unsaved change was accepted or rejected.
Identify Duplicate Tab Names by Content
Two folders can each contain chapter-2.md. A tab label alone is therefore not an identity. Record workspace-relative path, opening heading, and starting disk digest. For an unsaved buffer, export a temporary copy and calculate a content digest. That gives the buffer a stable identity without pretending it already exists on disk.
Do not use tab position as a handoff key. Closing another document can change the order. When preview candidates are listed, trace each candidate to the relative path and sentinel sentence. Ambiguous candidates remain blocked until a human resolves them.
Hand Off Measured Disk Values and Open UI Fields
The measured receipt contains five workspace matches, four selected-folder matches, one canary replacement, two remaining replacements, one old in-scope quotation, and one old out-of-scope archive line. It also contains the command log and final digests for the three changed files.
The unsaved-buffer candidate count, graphical preview, cancel behavior, and post-save tab state remain open fields. A second operator can reproduce the disk portion now and later complete a named UI run with the same specimen. Acceptance must never merge those layers into a claim that the unsaved-tab behavior was observed when it was not.
The handoff must also state whether any unsaved tab was closed. Closing can trigger a save-or-discard decision, so it is part of the UI trial rather than routine cleanup. When that trial has not run, leave the field open and finalize only the disk-side result. This prevents an undocumented closing action from becoming an accidental assertion about buffer handling.