1# Cross-run text replacements
2
3Six edits of the public formatted-insertion notebooks, independently opened by
4OneNote 2010 in disposable cold-cache machines. Cases cover partial and complete
5replacement, a native table cell, deletion, typing after deletion, and insertion
6at a style boundary. Each directory is a separate notebook because the source
7section identities can be shared.
8
9The inserted characters inherit the style at the start of the replaced range;
10surviving characters retain their styles. Empty final runs retain their typing
11style. These are library edit semantics; the native captures check that OneNote
12reads the resulting content and formatting correctly.
13
14Generate candidates with the ignored `export_native_cross_run_edits` test and
15`ONESTORE_CROSS_RUN_OUTPUT` set to a new absolute directory. Capture each candidate
16with `tools/native_runner.py --expected-pages 1 --collect-notebook` and compare
17with `tools/verify-document.py`. The manifest records source paths, target IDs,
18UTF-16 ranges and file hashes. The attachment export links to its canonical copy.
19`tools/test_cross_run_edit.py` checks the retained
20native oracles without starting a VM.