| 1 | # Native document structure controls |
| 2 | |
| 3 | OneNote 14.0.4763.1000 authored the second page from the frozen |
| 4 | [scripts/author.ps1](scripts/author.ps1). The fixture includes named paragraph |
| 5 | styles, alignment and spacing, two associated tags, nested bullets, Roman |
| 6 | numbering restarted at III, and a 3-by-2 table with one locked column. |
| 7 | |
| 8 | The locked column remains 120 points wide. The unlocked column contracts from |
| 9 | the authored 180 points to approximately 37.116 points to fit its contents. |
| 10 | The native PDF shows both the text formatting and table on separate sheets. |
| 11 | [Tests](../../../tests/document.rs) assert the model's corresponding semantics. |
| 12 | The [partial black highlight XML omission](../native-probes-01/ORACLE.md) also |
| 13 | occurs here; the PDF preserves the highlight. |
| 14 | |
| 15 | The [table controls](../native-table-controls-01/expected.json) isolate a native |
| 16 | XML limitation: adding `shadingColor` to a cell causes `UpdatePageContent` to |
| 17 | return `0x80042001`. Removing that attribute succeeds with locked or unlocked |
| 18 | columns. This does not establish whether OneNote 2010 renders the storage-level |
| 19 | CellShadingColor property. |
| 20 | |
| 21 | ## TOC transaction fragment boundary |
| 22 | |
| 23 | The Rust-created TOC began with a 44-byte transaction-log fragment containing |
| 24 | three list-count entries, a sentinel, and a 12-byte next-fragment reference. |
| 25 | OneNote appended another fragment. Its next CRC is `0x68f09d29`; including the |
| 26 | preceding fragment's final sentinel incorrectly produces `0x548e8f73`. |
| 27 | |
| 28 | MS-ONESTORE 2.3.3.2 product behavior note 8 specifies exclusion of bytes flushed |
| 29 | at the end of a TOC transaction-log fragment. This fixture establishes that the |
| 30 | final entry is excluded from the running CRC, while its own checksum is still |
| 31 | validated. The storage regression also corrupts the native checksum and verifies |
| 32 | that the damage is detected. Writer regressions cross fragment and transaction |
| 33 | counter boundaries through 260 successive edits. |