| author | |
| committer | |
| log | 16f919e13a25e8ef16fcd7e7acc311210c81688b |
| tree | cce19f27fca96beb0c4f6d28e1c28ff29be3cfd0 |
| parent | 20f70854dfb31efe4ad51f2844399553822889c1 |
| signature | Signed by SSH key SHA256:52mNGHRsVFBDED9IAX5pe+LRWUefqTbxEReunq21QvU |
Moved pages get a new page series as OneNote's drag gives them, and merges read
remote moves from series changes (page order only for older files); empty
series are never written. Page and section reorders, OneNote's recycle bin,
new notebooks and sections, title date/time fields and PageOp::Color follow
native captures. New rows: notebook-management, conflict-page series cases,
page-lifecycle *-series regenerations.
Assisted-by: claude-opus-5.5
Assisted-by: claude-opus-5757 files changed, 12491 insertions(+), 137 deletions(-)
corpus/conflict-page/README.md+5| ... | ... | @@ -58,6 +58,11 @@ holding A's edit, in a new series where A had it; B's version stays in the recyc |
| 58 | 58 | - `native-restore`: from One, Two, Target, Three, Four, A moved Four before One |
| 59 | 59 | (re-seriesing One, Two, Target, Three) and B deleted Target: Four, One, Two, Target, Three. |
| 60 | 60 | |
| 61 | `series-move` is `a_move_after_a_native_merge_drops_its_empty_series` | |
| 62 | (`crates/onestore/tests/page_movement.rs`, `ONESTORE_EMPTY_SERIES_EXPORT`): Rust moves a | |
| 63 | page of `native-pages/merged`, giving it a series of its own and dropping the empty | |
| 64 | series; OneNote's cold read (`cold`) keeps every byte after the header. | |
| 65 | ||
| 61 | 66 | `page_moves_and_a_removed_page_merge_as_onenote_merges_them` in |
| 62 | 67 | `crates/notebook/tests/sync_pages.rs` replays both with Snowbound's queue, A's moves as |
| 63 | 68 | moves of the pages A re-seriesed, and reaches OneNote's order. |
corpus/conflict-page/series-move/candidate/synthetic.one created| Binary files /dev/null and b/corpus/conflict-page/series-move/candidate/synthetic.one differ |
corpus/conflict-page/series-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-BAB2A5E1 -ExpectedPages 6", "exit": 0, "stdout": "Read 1 sections and 6 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/conflict-page/series-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-bab2a5e1", "hostname": "ONE-M6-BAB2A5E1"} |
corpus/conflict-page/series-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/conflict-page/series-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/conflict-page/series-move/cold/notebook/synthetic.one created| Binary files /dev/null and b/corpus/conflict-page/series-move/cold/notebook/synthetic.one differ |
corpus/conflict-page/series-move/cold/read/af1af4b8987109ce1e335e538910fb3860b7c57eb3b6110a06aa2114e06d69a7.attachment created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | Fictitious attachment for native corpus. | |
| \ No newline at end of file |
corpus/conflict-page/series-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-BAB2A5E1", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/conflict-page/series-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{E6D580C3-6E50-4A08-B9DA-B976DE2770FE}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T16:04:40.000Z" color="#B49EDE"><one:Section name="synthetic" ID="{B0F302E0-C61B-06A2-3C37-A35B56777258}{1}{B0}" path="C:\one-tests\runs\capture\notebook\synthetic.one" lastModifiedTime="2026-09-27T16:04:40.000Z" color="#8AA8E4"><one:Page ID="{9CBAF166-4FD0-45B3-BB50-0BCAAA4F6E47}{1}{B0}" name="Fictitious: café, 東京, مرحبا" dateTime="2026-09-05T05:06:54.000Z" lastModifiedTime="2026-09-05T05:11:41.000Z" pageLevel="1"/><one:Page ID="{08D265CC-8347-4CC9-8ABB-B5BDC54649A9}{1}{B0}" name="Two" dateTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1"/><one:Page ID="{2D643D94-4CC0-4326-9B07-7B783F4F1C83}{1}{B0}" name="Four" dateTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1"/><one:Page ID="{87EBBA02-83AC-4AFC-BE62-8AEF052416BD}{1}{B0}" name="Three" dateTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1"/><one:Page ID="{60C97420-C761-4068-9063-162C9EE492E4}{1}{B0}" name="Target" dateTime="2026-09-27T09:20:18.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1"/><one:Page ID="{8E5DEE12-6403-418F-82ED-4313DBB8033C}{1}{B0}" name="One" dateTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/conflict-page/series-move/cold/read/page-000.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{08D265CC-8347-4CC9-8ABB-B5BDC54649A9}{1}{B0}" name="Two" dateTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" creationTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T09:20:17.000Z" objectID="{D57AFE91-B2E5-4F3A-A2C7-C5A31F188D9C}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Two]]></one:T></one:OE></one:Title><one:Outline author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" lastModifiedTime="2026-09-27T09:20:19.000Z" objectID="{D57AFE91-B2E5-4F3A-A2C7-C5A31F188D9C}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="86.58053588867187" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T09:20:17.000Z" objectID="{D57AFE91-B2E5-4F3A-A2C7-C5A31F188D9C}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[Body Two.]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/conflict-page/series-move/cold/read/page-001.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{2D643D94-4CC0-4326-9B07-7B783F4F1C83}{1}{B0}" name="Four" dateTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" creationTime="2026-09-27T09:20:18.000Z" lastModifiedTime="2026-09-27T09:20:18.000Z" objectID="{C06DD7A0-FF82-4C09-B154-4EF512147FEF}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Four]]></one:T></one:OE></one:Title><one:Outline author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" lastModifiedTime="2026-09-27T09:20:19.000Z" objectID="{C06DD7A0-FF82-4C09-B154-4EF512147FEF}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="88.02534484863281" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-27T09:20:18.000Z" lastModifiedTime="2026-09-27T09:20:18.000Z" objectID="{C06DD7A0-FF82-4C09-B154-4EF512147FEF}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[Body Four.]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/conflict-page/series-move/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{60C97420-C761-4068-9063-162C9EE492E4}{1}{B0}" name="Target" dateTime="2026-09-27T09:20:18.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" creationTime="2026-09-27T09:20:18.000Z" lastModifiedTime="2026-09-27T09:20:18.000Z" objectID="{0D0D601F-DD08-4A88-A1BC-E090EDD88E26}{27}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Target]]></one:T></one:OE></one:Title><one:Outline author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" lastModifiedTime="2026-09-27T09:22:40.000Z" objectID="{0D0D601F-DD08-4A88-A1BC-E090EDD88E26}{15}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="96.35589599609375" height="26.85543441772461"/><one:OEChildren><one:OE creationTime="2026-09-27T09:22:40.000Z" lastModifiedTime="2026-09-27T09:22:40.000Z" objectID="{0D0D601F-DD08-4A88-A1BC-E090EDD88E26}{13}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[Body Target edited offline.]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/conflict-page/series-move/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{87EBBA02-83AC-4AFC-BE62-8AEF052416BD}{1}{B0}" name="Three" dateTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" creationTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T09:20:17.000Z" objectID="{E6823DA8-A43B-4348-9715-D5C6EE92C571}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Three]]></one:T></one:OE></one:Title><one:Outline author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" lastModifiedTime="2026-09-27T09:20:19.000Z" objectID="{E6823DA8-A43B-4348-9715-D5C6EE92C571}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="93.47699737548828" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T09:20:17.000Z" objectID="{E6823DA8-A43B-4348-9715-D5C6EE92C571}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[Body Three.]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/conflict-page/series-move/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8E5DEE12-6403-418F-82ED-4313DBB8033C}{1}{B0}" name="One" dateTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T16:04:40.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" creationTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T09:20:17.000Z" objectID="{78DC856A-B60B-4888-BCB0-ACC38278F6DD}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[One]]></one:T></one:OE></one:Title><one:Outline author="ONE-M6-327953DB" authorInitials="3DB" lastModifiedBy="ONE-M6-327953DB" lastModifiedByInitials="3DB" lastModifiedTime="2026-09-27T09:20:19.000Z" objectID="{78DC856A-B60B-4888-BCB0-ACC38278F6DD}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="86.09180450439453" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-27T09:20:17.000Z" lastModifiedTime="2026-09-27T09:20:17.000Z" objectID="{78DC856A-B60B-4888-BCB0-ACC38278F6DD}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[Body One.]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/conflict-page/series-move/cold/read/page-005.xml created+26| ... | ... | @@ -0,0 +1,26 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9CBAF166-4FD0-45B3-BB50-0BCAAA4F6E47}{1}{B0}" name="Fictitious: café, 東京, مرحبا" dateTime="2026-09-05T05:06:54.000Z" lastModifiedTime="2026-09-05T05:11:41.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="snow" authorInitials="S" lastModifiedBy="snow" lastModifiedByInitials="S" lastModifiedTime="2026-09-05T05:06:56.000Z" objectID="{FB7659DA-04A5-4605-B4A2-871155D38B26}{10}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="127.5136947631836" height="14.30000114440918"/><one:OEChildren><one:OE creationTime="2026-09-05T05:06:55.000Z" lastModifiedTime="2026-09-05T05:06:56.000Z" objectID="{FB7659DA-04A5-4605-B4A2-871155D38B26}{11}{B0}" alignment="left" quickStyleIndex="0" style="font-size:11.0pt;color:#1F4E79"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold;font-family:Calibri' lang=en-US>Fictitious: café, </span><span | |
| 4 | style='font-weight:bold;font-family:SimSun' lang=en-US>東京</span><span | |
| 5 | style='font-weight:bold;font-family:Calibri' lang=en-US>, </span><span | |
| 6 | style='font-weight:bold;font-family:Arial;direction:rtl;unicode-bidi:embed' | |
| 7 | lang=ar-SA>مرحبا</span>]]></one:T></one:OE></one:OEChildren></one:Outline><one:InkDrawing lastModifiedTime="2026-09-05T05:11:40.000Z" objectID="{D99B7548-5C4D-48B6-A93A-25999553E6F2}{15}{B0}"><one:Position x="421.5118103027344" y="84.75590515136718" z="5"/><one:Size width="60.00945281982422" height="60.00944519042969"/><one:Data>AK4FHQSiAaIBAWAqABofi0JwRYR1gL7QRdkE+oeVMvLsF0G4wBa/8yv0et67E4vlXrNInJuhJVq3 | |
| 8 | URK/7HHMzCKxQYkOuxMs7nqhWM9UiuaXxU+PBvi60uGbIsRmbacNslhJmh1OQDQGbBADBkgQRSNG | |
| 9 | IwUIC2VPZmdoZGkZFDIIAIAeAiHi4kEzCADwEAKLxeJBZAMVRgBACpUE/QGH81d3mq7mkzgM0mcB | |
| 10 | mk1gEBgEBgEBgE1mUAgMzmUAmsygE1mUzmkBmc0gMzmk1mUAmsyTOaTWZQCazKZgALSmiazKATWZ | |
| 11 | QCAwCAwBAZpM4DAJlNYBMprAJlNZpM4DNJmmU1mkzgM0mcBmkzmU1gEyAAFpTSAzOaQGZzRAYBAY | |
| 12 | BAYBMprAIDNJnAZpM0yms0mcBmkzgM0mcymsAmU1gEyms0maZAACZTSawCZTWATKawCAoBAYBAZn | |
| 13 | NIDAJrMoBNZlAJrMpnMoBNZlAJrMpnNIDM5pAZnNJrMkzmk1AACH8C7XgWnmkzgM0msAmU1gEBgE | |
| 14 | BgEBTOaQGATWZQCazKATWZTOaTWZTNNJrMpmmUzTSaplM00mqZTOaTVMpmmk1TKATKazSawCAzSZ | |
| 15 | wGAQFAIDAJrMoBAZnNIDM5pAZnMpnNJrMpmmk1mUzTSaplM00mqZTNNJrMpmmk1TKZplhuAzKATW | |
| 16 | ZQCazKAIDAIDAIDNJnAYBMprAJlM4DNJnMprNJnMk1mkzmSazRM5kms0TOZJnMprNEzmSazQtKaQ | |
| 17 | GZzRNZlAIDAIDAIDAJlNYAmU1gEymsAmU1mkzmU1miZzKazRM5kmcyTWaJnMk1mkzmSazRM5kAUU | |
| 18 | RgBAAAAJBAUURgAAAAASABEgXhT+65lz/EiPi+8SFvjqCAk+gEcDAa/89Qd0AxVGAEAKABEg2R87 | |
| 19 | QQrSFUA=</one:Data></one:InkDrawing><one:InkDrawing lastModifiedTime="2026-09-05T05:11:41.000Z" objectID="{D99B7548-5C4D-48B6-A93A-25999553E6F2}{23}{B0}"><one:Position x="504.0" y="92.23936462402343" z="7"/><one:Size width="30.01890563964844" height="45.04251861572266"/><one:Data>AOECHQJSegFgKgAaH4tCcEWEdYC+0EXZBPqHlTLy7BdBuMAWv/Mr9HreuxOL5V6zSJyboSVat1ES | |
| 20 | v+xxzMwisUGJDrsTLO56oVjPVIrml8VPjwb4utLhmyLEZm2nDbJYSZodTkA0BmwQAwZIEEUjRiMF | |
| 21 | CAtlT2ZnaGRpGRQyCACAHgIh4uJBMwgA8BACi8XiQWQDFUYAQArKAUuH88s3nkzmkzgM0mcBmkzg | |
| 22 | KAQGAQGATWZQCAzOaQGZzKATWZTOaQGZzSAzOaTWZQCazJM5pNZlAJrMpmAAAACH8D9XgeBJlM0z | |
| 23 | mRNZpNZpM4DAJlNYBAUAgMAgMzmkBgE1mUAmsyTOaTWZTOaTVMpnNJqmUzTSaplM00mqZTOZTNNJ | |
| 24 | qmUzTSagBRRGAIAAAAkEBRRGAAAAABIAESDPTQ4xwIZyTqQ8FVDbHxeKCj9AI5rARvPPUDugAxVG | |
| 25 | AEAKABEgLMlfQdkfI0A=</one:Data></one:InkDrawing><one:Outline author="snow" authorInitials="S" lastModifiedBy="snow" lastModifiedByInitials="S" lastModifiedTime="2026-09-05T05:06:57.000Z" objectID="{ADC685CF-B7F0-4C58-AE14-0599F1DF6F6F}{10}{B0}"><one:Position x="144.0" y="96.0" z="1"/><one:Size width="167.0449523925781" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-05T05:06:57.000Z" lastModifiedTime="2026-09-05T05:06:57.000Z" objectID="{ADC685CF-B7F0-4C58-AE14-0599F1DF6F6F}{11}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[Fictitious positioned outline.]]></one:T></one:OE></one:OEChildren></one:Outline><one:Outline author="snow" authorInitials="S" lastModifiedBy="snow" lastModifiedByInitials="S" lastModifiedTime="2026-09-05T05:06:58.000Z" objectID="{90EFED40-516A-45F6-9864-AE6D1DB227E1}{10}{B0}"><one:Position x="144.0" y="192.0" z="2"/><one:Size width="72.0" height="0.750005722045898"/><one:OEChildren><one:OE creationTime="2026-09-05T05:06:58.000Z" lastModifiedTime="2026-09-05T05:06:58.000Z" objectID="{90EFED40-516A-45F6-9864-AE6D1DB227E1}{11}{B0}" alignment="left"><one:Image format="png" originalPageNumber="0"><one:Data>iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAusB9Y9J1uoA | |
| 26 | AAAASUVORK5CYII=</one:Data></one:Image></one:OE></one:OEChildren></one:Outline><one:Outline author="snow" authorInitials="S" lastModifiedBy="snow" lastModifiedByInitials="S" lastModifiedTime="2026-09-05T05:06:59.000Z" objectID="{15F5F520-9712-4630-BDC9-C9932963E8D2}{10}{B0}"><one:Position x="264.0" y="192.0" z="3"/><one:Size width="72.00001525878906" height="63.0"/><one:OEChildren><one:OE creationTime="2026-09-05T05:06:59.000Z" lastModifiedTime="2026-09-05T05:06:59.000Z" objectID="{15F5F520-9712-4630-BDC9-C9932963E8D2}{11}{B0}" alignment="left"><one:InsertedFile pathCache="C:\Users\clover\AppData\Local\Microsoft\OneNote\14.0\OneNoteOfflineCache_Files\458001d8-0f1e-451f-81cb-621828fc0b39.txt" pathSource="C:\one-tests\runs\20260905-05\assets\fictitious-attachment.txt" preferredName="fictitious-attachment.txt"/></one:OE></one:OEChildren></one:Outline><one:Outline author="snow" authorInitials="S" lastModifiedBy="snow" lastModifiedByInitials="S" lastModifiedTime="2026-09-05T05:07:00.000Z" objectID="{3B2A8C70-F682-4DB0-A2C1-2BC601301394}{10}{B0}"><one:Position x="144.0" y="312.0" z="4"/><one:Size width="92.42181396484374" height="21.94773101806641"/><one:OEChildren><one:OE creationTime="2026-09-05T05:07:00.000Z" lastModifiedTime="2026-09-05T05:07:00.000Z" objectID="{3B2A8C70-F682-4DB0-A2C1-2BC601301394}{11}{B0}" alignment="left"><one:Table bordersVisible="true" lastModifiedTime="2026-09-05T05:07:00.000Z" objectID="{3B2A8C70-F682-4DB0-A2C1-2BC601301394}{12}{B0}"><one:Columns><one:Column index="0" width="39.14614105224609"/><one:Column index="1" width="45.14567184448242"/></one:Columns><one:Row objectID="{3B2A8C70-F682-4DB0-A2C1-2BC601301394}{13}{B0}" lastModifiedTime="2026-09-05T05:07:00.000Z"><one:Cell lastModifiedTime="2026-09-05T05:07:00.000Z" objectID="{3B2A8C70-F682-4DB0-A2C1-2BC601301394}{14}{B0}" lastModifiedByInitials="S"><one:OEChildren><one:OE creationTime="2026-09-05T05:07:00.000Z" lastModifiedTime="2026-09-05T05:07:00.000Z" objectID="{3B2A8C70-F682-4DB0-A2C1-2BC601301394}{17}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[Left cell]]></one:T></one:OE></one:OEChildren></one:Cell><one:Cell lastModifiedTime="2026-09-05T05:07:00.000Z" objectID="{3B2A8C70-F682-4DB0-A2C1-2BC601301394}{22}{B0}" lastModifiedByInitials="S"><one:OEChildren><one:OE creationTime="2026-09-05T05:07:00.000Z" lastModifiedTime="2026-09-05T05:07:00.000Z" objectID="{3B2A8C70-F682-4DB0-A2C1-2BC601301394}{25}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[Right cell]]></one:T></one:OE></one:OEChildren></one:Cell></one:Row></one:Table></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/conflict-page/series-move/cold/read/payloads.json created+10| ... | ... | @@ -0,0 +1,10 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "sha256": "af1af4b8987109ce1e335e538910fb3860b7c57eb3b6110a06aa2114e06d69a7", | |
| 4 | "name": "fictitious-attachment.txt", | |
| 5 | "object": "{15F5F520-9712-4630-BDC9-C9932963E8D2}{11}{B0}", | |
| 6 | "kind": "InsertedFile", | |
| 7 | "page": "{9CBAF166-4FD0-45B3-BB50-0BCAAA4F6E47}{1}{B0}", | |
| 8 | "bytes": 43 | |
| 9 | } | |
| 10 | ] | |
| \ No newline at end of file |
corpus/conflict-page/series-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/Users/clo/dev/one/evidence/series/empty-series", | |
| 3 | "expected_pages": 6, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/conflict-page/series-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/conflict-page/series-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/conflict-page/series-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "synthetic.one", | |
| 4 | "bytes": 67768, | |
| 5 | "sha256": "7c55e483f464d329e7bb394813d202bc1295f0a24ecc895a3c81fa3b582a02bd", | |
| 6 | "mtime_ns": 1790524980196111805 | |
| 7 | } | |
| 8 | ] |
corpus/conflict-page/series-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/notebook-management/README.md created+38| ... | ... | @@ -0,0 +1,38 @@ |
| 1 | # Notebook management | |
| 2 | ||
| 3 | `candidate` is the notebook `a_notebook_is_managed_as_onenote_manages_one` in | |
| 4 | `crates/snowbound/src/manage.rs` makes through the calls the app makes: `Notebook::create` | |
| 5 | (a table of contents in the notebook colour OneNote gave new notebooks, and "New Section 1" | |
| 6 | holding a page with OneNote's title date and time fields); new sections in OneNote's | |
| 7 | new-section colour order and groups; pages created with `SectionOp::Create`, titled with | |
| 8 | `Text`, given our Ivy art as a background picture (`template_ops`) or the Teal page colour | |
| 9 | (`PageOp::Color`), and made a subpage; a page given Informal Meeting Notes (the art and | |
| 10 | the template's outlines, lowered to ops from the page model `meeting.rs` builds); a page deleted to the recycle bin | |
| 11 | (`Notebook::recycle_pages`, then `SectionOp::Delete`); a page moved to another section | |
| 12 | as a drop on its tab moves it (`notebook::session::moved`, then `SectionOp::Delete`); a section renamed and moved into a | |
| 13 | group, the group renamed, a group and a section deleted to the recycle bin, and the root | |
| 14 | reordered. | |
| 15 | ||
| 16 | `cold` is its fresh OneNote 2010 read: the hierarchy lists every section, group and page | |
| 17 | where the app put it, with its colour; the recycle bin holds "Deleted Pages" | |
| 18 | (`isDeletedPages`) with the deleted page, and the deleted group's and section's files; the | |
| 19 | Teal page reads back `color="#D4F9F2"`, the Ivy page one background image, the Meeting | |
| 20 | page OneNote's four outlines with their numbering, to-do tag and bullets, and the | |
| 21 | screenshots show the art, the colour and each title's date and time. OneNote left the | |
| 22 | files' identities as written. `tools/test_notebook_management.py` checks this without a VM. | |
| 23 | ||
| 24 | `native` is what OneNote 2010 did through its own interface on the VM. `new-notebook`: | |
| 25 | File, New made "New Section 1" with an "Untitled page" titled with the date and time | |
| 26 | (`created`); New Section named sections "New Section N"; a section dragged onto a group | |
| 27 | moved into its folder (`moved`); deleting a page copied it into | |
| 28 | `OneNote_RecycleBin/OneNote_DeletedPages.one` (grey) with its identity, title and | |
| 29 | creation time, and deleting a group moved its sections into the recycle bin and removed | |
| 30 | its folder (`final`). `section-colors`: sixteen sections made with New Section, whose | |
| 31 | colours are the order new sections take. `page-color`: View, Page Color stores | |
| 32 | `0x14001d2a` (COLORREF) on the page node and "No color" removes it; `colors.txt` is each | |
| 33 | of the sixteen colours as the page XML reports it, in the menu's order. `meeting-template` | |
| 34 | is the page XML of a page made from Business, Informal Meeting Notes. | |
| 35 | ||
| 36 | Regenerate with `SNOWBOUND_MANAGEMENT_EXPORT` set to a new directory while running the | |
| 37 | test, then `tools/native_runner.py OUTPUT COLD --expected-pages -1 --collect-notebook | |
| 38 | --screenshots`. |
corpus/notebook-management/candidate/Archive/Inner.one created| Binary files /dev/null and b/corpus/notebook-management/candidate/Archive/Inner.one differ |
corpus/notebook-management/candidate/Archive/Kitchen.one created| Binary files /dev/null and b/corpus/notebook-management/candidate/Archive/Kitchen.one differ |
corpus/notebook-management/candidate/Archive/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/candidate/Archive/Open Notebook.onetoc2 differ |
corpus/notebook-management/candidate/New Section 1.one created| Binary files /dev/null and b/corpus/notebook-management/candidate/New Section 1.one differ |
corpus/notebook-management/candidate/OneNote_RecycleBin/Binned.one created| Binary files /dev/null and b/corpus/notebook-management/candidate/OneNote_RecycleBin/Binned.one differ |
corpus/notebook-management/candidate/OneNote_RecycleBin/Gone.one created| Binary files /dev/null and b/corpus/notebook-management/candidate/OneNote_RecycleBin/Gone.one differ |
corpus/notebook-management/candidate/OneNote_RecycleBin/OneNote_DeletedPages.one created| Binary files /dev/null and b/corpus/notebook-management/candidate/OneNote_RecycleBin/OneNote_DeletedPages.one differ |
corpus/notebook-management/candidate/OneNote_RecycleBin/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/candidate/OneNote_RecycleBin/Open Notebook.onetoc2 differ |
corpus/notebook-management/candidate/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/candidate/Open Notebook.onetoc2 differ |
corpus/notebook-management/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-C64C87EA -ExpectedPages -1 -KeepOpen", "exit": 0, "stdout": "Read 6 sections and 11 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/notebook-management/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-c64c87ea", "hostname": "ONE-M6-C64C87EA"} |
corpus/notebook-management/cold/notebook/Archive/Inner.one created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/Archive/Inner.one differ |
corpus/notebook-management/cold/notebook/Archive/Kitchen.one created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/Archive/Kitchen.one differ |
corpus/notebook-management/cold/notebook/Archive/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/Archive/Open Notebook.onetoc2 differ |
corpus/notebook-management/cold/notebook/New Section 1.one created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/New Section 1.one differ |
corpus/notebook-management/cold/notebook/OneNote_RecycleBin/Binned.one created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/OneNote_RecycleBin/Binned.one differ |
corpus/notebook-management/cold/notebook/OneNote_RecycleBin/Gone.one created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/OneNote_RecycleBin/Gone.one differ |
corpus/notebook-management/cold/notebook/OneNote_RecycleBin/OneNote_DeletedPages.one created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/OneNote_RecycleBin/OneNote_DeletedPages.one differ |
corpus/notebook-management/cold/notebook/OneNote_RecycleBin/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/OneNote_RecycleBin/Open Notebook.onetoc2 differ |
corpus/notebook-management/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/cold/notebook/Open Notebook.onetoc2 differ |
corpus/notebook-management/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-C64C87EA", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/notebook-management/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{70993894-E6A7-462C-8C02-1FA8F1ACA3E1}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:07:05.000Z" color="#91BAAE"><one:Section name="New Section 1" ID="{68FD0F6B-1DD3-03A5-12C1-2578DB3C46E0}{1}{B0}" path="C:\one-tests\runs\capture\notebook\New Section 1.one" lastModifiedTime="2026-09-27T15:07:05.000Z" color="#8AA8E4"><one:Page ID="{C8939848-C2F8-029B-283F-6182C86D398F}{1}{B0}" name="Garden plan" dateTime="2026-09-27T15:04:13.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"/><one:Page ID="{0F7A8204-AF88-034B-305F-232311F64E21}{1}{B0}" name="Ivy page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"/><one:Page ID="{B3F3B40B-51ED-0DAC-3B9A-41F9193141F1}{1}{B0}" name="Teal page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"/><one:Page ID="{B165F185-8BBE-02BF-0EF8-0B851D19283C}{1}{B0}" name="Subpage" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="2"/><one:Page ID="{FCDE8FFE-7639-038D-395D-6F3F40481CAC}{1}{B0}" name="Meeting page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"/></one:Section><one:SectionGroup name="Archive" ID="{93C6E7AF-50B0-479B-9C6F-DABC159EC50C}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Archive" lastModifiedTime="2026-09-27T15:06:55.000Z"><one:Section name="Inner" ID="{E4466A43-A109-04F9-2291-12D8915FD9BD}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Archive\Inner.one" lastModifiedTime="2026-09-27T15:06:55.000Z" color="#8AA8E4"><one:Page ID="{47477E0D-48A7-0136-0152-C6779571DCE0}{1}{B0}" name="Untitled page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"/></one:Section><one:Section name="Kitchen" ID="{2E10BD18-D018-0558-107F-68D5FEEF2F03}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Archive\Kitchen.one" lastModifiedTime="2026-09-27T15:06:55.000Z" color="#F6B078"><one:Page ID="{55E20DD4-C6DF-0DF3-0618-FE208667B93B}{1}{B0}" name="Untitled page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"/><one:Page ID="{7AE713B6-6C9E-01DB-2CAE-88CD81372C8D}{1}{B0}" name="Moved page" dateTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"/></one:Section></one:SectionGroup><one:SectionGroup name="OneNote_RecycleBin" ID="{FA845BC4-0B06-480C-B62E-F2E30719A795}{1}{B0}" path="C:\one-tests\runs\capture\notebook\OneNote_RecycleBin" lastModifiedTime="2026-09-27T15:06:56.000Z" isRecycleBin="true"><one:Section name="Deleted Pages" ID="{CCB7F5CF-E701-0643-1A8A-E4CFF201198D}{1}{B0}" path="C:\one-tests\runs\capture\notebook\OneNote_RecycleBin\OneNote_DeletedPages.one" lastModifiedTime="2026-09-27T15:06:55.000Z" color="#E1E1E1" isInRecycleBin="true" isDeletedPages="true"><one:Page ID="{62BD21F9-A2BA-005E-1F59-EF1CDF7BEEA2}{1}{B0}" name="Deleted page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1" isInRecycleBin="true"/></one:Section><one:Section name="Gone" ID="{CBFCDFB4-D189-08C9-2EB4-3D3131AAD0E3}{1}{B0}" path="C:\one-tests\runs\capture\notebook\OneNote_RecycleBin\Gone.one" lastModifiedTime="2026-09-27T15:06:56.000Z" color="#8AA8E4" isInRecycleBin="true"><one:Page ID="{74F191CB-FE67-09DF-356B-4A5D4126CC00}{1}{B0}" name="Untitled page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:56.000Z" pageLevel="1" isInRecycleBin="true"/></one:Section><one:Section name="Binned" ID="{9F69E8FA-CEF1-0531-3CE4-9BB1106D4840}{1}{B0}" path="C:\one-tests\runs\capture\notebook\OneNote_RecycleBin\Binned.one" lastModifiedTime="2026-09-27T15:06:56.000Z" color="#D5A4BB" isInRecycleBin="true"><one:Page ID="{3558FDF0-CC7B-0FEE-2928-F5AACC9D6CC6}{1}{B0}" name="Untitled page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:56.000Z" pageLevel="1" isInRecycleBin="true"/></one:Section></one:SectionGroup></one:Notebook> |
corpus/notebook-management/cold/read/page-000.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Ivy page - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-000.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-000.png differ |
corpus/notebook-management/cold/read/page-000.xml created+353| ... | ... | @@ -0,0 +1,353 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0F7A8204-AF88-034B-305F-232311F64E21}{1}{B0}" name="Ivy page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{0F7A8204-AF88-034B-305F-232311F64E21}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Ivy page]]></one:T></one:OE></one:Title><one:Image format="jpg" backgroundImage="true" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{1}{B0}"><one:Position x="-27.0" y="-3.599999666213989" z="0"/><one:Size width="174.5" height="640.0" isSetByUser="true"/><one:Data>/9j/4AAQSkZJRgABAgAAAQABAAD//gAYU25vd2JvdW5kIHRlbXBsYXRlIGl2ef/AABEIAxgA2AMB | |
| 3 | EQACEQEDEQH/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsL | |
| 4 | EBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQU | |
| 5 | FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQID | |
| 6 | BAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHB | |
| 7 | FVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2 | |
| 8 | d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna | |
| 9 | 4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1 | |
| 10 | EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ0 | |
| 11 | 4SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeI | |
| 12 | iYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery | |
| 13 | 8/T19vf4+fr/2gAMAwEAAhEDEQA/AP1ToAKAOS8f+KbvwbFYamkX2nThL5V3EB8wDfdcH2wRjoc1 | |
| 14 | 5GYYqpg+SqleN7NfkzGtV9jDnauup0el6nbazp8F7aSCW2nUOjjuK9KlVhXgqkHdM1TUldbHK/Cf | |
| 15 | /kW7r/sIXH/odeblf8F/4pfmcGB/hv1Z2leuegFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 16 | QAUAFABQAUAFABQBW1HTrbVrGazu4lntpl2PG3QisqtKFaDpzV0xNKSszmNP0uP4X+ENUZLh7y1t | |
| 17 | vMuIUkGCgxwme/PfjrXlU6X9l4ao+bmSu1/l95lCEcPTstlf/Mz/AIM3Dt4GM03+ta6mZsjHzFuf | |
| 18 | 1qMok3hOZ73Zx4Bv2Lb7s7yBzJErHqRXtxd0ekSVQBQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 19 | BQAUAFABQAUAFADZHWJGdyFVQSWPQCk2oq7ASGZLiJZInWSNxlXQ5DD1BpRkppSi7oDn4/FunXmt | |
| 20 | 3+g6gi211EC3lXGDHPFjO5SeDx1HbB64zXmrGUZ1Z4asrNd9mt7/AHb/APAJU1z8iepj/C8ed4Su | |
| 21 | 9ufmv7gjj/brDLfew7a/mf5nDg1+6a83+Z3ESeXGq+gr2krI9AZ9oVpNi5Y98dBU82tkFyarAKAC | |
| 22 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgBCAwIIyD2NG4HkFrf6j8J/GI0+5Ly+F7+ | |
| 23 | U+Q7ZIhLHoD2weCO45r46E6mUYn2Uv4Unp5f8N17rU83mnh63LL4JbeT7eh1/ivwtb+MNQSVVMd1 | |
| 24 | puDFdREK3mnDKpJB+UDkjB+9x3B9PGYVY6p7u8Ovnul6Ld+unVP03Sg+WUt07ry/4crfClhH4cnE | |
| 25 | gDZv7gb8cZ31eWaUXzfzP8zz8F/Dfq/zOz3gswUHaOCe1evfsd5IkaxjCgCrSS2AfTAKACgAoAKA | |
| 26 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDGu/GGi6fqDWN3qMFrdLg+XO2zIPcE4B/CuGeNw | |
| 27 | 9Obpzmk/PQlyinZtXIPFHiPw/p2j+bq9xay2UudsbYk83H91ec1ni8VhIUr12nF9N7+iCUlTXNJ2 | |
| 28 | RzHgb4mw6/dw6fY6PfTb2Lz3QVRHGWJJJ56DOB344FeTl2ZKs1ShTbb1b0sr6v5L/hjOOJhXn7id | |
| 29 | u9tC98Kw58Pz44UX9znHf5+ld2Wp+yf+KX5nLgf4b9WdkgckqfuZyDjH4V6yu9D0AnhkY5jkK+3a | |
| 30 | nJN7CYsJlHEij/eFC5uoK/UmqxhQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBzPjfw | |
| 31 | Hp/jiwEVyPJuowfJukHzJ7e49q83G4CnjY2lpJbP+uhz16EMRHlmeG6r4L8WeA5J9kU01kwKtLbf | |
| 32 | vIXU/wB5e34ivhcRgsTg+bmT5e61X9eqPHjRxuDlej7y/rp/ke3fD3xUfFGjbpdPk027gIWWExFE | |
| 33 | J7FMjpx07fln7bLsX9apax5Wt9LL5f1oe3SqSqwUpRafZlD4USn+w7iMDj7dckn/AIGajLH+6a/v | |
| 34 | S/M48C/3b9X+Z2lyWWIsnVea9eV7aHoMdE/mRq3qKad1cY+mAUAFABQAUAFABQAUAFABQAUAFABQ | |
| 35 | AUAFABQAUAFABQAUAFAFW81Oz05d11dQWw9ZpAv86xqVqdL+JJL1dgMbU/Eujalpt3bQavYtPJEw | |
| 36 | QC4TO7HHf1xXn4jFYetRnCFRXadtVv0KpySktTctLpb2yhuYsMssYkT3BGRXo06iq01Uj1VxNcrs | |
| 37 | zi/g3E8fhKTzcGYXk6uR6huf1rycoTWH97e7POwX8N+rO6r2z0BEQRrgdKSVgHUwCgAoAKACgAoA | |
| 38 | KACgAoAKACgAoAKACgAoAKACgAoAKACgDP1zSTrenvai8urAtz51pJsce2fSubEUPrEOTmcfNOzB | |
| 39 | q6seN678AtXed5bPVYr7P/P2WV/z5zXyFbIq6d6clL10f6niVsulUd1Ub9f6/Qx4PgP4mlkCv9jh | |
| 40 | Xu7TZx+QrmWS4xuzSXzOVZVUvrJfieo/DTwZL4Ma7tLjUp7qbapEOSIAp/iVT3yCPw96+hyvBywc | |
| 41 | pwnLXt0s+q873X/Dnv0KHsKaXM5evQn+E/8AyLd1/wBhC4/9Drpyv+C/8UvzOXA/w36s7OvXPQFo | |
| 42 | AKACgBKAFoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAKl9ZtP5csJCXMOTG56c9V | |
| 43 | Psf8D1Arnq03O0oaSW3+T8n/AMHdFRdtHscp8JCW8MXBKlSb+4yp7fP0rz8qd6Dv/M/zPNwX8N+r | |
| 44 | OuvSRASOCCDmvVnsd72FtbgTp/tDqKIyuCdyerGFAFO5nxcxoOgIzWUnrYlvWxcrUoKAEoAiNyvm | |
| 45 | BF+Zj6dqhy6IVyarGFABQAUAFABQAUAFABQAUAFABQAUAFABQAnSgBEdZEDIwZT0KnINJNSV0Bxv | |
| 46 | wn/5Fu6/7CFx/wCh15OV/wAF/wCKX5nn4H+G/VnYTp5kLj2r1ZK6PQ3MuGUwyBh26iudOxinZmur | |
| 47 | BlBHQ11J3NhaAMkHzbr6tXNuzLeRrV0mohOBk0AZ11eGQ7U4T+dYSlczcuxLYQYHmHv0qoLqOKLt | |
| 48 | alhQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHnGreDtd8Ma2dU8JzB7WVt1xpMr4jJ77AeB+hH6 | |
| 49 | V8zVwWIwlX22B2e8en9fijknTqxnz03p1T2+XY0PhE5k8LTsylGa+uCUPVTv6V3ZU70G3/M/zMsF | |
| 50 | /Dfqztq9g9Ay7uHyZT/dPIrnkrMykrFuwfdDj+6a0g9C47FqtCijbW5FyxPRTxWMY6kJa3L1bFlL | |
| 51 | UJsARjvyaym+hEmQWtqZmyeEH61EY3JjG5pgYGB0FdBqLQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 52 | AFABQBn63rdr4esGvb0ulshAeRELbM9yBzj3rnxGIhhoe0qbfeJtRTb2OX+EM6XHhaaSNgyPezup | |
| 53 | 9QX4NedlUlKg2u7/ADODAu9J+rO4r2T0BksSyptYUmrhuRW0P2bcCc5PGKiK5dxJWJdzHov5mqu+ | |
| 54 | wxcsP4R+Bo1AAwJx0PoadwImtFklLtk+1TyXd2KxMBgYHAqxi0AJmgAoAWgAoAKACgAoAKACgAoA | |
| 55 | KACgAoAKACgAoAjngjuYXilRZIpFKsjDIYHqDUyippxkrpgeffC61+zeF5BCCI4rydBjsA/FeHls | |
| 56 | eWg0tk3+Z5eDVqbt3Z21tfHIWTkf3q9iM+56Cl3LrHHTqa1bNAC4+vrQkA6mAUAV/PEk/ljkDqaz | |
| 57 | vd2FfUmU84PX+dWuwxJZREhY0N2DYzpbySQ8HaPQVg5NmTk2JHBLMeAfqaSTYWbLtvaiHkks1bRh | |
| 58 | Y0SsWKsYUAFABQAUAFABQAUAFABQAUAFABQAUAFAHFfCf/kW7r/r/uP/AEOvIyz+C/8AFL8zz8D/ | |
| 59 | AA36s657SKQ524PtXqOCZ3tJj4l2jvgcDPpTihjLgyoN0ZzjquKUrrVCd+hFFqAJxINvuKlT7kqR | |
| 60 | PcSbIGYenBq5PS5T0INPiIBkPfgVEF1Jiiy/GD6GrfcsdVAJsA7ClZAOpgFABQAUAFABQAUAFABQ | |
| 61 | AUAFABQAUAFABQAUAFAHF/Cf/kW7r/sIXH/odeRlf8F/4pfmefgf4b9WdnXrnoABgUALQBC0Ecjs | |
| 62 | WUcVHKmwsL+78j/pnRpbyAEuI3OFYfSmpJivcc/QD1IoYx1UBEbuJT98fhU8yFdDkmST7rA+1Ckm | |
| 63 | MkqgCgAoAKACgAoAKACgAoAKACgAoAKAGSyLDE8jnCICxPoBSk1FNvoBwt98bfC1lKUW4nuSDgmG | |
| 64 | E4/XFeFPO8JF2V36L/OxxTxmHg7OX5mn4e+Jvh7xNcLb2l8EuW4WGdSjMfQZ4P4GunD5nhsTLkjK | |
| 65 | z7PT/gGtPEUq2kJXKvwn/wCRbuv+whcf+h1OV/wX/il+Zz4H+G/VnaV656AUAFAFK/kK/IP4utYz | |
| 66 | ZMn0LFumyBVPpWkVZDWhXmsB95G2+xqJQ7EuPYltllHEnOOhpxv1KV+pPWgynLZeYMpww4IPeseS | |
| 67 | +xMo3KjwvEfmUj3rNpozs0TQXrRnDfMv6iqUmilLuaEciyLuU5Fbp3NB1MAoAKACgAoAKACgAoAK | |
| 68 | ACgAoAKAOC8Y/B3R/FMz3URbTb5+WlhAKOfVl/qMV4OLyijiXzwfLL8Pu/yOKvg6WI1krPujk7D9 | |
| 69 | ndku1a71oGBSDiCHa5/Ek4/WvLhkEub36mnktTjhlcIyu5v8jsvhFH5XhadMs22+uBljkn5+5r2s | |
| 70 | qXLQa/vP8zpwP8N+rO1ZwgyxAHvXrt2PQI1uo3farZJ9BU8yYromqxkBtg9wZG5x0FRy3d2K2tyX | |
| 71 | YO2R9DTsMAgB9frTsA6mAxZVZioI3DtSumADh2HrzQtwHUwGmND1UH8KVkAqoqdAB9KEkgHUwCgA | |
| 72 | oAKACgAoAKACgAoAKACgAoAKACgDg/hhdCDw1cgcub+4/wDQ68XLpWov/FL8zzcG7Un6s6XEly/d | |
| 73 | j/KvR1kdmsi/a2ogGTy571tGNjRKxYqyhMjOM8jtRcBaAEyM47+lAC0AZ19GUl3jv396wmrMzl3J | |
| 74 | bS58xlVvvDIz604yu9SoyuXK2KCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAEoA4f4TW8f/AAjU | |
| 75 | +Ru231wAWOT9+vGyuK9g/wDE/wAzz8F/DfqzuAAowBge1eyegLQBXu7nyFwPvn9KiUrEt2ItOyzS | |
| 76 | Mec4qICiXa2LM6ecpebv7vFYN+8Zt2ZoA5Fbmg2WMSoVPek1cNzMkje1lHtyD61ztOLMbcrNSN/M | |
| 77 | QMO4roTujYdTAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA4v4T/wDIt3X/AGELj/0OvIyv+C/8 | |
| 78 | UvzPPwP8N+rO0r1z0BCcCgDImkM0pb16Vyt3MW7s0rWHyYgO55NdEVZGqViaqGZV4u24euaW5lLc | |
| 79 | 0of9Un0FdEdjUfTAjmQSBVYZBNTJXDcIYvJTbnIHSiKsGxJVAFABQAUAFABQAUAFABQAUAFABQBz | |
| 80 | /h3xZDr2qa3ZABJNNuPKP+0uPvfmGH4V52FxixFSrT/kdvl/w9yIzjJtLp/w5e/tC5vObG3Vou1x | |
| 81 | cMVVh6qACWHucA9ia09tUq/wY6d3ovkt3+CfRm/Ko/Ewxq8fzbrKb/pmFeM/99Zb+VH+1R191+Wq | |
| 82 | /G7/ACD3PMsWd+l0zRlWhuE5eGT7w9/Qj3HH45ranWVT3WrSW6f9arzRLjbXocr8J/8AkW7r/sIX | |
| 83 | H/odeflf8F/4pfmebgf4b9WdpXrnoEN2+y3b34qJ7CexBZ2m3DuOewqYx6smMbF2tSwoAo6hFl0Y | |
| 84 | d+KxmtbkSVy6o2qB6CtVoWLTAY331/E1L3QD6oAoAKACgAoAKACgAoAKACgAoAKACgDyjwp4dng+ | |
| 85 | KniiGTJsZAJ3x0k3MGVD7cnP0IPBNfH4XDN5jWpv4d353aaX+fe1tmzmowlSr1J20la34nq9fYHS | |
| 86 | FAFe8slu1Xlo5UOY5U+8h/z26GsalJVLdGtn1RSlY5H4S5Hhm43EFvt9xkjjJ315uV39g7/zP8zz | |
| 87 | sF/Dfqztq9g7xGUNjIzjmi1wFoAKACgBrKG69uaTVwHUwCgBg5kPsKnqA+qAKAI5bhIfvHn0qXJI | |
| 88 | Tdiq+o/3U/E1m59ieciN/KT2H4VPOyedifbpf7w/KjmYczHLqEg67T+FPnY+clTUR/En5VSn3Hzo | |
| 89 | mS7if+LHsapTTKTTJutWMWgAoAKAOO0PU9OTXdVhuLK3spLS6EFvcvDjePLU/wCsI5YknvnBr57D | |
| 90 | VcPDEVIzgouLsnby/m7/ADvqa805J32/roa/ijxdpvhDTftmoTbVbiONOXkPoo/r0r1MVjKWEhz1 | |
| 91 | HvsurOapUhRjzTdkeX3Hx81C6Mr6docf2eMZaWeQkKP9rGAPzr5eefVXd06at53f+R5yx7nrTpu3 | |
| 92 | duyOa8Q/GXxF4jRLW0xp6twRZbt8h+vUfQYrgr5tisQuW/L6f57/AHHFWzCpVfJQX+fy/q/oem/B | |
| 93 | KBl8Gq0u7zVuJVYN1B3c596+nyeP+zK/dnfl6ao673Z6FXunphQAUAFABQAUAFABQAxORn15qV3A | |
| 94 | dVAUrm95Kx/99VjKfYhy7FInJ5rMyCkAUAFABQA6ONpGwoJppXGlcvQWKpy/zH07VsodzVRsWq0K | |
| 95 | FoAKACgDzt9EXX9VbRpdPe70a1t4mguNQjcvG5dvMO6QbmJAAx06dq+UdH61V+rcjcIpWck7rXXV | |
| 96 | 6u+1ttuhfIl8aTX366nRXF94WNzHpNxLpfnW+ES0l8vMfTgKenavXlPA3VCfLeOlnbQzcle19Sv4 | |
| 97 | j+Hem+KBbx3Mk8NjBylnalY4i394gDJOOP5dTU4jLaWJaTbUV0VkvXYzq0oVlyz1Rd0DwRofhk7t | |
| 98 | O06KGXGPOI3P/wB9HJrfD4DD4bWnDXvu/wARwpQpK0FYyPhP/wAi3df9hC4/9Drnyv8Agv8AxS/M | |
| 99 | 48D/AA36s7SvXPQCgAoAKACgAoAKAGv0x3PFJ9gFAwKYEV0kkkeEIHr71Ek3sJmY8Txn5lIrBqxi | |
| 100 | 00NpCCgA60ASx20knRT9TxVKLZSiy1Fp4HLnPsK0UO5aii0iKgwoAHtWiVix1MAoAKACgAoA4S98 | |
| 101 | ezaV8UYdBuAv2C6t0ETY5WU7sHPcH7v4D3rwJ4+VLMPq8/haX3/8HY5pV+WuqL6q/wAyLx78OrPx | |
| 102 | 3dS9NP1eBAY5xys8Z6bh7HI45HHYipx2AhjpyS92a69GvP0enlp3QsTg4YiKb0fcyvAw8X+B71NM | |
| 103 | 1izm1HR3bZHc2583yPfj5tvqCOO3cHkwTxuAmqVaDcO61t+tvL7vPLDxxFJ8lT3l0f8Ameq19Yd5 | |
| 104 | xfwn/wCRbuv+whcf+h15GV/wX/il+Z5+B/hv1Z2leuegFABQAUAFABQAUAMX5ju/KktdQH0wCgBC | |
| 105 | M0AMaCNuqL+VTyoBBbRD+BaOVBYeqKvRQPoKdkgHUwCgAoAKACgAoAKACgDzn4meEpr/AMQeG9at | |
| 106 | ELPbXkMU+3rsMgIb8Dkf8Cr5rNMLKdaliIdGk/v0Zy1qLqVKc1vF/gdxqkEjRpcQLuubc7kUfxr/ | |
| 107 | ABJ+I/UA9q9vEQk0qkPijt5918/zs+h2xfR7MtW86XUEc0Tbo5FDKfUGt4TVSKnHZktWdmSVYji/ | |
| 108 | hP8A8i3df9hC4/8AQ68jK/4L/wAUvzPPwP8ADfqztK9c9AKACgAoAKACgBrfMdv50nroAtMBaACg | |
| 109 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKAM2w/wBE1C6s/wCA/wCkRD0DE7h+DZP/AAMVxUf3dWdH | |
| 110 | p8S+e6+/X5mktUpfIZd+JbG112z0cuZL+5DMIk52IATub0HGKc8VThWjQ3lL8PNmPNHm5b6mB8J/ | |
| 111 | +Rbuv+whcf8AodcmV/wX/il+Zw4H+G/VnaV656AUAFABQAUANY46dTSbAUDAoSsAtMAoAKACgAoA | |
| 112 | KACgAoAKACgAoAKACgAoAKACgAoA5/xdqY8PWqawV3C2SVWX1UoWA/76RPzrysfV+rKOJ7XX3q/5 | |
| 113 | pFppQlfor/ccR8G/D9/eXt94r1bcbm9BWEyDkqTkt7DgAew+leTk+HqTnLGVt3t593/keVg4TfNX | |
| 114 | qby/I6P4T/8AIt3X/YQuP/Q69TK/4L/xS/MrA/w36s7SvXPQCgAoAKAEJx/hSbsBFJMsHLnlvSpb | |
| 115 | 5dwbsM+3xep/KlzonmRItzE/Rx+NVzJjumSVQxaACgAoAKACgAoAKACgAoAKACgAoAKACgAoAyfF | |
| 116 | MEdxoV0Jo1liQLIyOMghWDEEenFefj4xlh5cyulZ/c7/AKGlP4rGqqhVAAAA4AHavQStojM4z4T/ | |
| 117 | APIt3X/YQuP/AEOvIyv+C/8AFL8zz8D/AA36s7SvXPQCgAoAazY9z6UmwADHJ60WAhvo98Ge681E | |
| 118 | 1oTJXRmVgYhQBJHO8R+Vj9KpNopSaL0F6svDfK36VrGd9zRSuWa0KCgAoAKACgAoAKACgAoAKACg | |
| 119 | AoAKACgClrSeZo98vXdBIMf8BNc2KXNQqLyf5Fw0kie0fzbWF+u5FP6VrTfNBPyJejOR+E//ACLd | |
| 120 | 1/2ELj/0OvMyv+C/8UvzPOwP8N+rO0r1z0AoAbuzwv5+lK/YBQuP8aErALTAQjIxQBk3EPkyle3a | |
| 121 | uZqzMZKxHUkhQAUAXLS8x8jn6E1rGVtGaxl0ZfrYsKACgAoAKACgAoAKACgAoAKACgBgmjL7A6lh | |
| 122 | /CDzU88W7XHZlXWn8vR75s42wSHP/ATWGKfLQqPyf5FQ1kie0j8q1hTptRR+la01ywS8iXqzkfhP | |
| 123 | /wAi3df9hC4/9DrzMs/gv/FL8zzsD/DfqzsTIB05r1eZHoABv6nj0FG+4DulUAtABQAUAQ3MAnTH | |
| 124 | 8Q6GplG4mrmW6FGKkYIrn2MWrCUhBQAUAX7K53jY3UdD61tCXQ1i7lytSwoAKACgAoAKACgAoAKA | |
| 125 | CgAoA4/xn8M9N8XSfagz6fqYGBdwcFh6MO/16142Nyuji3zr3Z9/8zCrRjV6tPutynpHh7XvD2iX | |
| 126 | djqmsJq1rNsghLIfNUs4XGSeRg9DnHrXJHD4nD0JUq1Tmi7Jb31aX3am2GhOm/flzW8rHeV9IM4f | |
| 127 | 4Wxeb4YugGKn7fcdP9+vGy1c1B/4pfmefgv4T9WdDNA8R+YH616DTR1NMYCVPBI+lSK5PFeyRnk7 | |
| 128 | h71ak0UpF2G5SfpwfQ1spJmidyaqGFABQBDcWyzr6MOhqJRuJq5myxNC2GFYNWMWrDKQgoAVWKMC | |
| 129 | OopjWhrQSiaMN+Yroi7o2TuSVQwoAKACgAoAKACgAoAKACgAoAzdS/f6jp1t/ttcMP8AZQY/9CZf | |
| 130 | yrir+/Vp0/Nv5Jf5tGkdItmlXaZnE/CpxH4ZumY4A1C4/wDQ68fLHag/8T/M8/Bfwn6s7JZo5OAy | |
| 131 | n2r1uZM9Aa1rE/VB+HFLlTFZDPsEXofzo5ELlQ5bOJTkA5+tHIh2SJqsYtABQAUANdFkXDAEe9Jq | |
| 132 | 4FKbTyOYzn2NZOHYhx7FR0ZDhgQfes9jNqwlIRZsZtku09G/nWkHZmkX0NKtzQKACgAoAKACgAoA | |
| 133 | KACgAoAQkKMkgAdzRsBm6d/pt7c33BjP7iEjoUX7zfi2fwUVw0P3tSVbpsvRbv5v8EjSXupRNOu4 | |
| 134 | zOE+GYz4SvP+whcf+h14uXf7vL/E/wAzzsH/AAn6v8zoK7zpJI7mSLo3HoapNopSaLsF8snDfK36 | |
| 135 | Vqp33NFJMs1oULQAUAFABQAUAFADWUOMEAj3oauBBJYRv0yp9qzcETyogbT3U5VgcfhUcjJ5bbF5 | |
| 136 | CSoyMHuK2WxoOpgFABQAUAFABQAUAFABQB5r4l8Ia54t1uCPVNTW2093Jj0+xLcRj7zuxxk9B0PL | |
| 137 | DpXyuLwmKxlWMK07J7RXZbt7frq1sZOi6kuaUvdXRaX9Wei2trFY2sVvBGsUESBEReiqBgAV9PCE | |
| 138 | aUVCCslojUlqwOH+Fy7/AArej1vrn/0OvGy3WhL/ABS/M8/Bfwn6s3a7joCgAoAs2t4YjtblP5Vp | |
| 139 | GVjSMu5oghhkcg1uaC0AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBm6Z/pV3eXh/ifyI/ | |
| 140 | ZEJB/Nt34Y9K4qH7yc6z72Xov+Df8DSWiUTSrtMwoA4r4T/8i3df9f8Acf8AodeRln8F/wCKX5nn | |
| 141 | 4H+G/Vm9cR+VMy+/FdzVmdUlZkdSSFABQBasrny22N909PatIytoaRfQ0a3NAoAKACgAoAKACgAo | |
| 142 | AKACgAoAKACgAoAKACgAoAQnAoAzvDo/4kdk3eSISn6t8x/nXFgv92g+6v8AfqaVPjZpV2mYUAcX | |
| 143 | 8J/+Rbuv+whcf+h15GV/wX/il+Z5+B/hv1Z1F/DuXzB1HX6V6U11O2SKFYmQUAFABQBpWU/mx4P3 | |
| 144 | lreDvobRd0Wa0KCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAIbttlrM3ojH9KzqO0G/Ia3INGXZ | |
| 145 | o9ivpBGP/HRWWFVqFNeS/IqfxMi0nX7TWrrUYLZi7WM/2eU9t20E4/PH1BpUcTCvKcYfZdn/AF+B | |
| 146 | mmnsaVdQzi/hP/yLd1/2ELj/ANDryMr/AIL/AMUvzPPwP8N+rOzI3DB6GvXPQMq5gMEmP4T0NczV | |
| 147 | mYyViKpJCgAoAkt5fJlB7dDVJ2ZUXZmtXSbC0AFABQAUAFABQAUAFABQAUAFABQAUAFABQA1lDqV | |
| 148 | YBlIwQehFJpNWYEF7L9h06eSNQPJiZlUcDgcCsqj9lSk49F+Q+p5d+z550+na3dykt51wvzn+JsE | |
| 149 | sf8Ax4V8zkCk41JPrb79b/meXl7lKnKcusn+h3/i3xdp/g3SzeX7nk7Y4U+/K3oB/M9q9/F4ung4 | |
| 150 | c9T5Lqzuq1YUY883ocx8H7iS/wDCxkXMaS3U0pA7ZbOM152VSdShfu2/xOHAPmpXXdnoPSvePTGT | |
| 151 | QiZNp/A+lS1cTVzLliaF9rVztWMWrDKQgoAKANS0k8yAeo4rog7o3TuierGFABQAUAFABQAUAFAB | |
| 152 | QAUAFABQAUAFABQB5z8M/iuni1/7O1FUttWUfKV4WYDrgdiPT8q+dy3NPrT9lV0l08/+CefhcWsR | |
| 153 | 7slaS6HoF2kslu6wtGsh4BlUsvvkAjt7171RSlFqFr+eq/NHoqyepznhfSv+EWsZNO0/7NdwW0p8 | |
| 154 | 6OIFJVZsN3JBOCOOOMV5OEpSwcHSp2kovW2ju9eraeluw4wpxXLFWOO8R/DjVPiN4pfULu9jtdGT | |
| 155 | EduqHfJsHX5eiknOc8joRxXl1sBXzGu60pJQ6dXb06fPY8zE4N4ir+8laK6HQ/B63W08JywpnZHe | |
| 156 | zoueuA2K9XKYqGHcV0b/ADDAK1Jpd2dzXsnohQBFPAs64PXsfSpcbiauZk0LQthh9D61g1YyasMq | |
| 157 | SQoAuac+HZfXmtYPU0gX62NAoAKACgAoAKACgAoAKACgAoAKACgAoAKAMK68D6HeatFqb6fGl/E4 | |
| 158 | kWeIlGLA5ydpGfxrz54DDTqKq4+8ne60/Ihwg5c7Sv3M7xJ8RbPQL5bD7Jey3bnCsLVzH7kHHzY/ | |
| 159 | 2c/UVyYvNIYefslFuXo7f8H5FOUYtKV/kmzN0e9tfA+q61d69qlvB/atws9ujBlYrtHJQ5K8nHP9 | |
| 160 | 2ubD1I4GpVnippc7TW+3pq1vbXsZtxpNylKyb6+iRsw66HTVLnQ401lTHHcRxQTKFZ23Kw3dBwgO | |
| 161 | PUn1rqhiburLCrn0Tsn1d0/yvb/M6JO8FJa7mJ8JLuc+FXZoCrveTs6c/KxbkVGVzl9Xu11f5nlY | |
| 162 | Fv2T06s76KQyDlCn1r207npElUAUANeNZFwwyKTVwM+4smiyV+Zf1FYyjYycexWrMgltW2XCfXFV | |
| 163 | HRlR3Nauk2CgAoAKACgAoAKACgAoAKACgAoAKACgAoA848AeGPGdjeLca5rb/Zh1sywmZ/qx+7+F | |
| 164 | fN4DC4+E1OvUaXa97/5fI48PCvHWtO/lb9Tur+2kM0F1AoeaDcPLJxvRsbgD2PAI+mOM5HtVoSco | |
| 165 | 1Ybx6d09/ns16W03XfFrVM4vwSJptAeDWdNn1C8F5OyJcW2QoLn+Nht65714OAk5UHCvTcpczteP | |
| 166 | n3em9+pMISS99rd/m7fgbV94h0zwS0H9qyraPfMcPGhMSbQAEyBwAD1wM8njOK9B16WAa9vo59lo | |
| 167 | rW0+X46vS9iatWELczsttSh8I3WXwxcOhDK1/cEMOhG+jK2nQbX8z/M4MD/Dfqztq9g9AKACgAoA | |
| 168 | KAK89mkvI+VvUVm4JkuKZRkgeBskcDuKyaaIs0aoORXSai0AFABQAUAFABQAUAFABQAUAFABQAUA | |
| 169 | FAHK/ETxvB4J0Rpid17NlLaIdS3dvoP8B3rycyxqwdH3fie3+fyMa1eGHjzz+7uZPwl1rW/FFrf6 | |
| 170 | vq0pMErrHbRKoVFC53ED6kDPtXJlNXEYnnrVno9F203McLVqVoe0mrX29C94l8fDw/400PRmRTDe | |
| 171 | g+a56qWO2PH4g5+tb4rMPq+Lp0Oj3+eiNZ1lCpCm/tXNHx14Qh8aeH5bCRhHMD5kEpH3HHTPt2P1 | |
| 172 | rqx2EWMouns90/MK1KNem6cupzXwZL2HhJLeXAKXMqMB2IbFcGUXhh+V92cWX+7S5X3Z6LXvnqC0 | |
| 173 | AFABQAUAFACEZFAABgUALQAUAFABQAUAFABQAUAFABQAUAFABQAUAePz+Bb/AOJ3i+61TVWey0a3 | |
| 174 | kNvBCeJXRT2H8OTkknnnpXxywdTNMRKtV92Cdl3svyPOrYSVerzVfhWy7+fz/I9ZsrKDTrSK1tol | |
| 175 | gt4VCJGgwFA7V9dTpxpRUIKyR6CVlZHkfxU0ia6+JvhVkB2ztGgI7FJMt+hr5DNaUpY6lbrb8Ged | |
| 176 | iYOWIoyXd/hqex19kekcR8K4ll8NXQYZ/wCJhcf+h14+WJOg/wDFL8zz8F/CfqztVXaoGc47mvXW | |
| 177 | h6A6mAmecUALQAUAJQAtABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAGb4f/wCQWhP3jJKW/wB7 | |
| 178 | zGz+ua4sH/BXq/vu7mlT4jSrtMypdaXbXt5Z3U0Yae0Zmhb+6WXaf0rGdGFScaklrHb56AW62A4v | |
| 179 | 4T/8i3df9hC4/wDQ68jK/wCC/wDFL8zz8D/DfqztK9c9AKAKd45hmjkH0NZS0dyZOxaRg6hh0NaJ | |
| 180 | 3KBmCKSegobsBWs5DNLI59gKzg7tslO5brUoKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAzdNP2 | |
| 181 | a9vrQ9n+0R+6vkn/AMeDfmPWuKh7lSdLzuvR/wDBuaS1SkaVdpmFABQBxfwn/wCRbuv+whcf+h15 | |
| 182 | GV/wX/il+Z5+B/hv1Z2IlQnG4Z9M1610egOpgR3EPnx7e/UVMldCauMswyxbWGCDilDYFsF8SLc4 | |
| 183 | 7kUT2CWwtnD5UPPU8miCsgSsierGFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAUNTjeJoryFS8k | |
| 184 | GdyKMl4z94AdzwCPcY71yV4uLVaCu4/iuv8AmvS3U0i7+6y5FKk8SSRsHjcBlZTkEHoa6YyU0pRd | |
| 185 | 0zNq2jH1QBQBxfwn/wCRbuv+whcf+h15GV/wX/il+Z5+B/hv1Z1txarPz0b1r1JRud7VyCNLi3bg | |
| 186 | b19M1CUokpNF3Py5x+FaljRIpUEEYPSi6AXKv6GjRgKTgUwKkl/822Ndx9TWTn2J5uxYh37cyYye | |
| 187 | w7Vcb9SiSqAKACgAoAKACgAoAKACgAoAKACgAoAKACgDPeCXTpGltk823YlpLYdQTyWTtz3Xv1GD | |
| 188 | nPG4Tovmpq8eq/Vfquu6s730upaMs2t5Fexb4X3AHBBBBU+hB5B9jXRTqRqrmg/6810IacdyetBH | |
| 189 | F/Cf/kW7r/sIXH/odeRlf8F/4pfmefgf4b9WdpXrnoBQAlAFe3jaHfjlTyPr6VlFNBawLBI775G5 | |
| 190 | HRR0o5W9WJEroJ48HIB9Ku3MhtBFbpD91efWhRSFaxJVDCgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 191 | oAKACgCnd6alxL50bNb3QGBPF1I9GHRh7H8MVzVKCm+eLtLuv17r1+RalbToQ/2jNY8X8WEH/LzA | |
| 192 | CYz7kclP1HvWft50tK607rb5rdfivMfKpfCc58JWD+Gbkggg39wQR3+euTK3eg2v5n+Z5eC/hv1Z | |
| 193 | 2tewegRSzqh27vm7AVDlYBXZyn7vGT69qbba0AZDb7Ad7FmbqaSjbcENt2aMOj87eh9RSi7aMSJH | |
| 194 | kFvGC2T9Kd+VDbI1v4ie4+opc6J5kTq4cZUgj2q07lDqYBQAUAFABQAUAFABQAUAFABQAUAFABQA | |
| 195 | UAFABQAUAcV8Jhjw1c/9f9x/6HXkZX/Bf+KX5nn4L+G/VnX3DOF2xglj39K9STeyO9kdvaeW29zu | |
| 196 | f+VKMbasSVidyEBbOMcmqehQBmYZAU575ouwELBXAZhuPQUddQHkZGDVAV3sY2PGV+lZuCJcUwis | |
| 197 | /JbKyMKFC3UaVizWgwoAKACgAoAKACgAoAKACgAoAKACgAoAKAIJL6CK7itXlVbiZWaOMnlwuM4+ | |
| 198 | mRWbqQjNU29Xt8gJ60AKAOL+E/8AyLd1/wBhC4/9DryMr/gv/FL8zz8D/DfqztK9c9AQnAoApXzk | |
| 199 | Io7tyaxmTN6Fm1/490+laR2GtiO9hMseR95amauKSuOtJvOi5+8ODTg7oad0T1YwoAKACgAoAKAC | |
| 200 | gAoAKACgAoAKACgAoAKACgAoA4f4s+HLvW/D8d3pvmDU9Ok+0QmIkOR/EFx36H8K8PNsNOtRVSl8 | |
| 201 | UHdW387fn8jlxNOU6f7v4lqix8MPGreM/D/mXGBqFs3lXAAxuOOGx2z/ADBrTLMa8ZR974o7/o/m | |
| 202 | GGre3p8z32fqdLdXbiUW9uA9wRklvuxL/eb+g6n2GSPQqVHf2dP4vwXm/wBF18ldrsS6vY5T4SDb | |
| 203 | 4ZuASWIv7j5j1Pz15+Vq1B/4n+Z5uC/hv1Z21ewegMb5mA/E1L10AqXyGSaNR34rOauyJK9i4q7F | |
| 204 | AHbitUrFjqYDFjCMxHG7rSSs7gPpgFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHlvw18dtq3 | |
| 205 | jPxDps8m5Jrh57XJ7KdpUf8AAQp/A18rlmNdTE1acnpJtr+vT8jho4n2tWpTfR6em39ep20WlWWl | |
| 206 | apdPpdrHFqF4Fa4dc7FAJw7LnGTk4xgt+BI9j2VOjVl7CNpy37Jd2v6b+Ta9CMEry/pmraWiWcWx | |
| 207 | SzEnc7vyzt3JPr/+oYArtp01TVl9/Vvu/wCvJaCbucl8J/8AkW7r/sIXH/odeblf8F/4pfmedgf4 | |
| 208 | b9WdmTtGfSvX2PQEQYGT1PNJABUFg2ORRbqA6mAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 209 | FABQA2TPltjrg0pbMEfJvhnVptF8YWd7G2JEucEvnGCcHP4E1+VYerKjVjUjumfKUJ+zxt31bX3s | |
| 210 | +rLO0WziKgl3Y75JG+87ep/QewAA4Ar9QpU1SjbdvVvu+/8AWy0Wh9a3csVsScX8J/8AkW7r/sIX | |
| 211 | H/odeRlf8F/4pfmefgf4b9Wdi3zMB6cmvVersegPqgCgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 212 | ACgAoAKACgAoAgvLtLK3aV8kDACr1Yk4Cj3J4rKpUVKLlL+vL5jS5nY+V/FuhXGheMrmzljCO04k | |
| 213 | RVORtc5AB79cfhX5hiaM6FWVOa1/zPlcTS9njbLZtNfNn1bGCI1B6gCv1NbI+pY6mBxXwnOPDV1/ | |
| 214 | 1/3H/odeRln8CX+KX5nn4H+G/VnZoOMnqea9ZHoDqYBQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 215 | ABQAUAFABQAUAZbSpc6i80rqlrZHYCxwDKRyfwBAHuzelcHMqlVyk/dhp/28/wDJaLzb7Gnwxt3/ | |
| 216 | ACM/xN4EsPE+q6XqE+UubGVX3AZ8xAc7D7Z5z9fWs8VgKeKqQqy0cX967HNOlCpKMpLWOx0lemah | |
| 217 | QBxPwpGfDlyO39oXGf8AvuvHyzWi1/el+ZwYH+G/VnbV7B3hQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 218 | QAUAFABQAUAFABQAUAFAHiX/AAkVx4y+IGl6BZTM+k2Fx500g4+0Oh3tI3sW6D3r4ZVpYvFU8NB3 | |
| 219 | hF39Wndt+r2POliHXxfs4fDHf5dPkz22vuT0RCQoyTgepobsAUAcZ8J/+Rbuv+whcf8AodeRlf8A | |
| 220 | Bf8Ail+Z5+B/hv1Z2leuegFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAcB8Kf | |
| 221 | hwfBllJd3uG1W5UBwDkRJ12g9z3J/wAOfAyvLvqkfaVPjf4Lt/mcOEw31eLvrJ7nf1753EN3aQ31 | |
| 222 | tLb3EaywyqVeNxkMD2qJwjUi4TV0wPMn8K+LvA2q+d4euW1jR2bJ0+5lG5R/dG79CD9RXy7wmNwF | |
| 223 | Tmwr54dm/wCvvRw+zr053py5o9nv8mbnwiYv4XnYqUJvrglT1Hz9K9PKneg3/ef5k4L+G/Vnb17B | |
| 224 | 6AUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBz8vi+zu7FrjR7i31YxyIjxW8q | |
| 225 | knccKM5wCTjr715c8fBw58O1OzSaXnovxKhaezv6HDXfxA8etfNHb+EjEgPCPG78f7wIFeNLMMxc | |
| 226 | 7Ro2+Tf4nmyrYnmtGlp6o77wvf61qFkX1rTIdNm4wkc/mZ+oxx+Zr3sJUxNSN8RBRfr+nT7zui24 | |
| 227 | 3krP7zbrvKOL+E//ACLd1/2ELj/0OvIyv+C/8UvzPPwP8N+rO0r1z0AoAKACgAoAKACgAoAKACgA | |
| 228 | oAKACgAoAKACgAoAKACgAoAKACgDAgbT5riztLMQW1orGZEQBBMy9Ai8ZAJBLdOAOeceTF0ak4U6 | |
| 229 | VlFa9rtdu6W7fpa+ttbci8zfr1jIKACgDi/hP/yLd1/2ELj/ANDryMr/AIL/AMUvzPPwP8N+rO0r | |
| 230 | 1z0AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDzb44aFc33h+21SzLi402QyE | |
| 231 | xnDBD1YH2IB/Ovm87oSnSjWhvD8n1+RwY2E5UuanvHUufCTx4/jDR3gvGB1Kzwsjf89FPR/r2P8A | |
| 232 | 9etspxzxVNwqfFH8V3/zHg8R9Yp3e63O9r3juCgDi/hP/wAi3df9hC4/9DryMr/gv/FL8zz8D/Df | |
| 233 | qztK9c9AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAbJGsqMjqHRgQysMgj0N | |
| 234 | JpSVmB5tpHw8n8E/EGHUNKDPot4HimiHJt8jI+q7gMHqOh9T8zSy+eCxsalHWDun5f8AAvbX7+74 | |
| 235 | qWGVGs5w2a1Xmel19OdoUAcX8J/+Rbuv+whcf+h15GV/wX/il+Z5+B/hv1Z2leuegFABQAUAFABQ | |
| 236 | AUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHF/Cf/kW7r/sIXH/odeRlf8F/4pfm | |
| 237 | efgf4b9WdmTgV656AUALQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAMeVI3RWdVZ | |
| 238 | zhFJwWOM4HrwCfwqXJJpN7gPqgCgAoA4v4T/APIt3X/YQuP/AEOvIyv+C/8AFL8zz8D/AA36s6e/ | |
| 239 | nx+7H416M30O2T6FwdBWyLFoAhln8uWNO7Hn6VDlZ2FcmqxhQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 240 | QAUAFABQAUAeafHW+udL0PSLy0dop4L9XWRf4SEevmc8lKFOnOLs1L9GcGOqSpUlOG6a/U6/wZ4m | |
| 241 | i8XeHbXUo8K7jbLGP4JB94f1+hFexgsSsXQVXr19TqpVFVgpx6m5XcahQBxPwpbZ4Zuz6X9z/wCh | |
| 242 | 14+WO1CX+KX5nn4H+G/Vm7kyyZPVjXdudW7Niuo2CgDLeTzLnd/tcVzN3dzK/vGrXSahQAUAFABQ | |
| 243 | AUAFABQAUAFABQAUAFABQAUAFABQAUAcb8WfD7+IfBN5HCpe4tyLiNR1JXqP++S1eNm1B18K+XeO | |
| 244 | v+f4HNiaXtqMoLc4b9nfVH83V9OJJTalwo9D91v/AGX8q8XIKr550ujV/wBP8jzcrm3CUH0f5/8A | |
| 245 | DHtdfZnthQBw3wx/5FO9/wCv+4/9Drxsu/3eX+J/medgv4T9WdNYxb5s9l5r0Yq7OyKNOug1Gv8A | |
| 246 | cb6UnsBlW6750HvXOldmMdzXrpNgoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAEoA5nQfAN | |
| 247 | h4b8Sahq1lmIXkYU2wHyoc5Yj2PHHbn6V5eHy+nhsRKtT2a27d/+GMYUYU5SnFay3Onr1DYKAOJ+ | |
| 248 | FK7/AAzdqe9/cj/x+vHyxXoS/wAUvzPPwX8N+rOyhiEKbR+frXrpWPQSsPzzTAKAK9ta+S7MfoPp | |
| 249 | WcY2YkrE7MEUknAFW3YYkUnmoGAwDQndXAfTAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 250 | AoAQkKCScAdzRsBxXwkYP4ZuWUgqb+4II7jfXj5W06Da/mf5nn4L+G/VnbV7B6BTaYpf47HC1le0 | |
| 251 | ib62LlalCE4GTQBmXE5uJMD7vQCueT5jJu7saMaeXGq+grdKyNR9MAoAKACgAoAKACgAoAKACgAo | |
| 252 | AKACgAoAKACgAoAKAKupmMafcCWZrdGQp5sZIZSeBtxznJ4x3xWFdxVOXM7Lv117efbzHFNvQ8Xs | |
| 253 | PitqGiau2keLYZLmG3fYzooVz6M69HGOcDHXvxXxdPMqtOfscam0t+/z7+n56HlLHvD1XSrL5rt/ | |
| 254 | XY7v4QzJceFZpYzuR76dlPqC+RX0eVNSoNr+Z/maYF3pP1Z29ewegZt4uy6z64Nc8tzOW5oiug0K | |
| 255 | 9/Jshx/eOKzm9CZOyK9jBvfefujp7mogr6kxXU0a3NAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 256 | gAoAKAI5547aF5ZWCRoMkmonONOLlJ6IaV3ZFS1t3upVu7pdrDPkwH/lkDxk/wC2R1PYHA7luenC | |
| 257 | VSXtai9F2/4L69tl1bpu3uo8++Mvw6fxDbDWNOi36hbriWJBzMg9PVh+o+grxM3y91l7ekveW67r | |
| 258 | /NfkeTjsL9YjzR+Jfj5D/gpcGDwXB/d86TI/GtcnlbDL1ZGXvlor1Z6YrBlBHQ19DuesRTwLNtJ4 | |
| 259 | KnrUyjcVrkm9f7w/OndDsMmgE+3J4HYd6TjzCauSKoUYAwB2qthjZJViXLHFJtINiq+ojPyoT9az | |
| 260 | dQjmRYgeSRcuoUdh3q4tvcpEtUMKACgAoAKACgAoAKACgAoAKACgAoAKACgDNh/4mt15x/49IHIi | |
| 261 | XtI44L/Qcge+T6GuKP8AtE+f7MdvN9/RbLz17Gj9xW6s0q7TMKAOD+F9os3hu5IO0i/uAPT75rxc | |
| 262 | tjei/wDE/wAzzcEr036s7W3RoY9jYJ7Yr1leOh6KViXZ68n3q7dxkV3J5UOR16VMnZCbsPUZUMvG | |
| 263 | RnFNd0MeDkVSdwKcllJM+5nH4dqycG9yXG5LDZpFz95vU1SgkNJIsVYwoAKACgAoAKACgAoAKACg | |
| 264 | AoAKACgAoAKAM/VpXKRWsTFZrltgZeqJ1ZvwHA9yK5MTJ2VKD1lp6Lq/u/Fo0gur6F2KJIIkjjUJ | |
| 265 | GgCqq9AB0FdMYqCUYqyRm3fVjbi6htULzSpCg/ikYKP1pSnGCvJ2CxmnxdoYk2HWLHd6faE/xrl+ | |
| 266 | u4W9vaR+9CutrmB8JGD+GbllIZTf3BBHQjfXJlbvQbX8z/M4MD/Dfqzs1PVia9Zdz0BjXcSn74/C | |
| 267 | lzoV0MuQLmD92d2D2pS95aA9UTouxFHoMVa0QxF4dvwNJbgPqgCgAoAKACgAoAKACgAoAKACgAoA | |
| 268 | KACgAoAKACgDNtf9K1q7m/htlFunsSA7n8coP+A1xU/3mInP+X3V+b/T7jR6RS76mlXaZmH4o8Ga | |
| 269 | T4vtxHqVsJGUYSZPlkT6H+h4rgxWBoYxfvVr36ozqU41Y8s1dHlurfs8TrITpmqxvH2S6Qgj8Vzn | |
| 270 | 8hXzVXIaif7qaa89PyuePPKoP4JW9dTq/g1YyW3hERmQKYbqaNtvchsV62UwccPbs2dOXx5aVvNn | |
| 271 | oCDKfnXuLY9Nkb2kbZ+QZpOCFZCCVIXjjVQA36Uk0rJBtoNlsvMYt5jfjScL9RNXH28HlZO5jn1p | |
| 272 | xjbUq1h08bSJhWKmqkrgzOdZoTzuHvmsHdGT5kSRX7p975x+tUptDUu5eimWZcqfwrZNMtO5JTGF | |
| 273 | ABQAUAFABQAUAFABQAUAFABQAUAZvh/59NE3e4kkmz6hmJH6YH4VxYPWlz/zNv73p+FjSp8VuxoS | |
| 274 | P5aMxBIUE4UZP5V2N2VzM4m5+M3ha0uWglup0kQlWDWsgKkdiCM14jzrCJ2bf3M5Z4qhTlyylZ/P | |
| 275 | /I2tC8c6F4kcR6fqUM0x58kkq/8A3ycGu2hj8NiXanPXts/xNoVYVPgkmZPwn/5Fu6/7CFx/6HXP | |
| 276 | lf8ABf8Ail+Zx4H+G/VnZ1656AtAFSeItdREd+9ZSXvCa1RZ2+pJrS3cYpOBk8CmAA5FABQA0xIf | |
| 277 | 4V/KlZAKqKnRQPoKEkgHUwCgAoAKACgAoAKACgAoAKACgAoAKAKWiJ5WjWCf3beMf+OiuXCrlw9N | |
| 278 | eS/IuesmXa6iDnvEvgLRPFgzqFkrTDpPGdkg/EdfxzXnYnL8Pitakde60f8AXqZVKNOsrVFc5GL4 | |
| 279 | A6JDdLMmoaiu1gwCugIPsdua8pZDRTvzy/D/ACOOOX0IS5o3+82PhIoi8LzrknF/cDLHJPz967sr | |
| 280 | 92g1/ef5jwP8N+rO26V7B6BGk6SOVU5x3qVJN2C5JVAAYEkdx1ouAjLuUj1GKTVwM2OZ7WQqegPI | |
| 281 | NYJuLMr8rsaSMHUMOhrdO5qOpgFABQAUAFABQAUAFABQAUAFABQAUAFABQBS0R/N0awf+9bxn/x0 | |
| 282 | Vy4V82HpvyX5Fz0ky7XUQFABQBxPwpGfDN2P+n+4/wDQ68fLdaEv8UvzPPwP8N+rOmvLrf8AIvA7 | |
| 283 | 16MpX2O2T6EthFsjLn+Lp9KqC6jirItVqUZ9rKTdn/azWEX7xCepo1uWVru184bl++P1rOUb6ktX | |
| 284 | I7CQgtG3BHODSg+go9i7WpYUAFABQAUAFABQAUAFABQAUAFABQAUAFAGb4f+TThB3t5Hhx6BWIH6 | |
| 285 | YP41xYPSlyfytr7np+FjSp8V+5pV2mYUAFAHDfC+TyvCt43f7fcY/wC+68bLXahL/FL8zzsE7Un6 | |
| 286 | s6e1tTK25+FHb1r0Yxudqj1ZogYFdBoBoAzbVf8ASwPQmueO5nFamnXQaBQAwxqXDY+Yd6VtbgPp | |
| 287 | gFABQAUAFABQAUAFABQAUAFABQAUAFABQBm23+i61dw/w3Ki4T3IAR/ywh/4FXFT/d4icP5veXy0 | |
| 288 | f6feaPWKfbQ0q7TMKACgDifhSgfw3c5Gcahcdf8Afrx8sV6L/wAUvzPPwX8N+rO06P8AUV62zPQH | |
| 289 | VQBQBBFBsuJH9elQo2dxW6k9WMKACgAoAKACgBCdoyego2AAdwBHQ0bgLQAUAFABQAUAFABQAUAF | |
| 290 | ABQB5pBoXirwlrkHkyya9oaSFk82QG4hQ8MvP3uOw9AeOlfKPD43BVYuF6kE++qXVa+Xy0vpsZUl | |
| 291 | UhNxbvF991/mvxPSIpUniSSNg8bgMrL0IPQ19TGSmlKLumbNW0Y+qEFAHF/Cf/kW7r/sIXH/AKHX | |
| 292 | kZX/AAX/AIpfmefgf4b9Wdk/3c+nNesz0BaYC0AFABQAUAFABQBXluDBMA3+rbv6Vm5crE3YnByM | |
| 293 | itBle+fbBj+8cVnN6Ey0RJbHMCfSqjsUiWqAKACgAoAKACgAoAKACgAoAKAM2H/iVXfkni0uGJiP | |
| 294 | aNzyU+h5I98j0FcUf9nnyfZlt5Pt89153XY0fvq/VGlXaZhQBxfwn/5Fu6/7CFx/6HXkZX/Bf+KX | |
| 295 | 5nn4H+G/VnaV656AxOMr6dPpUrTQY+qEFABQAUAFABQBFPCJ02nr2PpUyVxNXG2qPGhR+x4PtSim | |
| 296 | tGC0FuoTPHgdQaJK6Bq5Iq7FAHQVaVhkFxeCI7V+Z/5VnKdtiXKxJAH2ZkPzHt6VUb9SkS1QBQAU | |
| 297 | AFABQAUAFABQAUARXNsl3bvDICUcYODgj3B7H3rOpCNSLhLZjTs7or6dcyMZLa4IN1Bjc2MeYp+6 | |
| 298 | 4+uDn0INY0Zyd6dT4o/iuj+f53Kkuq2LtdRBxfwn/wCRbuv+whcf+h15GV/wX/il+Z5+B/hv1Z2l | |
| 299 | euegNYdx1FJgRzljFujOCOamW10DIIdQzxIMe4qVPuQpdy2rBxkHI9RWt7ljqACgAoATPNAATgZo | |
| 300 | egENtMZIskE8nms4y0BakpOV+UjPY1e60AghsxG25jvb1qIwtuSlYs1oUFABQAUAFABQAUAFABQA | |
| 301 | UAFAFHUbeQ+Xc24zcwZwv/PRT95PxwMe4FcteEtKlP4o/iuq+fTzsXF9HsWba4ju4EmiO6NxkGt4 | |
| 302 | TjUipx2ZLVnZnIfCf/kW7r/sIXH/AKHXl5X/AAX/AIpfmedgf4b9WdpXrnoBQA0jByPxHrSsBm3U | |
| 303 | HlvuX7h/T2rCSsZSVhsFw0DccjuKSdhJ2NSNxIgYdDXQnc2Bs7flxn3od+gFVkumP3gv0rO0mTqT | |
| 304 | xqyH5m3Njr0qldPUroMZ5i4/dDAPrSbk+gailSQUicIV6jFFuiAWFXQsGYN36U4prcBHvIozgtk+ | |
| 305 | 1DmkK6Q6O5jkOAwz6GmpJgnclqhhQAUAFABQAUAFABQAlAFK41zTrN9k9/awt/dkmVT+prnliaMH | |
| 306 | aU0vmg2C21vTrxtsF/bTN6RzKx/Q0QxNGekZp/NBuR/8gy/9LS6b8I5T/Rv/AEL/AHqy/gVf7svw | |
| 307 | l/wfz9TT4l5r8jnfhP8A8i3df9hC4/8AQ65cr/gv/FL8zy8D/DfqztK9c9AKACgBkkYcHjr1HrUt | |
| 308 | XAoS2TLkp8y+ncVi49jNx7D7ByjmNgRn19aqDs7DjpoX62LCgCJ5V8xUB+f2qG1ewXH7x34Poaq/ | |
| 309 | cCGJdk0rdd2MYqFo2FiZRjr1NWkA14UkPzKD70nFMLAsEadEA/ChRSAkqgCgAoAKACgAoAKACgD5 | |
| 310 | N1vx5r3iFm+26nOyH/llG2xP++RgV+W1sXXxH8Wbf5fdsfHVMdXqfat6aGCeTnvXHaxwtt7gpKsC | |
| 311 | CQR0I7UDUnHVM6LR/iBrmixNBHfST2rDBt7hi6/h3U+hBFdlPF1qcXCMnZ9On/A+Vj0aGY16LTvf | |
| 312 | 1PcPgrctd+DPOf78l1M5x0yWzX2+TycsNd73Z7mAfNRv5s76vbPRCgAoAKAGsMHI/EUn3AUc80wF | |
| 313 | oAr3k/kx8febpUTdiW7EVjARmRup6ZqYLqEVbVlmd/LiZvT1q5OyK2FicSRqw7007oNyveB4mEqE | |
| 314 | gdxWcrrVEyutUS21wJ19GHUVUZXGncmqxhQAUAFABQAUAFABQAUAfF9fkR+fhQAUAdN4H8A6h431 | |
| 315 | ARwKYbND++u2HyoPQere38q78HgquMnyw26vov8Ag+R6GFwcsQ7vSPf/ACPcfg7braeEpIEzsivZ | |
| 316 | 0XPXAbFfa5THkw7iujf5nv4BWpNLuzua9k9EKACgAoAKAGD5Wx2PSltoMfTEQvCpfzG+YjoDUNdQ | |
| 317 | sSqNqgVSVgI7ld8Dj2pSV0J6iWq7bdPpRHYFsSkZFUMgFr5UoeM49VrPls7oVrFitBhQAUAFABQA | |
| 318 | UAFABQAUAfP91+z7rsZ/cXtjMP8AaZ0/9lNfByyPFL4XF/N/5Hzzyl/Zn+A22/Z+1+Rv313YQj1D | |
| 319 | u3/sopRyPFPdpfN/5CWUy6zX3HW+H/gDpdi6y6pdyaiw58pB5ceffnJ/MV6lDIqcda8ubyWi/wA/ | |
| 320 | yO6ll1GnrL3n5/5Hp1lY2+m2sdvawx28EYwscahVH4V9LTpwpRUIKyR6m2hyXwn/AORbuv8AsIXH | |
| 321 | /odeZlf8F/4pfmefgf4b9WdpXrnoBQAUAFABQA1hkUmrgKp3DNCdwEblgPxpPsMdVCEoAOlAC0AF | |
| 322 | ABQAUAFABQAUAFABQAUAFABQAUAFABQBxfwn/wCRbuv+whcf+h15GV/wX/il+Z5+B/hv1Z2leueg | |
| 323 | FABQAUAFABQAwfK/1qdmAq8sT+FNdwHUwCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA4v4 | |
| 324 | T/8AIt3X/YQuP/Q68jK/4L/xS/M8/A/w36s7SvXPQCgAoAjlnSEfMfwqXJIG7DLe6FwzADGPWlGX | |
| 325 | MJO5PVjGuPlyOo5pPYECjCihbAOpgFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBxfwn/5F | |
| 326 | u6/7CFx/6HXkZX/Bf+KX5nn4H+G/VnZswUZJAHvXrt2PQK0l+i/dBY/pWbmuhLkkLNdGKFTgb2HT | |
| 327 | 0ocrIbdjOZi7ZJyT3rExbuXdOXCu3rxWtM0jsXa1LCgBkf3cenFJAPpgFABQAUAFABQAUAFABQAU | |
| 328 | AFABQAUAFABQAUAFAFHV9asdBs2utQuo7WBf4pD19gOpPsKwrV6eHjz1ZWQpSUVeTsji/hVqIfwr | |
| 329 | JJDykt5PIrEdi/FeTllS9BtdW/zPNwUv3Tt3Z1LyNIcsSfrXp3udjdwiXc4B6d/pQNK7FlkMshY9 | |
| 330 | 6G7ibuNRDIwVRkmjcErmtDEIYwo7V0pWRvsSUwCgBi8O350luwH0wCgAoAKACgAoAKACgAoAKACg | |
| 331 | AoAKACgAoAKAPP8A4gfFux8I+ZZ2gW+1UcGMH5Ij/tn19h+leBj82hhb06fvT/Bev+Rw4nGQwytv | |
| 332 | Lt/meA6/4k1HxPem61K6e4k7A8Kg9FHQCvh61epiJc9WV2fLV8RUxDvN/Loe2fBz/kSIP+u0n86+ | |
| 333 | 0yn/AHVerPewH8BfM7evYPRJFG2It/e+UUy1ohIoWmbCjPvQlcSVzSt7YQL6sepreMbGqViarGFA | |
| 334 | BQAwf6w/QVPUB9UAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHkfxW+LR0xpdG0SX/Sxlbi7Q/wCq | |
| 335 | 9VX/AGvU9vr0+TzTNeS9DDvXq+3kvPz6eu3kY3G+x/d0/i/L/gnhjMXYsxLMTkk8kmvjj5dtyd2J | |
| 336 | QI9++Dn/ACJEH/XaT+dfdZT/ALqvVn0+A/gL5ncAFiAOpr2T0tzSFmpVA2SFHT3rbkNrEyqEGAAB | |
| 337 | 7VaVhjqYBQAUAFADP+Wn4UuoD6YBQAUAFABQAUAFABQAUAFABQAUAFABQB518X/iEfCumjT7GTbq | |
| 338 | l0p+ZesKdN31PQfia+dzbHvDx9jTfvP8F/m+h5+NxP1eGnxPb/M+dCSxJJJJ6k18IfINtu7CgQUA | |
| 339 | fQHwgTZ4It/eRz+tfd5UrYVerPqMB/AR6BYQbm8w9B0+te3BX1PUiupoVuaBQAUAFABQAUAMH+sP | |
| 340 | 0FT1AfVAFABQAUAFABQAUAFABQAUAFABQAUAFAHyB4i1248S61d6jck+ZO5bbnhV7KPYDivyitVl | |
| 341 | XqSqz3Z8RiKzr1HN/wBIzqxOYKACgD6J+EcBfwdZKO5Y199la/2aKPq8Ar0UeiogjQKOgr3krHqj | |
| 342 | qYBQAUAFABQAUAMX77fgKlbsB9UAUAFABQAUAFABQAUAFABQAUAFABQAUAfF9fkR+fhQAUAWNO06 | |
| 343 | 41a+hs7SJpriZtqRr1Jq4QlUkoQV2zWnTlVkoQ3Z9NfC+wbTfCkNvJjzYnaNivTI4r9Gy2Dp4dRe | |
| 344 | 6PrsHHkpcvY66vUO0KACgAoAKACgAoAan8X1qUA6qAKACgAoAKACgAoAKACgAoAKACgAoAKAPi+v | |
| 345 | yI/PwoA0dB8PX/ibUEs9Ot2uJm64+6g9WPYVtRo1K81Tpq7Omhh6mIlywR9G/D34bWfge18w7bnU | |
| 346 | 5FxLckfd/wBlPQfzr7/L8uhg1zPWb6/oj6zDYaGGjaO/Vmv4TTy9NlH/AE8SH/x6u3Cq0H6sugrR | |
| 347 | +bNuus6AoAKACgAoAKACgBqjaKSVgHUwCgAoAKACgAoAKACgAoAKACgAoAKACgD440/S7zVrgQWV | |
| 348 | rNdTH+CFCx/SvySEJVJcsFd+R8NToVK3wRuem+FPgNqF+Vm1uYafD18iMhpW/HoP1r6HC5JWq613 | |
| 349 | yr8f8kezQyvrWfyX+Z7PoHhvTvDFiLXTbVLaIdSOWc+rHqT9a+ww+GpYWPJSVv19T3YQjTXLBWRp | |
| 350 | 11FmZ4fj8uycf9NnP61z0FaPzZjSVomnXQbBQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 351 | ABQAUAFAEFpY29hEIraCK3jHRIkCj8hWcKcKS5YJJeQE9aAFABQBT0xPLt2H+2x/WsqasiIaIuVq | |
| 352 | WFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAEcKeWpHuTSSsJKxJT | |
| 353 | GFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAf/2Q==</one:Data></one:Image></one:Page> |
corpus/notebook-management/cold/read/page-001.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Untitled page (Read-Only - Recycle Bin) - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-001.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-001.png differ |
corpus/notebook-management/cold/read/page-001.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3558FDF0-CC7B-0FEE-2928-F5AACC9D6CC6}{1}{B0}" name="Untitled page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:56.000Z" pageLevel="1" isInRecycleBin="true"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{3558FDF0-CC7B-0FEE-2928-F5AACC9D6CC6}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-002.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Untitled page - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-002.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-002.png differ |
corpus/notebook-management/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{47477E0D-48A7-0136-0152-C6779571DCE0}{1}{B0}" name="Untitled page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{47477E0D-48A7-0136-0152-C6779571DCE0}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-003.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Untitled page - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-003.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-003.png differ |
corpus/notebook-management/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{55E20DD4-C6DF-0DF3-0618-FE208667B93B}{1}{B0}" name="Untitled page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{55E20DD4-C6DF-0DF3-0618-FE208667B93B}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-004.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Deleted page (Read-Only - Recycle Bin) - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-004.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-004.png differ |
corpus/notebook-management/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{62BD21F9-A2BA-005E-1F59-EF1CDF7BEEA2}{1}{B0}" name="Deleted page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1" isInRecycleBin="true"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{62BD21F9-A2BA-005E-1F59-EF1CDF7BEEA2}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Deleted page]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-005.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Untitled page (Read-Only - Recycle Bin) - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-005.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-005.png differ |
corpus/notebook-management/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{74F191CB-FE67-09DF-356B-4A5D4126CC00}{1}{B0}" name="Untitled page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:56.000Z" pageLevel="1" isInRecycleBin="true"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{74F191CB-FE67-09DF-356B-4A5D4126CC00}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-006.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Moved page - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-006.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-006.png differ |
corpus/notebook-management/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{7AE713B6-6C9E-01DB-2CAE-88CD81372C8D}{1}{B0}" name="Moved page" dateTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{7AE713B6-6C9E-01DB-2CAE-88CD81372C8D}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Moved page]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-007.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Subpage - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-007.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-007.png differ |
corpus/notebook-management/cold/read/page-007.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B165F185-8BBE-02BF-0EF8-0B851D19283C}{1}{B0}" name="Subpage" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{B165F185-8BBE-02BF-0EF8-0B851D19283C}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Subpage]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-008.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Teal page - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-008.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-008.png differ |
corpus/notebook-management/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B3F3B40B-51ED-0DAC-3B9A-41F9193141F1}{1}{B0}" name="Teal page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="#D4F9F2"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{B3F3B40B-51ED-0DAC-3B9A-41F9193141F1}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Teal page]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-009.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Garden plan - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-009.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-009.png differ |
corpus/notebook-management/cold/read/page-009.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C8939848-C2F8-029B-283F-6182C86D398F}{1}{B0}" name="Garden plan" dateTime="2026-09-27T15:04:13.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:04:13.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{C8939848-C2F8-029B-283F-6182C86D398F}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Garden plan]]></one:T></one:OE></one:Title></one:Page> |
corpus/notebook-management/cold/read/page-010.navigation.json created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | { | |
| 2 | "exit": 0, | |
| 3 | "stdout": "", | |
| 4 | "stderr": "", | |
| 5 | "w": 800, | |
| 6 | "h": 600, | |
| 7 | "error": null, | |
| 8 | "win": { | |
| 9 | "title": "Meeting page - Microsoft OneNote", | |
| 10 | "class": "Framework::CFrame", | |
| 11 | "dialog": false | |
| 12 | } | |
| 13 | } | |
| \ No newline at end of file |
corpus/notebook-management/cold/read/page-010.png created| Binary files /dev/null and b/corpus/notebook-management/cold/read/page-010.png differ |
corpus/notebook-management/cold/read/page-010.xml created+345| ... | ... | @@ -0,0 +1,345 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{FCDE8FFE-7639-038D-395D-6F3F40481CAC}{1}{B0}" name="Meeting page" dateTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:06:55.000Z" pageLevel="1" lang="en-US"><one:TagDef index="0" type="0" symbol="3" fontColor="automatic" highlightColor="none" name="To Do"/><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:QuickStyleDef index="1" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" creationTime="2026-09-27T15:05:18.000Z" lastModifiedTime="2026-09-27T15:05:18.000Z" objectID="{FCDE8FFE-7639-038D-395D-6F3F40481CAC}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Meeting page]]></one:T></one:OE></one:Title><one:Image format="jpg" backgroundImage="true" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{2}{B0}"><one:Position x="-18.0" y="-39.59999465942383" z="0"/><one:Size width="610.2999877929687" height="789.7999877929687" isSetByUser="true"/><one:Data>/9j/4AAQSkZJRgABAgAAAQABAAD//gAkU25vd2JvdW5kIHRlbXBsYXRlIHNtYWxsLXB1c2gtcGlu | |
| 3 | c//AABEIAxgCZAMBEQACEQEDEQH/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsK | |
| 4 | CwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQU | |
| 5 | FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/xAAfAAABBQEBAQEB | |
| 6 | AQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEH | |
| 7 | InEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFla | |
| 8 | Y2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbH | |
| 9 | yMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQID | |
| 10 | BAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJ | |
| 11 | IzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1 | |
| 12 | dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY | |
| 13 | 2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP1ToAKACgAoAa7rGjO7BVUZLMcAD1oS | |
| 14 | vogOF1j4tWFjcGKztnvwpwZN+xPw4JP5V61PLpzV5uxyyxEU9NTsdK1KHWNOgvLc5imUMM9R6g+4 | |
| 15 | PH4V5tSDpycJdDojJSV0W6zKCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 16 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 17 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDzb4u65c24ttNi3RwTJ5kjj+PnAX8OpHuK | |
| 18 | 9rLqUZXqPdHFiJNe6eYV7xwnoHws8VR6fLNpt5MsVvJmSJ5GAVW7jJ9R/L3rx8fh3NKpBanZQqW9 | |
| 19 | 1npNtrum3kojg1C0nkPRI51Yn8Aa8SVKpFXlFr5HapxezL9ZFBQAUAFABQAUAFABQAUAFABQAUAF | |
| 20 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 21 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAFHWNGtNdsmt | |
| 22 | byISxnkHup9QexrWnVlSlzQZMoqaszxfxh4LufCs4YnzrKRsRzD167WHY/zr6bDYqOIVtmebUpOn | |
| 23 | 6HO12mA6NGkkVUVmdiAqqMkn2pNpLUZ754Ph1G38P2seqEm6UH7xywXPAY+uK+RxLpuq3T2PWpqS | |
| 24 | iuY2q5jQKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 25 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 26 | AoAKACgAoAKAEoAM0AAbNABQAZoA8z+Msz/8SqLkRnzG9iflH6Z/WvcyxL336HFiXsed2FhcandJ | |
| 27 | bWsTTTOcKi/54HvXsznGmuaTsjjScnZHpvw50Sz0rVb60vYCuu23zDzOVMR6PH6jqCeo6cZxXz+L | |
| 28 | xEqsU4/C/wCtTvpQUXrueiV5R1BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 29 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 30 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAQzSiJcmmlcVzGu/EMcDEbq6o0WzNzsFpr6Tt1FEqLQl | |
| 31 | O5l/ETVpYfBt+9nPLb3A8vbLC5Vh+8XOCOema6MFTTrx51da/kzOvJqm7Mzm8Kov/MzeIT/3EP8A | |
| 32 | 7GtvrDf/AC6h9xHsv77+8z9V8B2mqwbJdf1mV15Rri5EgU/Qj+tawxcqb0px+SsRKipfaf3jtK+H | |
| 33 | lhpq5g1zWYJmADvBdCPd+S9PbNFTGzn8VOLXmrjVCK2kyxf/AA5jvgs8HiXXF1GFW+zzy3u7YSOh | |
| 34 | wucHvisfrbWjpxt6Fex/vP7y1pHg0anbbm8SeJILiM7JoDqOTG/cZ28juD3BFTPF8r/hQ/8AAf8A | |
| 35 | gjVG/wBt/eX/APhXP/U0eJP/AAYf/Y1n9d/6dQ/8B/4JXsP77+8X/hXH/U0eJP8AwYf/AGNH13/p | |
| 36 | 1D/wH/gh7D+/L7w/4Vx/1NHiT/wYf/Y0fXf+nUP/AAH/AIIew/vy+8P+Fcf9TR4k/wDBh/8AY0fX | |
| 37 | f+nUP/Af+CHsP78vvD/hXH/U0eJP/Bh/9jR9d/6dQ/8AAf8Agh7D+/L7w/4Vx/1NHiT/AMGH/wBj | |
| 38 | R9d/6dQ/8B/4Iew/vy+8P+Fcf9TR4k/8GH/2NH13/p1D/wAB/wCCHsP78vvD/hXH/U0eJP8AwYf/ | |
| 39 | AGNH13/p1D/wH/gh7D+/L7w/4Vx/1NHiT/wYf/Y0fXf+nUP/AAH/AIIew/vy+8P+Fcf9TR4k/wDB | |
| 40 | h/8AY0fXf+nUP/Af+CHsP78vvD/hXH/U0eJP/Bh/9jR9d/6dQ/8AAf8Agh7D+/L7w/4Vx/1NHiT/ | |
| 41 | AMGH/wBjR9d/6dQ/8B/4Iew/vy+8P+Fcf9TR4k/8GH/2NH13/p1D/wAB/wCCHsP78vvD/hXH/U0e | |
| 42 | JP8AwYf/AGNH13/p1D/wH/gh7D+/L7w/4Vx/1NHiT/wYf/Y0fXf+nUP/AAH/AIIew/vy+8P+Fcf9 | |
| 43 | TR4k/wDBh/8AY0fXf+nUP/Af+CHsP78vvD/hXH/U0eJP/Bh/9jR9d/6dQ/8AAf8Agh7D+/L7w/4V | |
| 44 | x/1NHiT/AMGH/wBjR9d/6dQ/8B/4Iew/vy+8P+Fcf9TR4k/8GH/2NH13/p1D/wAB/wCCHsP78vvD | |
| 45 | /hXH/U0eJP8AwYf/AGNH13/p1D/wH/gh7D+/L7w/4Vx/1NHiT/wYf/Y0fXf+nUP/AAH/AIIew/vy | |
| 46 | +8P+Fcf9TR4k/wDBh/8AY0fXf+nUP/Af+CHsP78vvD/hXH/U0eJP/Bh/9jR9d/6dQ/8AAf8Agh7D | |
| 47 | +/L7w/4Vx/1NHiT/AMGH/wBjR9d/6dQ/8B/4Iew/vy+8P+Fcf9TR4k/8GH/2NH13/p1D/wAB/wCC | |
| 48 | HsP78vvD/hXH/U0eJP8AwYf/AGNH13/p1D/wH/gh7D+/L7w/4Vx/1NHiT/wYf/Y0fXf+nUP/AAH/ | |
| 49 | AIIew/vy+8P+Fcf9TR4k/wDBh/8AY0fXf+nUP/Af+CHsP78vvD/hXH/U0eJP/Bh/9jR9d/6dQ/8A | |
| 50 | Af8Agh7D++/vFHw6x/zM/iP/AMGH/wBjR9d/6dQ+7/gj9h/ff3ij4eY/5mbxF/4H/wD2NL67/wBO | |
| 51 | ofd/wQ9h/ff3i/8ACvv+pl8Q/wDgf/8AY0fXP+nUPuD2H95/eO/4QD/qZPEH/gd/9jS+uf8ATuP3 | |
| 52 | B7H+8/vFHgLH/Mx6/wD+B3/2NH1z/p3H7g9j/ef3ijwHj/mYte/8Df8A7Gl9b/6dx+4fsf7z+8Ue | |
| 53 | Bcf8zBrv/gb/APY0fW/+ncfuD2P95/eOHgfH/Mf1z/wN/wDsaX1r/p3H7g9j/ef3ijwTj/mPa5/4 | |
| 54 | Gf8A2NH1r/p3H7h+y/vP7xR4Lx/zHdb/APAz/wCtS+tf9O4/cHsv7z+8UeDcf8xzWv8AwL/+tR9Z | |
| 55 | /wCncfuD2X95/eOHg/H/ADG9Z/8AAv8A+tS+s/3I/cHsv7z+8UeEcf8AMa1j/wACv/rUfWf7kfuH | |
| 56 | 7L+8/vF/4RL/AKjOr/8AgV/9al9Y/uR+4PZ/3n947/hFP+oxq3/gV/8AWo+sf3I/cHs/7z+8X/hF | |
| 57 | v+ovqv8A4E//AFqX1j+5H7h+z82KPDGP+Ytqn/gT/wDWo9v/AHF9wez82O/4Rr/qK6n/AOBH/wBa | |
| 58 | l7f+4vuD2fmxR4cx/wAxTUv/AAI/+tR7b+6vuDk82L/wj3/US1H/AL//AP1qXtv7q+4OTzYo0DH/ | |
| 59 | ADEdQ/7/AP8A9aj2391fcPk82O/sL/qIX/8A3/8A/rUvbf3V9wcnmxRomP8Al/vv+/3/ANaj2v8A | |
| 60 | dX3ByebHf2N/0/Xv/f7/AOtR7X+6vuHy+bFGkY/5fbz/AL+//Wpe0/ur7g5fNi/2V/0+Xf8A39/+ | |
| 61 | tS9p/dQcvmKNMx/y93X/AH8/+tR7TyQcvmO/s7/p6uf+/n/1qXP5IfL5ijT8f8vNx/33Rz+SDl8x | |
| 62 | RY4/5eJ/++6OfyQco4WeP+W03/fdLm8gsKLXH/LWX/vqjm8h2FFvj/lpJ/31S5vILCiHH8b/AJ0r | |
| 63 | hYcI8fxN+dFwsKFx3NAxcUgFoAKAM3Vg3kNitqe5Ejy/XLiVJ2BPFe9SSaOCbGabqLxnrRUgmEZF | |
| 64 | rxDfNd6NPGT8rbf/AEIVFGPLUTHN3iXGu3Pc1lyl3G/aXz1oshXHLduD1o5R3LMGqPGetZuCZSka | |
| 65 | lnqaidZ9wRwNrE8bl9D9O31PqawnT6GikdVbTiZMiuCUbGyZPUlC0AFABQAUAFABQAUAFABQAUAF | |
| 66 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 67 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBUvseS2cVpDclnl3igL55x6 | |
| 68 | 171DY4am5gRS7GrraMEWb253adKPp/MVEI+8im9DbBzXIzUWpAKACmBXklLybecCtErIlnR+HNea | |
| 69 | wIiny0B790/+tXFXo8+q3N4TtozauPGMEcmIoGlUfxE7a5o4Ztas1dRGvpuoR6naiaMMozghuxrn | |
| 70 | nB03ZmkXzK5arMoKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 71 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 72 | AoAKACgAoAKAM7VS3kHFbU9yJHm2s2EtxO3Br26c0kcUk2Zq6NKT901r7ZEcg3V9Me00meRgQBt/ | |
| 73 | 9CFOlUUppClG0bm6LN1HSuXmNrB9mfPSldBYcto57UcyCxZh0t5D0qHNIpRJP+ETnOWjYN32txS+ | |
| 74 | sR6h7N9CrPayWMnlzIUbGcGtFJT1RDVtyNHVnVSyoGIG5jgDPFN6K4LU7yzuIbK2jhjxtQY+vvXk | |
| 75 | yTk7s607aE66gpPWp5CrkiXit3qXFoLkyyBqixQ6gBaACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 76 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 77 | oAKACgAoAKACgAoAKACgAoAKACgAoAKAIpohKuDTTsKxnyaNE+SVrb2rRPKUpdKRH+6Kr2jYuUwv | |
| 78 | iTarbeBNSlUYK+Vz/wBtUFduBlzYmK9fyZz4hWpNnUPoyHtXD7VnRykf9iJn7tP2rFykqaOg7UnU | |
| 79 | HylmPT0TtUObY7EV3KLdTinFcwPQ47xE7TyrMMkAbT7V6VBWVjmnqVtPt0eFzKiyK4xtcZGPpV1H | |
| 80 | 0QookijmsOLWQtD/AM8JTkL/ALp6j6HI+lZ2T3K2LkOoM4/iVh1VuCKlwHcsR6gw71DgO5qWGoly | |
| 81 | BWE4GiZuRNuTNcr0NCSkMKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 82 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 83 | oAKACgAoASgAIzQBWmi3GmmI5P4rrt+Herf9sv8A0clell3+9Q+f5M5sT/Cf9dTtcV5h1BigAxQA | |
| 84 | UAUb61MoNawlYhowbjTWyeK64zMnEqtZMvatOYVhhtX9DT5hWFFmxP3aOYLEsensx6VDmOxqWGnF | |
| 85 | CDzWE5miRuRLsTFcrNCSkMKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 86 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 87 | AoAKACgAoAKACgBpXNAHH/Fsf8W81X/tl/6OSvSy7/eofP8AJnLiv4T/AK6nZV5p1BQAUAJQAEZF | |
| 88 | AETW6t2p3FYiawU9qvnYrDP7NX0FPnCwo05R2FLnCxIlmq9qlybHYmWML2qbjHUALQAUAFABQAUA | |
| 89 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 90 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBx/xc/5J5qv/bL/ | |
| 91 | ANHJXpZd/vUPn+TOXFfwn/XU7CvNOoKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 92 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 93 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA4/4uf8AJPNV/wC2X/o5K9LL | |
| 94 | v96h8/yZy4r+E/66nYV5p1BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 95 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 96 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHH/ABc/5J5qv/bL/wBHJXpZd/vUPn+T | |
| 97 | OXFfwn/XU7CvNOoKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 98 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 99 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA4/4uf8k81X/tl/6OSvSy7/AHqHz/JnLiv4T/rq | |
| 100 | dhXmnUFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 101 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 102 | AFABQAUAFABQAUAFABQAUAFABQAUAcf8XP8Aknmq/wDbL/0clell3+9Q+f5M5cV/Cf8AXU7CvNOo | |
| 103 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 104 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 105 | oAKACgAoAKACgAoAKACgAoA4/wCLn/JPNV/7Zf8Ao5K9LLv96h8/yZy4r+E/66nYV5p1BQAUAFAB | |
| 106 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 107 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 108 | ABQAUAFABQAUAFAHH/Fz/knmq/8AbL/0clell3+9Q+f5M5cV/Cf9dTsK806goAKACgAoAKACgAoA | |
| 109 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 110 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 111 | oAKACgDj/i5/yTzVf+2X/o5K9LLv96h8/wAmcuK/hP8ArqdhXmnUFABQAUAFABQAUAFABQAUAFAB | |
| 112 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 113 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAc | |
| 114 | f8XP+Sear/2y/wDRyV6WXf71D5/kzlxX8J/11OwrzTqCgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 115 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 116 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAOP+Ln/ACTz | |
| 117 | Vf8Atl/6OSvSy7/eofP8mcuK/hP+up2FeadQUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 118 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 119 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBx/wAXP+Sear/2y/8A | |
| 120 | RyV6WXf71D5/kzlxX8J/11OwrzTqCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 121 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 122 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAOP+Ln/JPNV/7Zf+jkr0su/wB6 | |
| 123 | h8/yZy4r+E/66nYV5p1BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 124 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 125 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHH/Fz/AJJ5qv8A2y/9HJXpZd/vUPn+TOXF | |
| 126 | fwn/AF1OwrzTqCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 127 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 128 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAOP8Ai5/yTzVf+2X/AKOSvSy7/eofP8mcuK/hP+up | |
| 129 | 2FeadQUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQA | |
| 130 | UAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQ | |
| 131 | AUAFABQAUAFABQAUAFABQAUAFABQBx/xc/5J5qv/AGy/9HJXpZd/vUPn+TOXFfwn/XU7CvNOoKAC | |
| 132 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 133 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 134 | ACgAoAKACgAoAKACgAoA4/4uf8k81X/tl/6OSvSy7/eofP8AJnLiv4T/AK6nYV5p1BQAUAFABQAU | |
| 135 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQA | |
| 136 | UAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQ | |
| 137 | AUAFABQAUAFAHH/Fz/knmq/9sv8A0clell3+9Q+f5M5cV/Cf9dTsK806goAKACgAoAKACgAoAKAC | |
| 138 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 139 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 140 | ACgDj/i5/wAk81X/ALZf+jkr0su/3qHz/JnLiv4T/rqdhXmnUFABQAUAFABQAUAFABQAUAFABQAU | |
| 141 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQA | |
| 142 | UAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAcf8A | |
| 143 | Fz/knmq/9sv/AEclell3+9Q+f5M5cV/Cf9dTsK806goAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 144 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 145 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDj/i5/yTzVf+ | |
| 146 | 2X/o5K9LLv8AeofP8mcuK/hP+up2FeadQUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 147 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQA | |
| 148 | UAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBx/xc/wCSear/ANsv/RyV | |
| 149 | 6WXf71D5/kzlxX8J/wBdTsK806goAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 150 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 151 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDj/AIuf8k81X/tl/wCjkr0su/3q | |
| 152 | Hz/JnLiv4T/rqdhXmnUFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 153 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 154 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAcf8XP+Sear/wBsv/RyV6WXf71D5/kzlxX8 | |
| 155 | J/11OwrzTqCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 156 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 157 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKAOP+Ln/JPNV/7Zf+jkr0su/3qHz/ACZy4r+E/wCup2Fe | |
| 158 | adQUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 159 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 160 | FABQAUAFABQAUAFABQAUAFABQBx/xc/5J5qv/bL/ANHJXpZd/vUPn+TOXFfwn/XU7CvNOoKACgAo | |
| 161 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 162 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 163 | AoAKACgAoAKACgAoA4/4uf8AJPNV/wC2X/o5K9LLv96h8/yZy4r+E/66nYV5p1BQAUAFABQAUAFA | |
| 164 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 165 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 166 | FABQAUAFAHH/ABc/5J5qv/bL/wBHJXpZd/vUPn+TOXFfwn/XU7CvNOoKACgAoAKACgAoAKACgAoA | |
| 167 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 168 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 169 | oA4/4uf8k81X/tl/6OSvSy7/AHqHz/JnLiv4T/rqdhXmnUFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 170 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 171 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAcf8XP8A | |
| 172 | knmq/wDbL/0clell3+9Q+f5M5cV/Cf8AXU7CvNOoKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 173 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 174 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA4/wCLn/JPNV/7 | |
| 175 | Zf8Ao5K9LLv96h8/yZy4r+E/66nYV5p1BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQ | |
| 176 | AUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 177 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHH/Fz/knmq/8AbL/0clel | |
| 178 | l3+9Q+f5M5cV/Cf9dTsK806goAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 179 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 180 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDj/i5/yTzVf+2X/o5K9LLv96h8/wAm | |
| 181 | cuK/hP8ArqdhXmnUFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQ | |
| 182 | AUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 183 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAcf8XP+Sear/2y/wDRyV6WXf71D5/kzlxX8J/1 | |
| 184 | 1OwrzTqCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 185 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 186 | KACgAoAKACgAoAKACgAoAKACgAoAKAOP+Ln/ACTzVf8Atl/6OSvSy7/eofP8mcuK/hP+up2FeadQ | |
| 187 | UAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQ | |
| 188 | AUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 189 | QAUAFABQAUAFABQAUAFABQBx/wAXP+Sear/2y/8ARyV6WXf71D5/kzlxX8J/11OwrzTqCgAoAKAC | |
| 190 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 191 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 192 | ACgAoAKACgAoAKAOP+Ln/JPNV/7Zf+jkr0su/wB6h8/yZy4r+E/66nYV5p1BQAUAFABQAUAFABQA | |
| 193 | UAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQ | |
| 194 | AUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 195 | QAUAFAHH/Fz/AJJ5qv8A2y/9HJXpZd/vUPn+TOXFfwn/AF1OwrzTqCgAoAKACgAoAKACgAoAKACg | |
| 196 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 197 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 198 | OP8Ai5/yTzVf+2X/AKOSvSy7/eofP8mcuK/hP+up2FeadQUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 199 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 200 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBx/xc/5J | |
| 201 | 5qv/AGy/9HJXpZd/vUPn+TOXFfwn/XU7CvNOoKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 202 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 203 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA4/4uf8k81X/tl/6O | |
| 204 | SvSy7/eofP8AJnLiv4T/AK6nYV5p1BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 205 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 206 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHH/Fz/knmq/9sv8A0clell3+ | |
| 207 | 9Q+f5M5cV/Cf9dTsK806goAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 208 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 209 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDj/i5/wAk81X/ALZf+jkr0su/3qHz/JnL | |
| 210 | iv4T/rqdhXmnUFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 211 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 212 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAcf8AFz/knmq/9sv/AEclell3+9Q+f5M5cV/Cf9dT | |
| 213 | sK806goAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 214 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 215 | AoAKACgAoAKACgAoAKACgAoAKACgDj/i5/yTzVf+2X/o5K9LLv8AeofP8mcuK/hP+up2FeadQUAF | |
| 216 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 217 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 218 | AFABQAUAFABQAUAFABQBx/xc/wCSear/ANsv/RyV6WXf71D5/kzlxX8J/wBdTsK806goAKACgAoA | |
| 219 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 220 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 221 | oAKACgAoAKACgDj/AIuf8k81X/tl/wCjkr0su/3qHz/JnLiv4T/rqdhXmnUFABQAUAFABQAUAFAB | |
| 222 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 223 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 224 | ABQAUAcf8XP+Sear/wBsv/RyV6WXf71D5/kzlxX8J/11OwrzTqCgAoAKACgAoAKACgAoAKACgAoA | |
| 225 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 226 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAOP+ | |
| 227 | Ln/JPNV/7Zf+jkr0su/3qHz/ACZy4r+E/wCup2FeadQUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 228 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 229 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBx/xc/5J5qv | |
| 230 | /bL/ANHJXpZd/vUPn+TOXFfwn/XU7CvNOoKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 231 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 232 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA4/4uc/D3Vf+2X/o1K9L | |
| 233 | Lv8AeofP8mcuJ/hP+up2FeadQUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 234 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 235 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQByHxZ5+H+q/8AbL/0alejl3+9Q+f5 | |
| 236 | M5sT/Cf9dTr6846QoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 237 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 238 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDkvitz4B1T/tl/6NSvRy//AHmPz/JnNif4T/rq | |
| 239 | dbXnHSFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 240 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 241 | AFABQAUAFABQAUAFABQAUAFABQAUAcn8VBnwFqn/AGy/9GpXoZf/ALzH5/kzmxH8J/11OsrzzpCg | |
| 242 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 243 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 244 | CgAoAKACgAoAKACgAoAKAOU+KXPgTU/+2X/o1K9DAf7zH5/kzmxH8J/11OrrzzpCgAoAKACgAoAK | |
| 245 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 246 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 247 | AKACgAoAKAOV+J4z4G1L/tl/6NSu/Af7xH5/kznxH8JnVVwHQFABQAUAFABQAUAFABQAUAFABQAU | |
| 248 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQA | |
| 249 | UAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAcv8A | |
| 250 | E0Z8Eal/2y/9GpXfgP8AeI/P8mc+I/hs6iuA6AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 251 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 252 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDmPiUM+CdR/7Z/8A | |
| 253 | oxa7sD/vEfn+TOfEfw2dPXCdAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 254 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 255 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBzPxIGfBeo/8AbP8A9GLXdgv94j8/ | |
| 256 | yZhX/hs6auE3CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 257 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 258 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAOa+Ioz4N1D/tn/wCjFrtwX8ePz/JmFf8Ahs6WuI3C | |
| 259 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 260 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 261 | ACgAoAKACgAoAKACgAoAKAOc+IYz4P1D/tn/AOjFrtwX8ePz/JmFf+Gzo64jcKACgAoAKACgAoAK | |
| 262 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 263 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 264 | AKACgAoA534gDPhG/wD+2f8A6MWu3B/x4/P8jCv/AA2dFXEbhQAUAFABQAUAFABQAUAFABQAUAFA | |
| 265 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 266 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAHPePh | |
| 267 | nwlff9s//Ri12YP+PH5/kYVv4bOhrjNwoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 268 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 269 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDA8djPhS+/4B/6MWuvCfxo | |
| 270 | /P8AIxrfAzfrkNgoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 271 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 272 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDB8cjPha9/4B/6GtdeE/jR+f5GNb4Gb1chsFABQ | |
| 273 | AUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 274 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 275 | BQAUAFABQAUAFABQAUAYXjcZ8MXv/AP/AENa68L/ABo/10Ma3wM3a5DYKACgAoAKACgAoAKACgAo | |
| 276 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 277 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 278 | AoAw/Ggz4ZvP+Af+hrXVhf4y/roZVfgZuVymoUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 279 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 280 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQBi+MRnw5d/wDAP/Q1 | |
| 281 | rpw38Vf10MqvwM2q5jUKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 282 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 283 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAxvF/8AyLt3/wAA/wDQ1rpw38Vf10MqvwM2 | |
| 284 | a5jUKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 285 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 286 | ACgAoAKACgAoAKACgAoAKACgAoAyPFgz4fuv+Af+hiunD/xV/XQyq/AzXrmNQoAKACgAoAKACgAo | |
| 287 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 288 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 289 | AoAKACgDJ8Vc6Ddf8B/9DFdGH/iIzqfCzWrnNAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 290 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 291 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDK8TjOh3P/Af/QhX | |
| 292 | Rh/4iM6nws1a5zQKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 293 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 294 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAy/Eozolz/wH/0IVvQ/iIzqfCzUrA0CgAoAKACg | |
| 295 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 296 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 297 | CgAoAKACgAoAKAM3xEM6Pcf8B/8AQhW9H+IiJ/CaVYFhQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 298 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 299 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAGd4g50if8A | |
| 300 | 4D/6EK2o/GiJ/CaNYlhQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQ | |
| 301 | AUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAB | |
| 302 | QAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAGfrozpU/wDwH/0IVtR+NET+E0KxLCgAoAKA | |
| 303 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 304 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 305 | KACgAoAKACgAoAKAKOtjOmTf8B/9CFa0vjRE/hL1ZFhQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 306 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 307 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAFLWBnTpfw/m | |
| 308 | K1pfGiJ7F2siwoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 309 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 310 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgCnqwzp8v4fzFaU/iRMti5WZQUAFABQAUAFABQAUAF | |
| 311 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 312 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 313 | AFABQBV1MZsZPw/mK0p/EiZbFqsygoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 314 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 315 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgCtqIzZyfh/MVcPiJlsWagoKAC | |
| 316 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 317 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 318 | ACgAoAKACgAoAKACgAoAr3wzav8Ah/Orh8RMtixUFBQAUAFABQAUAFABQAUAFABQAUAFABQAUAFA | |
| 319 | BQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 320 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAEF4M27/h/Oqj | |
| 321 | uJ7E9SMKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 322 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 323 | oAKACgAoAKACgAoAKACgAoAKACgAoAiuRmBvw/nVR3EyWpGFABQAUAFABQAUAFABQAUAFABQAUAF | |
| 324 | ABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUA | |
| 325 | FABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUARz8xGm | |
| 326 | txMkpDCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 327 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAK | |
| 328 | ACgAoAKACgAoAKACgAoAKACgAoAKAGScoaaEx9IYUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAU | |
| 329 | AFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQA | |
| 330 | UAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAjcigBaACgAoAK | |
| 331 | ACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA | |
| 332 | KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAo | |
| 333 | AKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA | |
| 334 | oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACg | |
| 335 | AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC | |
| 336 | gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKA | |
| 337 | CgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgD//2Q==</one:Data></one:Image><one:Outline author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{10}{B0}"><one:Position x="36.0" y="77.4000015258789" z="1"/><one:Size width="141.75" height="26.85543441772461" isSetByUser="true"/><one:Indents><one:Indent level="2" indent="21.60000038146973"/><one:Indent level="3" indent="36.0"/></one:Indents><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{5}{B0}" alignment="left" quickStyleIndex="1"><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 338 | style='font-weight:bold'>Agenda</span>]]></one:T><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{8}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Number numberSequence="0" numberFormat="##." fontSize="11.0" font="Calibri" text="1."/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE></one:OEChildren></one:Outline><one:Outline author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{15}{B0}"><one:Position x="234.0" y="77.4000015258789" z="2"/><one:Size width="137.25" height="26.85543441772461" isSetByUser="true"/><one:Indents><one:Indent level="2" indent="18.0"/><one:Indent level="3" indent="36.0"/></one:Indents><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{11}{B0}" alignment="left" quickStyleIndex="1"><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 339 | style='font-weight:bold'>Action Items</span>]]></one:T><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{13}{B0}" alignment="left" quickStyleIndex="1"><one:Tag index="0" completed="false" disabled="false" creationDate="2026-09-27T15:05:19.000Z"/><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE></one:OEChildren></one:Outline><one:Outline author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{21}{B0}"><one:Position x="423.0" y="77.4000015258789" z="3"/><one:Size width="136.5000152587891" height="26.85543441772461" isSetByUser="true"/><one:Indents><one:Indent level="2" indent="21.60000038146973"/><one:Indent level="3" indent="36.0"/></one:Indents><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{16}{B0}" alignment="left" quickStyleIndex="1"><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 340 | style='font-weight:bold'>Important Dates</span>]]></one:T><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{19}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE></one:OEChildren></one:Outline><one:Outline author="Rust Author" authorInitials="RA" lastModifiedBy="Rust Author" lastModifiedByInitials="RA" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{64}{B0}"><one:Position x="36.0" y="221.3999786376953" z="4"/><one:Size width="529.5" height="214.8434753417969" isSetByUser="true"/><one:Indents><one:Indent level="2" indent="36.0"/><one:Indent level="3" indent="36.0"/></one:Indents><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{22}{B0}" alignment="left" quickStyleIndex="1"><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 341 | style='font-weight:bold'>Meeting Details</span>]]></one:T><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{25}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Date and Time:]]></one:T></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{28}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Location:]]></one:T></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{31}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Attendees:]]></one:T></one:OE></one:OEChildren></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{33}{B0}" alignment="left" quickStyleIndex="1"><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 342 | style='font-weight:bold'>Announcements</span>]]></one:T><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{36}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{38}{B0}" alignment="left" quickStyleIndex="1"><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 343 | style='font-weight:bold'>Discussion</span>]]></one:T><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{41}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{43}{B0}" alignment="left" quickStyleIndex="1"><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 344 | style='font-weight:bold'>Summary</span>]]></one:T><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{46}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[]]></one:T></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{48}{B0}" alignment="left" quickStyleIndex="1"><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{50}{B0}" alignment="left" quickStyleIndex="1"><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 345 | style='font-weight:bold'>Next Meeting</span>]]></one:T><one:OEChildren><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{53}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Date and Time:]]></one:T></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{56}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Location:]]></one:T></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{59}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Agenda:]]></one:T></one:OE><one:OE creationTime="2026-09-27T15:05:19.000Z" lastModifiedTime="2026-09-27T15:05:19.000Z" objectID="{8718E711-00F2-0E79-2027-EC9413478A5F}{62}{B0}" alignment="left" quickStyleIndex="1"><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Notes:]]></one:T></one:OE></one:OEChildren></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/notebook-management/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/notebook-management/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/tmp/mgmt4/candidate", | |
| 3 | "expected_pages": -1, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/notebook-management/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/notebook-management/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/notebook-management/cold/source.json created+56| ... | ... | @@ -0,0 +1,56 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Archive/Inner.one", | |
| 4 | "bytes": 6816, | |
| 5 | "sha256": "4947149bfe3af5bdf0224e01a0ce95a9849ffad5cbe7d5af4771c6c644850cde", | |
| 6 | "mtime_ns": 1790521518477003662 | |
| 7 | }, | |
| 8 | { | |
| 9 | "path": "Archive/Kitchen.one", | |
| 10 | "bytes": 9992, | |
| 11 | "sha256": "ea8fea880e9f42ff4999c6d7fd1a90c0977ab2efd0501aa1e4bcee85c6279f55", | |
| 12 | "mtime_ns": 1790521519374324319 | |
| 13 | }, | |
| 14 | { | |
| 15 | "path": "Archive/Open Notebook.onetoc2", | |
| 16 | "bytes": 4200, | |
| 17 | "sha256": "5a0c4e1078e51e3fdea8660b1ecb73f76048e556d5ae21691428fd798801e5d8", | |
| 18 | "mtime_ns": 1790521519426971739 | |
| 19 | }, | |
| 20 | { | |
| 21 | "path": "New Section 1.one", | |
| 22 | "bytes": 85232, | |
| 23 | "sha256": "9e903193b2ae555d1aaeeef01b21e749204a0f6a5f9560b18e835f8bc1655097", | |
| 24 | "mtime_ns": 1790521519332264376 | |
| 25 | }, | |
| 26 | { | |
| 27 | "path": "OneNote_RecycleBin/Binned.one", | |
| 28 | "bytes": 6816, | |
| 29 | "sha256": "d2cb20d7cb2238b5525ce6c5b378323eacc265688b6d78cb32a6bdc7f8db9570", | |
| 30 | "mtime_ns": 1790521519520939028 | |
| 31 | }, | |
| 32 | { | |
| 33 | "path": "OneNote_RecycleBin/Gone.one", | |
| 34 | "bytes": 6816, | |
| 35 | "sha256": "976f0b7e524ac877d3ced0f803f50a812b5747a9edf8bccc387276f9ccbc16c0", | |
| 36 | "mtime_ns": 1790521519461432928 | |
| 37 | }, | |
| 38 | { | |
| 39 | "path": "OneNote_RecycleBin/OneNote_DeletedPages.one", | |
| 40 | "bytes": 6888, | |
| 41 | "sha256": "b005c3a26c475d717d87ec66d72eccdfa1d35c72000966fd132728bd086bb860", | |
| 42 | "mtime_ns": 1790521519201361387 | |
| 43 | }, | |
| 44 | { | |
| 45 | "path": "OneNote_RecycleBin/Open Notebook.onetoc2", | |
| 46 | "bytes": 4592, | |
| 47 | "sha256": "a4784bb35ecae53b6f6ad576c3c0687078e72ace4fba47d004d6498aadfae8b2", | |
| 48 | "mtime_ns": 1790521519539400089 | |
| 49 | }, | |
| 50 | { | |
| 51 | "path": "Open Notebook.onetoc2", | |
| 52 | "bytes": 9392, | |
| 53 | "sha256": "cbeebc6c391f65d834f819f9ed90077f36ddbcf7f7e41ff72614200a659b2fef", | |
| 54 | "mtime_ns": 1790521519587646429 | |
| 55 | } | |
| 56 | ] |
corpus/notebook-management/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/notebook-management/native/meeting-template/meeting.xml created+12| ... | ... | @@ -0,0 +1,12 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B3F1B4E6-2C23-43DC-8E9D-B0CF692E3F40}{1}{B0}" name="Meeting Title" dateTime="2026-09-27T11:38:36.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" pageLevel="1" stationeryName="Informal Meeting Notes" isCurrentlyViewed="true" lang="en-US"><one:TagDef index="0" type="0" symbol="3" fontColor="automatic" highlightColor="none" name="To Do"/><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:Meta name="PageLocID" content="0004"/><one:Meta name="LocVer" content="1"/><one:Meta name="PageVerComment" content=""/><one:Meta name="PageOveride" content="0"/><one:Meta name="PageName" content="Meeting Title"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="Microsoft" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{84}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:Meta name="oeLocID" content="0001"/><one:Meta name="oeLocComment" content=""/><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold'>Meeting Title</span>]]></one:T></one:OE></one:Title><one:Image format="jpg" backgroundImage="true" originalPageNumber="0" lastModifiedTime="2009-07-28T18:49:05.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{14}{B0}"><one:Position x="-18.0" y="-39.60000228881836" z="0"/><one:Size width="610.261474609375" height="789.75" isSetByUser="true"/><one:CallbackID callbackID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{14}{B0}"/><one:OCRData lang="en-US"><one:OCRText><![CDATA[•1]]></one:OCRText><one:OCRToken startPos="0" region="0" line="0" x="22.5" y="7.5" width="20.25" height="18.75000190734863"/></one:OCRData></one:Image><one:Outline author="Microsoft" authorInitials="Unknown" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{64}{B0}"><one:Position x="36.0" y="77.4000015258789" z="2"/><one:Size width="141.7499694824219" height="29.85543251037598" isSetByUser="true"/><one:Meta name="outlineLocID" content="0001"/><one:Meta name="outlineLocComment" content=""/><one:Indents><one:Indent level="2" indent="21.60000038146973"/><one:Indent level="3" indent="36.0"/></one:Indents><one:OEChildren><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{65}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="0003"/><one:Meta name="oeLocComment" content=""/><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 4 | style='font-weight:bold'>Agenda</span>]]></one:T><one:OEChildren><one:ChildOELayout spaceBefore="3.0" spaceBetween="1.0"/><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{66}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="0002"/><one:Meta name="oeLocComment" content=""/><one:List><one:Number numberSequence="0" numberFormat="##." fontSize="11.0" font="Calibri" text="1."/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE></one:OEChildren></one:Outline><one:Outline author="Microsoft" authorInitials="Unknown" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{70}{B0}"><one:Position x="234.0" y="77.4000015258789" z="3"/><one:Size width="137.2499237060547" height="29.85543251037598" isSetByUser="true"/><one:Meta name="outlineLocID" content="0002"/><one:Meta name="outlineLocComment" content=""/><one:Indents><one:Indent level="2" indent="18.0"/><one:Indent level="3" indent="36.0"/></one:Indents><one:OEChildren><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{71}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="0005"/><one:Meta name="oeLocComment" content=""/><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 5 | style='font-weight:bold'>Action Items</span>]]></one:T><one:OEChildren><one:ChildOELayout spaceBefore="3.0" spaceBetween="1.0"/><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{72}{B0}" alignment="left" quickStyleIndex="0"><one:Tag index="0" completed="false" disabled="false" creationDate="2026-09-27T11:38:36.000Z"/><one:Meta name="oeLocID" content="0004"/><one:Meta name="oeLocComment" content=""/><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE></one:OEChildren></one:Outline><one:Outline author="Microsoft" authorInitials="Unknown" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{76}{B0}"><one:Position x="423.0" y="77.4000015258789" z="4"/><one:Size width="136.4998779296875" height="29.85543251037598" isSetByUser="true"/><one:Meta name="outlineLocID" content="0003"/><one:Meta name="outlineLocComment" content=""/><one:Indents><one:Indent level="2" indent="21.60000038146973"/><one:Indent level="3" indent="36.0"/></one:Indents><one:OEChildren><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{77}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="0007"/><one:Meta name="oeLocComment" content=""/><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 6 | style='font-weight:bold'>Important Dates</span>]]></one:T><one:OEChildren><one:ChildOELayout spaceBefore="3.0" spaceBetween="1.0"/><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{78}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="0006"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE></one:OEChildren></one:Outline><one:Outline author="Microsoft" authorInitials="Unknown" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{16}{B0}"><one:Position x="36.0" y="221.4000091552734" z="1"/><one:Size width="529.4998779296874" height="307.843505859375" isSetByUser="true"/><one:Meta name="outlineLocID" content="0004"/><one:Meta name="outlineLocComment" content=""/><one:Indents><one:Indent level="2" indent="36.0"/><one:Indent level="3" indent="36.0"/></one:Indents><one:OEChildren><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{17}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00011"/><one:Meta name="oeLocComment" content=""/><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 7 | style='font-weight:bold'>Meeting Details</span>]]></one:T><one:OEChildren><one:ChildOELayout spaceBefore="6.0" spaceBetween="3.0" spaceAfter="12.0"/><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{20}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="0008"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Date and Time:]]></one:T></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{25}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="0009"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Location:]]></one:T></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{28}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00010"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Attendees:]]></one:T></one:OE></one:OEChildren></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{33}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00013"/><one:Meta name="oeLocComment" content=""/><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 8 | style='font-weight:bold'>Announcements</span>]]></one:T><one:OEChildren><one:ChildOELayout spaceBefore="6.0" spaceAfter="18.0"/><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{34}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00012"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{38}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00015"/><one:Meta name="oeLocComment" content=""/><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 9 | style='font-weight:bold'>Discussion</span>]]></one:T><one:OEChildren><one:ChildOELayout spaceBefore="6.0" spaceAfter="18.0"/><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{39}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00014"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{43}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00017"/><one:Meta name="oeLocComment" content=""/><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 10 | style='font-weight:bold'>Summary</span>]]></one:T><one:OEChildren><one:ChildOELayout spaceBefore="6.0"/><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{44}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00016"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[]]></one:T></one:OE></one:OEChildren></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{48}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00018"/><one:Meta name="oeLocComment" content=""/><one:T><![CDATA[]]></one:T></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{50}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00023"/><one:Meta name="oeLocComment" content=""/><one:T style="font-family:Calibri;font-size:11.0pt"><![CDATA[<span | |
| 11 | style='font-weight:bold'>Next Meeting</span>]]></one:T><one:OEChildren><one:ChildOELayout spaceBefore="6.0" spaceBetween="3.0"/><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{51}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00019"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Date and Time:]]></one:T></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{54}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00020"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Location:]]></one:T></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{57}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00021"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Agenda:]]></one:T></one:OE><one:OE creationTime="2009-07-28T18:49:05.000Z" lastModifiedTime="2026-09-27T11:38:36.000Z" objectID="{1AA5A360-310F-487B-A4A9-2B43E7FB5CBB}{60}{B0}" alignment="left" quickStyleIndex="0"><one:Meta name="oeLocID" content="00022"/><one:Meta name="oeLocComment" content=""/><one:List><one:Bullet bullet="15" fontSize="11.0"/></one:List><one:T><![CDATA[Notes:]]></one:T></one:OE></one:OEChildren></one:OE></one:OEChildren></one:Outline></one:Page> | |
| 12 |
corpus/notebook-management/native/new-notebook/created/New Section 1.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/created/New Section 1.one differ |
corpus/notebook-management/native/new-notebook/created/New Section 2.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/created/New Section 2.one differ |
corpus/notebook-management/native/new-notebook/created/New Section 3.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/created/New Section 3.one differ |
corpus/notebook-management/native/new-notebook/created/New Section Group/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/created/New Section Group/Open Notebook.onetoc2 differ |
corpus/notebook-management/native/new-notebook/created/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/created/Open Notebook.onetoc2 differ |
corpus/notebook-management/native/new-notebook/final/New Section 1.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/final/New Section 1.one differ |
corpus/notebook-management/native/new-notebook/final/New Section 2.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/final/New Section 2.one differ |
corpus/notebook-management/native/new-notebook/final/OneNote_RecycleBin/New Section 3.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/final/OneNote_RecycleBin/New Section 3.one differ |
corpus/notebook-management/native/new-notebook/final/OneNote_RecycleBin/OneNote_DeletedPages.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/final/OneNote_RecycleBin/OneNote_DeletedPages.one differ |
corpus/notebook-management/native/new-notebook/final/OneNote_RecycleBin/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/final/OneNote_RecycleBin/Open Notebook.onetoc2 differ |
corpus/notebook-management/native/new-notebook/final/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/final/Open Notebook.onetoc2 differ |
corpus/notebook-management/native/new-notebook/moved/Kept/New Section 3.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/moved/Kept/New Section 3.one differ |
corpus/notebook-management/native/new-notebook/moved/Kept/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/moved/Kept/Open Notebook.onetoc2 differ |
corpus/notebook-management/native/new-notebook/moved/New Section 1.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/moved/New Section 1.one differ |
corpus/notebook-management/native/new-notebook/moved/New Section 2.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/moved/New Section 2.one differ |
corpus/notebook-management/native/new-notebook/moved/OneNote_RecycleBin/OneNote_DeletedPages.one created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/moved/OneNote_RecycleBin/OneNote_DeletedPages.one differ |
corpus/notebook-management/native/new-notebook/moved/OneNote_RecycleBin/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/moved/OneNote_RecycleBin/Open Notebook.onetoc2 differ |
corpus/notebook-management/native/new-notebook/moved/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/native/new-notebook/moved/Open Notebook.onetoc2 differ |
corpus/notebook-management/native/page-color/Garden.one created| Binary files /dev/null and b/corpus/notebook-management/native/page-color/Garden.one differ |
corpus/notebook-management/native/page-color/colors.txt created+16| ... | ... | @@ -0,0 +1,16 @@ |
| 1 | #EDF5FE | |
| 2 | #FFEEEF | |
| 3 | #FDFDDD | |
| 4 | #ECF9E5 | |
| 5 | #E5EDF3 | |
| 6 | #FBEDF6 | |
| 7 | #FFFADF | |
| 8 | #ECF0E5 | |
| 9 | #E9E9ED | |
| 10 | #F3E9FF | |
| 11 | #F9F4E7 | |
| 12 | #E5EFEB | |
| 13 | #E8E3EB | |
| 14 | #EFDEDE | |
| 15 | #FBF2E1 | |
| 16 | #D4F9F2 |
corpus/notebook-management/native/section-colors/New Section 1.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 1.one differ |
corpus/notebook-management/native/section-colors/New Section 10.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 10.one differ |
corpus/notebook-management/native/section-colors/New Section 11.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 11.one differ |
corpus/notebook-management/native/section-colors/New Section 12.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 12.one differ |
corpus/notebook-management/native/section-colors/New Section 13.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 13.one differ |
corpus/notebook-management/native/section-colors/New Section 14.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 14.one differ |
corpus/notebook-management/native/section-colors/New Section 15.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 15.one differ |
corpus/notebook-management/native/section-colors/New Section 16.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 16.one differ |
corpus/notebook-management/native/section-colors/New Section 2.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 2.one differ |
corpus/notebook-management/native/section-colors/New Section 3.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 3.one differ |
corpus/notebook-management/native/section-colors/New Section 4.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 4.one differ |
corpus/notebook-management/native/section-colors/New Section 5.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 5.one differ |
corpus/notebook-management/native/section-colors/New Section 6.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 6.one differ |
corpus/notebook-management/native/section-colors/New Section 7.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 7.one differ |
corpus/notebook-management/native/section-colors/New Section 8.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 8.one differ |
corpus/notebook-management/native/section-colors/New Section 9.one created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/New Section 9.one differ |
corpus/notebook-management/native/section-colors/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/notebook-management/native/section-colors/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/README.md created+22| ... | ... | @@ -0,0 +1,22 @@ |
| 1 | # Offline page batches merged as page series | |
| 2 | ||
| 3 | `../offline-edits` regenerated since page lists merge as OneNote merges page series | |
| 4 | (`../../conflict-page/native-pages`): a page the remote moved keeps the remote's place. | |
| 5 | In every native movement state OneNote gave the pages the offline batch places series of | |
| 6 | their own, so all eighteen keep OneNote's placement and publish the body edit alone. | |
| 7 | `twelve-clients` moves disjoint pages, each into a series of its own; each client's | |
| 8 | batch publishes whole, twelve publications, all merged. | |
| 9 | ||
| 10 | Every candidate reopened in a fresh OneNote 2010 clone without changes beyond the header, | |
| 11 | except two native repairs of inputs OneNote wrote: `indent-02-promoted-parent` refreshes the | |
| 12 | stale section metadata level that `../movement/02-promoted-parent` left (MS-ONE 2.2.81, | |
| 13 | note 9), and `twelve-clients` fills the seed page's absent optional metadata copy. The | |
| 14 | verifier accounts for both. `provenance.json` records the captures (`evidence/series`) and | |
| 15 | removed clones. | |
| 16 | ||
| 17 | ```sh | |
| 18 | ONESTORE_OFFLINE_PAGE_EDIT_OUTPUT=/tmp/one-page-edits cargo test -p notebook --all-features --test sync_pages native_page_changes_reconcile_with_atomic_offline_batches -- --exact | |
| 19 | python tools/offline_page_edits.py /tmp/one-page-edits /tmp/one-page-edits-cold --workers 4 | |
| 20 | ONESTORE_OFFLINE_PAGE_CLIENT_OUTPUT=/tmp/one-page-clients cargo test -p notebook --all-features --test sync_pages twelve_disjoint_page_batches_merge_with_dependent_bodies_without_review -- --exact | |
| 21 | python tools/native_runner.py /tmp/one-page-clients /tmp/one-page-clients-cold --expected-pages 37 --collect-notebook | |
| 22 | ``` |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 201, | |
| 9 | 10, | |
| 10 | 106, | |
| 11 | 102, | |
| 12 | 142, | |
| 13 | 247, | |
| 14 | 18, | |
| 15 | 79, | |
| 16 | 177, | |
| 17 | 108, | |
| 18 | 120, | |
| 19 | 98, | |
| 20 | 206, | |
| 21 | 193, | |
| 22 | 214, | |
| 23 | 20 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 115, | |
| 34 | 33, | |
| 35 | 106, | |
| 36 | 78, | |
| 37 | 121, | |
| 38 | 140, | |
| 39 | 215, | |
| 40 | 65, | |
| 41 | 186, | |
| 42 | 48, | |
| 43 | 82, | |
| 44 | 176, | |
| 45 | 47, | |
| 46 | 20, | |
| 47 | 4, | |
| 48 | 78 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 73, | |
| 59 | 55, | |
| 60 | 27, | |
| 61 | 125, | |
| 62 | 117, | |
| 63 | 195, | |
| 64 | 180, | |
| 65 | 79, | |
| 66 | 166, | |
| 67 | 201, | |
| 68 | 36, | |
| 69 | 230, | |
| 70 | 140, | |
| 71 | 154, | |
| 72 | 66, | |
| 73 | 37 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [220, 211, 38, 107, 179, 97, 114, 74, 158, 104, 66, 109, 244, 125, 212, 30], n: 1 } })", | |
| 83 | "phase": "01-demoted-parent", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [220, 211, 38, 107, 179, 97, 114, 74, 158, 104, 66, 109, 244, 125, 212, 30], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-228507E9 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-228507e9", "hostname": "ONE-M6-228507E9"} |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-228507E9", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{A7EB0984-5495-4A35-86EB-1C9F916514C7}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:18:10.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{671C7076-1AEF-0256-2B09-4309826BBCBC}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:18:10.000Z" color="#91BAAE"><one:Page ID="{87262983-556F-0A51-3E14-D3D15B219E2C}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"/><one:Page ID="{CD4B5070-C5C4-03C3-2A57-D3F0B6B15502}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"/><one:Page ID="{ED449143-CC1C-04E1-3ACA-15044D037D67}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"/><one:Page ID="{F988D83A-CAD9-41B7-87C9-5DB8F55742BF}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:09.000Z" pageLevel="2"/><one:Page ID="{A404F3A9-4C9F-4BB1-B924-656CB17DD64E}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="2"/><one:Page ID="{F9D8316A-D655-45EE-A502-BDC09BCF8A98}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="3"/><one:Page ID="{2A1BC347-05D9-46E3-99A5-11FA4CB867D4}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"/><one:Page ID="{41FE39E7-3325-4CD2-A605-13A1DB81F3CE}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"/><one:Page ID="{3AB75D04-662C-4BB0-8DBF-7BA0DF48DEFF}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{2A1BC347-05D9-46E3-99A5-11FA4CB867D4}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{07E322F3-E362-4193-8FDB-F1B89AEEE2AB}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4C940959-8B5F-4D09-8A9B-6ED8398E5395}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4C940959-8B5F-4D09-8A9B-6ED8398E5395}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3AB75D04-662C-4BB0-8DBF-7BA0DF48DEFF}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{8DC9274C-CE86-4451-8F7D-A09EFC167DEC}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{8DC9274C-CE86-4451-8F7D-A09EFC167DEC}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{41FE39E7-3325-4CD2-A605-13A1DB81F3CE}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{0470286A-3E68-4960-B3D4-AFA1979DE37E}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{D0CF199A-1CB5-46E2-9450-7145FD061982}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{D0CF199A-1CB5-46E2-9450-7145FD061982}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{87262983-556F-0A51-3E14-D3D15B219E2C}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{49535898-69DA-0236-1593-88E1C15212D3}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{A404F3A9-4C9F-4BB1-B924-656CB17DD64E}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{2E5086DA-AEB2-4F19-9163-7A3E0AC60FEA}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2E5086DA-AEB2-4F19-9163-7A3E0AC60FEA}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{2E5086DA-AEB2-4F19-9163-7A3E0AC60FEA}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{CD4B5070-C5C4-03C3-2A57-D3F0B6B15502}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{E2AF95AB-6A91-0FDA-013D-AB4E9AD78B80}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{ED449143-CC1C-04E1-3ACA-15044D037D67}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F988D83A-CAD9-41B7-87C9-5DB8F55742BF}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:09.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{FB934140-9E7F-4B22-B5F6-97B7DBAC5C02}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{FB934140-9E7F-4B22-B5F6-97B7DBAC5C02}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{FB934140-9E7F-4B22-B5F6-97B7DBAC5C02}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F9D8316A-D655-45EE-A502-BDC09BCF8A98}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{690D1AD9-D76F-4641-9907-0D48B247E9D9}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{690D1AD9-D76F-4641-9907-0D48B247E9D9}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{690D1AD9-D76F-4641-9907-0D48B247E9D9}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpxbgzk4zk", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 58888, | |
| 5 | "sha256": "9a3b4662022dc604139192a1ce6e89e0a86fb2f4f28d612d0b21fc39cbb0321b", | |
| 6 | "mtime_ns": 1790522182582306261 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-01-demoted-parent/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 1, | |
| 9 | 158, | |
| 10 | 214, | |
| 11 | 127, | |
| 12 | 88, | |
| 13 | 144, | |
| 14 | 125, | |
| 15 | 70, | |
| 16 | 142, | |
| 17 | 160, | |
| 18 | 108, | |
| 19 | 163, | |
| 20 | 26, | |
| 21 | 254, | |
| 22 | 139, | |
| 23 | 224 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 246, | |
| 34 | 145, | |
| 35 | 67, | |
| 36 | 226, | |
| 37 | 173, | |
| 38 | 106, | |
| 39 | 84, | |
| 40 | 66, | |
| 41 | 166, | |
| 42 | 80, | |
| 43 | 187, | |
| 44 | 112, | |
| 45 | 214, | |
| 46 | 75, | |
| 47 | 197, | |
| 48 | 145 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 208, | |
| 59 | 245, | |
| 60 | 172, | |
| 61 | 222, | |
| 62 | 94, | |
| 63 | 188, | |
| 64 | 190, | |
| 65 | 76, | |
| 66 | 137, | |
| 67 | 17, | |
| 68 | 74, | |
| 69 | 122, | |
| 70 | 80, | |
| 71 | 23, | |
| 72 | 13, | |
| 73 | 147 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [73, 133, 222, 97, 87, 220, 209, 73, 167, 94, 12, 96, 167, 99, 69, 216], n: 1 } })", | |
| 83 | "phase": "02-promoted-parent", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [73, 133, 222, 97, 87, 220, 209, 73, 167, 94, 12, 96, 167, 99, 69, 216], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-59E6B833 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-59e6b833", "hostname": "ONE-M6-59E6B833"} |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-59E6B833", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{0634C1FF-1F87-4D65-969C-C7695BCC62A7}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:18:07.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{9F3CE129-D1DE-02D1-224F-9EA0F59AD81E}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:18:07.000Z" color="#91BAAE"><one:Page ID="{7F06B8DC-9E5E-0AD6-3752-0E782CD0FA8E}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"/><one:Page ID="{356BC12F-0EF5-0344-2311-0E59C14031A0}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"/><one:Page ID="{1564001C-072D-0466-338C-C8AD3AF219C5}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"/><one:Page ID="{01A84965-01E8-4130-8E8F-801182A6261D}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{5C2462F6-87AE-4B36-B062-B8C5C68CB2EC}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="2"/><one:Page ID="{01F8A035-1D64-4569-AC44-6069EC3EEE3A}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="3"/><one:Page ID="{D23B5218-CEE8-4664-90E3-CC533B490376}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"/><one:Page ID="{B9DEA8B8-F814-4C55-AF43-CE08AC70976C}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"/><one:Page ID="{C297CC5B-AD1D-4B37-84F9-A609A8B9BA5D}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{01A84965-01E8-4130-8E8F-801182A6261D}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{03B3D01F-554E-4BA5-BCB0-4A1EAC5D38A0}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{03B3D01F-554E-4BA5-BCB0-4A1EAC5D38A0}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{03B3D01F-554E-4BA5-BCB0-4A1EAC5D38A0}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{01F8A035-1D64-4569-AC44-6069EC3EEE3A}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{912D8B86-1C5E-46C6-9041-D0E1C5B68D7B}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{912D8B86-1C5E-46C6-9041-D0E1C5B68D7B}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{912D8B86-1C5E-46C6-9041-D0E1C5B68D7B}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{1564001C-072D-0466-338C-C8AD3AF219C5}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{356BC12F-0EF5-0344-2311-0E59C14031A0}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{1A8F04F4-A1A0-0F5D-087B-76E7ED26EF22}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5C2462F6-87AE-4B36-B062-B8C5C68CB2EC}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{D6701785-6583-4F9E-9825-A7977D376B48}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{D6701785-6583-4F9E-9825-A7977D376B48}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{D6701785-6583-4F9E-9825-A7977D376B48}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{7F06B8DC-9E5E-0AD6-3752-0E782CD0FA8E}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{B173C9C7-A2EB-02B1-1CD5-5548B6A37671}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B9DEA8B8-F814-4C55-AF43-CE08AC70976C}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{FC50B935-F559-49E7-BA92-7208E06C87DC}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{28EF88C5-D784-4665-9D16-ACEC8AF77D20}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{28EF88C5-D784-4665-9D16-ACEC8AF77D20}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C297CC5B-AD1D-4B37-84F9-A609A8B9BA5D}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{75E9B613-05B7-44D6-863B-7D378BE7194E}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{75E9B613-05B7-44D6-863B-7D378BE7194E}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D23B5218-CEE8-4664-90E3-CC533B490376}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{FFC3B3AC-2853-4114-869D-2C11ED1F8609}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B4B49806-406E-4D8E-83DD-B3714E7F3737}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B4B49806-406E-4D8E-83DD-B3714E7F3737}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp2tw32xod", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 60864, | |
| 5 | "sha256": "dac0d3baff9cba15171a7a49ad5e3fe5ae4f1d9486a282f73eca7bf12a4302cf", | |
| 6 | "mtime_ns": 1790522182571809194 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-02-promoted-parent/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 230, | |
| 9 | 73, | |
| 10 | 229, | |
| 11 | 66, | |
| 12 | 147, | |
| 13 | 157, | |
| 14 | 254, | |
| 15 | 73, | |
| 16 | 141, | |
| 17 | 167, | |
| 18 | 232, | |
| 19 | 94, | |
| 20 | 176, | |
| 21 | 115, | |
| 22 | 2, | |
| 23 | 69 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 161, | |
| 34 | 23, | |
| 35 | 180, | |
| 36 | 51, | |
| 37 | 0, | |
| 38 | 216, | |
| 39 | 36, | |
| 40 | 72, | |
| 41 | 157, | |
| 42 | 74, | |
| 43 | 208, | |
| 44 | 42, | |
| 45 | 195, | |
| 46 | 215, | |
| 47 | 100, | |
| 48 | 23 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 131, | |
| 59 | 50, | |
| 60 | 221, | |
| 61 | 188, | |
| 62 | 200, | |
| 63 | 84, | |
| 64 | 156, | |
| 65 | 73, | |
| 66 | 132, | |
| 67 | 49, | |
| 68 | 39, | |
| 69 | 179, | |
| 70 | 247, | |
| 71 | 214, | |
| 72 | 250, | |
| 73 | 204 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [141, 148, 26, 99, 137, 196, 192, 74, 138, 245, 125, 174, 49, 216, 252, 21], n: 1 } })", | |
| 83 | "phase": "03-selected-group-move", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [141, 148, 26, 99, 137, 196, 192, 74, 138, 245, 125, 174, 49, 216, 252, 21], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-2F0CFD28 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-2f0cfd28", "hostname": "ONE-M6-2F0CFD28"} |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-2F0CFD28", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{ECCB6422-25F2-4FB2-ABBE-39B979B3E21A}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:18:07.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{4ECC2F48-E9CA-0858-2C8F-748D9CFA7611}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:18:07.000Z" color="#91BAAE"><one:Page ID="{AEF676BD-A64A-005F-3992-E45545B05481}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"/><one:Page ID="{E49B0F4E-36E1-09CD-2DD1-E474A8209FAF}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"/><one:Page ID="{C494CE7D-3F39-0EEF-3D4C-22805392B7CA}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"/><one:Page ID="{03CB9C79-F6FC-4CED-9E23-267E5229AD79}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"/><one:Page ID="{682E66D9-C000-46DC-A183-2425C5103963}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"/><one:Page ID="{1367023A-9509-41BE-8A39-4C24C1D91452}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"/><one:Page ID="{D0588704-39FC-4BB9-804F-6A3CEBC68812}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{8DD4AC97-BFBA-41BF-BEA2-52E8AFEC1CE3}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="2"/><one:Page ID="{D0086E54-2570-4FE0-A284-8A44855E4035}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{03CB9C79-F6FC-4CED-9E23-267E5229AD79}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{2E337DCD-1047-4B9D-885D-C63C847F2806}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{65445667-787A-4707-8D1D-595C271F9938}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{65445667-787A-4707-8D1D-595C271F9938}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{1367023A-9509-41BE-8A39-4C24C1D91452}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A4197872-3DA3-4E5F-88FB-971AE287B741}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A4197872-3DA3-4E5F-88FB-971AE287B741}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{682E66D9-C000-46DC-A183-2425C5103963}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{2DA07754-CD4D-436E-B452-9825890C29D3}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{F91F46A4-EF90-4CEC-93D6-46C1E397D32F}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{F91F46A4-EF90-4CEC-93D6-46C1E397D32F}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8DD4AC97-BFBA-41BF-BEA2-52E8AFEC1CE3}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{0780D9E4-5D97-4517-96E5-4DBA1457C547}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0780D9E4-5D97-4517-96E5-4DBA1457C547}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{0780D9E4-5D97-4517-96E5-4DBA1457C547}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{AEF676BD-A64A-005F-3992-E45545B05481}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{608307A6-9AFF-0838-1215-BF65DFC3D87E}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C494CE7D-3F39-0EEF-3D4C-22805392B7CA}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D0086E54-2570-4FE0-A284-8A44855E4035}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:07.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{40DD45E7-244A-4C4F-9E81-3ACCACD62374}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{40DD45E7-244A-4C4F-9E81-3ACCACD62374}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{40DD45E7-244A-4C4F-9E81-3ACCACD62374}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D0588704-39FC-4BB9-804F-6A3CEBC68812}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{D2431E7E-6D5A-412C-B270-A033C53D96AF}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{D2431E7E-6D5A-412C-B270-A033C53D96AF}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{D2431E7E-6D5A-412C-B270-A033C53D96AF}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E49B0F4E-36E1-09CD-2DD1-E474A8209FAF}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:06.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{CB7FCA95-99B4-05D4-06BB-9CCA8446412D}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpqu8gvf97", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 62448, | |
| 5 | "sha256": "e8227277e0b943d76ff7f1317a204bc1c90d83edb14d57c1e4fc4b6025572d5a", | |
| 6 | "mtime_ns": 1790522182601367622 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-03-selected-group-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 78, | |
| 9 | 38, | |
| 10 | 62, | |
| 11 | 248, | |
| 12 | 116, | |
| 13 | 109, | |
| 14 | 88, | |
| 15 | 72, | |
| 16 | 144, | |
| 17 | 98, | |
| 18 | 203, | |
| 19 | 126, | |
| 20 | 141, | |
| 21 | 180, | |
| 22 | 205, | |
| 23 | 201 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 11, | |
| 34 | 136, | |
| 35 | 4, | |
| 36 | 10, | |
| 37 | 224, | |
| 38 | 67, | |
| 39 | 69, | |
| 40 | 67, | |
| 41 | 170, | |
| 42 | 135, | |
| 43 | 131, | |
| 44 | 23, | |
| 45 | 217, | |
| 46 | 9, | |
| 47 | 214, | |
| 48 | 1 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 42, | |
| 59 | 95, | |
| 60 | 98, | |
| 61 | 74, | |
| 62 | 100, | |
| 63 | 10, | |
| 64 | 90, | |
| 65 | 66, | |
| 66 | 190, | |
| 67 | 78, | |
| 68 | 156, | |
| 69 | 145, | |
| 70 | 230, | |
| 71 | 147, | |
| 72 | 236, | |
| 73 | 168 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [124, 112, 85, 50, 117, 173, 10, 69, 136, 197, 175, 234, 251, 205, 20, 89], n: 1 } })", | |
| 83 | "phase": "04-subpage-move", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [124, 112, 85, 50, 117, 173, 10, 69, 136, 197, 175, 234, 251, 205, 20, 89], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-1F7DB150 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-1f7db150", "hostname": "ONE-M6-1F7DB150"} |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-1F7DB150", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{B5AC410F-5B34-4C45-B748-2F4496AB5C20}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:18:10.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{BE83B8FF-BF70-0CF5-2E8F-9C603DFDC21C}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:18:10.000Z" color="#91BAAE"><one:Page ID="{5EB9E10A-F0F0-04F2-3B92-0CB8E4B7E08C}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"/><one:Page ID="{14D498F9-605B-0D60-2FD1-0C9909272BA2}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"/><one:Page ID="{34DB59CA-6983-0A42-3F4C-CA6DF29503C7}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"/><one:Page ID="{7D9B3B20-E900-4512-BCA2-BA050EEBA8EE}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"/><one:Page ID="{F3840BCE-A046-4840-9C23-CE93F32E1974}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"/><one:Page ID="{9861F16E-96BA-4271-A383-CCC864178D6E}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"/><one:Page ID="{E328958D-C3B3-4513-8839-A4C960DEA05F}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1"/><one:Page ID="{201710B3-6F46-4F14-824F-82D14AC13C1F}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{2047F9E3-73CA-4B4D-A084-62A92459F438}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-000.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{14D498F9-605B-0D60-2FD1-0C9909272BA2}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{3B305D22-CF0E-0179-04BB-74272541F520}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{201710B3-6F46-4F14-824F-82D14AC13C1F}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{220C89C9-3BE0-4581-B070-48DE643A22A2}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{220C89C9-3BE0-4581-B070-48DE643A22A2}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{220C89C9-3BE0-4581-B070-48DE643A22A2}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{2047F9E3-73CA-4B4D-A084-62A92459F438}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B092D250-72F0-48E2-9C81-D2210DD19779}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B092D250-72F0-48E2-9C81-D2210DD19779}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B092D250-72F0-48E2-9C81-D2210DD19779}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{34DB59CA-6983-0A42-3F4C-CA6DF29503C7}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5EB9E10A-F0F0-04F2-3B92-0CB8E4B7E08C}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{90CC9011-CC45-0C95-1015-57887EC46C73}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{7D9B3B20-E900-4512-BCA2-BA050EEBA8EE}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{F7CF4E53-0B2D-41BA-94E5-A557B550714A}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{F7CF4E53-0B2D-41BA-94E5-A557B550714A}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{F7CF4E53-0B2D-41BA-94E5-A557B550714A}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9861F16E-96BA-4271-A383-CCC864178D6E}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{DDEFE0E3-9BF7-47C3-B652-70C8280B9DDE}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0950D113-B92A-4841-91D6-AE2C42906722}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0950D113-B92A-4841-91D6-AE2C42906722}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E328958D-C3B3-4513-8839-A4C960DEA05F}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:10.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{5456EFC5-6B19-4AF2-8AFB-7FF74380034C}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{5456EFC5-6B19-4AF2-8AFB-7FF74380034C}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F3840BCE-A046-4840-9C23-CE93F32E1974}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:18:09.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{DE7CEA7A-46FD-4F30-8A5D-2ED125789C0B}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{950BC1D0-2EC0-43AA-8F1D-B1B186182D35}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{950BC1D0-2EC0-43AA-8F1D-B1B186182D35}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp6no75z1i", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 65000, | |
| 5 | "sha256": "44eca1c10b54a10f3b8d08487d222d94aaac3b9a28f6b6f52ffd5d0d702aaf63", | |
| 6 | "mtime_ns": 1790522182581472144 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-04-subpage-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 14, | |
| 9 | 220, | |
| 10 | 221, | |
| 11 | 208, | |
| 12 | 175, | |
| 13 | 223, | |
| 14 | 224, | |
| 15 | 67, | |
| 16 | 190, | |
| 17 | 81, | |
| 18 | 164, | |
| 19 | 165, | |
| 20 | 98, | |
| 21 | 194, | |
| 22 | 13, | |
| 23 | 106 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 108, | |
| 34 | 13, | |
| 35 | 33, | |
| 36 | 174, | |
| 37 | 169, | |
| 38 | 6, | |
| 39 | 175, | |
| 40 | 72, | |
| 41 | 175, | |
| 42 | 126, | |
| 43 | 38, | |
| 44 | 95, | |
| 45 | 230, | |
| 46 | 228, | |
| 47 | 176, | |
| 48 | 104 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 60, | |
| 59 | 228, | |
| 60 | 133, | |
| 61 | 219, | |
| 62 | 247, | |
| 63 | 75, | |
| 64 | 15, | |
| 65 | 69, | |
| 66 | 149, | |
| 67 | 161, | |
| 68 | 85, | |
| 69 | 245, | |
| 70 | 196, | |
| 71 | 175, | |
| 72 | 27, | |
| 73 | 0 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [30, 166, 117, 224, 142, 251, 179, 74, 189, 198, 122, 150, 170, 50, 122, 155], n: 1 } })", | |
| 83 | "phase": "05-insert-before-subpage", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [30, 166, 117, 224, 142, 251, 179, 74, 189, 198, 122, 150, 170, 50, 122, 155], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-4A72E5A4 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-4a72e5a4", "hostname": "ONE-M6-4A72E5A4"} |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-4A72E5A4", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{A0470134-8E1C-4749-BAE2-DB7D12D63F8E}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:23:18.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{7E75B873-C6D7-0DC0-0015-806B1FBA3527}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:23:18.000Z" color="#91BAAE"><one:Page ID="{9E4FE186-8957-05C7-1508-10B3C6F017B7}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:17.000Z" pageLevel="1"/><one:Page ID="{D4229875-19FC-0C55-014B-10922B60DC99}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:17.000Z" pageLevel="1"/><one:Page ID="{F42D5946-1024-0B77-11D6-D666D0D2F4FC}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:17.000Z" pageLevel="1"/><one:Page ID="{33720B42-D9E1-4975-B2B9-D298D169EE4F}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="1"/><one:Page ID="{5897F1E2-EF1D-4344-8D19-D0C346507A55}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="1"/><one:Page ID="{23DE9501-BA14-4426-A6A3-B8C242995764}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="1"/><one:Page ID="{E0E1103F-16E1-4E21-ACD5-9EDA6886CB24}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{BD6D3BAC-90A7-4427-9238-A60E2CAC5FD5}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="3"/><one:Page ID="{E0B1F96F-0A6D-4A78-8E1E-7EA2061E0303}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{23DE9501-BA14-4426-A6A3-B8C242995764}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{94A0EF49-12BE-4BC7-A461-63FC61C7F477}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{94A0EF49-12BE-4BC7-A461-63FC61C7F477}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{33720B42-D9E1-4975-B2B9-D298D169EE4F}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{1E8AEAF6-3F5A-4E05-A4C7-32DA073F6B30}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{55FDC15C-5767-429F-A187-ADBAA45FDA0E}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{55FDC15C-5767-429F-A187-ADBAA45FDA0E}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5897F1E2-EF1D-4344-8D19-D0C346507A55}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{1D19E06F-E250-46F6-98C8-6CC30A4C6AE5}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C9A6D19F-C08D-4974-BF4C-B22760D79019}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C9A6D19F-C08D-4974-BF4C-B22760D79019}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9E4FE186-8957-05C7-1508-10B3C6F017B7}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:17.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{503A909D-B5E2-0DA0-3E8F-4B835C839B48}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BD6D3BAC-90A7-4427-9238-A60E2CAC5FD5}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{37394EDF-728A-408F-BA7F-B95C97178671}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{37394EDF-728A-408F-BA7F-B95C97178671}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{37394EDF-728A-408F-BA7F-B95C97178671}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D4229875-19FC-0C55-014B-10922B60DC99}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:17.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{FBC65DAE-B6A9-004C-2A21-682C0706021B}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E0B1F96F-0A6D-4A78-8E1E-7EA2061E0303}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:23:18.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{7064D2DC-0B57-49D7-B21B-CE2A2F966042}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{7064D2DC-0B57-49D7-B21B-CE2A2F966042}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{7064D2DC-0B57-49D7-B21B-CE2A2F966042}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E0E1103F-16E1-4E21-ACD5-9EDA6886CB24}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{E2FA8945-4247-44B4-9EEA-54D5467DD599}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{E2FA8945-4247-44B4-9EEA-54D5467DD599}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{E2FA8945-4247-44B4-9EEA-54D5467DD599}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F42D5946-1024-0B77-11D6-D666D0D2F4FC}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:17.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpy26z3j6d", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 66944, | |
| 5 | "sha256": "2f144e06946d6424cb548a4b51fdd58c2be2be35fb93ddb8f80808dce7ef8ed8", | |
| 6 | "mtime_ns": 1790522182575647033 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-05-insert-before-subpage/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 191, | |
| 9 | 13, | |
| 10 | 164, | |
| 11 | 227, | |
| 12 | 82, | |
| 13 | 236, | |
| 14 | 26, | |
| 15 | 68, | |
| 16 | 190, | |
| 17 | 184, | |
| 18 | 125, | |
| 19 | 92, | |
| 20 | 176, | |
| 21 | 151, | |
| 22 | 92, | |
| 23 | 109 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 56, | |
| 34 | 89, | |
| 35 | 41, | |
| 36 | 215, | |
| 37 | 48, | |
| 38 | 19, | |
| 39 | 73, | |
| 40 | 75, | |
| 41 | 153, | |
| 42 | 165, | |
| 43 | 39, | |
| 44 | 124, | |
| 45 | 235, | |
| 46 | 93, | |
| 47 | 47, | |
| 48 | 90 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 175, | |
| 59 | 208, | |
| 60 | 247, | |
| 61 | 122, | |
| 62 | 131, | |
| 63 | 58, | |
| 64 | 148, | |
| 65 | 64, | |
| 66 | 189, | |
| 67 | 66, | |
| 68 | 158, | |
| 69 | 33, | |
| 70 | 255, | |
| 71 | 61, | |
| 72 | 102, | |
| 73 | 224 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [13, 174, 2, 173, 50, 101, 29, 74, 170, 248, 125, 169, 18, 82, 231, 129], n: 1 } })", | |
| 83 | "phase": "06-promoted-level-two", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [13, 174, 2, 173, 50, 101, 29, 74, 170, 248, 125, 169, 18, 82, 231, 129], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-2D9428EA -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-2d9428ea", "hostname": "ONE-M6-2D9428EA"} |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-2D9428EA", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{463C34FC-40D0-4BFB-90B5-4AAE31327694}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:23:25.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{16E68071-AA5A-0EBA-25EC-A88CDB6ED2BA}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:23:25.000Z" color="#91BAAE"><one:Page ID="{F6DCD984-E5DA-06BD-30F1-38540224F02A}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"/><one:Page ID="{BCB1A077-7571-0F2F-24B2-3875EFB43B04}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"/><one:Page ID="{9CBE6144-7CA9-080D-342F-FE8114061361}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"/><one:Page ID="{5BE13340-B56C-4A0F-9740-FA7F15BD09D2}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"/><one:Page ID="{3004C9E0-8390-403E-A8E0-F82482849DC8}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"/><one:Page ID="{4B4DAD03-D699-475C-835A-9025864DB0F9}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"/><one:Page ID="{8872283D-7A6C-4D5B-892C-B63DAC522CB9}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{D5FE03AE-FC2A-475D-B7C1-8EE9E878B848}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:12.000Z" pageLevel="2"/><one:Page ID="{8822C16D-66E0-4902-ABE7-5645C2CAE49E}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:23:25.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3004C9E0-8390-403E-A8E0-F82482849DC8}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{758AD86D-8EDD-458C-BD31-4424CE988D78}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A135E99D-AC00-4A0E-9AB5-9AC0A4037784}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A135E99D-AC00-4A0E-9AB5-9AC0A4037784}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{4B4DAD03-D699-475C-835A-9025864DB0F9}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{FC33D74B-7E33-48BD-8198-4B1BA51313EA}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{FC33D74B-7E33-48BD-8198-4B1BA51313EA}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5BE13340-B56C-4A0F-9740-FA7F15BD09D2}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{7619D2F4-53D7-4D7F-813E-1A3DC3EB8CAD}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{3D6EF95E-3BEA-41E5-847E-855D608B3D93}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{3D6EF95E-3BEA-41E5-847E-855D608B3D93}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8822C16D-66E0-4902-ABE7-5645C2CAE49E}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:23:25.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{18F7EADE-67DA-4AAD-97E2-E6CDEB4287DF}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{18F7EADE-67DA-4AAD-97E2-E6CDEB4287DF}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{18F7EADE-67DA-4AAD-97E2-E6CDEB4287DF}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8872283D-7A6C-4D5B-892C-B63DAC522CB9}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{8A69B147-2ECA-47CE-BB13-7C3282A93204}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{8A69B147-2ECA-47CE-BB13-7C3282A93204}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{8A69B147-2ECA-47CE-BB13-7C3282A93204}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9CBE6144-7CA9-080D-342F-FE8114061361}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BCB1A077-7571-0F2F-24B2-3875EFB43B04}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{935565AC-DA24-0336-0FD8-40CBC3D2E586}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D5FE03AE-FC2A-475D-B7C1-8EE9E878B848}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:12.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{5FAA76DD-1E07-43F5-9F86-91BB53C361EC}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{5FAA76DD-1E07-43F5-9F86-91BB53C361EC}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{5FAA76DD-1E07-43F5-9F86-91BB53C361EC}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F6DCD984-E5DA-06BD-30F1-38540224F02A}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:24.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{38A9A89F-D96F-0EDA-1B76-636498577CD5}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp7i0tqm4j", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 70296, | |
| 5 | "sha256": "30860c7715ac247a1f77d1d0c8c27edfcc248e719183cb7990381f5ad5230d89", | |
| 6 | "mtime_ns": 1790522182588156289 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-06-promoted-level-two/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 55, | |
| 9 | 220, | |
| 10 | 38, | |
| 11 | 71, | |
| 12 | 47, | |
| 13 | 170, | |
| 14 | 53, | |
| 15 | 66, | |
| 16 | 139, | |
| 17 | 104, | |
| 18 | 24, | |
| 19 | 238, | |
| 20 | 194, | |
| 21 | 96, | |
| 22 | 177, | |
| 23 | 2 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 140, | |
| 34 | 13, | |
| 35 | 145, | |
| 36 | 79, | |
| 37 | 63, | |
| 38 | 166, | |
| 39 | 77, | |
| 40 | 73, | |
| 41 | 158, | |
| 42 | 26, | |
| 43 | 254, | |
| 44 | 232, | |
| 45 | 198, | |
| 46 | 149, | |
| 47 | 101, | |
| 48 | 89 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 18, | |
| 59 | 181, | |
| 60 | 156, | |
| 61 | 40, | |
| 62 | 205, | |
| 63 | 204, | |
| 64 | 124, | |
| 65 | 69, | |
| 66 | 153, | |
| 67 | 67, | |
| 68 | 16, | |
| 69 | 116, | |
| 70 | 216, | |
| 71 | 205, | |
| 72 | 169, | |
| 73 | 116 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [28, 191, 204, 103, 192, 238, 143, 72, 160, 21, 202, 184, 111, 209, 202, 133], n: 1 } })", | |
| 83 | "phase": "07-promoted-root", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [28, 191, 204, 103, 192, 238, 143, 72, 160, 21, 202, 184, 111, 209, 202, 133], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-A2C6CE60 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-a2c6ce60", "hostname": "ONE-M6-A2C6CE60"} |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-A2C6CE60", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{239B72F3-DF00-48CA-8DC7-6BCAD39DF6B9}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:23:27.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{C25DD8EB-E329-0B3E-3E61-A268C0F5A77F}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:23:27.000Z" color="#91BAAE"><one:Page ID="{2267811E-ACA9-0339-2B7C-32B019BF85EF}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:26.000Z" pageLevel="1"/><one:Page ID="{680AF8ED-3C02-0AAB-3F3F-3291F42F4EC1}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:26.000Z" pageLevel="1"/><one:Page ID="{480539DE-35DA-0D89-2FA2-F4650F9D66A4}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="1"/><one:Page ID="{8F5A6BDA-FC1F-4F8B-8CCD-F09B0E267C17}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="1"/><one:Page ID="{E4BF917A-CAE3-45BA-B36D-F2C0991FE80D}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="1"/><one:Page ID="{9FF6F599-9FEA-42D8-98D7-9AC19DD6C53C}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="1"/><one:Page ID="{5CC970A7-331F-48DF-92A1-BCD9B7C9597C}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{01455B34-B559-42D9-AC4C-840DF3E3CD8D}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:26.000Z" pageLevel="1"/><one:Page ID="{5C9999F7-2F93-4C86-B06A-5CA1D951915B}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{01455B34-B559-42D9-AC4C-840DF3E3CD8D}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:26.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{8B112E47-5774-4671-840B-9B5F48581429}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{8B112E47-5774-4671-840B-9B5F48581429}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{8B112E47-5774-4671-840B-9B5F48581429}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-001.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{2267811E-ACA9-0339-2B7C-32B019BF85EF}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:26.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{EC12F005-901C-0B5E-00FB-698083CC0910}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{480539DE-35DA-0D89-2FA2-F4650F9D66A4}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5C9999F7-2F93-4C86-B06A-5CA1D951915B}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{CC4CB244-2EA9-4F29-8C6F-EC29F0D9F21A}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{CC4CB244-2EA9-4F29-8C6F-EC29F0D9F21A}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{CC4CB244-2EA9-4F29-8C6F-EC29F0D9F21A}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5CC970A7-331F-48DF-92A1-BCD9B7C9597C}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{5ED2E9DD-67B9-424A-A09E-76D6993247C1}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{5ED2E9DD-67B9-424A-A09E-76D6993247C1}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{5ED2E9DD-67B9-424A-A09E-76D6993247C1}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{680AF8ED-3C02-0AAB-3F3F-3291F42F4EC1}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:23:26.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{47EE3D36-9357-06B2-1455-4A2FD8499043}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8F5A6BDA-FC1F-4F8B-8CCD-F09B0E267C17}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{A2A28A6E-1AA4-48FB-9AB3-10D9D870F968}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E9D5A1C4-7299-4461-9FF3-8FB97B104856}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E9D5A1C4-7299-4461-9FF3-8FB97B104856}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9FF6F599-9FEA-42D8-98D7-9AC19DD6C53C}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{28888FD1-3740-4D39-9A15-41FFBE88662F}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{28888FD1-3740-4D39-9A15-41FFBE88662F}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E4BF917A-CAE3-45BA-B36D-F2C0991FE80D}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:23:27.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{A13180F7-C7AE-4008-A6BC-4EC0D503F8BD}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{758EB107-E573-4F8A-8138-9024BF980241}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{758EB107-E573-4F8A-8138-9024BF980241}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpfsvvpr33", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 72360, | |
| 5 | "sha256": "550991e8db44ff19e287605df0548e26e03d5f4b02ea3c56b37206fd4a122974", | |
| 6 | "mtime_ns": 1790522182583277710 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-07-promoted-root/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 94, | |
| 9 | 111, | |
| 10 | 203, | |
| 11 | 102, | |
| 12 | 137, | |
| 13 | 5, | |
| 14 | 1, | |
| 15 | 65, | |
| 16 | 179, | |
| 17 | 170, | |
| 18 | 125, | |
| 19 | 232, | |
| 20 | 204, | |
| 21 | 23, | |
| 22 | 163, | |
| 23 | 106 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 229, | |
| 34 | 103, | |
| 35 | 227, | |
| 36 | 76, | |
| 37 | 55, | |
| 38 | 67, | |
| 39 | 28, | |
| 40 | 66, | |
| 41 | 188, | |
| 42 | 213, | |
| 43 | 158, | |
| 44 | 204, | |
| 45 | 32, | |
| 46 | 66, | |
| 47 | 155, | |
| 48 | 181 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 71, | |
| 59 | 45, | |
| 60 | 134, | |
| 61 | 175, | |
| 62 | 49, | |
| 63 | 202, | |
| 64 | 56, | |
| 65 | 76, | |
| 66 | 130, | |
| 67 | 139, | |
| 68 | 137, | |
| 69 | 23, | |
| 70 | 7, | |
| 71 | 208, | |
| 72 | 7, | |
| 73 | 1 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [49, 49, 147, 226, 188, 223, 28, 78, 185, 7, 77, 190, 226, 242, 41, 152], n: 1 } })", | |
| 83 | "phase": "08-collapsed-group-move", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [49, 49, 147, 226, 188, 223, 28, 78, 185, 7, 77, 190, 226, 242, 41, 152], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-150CFDA8 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-150cfda8", "hostname": "ONE-M6-150CFDA8"} |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-150CFDA8", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{56073606-2B0F-46DF-AF66-5DD443CAECDC}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:29:39.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{03581AC1-8EB9-0311-1CB2-C3906AC7FB16}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:29:39.000Z" color="#91BAAE"><one:Page ID="{C040991E-D8C9-4AF6-8E9F-E5F559D191E4}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:26.000Z" pageLevel="1"/><one:Page ID="{9D9C5BDD-4203-44A9-92B9-3D597363CD32}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="3"/><one:Page ID="{E3624334-C139-0B16-09AF-5348B38DD986}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"/><one:Page ID="{A90F3AC7-5192-0284-1DEC-53695E1D12A8}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"/><one:Page ID="{8900FBF4-584A-05A6-0D71-959DA5AF3ACD}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:39.000Z" pageLevel="1"/><one:Page ID="{4E5FA9F0-918F-47A4-AE1E-9163A414207E}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:39.000Z" pageLevel="1"/><one:Page ID="{25BA5350-A773-4D95-91BE-9338332DB464}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:39.000Z" pageLevel="1"/><one:Page ID="{5EF337B3-F27A-4AF7-BA04-FB3937E49955}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:39.000Z" pageLevel="1"/><one:Page ID="{9DCCB28D-5E8F-40F0-B072-DD211DFB0515}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{25BA5350-A773-4D95-91BE-9338332DB464}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:39.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{603442DD-AA3E-4827-846F-2F387F31A4D4}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B48B732D-88E3-47A5-A3EB-F1DC15AA5E28}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B48B732D-88E3-47A5-A3EB-F1DC15AA5E28}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{4E5FA9F0-918F-47A4-AE1E-9163A414207E}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:39.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{63A74844-7734-40D4-B860-71217242A501}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{28D063EE-1F09-4C4E-BD20-EE41D122143F}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{28D063EE-1F09-4C4E-BD20-EE41D122143F}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5EF337B3-F27A-4AF7-BA04-FB3937E49955}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:39.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E98D4DFB-5AD0-4516-B8C6-200714BA3A46}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E98D4DFB-5AD0-4516-B8C6-200714BA3A46}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8900FBF4-584A-05A6-0D71-959DA5AF3ACD}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:39.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9D9C5BDD-4203-44A9-92B9-3D597363CD32}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0D49706E-4339-4706-AEBC-8DD15AEBAE73}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0D49706E-4339-4706-AEBC-8DD15AEBAE73}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0D49706E-4339-4706-AEBC-8DD15AEBAE73}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9DCCB28D-5E8F-40F0-B072-DD211DFB0515}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{9FD72BF7-0A29-4A65-824D-172E33001BA8}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{9FD72BF7-0A29-4A65-824D-172E33001BA8}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:59.000Z" objectID="{9FD72BF7-0A29-4A65-824D-172E33001BA8}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{A90F3AC7-5192-0284-1DEC-53695E1D12A8}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{86EBFF1C-FEC7-0E9D-3686-2BD7727BCC2A}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C040991E-D8C9-4AF6-8E9F-E5F559D191E4}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:26.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{4A14EC6D-3AE4-4E5E-A6D8-FAA7E26A4840}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{4A14EC6D-3AE4-4E5E-A6D8-FAA7E26A4840}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{4A14EC6D-3AE4-4E5E-A6D8-FAA7E26A4840}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E3624334-C139-0B16-09AF-5348B38DD986}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{2D17322F-FD8C-0371-2228-087829FE5579}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpfwhuw46n", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 73840, | |
| 5 | "sha256": "b68abccdc4c7c98c65311b2924f3903540b22c7f6e0bb8153b31bbe34fdf2c05", | |
| 6 | "mtime_ns": 1790522182560292804 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-08-collapsed-group-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/group-single-page/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-single-page/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-single-page/candidate/manifest.json created+87| ... | ... | @@ -0,0 +1,87 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "group", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 106, | |
| 9 | 239, | |
| 10 | 107, | |
| 11 | 240, | |
| 12 | 178, | |
| 13 | 128, | |
| 14 | 132, | |
| 15 | 68, | |
| 16 | 153, | |
| 17 | 189, | |
| 18 | 143, | |
| 19 | 39, | |
| 20 | 201, | |
| 21 | 121, | |
| 22 | 23, | |
| 23 | 95 | |
| 24 | ], | |
| 25 | "level": 1, | |
| 26 | "position": { | |
| 27 | "Before": null | |
| 28 | }, | |
| 29 | "space": "{8A3D5318-2F37-02D8-0DC9-CC0BC689209F},1" | |
| 30 | }, | |
| 31 | { | |
| 32 | "guid": [ | |
| 33 | 153, | |
| 34 | 239, | |
| 35 | 1, | |
| 36 | 102, | |
| 37 | 46, | |
| 38 | 96, | |
| 39 | 32, | |
| 40 | 70, | |
| 41 | 136, | |
| 42 | 164, | |
| 43 | 197, | |
| 44 | 78, | |
| 45 | 35, | |
| 46 | 85, | |
| 47 | 187, | |
| 48 | 83 | |
| 49 | ], | |
| 50 | "level": 2, | |
| 51 | "position": { | |
| 52 | "Before": null | |
| 53 | }, | |
| 54 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 55 | }, | |
| 56 | { | |
| 57 | "guid": [ | |
| 58 | 235, | |
| 59 | 105, | |
| 60 | 29, | |
| 61 | 79, | |
| 62 | 205, | |
| 63 | 140, | |
| 64 | 16, | |
| 65 | 65, | |
| 66 | 169, | |
| 67 | 123, | |
| 68 | 14, | |
| 69 | 62, | |
| 70 | 80, | |
| 71 | 183, | |
| 72 | 253, | |
| 73 | 48 | |
| 74 | ], | |
| 75 | "level": 3, | |
| 76 | "position": { | |
| 77 | "Before": null | |
| 78 | }, | |
| 79 | "space": "{8A6DBA48-33BB-0681-2F02-2C73A811E8B8},1" | |
| 80 | } | |
| 81 | ], | |
| 82 | "page_receipt": "Some(Published { revision: ExGuid { guid: [110, 9, 150, 21, 87, 116, 176, 73, 135, 91, 48, 29, 75, 28, 84, 177], n: 1 } })", | |
| 83 | "phase": "single-page", | |
| 84 | "publications": 1, | |
| 85 | "reviewed": [], | |
| 86 | "text_receipt": "Some(Published { revision: ExGuid { guid: [110, 9, 150, 21, 87, 116, 176, 73, 135, 91, 48, 29, 75, 28, 84, 177], n: 1 } })" | |
| 87 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-93A16790 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-93a16790", "hostname": "ONE-M6-93A16790"} |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-single-page/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/group-single-page/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-93A16790", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{2DE0A730-ADB2-4D8C-B033-844D558819C0}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:29:38.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{AE8EB191-F430-0099-18FB-482D2784C9F1}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:29:38.000Z" color="#91BAAE"><one:Page ID="{4EB4E864-BBB0-089E-0DE6-D8F5FECEEB61}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"/><one:Page ID="{04D99197-2B1B-010C-19A5-D8D4135E204F}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"/><one:Page ID="{24D650A4-22C3-062E-0938-1E20E8EC082A}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"/><one:Page ID="{6D96324E-A240-497E-8AD6-6E481492A303}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="2"/><one:Page ID="{304AF08D-388A-4721-96F0-B6E43E20FFD5}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="3"/><one:Page ID="{E38902A0-EB06-442C-AA57-1ADEE9571299}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"/><one:Page ID="{886CF800-DDFA-4E1D-95F7-18857E6E8683}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"/><one:Page ID="{F3259CE3-88F3-497F-BE4D-70847AA7ABB2}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"/><one:Page ID="{301A19DD-2406-4378-B43B-569C50B837F2}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T05:49:01.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-000.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{04D99197-2B1B-010C-19A5-D8D4135E204F}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{2B3D544C-844E-0D15-32CF-A06A3F38FECD}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-001.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{24D650A4-22C3-062E-0938-1E20E8EC082A}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{301A19DD-2406-4378-B43B-569C50B837F2}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T05:49:01.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T05:48:48.000Z" objectID="{320180A7-70A0-49ED-8604-9C937E43294F}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{320180A7-70A0-49ED-8604-9C937E43294F}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{320180A7-70A0-49ED-8604-9C937E43294F}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{304AF08D-388A-4721-96F0-B6E43E20FFD5}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A09FDB3E-39B0-448E-AAF5-066C17A89C94}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A09FDB3E-39B0-448E-AAF5-066C17A89C94}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A09FDB3E-39B0-448E-AAF5-066C17A89C94}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{4EB4E864-BBB0-089E-0DE6-D8F5FECEEB61}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{80C1997F-8705-00F9-2661-83C564BD679E}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{6D96324E-A240-497E-8AD6-6E481492A303}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{E7C2473D-406D-4DD6-A291-711AAF297AA7}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E7C2473D-406D-4DD6-A291-711AAF297AA7}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{E7C2473D-406D-4DD6-A291-711AAF297AA7}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{886CF800-DDFA-4E1D-95F7-18857E6E8683}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{CDE2E98D-D0B7-4BAF-8026-A48532729633}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{195DD87D-F26A-442D-A7A2-7A6158E96CCF}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{195DD87D-F26A-442D-A7A2-7A6158E96CCF}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E38902A0-EB06-442C-AA57-1ADEE9571299}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{CE71E314-0DBD-435C-BC29-FA9C3F0197E6}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{8506C8BE-6580-4FC6-B969-65FC9C6126D8}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{8506C8BE-6580-4FC6-B969-65FC9C6126D8}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F3259CE3-88F3-497F-BE4D-70847AA7ABB2}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:38.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{445BE6AB-2059-469E-BC8F-ABBA59F908A1}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{445BE6AB-2059-469E-BC8F-ABBA59F908A1}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp3_04860j", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 63080, | |
| 5 | "sha256": "58f87ab34c5e56426faed56429ab10a15e3df0673851e8c9b4587cb107a13295", | |
| 6 | "mtime_ns": 1790522182573126515 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/group-single-page/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 0, | |
| 9 | 239, | |
| 10 | 121, | |
| 11 | 46, | |
| 12 | 116, | |
| 13 | 217, | |
| 14 | 98, | |
| 15 | 67, | |
| 16 | 148, | |
| 17 | 55, | |
| 18 | 113, | |
| 19 | 147, | |
| 20 | 21, | |
| 21 | 237, | |
| 22 | 19, | |
| 23 | 130 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [56, 236, 133, 176, 92, 155, 147, 69, 157, 167, 5, 193, 82, 10, 39, 239], n: 1 } })", | |
| 31 | "phase": "01-demoted-parent", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [56, 236, 133, 176, 92, 155, 147, 69, 157, 167, 5, 193, 82, 10, 39, 239], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-2B44159D -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-2b44159d", "hostname": "ONE-M6-2B44159D"} |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-2B44159D", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{5DAE6DBA-F815-4E5D-B9AB-9D88A3E17D9A}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:29:43.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{A089048E-F16F-0AF0-3540-CCCB4CC500D9}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:29:43.000Z" color="#91BAAE"><one:Page ID="{40B35D7B-BEEF-02F7-205D-5C13958F2249}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"/><one:Page ID="{0ADE2488-2E44-0B65-341E-5C32781FE967}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"/><one:Page ID="{2AD1E5BB-279C-0C47-2483-9AC683ADC102}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"/><one:Page ID="{3E1DACC2-2159-4911-9980-D27A3BF9FEDA}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:09.000Z" pageLevel="2"/><one:Page ID="{63918751-A71F-4317-A76D-EAAE7FD36A2B}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="2"/><one:Page ID="{3E4D4592-3DD5-4D48-BB4B-3202556136FD}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="3"/><one:Page ID="{ED8EB7BF-EE59-4E45-87EC-9E388216DBB1}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"/><one:Page ID="{866B4D1F-D8A5-4474-B84C-9C63152F4FAB}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"/><one:Page ID="{FD2229FC-8DAC-4316-93F6-F46211E6629A}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-000.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0ADE2488-2E44-0B65-341E-5C32781FE967}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{253AE153-8111-077C-1F74-248C547937E5}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-001.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{2AD1E5BB-279C-0C47-2483-9AC683ADC102}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3E1DACC2-2159-4911-9980-D27A3BF9FEDA}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:09.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{3C0635B8-75FF-4384-ABBF-18751502E067}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{3C0635B8-75FF-4384-ABBF-18751502E067}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{3C0635B8-75FF-4384-ABBF-18751502E067}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3E4D4592-3DD5-4D48-BB4B-3202556136FD}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{AE986E21-3CEF-4EE7-874E-828A7CE955BC}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{AE986E21-3CEF-4EE7-874E-828A7CE955BC}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{AE986E21-3CEF-4EE7-874E-828A7CE955BC}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{40B35D7B-BEEF-02F7-205D-5C13958F2249}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{8EC62C60-825A-0A90-0BDA-07230FFCAEB6}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{63918751-A71F-4317-A76D-EAAE7FD36A2B}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{E9C5F222-4532-47BF-8F2A-F5FCC468B38F}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E9C5F222-4532-47BF-8F2A-F5FCC468B38F}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{E9C5F222-4532-47BF-8F2A-F5FCC468B38F}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{866B4D1F-D8A5-4474-B84C-9C63152F4FAB}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{C3E55C92-D5E8-41C6-AD9D-206359335F1B}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{175A6D62-F735-4E44-8A19-FE8733A8A5E7}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{175A6D62-F735-4E44-8A19-FE8733A8A5E7}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{ED8EB7BF-EE59-4E45-87EC-9E388216DBB1}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{C076560B-08E2-4935-9192-7E7A54405ECE}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{8B017DA1-60DF-45AF-94D2-E11AF720EFF0}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{8B017DA1-60DF-45AF-94D2-E11AF720EFF0}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{FD2229FC-8DAC-4316-93F6-F46211E6629A}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:43.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4A5C53B4-2506-4CF7-9134-2F5C32B8C189}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4A5C53B4-2506-4CF7-9134-2F5C32B8C189}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmppgtomrlh", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 58888, | |
| 5 | "sha256": "c19272d0b0a52889647b23a6eb10381e7d90d5d5d7ca2ad3be868aa585a8b21c", | |
| 6 | "mtime_ns": 1790522182595778175 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-01-demoted-parent/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 70, | |
| 9 | 179, | |
| 10 | 162, | |
| 11 | 143, | |
| 12 | 72, | |
| 13 | 227, | |
| 14 | 248, | |
| 15 | 64, | |
| 16 | 159, | |
| 17 | 7, | |
| 18 | 0, | |
| 19 | 166, | |
| 20 | 131, | |
| 21 | 166, | |
| 22 | 211, | |
| 23 | 72 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [144, 208, 130, 2, 184, 145, 30, 67, 154, 106, 180, 175, 85, 128, 40, 126], n: 1 } })", | |
| 31 | "phase": "02-promoted-parent", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [144, 208, 130, 2, 184, 145, 30, 67, 154, 106, 180, 175, 85, 128, 40, 126], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-3F9D5E9E -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-3f9d5e9e", "hostname": "ONE-M6-3F9D5E9E"} |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-3F9D5E9E", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{BBFBFF0F-1931-4CB4-9C93-248C9B2E5A1E}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:29:50.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{CC2CF2F9-D267-0197-1BF6-D6470B7E5A6C}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:29:50.000Z" color="#91BAAE"><one:Page ID="{2C16AB0C-9DE7-0990-0EEB-469FD23478FC}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"/><one:Page ID="{667BD2FF-0D4C-0002-1AA8-46BE3FA4B3D2}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"/><one:Page ID="{467413CC-0494-0720-0A35-804AC4169BB7}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"/><one:Page ID="{52B85AB5-0251-4276-B736-C8F67C42A46F}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{0F347126-8417-4870-89DB-F0223868309E}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="2"/><one:Page ID="{52E8B3E5-1EDD-462F-95FD-288E12DA6C48}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="3"/><one:Page ID="{812B41C8-CD51-4522-A95A-84B4C5AD8104}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"/><one:Page ID="{EACEBB68-FBAD-4F13-96FA-86EF5294151E}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"/><one:Page ID="{9187DF8B-AEA4-4871-BD40-EEEE565D382F}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0F347126-8417-4870-89DB-F0223868309E}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{85600455-663A-4CD8-A19C-EF7083D3E93A}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{85600455-663A-4CD8-A19C-EF7083D3E93A}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{85600455-663A-4CD8-A19C-EF7083D3E93A}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-001.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{2C16AB0C-9DE7-0990-0EEB-469FD23478FC}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{E263DA17-A152-01F7-256C-1DAF4847F403}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{467413CC-0494-0720-0A35-804AC4169BB7}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{52B85AB5-0251-4276-B736-C8F67C42A46F}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{50A3C3CF-56F7-48E3-8509-02F952B9BAD2}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{50A3C3CF-56F7-48E3-8509-02F952B9BAD2}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{50A3C3CF-56F7-48E3-8509-02F952B9BAD2}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{52E8B3E5-1EDD-462F-95FD-288E12DA6C48}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C23D9856-1FE7-4580-A9F8-98063B520F09}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C23D9856-1FE7-4580-A9F8-98063B520F09}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C23D9856-1FE7-4580-A9F8-98063B520F09}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{667BD2FF-0D4C-0002-1AA8-46BE3FA4B3D2}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{499F1724-A219-0C1B-31C2-3E0013C26D50}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{812B41C8-CD51-4522-A95A-84B4C5AD8104}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{ACD3A07C-2BEA-4252-BF24-64F613FB047B}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E7A48BD6-43D7-4EC8-BA64-FB96B09BB545}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E7A48BD6-43D7-4EC8-BA64-FB96B09BB545}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9187DF8B-AEA4-4871-BD40-EEEE565D382F}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{26F9A5C3-060E-4790-BF82-35D075039B3C}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{26F9A5C3-060E-4790-BF82-35D075039B3C}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{EACEBB68-FBAD-4F13-96FA-86EF5294151E}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:29:40.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{AF40AAE5-F6E0-4AA1-832B-3AEF1E8805AE}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{7BFF9B15-D43D-4523-A4AF-E40B7413FF52}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{7BFF9B15-D43D-4523-A4AF-E40B7413FF52}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpsa22lkkc", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 60864, | |
| 5 | "sha256": "02983cdd10e8f6ac52dfdd27ef63858d4d3351c2c78822c0f5c20794298fb0ca", | |
| 6 | "mtime_ns": 1790522182572487438 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-02-promoted-parent/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 206, | |
| 9 | 208, | |
| 10 | 7, | |
| 11 | 135, | |
| 12 | 27, | |
| 13 | 66, | |
| 14 | 90, | |
| 15 | 66, | |
| 16 | 171, | |
| 17 | 221, | |
| 18 | 251, | |
| 19 | 160, | |
| 20 | 36, | |
| 21 | 192, | |
| 22 | 100, | |
| 23 | 24 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [226, 195, 144, 213, 163, 25, 255, 79, 131, 63, 105, 93, 194, 6, 124, 135], n: 1 } })", | |
| 31 | "phase": "03-selected-group-move", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [226, 195, 144, 213, 163, 25, 255, 79, 131, 63, 105, 93, 194, 6, 124, 135], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-6DEF4909 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-6def4909", "hostname": "ONE-M6-6DEF4909"} |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-6DEF4909", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{41D988D4-34F8-45C1-A94E-DBE5D4E4737E}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:33:17.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{30727ECA-D927-0519-0084-E72DA4E95E71}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:33:17.000Z" color="#91BAAE"><one:Page ID="{D048273F-96A7-0D1E-1599-77F57DA37CE1}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{9A255ECC-060C-048C-01DA-77D49033B7CF}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{BA2A9FFF-0FD4-03AE-1147-B1206B819FAA}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{7D75CDFB-C611-41AC-B228-B5DE6A3A8519}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{1690375B-F0ED-4B9D-8D88-B785FD031103}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{6DD953B8-A5E4-4CFF-A632-DF84F9CA3C32}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{AEE6D686-0911-46F8-AC44-F99CD3D5A072}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{F36AFD15-8F57-4CFE-92A9-C14897FF3483}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="2"/><one:Page ID="{AEB63FD6-159D-42A1-8E8F-19E4BD4D6855}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{1690375B-F0ED-4B9D-8D88-B785FD031103}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{531E26D6-FDA0-4E2F-9859-0B85B11F01B3}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{87A11726-DF7D-41AD-BFDD-D561DB84FB4F}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{87A11726-DF7D-41AD-BFDD-D561DB84FB4F}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{6DD953B8-A5E4-4CFF-A632-DF84F9CA3C32}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{DAA729F0-0D4E-431E-A4F0-04BADA949F21}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{DAA729F0-0D4E-431E-A4F0-04BADA949F21}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{7D75CDFB-C611-41AC-B228-B5DE6A3A8519}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{508D2C4F-20AA-46DC-A456-559CBC6C0066}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{1BFA07E5-4897-4A46-A116-CAFC1F0CB158}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{1BFA07E5-4897-4A46-A116-CAFC1F0CB158}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9A255ECC-060C-048C-01DA-77D49033B7CF}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{B5C19B17-A959-0895-2AB0-0F6ABC55694D}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{AEB63FD6-159D-42A1-8E8F-19E4BD4D6855}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{3E631465-14A7-410E-B28A-A96C94C50B14}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{3E631465-14A7-410E-B28A-A96C94C50B14}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{3E631465-14A7-410E-B28A-A96C94C50B14}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{AEE6D686-0911-46F8-AC44-F99CD3D5A072}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{ACFD4FFC-5DB7-4C6D-9E7B-3393FD2EBECF}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{ACFD4FFC-5DB7-4C6D-9E7B-3393FD2EBECF}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{ACFD4FFC-5DB7-4C6D-9E7B-3393FD2EBECF}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BA2A9FFF-0FD4-03AE-1147-B1206B819FAA}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-007.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D048273F-96A7-0D1E-1599-77F57DA37CE1}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{1E3D5624-AA12-0579-3E1E-2CC5E7D0F01E}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F36AFD15-8F57-4CFE-92A9-C14897FF3483}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{793E8866-6D7A-4856-BAEE-DE1A2C44ED27}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{793E8866-6D7A-4856-BAEE-DE1A2C44ED27}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{793E8866-6D7A-4856-BAEE-DE1A2C44ED27}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpb5gki0t4", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 62448, | |
| 5 | "sha256": "62f0d051077351cfee81931153467cbf510700e94b46347a78e287801943f37c", | |
| 6 | "mtime_ns": 1790522182574538544 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-03-selected-group-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 112, | |
| 9 | 19, | |
| 10 | 103, | |
| 11 | 0, | |
| 12 | 67, | |
| 13 | 152, | |
| 14 | 215, | |
| 15 | 75, | |
| 16 | 186, | |
| 17 | 173, | |
| 18 | 109, | |
| 19 | 239, | |
| 20 | 32, | |
| 21 | 173, | |
| 22 | 18, | |
| 23 | 173 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [140, 1, 52, 173, 83, 155, 53, 75, 176, 124, 221, 5, 197, 47, 143, 47], n: 1 } })", | |
| 31 | "phase": "04-subpage-move", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [140, 1, 52, 173, 83, 155, 53, 75, 176, 124, 221, 5, 197, 47, 143, 47], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-3CF1AD85 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-3cf1ad85", "hostname": "ONE-M6-3CF1AD85"} |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-3CF1AD85", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{05D4D265-8B7D-4092-9700-6B459727CD1E}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:33:17.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{9B5BD099-85FF-0508-0845-9E1810FA5389}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:33:17.000Z" color="#91BAAE"><one:Page ID="{7B61896C-CA7F-0D0F-1D58-0EC0C9B07119}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{310CF09F-5AD4-049D-091B-0EE12420BA37}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{110331AC-530C-03BF-1986-C815DF929252}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{58435346-D38F-4CEF-9A68-B87D23EC397B}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{D65C63A8-9AC9-41BD-BAE9-CCEBDE2988E1}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{BDB99908-AC35-4B8C-8549-CEB049101CFB}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{C6F0FDEB-F93C-4CEE-AEF3-A6B14DD931CA}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"/><one:Page ID="{05CF78D5-55C9-46E9-A485-80A967C6AD8A}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{059F9185-4945-42B0-864E-60D1095E65AD}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{059F9185-4945-42B0-864E-60D1095E65AD}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{954ABA36-487F-411F-BA4B-D05920D606EC}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{954ABA36-487F-411F-BA4B-D05920D606EC}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{954ABA36-487F-411F-BA4B-D05920D606EC}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{05CF78D5-55C9-46E9-A485-80A967C6AD8A}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{07D4E1AF-016F-4C7C-96BA-4AA6493DB337}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{07D4E1AF-016F-4C7C-96BA-4AA6493DB337}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{07D4E1AF-016F-4C7C-96BA-4AA6493DB337}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{110331AC-530C-03BF-1986-C815DF929252}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{310CF09F-5AD4-049D-091B-0EE12420BA37}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{1EE83544-F581-0884-2271-765F084664B5}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{58435346-D38F-4CEF-9A68-B87D23EC397B}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{D2172635-31A2-4847-B22F-A72F9857E0DF}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{D2172635-31A2-4847-B22F-A72F9857E0DF}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{D2172635-31A2-4847-B22F-A72F9857E0DF}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{7B61896C-CA7F-0D0F-1D58-0EC0C9B07119}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{B514F877-F6CA-0568-36DF-55F053C3FDE6}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BDB99908-AC35-4B8C-8549-CEB049101CFB}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{F8378885-A178-4E3E-9098-72B0050C0C4B}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2C88B975-83A5-41BC-B71C-AC546F97F6B7}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2C88B975-83A5-41BC-B71C-AC546F97F6B7}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C6F0FDEB-F93C-4CEE-AEF3-A6B14DD931CA}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{718E87A3-5196-430F-AC31-7D8F6E8792D9}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{718E87A3-5196-430F-AC31-7D8F6E8792D9}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D65C63A8-9AC9-41BD-BAE9-CCEBDE2988E1}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:17.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{FBA4821C-7C72-46CD-AC97-2CA9087F0D9E}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B0D3A9B6-144F-4A57-A9D7-B3C9AB1FBCA0}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B0D3A9B6-144F-4A57-A9D7-B3C9AB1FBCA0}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmplfmc8y5c", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 65000, | |
| 5 | "sha256": "e61b424191b7ddde476e498953e5fedb01566f5fdcf5ec5ad85b75dc81ae4b81", | |
| 6 | "mtime_ns": 1790522182580783526 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-04-subpage-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 4, | |
| 9 | 56, | |
| 10 | 164, | |
| 11 | 224, | |
| 12 | 230, | |
| 13 | 112, | |
| 14 | 75, | |
| 15 | 69, | |
| 16 | 132, | |
| 17 | 225, | |
| 18 | 72, | |
| 19 | 65, | |
| 20 | 90, | |
| 21 | 35, | |
| 22 | 245, | |
| 23 | 82 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [217, 51, 175, 155, 204, 150, 117, 70, 128, 20, 45, 123, 132, 193, 234, 183], n: 1 } })", | |
| 31 | "phase": "05-insert-before-subpage", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [217, 51, 175, 155, 204, 150, 117, 70, 128, 20, 45, 123, 132, 193, 234, 183], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-C302208F -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-c302208f", "hostname": "ONE-M6-C302208F"} |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-C302208F", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{311E4AEC-137F-48FC-AA70-C3B3D85C306D}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:33:20.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{43705451-6CDB-0214-3122-46835CF24ABB}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:33:20.000Z" color="#91BAAE"><one:Page ID="{A34A0DA4-235B-0A13-243F-D65B85B8682B}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{E9277457-B3F0-0381-307C-D67A6828A305}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{C928B564-BA28-04A3-20E1-108E939A8B60}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{0E77E760-73ED-46A1-838E-1470922191D3}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{65921DC0-4511-4C90-BC2E-162B051805C9}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{1EDB7923-1018-4BF2-9794-7E2A01D128F8}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{DDE4FC1D-BCED-41F5-9DE2-58322BCEB4B8}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{8068D78E-3AAB-4BF3-A30F-60E66FE42049}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="3"/><one:Page ID="{DDB4154D-A061-45AC-BF29-B84A45567C9F}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0E77E760-73ED-46A1-838E-1470922191D3}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{238F06D4-9556-41D1-95F0-F432447714AC}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{68F82D7E-FD6B-4D4B-90B0-6B52E717A592}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{68F82D7E-FD6B-4D4B-90B0-6B52E717A592}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{1EDB7923-1018-4BF2-9794-7E2A01D128F8}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A9A5036B-B8B2-4413-9556-A514228F8BEB}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{A9A5036B-B8B2-4413-9556-A514228F8BEB}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{65921DC0-4511-4C90-BC2E-162B051805C9}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{201C0C4D-485C-4922-A9FF-AA2B49041579}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{F4A33DBD-6A81-46A0-8E7B-74CF239FEF85}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{F4A33DBD-6A81-46A0-8E7B-74CF239FEF85}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8068D78E-3AAB-4BF3-A30F-60E66FE42049}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{0A3CA2FD-D886-4F5B-8B48-7FB4D45FF9ED}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{0A3CA2FD-D886-4F5B-8B48-7FB4D45FF9ED}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{0A3CA2FD-D886-4F5B-8B48-7FB4D45FF9ED}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{A34A0DA4-235B-0A13-243F-D65B85B8682B}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{6D3F7CBF-1FEE-0274-0FB8-8D6B1FCBE4D4}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C928B564-BA28-04A3-20E1-108E939A8B60}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{DDB4154D-A061-45AC-BF29-B84A45567C9F}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4D613EFE-A15B-4603-832C-08C26CDE1FDE}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4D613EFE-A15B-4603-832C-08C26CDE1FDE}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4D613EFE-A15B-4603-832C-08C26CDE1FDE}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{DDE4FC1D-BCED-41F5-9DE2-58322BCEB4B8}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{DFFF6567-E84B-4B60-AFDD-923D0535AA05}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{DFFF6567-E84B-4B60-AFDD-923D0535AA05}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:57.000Z" objectID="{DFFF6567-E84B-4B60-AFDD-923D0535AA05}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E9277457-B3F0-0381-307C-D67A6828A305}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{C6C3B18C-1CA5-0F98-1B16-AEC4444E7D87}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp3bp2l4t4", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 66944, | |
| 5 | "sha256": "b1f5d19ffee4ff89ab2a14066a729b5585179339be2b18227f92c0bf2b44c42e", | |
| 6 | "mtime_ns": 1790522182565951458 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-05-insert-before-subpage/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 178, | |
| 9 | 31, | |
| 10 | 183, | |
| 11 | 138, | |
| 12 | 26, | |
| 13 | 221, | |
| 14 | 93, | |
| 15 | 78, | |
| 16 | 173, | |
| 17 | 192, | |
| 18 | 148, | |
| 19 | 78, | |
| 20 | 69, | |
| 21 | 246, | |
| 22 | 210, | |
| 23 | 44 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [113, 37, 105, 136, 152, 116, 183, 79, 158, 85, 240, 239, 61, 75, 67, 196], n: 1 } })", | |
| 31 | "phase": "06-promoted-level-two", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [113, 37, 105, 136, 152, 116, 183, 79, 158, 85, 240, 239, 61, 75, 67, 196], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-BC497350 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-bc497350", "hostname": "ONE-M6-BC497350"} |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-BC497350", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{9A1006D9-20C6-4F20-ACB6-4BA99E58AC85}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:33:20.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{9835DF1B-55AF-0519-33EE-082E50EDCBBD}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:33:20.000Z" color="#91BAAE"><one:Page ID="{780F86EE-1A2F-0D1E-26F3-98F689A7E92D}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{3262FF1D-8A84-048C-32B0-98D764372203}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{126D3E2E-835C-03AE-222D-5E239F850A66}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{D5326C2A-4A99-41AC-8142-5ADD9E3E10D5}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{BED7968A-7C65-4B9D-BEE2-5886090784CF}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{C59EF269-296C-4CFF-9558-30870DCEA9FE}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"/><one:Page ID="{06A17757-8599-46F8-9F2E-169F27D135BE}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{5B2D5CC4-03DF-4CFE-A1C3-2E4B63FBA14F}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:12.000Z" pageLevel="2"/><one:Page ID="{06F19E07-9915-42A1-BDE5-F6E74949FD99}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{06A17757-8599-46F8-9F2E-169F27D135BE}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{04BAEE2D-D13F-4C6D-AD11-DC90092A2B03}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{04BAEE2D-D13F-4C6D-AD11-DC90092A2B03}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{04BAEE2D-D13F-4C6D-AD11-DC90092A2B03}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{06F19E07-9915-42A1-BDE5-F6E74949FD99}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9624B5B4-982F-410E-81E0-466F60C19ED8}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9624B5B4-982F-410E-81E0-466F60C19ED8}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9624B5B4-982F-410E-81E0-466F60C19ED8}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{126D3E2E-835C-03AE-222D-5E239F850A66}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3262FF1D-8A84-048C-32B0-98D764372203}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{1D863AC6-25D1-0895-19DA-E0694851FC81}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5B2D5CC4-03DF-4CFE-A1C3-2E4B63FBA14F}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:12.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{D17929B7-E1F2-4856-8984-3119D84078EB}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{D17929B7-E1F2-4856-8984-3119D84078EB}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{D17929B7-E1F2-4856-8984-3119D84078EB}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{780F86EE-1A2F-0D1E-26F3-98F689A7E92D}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{B67AF7F5-269A-0579-0D74-C3C613D465D2}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BED7968A-7C65-4B9D-BEE2-5886090784CF}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{FB598707-7128-4E2F-AB33-E486451B947F}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2FE6B6F7-53F5-41AD-8CB7-3A622F806E83}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2FE6B6F7-53F5-41AD-8CB7-3A622F806E83}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C59EF269-296C-4CFF-9558-30870DCEA9FE}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{72E08821-81C6-431E-979A-EBB92E900AED}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{72E08821-81C6-431E-979A-EBB92E900AED}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D5326C2A-4A99-41AC-8142-5ADD9E3E10D5}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:33:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{F8CA8D9E-AC22-46DC-973C-BA9F486895AA}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B3BDA634-C41F-4A46-927C-25FFEB082494}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B3BDA634-C41F-4A46-927C-25FFEB082494}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpjja19zue", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 70296, | |
| 5 | "sha256": "8fa8fc3275cfb17da80d2f9e08baebd8c70b8489b5721460e17c771998226876", | |
| 6 | "mtime_ns": 1790522182589845898 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-06-promoted-level-two/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 73, | |
| 9 | 128, | |
| 10 | 226, | |
| 11 | 10, | |
| 12 | 127, | |
| 13 | 157, | |
| 14 | 145, | |
| 15 | 66, | |
| 16 | 185, | |
| 17 | 120, | |
| 18 | 232, | |
| 19 | 117, | |
| 20 | 193, | |
| 21 | 31, | |
| 22 | 151, | |
| 23 | 68 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [20, 1, 234, 89, 89, 254, 82, 68, 168, 79, 107, 96, 254, 118, 67, 34], n: 1 } })", | |
| 31 | "phase": "07-promoted-root", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [20, 1, 234, 89, 89, 254, 82, 68, 168, 79, 107, 96, 254, 118, 67, 34], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-90980D00 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-90980d00", "hostname": "ONE-M6-90980D00"} |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-90980D00", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{52D14DE1-5FBF-4F2F-AA9C-76A92638DC75}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:36:47.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{F7154C23-735A-021C-173A-B0093958F501}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:36:47.000Z" color="#91BAAE"><one:Page ID="{172F15D6-3CDA-0A1B-0227-20D1E012D791}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"/><one:Page ID="{5D426C25-AC71-0389-1664-20F00D821CBF}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"/><one:Page ID="{7D4DAD16-A5A9-04AB-06F9-E604F63034DA}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"/><one:Page ID="{BA12FF12-6C6C-46A9-A596-E2FAF78B2E69}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"/><one:Page ID="{D1F705B2-5A90-4C98-9A36-E0A160B2BA73}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"/><one:Page ID="{AABE6151-0F99-4BFA-B18C-88A0647B9742}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"/><one:Page ID="{6981E46F-A36C-41FD-BBFA-AEB84E640B02}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/><one:Page ID="{340DCFFC-252A-4BFB-8517-966C0A4E9FF3}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:26.000Z" pageLevel="1"/><one:Page ID="{69D10D3F-BFE0-45A4-9931-4EC020FCC325}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-000.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{172F15D6-3CDA-0A1B-0227-20D1E012D791}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{D95A64CD-006F-027C-29A0-7BE17A615B6E}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{340DCFFC-252A-4BFB-8517-966C0A4E9FF3}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:26.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{BE59BA8F-C707-4F53-AD50-893EB1F54657}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{BE59BA8F-C707-4F53-AD50-893EB1F54657}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{BE59BA8F-C707-4F53-AD50-893EB1F54657}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5D426C25-AC71-0389-1664-20F00D821CBF}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{72A6A9FE-0324-0F90-3D0E-584E21E4C23D}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{6981E46F-A36C-41FD-BBFA-AEB84E640B02}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{6B9A7D15-F7CA-4B68-89C5-64B7609F15BF}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{6B9A7D15-F7CA-4B68-89C5-64B7609F15BF}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{6B9A7D15-F7CA-4B68-89C5-64B7609F15BF}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{69D10D3F-BFE0-45A4-9931-4EC020FCC325}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{F904268C-BEDA-460B-A534-FE480974A064}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{F904268C-BEDA-460B-A534-FE480974A064}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{F904268C-BEDA-460B-A534-FE480974A064}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{7D4DAD16-A5A9-04AB-06F9-E604F63034DA}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{AABE6151-0F99-4BFA-B18C-88A0647B9742}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{1DC01B19-A733-441B-B34E-539E47253451}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{1DC01B19-A733-441B-B34E-539E47253451}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BA12FF12-6C6C-46A9-A596-E2FAF78B2E69}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{97EA1EA6-8AD7-41D9-B3E8-02B821DDAB16}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{DC9D350C-E2EA-4D43-B6A8-9DD882BD1A28}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{DC9D350C-E2EA-4D43-B6A8-9DD882BD1A28}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D1F705B2-5A90-4C98-9A36-E0A160B2BA73}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:47.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{9479143F-57DD-492A-8FE7-5CA12CAEAAC3}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{40C625CF-7500-46A8-A863-82454635503F}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{40C625CF-7500-46A8-A863-82454635503F}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpn_4nbhkc", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 72360, | |
| 5 | "sha256": "1ed669cc3afe6b391e13bab16f666b63900511499844b18e12a7e6f2abe89bad", | |
| 6 | "mtime_ns": 1790522182573809675 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-07-promoted-root/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 22, | |
| 9 | 254, | |
| 10 | 80, | |
| 11 | 182, | |
| 12 | 231, | |
| 13 | 93, | |
| 14 | 89, | |
| 15 | 72, | |
| 16 | 151, | |
| 17 | 171, | |
| 18 | 141, | |
| 19 | 14, | |
| 20 | 152, | |
| 21 | 171, | |
| 22 | 237, | |
| 23 | 165 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [153, 10, 0, 185, 105, 82, 19, 78, 149, 135, 202, 5, 72, 113, 230, 157], n: 1 } })", | |
| 31 | "phase": "08-collapsed-group-move", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [153, 10, 0, 185, 105, 82, 19, 78, 149, 135, 202, 5, 72, 113, 230, 157], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-FADEB6C0 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-fadeb6c0", "hostname": "ONE-M6-FADEB6C0"} |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-FADEB6C0", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{9464F45B-94BB-48C8-8DCA-AE302DDEC667}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:36:49.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{BDAE62B7-3C09-0F9F-28E4-14E6B245F6FB}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:36:49.000Z" color="#91BAAE"><one:Page ID="{7EB6E168-6A79-4678-BAC9-328381539C09}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:26.000Z" pageLevel="1"/><one:Page ID="{236A23AB-F0B3-4827-A6EF-EA2FABE1C0DF}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="3"/><one:Page ID="{5D943B42-7389-0798-3DF9-843E6B0FD46B}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"/><one:Page ID="{17F942B1-E322-0E0A-29BA-841F869F1F45}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"/><one:Page ID="{37F68382-EAFA-0928-3927-42EB7D2D3720}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"/><one:Page ID="{F0A9D186-233F-4B2A-9A48-46157C962D93}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"/><one:Page ID="{9B4C2B26-15C3-411B-A5E8-444EEBAFB989}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"/><one:Page ID="{E0054FC5-40CA-4679-8E52-2C4FEF6694B8}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"/><one:Page ID="{233ACAFB-EC3F-4C7E-8424-0A57C57908F8}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-000.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{17F942B1-E322-0E0A-29BA-841F869F1F45}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{381D876A-4C77-0213-02D0-FCA1AAF9C1C7}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{233ACAFB-EC3F-4C7E-8424-0A57C57908F8}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:25.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T06:03:08.000Z" objectID="{21215381-B899-46EB-B61B-C058EB821645}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{21215381-B899-46EB-B61B-C058EB821645}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{21215381-B899-46EB-B61B-C058EB821645}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{236A23AB-F0B3-4827-A6EF-EA2FABE1C0DF}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B3BF0818-F189-4B88-9AEA-5AA78269A39E}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B3BF0818-F189-4B88-9AEA-5AA78269A39E}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B3BF0818-F189-4B88-9AEA-5AA78269A39E}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{37F68382-EAFA-0928-3927-42EB7D2D3720}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5D943B42-7389-0798-3DF9-843E6B0FD46B}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{93E14A59-4F3C-0FFF-167E-DF0EF17C5894}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{7EB6E168-6A79-4678-BAC9-328381539C09}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:04:26.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{F4E2941B-8854-42D0-928E-2DD13AE845AD}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{F4E2941B-8854-42D0-928E-2DD13AE845AD}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T06:03:46.000Z" objectID="{F4E2941B-8854-42D0-928E-2DD13AE845AD}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9B4C2B26-15C3-411B-A5E8-444EEBAFB989}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{DEC23AAB-188E-44A9-B039-F84EA7B3A939}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0A7D0B5B-3A53-4B2B-97BD-26AACD2853C5}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0A7D0B5B-3A53-4B2B-97BD-26AACD2853C5}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E0054FC5-40CA-4679-8E52-2C4FEF6694B8}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{577B358D-E860-4998-8C90-F771CC3837AB}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{577B358D-E860-4998-8C90-F771CC3837AB}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F0A9D186-233F-4B2A-9A48-46157C962D93}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:49.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{DD513032-C584-4C5A-8C36-A657AAC0A8EC}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{96261B98-ADB9-40C0-8976-393709A019D2}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{96261B98-ADB9-40C0-8976-393709A019D2}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp3g6qdqvi", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 73840, | |
| 5 | "sha256": "18ac2501a9fd0d09d043b23d41f6d3a04a47c3866f9fd8114c2a76c773d71fcd", | |
| 6 | "mtime_ns": 1790522182570877495 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-08-collapsed-group-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/indent-single-page/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-single-page/candidate/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-single-page/candidate/manifest.json created+35| ... | ... | @@ -0,0 +1,35 @@ |
| 1 | { | |
| 2 | "confirmations": 0, | |
| 3 | "conflict": true, | |
| 4 | "mode": "indent", | |
| 5 | "original": [ | |
| 6 | { | |
| 7 | "guid": [ | |
| 8 | 5, | |
| 9 | 235, | |
| 10 | 87, | |
| 11 | 66, | |
| 12 | 187, | |
| 13 | 139, | |
| 14 | 97, | |
| 15 | 68, | |
| 16 | 186, | |
| 17 | 227, | |
| 18 | 174, | |
| 19 | 187, | |
| 20 | 142, | |
| 21 | 150, | |
| 22 | 54, | |
| 23 | 216 | |
| 24 | ], | |
| 25 | "level": 3, | |
| 26 | "position": "Keep", | |
| 27 | "space": "{D7B1788B-A971-08DE-3324-F4DF82A3B46E},1" | |
| 28 | } | |
| 29 | ], | |
| 30 | "page_receipt": "Some(Published { revision: ExGuid { guid: [141, 54, 145, 86, 191, 101, 228, 72, 142, 5, 46, 211, 83, 3, 119, 106], n: 1 } })", | |
| 31 | "phase": "single-page", | |
| 32 | "publications": 1, | |
| 33 | "reviewed": [], | |
| 34 | "text_receipt": "Some(Published { revision: ExGuid { guid: [141, 54, 145, 86, 191, 101, 228, 72, 142, 5, 46, 211, 83, 3, 119, 106], n: 1 } })" | |
| 35 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-B0D47B05 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-b0d47b05", "hostname": "ONE-M6-B0D47B05"} |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-B0D47B05", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{38679D2F-552A-4019-AF83-685AE597E427}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:36:57.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{921A7E3C-CF2C-00BC-278B-3F5750EC3E97}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:36:57.000Z" color="#91BAAE"><one:Page ID="{722027C9-80AC-08BB-3296-AF8F89A61C07}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"/><one:Page ID="{384D5E3A-1007-0129-26D5-AFAE6436D729}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"/><one:Page ID="{18429F09-19DF-060B-3648-695A9F84FF4C}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"/><one:Page ID="{5102FDE3-995C-495B-B5A6-193263FA5465}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="2"/><one:Page ID="{0CDE3F20-0396-4704-A980-C19E494808B3}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="3"/><one:Page ID="{DF1DCD0D-D01A-4409-9527-6DA49E3FE5FF}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"/><one:Page ID="{B4F837AD-E6E6-4E38-AA87-6FFF090671E5}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"/><one:Page ID="{CFB1534E-B3EF-495A-813D-07FE0DCF5CD4}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"/><one:Page ID="{0C8ED670-1F1A-435D-8B4B-21E627D0C094}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T05:49:01.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0C8ED670-1F1A-435D-8B4B-21E627D0C094}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T05:49:01.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T05:48:48.000Z" objectID="{0E954F0A-4BBC-49C8-B974-EBE9092BDE29}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{0E954F0A-4BBC-49C8-B974-EBE9092BDE29}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="192.0257415771484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:05:58.000Z" objectID="{0E954F0A-4BBC-49C8-B974-EBE9092BDE29}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Offline Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0CDE3F20-0396-4704-A980-C19E494808B3}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9C0B1493-02AC-44AB-9585-711660C06BF2}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9C0B1493-02AC-44AB-9585-711660C06BF2}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9C0B1493-02AC-44AB-9585-711660C06BF2}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{18429F09-19DF-060B-3648-695A9F84FF4C}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{384D5E3A-1007-0129-26D5-AFAE6436D729}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{17A99BE1-BF52-0D30-0DBF-D710485009AB}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5102FDE3-995C-495B-B5A6-193263FA5465}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{DB568890-7B71-4DF3-9DE1-0660D8418DC1}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{DB568890-7B71-4DF3-9DE1-0660D8418DC1}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{DB568890-7B71-4DF3-9DE1-0660D8418DC1}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{722027C9-80AC-08BB-3296-AF8F89A61C07}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{BC5556D2-BC19-00DC-1911-F4BF13D590F8}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B4F837AD-E6E6-4E38-AA87-6FFF090671E5}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{F1762620-EBAB-4B8A-BF56-D3FF451A6155}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{25C917D0-C976-4408-98D2-0D1B2F819BA9}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{25C917D0-C976-4408-98D2-0D1B2F819BA9}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{CFB1534E-B3EF-495A-813D-07FE0DCF5CD4}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{78CF2906-1B45-46BB-83FF-DCC02E91FFC7}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{78CF2906-1B45-46BB-83FF-DCC02E91FFC7}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{DF1DCD0D-D01A-4409-9527-6DA49E3FE5FF}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:36:57.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{F2E52CB9-36A1-4379-8359-8DE648696080}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B9920713-5E9C-4FE3-8619-1286EB09D1BE}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B9920713-5E9C-4FE3-8619-1286EB09D1BE}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp7q_s9zzh", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 63080, | |
| 5 | "sha256": "81f1eecbaee6e55e8a6c3af4eb875fe943ab387e7b1e0c6ea76a32d7ed01d5b8", | |
| 6 | "mtime_ns": 1790522182589020156 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/indent-single-page/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/offline-edits-series/provenance.json created+674| ... | ... | @@ -0,0 +1,674 @@ |
| 1 | { | |
| 2 | "generator": [ | |
| 3 | "crates/notebook/tests/sync_pages.rs::native_page_changes_reconcile_with_atomic_offline_batches", | |
| 4 | "crates/notebook/tests/sync_pages.rs::twelve_disjoint_page_batches_merge_with_dependent_bodies_without_review" | |
| 5 | ], | |
| 6 | "evidence": "evidence/series", | |
| 7 | "cold": { | |
| 8 | "group-01-demoted-parent": { | |
| 9 | "run": { | |
| 10 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpxbgzk4zk", | |
| 11 | "expected_pages": 9, | |
| 12 | "author": null, | |
| 13 | "author_timeout_seconds": 600, | |
| 14 | "inspect": false, | |
| 15 | "collect_notebook": true, | |
| 16 | "base": { | |
| 17 | "file": "win7-office-base.qcow2", | |
| 18 | "format": "qcow2", | |
| 19 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 20 | "virtual_size": 68719476736 | |
| 21 | }, | |
| 22 | "scripts": { | |
| 23 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 24 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 25 | } | |
| 26 | }, | |
| 27 | "machine": { | |
| 28 | "name": "m6-228507e9", | |
| 29 | "hostname": "ONE-M6-228507E9" | |
| 30 | }, | |
| 31 | "teardown": { | |
| 32 | "absent": true | |
| 33 | }, | |
| 34 | "source": [ | |
| 35 | { | |
| 36 | "path": "Lifecycle.one", | |
| 37 | "bytes": 58888, | |
| 38 | "sha256": "9a3b4662022dc604139192a1ce6e89e0a86fb2f4f28d612d0b21fc39cbb0321b", | |
| 39 | "mtime_ns": 1790522182582306261 | |
| 40 | } | |
| 41 | ] | |
| 42 | }, | |
| 43 | "group-02-promoted-parent": { | |
| 44 | "run": { | |
| 45 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp2tw32xod", | |
| 46 | "expected_pages": 9, | |
| 47 | "author": null, | |
| 48 | "author_timeout_seconds": 600, | |
| 49 | "inspect": false, | |
| 50 | "collect_notebook": true, | |
| 51 | "base": { | |
| 52 | "file": "win7-office-base.qcow2", | |
| 53 | "format": "qcow2", | |
| 54 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 55 | "virtual_size": 68719476736 | |
| 56 | }, | |
| 57 | "scripts": { | |
| 58 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 59 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 60 | } | |
| 61 | }, | |
| 62 | "machine": { | |
| 63 | "name": "m6-59e6b833", | |
| 64 | "hostname": "ONE-M6-59E6B833" | |
| 65 | }, | |
| 66 | "teardown": { | |
| 67 | "absent": true | |
| 68 | }, | |
| 69 | "source": [ | |
| 70 | { | |
| 71 | "path": "Lifecycle.one", | |
| 72 | "bytes": 60864, | |
| 73 | "sha256": "dac0d3baff9cba15171a7a49ad5e3fe5ae4f1d9486a282f73eca7bf12a4302cf", | |
| 74 | "mtime_ns": 1790522182571809194 | |
| 75 | } | |
| 76 | ] | |
| 77 | }, | |
| 78 | "group-03-selected-group-move": { | |
| 79 | "run": { | |
| 80 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpqu8gvf97", | |
| 81 | "expected_pages": 9, | |
| 82 | "author": null, | |
| 83 | "author_timeout_seconds": 600, | |
| 84 | "inspect": false, | |
| 85 | "collect_notebook": true, | |
| 86 | "base": { | |
| 87 | "file": "win7-office-base.qcow2", | |
| 88 | "format": "qcow2", | |
| 89 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 90 | "virtual_size": 68719476736 | |
| 91 | }, | |
| 92 | "scripts": { | |
| 93 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 94 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 95 | } | |
| 96 | }, | |
| 97 | "machine": { | |
| 98 | "name": "m6-2f0cfd28", | |
| 99 | "hostname": "ONE-M6-2F0CFD28" | |
| 100 | }, | |
| 101 | "teardown": { | |
| 102 | "absent": true | |
| 103 | }, | |
| 104 | "source": [ | |
| 105 | { | |
| 106 | "path": "Lifecycle.one", | |
| 107 | "bytes": 62448, | |
| 108 | "sha256": "e8227277e0b943d76ff7f1317a204bc1c90d83edb14d57c1e4fc4b6025572d5a", | |
| 109 | "mtime_ns": 1790522182601367622 | |
| 110 | } | |
| 111 | ] | |
| 112 | }, | |
| 113 | "group-04-subpage-move": { | |
| 114 | "run": { | |
| 115 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp6no75z1i", | |
| 116 | "expected_pages": 9, | |
| 117 | "author": null, | |
| 118 | "author_timeout_seconds": 600, | |
| 119 | "inspect": false, | |
| 120 | "collect_notebook": true, | |
| 121 | "base": { | |
| 122 | "file": "win7-office-base.qcow2", | |
| 123 | "format": "qcow2", | |
| 124 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 125 | "virtual_size": 68719476736 | |
| 126 | }, | |
| 127 | "scripts": { | |
| 128 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 129 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 130 | } | |
| 131 | }, | |
| 132 | "machine": { | |
| 133 | "name": "m6-1f7db150", | |
| 134 | "hostname": "ONE-M6-1F7DB150" | |
| 135 | }, | |
| 136 | "teardown": { | |
| 137 | "absent": true | |
| 138 | }, | |
| 139 | "source": [ | |
| 140 | { | |
| 141 | "path": "Lifecycle.one", | |
| 142 | "bytes": 65000, | |
| 143 | "sha256": "44eca1c10b54a10f3b8d08487d222d94aaac3b9a28f6b6f52ffd5d0d702aaf63", | |
| 144 | "mtime_ns": 1790522182581472144 | |
| 145 | } | |
| 146 | ] | |
| 147 | }, | |
| 148 | "group-05-insert-before-subpage": { | |
| 149 | "run": { | |
| 150 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpy26z3j6d", | |
| 151 | "expected_pages": 9, | |
| 152 | "author": null, | |
| 153 | "author_timeout_seconds": 600, | |
| 154 | "inspect": false, | |
| 155 | "collect_notebook": true, | |
| 156 | "base": { | |
| 157 | "file": "win7-office-base.qcow2", | |
| 158 | "format": "qcow2", | |
| 159 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 160 | "virtual_size": 68719476736 | |
| 161 | }, | |
| 162 | "scripts": { | |
| 163 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 164 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 165 | } | |
| 166 | }, | |
| 167 | "machine": { | |
| 168 | "name": "m6-4a72e5a4", | |
| 169 | "hostname": "ONE-M6-4A72E5A4" | |
| 170 | }, | |
| 171 | "teardown": { | |
| 172 | "absent": true | |
| 173 | }, | |
| 174 | "source": [ | |
| 175 | { | |
| 176 | "path": "Lifecycle.one", | |
| 177 | "bytes": 66944, | |
| 178 | "sha256": "2f144e06946d6424cb548a4b51fdd58c2be2be35fb93ddb8f80808dce7ef8ed8", | |
| 179 | "mtime_ns": 1790522182575647033 | |
| 180 | } | |
| 181 | ] | |
| 182 | }, | |
| 183 | "group-06-promoted-level-two": { | |
| 184 | "run": { | |
| 185 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp7i0tqm4j", | |
| 186 | "expected_pages": 9, | |
| 187 | "author": null, | |
| 188 | "author_timeout_seconds": 600, | |
| 189 | "inspect": false, | |
| 190 | "collect_notebook": true, | |
| 191 | "base": { | |
| 192 | "file": "win7-office-base.qcow2", | |
| 193 | "format": "qcow2", | |
| 194 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 195 | "virtual_size": 68719476736 | |
| 196 | }, | |
| 197 | "scripts": { | |
| 198 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 199 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 200 | } | |
| 201 | }, | |
| 202 | "machine": { | |
| 203 | "name": "m6-2d9428ea", | |
| 204 | "hostname": "ONE-M6-2D9428EA" | |
| 205 | }, | |
| 206 | "teardown": { | |
| 207 | "absent": true | |
| 208 | }, | |
| 209 | "source": [ | |
| 210 | { | |
| 211 | "path": "Lifecycle.one", | |
| 212 | "bytes": 70296, | |
| 213 | "sha256": "30860c7715ac247a1f77d1d0c8c27edfcc248e719183cb7990381f5ad5230d89", | |
| 214 | "mtime_ns": 1790522182588156289 | |
| 215 | } | |
| 216 | ] | |
| 217 | }, | |
| 218 | "group-07-promoted-root": { | |
| 219 | "run": { | |
| 220 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpfsvvpr33", | |
| 221 | "expected_pages": 9, | |
| 222 | "author": null, | |
| 223 | "author_timeout_seconds": 600, | |
| 224 | "inspect": false, | |
| 225 | "collect_notebook": true, | |
| 226 | "base": { | |
| 227 | "file": "win7-office-base.qcow2", | |
| 228 | "format": "qcow2", | |
| 229 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 230 | "virtual_size": 68719476736 | |
| 231 | }, | |
| 232 | "scripts": { | |
| 233 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 234 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 235 | } | |
| 236 | }, | |
| 237 | "machine": { | |
| 238 | "name": "m6-a2c6ce60", | |
| 239 | "hostname": "ONE-M6-A2C6CE60" | |
| 240 | }, | |
| 241 | "teardown": { | |
| 242 | "absent": true | |
| 243 | }, | |
| 244 | "source": [ | |
| 245 | { | |
| 246 | "path": "Lifecycle.one", | |
| 247 | "bytes": 72360, | |
| 248 | "sha256": "550991e8db44ff19e287605df0548e26e03d5f4b02ea3c56b37206fd4a122974", | |
| 249 | "mtime_ns": 1790522182583277710 | |
| 250 | } | |
| 251 | ] | |
| 252 | }, | |
| 253 | "group-08-collapsed-group-move": { | |
| 254 | "run": { | |
| 255 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpfwhuw46n", | |
| 256 | "expected_pages": 9, | |
| 257 | "author": null, | |
| 258 | "author_timeout_seconds": 600, | |
| 259 | "inspect": false, | |
| 260 | "collect_notebook": true, | |
| 261 | "base": { | |
| 262 | "file": "win7-office-base.qcow2", | |
| 263 | "format": "qcow2", | |
| 264 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 265 | "virtual_size": 68719476736 | |
| 266 | }, | |
| 267 | "scripts": { | |
| 268 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 269 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 270 | } | |
| 271 | }, | |
| 272 | "machine": { | |
| 273 | "name": "m6-150cfda8", | |
| 274 | "hostname": "ONE-M6-150CFDA8" | |
| 275 | }, | |
| 276 | "teardown": { | |
| 277 | "absent": true | |
| 278 | }, | |
| 279 | "source": [ | |
| 280 | { | |
| 281 | "path": "Lifecycle.one", | |
| 282 | "bytes": 73840, | |
| 283 | "sha256": "b68abccdc4c7c98c65311b2924f3903540b22c7f6e0bb8153b31bbe34fdf2c05", | |
| 284 | "mtime_ns": 1790522182560292804 | |
| 285 | } | |
| 286 | ] | |
| 287 | }, | |
| 288 | "group-single-page": { | |
| 289 | "run": { | |
| 290 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp3_04860j", | |
| 291 | "expected_pages": 9, | |
| 292 | "author": null, | |
| 293 | "author_timeout_seconds": 600, | |
| 294 | "inspect": false, | |
| 295 | "collect_notebook": true, | |
| 296 | "base": { | |
| 297 | "file": "win7-office-base.qcow2", | |
| 298 | "format": "qcow2", | |
| 299 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 300 | "virtual_size": 68719476736 | |
| 301 | }, | |
| 302 | "scripts": { | |
| 303 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 304 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 305 | } | |
| 306 | }, | |
| 307 | "machine": { | |
| 308 | "name": "m6-93a16790", | |
| 309 | "hostname": "ONE-M6-93A16790" | |
| 310 | }, | |
| 311 | "teardown": { | |
| 312 | "absent": true | |
| 313 | }, | |
| 314 | "source": [ | |
| 315 | { | |
| 316 | "path": "Lifecycle.one", | |
| 317 | "bytes": 63080, | |
| 318 | "sha256": "58f87ab34c5e56426faed56429ab10a15e3df0673851e8c9b4587cb107a13295", | |
| 319 | "mtime_ns": 1790522182573126515 | |
| 320 | } | |
| 321 | ] | |
| 322 | }, | |
| 323 | "indent-01-demoted-parent": { | |
| 324 | "run": { | |
| 325 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmppgtomrlh", | |
| 326 | "expected_pages": 9, | |
| 327 | "author": null, | |
| 328 | "author_timeout_seconds": 600, | |
| 329 | "inspect": false, | |
| 330 | "collect_notebook": true, | |
| 331 | "base": { | |
| 332 | "file": "win7-office-base.qcow2", | |
| 333 | "format": "qcow2", | |
| 334 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 335 | "virtual_size": 68719476736 | |
| 336 | }, | |
| 337 | "scripts": { | |
| 338 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 339 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 340 | } | |
| 341 | }, | |
| 342 | "machine": { | |
| 343 | "name": "m6-2b44159d", | |
| 344 | "hostname": "ONE-M6-2B44159D" | |
| 345 | }, | |
| 346 | "teardown": { | |
| 347 | "absent": true | |
| 348 | }, | |
| 349 | "source": [ | |
| 350 | { | |
| 351 | "path": "Lifecycle.one", | |
| 352 | "bytes": 58888, | |
| 353 | "sha256": "c19272d0b0a52889647b23a6eb10381e7d90d5d5d7ca2ad3be868aa585a8b21c", | |
| 354 | "mtime_ns": 1790522182595778175 | |
| 355 | } | |
| 356 | ] | |
| 357 | }, | |
| 358 | "indent-02-promoted-parent": { | |
| 359 | "run": { | |
| 360 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpsa22lkkc", | |
| 361 | "expected_pages": 9, | |
| 362 | "author": null, | |
| 363 | "author_timeout_seconds": 600, | |
| 364 | "inspect": false, | |
| 365 | "collect_notebook": true, | |
| 366 | "base": { | |
| 367 | "file": "win7-office-base.qcow2", | |
| 368 | "format": "qcow2", | |
| 369 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 370 | "virtual_size": 68719476736 | |
| 371 | }, | |
| 372 | "scripts": { | |
| 373 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 374 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 375 | } | |
| 376 | }, | |
| 377 | "machine": { | |
| 378 | "name": "m6-3f9d5e9e", | |
| 379 | "hostname": "ONE-M6-3F9D5E9E" | |
| 380 | }, | |
| 381 | "teardown": { | |
| 382 | "absent": true | |
| 383 | }, | |
| 384 | "source": [ | |
| 385 | { | |
| 386 | "path": "Lifecycle.one", | |
| 387 | "bytes": 60864, | |
| 388 | "sha256": "02983cdd10e8f6ac52dfdd27ef63858d4d3351c2c78822c0f5c20794298fb0ca", | |
| 389 | "mtime_ns": 1790522182572487438 | |
| 390 | } | |
| 391 | ] | |
| 392 | }, | |
| 393 | "indent-03-selected-group-move": { | |
| 394 | "run": { | |
| 395 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpb5gki0t4", | |
| 396 | "expected_pages": 9, | |
| 397 | "author": null, | |
| 398 | "author_timeout_seconds": 600, | |
| 399 | "inspect": false, | |
| 400 | "collect_notebook": true, | |
| 401 | "base": { | |
| 402 | "file": "win7-office-base.qcow2", | |
| 403 | "format": "qcow2", | |
| 404 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 405 | "virtual_size": 68719476736 | |
| 406 | }, | |
| 407 | "scripts": { | |
| 408 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 409 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 410 | } | |
| 411 | }, | |
| 412 | "machine": { | |
| 413 | "name": "m6-6def4909", | |
| 414 | "hostname": "ONE-M6-6DEF4909" | |
| 415 | }, | |
| 416 | "teardown": { | |
| 417 | "absent": true | |
| 418 | }, | |
| 419 | "source": [ | |
| 420 | { | |
| 421 | "path": "Lifecycle.one", | |
| 422 | "bytes": 62448, | |
| 423 | "sha256": "62f0d051077351cfee81931153467cbf510700e94b46347a78e287801943f37c", | |
| 424 | "mtime_ns": 1790522182574538544 | |
| 425 | } | |
| 426 | ] | |
| 427 | }, | |
| 428 | "indent-04-subpage-move": { | |
| 429 | "run": { | |
| 430 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmplfmc8y5c", | |
| 431 | "expected_pages": 9, | |
| 432 | "author": null, | |
| 433 | "author_timeout_seconds": 600, | |
| 434 | "inspect": false, | |
| 435 | "collect_notebook": true, | |
| 436 | "base": { | |
| 437 | "file": "win7-office-base.qcow2", | |
| 438 | "format": "qcow2", | |
| 439 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 440 | "virtual_size": 68719476736 | |
| 441 | }, | |
| 442 | "scripts": { | |
| 443 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 444 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 445 | } | |
| 446 | }, | |
| 447 | "machine": { | |
| 448 | "name": "m6-3cf1ad85", | |
| 449 | "hostname": "ONE-M6-3CF1AD85" | |
| 450 | }, | |
| 451 | "teardown": { | |
| 452 | "absent": true | |
| 453 | }, | |
| 454 | "source": [ | |
| 455 | { | |
| 456 | "path": "Lifecycle.one", | |
| 457 | "bytes": 65000, | |
| 458 | "sha256": "e61b424191b7ddde476e498953e5fedb01566f5fdcf5ec5ad85b75dc81ae4b81", | |
| 459 | "mtime_ns": 1790522182580783526 | |
| 460 | } | |
| 461 | ] | |
| 462 | }, | |
| 463 | "indent-05-insert-before-subpage": { | |
| 464 | "run": { | |
| 465 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp3bp2l4t4", | |
| 466 | "expected_pages": 9, | |
| 467 | "author": null, | |
| 468 | "author_timeout_seconds": 600, | |
| 469 | "inspect": false, | |
| 470 | "collect_notebook": true, | |
| 471 | "base": { | |
| 472 | "file": "win7-office-base.qcow2", | |
| 473 | "format": "qcow2", | |
| 474 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 475 | "virtual_size": 68719476736 | |
| 476 | }, | |
| 477 | "scripts": { | |
| 478 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 479 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 480 | } | |
| 481 | }, | |
| 482 | "machine": { | |
| 483 | "name": "m6-c302208f", | |
| 484 | "hostname": "ONE-M6-C302208F" | |
| 485 | }, | |
| 486 | "teardown": { | |
| 487 | "absent": true | |
| 488 | }, | |
| 489 | "source": [ | |
| 490 | { | |
| 491 | "path": "Lifecycle.one", | |
| 492 | "bytes": 66944, | |
| 493 | "sha256": "b1f5d19ffee4ff89ab2a14066a729b5585179339be2b18227f92c0bf2b44c42e", | |
| 494 | "mtime_ns": 1790522182565951458 | |
| 495 | } | |
| 496 | ] | |
| 497 | }, | |
| 498 | "indent-06-promoted-level-two": { | |
| 499 | "run": { | |
| 500 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpjja19zue", | |
| 501 | "expected_pages": 9, | |
| 502 | "author": null, | |
| 503 | "author_timeout_seconds": 600, | |
| 504 | "inspect": false, | |
| 505 | "collect_notebook": true, | |
| 506 | "base": { | |
| 507 | "file": "win7-office-base.qcow2", | |
| 508 | "format": "qcow2", | |
| 509 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 510 | "virtual_size": 68719476736 | |
| 511 | }, | |
| 512 | "scripts": { | |
| 513 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 514 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 515 | } | |
| 516 | }, | |
| 517 | "machine": { | |
| 518 | "name": "m6-bc497350", | |
| 519 | "hostname": "ONE-M6-BC497350" | |
| 520 | }, | |
| 521 | "teardown": { | |
| 522 | "absent": true | |
| 523 | }, | |
| 524 | "source": [ | |
| 525 | { | |
| 526 | "path": "Lifecycle.one", | |
| 527 | "bytes": 70296, | |
| 528 | "sha256": "8fa8fc3275cfb17da80d2f9e08baebd8c70b8489b5721460e17c771998226876", | |
| 529 | "mtime_ns": 1790522182589845898 | |
| 530 | } | |
| 531 | ] | |
| 532 | }, | |
| 533 | "indent-07-promoted-root": { | |
| 534 | "run": { | |
| 535 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpn_4nbhkc", | |
| 536 | "expected_pages": 9, | |
| 537 | "author": null, | |
| 538 | "author_timeout_seconds": 600, | |
| 539 | "inspect": false, | |
| 540 | "collect_notebook": true, | |
| 541 | "base": { | |
| 542 | "file": "win7-office-base.qcow2", | |
| 543 | "format": "qcow2", | |
| 544 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 545 | "virtual_size": 68719476736 | |
| 546 | }, | |
| 547 | "scripts": { | |
| 548 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 549 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 550 | } | |
| 551 | }, | |
| 552 | "machine": { | |
| 553 | "name": "m6-90980d00", | |
| 554 | "hostname": "ONE-M6-90980D00" | |
| 555 | }, | |
| 556 | "teardown": { | |
| 557 | "absent": true | |
| 558 | }, | |
| 559 | "source": [ | |
| 560 | { | |
| 561 | "path": "Lifecycle.one", | |
| 562 | "bytes": 72360, | |
| 563 | "sha256": "1ed669cc3afe6b391e13bab16f666b63900511499844b18e12a7e6f2abe89bad", | |
| 564 | "mtime_ns": 1790522182573809675 | |
| 565 | } | |
| 566 | ] | |
| 567 | }, | |
| 568 | "indent-08-collapsed-group-move": { | |
| 569 | "run": { | |
| 570 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp3g6qdqvi", | |
| 571 | "expected_pages": 9, | |
| 572 | "author": null, | |
| 573 | "author_timeout_seconds": 600, | |
| 574 | "inspect": false, | |
| 575 | "collect_notebook": true, | |
| 576 | "base": { | |
| 577 | "file": "win7-office-base.qcow2", | |
| 578 | "format": "qcow2", | |
| 579 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 580 | "virtual_size": 68719476736 | |
| 581 | }, | |
| 582 | "scripts": { | |
| 583 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 584 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 585 | } | |
| 586 | }, | |
| 587 | "machine": { | |
| 588 | "name": "m6-fadeb6c0", | |
| 589 | "hostname": "ONE-M6-FADEB6C0" | |
| 590 | }, | |
| 591 | "teardown": { | |
| 592 | "absent": true | |
| 593 | }, | |
| 594 | "source": [ | |
| 595 | { | |
| 596 | "path": "Lifecycle.one", | |
| 597 | "bytes": 73840, | |
| 598 | "sha256": "18ac2501a9fd0d09d043b23d41f6d3a04a47c3866f9fd8114c2a76c773d71fcd", | |
| 599 | "mtime_ns": 1790522182570877495 | |
| 600 | } | |
| 601 | ] | |
| 602 | }, | |
| 603 | "indent-single-page": { | |
| 604 | "run": { | |
| 605 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp7q_s9zzh", | |
| 606 | "expected_pages": 9, | |
| 607 | "author": null, | |
| 608 | "author_timeout_seconds": 600, | |
| 609 | "inspect": false, | |
| 610 | "collect_notebook": true, | |
| 611 | "base": { | |
| 612 | "file": "win7-office-base.qcow2", | |
| 613 | "format": "qcow2", | |
| 614 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 615 | "virtual_size": 68719476736 | |
| 616 | }, | |
| 617 | "scripts": { | |
| 618 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 619 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 620 | } | |
| 621 | }, | |
| 622 | "machine": { | |
| 623 | "name": "m6-b0d47b05", | |
| 624 | "hostname": "ONE-M6-B0D47B05" | |
| 625 | }, | |
| 626 | "teardown": { | |
| 627 | "absent": true | |
| 628 | }, | |
| 629 | "source": [ | |
| 630 | { | |
| 631 | "path": "Lifecycle.one", | |
| 632 | "bytes": 63080, | |
| 633 | "sha256": "81f1eecbaee6e55e8a6c3af4eb875fe943ab387e7b1e0c6ea76a32d7ed01d5b8", | |
| 634 | "mtime_ns": 1790522182589020156 | |
| 635 | } | |
| 636 | ] | |
| 637 | }, | |
| 638 | "twelve-clients": { | |
| 639 | "run": { | |
| 640 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpqs9m09lz", | |
| 641 | "expected_pages": 37, | |
| 642 | "author": null, | |
| 643 | "author_timeout_seconds": 600, | |
| 644 | "inspect": false, | |
| 645 | "collect_notebook": true, | |
| 646 | "base": { | |
| 647 | "file": "win7-office-base.qcow2", | |
| 648 | "format": "qcow2", | |
| 649 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 650 | "virtual_size": 68719476736 | |
| 651 | }, | |
| 652 | "scripts": { | |
| 653 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 654 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 655 | } | |
| 656 | }, | |
| 657 | "machine": { | |
| 658 | "name": "m6-d9f15303", | |
| 659 | "hostname": "ONE-M6-D9F15303" | |
| 660 | }, | |
| 661 | "teardown": { | |
| 662 | "absent": true | |
| 663 | }, | |
| 664 | "source": [ | |
| 665 | { | |
| 666 | "path": "pages.one", | |
| 667 | "bytes": 159240, | |
| 668 | "sha256": "dba31b100d591e034dd53a5eaca768b2d104c6c7e005c1ab9d3fee9a9791bcfd", | |
| 669 | "mtime_ns": 1790522182609793250 | |
| 670 | } | |
| 671 | ] | |
| 672 | } | |
| 673 | } | |
| 674 | } |
corpus/page-lifecycle/offline-edits-series/twelve-clients/candidate/manifest.json created+2304| ... | ... | @@ -0,0 +1,2304 @@ |
| 1 | { | |
| 2 | "expected_order": [ | |
| 3 | [ | |
| 4 | "{7F455609-2BEF-4BCB-A94A-0FEECE61F2D1},1", | |
| 5 | 1 | |
| 6 | ], | |
| 7 | [ | |
| 8 | "{B9E9B75B-7B33-4C60-A3D1-0BE78F314485},1", | |
| 9 | 1 | |
| 10 | ], | |
| 11 | [ | |
| 12 | "{C4B5EAED-3ABF-4B34-A1B5-06C8A6E2259F},1", | |
| 13 | 1 | |
| 14 | ], | |
| 15 | [ | |
| 16 | "{1C26F613-1AD8-417F-837C-6A2EB606D092},1", | |
| 17 | 2 | |
| 18 | ], | |
| 19 | [ | |
| 20 | "{F31C990F-D1E1-4840-BB4F-46ED372732A9},1", | |
| 21 | 1 | |
| 22 | ], | |
| 23 | [ | |
| 24 | "{021A914B-C467-4FDE-BF44-B4D695410F0B},1", | |
| 25 | 1 | |
| 26 | ], | |
| 27 | [ | |
| 28 | "{B0559E07-BA1D-4B20-B7AA-906C04AA5DFE},1", | |
| 29 | 2 | |
| 30 | ], | |
| 31 | [ | |
| 32 | "{544121FD-0E61-4A76-8191-A02ABA23A314},1", | |
| 33 | 1 | |
| 34 | ], | |
| 35 | [ | |
| 36 | "{4A597354-6867-49AB-B740-4C1E39E40E2E},1", | |
| 37 | 1 | |
| 38 | ], | |
| 39 | [ | |
| 40 | "{7F7E3DAF-B98B-4BBD-9EB2-4534A3C74123},1", | |
| 41 | 2 | |
| 42 | ], | |
| 43 | [ | |
| 44 | "{303BACE6-CEFC-4107-AC1E-D6F3BBC7D1AE},1", | |
| 45 | 1 | |
| 46 | ], | |
| 47 | [ | |
| 48 | "{8D4454DE-21E6-49FB-9438-B48408E348E4},1", | |
| 49 | 1 | |
| 50 | ], | |
| 51 | [ | |
| 52 | "{214F33C4-3F0A-4CEF-9BC9-F8D69687830E},1", | |
| 53 | 2 | |
| 54 | ], | |
| 55 | [ | |
| 56 | "{CE4D4557-358A-4401-8426-C7C794F5F2BE},1", | |
| 57 | 1 | |
| 58 | ], | |
| 59 | [ | |
| 60 | "{64E10720-B6D7-46D7-B810-BA636020102D},1", | |
| 61 | 1 | |
| 62 | ], | |
| 63 | [ | |
| 64 | "{FF359729-6EDF-4577-A968-7774CD55FB52},1", | |
| 65 | 2 | |
| 66 | ], | |
| 67 | [ | |
| 68 | "{3E3C7041-7C7E-4104-8755-CE045D331F8F},1", | |
| 69 | 1 | |
| 70 | ], | |
| 71 | [ | |
| 72 | "{3DDB5E8B-3245-43D0-B001-93E5BC5C8374},1", | |
| 73 | 1 | |
| 74 | ], | |
| 75 | [ | |
| 76 | "{7B267536-B0AE-4744-B0E4-C5628174834D},1", | |
| 77 | 2 | |
| 78 | ], | |
| 79 | [ | |
| 80 | "{1F097AAE-D72E-4A7A-8359-6DCE136F0E21},1", | |
| 81 | 1 | |
| 82 | ], | |
| 83 | [ | |
| 84 | "{BC956E6C-D057-409D-A618-A6BF06DD9AFC},1", | |
| 85 | 1 | |
| 86 | ], | |
| 87 | [ | |
| 88 | "{39C7177D-715E-417F-A5B2-596DCDE13027},1", | |
| 89 | 2 | |
| 90 | ], | |
| 91 | [ | |
| 92 | "{2C70EAEB-A51D-448F-8955-89156506CF95},1", | |
| 93 | 1 | |
| 94 | ], | |
| 95 | [ | |
| 96 | "{F924B8C7-66CA-4FEA-ADD7-5ECD6910D5AA},1", | |
| 97 | 1 | |
| 98 | ], | |
| 99 | [ | |
| 100 | "{95B02C61-106C-47DC-AC71-563A6AE3F6BE},1", | |
| 101 | 2 | |
| 102 | ], | |
| 103 | [ | |
| 104 | "{907D9244-8140-4F4C-8BA9-6E42C8F2F5CC},1", | |
| 105 | 1 | |
| 106 | ], | |
| 107 | [ | |
| 108 | "{232109B4-E38E-4D7A-AB6B-2C52BCD49511},1", | |
| 109 | 1 | |
| 110 | ], | |
| 111 | [ | |
| 112 | "{1A4EE170-3A3E-4E9E-9CDC-8DD17C510B26},1", | |
| 113 | 2 | |
| 114 | ], | |
| 115 | [ | |
| 116 | "{8679521F-8046-4611-A5A3-AB151635E26D},1", | |
| 117 | 1 | |
| 118 | ], | |
| 119 | [ | |
| 120 | "{CF289176-0CDB-4163-8A44-C51958D8B8A1},1", | |
| 121 | 1 | |
| 122 | ], | |
| 123 | [ | |
| 124 | "{99334A81-D662-4AC6-A49D-A0860B4E0DD8},1", | |
| 125 | 2 | |
| 126 | ], | |
| 127 | [ | |
| 128 | "{7BAB3EDA-868E-4B41-AD61-B32D463AB3E0},1", | |
| 129 | 1 | |
| 130 | ], | |
| 131 | [ | |
| 132 | "{BDFF266F-D35B-4408-B624-B3C5DE9DECED},1", | |
| 133 | 1 | |
| 134 | ], | |
| 135 | [ | |
| 136 | "{458A27E7-608E-467D-87C0-540AA0AF5AB6},1", | |
| 137 | 2 | |
| 138 | ], | |
| 139 | [ | |
| 140 | "{9F7A4423-B568-4CA7-BE9D-8003FAF044AD},1", | |
| 141 | 1 | |
| 142 | ], | |
| 143 | [ | |
| 144 | "{2EDB6F23-646D-4B69-A92A-14293B52E874},1", | |
| 145 | 1 | |
| 146 | ], | |
| 147 | [ | |
| 148 | "{E455C07B-77AB-4D41-91AE-3CAD15027F85},1", | |
| 149 | 2 | |
| 150 | ] | |
| 151 | ], | |
| 152 | "operations": [ | |
| 153 | [ | |
| 154 | { | |
| 155 | "edit": { | |
| 156 | "at": 133000000000000000, | |
| 157 | "ops": [ | |
| 158 | { | |
| 159 | "Section": { | |
| 160 | "Pages": [ | |
| 161 | { | |
| 162 | "guid": [ | |
| 163 | 137, | |
| 164 | 65, | |
| 165 | 46, | |
| 166 | 153, | |
| 167 | 28, | |
| 168 | 23, | |
| 169 | 191, | |
| 170 | 78, | |
| 171 | 179, | |
| 172 | 39, | |
| 173 | 162, | |
| 174 | 124, | |
| 175 | 151, | |
| 176 | 204, | |
| 177 | 247, | |
| 178 | 54 | |
| 179 | ], | |
| 180 | "level": 1, | |
| 181 | "position": { | |
| 182 | "Before": "{C4B5EAED-3ABF-4B34-A1B5-06C8A6E2259F},1" | |
| 183 | }, | |
| 184 | "space": "{B9E9B75B-7B33-4C60-A3D1-0BE78F314485},1" | |
| 185 | }, | |
| 186 | { | |
| 187 | "guid": [ | |
| 188 | 214, | |
| 189 | 18, | |
| 190 | 186, | |
| 191 | 71, | |
| 192 | 69, | |
| 193 | 135, | |
| 194 | 163, | |
| 195 | 67, | |
| 196 | 162, | |
| 197 | 241, | |
| 198 | 219, | |
| 199 | 185, | |
| 200 | 146, | |
| 201 | 144, | |
| 202 | 160, | |
| 203 | 212 | |
| 204 | ], | |
| 205 | "level": 2, | |
| 206 | "position": "Keep", | |
| 207 | "space": "{1C26F613-1AD8-417F-837C-6A2EB606D092},1" | |
| 208 | } | |
| 209 | ] | |
| 210 | } | |
| 211 | } | |
| 212 | ] | |
| 213 | }, | |
| 214 | "id": 1 | |
| 215 | }, | |
| 216 | { | |
| 217 | "edit": { | |
| 218 | "at": 134349951600000000, | |
| 219 | "ops": [ | |
| 220 | { | |
| 221 | "Page": { | |
| 222 | "op": { | |
| 223 | "Add": { | |
| 224 | "before": null, | |
| 225 | "object": { | |
| 226 | "Outline": { | |
| 227 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},2", | |
| 228 | "indents": [], | |
| 229 | "layout": { | |
| 230 | "max_height": null, | |
| 231 | "max_width": null, | |
| 232 | "reserved_width": null, | |
| 233 | "width_set_by_user": null, | |
| 234 | "x": 36.0, | |
| 235 | "y": 36.0 | |
| 236 | }, | |
| 237 | "min_width": null, | |
| 238 | "paragraphs": [ | |
| 239 | { | |
| 240 | "collapsed": false, | |
| 241 | "content": { | |
| 242 | "Text": { | |
| 243 | "date_field": null, | |
| 244 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},1", | |
| 245 | "tags": [], | |
| 246 | "text": { | |
| 247 | "spans": [ | |
| 248 | { | |
| 249 | "end": 16, | |
| 250 | "format": { | |
| 251 | "alignment": null, | |
| 252 | "bold": null, | |
| 253 | "color": null, | |
| 254 | "embedded_object": null, | |
| 255 | "font": "Calibri", | |
| 256 | "font_size": 11.0, | |
| 257 | "hidden": null, | |
| 258 | "highlight": null, | |
| 259 | "hyperlink": null, | |
| 260 | "hyperlink_label": null, | |
| 261 | "italic": null, | |
| 262 | "language": 1033, | |
| 263 | "line_spacing": null, | |
| 264 | "list_spacing": null, | |
| 265 | "math": null, | |
| 266 | "math_object": null, | |
| 267 | "rtl": null, | |
| 268 | "space_after": null, | |
| 269 | "space_before": null, | |
| 270 | "strike": null, | |
| 271 | "subscript": null, | |
| 272 | "superscript": null, | |
| 273 | "underline": null | |
| 274 | } | |
| 275 | } | |
| 276 | ], | |
| 277 | "text": "Actor 0 🦀 é" | |
| 278 | } | |
| 279 | } | |
| 280 | }, | |
| 281 | "format": { | |
| 282 | "alignment": null, | |
| 283 | "bold": null, | |
| 284 | "color": null, | |
| 285 | "embedded_object": null, | |
| 286 | "font": null, | |
| 287 | "font_size": null, | |
| 288 | "hidden": null, | |
| 289 | "highlight": null, | |
| 290 | "hyperlink": null, | |
| 291 | "hyperlink_label": null, | |
| 292 | "italic": null, | |
| 293 | "language": null, | |
| 294 | "line_spacing": null, | |
| 295 | "list_spacing": null, | |
| 296 | "math": null, | |
| 297 | "math_object": null, | |
| 298 | "rtl": null, | |
| 299 | "space_after": null, | |
| 300 | "space_before": null, | |
| 301 | "strike": null, | |
| 302 | "subscript": null, | |
| 303 | "superscript": null, | |
| 304 | "underline": null | |
| 305 | }, | |
| 306 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},3", | |
| 307 | "level": 1, | |
| 308 | "lists": [], | |
| 309 | "media": { | |
| 310 | "recordings": [], | |
| 311 | "time_ms": null | |
| 312 | }, | |
| 313 | "parent": null, | |
| 314 | "style": null, | |
| 315 | "tags": [] | |
| 316 | } | |
| 317 | ], | |
| 318 | "title": false, | |
| 319 | "unsupported": [] | |
| 320 | } | |
| 321 | } | |
| 322 | } | |
| 323 | }, | |
| 324 | "space": "{B9E9B75B-7B33-4C60-A3D1-0BE78F314485},1" | |
| 325 | } | |
| 326 | } | |
| 327 | ] | |
| 328 | }, | |
| 329 | "id": 2 | |
| 330 | } | |
| 331 | ], | |
| 332 | [ | |
| 333 | { | |
| 334 | "edit": { | |
| 335 | "at": 133000000000000000, | |
| 336 | "ops": [ | |
| 337 | { | |
| 338 | "Section": { | |
| 339 | "Pages": [ | |
| 340 | { | |
| 341 | "guid": [ | |
| 342 | 232, | |
| 343 | 190, | |
| 344 | 205, | |
| 345 | 38, | |
| 346 | 113, | |
| 347 | 7, | |
| 348 | 97, | |
| 349 | 70, | |
| 350 | 142, | |
| 351 | 69, | |
| 352 | 28, | |
| 353 | 16, | |
| 354 | 219, | |
| 355 | 74, | |
| 356 | 94, | |
| 357 | 170 | |
| 358 | ], | |
| 359 | "level": 1, | |
| 360 | "position": { | |
| 361 | "Before": "{021A914B-C467-4FDE-BF44-B4D695410F0B},1" | |
| 362 | }, | |
| 363 | "space": "{F31C990F-D1E1-4840-BB4F-46ED372732A9},1" | |
| 364 | }, | |
| 365 | { | |
| 366 | "guid": [ | |
| 367 | 240, | |
| 368 | 152, | |
| 369 | 226, | |
| 370 | 6, | |
| 371 | 125, | |
| 372 | 5, | |
| 373 | 59, | |
| 374 | 78, | |
| 375 | 159, | |
| 376 | 199, | |
| 377 | 217, | |
| 378 | 224, | |
| 379 | 167, | |
| 380 | 207, | |
| 381 | 69, | |
| 382 | 206 | |
| 383 | ], | |
| 384 | "level": 2, | |
| 385 | "position": "Keep", | |
| 386 | "space": "{B0559E07-BA1D-4B20-B7AA-906C04AA5DFE},1" | |
| 387 | } | |
| 388 | ] | |
| 389 | } | |
| 390 | } | |
| 391 | ] | |
| 392 | }, | |
| 393 | "id": 1 | |
| 394 | }, | |
| 395 | { | |
| 396 | "edit": { | |
| 397 | "at": 134349951600000000, | |
| 398 | "ops": [ | |
| 399 | { | |
| 400 | "Page": { | |
| 401 | "op": { | |
| 402 | "Add": { | |
| 403 | "before": null, | |
| 404 | "object": { | |
| 405 | "Outline": { | |
| 406 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},5", | |
| 407 | "indents": [], | |
| 408 | "layout": { | |
| 409 | "max_height": null, | |
| 410 | "max_width": null, | |
| 411 | "reserved_width": null, | |
| 412 | "width_set_by_user": null, | |
| 413 | "x": 36.0, | |
| 414 | "y": 36.0 | |
| 415 | }, | |
| 416 | "min_width": null, | |
| 417 | "paragraphs": [ | |
| 418 | { | |
| 419 | "collapsed": false, | |
| 420 | "content": { | |
| 421 | "Text": { | |
| 422 | "date_field": null, | |
| 423 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},4", | |
| 424 | "tags": [], | |
| 425 | "text": { | |
| 426 | "spans": [ | |
| 427 | { | |
| 428 | "end": 16, | |
| 429 | "format": { | |
| 430 | "alignment": null, | |
| 431 | "bold": null, | |
| 432 | "color": null, | |
| 433 | "embedded_object": null, | |
| 434 | "font": "Calibri", | |
| 435 | "font_size": 11.0, | |
| 436 | "hidden": null, | |
| 437 | "highlight": null, | |
| 438 | "hyperlink": null, | |
| 439 | "hyperlink_label": null, | |
| 440 | "italic": null, | |
| 441 | "language": 1033, | |
| 442 | "line_spacing": null, | |
| 443 | "list_spacing": null, | |
| 444 | "math": null, | |
| 445 | "math_object": null, | |
| 446 | "rtl": null, | |
| 447 | "space_after": null, | |
| 448 | "space_before": null, | |
| 449 | "strike": null, | |
| 450 | "subscript": null, | |
| 451 | "superscript": null, | |
| 452 | "underline": null | |
| 453 | } | |
| 454 | } | |
| 455 | ], | |
| 456 | "text": "Actor 1 🦀 é" | |
| 457 | } | |
| 458 | } | |
| 459 | }, | |
| 460 | "format": { | |
| 461 | "alignment": null, | |
| 462 | "bold": null, | |
| 463 | "color": null, | |
| 464 | "embedded_object": null, | |
| 465 | "font": null, | |
| 466 | "font_size": null, | |
| 467 | "hidden": null, | |
| 468 | "highlight": null, | |
| 469 | "hyperlink": null, | |
| 470 | "hyperlink_label": null, | |
| 471 | "italic": null, | |
| 472 | "language": null, | |
| 473 | "line_spacing": null, | |
| 474 | "list_spacing": null, | |
| 475 | "math": null, | |
| 476 | "math_object": null, | |
| 477 | "rtl": null, | |
| 478 | "space_after": null, | |
| 479 | "space_before": null, | |
| 480 | "strike": null, | |
| 481 | "subscript": null, | |
| 482 | "superscript": null, | |
| 483 | "underline": null | |
| 484 | }, | |
| 485 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},6", | |
| 486 | "level": 1, | |
| 487 | "lists": [], | |
| 488 | "media": { | |
| 489 | "recordings": [], | |
| 490 | "time_ms": null | |
| 491 | }, | |
| 492 | "parent": null, | |
| 493 | "style": null, | |
| 494 | "tags": [] | |
| 495 | } | |
| 496 | ], | |
| 497 | "title": false, | |
| 498 | "unsupported": [] | |
| 499 | } | |
| 500 | } | |
| 501 | } | |
| 502 | }, | |
| 503 | "space": "{F31C990F-D1E1-4840-BB4F-46ED372732A9},1" | |
| 504 | } | |
| 505 | } | |
| 506 | ] | |
| 507 | }, | |
| 508 | "id": 2 | |
| 509 | } | |
| 510 | ], | |
| 511 | [ | |
| 512 | { | |
| 513 | "edit": { | |
| 514 | "at": 133000000000000000, | |
| 515 | "ops": [ | |
| 516 | { | |
| 517 | "Section": { | |
| 518 | "Pages": [ | |
| 519 | { | |
| 520 | "guid": [ | |
| 521 | 128, | |
| 522 | 150, | |
| 523 | 44, | |
| 524 | 239, | |
| 525 | 75, | |
| 526 | 40, | |
| 527 | 93, | |
| 528 | 71, | |
| 529 | 139, | |
| 530 | 44, | |
| 531 | 144, | |
| 532 | 149, | |
| 533 | 3, | |
| 534 | 225, | |
| 535 | 194, | |
| 536 | 105 | |
| 537 | ], | |
| 538 | "level": 1, | |
| 539 | "position": { | |
| 540 | "Before": "{4A597354-6867-49AB-B740-4C1E39E40E2E},1" | |
| 541 | }, | |
| 542 | "space": "{544121FD-0E61-4A76-8191-A02ABA23A314},1" | |
| 543 | }, | |
| 544 | { | |
| 545 | "guid": [ | |
| 546 | 77, | |
| 547 | 215, | |
| 548 | 146, | |
| 549 | 157, | |
| 550 | 207, | |
| 551 | 140, | |
| 552 | 1, | |
| 553 | 70, | |
| 554 | 160, | |
| 555 | 237, | |
| 556 | 173, | |
| 557 | 17, | |
| 558 | 181, | |
| 559 | 152, | |
| 560 | 129, | |
| 561 | 117 | |
| 562 | ], | |
| 563 | "level": 2, | |
| 564 | "position": "Keep", | |
| 565 | "space": "{7F7E3DAF-B98B-4BBD-9EB2-4534A3C74123},1" | |
| 566 | } | |
| 567 | ] | |
| 568 | } | |
| 569 | } | |
| 570 | ] | |
| 571 | }, | |
| 572 | "id": 1 | |
| 573 | }, | |
| 574 | { | |
| 575 | "edit": { | |
| 576 | "at": 134349951610000000, | |
| 577 | "ops": [ | |
| 578 | { | |
| 579 | "Page": { | |
| 580 | "op": { | |
| 581 | "Add": { | |
| 582 | "before": null, | |
| 583 | "object": { | |
| 584 | "Outline": { | |
| 585 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},8", | |
| 586 | "indents": [], | |
| 587 | "layout": { | |
| 588 | "max_height": null, | |
| 589 | "max_width": null, | |
| 590 | "reserved_width": null, | |
| 591 | "width_set_by_user": null, | |
| 592 | "x": 36.0, | |
| 593 | "y": 36.0 | |
| 594 | }, | |
| 595 | "min_width": null, | |
| 596 | "paragraphs": [ | |
| 597 | { | |
| 598 | "collapsed": false, | |
| 599 | "content": { | |
| 600 | "Text": { | |
| 601 | "date_field": null, | |
| 602 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},7", | |
| 603 | "tags": [], | |
| 604 | "text": { | |
| 605 | "spans": [ | |
| 606 | { | |
| 607 | "end": 16, | |
| 608 | "format": { | |
| 609 | "alignment": null, | |
| 610 | "bold": null, | |
| 611 | "color": null, | |
| 612 | "embedded_object": null, | |
| 613 | "font": "Calibri", | |
| 614 | "font_size": 11.0, | |
| 615 | "hidden": null, | |
| 616 | "highlight": null, | |
| 617 | "hyperlink": null, | |
| 618 | "hyperlink_label": null, | |
| 619 | "italic": null, | |
| 620 | "language": 1033, | |
| 621 | "line_spacing": null, | |
| 622 | "list_spacing": null, | |
| 623 | "math": null, | |
| 624 | "math_object": null, | |
| 625 | "rtl": null, | |
| 626 | "space_after": null, | |
| 627 | "space_before": null, | |
| 628 | "strike": null, | |
| 629 | "subscript": null, | |
| 630 | "superscript": null, | |
| 631 | "underline": null | |
| 632 | } | |
| 633 | } | |
| 634 | ], | |
| 635 | "text": "Actor 2 🦀 é" | |
| 636 | } | |
| 637 | } | |
| 638 | }, | |
| 639 | "format": { | |
| 640 | "alignment": null, | |
| 641 | "bold": null, | |
| 642 | "color": null, | |
| 643 | "embedded_object": null, | |
| 644 | "font": null, | |
| 645 | "font_size": null, | |
| 646 | "hidden": null, | |
| 647 | "highlight": null, | |
| 648 | "hyperlink": null, | |
| 649 | "hyperlink_label": null, | |
| 650 | "italic": null, | |
| 651 | "language": null, | |
| 652 | "line_spacing": null, | |
| 653 | "list_spacing": null, | |
| 654 | "math": null, | |
| 655 | "math_object": null, | |
| 656 | "rtl": null, | |
| 657 | "space_after": null, | |
| 658 | "space_before": null, | |
| 659 | "strike": null, | |
| 660 | "subscript": null, | |
| 661 | "superscript": null, | |
| 662 | "underline": null | |
| 663 | }, | |
| 664 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},9", | |
| 665 | "level": 1, | |
| 666 | "lists": [], | |
| 667 | "media": { | |
| 668 | "recordings": [], | |
| 669 | "time_ms": null | |
| 670 | }, | |
| 671 | "parent": null, | |
| 672 | "style": null, | |
| 673 | "tags": [] | |
| 674 | } | |
| 675 | ], | |
| 676 | "title": false, | |
| 677 | "unsupported": [] | |
| 678 | } | |
| 679 | } | |
| 680 | } | |
| 681 | }, | |
| 682 | "space": "{544121FD-0E61-4A76-8191-A02ABA23A314},1" | |
| 683 | } | |
| 684 | } | |
| 685 | ] | |
| 686 | }, | |
| 687 | "id": 2 | |
| 688 | } | |
| 689 | ], | |
| 690 | [ | |
| 691 | { | |
| 692 | "edit": { | |
| 693 | "at": 133000000000000000, | |
| 694 | "ops": [ | |
| 695 | { | |
| 696 | "Section": { | |
| 697 | "Pages": [ | |
| 698 | { | |
| 699 | "guid": [ | |
| 700 | 60, | |
| 701 | 24, | |
| 702 | 102, | |
| 703 | 131, | |
| 704 | 237, | |
| 705 | 125, | |
| 706 | 96, | |
| 707 | 68, | |
| 708 | 140, | |
| 709 | 15, | |
| 710 | 56, | |
| 711 | 134, | |
| 712 | 76, | |
| 713 | 94, | |
| 714 | 75, | |
| 715 | 241 | |
| 716 | ], | |
| 717 | "level": 1, | |
| 718 | "position": { | |
| 719 | "Before": "{8D4454DE-21E6-49FB-9438-B48408E348E4},1" | |
| 720 | }, | |
| 721 | "space": "{303BACE6-CEFC-4107-AC1E-D6F3BBC7D1AE},1" | |
| 722 | }, | |
| 723 | { | |
| 724 | "guid": [ | |
| 725 | 43, | |
| 726 | 187, | |
| 727 | 225, | |
| 728 | 181, | |
| 729 | 143, | |
| 730 | 57, | |
| 731 | 100, | |
| 732 | 71, | |
| 733 | 156, | |
| 734 | 65, | |
| 735 | 221, | |
| 736 | 123, | |
| 737 | 106, | |
| 738 | 144, | |
| 739 | 24, | |
| 740 | 42 | |
| 741 | ], | |
| 742 | "level": 2, | |
| 743 | "position": "Keep", | |
| 744 | "space": "{214F33C4-3F0A-4CEF-9BC9-F8D69687830E},1" | |
| 745 | } | |
| 746 | ] | |
| 747 | } | |
| 748 | } | |
| 749 | ] | |
| 750 | }, | |
| 751 | "id": 1 | |
| 752 | }, | |
| 753 | { | |
| 754 | "edit": { | |
| 755 | "at": 134349951610000000, | |
| 756 | "ops": [ | |
| 757 | { | |
| 758 | "Page": { | |
| 759 | "op": { | |
| 760 | "Add": { | |
| 761 | "before": null, | |
| 762 | "object": { | |
| 763 | "Outline": { | |
| 764 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},11", | |
| 765 | "indents": [], | |
| 766 | "layout": { | |
| 767 | "max_height": null, | |
| 768 | "max_width": null, | |
| 769 | "reserved_width": null, | |
| 770 | "width_set_by_user": null, | |
| 771 | "x": 36.0, | |
| 772 | "y": 36.0 | |
| 773 | }, | |
| 774 | "min_width": null, | |
| 775 | "paragraphs": [ | |
| 776 | { | |
| 777 | "collapsed": false, | |
| 778 | "content": { | |
| 779 | "Text": { | |
| 780 | "date_field": null, | |
| 781 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},10", | |
| 782 | "tags": [], | |
| 783 | "text": { | |
| 784 | "spans": [ | |
| 785 | { | |
| 786 | "end": 16, | |
| 787 | "format": { | |
| 788 | "alignment": null, | |
| 789 | "bold": null, | |
| 790 | "color": null, | |
| 791 | "embedded_object": null, | |
| 792 | "font": "Calibri", | |
| 793 | "font_size": 11.0, | |
| 794 | "hidden": null, | |
| 795 | "highlight": null, | |
| 796 | "hyperlink": null, | |
| 797 | "hyperlink_label": null, | |
| 798 | "italic": null, | |
| 799 | "language": 1033, | |
| 800 | "line_spacing": null, | |
| 801 | "list_spacing": null, | |
| 802 | "math": null, | |
| 803 | "math_object": null, | |
| 804 | "rtl": null, | |
| 805 | "space_after": null, | |
| 806 | "space_before": null, | |
| 807 | "strike": null, | |
| 808 | "subscript": null, | |
| 809 | "superscript": null, | |
| 810 | "underline": null | |
| 811 | } | |
| 812 | } | |
| 813 | ], | |
| 814 | "text": "Actor 3 🦀 é" | |
| 815 | } | |
| 816 | } | |
| 817 | }, | |
| 818 | "format": { | |
| 819 | "alignment": null, | |
| 820 | "bold": null, | |
| 821 | "color": null, | |
| 822 | "embedded_object": null, | |
| 823 | "font": null, | |
| 824 | "font_size": null, | |
| 825 | "hidden": null, | |
| 826 | "highlight": null, | |
| 827 | "hyperlink": null, | |
| 828 | "hyperlink_label": null, | |
| 829 | "italic": null, | |
| 830 | "language": null, | |
| 831 | "line_spacing": null, | |
| 832 | "list_spacing": null, | |
| 833 | "math": null, | |
| 834 | "math_object": null, | |
| 835 | "rtl": null, | |
| 836 | "space_after": null, | |
| 837 | "space_before": null, | |
| 838 | "strike": null, | |
| 839 | "subscript": null, | |
| 840 | "superscript": null, | |
| 841 | "underline": null | |
| 842 | }, | |
| 843 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},12", | |
| 844 | "level": 1, | |
| 845 | "lists": [], | |
| 846 | "media": { | |
| 847 | "recordings": [], | |
| 848 | "time_ms": null | |
| 849 | }, | |
| 850 | "parent": null, | |
| 851 | "style": null, | |
| 852 | "tags": [] | |
| 853 | } | |
| 854 | ], | |
| 855 | "title": false, | |
| 856 | "unsupported": [] | |
| 857 | } | |
| 858 | } | |
| 859 | } | |
| 860 | }, | |
| 861 | "space": "{303BACE6-CEFC-4107-AC1E-D6F3BBC7D1AE},1" | |
| 862 | } | |
| 863 | } | |
| 864 | ] | |
| 865 | }, | |
| 866 | "id": 2 | |
| 867 | } | |
| 868 | ], | |
| 869 | [ | |
| 870 | { | |
| 871 | "edit": { | |
| 872 | "at": 133000000000000000, | |
| 873 | "ops": [ | |
| 874 | { | |
| 875 | "Section": { | |
| 876 | "Pages": [ | |
| 877 | { | |
| 878 | "guid": [ | |
| 879 | 237, | |
| 880 | 166, | |
| 881 | 115, | |
| 882 | 62, | |
| 883 | 6, | |
| 884 | 126, | |
| 885 | 122, | |
| 886 | 71, | |
| 887 | 165, | |
| 888 | 0, | |
| 889 | 132, | |
| 890 | 211, | |
| 891 | 66, | |
| 892 | 36, | |
| 893 | 104, | |
| 894 | 34 | |
| 895 | ], | |
| 896 | "level": 1, | |
| 897 | "position": { | |
| 898 | "Before": "{64E10720-B6D7-46D7-B810-BA636020102D},1" | |
| 899 | }, | |
| 900 | "space": "{CE4D4557-358A-4401-8426-C7C794F5F2BE},1" | |
| 901 | }, | |
| 902 | { | |
| 903 | "guid": [ | |
| 904 | 20, | |
| 905 | 190, | |
| 906 | 251, | |
| 907 | 94, | |
| 908 | 101, | |
| 909 | 42, | |
| 910 | 0, | |
| 911 | 68, | |
| 912 | 150, | |
| 913 | 161, | |
| 914 | 251, | |
| 915 | 52, | |
| 916 | 113, | |
| 917 | 3, | |
| 918 | 175, | |
| 919 | 41 | |
| 920 | ], | |
| 921 | "level": 2, | |
| 922 | "position": "Keep", | |
| 923 | "space": "{FF359729-6EDF-4577-A968-7774CD55FB52},1" | |
| 924 | } | |
| 925 | ] | |
| 926 | } | |
| 927 | } | |
| 928 | ] | |
| 929 | }, | |
| 930 | "id": 1 | |
| 931 | }, | |
| 932 | { | |
| 933 | "edit": { | |
| 934 | "at": 134349951610000000, | |
| 935 | "ops": [ | |
| 936 | { | |
| 937 | "Page": { | |
| 938 | "op": { | |
| 939 | "Add": { | |
| 940 | "before": null, | |
| 941 | "object": { | |
| 942 | "Outline": { | |
| 943 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},14", | |
| 944 | "indents": [], | |
| 945 | "layout": { | |
| 946 | "max_height": null, | |
| 947 | "max_width": null, | |
| 948 | "reserved_width": null, | |
| 949 | "width_set_by_user": null, | |
| 950 | "x": 36.0, | |
| 951 | "y": 36.0 | |
| 952 | }, | |
| 953 | "min_width": null, | |
| 954 | "paragraphs": [ | |
| 955 | { | |
| 956 | "collapsed": false, | |
| 957 | "content": { | |
| 958 | "Text": { | |
| 959 | "date_field": null, | |
| 960 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},13", | |
| 961 | "tags": [], | |
| 962 | "text": { | |
| 963 | "spans": [ | |
| 964 | { | |
| 965 | "end": 16, | |
| 966 | "format": { | |
| 967 | "alignment": null, | |
| 968 | "bold": null, | |
| 969 | "color": null, | |
| 970 | "embedded_object": null, | |
| 971 | "font": "Calibri", | |
| 972 | "font_size": 11.0, | |
| 973 | "hidden": null, | |
| 974 | "highlight": null, | |
| 975 | "hyperlink": null, | |
| 976 | "hyperlink_label": null, | |
| 977 | "italic": null, | |
| 978 | "language": 1033, | |
| 979 | "line_spacing": null, | |
| 980 | "list_spacing": null, | |
| 981 | "math": null, | |
| 982 | "math_object": null, | |
| 983 | "rtl": null, | |
| 984 | "space_after": null, | |
| 985 | "space_before": null, | |
| 986 | "strike": null, | |
| 987 | "subscript": null, | |
| 988 | "superscript": null, | |
| 989 | "underline": null | |
| 990 | } | |
| 991 | } | |
| 992 | ], | |
| 993 | "text": "Actor 4 🦀 é" | |
| 994 | } | |
| 995 | } | |
| 996 | }, | |
| 997 | "format": { | |
| 998 | "alignment": null, | |
| 999 | "bold": null, | |
| 1000 | "color": null, | |
| 1001 | "embedded_object": null, | |
| 1002 | "font": null, | |
| 1003 | "font_size": null, | |
| 1004 | "hidden": null, | |
| 1005 | "highlight": null, | |
| 1006 | "hyperlink": null, | |
| 1007 | "hyperlink_label": null, | |
| 1008 | "italic": null, | |
| 1009 | "language": null, | |
| 1010 | "line_spacing": null, | |
| 1011 | "list_spacing": null, | |
| 1012 | "math": null, | |
| 1013 | "math_object": null, | |
| 1014 | "rtl": null, | |
| 1015 | "space_after": null, | |
| 1016 | "space_before": null, | |
| 1017 | "strike": null, | |
| 1018 | "subscript": null, | |
| 1019 | "superscript": null, | |
| 1020 | "underline": null | |
| 1021 | }, | |
| 1022 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},15", | |
| 1023 | "level": 1, | |
| 1024 | "lists": [], | |
| 1025 | "media": { | |
| 1026 | "recordings": [], | |
| 1027 | "time_ms": null | |
| 1028 | }, | |
| 1029 | "parent": null, | |
| 1030 | "style": null, | |
| 1031 | "tags": [] | |
| 1032 | } | |
| 1033 | ], | |
| 1034 | "title": false, | |
| 1035 | "unsupported": [] | |
| 1036 | } | |
| 1037 | } | |
| 1038 | } | |
| 1039 | }, | |
| 1040 | "space": "{CE4D4557-358A-4401-8426-C7C794F5F2BE},1" | |
| 1041 | } | |
| 1042 | } | |
| 1043 | ] | |
| 1044 | }, | |
| 1045 | "id": 2 | |
| 1046 | } | |
| 1047 | ], | |
| 1048 | [ | |
| 1049 | { | |
| 1050 | "edit": { | |
| 1051 | "at": 133000000000000000, | |
| 1052 | "ops": [ | |
| 1053 | { | |
| 1054 | "Section": { | |
| 1055 | "Pages": [ | |
| 1056 | { | |
| 1057 | "guid": [ | |
| 1058 | 148, | |
| 1059 | 253, | |
| 1060 | 150, | |
| 1061 | 142, | |
| 1062 | 238, | |
| 1063 | 167, | |
| 1064 | 15, | |
| 1065 | 78, | |
| 1066 | 187, | |
| 1067 | 244, | |
| 1068 | 152, | |
| 1069 | 219, | |
| 1070 | 101, | |
| 1071 | 253, | |
| 1072 | 64, | |
| 1073 | 204 | |
| 1074 | ], | |
| 1075 | "level": 1, | |
| 1076 | "position": { | |
| 1077 | "Before": "{3DDB5E8B-3245-43D0-B001-93E5BC5C8374},1" | |
| 1078 | }, | |
| 1079 | "space": "{3E3C7041-7C7E-4104-8755-CE045D331F8F},1" | |
| 1080 | }, | |
| 1081 | { | |
| 1082 | "guid": [ | |
| 1083 | 121, | |
| 1084 | 181, | |
| 1085 | 255, | |
| 1086 | 117, | |
| 1087 | 85, | |
| 1088 | 146, | |
| 1089 | 190, | |
| 1090 | 70, | |
| 1091 | 147, | |
| 1092 | 88, | |
| 1093 | 216, | |
| 1094 | 245, | |
| 1095 | 1, | |
| 1096 | 13, | |
| 1097 | 103, | |
| 1098 | 107 | |
| 1099 | ], | |
| 1100 | "level": 2, | |
| 1101 | "position": "Keep", | |
| 1102 | "space": "{7B267536-B0AE-4744-B0E4-C5628174834D},1" | |
| 1103 | } | |
| 1104 | ] | |
| 1105 | } | |
| 1106 | } | |
| 1107 | ] | |
| 1108 | }, | |
| 1109 | "id": 1 | |
| 1110 | }, | |
| 1111 | { | |
| 1112 | "edit": { | |
| 1113 | "at": 134349951610000000, | |
| 1114 | "ops": [ | |
| 1115 | { | |
| 1116 | "Page": { | |
| 1117 | "op": { | |
| 1118 | "Add": { | |
| 1119 | "before": null, | |
| 1120 | "object": { | |
| 1121 | "Outline": { | |
| 1122 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},17", | |
| 1123 | "indents": [], | |
| 1124 | "layout": { | |
| 1125 | "max_height": null, | |
| 1126 | "max_width": null, | |
| 1127 | "reserved_width": null, | |
| 1128 | "width_set_by_user": null, | |
| 1129 | "x": 36.0, | |
| 1130 | "y": 36.0 | |
| 1131 | }, | |
| 1132 | "min_width": null, | |
| 1133 | "paragraphs": [ | |
| 1134 | { | |
| 1135 | "collapsed": false, | |
| 1136 | "content": { | |
| 1137 | "Text": { | |
| 1138 | "date_field": null, | |
| 1139 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},16", | |
| 1140 | "tags": [], | |
| 1141 | "text": { | |
| 1142 | "spans": [ | |
| 1143 | { | |
| 1144 | "end": 16, | |
| 1145 | "format": { | |
| 1146 | "alignment": null, | |
| 1147 | "bold": null, | |
| 1148 | "color": null, | |
| 1149 | "embedded_object": null, | |
| 1150 | "font": "Calibri", | |
| 1151 | "font_size": 11.0, | |
| 1152 | "hidden": null, | |
| 1153 | "highlight": null, | |
| 1154 | "hyperlink": null, | |
| 1155 | "hyperlink_label": null, | |
| 1156 | "italic": null, | |
| 1157 | "language": 1033, | |
| 1158 | "line_spacing": null, | |
| 1159 | "list_spacing": null, | |
| 1160 | "math": null, | |
| 1161 | "math_object": null, | |
| 1162 | "rtl": null, | |
| 1163 | "space_after": null, | |
| 1164 | "space_before": null, | |
| 1165 | "strike": null, | |
| 1166 | "subscript": null, | |
| 1167 | "superscript": null, | |
| 1168 | "underline": null | |
| 1169 | } | |
| 1170 | } | |
| 1171 | ], | |
| 1172 | "text": "Actor 5 🦀 é" | |
| 1173 | } | |
| 1174 | } | |
| 1175 | }, | |
| 1176 | "format": { | |
| 1177 | "alignment": null, | |
| 1178 | "bold": null, | |
| 1179 | "color": null, | |
| 1180 | "embedded_object": null, | |
| 1181 | "font": null, | |
| 1182 | "font_size": null, | |
| 1183 | "hidden": null, | |
| 1184 | "highlight": null, | |
| 1185 | "hyperlink": null, | |
| 1186 | "hyperlink_label": null, | |
| 1187 | "italic": null, | |
| 1188 | "language": null, | |
| 1189 | "line_spacing": null, | |
| 1190 | "list_spacing": null, | |
| 1191 | "math": null, | |
| 1192 | "math_object": null, | |
| 1193 | "rtl": null, | |
| 1194 | "space_after": null, | |
| 1195 | "space_before": null, | |
| 1196 | "strike": null, | |
| 1197 | "subscript": null, | |
| 1198 | "superscript": null, | |
| 1199 | "underline": null | |
| 1200 | }, | |
| 1201 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},18", | |
| 1202 | "level": 1, | |
| 1203 | "lists": [], | |
| 1204 | "media": { | |
| 1205 | "recordings": [], | |
| 1206 | "time_ms": null | |
| 1207 | }, | |
| 1208 | "parent": null, | |
| 1209 | "style": null, | |
| 1210 | "tags": [] | |
| 1211 | } | |
| 1212 | ], | |
| 1213 | "title": false, | |
| 1214 | "unsupported": [] | |
| 1215 | } | |
| 1216 | } | |
| 1217 | } | |
| 1218 | }, | |
| 1219 | "space": "{3E3C7041-7C7E-4104-8755-CE045D331F8F},1" | |
| 1220 | } | |
| 1221 | } | |
| 1222 | ] | |
| 1223 | }, | |
| 1224 | "id": 2 | |
| 1225 | } | |
| 1226 | ], | |
| 1227 | [ | |
| 1228 | { | |
| 1229 | "edit": { | |
| 1230 | "at": 133000000000000000, | |
| 1231 | "ops": [ | |
| 1232 | { | |
| 1233 | "Section": { | |
| 1234 | "Pages": [ | |
| 1235 | { | |
| 1236 | "guid": [ | |
| 1237 | 156, | |
| 1238 | 157, | |
| 1239 | 179, | |
| 1240 | 162, | |
| 1241 | 123, | |
| 1242 | 147, | |
| 1243 | 117, | |
| 1244 | 70, | |
| 1245 | 181, | |
| 1246 | 60, | |
| 1247 | 138, | |
| 1248 | 82, | |
| 1249 | 124, | |
| 1250 | 75, | |
| 1251 | 38, | |
| 1252 | 187 | |
| 1253 | ], | |
| 1254 | "level": 1, | |
| 1255 | "position": { | |
| 1256 | "Before": "{BC956E6C-D057-409D-A618-A6BF06DD9AFC},1" | |
| 1257 | }, | |
| 1258 | "space": "{1F097AAE-D72E-4A7A-8359-6DCE136F0E21},1" | |
| 1259 | }, | |
| 1260 | { | |
| 1261 | "guid": [ | |
| 1262 | 3, | |
| 1263 | 209, | |
| 1264 | 128, | |
| 1265 | 197, | |
| 1266 | 70, | |
| 1267 | 248, | |
| 1268 | 104, | |
| 1269 | 70, | |
| 1270 | 162, | |
| 1271 | 92, | |
| 1272 | 200, | |
| 1273 | 5, | |
| 1274 | 82, | |
| 1275 | 16, | |
| 1276 | 182, | |
| 1277 | 46 | |
| 1278 | ], | |
| 1279 | "level": 2, | |
| 1280 | "position": "Keep", | |
| 1281 | "space": "{39C7177D-715E-417F-A5B2-596DCDE13027},1" | |
| 1282 | } | |
| 1283 | ] | |
| 1284 | } | |
| 1285 | } | |
| 1286 | ] | |
| 1287 | }, | |
| 1288 | "id": 1 | |
| 1289 | }, | |
| 1290 | { | |
| 1291 | "edit": { | |
| 1292 | "at": 134349951610000000, | |
| 1293 | "ops": [ | |
| 1294 | { | |
| 1295 | "Page": { | |
| 1296 | "op": { | |
| 1297 | "Add": { | |
| 1298 | "before": null, | |
| 1299 | "object": { | |
| 1300 | "Outline": { | |
| 1301 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},20", | |
| 1302 | "indents": [], | |
| 1303 | "layout": { | |
| 1304 | "max_height": null, | |
| 1305 | "max_width": null, | |
| 1306 | "reserved_width": null, | |
| 1307 | "width_set_by_user": null, | |
| 1308 | "x": 36.0, | |
| 1309 | "y": 36.0 | |
| 1310 | }, | |
| 1311 | "min_width": null, | |
| 1312 | "paragraphs": [ | |
| 1313 | { | |
| 1314 | "collapsed": false, | |
| 1315 | "content": { | |
| 1316 | "Text": { | |
| 1317 | "date_field": null, | |
| 1318 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},19", | |
| 1319 | "tags": [], | |
| 1320 | "text": { | |
| 1321 | "spans": [ | |
| 1322 | { | |
| 1323 | "end": 16, | |
| 1324 | "format": { | |
| 1325 | "alignment": null, | |
| 1326 | "bold": null, | |
| 1327 | "color": null, | |
| 1328 | "embedded_object": null, | |
| 1329 | "font": "Calibri", | |
| 1330 | "font_size": 11.0, | |
| 1331 | "hidden": null, | |
| 1332 | "highlight": null, | |
| 1333 | "hyperlink": null, | |
| 1334 | "hyperlink_label": null, | |
| 1335 | "italic": null, | |
| 1336 | "language": 1033, | |
| 1337 | "line_spacing": null, | |
| 1338 | "list_spacing": null, | |
| 1339 | "math": null, | |
| 1340 | "math_object": null, | |
| 1341 | "rtl": null, | |
| 1342 | "space_after": null, | |
| 1343 | "space_before": null, | |
| 1344 | "strike": null, | |
| 1345 | "subscript": null, | |
| 1346 | "superscript": null, | |
| 1347 | "underline": null | |
| 1348 | } | |
| 1349 | } | |
| 1350 | ], | |
| 1351 | "text": "Actor 6 🦀 é" | |
| 1352 | } | |
| 1353 | } | |
| 1354 | }, | |
| 1355 | "format": { | |
| 1356 | "alignment": null, | |
| 1357 | "bold": null, | |
| 1358 | "color": null, | |
| 1359 | "embedded_object": null, | |
| 1360 | "font": null, | |
| 1361 | "font_size": null, | |
| 1362 | "hidden": null, | |
| 1363 | "highlight": null, | |
| 1364 | "hyperlink": null, | |
| 1365 | "hyperlink_label": null, | |
| 1366 | "italic": null, | |
| 1367 | "language": null, | |
| 1368 | "line_spacing": null, | |
| 1369 | "list_spacing": null, | |
| 1370 | "math": null, | |
| 1371 | "math_object": null, | |
| 1372 | "rtl": null, | |
| 1373 | "space_after": null, | |
| 1374 | "space_before": null, | |
| 1375 | "strike": null, | |
| 1376 | "subscript": null, | |
| 1377 | "superscript": null, | |
| 1378 | "underline": null | |
| 1379 | }, | |
| 1380 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},21", | |
| 1381 | "level": 1, | |
| 1382 | "lists": [], | |
| 1383 | "media": { | |
| 1384 | "recordings": [], | |
| 1385 | "time_ms": null | |
| 1386 | }, | |
| 1387 | "parent": null, | |
| 1388 | "style": null, | |
| 1389 | "tags": [] | |
| 1390 | } | |
| 1391 | ], | |
| 1392 | "title": false, | |
| 1393 | "unsupported": [] | |
| 1394 | } | |
| 1395 | } | |
| 1396 | } | |
| 1397 | }, | |
| 1398 | "space": "{1F097AAE-D72E-4A7A-8359-6DCE136F0E21},1" | |
| 1399 | } | |
| 1400 | } | |
| 1401 | ] | |
| 1402 | }, | |
| 1403 | "id": 2 | |
| 1404 | } | |
| 1405 | ], | |
| 1406 | [ | |
| 1407 | { | |
| 1408 | "edit": { | |
| 1409 | "at": 133000000000000000, | |
| 1410 | "ops": [ | |
| 1411 | { | |
| 1412 | "Section": { | |
| 1413 | "Pages": [ | |
| 1414 | { | |
| 1415 | "guid": [ | |
| 1416 | 207, | |
| 1417 | 242, | |
| 1418 | 85, | |
| 1419 | 164, | |
| 1420 | 205, | |
| 1421 | 114, | |
| 1422 | 120, | |
| 1423 | 73, | |
| 1424 | 145, | |
| 1425 | 29, | |
| 1426 | 194, | |
| 1427 | 242, | |
| 1428 | 8, | |
| 1429 | 34, | |
| 1430 | 144, | |
| 1431 | 124 | |
| 1432 | ], | |
| 1433 | "level": 1, | |
| 1434 | "position": { | |
| 1435 | "Before": "{F924B8C7-66CA-4FEA-ADD7-5ECD6910D5AA},1" | |
| 1436 | }, | |
| 1437 | "space": "{2C70EAEB-A51D-448F-8955-89156506CF95},1" | |
| 1438 | }, | |
| 1439 | { | |
| 1440 | "guid": [ | |
| 1441 | 38, | |
| 1442 | 126, | |
| 1443 | 122, | |
| 1444 | 127, | |
| 1445 | 151, | |
| 1446 | 38, | |
| 1447 | 229, | |
| 1448 | 76, | |
| 1449 | 135, | |
| 1450 | 62, | |
| 1451 | 181, | |
| 1452 | 209, | |
| 1453 | 254, | |
| 1454 | 240, | |
| 1455 | 31, | |
| 1456 | 157 | |
| 1457 | ], | |
| 1458 | "level": 2, | |
| 1459 | "position": "Keep", | |
| 1460 | "space": "{95B02C61-106C-47DC-AC71-563A6AE3F6BE},1" | |
| 1461 | } | |
| 1462 | ] | |
| 1463 | } | |
| 1464 | } | |
| 1465 | ] | |
| 1466 | }, | |
| 1467 | "id": 1 | |
| 1468 | }, | |
| 1469 | { | |
| 1470 | "edit": { | |
| 1471 | "at": 134349951610000000, | |
| 1472 | "ops": [ | |
| 1473 | { | |
| 1474 | "Page": { | |
| 1475 | "op": { | |
| 1476 | "Add": { | |
| 1477 | "before": null, | |
| 1478 | "object": { | |
| 1479 | "Outline": { | |
| 1480 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},23", | |
| 1481 | "indents": [], | |
| 1482 | "layout": { | |
| 1483 | "max_height": null, | |
| 1484 | "max_width": null, | |
| 1485 | "reserved_width": null, | |
| 1486 | "width_set_by_user": null, | |
| 1487 | "x": 36.0, | |
| 1488 | "y": 36.0 | |
| 1489 | }, | |
| 1490 | "min_width": null, | |
| 1491 | "paragraphs": [ | |
| 1492 | { | |
| 1493 | "collapsed": false, | |
| 1494 | "content": { | |
| 1495 | "Text": { | |
| 1496 | "date_field": null, | |
| 1497 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},22", | |
| 1498 | "tags": [], | |
| 1499 | "text": { | |
| 1500 | "spans": [ | |
| 1501 | { | |
| 1502 | "end": 16, | |
| 1503 | "format": { | |
| 1504 | "alignment": null, | |
| 1505 | "bold": null, | |
| 1506 | "color": null, | |
| 1507 | "embedded_object": null, | |
| 1508 | "font": "Calibri", | |
| 1509 | "font_size": 11.0, | |
| 1510 | "hidden": null, | |
| 1511 | "highlight": null, | |
| 1512 | "hyperlink": null, | |
| 1513 | "hyperlink_label": null, | |
| 1514 | "italic": null, | |
| 1515 | "language": 1033, | |
| 1516 | "line_spacing": null, | |
| 1517 | "list_spacing": null, | |
| 1518 | "math": null, | |
| 1519 | "math_object": null, | |
| 1520 | "rtl": null, | |
| 1521 | "space_after": null, | |
| 1522 | "space_before": null, | |
| 1523 | "strike": null, | |
| 1524 | "subscript": null, | |
| 1525 | "superscript": null, | |
| 1526 | "underline": null | |
| 1527 | } | |
| 1528 | } | |
| 1529 | ], | |
| 1530 | "text": "Actor 7 🦀 é" | |
| 1531 | } | |
| 1532 | } | |
| 1533 | }, | |
| 1534 | "format": { | |
| 1535 | "alignment": null, | |
| 1536 | "bold": null, | |
| 1537 | "color": null, | |
| 1538 | "embedded_object": null, | |
| 1539 | "font": null, | |
| 1540 | "font_size": null, | |
| 1541 | "hidden": null, | |
| 1542 | "highlight": null, | |
| 1543 | "hyperlink": null, | |
| 1544 | "hyperlink_label": null, | |
| 1545 | "italic": null, | |
| 1546 | "language": null, | |
| 1547 | "line_spacing": null, | |
| 1548 | "list_spacing": null, | |
| 1549 | "math": null, | |
| 1550 | "math_object": null, | |
| 1551 | "rtl": null, | |
| 1552 | "space_after": null, | |
| 1553 | "space_before": null, | |
| 1554 | "strike": null, | |
| 1555 | "subscript": null, | |
| 1556 | "superscript": null, | |
| 1557 | "underline": null | |
| 1558 | }, | |
| 1559 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},24", | |
| 1560 | "level": 1, | |
| 1561 | "lists": [], | |
| 1562 | "media": { | |
| 1563 | "recordings": [], | |
| 1564 | "time_ms": null | |
| 1565 | }, | |
| 1566 | "parent": null, | |
| 1567 | "style": null, | |
| 1568 | "tags": [] | |
| 1569 | } | |
| 1570 | ], | |
| 1571 | "title": false, | |
| 1572 | "unsupported": [] | |
| 1573 | } | |
| 1574 | } | |
| 1575 | } | |
| 1576 | }, | |
| 1577 | "space": "{2C70EAEB-A51D-448F-8955-89156506CF95},1" | |
| 1578 | } | |
| 1579 | } | |
| 1580 | ] | |
| 1581 | }, | |
| 1582 | "id": 2 | |
| 1583 | } | |
| 1584 | ], | |
| 1585 | [ | |
| 1586 | { | |
| 1587 | "edit": { | |
| 1588 | "at": 133000000000000000, | |
| 1589 | "ops": [ | |
| 1590 | { | |
| 1591 | "Section": { | |
| 1592 | "Pages": [ | |
| 1593 | { | |
| 1594 | "guid": [ | |
| 1595 | 215, | |
| 1596 | 122, | |
| 1597 | 231, | |
| 1598 | 63, | |
| 1599 | 33, | |
| 1600 | 23, | |
| 1601 | 153, | |
| 1602 | 71, | |
| 1603 | 146, | |
| 1604 | 55, | |
| 1605 | 135, | |
| 1606 | 108, | |
| 1607 | 108, | |
| 1608 | 25, | |
| 1609 | 220, | |
| 1610 | 189 | |
| 1611 | ], | |
| 1612 | "level": 1, | |
| 1613 | "position": { | |
| 1614 | "Before": "{232109B4-E38E-4D7A-AB6B-2C52BCD49511},1" | |
| 1615 | }, | |
| 1616 | "space": "{907D9244-8140-4F4C-8BA9-6E42C8F2F5CC},1" | |
| 1617 | }, | |
| 1618 | { | |
| 1619 | "guid": [ | |
| 1620 | 147, | |
| 1621 | 175, | |
| 1622 | 210, | |
| 1623 | 70, | |
| 1624 | 177, | |
| 1625 | 159, | |
| 1626 | 86, | |
| 1627 | 67, | |
| 1628 | 169, | |
| 1629 | 228, | |
| 1630 | 21, | |
| 1631 | 200, | |
| 1632 | 173, | |
| 1633 | 16, | |
| 1634 | 23, | |
| 1635 | 190 | |
| 1636 | ], | |
| 1637 | "level": 2, | |
| 1638 | "position": "Keep", | |
| 1639 | "space": "{1A4EE170-3A3E-4E9E-9CDC-8DD17C510B26},1" | |
| 1640 | } | |
| 1641 | ] | |
| 1642 | } | |
| 1643 | } | |
| 1644 | ] | |
| 1645 | }, | |
| 1646 | "id": 1 | |
| 1647 | }, | |
| 1648 | { | |
| 1649 | "edit": { | |
| 1650 | "at": 134349951620000000, | |
| 1651 | "ops": [ | |
| 1652 | { | |
| 1653 | "Page": { | |
| 1654 | "op": { | |
| 1655 | "Add": { | |
| 1656 | "before": null, | |
| 1657 | "object": { | |
| 1658 | "Outline": { | |
| 1659 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},26", | |
| 1660 | "indents": [], | |
| 1661 | "layout": { | |
| 1662 | "max_height": null, | |
| 1663 | "max_width": null, | |
| 1664 | "reserved_width": null, | |
| 1665 | "width_set_by_user": null, | |
| 1666 | "x": 36.0, | |
| 1667 | "y": 36.0 | |
| 1668 | }, | |
| 1669 | "min_width": null, | |
| 1670 | "paragraphs": [ | |
| 1671 | { | |
| 1672 | "collapsed": false, | |
| 1673 | "content": { | |
| 1674 | "Text": { | |
| 1675 | "date_field": null, | |
| 1676 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},25", | |
| 1677 | "tags": [], | |
| 1678 | "text": { | |
| 1679 | "spans": [ | |
| 1680 | { | |
| 1681 | "end": 16, | |
| 1682 | "format": { | |
| 1683 | "alignment": null, | |
| 1684 | "bold": null, | |
| 1685 | "color": null, | |
| 1686 | "embedded_object": null, | |
| 1687 | "font": "Calibri", | |
| 1688 | "font_size": 11.0, | |
| 1689 | "hidden": null, | |
| 1690 | "highlight": null, | |
| 1691 | "hyperlink": null, | |
| 1692 | "hyperlink_label": null, | |
| 1693 | "italic": null, | |
| 1694 | "language": 1033, | |
| 1695 | "line_spacing": null, | |
| 1696 | "list_spacing": null, | |
| 1697 | "math": null, | |
| 1698 | "math_object": null, | |
| 1699 | "rtl": null, | |
| 1700 | "space_after": null, | |
| 1701 | "space_before": null, | |
| 1702 | "strike": null, | |
| 1703 | "subscript": null, | |
| 1704 | "superscript": null, | |
| 1705 | "underline": null | |
| 1706 | } | |
| 1707 | } | |
| 1708 | ], | |
| 1709 | "text": "Actor 8 🦀 é" | |
| 1710 | } | |
| 1711 | } | |
| 1712 | }, | |
| 1713 | "format": { | |
| 1714 | "alignment": null, | |
| 1715 | "bold": null, | |
| 1716 | "color": null, | |
| 1717 | "embedded_object": null, | |
| 1718 | "font": null, | |
| 1719 | "font_size": null, | |
| 1720 | "hidden": null, | |
| 1721 | "highlight": null, | |
| 1722 | "hyperlink": null, | |
| 1723 | "hyperlink_label": null, | |
| 1724 | "italic": null, | |
| 1725 | "language": null, | |
| 1726 | "line_spacing": null, | |
| 1727 | "list_spacing": null, | |
| 1728 | "math": null, | |
| 1729 | "math_object": null, | |
| 1730 | "rtl": null, | |
| 1731 | "space_after": null, | |
| 1732 | "space_before": null, | |
| 1733 | "strike": null, | |
| 1734 | "subscript": null, | |
| 1735 | "superscript": null, | |
| 1736 | "underline": null | |
| 1737 | }, | |
| 1738 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},27", | |
| 1739 | "level": 1, | |
| 1740 | "lists": [], | |
| 1741 | "media": { | |
| 1742 | "recordings": [], | |
| 1743 | "time_ms": null | |
| 1744 | }, | |
| 1745 | "parent": null, | |
| 1746 | "style": null, | |
| 1747 | "tags": [] | |
| 1748 | } | |
| 1749 | ], | |
| 1750 | "title": false, | |
| 1751 | "unsupported": [] | |
| 1752 | } | |
| 1753 | } | |
| 1754 | } | |
| 1755 | }, | |
| 1756 | "space": "{907D9244-8140-4F4C-8BA9-6E42C8F2F5CC},1" | |
| 1757 | } | |
| 1758 | } | |
| 1759 | ] | |
| 1760 | }, | |
| 1761 | "id": 2 | |
| 1762 | } | |
| 1763 | ], | |
| 1764 | [ | |
| 1765 | { | |
| 1766 | "edit": { | |
| 1767 | "at": 133000000000000000, | |
| 1768 | "ops": [ | |
| 1769 | { | |
| 1770 | "Section": { | |
| 1771 | "Pages": [ | |
| 1772 | { | |
| 1773 | "guid": [ | |
| 1774 | 114, | |
| 1775 | 248, | |
| 1776 | 161, | |
| 1777 | 39, | |
| 1778 | 180, | |
| 1779 | 234, | |
| 1780 | 235, | |
| 1781 | 74, | |
| 1782 | 172, | |
| 1783 | 83, | |
| 1784 | 92, | |
| 1785 | 166, | |
| 1786 | 243, | |
| 1787 | 74, | |
| 1788 | 0, | |
| 1789 | 10 | |
| 1790 | ], | |
| 1791 | "level": 1, | |
| 1792 | "position": { | |
| 1793 | "Before": "{CF289176-0CDB-4163-8A44-C51958D8B8A1},1" | |
| 1794 | }, | |
| 1795 | "space": "{8679521F-8046-4611-A5A3-AB151635E26D},1" | |
| 1796 | }, | |
| 1797 | { | |
| 1798 | "guid": [ | |
| 1799 | 161, | |
| 1800 | 154, | |
| 1801 | 81, | |
| 1802 | 212, | |
| 1803 | 11, | |
| 1804 | 138, | |
| 1805 | 231, | |
| 1806 | 74, | |
| 1807 | 178, | |
| 1808 | 141, | |
| 1809 | 20, | |
| 1810 | 210, | |
| 1811 | 107, | |
| 1812 | 144, | |
| 1813 | 145, | |
| 1814 | 81 | |
| 1815 | ], | |
| 1816 | "level": 2, | |
| 1817 | "position": "Keep", | |
| 1818 | "space": "{99334A81-D662-4AC6-A49D-A0860B4E0DD8},1" | |
| 1819 | } | |
| 1820 | ] | |
| 1821 | } | |
| 1822 | } | |
| 1823 | ] | |
| 1824 | }, | |
| 1825 | "id": 1 | |
| 1826 | }, | |
| 1827 | { | |
| 1828 | "edit": { | |
| 1829 | "at": 134349951620000000, | |
| 1830 | "ops": [ | |
| 1831 | { | |
| 1832 | "Page": { | |
| 1833 | "op": { | |
| 1834 | "Add": { | |
| 1835 | "before": null, | |
| 1836 | "object": { | |
| 1837 | "Outline": { | |
| 1838 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},29", | |
| 1839 | "indents": [], | |
| 1840 | "layout": { | |
| 1841 | "max_height": null, | |
| 1842 | "max_width": null, | |
| 1843 | "reserved_width": null, | |
| 1844 | "width_set_by_user": null, | |
| 1845 | "x": 36.0, | |
| 1846 | "y": 36.0 | |
| 1847 | }, | |
| 1848 | "min_width": null, | |
| 1849 | "paragraphs": [ | |
| 1850 | { | |
| 1851 | "collapsed": false, | |
| 1852 | "content": { | |
| 1853 | "Text": { | |
| 1854 | "date_field": null, | |
| 1855 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},28", | |
| 1856 | "tags": [], | |
| 1857 | "text": { | |
| 1858 | "spans": [ | |
| 1859 | { | |
| 1860 | "end": 16, | |
| 1861 | "format": { | |
| 1862 | "alignment": null, | |
| 1863 | "bold": null, | |
| 1864 | "color": null, | |
| 1865 | "embedded_object": null, | |
| 1866 | "font": "Calibri", | |
| 1867 | "font_size": 11.0, | |
| 1868 | "hidden": null, | |
| 1869 | "highlight": null, | |
| 1870 | "hyperlink": null, | |
| 1871 | "hyperlink_label": null, | |
| 1872 | "italic": null, | |
| 1873 | "language": 1033, | |
| 1874 | "line_spacing": null, | |
| 1875 | "list_spacing": null, | |
| 1876 | "math": null, | |
| 1877 | "math_object": null, | |
| 1878 | "rtl": null, | |
| 1879 | "space_after": null, | |
| 1880 | "space_before": null, | |
| 1881 | "strike": null, | |
| 1882 | "subscript": null, | |
| 1883 | "superscript": null, | |
| 1884 | "underline": null | |
| 1885 | } | |
| 1886 | } | |
| 1887 | ], | |
| 1888 | "text": "Actor 9 🦀 é" | |
| 1889 | } | |
| 1890 | } | |
| 1891 | }, | |
| 1892 | "format": { | |
| 1893 | "alignment": null, | |
| 1894 | "bold": null, | |
| 1895 | "color": null, | |
| 1896 | "embedded_object": null, | |
| 1897 | "font": null, | |
| 1898 | "font_size": null, | |
| 1899 | "hidden": null, | |
| 1900 | "highlight": null, | |
| 1901 | "hyperlink": null, | |
| 1902 | "hyperlink_label": null, | |
| 1903 | "italic": null, | |
| 1904 | "language": null, | |
| 1905 | "line_spacing": null, | |
| 1906 | "list_spacing": null, | |
| 1907 | "math": null, | |
| 1908 | "math_object": null, | |
| 1909 | "rtl": null, | |
| 1910 | "space_after": null, | |
| 1911 | "space_before": null, | |
| 1912 | "strike": null, | |
| 1913 | "subscript": null, | |
| 1914 | "superscript": null, | |
| 1915 | "underline": null | |
| 1916 | }, | |
| 1917 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},30", | |
| 1918 | "level": 1, | |
| 1919 | "lists": [], | |
| 1920 | "media": { | |
| 1921 | "recordings": [], | |
| 1922 | "time_ms": null | |
| 1923 | }, | |
| 1924 | "parent": null, | |
| 1925 | "style": null, | |
| 1926 | "tags": [] | |
| 1927 | } | |
| 1928 | ], | |
| 1929 | "title": false, | |
| 1930 | "unsupported": [] | |
| 1931 | } | |
| 1932 | } | |
| 1933 | } | |
| 1934 | }, | |
| 1935 | "space": "{8679521F-8046-4611-A5A3-AB151635E26D},1" | |
| 1936 | } | |
| 1937 | } | |
| 1938 | ] | |
| 1939 | }, | |
| 1940 | "id": 2 | |
| 1941 | } | |
| 1942 | ], | |
| 1943 | [ | |
| 1944 | { | |
| 1945 | "edit": { | |
| 1946 | "at": 133000000000000000, | |
| 1947 | "ops": [ | |
| 1948 | { | |
| 1949 | "Section": { | |
| 1950 | "Pages": [ | |
| 1951 | { | |
| 1952 | "guid": [ | |
| 1953 | 141, | |
| 1954 | 40, | |
| 1955 | 59, | |
| 1956 | 48, | |
| 1957 | 97, | |
| 1958 | 31, | |
| 1959 | 212, | |
| 1960 | 65, | |
| 1961 | 153, | |
| 1962 | 12, | |
| 1963 | 89, | |
| 1964 | 90, | |
| 1965 | 90, | |
| 1966 | 202, | |
| 1967 | 68, | |
| 1968 | 159 | |
| 1969 | ], | |
| 1970 | "level": 1, | |
| 1971 | "position": { | |
| 1972 | "Before": "{BDFF266F-D35B-4408-B624-B3C5DE9DECED},1" | |
| 1973 | }, | |
| 1974 | "space": "{7BAB3EDA-868E-4B41-AD61-B32D463AB3E0},1" | |
| 1975 | }, | |
| 1976 | { | |
| 1977 | "guid": [ | |
| 1978 | 71, | |
| 1979 | 27, | |
| 1980 | 109, | |
| 1981 | 113, | |
| 1982 | 163, | |
| 1983 | 222, | |
| 1984 | 41, | |
| 1985 | 74, | |
| 1986 | 134, | |
| 1987 | 176, | |
| 1988 | 81, | |
| 1989 | 84, | |
| 1990 | 203, | |
| 1991 | 181, | |
| 1992 | 219, | |
| 1993 | 203 | |
| 1994 | ], | |
| 1995 | "level": 2, | |
| 1996 | "position": "Keep", | |
| 1997 | "space": "{458A27E7-608E-467D-87C0-540AA0AF5AB6},1" | |
| 1998 | } | |
| 1999 | ] | |
| 2000 | } | |
| 2001 | } | |
| 2002 | ] | |
| 2003 | }, | |
| 2004 | "id": 1 | |
| 2005 | }, | |
| 2006 | { | |
| 2007 | "edit": { | |
| 2008 | "at": 134349951620000000, | |
| 2009 | "ops": [ | |
| 2010 | { | |
| 2011 | "Page": { | |
| 2012 | "op": { | |
| 2013 | "Add": { | |
| 2014 | "before": null, | |
| 2015 | "object": { | |
| 2016 | "Outline": { | |
| 2017 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},32", | |
| 2018 | "indents": [], | |
| 2019 | "layout": { | |
| 2020 | "max_height": null, | |
| 2021 | "max_width": null, | |
| 2022 | "reserved_width": null, | |
| 2023 | "width_set_by_user": null, | |
| 2024 | "x": 36.0, | |
| 2025 | "y": 36.0 | |
| 2026 | }, | |
| 2027 | "min_width": null, | |
| 2028 | "paragraphs": [ | |
| 2029 | { | |
| 2030 | "collapsed": false, | |
| 2031 | "content": { | |
| 2032 | "Text": { | |
| 2033 | "date_field": null, | |
| 2034 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},31", | |
| 2035 | "tags": [], | |
| 2036 | "text": { | |
| 2037 | "spans": [ | |
| 2038 | { | |
| 2039 | "end": 17, | |
| 2040 | "format": { | |
| 2041 | "alignment": null, | |
| 2042 | "bold": null, | |
| 2043 | "color": null, | |
| 2044 | "embedded_object": null, | |
| 2045 | "font": "Calibri", | |
| 2046 | "font_size": 11.0, | |
| 2047 | "hidden": null, | |
| 2048 | "highlight": null, | |
| 2049 | "hyperlink": null, | |
| 2050 | "hyperlink_label": null, | |
| 2051 | "italic": null, | |
| 2052 | "language": 1033, | |
| 2053 | "line_spacing": null, | |
| 2054 | "list_spacing": null, | |
| 2055 | "math": null, | |
| 2056 | "math_object": null, | |
| 2057 | "rtl": null, | |
| 2058 | "space_after": null, | |
| 2059 | "space_before": null, | |
| 2060 | "strike": null, | |
| 2061 | "subscript": null, | |
| 2062 | "superscript": null, | |
| 2063 | "underline": null | |
| 2064 | } | |
| 2065 | } | |
| 2066 | ], | |
| 2067 | "text": "Actor 10 🦀 é" | |
| 2068 | } | |
| 2069 | } | |
| 2070 | }, | |
| 2071 | "format": { | |
| 2072 | "alignment": null, | |
| 2073 | "bold": null, | |
| 2074 | "color": null, | |
| 2075 | "embedded_object": null, | |
| 2076 | "font": null, | |
| 2077 | "font_size": null, | |
| 2078 | "hidden": null, | |
| 2079 | "highlight": null, | |
| 2080 | "hyperlink": null, | |
| 2081 | "hyperlink_label": null, | |
| 2082 | "italic": null, | |
| 2083 | "language": null, | |
| 2084 | "line_spacing": null, | |
| 2085 | "list_spacing": null, | |
| 2086 | "math": null, | |
| 2087 | "math_object": null, | |
| 2088 | "rtl": null, | |
| 2089 | "space_after": null, | |
| 2090 | "space_before": null, | |
| 2091 | "strike": null, | |
| 2092 | "subscript": null, | |
| 2093 | "superscript": null, | |
| 2094 | "underline": null | |
| 2095 | }, | |
| 2096 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},33", | |
| 2097 | "level": 1, | |
| 2098 | "lists": [], | |
| 2099 | "media": { | |
| 2100 | "recordings": [], | |
| 2101 | "time_ms": null | |
| 2102 | }, | |
| 2103 | "parent": null, | |
| 2104 | "style": null, | |
| 2105 | "tags": [] | |
| 2106 | } | |
| 2107 | ], | |
| 2108 | "title": false, | |
| 2109 | "unsupported": [] | |
| 2110 | } | |
| 2111 | } | |
| 2112 | } | |
| 2113 | }, | |
| 2114 | "space": "{7BAB3EDA-868E-4B41-AD61-B32D463AB3E0},1" | |
| 2115 | } | |
| 2116 | } | |
| 2117 | ] | |
| 2118 | }, | |
| 2119 | "id": 2 | |
| 2120 | } | |
| 2121 | ], | |
| 2122 | [ | |
| 2123 | { | |
| 2124 | "edit": { | |
| 2125 | "at": 133000000000000000, | |
| 2126 | "ops": [ | |
| 2127 | { | |
| 2128 | "Section": { | |
| 2129 | "Pages": [ | |
| 2130 | { | |
| 2131 | "guid": [ | |
| 2132 | 141, | |
| 2133 | 240, | |
| 2134 | 28, | |
| 2135 | 163, | |
| 2136 | 72, | |
| 2137 | 70, | |
| 2138 | 7, | |
| 2139 | 72, | |
| 2140 | 187, | |
| 2141 | 241, | |
| 2142 | 188, | |
| 2143 | 124, | |
| 2144 | 179, | |
| 2145 | 164, | |
| 2146 | 65, | |
| 2147 | 183 | |
| 2148 | ], | |
| 2149 | "level": 1, | |
| 2150 | "position": { | |
| 2151 | "Before": "{2EDB6F23-646D-4B69-A92A-14293B52E874},1" | |
| 2152 | }, | |
| 2153 | "space": "{9F7A4423-B568-4CA7-BE9D-8003FAF044AD},1" | |
| 2154 | }, | |
| 2155 | { | |
| 2156 | "guid": [ | |
| 2157 | 134, | |
| 2158 | 79, | |
| 2159 | 134, | |
| 2160 | 224, | |
| 2161 | 23, | |
| 2162 | 71, | |
| 2163 | 222, | |
| 2164 | 68, | |
| 2165 | 132, | |
| 2166 | 196, | |
| 2167 | 140, | |
| 2168 | 39, | |
| 2169 | 58, | |
| 2170 | 135, | |
| 2171 | 58, | |
| 2172 | 234 | |
| 2173 | ], | |
| 2174 | "level": 2, | |
| 2175 | "position": "Keep", | |
| 2176 | "space": "{E455C07B-77AB-4D41-91AE-3CAD15027F85},1" | |
| 2177 | } | |
| 2178 | ] | |
| 2179 | } | |
| 2180 | } | |
| 2181 | ] | |
| 2182 | }, | |
| 2183 | "id": 1 | |
| 2184 | }, | |
| 2185 | { | |
| 2186 | "edit": { | |
| 2187 | "at": 134349951620000000, | |
| 2188 | "ops": [ | |
| 2189 | { | |
| 2190 | "Page": { | |
| 2191 | "op": { | |
| 2192 | "Add": { | |
| 2193 | "before": null, | |
| 2194 | "object": { | |
| 2195 | "Outline": { | |
| 2196 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},35", | |
| 2197 | "indents": [], | |
| 2198 | "layout": { | |
| 2199 | "max_height": null, | |
| 2200 | "max_width": null, | |
| 2201 | "reserved_width": null, | |
| 2202 | "width_set_by_user": null, | |
| 2203 | "x": 36.0, | |
| 2204 | "y": 36.0 | |
| 2205 | }, | |
| 2206 | "min_width": null, | |
| 2207 | "paragraphs": [ | |
| 2208 | { | |
| 2209 | "collapsed": false, | |
| 2210 | "content": { | |
| 2211 | "Text": { | |
| 2212 | "date_field": null, | |
| 2213 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},34", | |
| 2214 | "tags": [], | |
| 2215 | "text": { | |
| 2216 | "spans": [ | |
| 2217 | { | |
| 2218 | "end": 17, | |
| 2219 | "format": { | |
| 2220 | "alignment": null, | |
| 2221 | "bold": null, | |
| 2222 | "color": null, | |
| 2223 | "embedded_object": null, | |
| 2224 | "font": "Calibri", | |
| 2225 | "font_size": 11.0, | |
| 2226 | "hidden": null, | |
| 2227 | "highlight": null, | |
| 2228 | "hyperlink": null, | |
| 2229 | "hyperlink_label": null, | |
| 2230 | "italic": null, | |
| 2231 | "language": 1033, | |
| 2232 | "line_spacing": null, | |
| 2233 | "list_spacing": null, | |
| 2234 | "math": null, | |
| 2235 | "math_object": null, | |
| 2236 | "rtl": null, | |
| 2237 | "space_after": null, | |
| 2238 | "space_before": null, | |
| 2239 | "strike": null, | |
| 2240 | "subscript": null, | |
| 2241 | "superscript": null, | |
| 2242 | "underline": null | |
| 2243 | } | |
| 2244 | } | |
| 2245 | ], | |
| 2246 | "text": "Actor 11 🦀 é" | |
| 2247 | } | |
| 2248 | } | |
| 2249 | }, | |
| 2250 | "format": { | |
| 2251 | "alignment": null, | |
| 2252 | "bold": null, | |
| 2253 | "color": null, | |
| 2254 | "embedded_object": null, | |
| 2255 | "font": null, | |
| 2256 | "font_size": null, | |
| 2257 | "hidden": null, | |
| 2258 | "highlight": null, | |
| 2259 | "hyperlink": null, | |
| 2260 | "hyperlink_label": null, | |
| 2261 | "italic": null, | |
| 2262 | "language": null, | |
| 2263 | "line_spacing": null, | |
| 2264 | "list_spacing": null, | |
| 2265 | "math": null, | |
| 2266 | "math_object": null, | |
| 2267 | "rtl": null, | |
| 2268 | "space_after": null, | |
| 2269 | "space_before": null, | |
| 2270 | "strike": null, | |
| 2271 | "subscript": null, | |
| 2272 | "superscript": null, | |
| 2273 | "underline": null | |
| 2274 | }, | |
| 2275 | "id": "{2A900876-A601-4591-B865-1DD52FFFDBE3},36", | |
| 2276 | "level": 1, | |
| 2277 | "lists": [], | |
| 2278 | "media": { | |
| 2279 | "recordings": [], | |
| 2280 | "time_ms": null | |
| 2281 | }, | |
| 2282 | "parent": null, | |
| 2283 | "style": null, | |
| 2284 | "tags": [] | |
| 2285 | } | |
| 2286 | ], | |
| 2287 | "title": false, | |
| 2288 | "unsupported": [] | |
| 2289 | } | |
| 2290 | } | |
| 2291 | } | |
| 2292 | }, | |
| 2293 | "space": "{9F7A4423-B568-4CA7-BE9D-8003FAF044AD},1" | |
| 2294 | } | |
| 2295 | } | |
| 2296 | ] | |
| 2297 | }, | |
| 2298 | "id": 2 | |
| 2299 | } | |
| 2300 | ] | |
| 2301 | ], | |
| 2302 | "pages": 37, | |
| 2303 | "publications": 12 | |
| 2304 | } | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/twelve-clients/candidate/pages.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/twelve-clients/candidate/pages.one differ |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-D9F15303 -ExpectedPages 37", "exit": 0, "stdout": "Read 1 sections and 37 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-d9f15303", "hostname": "ONE-M6-D9F15303"} |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/notebook/pages.one created| Binary files /dev/null and b/corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/notebook/pages.one differ |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-D9F15303", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{5E384181-5FEE-4705-AE0B-87BA8EEDA738}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:49:01.000Z" color="#B49EDE"><one:Section name="pages" ID="{089CCD97-AE55-0741-09EE-322ED85608DB}{1}{B0}" path="C:\one-tests\runs\capture\notebook\pages.one" lastModifiedTime="2026-09-27T15:49:01.000Z" color="#8AA8E4"><one:Page ID="{0BFA7ED6-0630-0117-1368-67343E912257}{1}{B0}" name="Sentinel" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{CD569F84-56EC-06BC-19F3-633D7FC19403}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{B00AC232-1760-01E8-1B97-6E125612F519}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{6899DECC-3707-0BA3-395E-02F446F60014}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="2"/><one:Page ID="{87A3B1D0-FC3E-029C-016D-2E37C7D7E22F}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{76A5B994-E9B8-0502-0566-DC0C65B1DF8D}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{C4EAB6D8-97C2-01FC-0D88-F8B6F45A8D78}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="2"/><one:Page ID="{20FE0922-23BE-00AA-3BB3-C8F04AD37392}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{3EE65B8B-45B8-0377-0D62-24C4C914DEA8}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{0BC11570-9454-0161-2490-2DEE533791A5}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="2"/><one:Page ID="{44848439-E323-0BDB-163C-BE294B370128}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{F9FB7C01-0C39-0327-2E1A-DC5EF8139862}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"/><one:Page ID="{55F01B1B-12D5-0633-21EB-900C66775388}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/><one:Page ID="{BAF26D88-1855-0EDD-3E04-AF1D64052238}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{105E2FFF-9B08-0C0B-0232-D2B990D0C0AB}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{8B8ABFF6-4300-0FAB-134A-1FAE3DA52BD4}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/><one:Page ID="{4A83589E-51A1-0BD8-3D77-A6DEADC3CF09}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{49647654-1F9A-090C-0A23-FB3F4CAC53F2}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{0F995DE9-9D71-0D98-0AC6-ADB8718453CB}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/><one:Page ID="{6BB65271-FAF1-00A6-397B-0514E39FDEA7}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{C82A46B3-FD88-0A41-1C3A-CE65F62D4A7A}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{4D783FA2-5C81-0BA3-1F90-31B73D11E0A1}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/><one:Page ID="{58CFC234-88C2-0E53-3377-E1CF95F61F13}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{8D9B9018-4B15-0536-17F5-361799E0052C}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{E10F04BE-3DB3-0D00-1653-3EE09A132638}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/><one:Page ID="{E4C2BA9B-AC9F-0590-318B-06983802254A}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{579E216B-CE51-07A6-1149-44884C244597}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{6EF1C9AF-17E1-0442-26FE-E50B8CA1DBA0}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/><one:Page ID="{F2C67AC0-AD99-0CCD-1F81-C3CFE6C532EB}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{BB97B9A9-2104-0BBF-3066-ADC3A8286827}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{ED8C625E-FBBD-001A-1EBF-C85CFBBEDD5E}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/><one:Page ID="{0F141605-AB51-019D-1743-DBF7B6CA6366}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{C9400EB0-FE84-0ED4-0C06-DB1F2E6D3C6B}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{31350F38-4D51-0CA1-3DE2-3CD0505F8A30}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/><one:Page ID="{EBC56CFC-98B7-067B-04BF-E8D90A00942B}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{5A6447FC-49B2-01B5-1308-7CF3CBA238F2}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"/><one:Page ID="{90EAE8A4-5A74-079D-2B8C-5477E5F2AF03}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"/></one:Section></one:Notebook> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-000.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0BC11570-9454-0161-2490-2DEE533791A5}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{0BC11570-9454-0161-2490-2DEE533791A5}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-001.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0BFA7ED6-0630-0117-1368-67343E912257}{1}{B0}" name="Sentinel" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{089CCD97-AE55-0741-09EE-322ED85608DB}{23}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="76.04243469238281" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{089CCD97-AE55-0741-09EE-322ED85608DB}{24}{B0}" alignment="left"><one:T><![CDATA[Sentinel]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0F141605-AB51-019D-1743-DBF7B6CA6366}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{0F141605-AB51-019D-1743-DBF7B6CA6366}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:02.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{32}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="93.74566650390624" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:02.000Z" lastModifiedTime="2026-09-27T15:06:02.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{33}{B0}" alignment="left"><one:T><![CDATA[Actor 10 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0F995DE9-9D71-0D98-0AC6-ADB8718453CB}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{0F995DE9-9D71-0D98-0AC6-ADB8718453CB}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{105E2FFF-9B08-0C0B-0232-D2B990D0C0AB}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{105E2FFF-9B08-0C0B-0232-D2B990D0C0AB}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{20FE0922-23BE-00AA-3BB3-C8F04AD37392}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{20FE0922-23BE-00AA-3BB3-C8F04AD37392}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{8}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:01.000Z" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{9}{B0}" alignment="left"><one:T><![CDATA[Actor 2 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{31350F38-4D51-0CA1-3DE2-3CD0505F8A30}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{31350F38-4D51-0CA1-3DE2-3CD0505F8A30}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-007.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3EE65B8B-45B8-0377-0D62-24C4C914DEA8}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{3EE65B8B-45B8-0377-0D62-24C4C914DEA8}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{44848439-E323-0BDB-163C-BE294B370128}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{44848439-E323-0BDB-163C-BE294B370128}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{11}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:01.000Z" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{12}{B0}" alignment="left"><one:T><![CDATA[Actor 3 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-009.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{49647654-1F9A-090C-0A23-FB3F4CAC53F2}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{49647654-1F9A-090C-0A23-FB3F4CAC53F2}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-010.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{4A83589E-51A1-0BD8-3D77-A6DEADC3CF09}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{4A83589E-51A1-0BD8-3D77-A6DEADC3CF09}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{17}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:01.000Z" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{18}{B0}" alignment="left"><one:T><![CDATA[Actor 5 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-011.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{4D783FA2-5C81-0BA3-1F90-31B73D11E0A1}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{4D783FA2-5C81-0BA3-1F90-31B73D11E0A1}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-012.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{55F01B1B-12D5-0633-21EB-900C66775388}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{55F01B1B-12D5-0633-21EB-900C66775388}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-013.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{579E216B-CE51-07A6-1149-44884C244597}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{579E216B-CE51-07A6-1149-44884C244597}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-014.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{58CFC234-88C2-0E53-3377-E1CF95F61F13}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{58CFC234-88C2-0E53-3377-E1CF95F61F13}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{23}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:01.000Z" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{24}{B0}" alignment="left"><one:T><![CDATA[Actor 7 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-015.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5A6447FC-49B2-01B5-1308-7CF3CBA238F2}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{5A6447FC-49B2-01B5-1308-7CF3CBA238F2}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-016.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{6899DECC-3707-0BA3-395E-02F446F60014}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{6899DECC-3707-0BA3-395E-02F446F60014}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-017.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{6BB65271-FAF1-00A6-397B-0514E39FDEA7}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{6BB65271-FAF1-00A6-397B-0514E39FDEA7}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{20}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:01.000Z" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{21}{B0}" alignment="left"><one:T><![CDATA[Actor 6 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-018.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{6EF1C9AF-17E1-0442-26FE-E50B8CA1DBA0}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{6EF1C9AF-17E1-0442-26FE-E50B8CA1DBA0}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-019.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{76A5B994-E9B8-0502-0566-DC0C65B1DF8D}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{76A5B994-E9B8-0502-0566-DC0C65B1DF8D}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-020.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{87A3B1D0-FC3E-029C-016D-2E37C7D7E22F}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{87A3B1D0-FC3E-029C-016D-2E37C7D7E22F}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{5}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{6}{B0}" alignment="left"><one:T><![CDATA[Actor 1 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-021.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8B8ABFF6-4300-0FAB-134A-1FAE3DA52BD4}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{8B8ABFF6-4300-0FAB-134A-1FAE3DA52BD4}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-022.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8D9B9018-4B15-0536-17F5-361799E0052C}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{8D9B9018-4B15-0536-17F5-361799E0052C}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-023.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{90EAE8A4-5A74-079D-2B8C-5477E5F2AF03}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{90EAE8A4-5A74-079D-2B8C-5477E5F2AF03}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-024.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B00AC232-1760-01E8-1B97-6E125612F519}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{B00AC232-1760-01E8-1B97-6E125612F519}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-025.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BAF26D88-1855-0EDD-3E04-AF1D64052238}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{BAF26D88-1855-0EDD-3E04-AF1D64052238}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{14}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:01.000Z" lastModifiedTime="2026-09-27T15:06:01.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{15}{B0}" alignment="left"><one:T><![CDATA[Actor 4 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-026.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BB97B9A9-2104-0BBF-3066-ADC3A8286827}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{BB97B9A9-2104-0BBF-3066-ADC3A8286827}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-027.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C4EAB6D8-97C2-01FC-0D88-F8B6F45A8D78}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{C4EAB6D8-97C2-01FC-0D88-F8B6F45A8D78}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-028.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C82A46B3-FD88-0A41-1C3A-CE65F62D4A7A}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{C82A46B3-FD88-0A41-1C3A-CE65F62D4A7A}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-029.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C9400EB0-FE84-0ED4-0C06-DB1F2E6D3C6B}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{C9400EB0-FE84-0ED4-0C06-DB1F2E6D3C6B}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-030.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{CD569F84-56EC-06BC-19F3-633D7FC19403}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{CD569F84-56EC-06BC-19F3-633D7FC19403}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{2}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{3}{B0}" alignment="left"><one:T><![CDATA[Actor 0 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-031.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E10F04BE-3DB3-0D00-1653-3EE09A132638}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{E10F04BE-3DB3-0D00-1653-3EE09A132638}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-032.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E4C2BA9B-AC9F-0590-318B-06983802254A}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{E4C2BA9B-AC9F-0590-318B-06983802254A}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:02.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{26}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:02.000Z" lastModifiedTime="2026-09-27T15:06:02.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{27}{B0}" alignment="left"><one:T><![CDATA[Actor 8 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-033.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{EBC56CFC-98B7-067B-04BF-E8D90A00942B}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{EBC56CFC-98B7-067B-04BF-E8D90A00942B}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:02.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{35}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="93.74566650390624" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:02.000Z" lastModifiedTime="2026-09-27T15:06:02.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{36}{B0}" alignment="left"><one:T><![CDATA[Actor 11 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-034.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{ED8C625E-FBBD-001A-1EBF-C85CFBBEDD5E}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="2"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{ED8C625E-FBBD-001A-1EBF-C85CFBBEDD5E}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-035.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F2C67AC0-AD99-0CCD-1F81-C3CFE6C532EB}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:52.000Z" pageLevel="1" style="font-family:Calibri;font-size:11.0pt" lang="en-US"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{F2C67AC0-AD99-0CCD-1F81-C3CFE6C532EB}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" lastModifiedTime="2026-09-27T15:06:02.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{29}{B0}"><one:Position x="36.0" y="36.0" z="0"/><one:Size width="88.17046356201172" height="13.4277172088623"/><one:OEChildren><one:OE creationTime="2026-09-27T15:06:02.000Z" lastModifiedTime="2026-09-27T15:06:02.000Z" objectID="{5E2F20A9-8BDE-0F4D-0247-750FDF0F0B65}{30}{B0}" alignment="left"><one:T><![CDATA[Actor 9 &#129408; é]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/page-036.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{F9FB7C01-0C39-0327-2E1A-DC5EF8139862}{1}{B0}" name="Same title" dateTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:48:51.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" font="Calibri" fontSize="17.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title showDate="false" showTime="false" lang="en-US"><one:OE author="Author" authorInitials="A" lastModifiedBy="Author" lastModifiedByInitials="A" creationTime="2026-09-27T15:06:00.000Z" lastModifiedTime="2026-09-27T15:06:00.000Z" objectID="{F9FB7C01-0C39-0327-2E1A-DC5EF8139862}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpqs9m09lz", | |
| 3 | "expected_pages": 37, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "pages.one", | |
| 4 | "bytes": 159240, | |
| 5 | "sha256": "dba31b100d591e034dd53a5eaca768b2d104c6c7e005c1ab9d3fee9a9791bcfd", | |
| 6 | "mtime_ns": 1790522182609793250 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/offline-edits-series/twelve-clients/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/03-selected-group-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-161C24F1 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-161c24f1", "hostname": "ONE-M6-161C24F1"} |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-161C24F1", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{9EC88454-02A6-4568-B122-886EDEA7730A}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:40:32.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{636C82C9-30B6-0BC6-3171-CAC8B9DE5FFF}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:40:32.000Z" color="#91BAAE"><one:Page ID="{8356DB3C-7F36-03C1-246C-5A1060947D6F}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"/><one:Page ID="{C93BA2CF-EF9D-0A53-302F-5A318D04B641}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"/><one:Page ID="{E93463FC-E645-0D71-20B2-9CC576B69E24}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"/><one:Page ID="{2E6B31F8-2F80-4F73-83DD-983B770D8497}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"/><one:Page ID="{458ECB58-197C-4542-BC7D-9A60E034108D}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"/><one:Page ID="{3EC7AFBB-4C75-4220-97C7-F261E4FD3DBC}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"/><one:Page ID="{FDF82A85-E080-4827-9DB1-D479CEE2A1FC}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"/><one:Page ID="{A0740116-66C6-4221-A35C-ECAD8AC8350D}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="2"/><one:Page ID="{FDA8C3D5-FC0C-4C7E-BF7A-3401A07A69DB}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{2E6B31F8-2F80-4F73-83DD-983B770D8497}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{0393D04C-C93B-4803-95A3-7879A15B01E8}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{48E4FBE6-A106-4499-90E3-E719023BB0D6}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{48E4FBE6-A106-4499-90E3-E719023BB0D6}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3EC7AFBB-4C75-4220-97C7-F261E4FD3DBC}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{89B9D5F3-E4DF-4DC1-9505-295FC7A39EAF}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{89B9D5F3-E4DF-4DC1-9505-295FC7A39EAF}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{458ECB58-197C-4542-BC7D-9A60E034108D}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{0000DAD5-1431-40F0-A9AC-2660AC28003D}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{D4BFEB25-36EC-4F72-8E28-F884C6B3FAC1}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{D4BFEB25-36EC-4F72-8E28-F884C6B3FAC1}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8356DB3C-7F36-03C1-246C-5A1060947D6F}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{4D23AA27-4383-0BA6-0FEB-0120FAE7F190}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{A0740116-66C6-4221-A35C-ECAD8AC8350D}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{2A207465-84EB-4689-8B1B-F3FF3173ECA9}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2A207465-84EB-4689-8B1B-F3FF3173ECA9}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{2A207465-84EB-4689-8B1B-F3FF3173ECA9}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C93BA2CF-EF9D-0A53-302F-5A318D04B641}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{E6DF6714-40C8-064A-1B45-228FA16268C3}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E93463FC-E645-0D71-20B2-9CC576B69E24}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{FDA8C3D5-FC0C-4C7E-BF7A-3401A07A69DB}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{6D7DE866-FD36-4FD1-837F-848989F20A9A}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{6D7DE866-FD36-4FD1-837F-848989F20A9A}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{6D7DE866-FD36-4FD1-837F-848989F20A9A}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{FDF82A85-E080-4827-9DB1-D479CEE2A1FC}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:40:32.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:27.000Z" objectID="{FFE3B3FF-B426-42B2-AF8E-1E76E019BF41}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{FFE3B3FF-B426-42B2-AF8E-1E76E019BF41}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="158.2952728271484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{FFE3B3FF-B426-42B2-AF8E-1E76E019BF41}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpn80ah_uu", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 58424, | |
| 5 | "sha256": "e7065e4e043857c74bb8fa2ce6291c87378e3dc2224fad2fefe25e0396f645c4", | |
| 6 | "mtime_ns": 1790522182627846620 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/page-edits-series/03-selected-group-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/page-edits-series/04-subpage-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/04-subpage-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-24B26E2E -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-24b26e2e", "hostname": "ONE-M6-24B26E2E"} |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-24B26E2E", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{DBDF670B-2A27-4599-9129-152613AAE8DC}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:40:30.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{5170D56D-D50E-0FE4-1051-815A4F605481}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:40:30.000Z" color="#91BAAE"><one:Page ID="{B14A8C98-9A8E-07E3-054C-1182962A7611}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{FB27F56B-0A25-0E71-110F-11A37BBABD3F}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{DB283458-03FD-0953-0192-D7578008955A}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{926856B2-837E-4603-827C-A73F7C763E73}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{1C77665C-CA38-4B51-A2FD-D3A981B38FE9}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{77929CFC-FCC4-4160-9D5D-D1F2168A1BF3}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{0CDBF81F-A9CD-4602-B6E7-B9F3124336C2}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{CFE47D21-0538-4C05-BC91-9FEB385CAA82}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{CFB49471-19B4-485C-9E5A-7F9356C462A5}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0CDBF81F-A9CD-4602-B6E7-B9F3124336C2}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{BBA58257-0167-49E3-B425-62CD311D95D1}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{BBA58257-0167-49E3-B425-62CD311D95D1}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{1C77665C-CA38-4B51-A2FD-D3A981B38FE9}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{318F87E8-2C83-4C21-B483-33EB57E50A96}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{7AF8AC42-44BE-40BB-B1C3-AC8BF485BBA8}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{7AF8AC42-44BE-40BB-B1C3-AC8BF485BBA8}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{77929CFC-FCC4-4160-9D5D-D1F2168A1BF3}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{321C8D71-F189-44D2-888C-6DF25A960B43}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E6A3BC81-D354-4B50-AF08-B316300DF1BF}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E6A3BC81-D354-4B50-AF08-B316300DF1BF}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-003.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{926856B2-837E-4603-827C-A73F7C763E73}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{183C23C1-6153-42AB-AA3B-B86DC7CDE7D7}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{183C23C1-6153-42AB-AA3B-B86DC7CDE7D7}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{183C23C1-6153-42AB-AA3B-B86DC7CDE7D7}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B14A8C98-9A8E-07E3-054C-1182962A7611}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{7F3FFD83-A63B-0F84-2ECB-4AB20C59FAEE}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{CFB49471-19B4-485C-9E5A-7F9356C462A5}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{5F61BFC2-188E-4BF3-A25F-CF1B7F4C01E4}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{5F61BFC2-188E-4BF3-A25F-CF1B7F4C01E4}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{5F61BFC2-188E-4BF3-A25F-CF1B7F4C01E4}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{CFE47D21-0538-4C05-BC91-9FEB385CAA82}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:27.000Z" objectID="{CDFFE45B-519E-4690-8EAE-55E416A7B43F}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{CDFFE45B-519E-4690-8EAE-55E416A7B43F}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="158.2952728271484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{CDFFE45B-519E-4690-8EAE-55E416A7B43F}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-007.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{DB283458-03FD-0953-0192-D7578008955A}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{FB27F56B-0A25-0E71-110F-11A37BBABD3F}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{D4C330B0-A570-0268-3A65-691D57DC63BD}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp6we9ek5d", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 60208, | |
| 5 | "sha256": "1b91cd7a7b6d225d52155246d1913a5c94b96b3f834a9f75529af349cc598983", | |
| 6 | "mtime_ns": 1790522182669188978 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/page-edits-series/04-subpage-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/candidate/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-88FBA3A0 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-88fba3a0", "hostname": "ONE-M6-88FBA3A0"} |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-88FBA3A0", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{ED32D0E3-E723-4714-9971-6DB63D7C389C}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:40:30.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{2CC49CE9-9D79-0951-1C7E-68E7E295C127}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:40:30.000Z" color="#91BAAE"><one:Page ID="{CCFEC51C-D2F9-0156-0963-F83F3BDFE3B7}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{8693BCEF-4252-08C4-1D20-F81ED64F2899}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{A69C7DDC-4B8A-0FE6-0DBD-3EEA2DFD00FC}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{61C32FD8-824F-4DE4-AED2-3A142C461A4F}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{0A26D578-B4B3-47D5-9172-384FBB7F8E55}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{716FB19B-E1BA-40B7-BAC8-504EBFB6A364}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{B25034A5-4D4F-4AB0-B0BE-765695A93F24}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"/><one:Page ID="{EFDC1F36-CB09-40B6-8E53-4E82D183ABD5}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="3"/><one:Page ID="{B200DDF5-51C3-4EE9-9275-962EFB31F703}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{0A26D578-B4B3-47D5-9172-384FBB7F8E55}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{4FA8C4F5-B9FE-4267-84A3-844FF7639EE5}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9B17F505-9B23-4DE5-A327-5AAB9DF86419}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9B17F505-9B23-4DE5-A327-5AAB9DF86419}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{61C32FD8-824F-4DE4-AED2-3A142C461A4F}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{4C3BCE6C-64F4-4A94-B8AC-DA56FA109F30}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{074CE5C6-0CC9-460E-BDEC-453659702E0E}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{074CE5C6-0CC9-460E-BDEC-453659702E0E}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{716FB19B-E1BA-40B7-BAC8-504EBFB6A364}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C611CBD3-4910-4F56-B80A-8B709CE80077}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C611CBD3-4910-4F56-B80A-8B709CE80077}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8693BCEF-4252-08C4-1D20-F81ED64F2899}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{A9777934-ED07-04DD-364A-80A0FA29F61B}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-004.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{A69C7DDC-4B8A-0FE6-0DBD-3EEA2DFD00FC}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B200DDF5-51C3-4EE9-9275-962EFB31F703}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{22D5F646-50F9-4D46-AE70-26A6D2B99442}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{22D5F646-50F9-4D46-AE70-26A6D2B99442}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{22D5F646-50F9-4D46-AE70-26A6D2B99442}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B25034A5-4D4F-4AB0-B0BE-765695A93F24}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:27.000Z" objectID="{B04BADDF-19E9-4025-8281-BC59BB522199}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{B04BADDF-19E9-4025-8281-BC59BB522199}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="158.2952728271484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{B04BADDF-19E9-4025-8281-BC59BB522199}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-007.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{CCFEC51C-D2F9-0156-0963-F83F3BDFE3B7}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{028BB407-EE4C-0931-22E4-A30FA1AC6F48}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{EFDC1F36-CB09-40B6-8E53-4E82D183ABD5}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:30.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{65886A45-2924-441E-A614-51D06A387271}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{65886A45-2924-441E-A614-51D06A387271}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{65886A45-2924-441E-A614-51D06A387271}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpbkgvgbin", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 61944, | |
| 5 | "sha256": "28d85faa977ed919a90b237e93ee7aec55a4d988fafa1994dd5fbfa2e5d038a3", | |
| 6 | "mtime_ns": 1790522182622519129 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/page-edits-series/05-insert-before-subpage/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/06-promoted-level-two/candidate/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-4CCC9DAE -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-4ccc9dae", "hostname": "ONE-M6-4CCC9DAE"} |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-4CCC9DAE", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{29386F8D-3C23-40F0-BFF5-007654C2A05D}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:40:31.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{9C7A2F57-D847-065F-3CF3-6FC59027FED9}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:40:31.000Z" color="#91BAAE"><one:Page ID="{7C4076A2-97C7-0E58-29EE-FF1D496DDC49}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"/><one:Page ID="{362D0F51-076C-07CA-3DAD-FF3CA4FD1767}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"/><one:Page ID="{1622CE62-0EB4-00E8-2D30-39C85F4F3F02}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"/><one:Page ID="{D17D9C66-C771-42EA-8E5F-3D365EF425B1}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"/><one:Page ID="{BA9866C6-F18D-48DB-B1FF-3F6DC9CDB1AB}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"/><one:Page ID="{C1D10225-A484-4FB9-9A45-576CCD049C9A}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"/><one:Page ID="{02EE871B-0871-45BE-9033-7174E71B00DA}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"/><one:Page ID="{5F62AC88-8E37-4FB8-AEDE-49A0A331942B}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="2"/><one:Page ID="{02BE6E4B-14FD-41E7-B2F8-910C8983C8FD}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{02BE6E4B-14FD-41E7-B2F8-910C8983C8FD}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{926B45F8-15C7-4248-8EFD-2184A00BABBC}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{926B45F8-15C7-4248-8EFD-2184A00BABBC}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{926B45F8-15C7-4248-8EFD-2184A00BABBC}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{02EE871B-0871-45BE-9033-7174E71B00DA}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:27.000Z" objectID="{00F51E61-5CD7-4F2B-A20C-BB7BC9E01E67}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{00F51E61-5CD7-4F2B-A20C-BB7BC9E01E67}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="158.2952728271484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{00F51E61-5CD7-4F2B-A20C-BB7BC9E01E67}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-002.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{1622CE62-0EB4-00E8-2D30-39C85F4F3F02}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{362D0F51-076C-07CA-3DAD-FF3CA4FD1767}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{19C9CA8A-A839-0BD3-16C7-8782889BC9E5}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5F62AC88-8E37-4FB8-AEDE-49A0A331942B}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{D536D9FB-6C1A-4B10-8699-56F2188A4D8F}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{D536D9FB-6C1A-4B10-8699-56F2188A4D8F}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{D536D9FB-6C1A-4B10-8699-56F2188A4D8F}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{7C4076A2-97C7-0E58-29EE-FF1D496DDC49}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{B23507B9-AB72-063F-0269-A42DD31E50B6}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{BA9866C6-F18D-48DB-B1FF-3F6DC9CDB1AB}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{FF16774B-FCC0-4D69-A42E-836D85D1A11B}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2BA946BB-DE1D-42EB-83AA-5D89EF4A5BE7}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2BA946BB-DE1D-42EB-83AA-5D89EF4A5BE7}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C1D10225-A484-4FB9-9A45-576CCD049C9A}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{76AF786D-0C2E-4058-9887-8C52EE5A3F89}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{76AF786D-0C2E-4058-9887-8C52EE5A3F89}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/page-008.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{D17D9C66-C771-42EA-8E5F-3D365EF425B1}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:40:31.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{FC857DD2-21CA-459A-9821-DD7488A2A0CE}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B7F25678-49F7-4900-9D61-42142BC211F0}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B7F25678-49F7-4900-9D61-42142BC211F0}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpsvr31me6", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 62696, | |
| 5 | "sha256": "90732ec43728d3485a4ff5da2bb2960201961361ef084e8d97b93965875baa0d", | |
| 6 | "mtime_ns": 1790522182647666599 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/page-edits-series/06-promoted-level-two/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/page-edits-series/07-promoted-root/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/07-promoted-root/candidate/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-AF60A95D -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-af60a95d", "hostname": "ONE-M6-AF60A95D"} |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-AF60A95D", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{7422DBFA-EEF6-46CE-9BF7-9792C7416EC4}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:45:20.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{0377322B-E6E3-0F60-28A3-FB3A6A74EB32}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:45:20.000Z" color="#91BAAE"><one:Page ID="{E34D6BDE-A963-0767-3DBE-6BE2B33EC9A2}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{A920122D-39C8-0EF5-29FD-6BC35EAE028C}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{892FD31E-3010-09D7-3960-AD37A51C2AE9}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1"/><one:Page ID="{4E70811A-F9D5-4BD5-9A0F-A9C9A4A7305A}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1"/><one:Page ID="{25957BBA-CF29-41E4-A5AF-AB92339EA440}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1"/><one:Page ID="{5EDC1F59-9A20-4686-8E15-C39337578971}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1"/><one:Page ID="{9DE39A67-36D5-4C81-8463-E58B1D481531}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1"/><one:Page ID="{C06FB1F4-B093-4687-BA8E-DD5F596281C0}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1"/><one:Page ID="{9DB37337-2A59-48D8-A6A8-05F373D0DD16}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="3"/></one:Section></one:Notebook> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{25957BBA-CF29-41E4-A5AF-AB92339EA440}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{601B6A37-C264-4456-B07E-17927F82B4F0}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B4A45BC7-E0B9-4BD4-97FA-C97615194E0C}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B4A45BC7-E0B9-4BD4-97FA-C97615194E0C}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{4E70811A-F9D5-4BD5-9A0F-A9C9A4A7305A}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{638860AE-1F6E-4CA5-8C71-498B72F1B525}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{28FF4B04-7753-403F-8931-D6EBD191041B}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{28FF4B04-7753-403F-8931-D6EBD191041B}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5EDC1F59-9A20-4686-8E15-C39337578971}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E9A26511-328A-4967-8CD7-18AD14092A62}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{E9A26511-328A-4967-8CD7-18AD14092A62}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{892FD31E-3010-09D7-3960-AD37A51C2AE9}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9DB37337-2A59-48D8-A6A8-05F373D0DD16}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0D665884-2B63-4B77-9AAD-B57B5A58BE57}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0D665884-2B63-4B77-9AAD-B57B5A58BE57}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{0D665884-2B63-4B77-9AAD-B57B5A58BE57}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9DE39A67-36D5-4C81-8463-E58B1D481531}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:27.000Z" objectID="{9FF8031D-6273-4614-B65C-2F8433B30B8C}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{9FF8031D-6273-4614-B65C-2F8433B30B8C}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="158.2952728271484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{9FF8031D-6273-4614-B65C-2F8433B30B8C}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{A920122D-39C8-0EF5-29FD-6BC35EAE028C}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{86C4D7F6-969D-02EC-0297-137D72C8DC0E}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C06FB1F4-B093-4687-BA8E-DD5F596281C0}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:20.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{4A3BC487-52BE-422F-92C9-C20DE2D95864}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4A3BC487-52BE-422F-92C9-C20DE2D95864}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{4A3BC487-52BE-422F-92C9-C20DE2D95864}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E34D6BDE-A963-0767-3DBE-6BE2B33EC9A2}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{2D381AC5-95D6-0F00-1639-30D2294D455D}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpm0pgu6fk", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 64480, | |
| 5 | "sha256": "eb79d7824c9c1135ef3b8aaaa111cdb1277ccf8175729a2d0637a4031742d74f", | |
| 6 | "mtime_ns": 1790522182638013566 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/page-edits-series/07-promoted-root/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/candidate/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-5DB5D160 -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-5db5d160", "hostname": "ONE-M6-5DB5D160"} |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-5DB5D160", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{394583B4-E976-4CB5-8FBB-5F29E722AA8F}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:45:19.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{770C8580-3ADD-0D4F-1063-3180ADDC7EA0}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:45:19.000Z" color="#91BAAE"><one:Page ID="{B414065F-6CAD-44A8-824E-17E59ECA1452}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{E9C8C49C-F667-4AF7-9E68-CF49B4784884}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="3"/><one:Page ID="{9736DC75-755D-0548-057E-A15874965C30}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{DD5BA586-E5F6-0CDA-113D-A1799906971E}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{FD5464B5-EC2E-0BF8-01A0-678D62B4BF7B}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{3A0B36B1-25EB-49FA-A2CF-6373630FA5C8}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{51EECC11-1317-43CB-9D6F-6128F43631D2}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{2AA7A8F2-461E-44A9-B6D5-0929F0FF1CE3}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/><one:Page ID="{E9982DCC-EAEB-4EAE-BCA3-2F31DAE080A3}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{2AA7A8F2-461E-44A9-B6D5-0929F0FF1CE3}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9DD9D2BA-EEB4-4B48-B417-D217D3A1BFF0}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{9DD9D2BA-EEB4-4B48-B417-D217D3A1BFF0}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{3A0B36B1-25EB-49FA-A2CF-6373630FA5C8}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{17F3D705-C350-4E8A-B4B1-8331B55920B7}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{5C84FCAF-AB6D-4210-B1F1-1C5116399189}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{5C84FCAF-AB6D-4210-B1F1-1C5116399189}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{51EECC11-1317-43CB-9D6F-6128F43631D2}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{1460DD9C-1E5A-4679-88BE-DD28B82A2162}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C0DFEC6C-3C87-49FB-AF3A-03CCD2B1DB9E}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{C0DFEC6C-3C87-49FB-AF3A-03CCD2B1DB9E}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{9736DC75-755D-0548-057E-A15874965C30}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{5943AD6E-49E8-0D2F-2EF9-FA68EEE5D0CF}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{B414065F-6CAD-44A8-824E-17E59ECA1452}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{3E40732C-8E80-4000-AA09-08B72571CDF6}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{3E40732C-8E80-4000-AA09-08B72571CDF6}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{3E40732C-8E80-4000-AA09-08B72571CDF6}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-005.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{DD5BA586-E5F6-0CDA-113D-A1799906971E}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{F2BF605D-4AA3-00C3-3A57-D9C7B560499C}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-006.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E9982DCC-EAEB-4EAE-BCA3-2F31DAE080A3}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:27.000Z" objectID="{EB83B4B6-BE4D-443B-8E9C-E53EF41B9E1E}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{EB83B4B6-BE4D-443B-8E9C-E53EF41B9E1E}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="158.2952728271484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{EB83B4B6-BE4D-443B-8E9C-E53EF41B9E1E}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E9C8C49C-F667-4AF7-9E68-CF49B4784884}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{791DEF2F-F75D-4958-A26D-7FC19DF02BC5}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{791DEF2F-F75D-4958-A26D-7FC19DF02BC5}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{791DEF2F-F75D-4958-A26D-7FC19DF02BC5}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{FD5464B5-EC2E-0BF8-01A0-678D62B4BF7B}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:19.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp3lrvn0ah", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 65584, | |
| 5 | "sha256": "7ba31fe2131d88523503fe1ca412b74fe301d6668a8fcdc691209bf9243db10c", | |
| 6 | "mtime_ns": 1790522182626875088 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/page-edits-series/08-collapsed-group-move/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
corpus/page-lifecycle/page-edits-series/README.md created+11| ... | ... | @@ -0,0 +1,11 @@ |
| 1 | # Rust page moves in series of their own | |
| 2 | ||
| 3 | `../page-edits` regenerated since a moved page heads a new page series, as OneNote's | |
| 4 | drag gives the dragged pages one (`../movement`); its following subpages join the series | |
| 5 | before it. `01` and `02` only indent and are unchanged. Each candidate reopened in a fresh | |
| 6 | OneNote 2010 clone with every byte after the header and every active graph unchanged; | |
| 7 | `provenance.json` records the captures (`evidence/series`) and removed clones. | |
| 8 | ||
| 9 | Export with `ONESTORE_PAGE_MOVEMENT_OUTPUT` on `explicit_page_edits_match_native_selection_and_indentation` | |
| 10 | in `crates/onestore/tests/page_movement.rs`, then capture each with `tools/native_runner.py | |
| 11 | INPUT OUTPUT --expected-pages 9 --collect-notebook`. |
corpus/page-lifecycle/page-edits-series/provenance.json created+253| ... | ... | @@ -0,0 +1,253 @@ |
| 1 | { | |
| 2 | "generator": [ | |
| 3 | "crates/onestore/tests/page_movement.rs::explicit_page_edits_match_native_selection_and_indentation" | |
| 4 | ], | |
| 5 | "evidence": "evidence/series", | |
| 6 | "cold": { | |
| 7 | "03-selected-group-move": { | |
| 8 | "run": { | |
| 9 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpn80ah_uu", | |
| 10 | "expected_pages": 9, | |
| 11 | "author": null, | |
| 12 | "author_timeout_seconds": 600, | |
| 13 | "inspect": false, | |
| 14 | "collect_notebook": true, | |
| 15 | "base": { | |
| 16 | "file": "win7-office-base.qcow2", | |
| 17 | "format": "qcow2", | |
| 18 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 19 | "virtual_size": 68719476736 | |
| 20 | }, | |
| 21 | "scripts": { | |
| 22 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 23 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 24 | } | |
| 25 | }, | |
| 26 | "machine": { | |
| 27 | "name": "m6-161c24f1", | |
| 28 | "hostname": "ONE-M6-161C24F1" | |
| 29 | }, | |
| 30 | "teardown": { | |
| 31 | "absent": true | |
| 32 | }, | |
| 33 | "source": [ | |
| 34 | { | |
| 35 | "path": "Lifecycle.one", | |
| 36 | "bytes": 58424, | |
| 37 | "sha256": "e7065e4e043857c74bb8fa2ce6291c87378e3dc2224fad2fefe25e0396f645c4", | |
| 38 | "mtime_ns": 1790522182627846620 | |
| 39 | } | |
| 40 | ] | |
| 41 | }, | |
| 42 | "04-subpage-move": { | |
| 43 | "run": { | |
| 44 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp6we9ek5d", | |
| 45 | "expected_pages": 9, | |
| 46 | "author": null, | |
| 47 | "author_timeout_seconds": 600, | |
| 48 | "inspect": false, | |
| 49 | "collect_notebook": true, | |
| 50 | "base": { | |
| 51 | "file": "win7-office-base.qcow2", | |
| 52 | "format": "qcow2", | |
| 53 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 54 | "virtual_size": 68719476736 | |
| 55 | }, | |
| 56 | "scripts": { | |
| 57 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 58 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 59 | } | |
| 60 | }, | |
| 61 | "machine": { | |
| 62 | "name": "m6-24b26e2e", | |
| 63 | "hostname": "ONE-M6-24B26E2E" | |
| 64 | }, | |
| 65 | "teardown": { | |
| 66 | "absent": true | |
| 67 | }, | |
| 68 | "source": [ | |
| 69 | { | |
| 70 | "path": "Lifecycle.one", | |
| 71 | "bytes": 60208, | |
| 72 | "sha256": "1b91cd7a7b6d225d52155246d1913a5c94b96b3f834a9f75529af349cc598983", | |
| 73 | "mtime_ns": 1790522182669188978 | |
| 74 | } | |
| 75 | ] | |
| 76 | }, | |
| 77 | "05-insert-before-subpage": { | |
| 78 | "run": { | |
| 79 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpbkgvgbin", | |
| 80 | "expected_pages": 9, | |
| 81 | "author": null, | |
| 82 | "author_timeout_seconds": 600, | |
| 83 | "inspect": false, | |
| 84 | "collect_notebook": true, | |
| 85 | "base": { | |
| 86 | "file": "win7-office-base.qcow2", | |
| 87 | "format": "qcow2", | |
| 88 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 89 | "virtual_size": 68719476736 | |
| 90 | }, | |
| 91 | "scripts": { | |
| 92 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 93 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 94 | } | |
| 95 | }, | |
| 96 | "machine": { | |
| 97 | "name": "m6-88fba3a0", | |
| 98 | "hostname": "ONE-M6-88FBA3A0" | |
| 99 | }, | |
| 100 | "teardown": { | |
| 101 | "absent": true | |
| 102 | }, | |
| 103 | "source": [ | |
| 104 | { | |
| 105 | "path": "Lifecycle.one", | |
| 106 | "bytes": 61944, | |
| 107 | "sha256": "28d85faa977ed919a90b237e93ee7aec55a4d988fafa1994dd5fbfa2e5d038a3", | |
| 108 | "mtime_ns": 1790522182622519129 | |
| 109 | } | |
| 110 | ] | |
| 111 | }, | |
| 112 | "06-promoted-level-two": { | |
| 113 | "run": { | |
| 114 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpsvr31me6", | |
| 115 | "expected_pages": 9, | |
| 116 | "author": null, | |
| 117 | "author_timeout_seconds": 600, | |
| 118 | "inspect": false, | |
| 119 | "collect_notebook": true, | |
| 120 | "base": { | |
| 121 | "file": "win7-office-base.qcow2", | |
| 122 | "format": "qcow2", | |
| 123 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 124 | "virtual_size": 68719476736 | |
| 125 | }, | |
| 126 | "scripts": { | |
| 127 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 128 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 129 | } | |
| 130 | }, | |
| 131 | "machine": { | |
| 132 | "name": "m6-4ccc9dae", | |
| 133 | "hostname": "ONE-M6-4CCC9DAE" | |
| 134 | }, | |
| 135 | "teardown": { | |
| 136 | "absent": true | |
| 137 | }, | |
| 138 | "source": [ | |
| 139 | { | |
| 140 | "path": "Lifecycle.one", | |
| 141 | "bytes": 62696, | |
| 142 | "sha256": "90732ec43728d3485a4ff5da2bb2960201961361ef084e8d97b93965875baa0d", | |
| 143 | "mtime_ns": 1790522182647666599 | |
| 144 | } | |
| 145 | ] | |
| 146 | }, | |
| 147 | "07-promoted-root": { | |
| 148 | "run": { | |
| 149 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpm0pgu6fk", | |
| 150 | "expected_pages": 9, | |
| 151 | "author": null, | |
| 152 | "author_timeout_seconds": 600, | |
| 153 | "inspect": false, | |
| 154 | "collect_notebook": true, | |
| 155 | "base": { | |
| 156 | "file": "win7-office-base.qcow2", | |
| 157 | "format": "qcow2", | |
| 158 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 159 | "virtual_size": 68719476736 | |
| 160 | }, | |
| 161 | "scripts": { | |
| 162 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 163 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 164 | } | |
| 165 | }, | |
| 166 | "machine": { | |
| 167 | "name": "m6-af60a95d", | |
| 168 | "hostname": "ONE-M6-AF60A95D" | |
| 169 | }, | |
| 170 | "teardown": { | |
| 171 | "absent": true | |
| 172 | }, | |
| 173 | "source": [ | |
| 174 | { | |
| 175 | "path": "Lifecycle.one", | |
| 176 | "bytes": 64480, | |
| 177 | "sha256": "eb79d7824c9c1135ef3b8aaaa111cdb1277ccf8175729a2d0637a4031742d74f", | |
| 178 | "mtime_ns": 1790522182638013566 | |
| 179 | } | |
| 180 | ] | |
| 181 | }, | |
| 182 | "08-collapsed-group-move": { | |
| 183 | "run": { | |
| 184 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmp3lrvn0ah", | |
| 185 | "expected_pages": 9, | |
| 186 | "author": null, | |
| 187 | "author_timeout_seconds": 600, | |
| 188 | "inspect": false, | |
| 189 | "collect_notebook": true, | |
| 190 | "base": { | |
| 191 | "file": "win7-office-base.qcow2", | |
| 192 | "format": "qcow2", | |
| 193 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 194 | "virtual_size": 68719476736 | |
| 195 | }, | |
| 196 | "scripts": { | |
| 197 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 198 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 199 | } | |
| 200 | }, | |
| 201 | "machine": { | |
| 202 | "name": "m6-5db5d160", | |
| 203 | "hostname": "ONE-M6-5DB5D160" | |
| 204 | }, | |
| 205 | "teardown": { | |
| 206 | "absent": true | |
| 207 | }, | |
| 208 | "source": [ | |
| 209 | { | |
| 210 | "path": "Lifecycle.one", | |
| 211 | "bytes": 65584, | |
| 212 | "sha256": "7ba31fe2131d88523503fe1ca412b74fe301d6668a8fcdc691209bf9243db10c", | |
| 213 | "mtime_ns": 1790522182626875088 | |
| 214 | } | |
| 215 | ] | |
| 216 | }, | |
| 217 | "single-page": { | |
| 218 | "run": { | |
| 219 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpbiygu3ji", | |
| 220 | "expected_pages": 9, | |
| 221 | "author": null, | |
| 222 | "author_timeout_seconds": 600, | |
| 223 | "inspect": false, | |
| 224 | "collect_notebook": true, | |
| 225 | "base": { | |
| 226 | "file": "win7-office-base.qcow2", | |
| 227 | "format": "qcow2", | |
| 228 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 229 | "virtual_size": 68719476736 | |
| 230 | }, | |
| 231 | "scripts": { | |
| 232 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 233 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 234 | } | |
| 235 | }, | |
| 236 | "machine": { | |
| 237 | "name": "m6-231ec95d", | |
| 238 | "hostname": "ONE-M6-231EC95D" | |
| 239 | }, | |
| 240 | "teardown": { | |
| 241 | "absent": true | |
| 242 | }, | |
| 243 | "source": [ | |
| 244 | { | |
| 245 | "path": "Lifecycle.one", | |
| 246 | "bytes": 55032, | |
| 247 | "sha256": "eed7365c2054ffe32321b599ac4456d583130d3cb2e3aed41bf0baac4e27d8d2", | |
| 248 | "mtime_ns": 1790522182633015571 | |
| 249 | } | |
| 250 | ] | |
| 251 | } | |
| 252 | } | |
| 253 | } |
corpus/page-lifecycle/page-edits-series/single-page/candidate/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/single-page/candidate/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/single-page/cold/commands.jsonl created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | {"command": "powershell -NoProfile -Command \"Expand-Archive -LiteralPath C:\\one-tests\\transfer.zip -DestinationPath C:\\one-tests\\runs\\capture\\notebook\"", "exit": 0, "stdout": "", "stderr": "", "error": null} | |
| 2 | {"command": "powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File C:\\one-tests\\read-current.ps1 -Root C:\\one-tests\\runs\\capture -CloneHost ONE-M6-231EC95D -ExpectedPages 9", "exit": 0, "stdout": "Read 1 sections and 9 pages.\r\n", "stderr": "", "error": null} | |
| 3 | {"command": "powershell -NoProfile -Command \"Compress-Archive -Force -Path C:\\one-tests\\runs\\capture\\* -DestinationPath C:\\one-tests\\captured.zip\"", "exit": 0, "stdout": "", "stderr": "", "error": null} |
corpus/page-lifecycle/page-edits-series/single-page/cold/machine.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"name": "m6-231ec95d", "hostname": "ONE-M6-231EC95D"} |
corpus/page-lifecycle/page-edits-series/single-page/cold/notebook/Lifecycle.one created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/single-page/cold/notebook/Lifecycle.one differ |
corpus/page-lifecycle/page-edits-series/single-page/cold/notebook/Open Notebook.onetoc2 created| Binary files /dev/null and b/corpus/page-lifecycle/page-edits-series/single-page/cold/notebook/Open Notebook.onetoc2 differ |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/environment.json created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | { | |
| 2 | "powershell": "5.1.14409.1005", | |
| 3 | "schema": "xs2010", | |
| 4 | "hostname": "ONE-M6-231EC95D", | |
| 5 | "cold": true, | |
| 6 | "onenote": "14.0.4763.1000" | |
| 7 | } |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/hierarchy.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Notebook xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" name="notebook" nickname="notebook" ID="{8867CEE2-9C2C-4391-A958-61C7124F3281}{1}{B0}" path="C:\one-tests\runs\capture\notebook" lastModifiedTime="2026-09-27T15:45:24.000Z" color="#B49EDE"><one:Section name="Lifecycle" ID="{068F58F3-1D08-01A5-316A-B8ACDDCB764A}{1}{B0}" path="C:\one-tests\runs\capture\notebook\Lifecycle.one" lastModifiedTime="2026-09-27T15:45:24.000Z" color="#91BAAE"><one:Page ID="{E6B50106-5288-09A2-2477-2874048154DA}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"/><one:Page ID="{ACD878F5-C223-0030-3034-2855E9119FF4}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"/><one:Page ID="{8CD7B9C6-CBFB-0712-20A9-EEA112A3B791}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"/><one:Page ID="{C597DB2C-4B78-4842-A347-9EC9EEDD1CB8}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="2"/><one:Page ID="{984B19EF-D1B2-461D-BF61-4665C46F406E}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="3"/><one:Page ID="{4B88EBC2-023E-4510-83C6-EA5F1318AD22}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"/><one:Page ID="{206D1162-34C2-4F21-BC66-E80484213938}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"/><one:Page ID="{5B247581-61CB-4843-97DC-800580E81409}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"/><one:Page ID="{981BF0BF-CD3E-4244-9DAA-A61DAAF78849}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"/></one:Section></one:Notebook> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-000.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{206D1162-34C2-4F21-BC66-E80484213938}{1}{B0}" name="Body trailing 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{65E300EF-398F-4A93-A9B7-5404C83D2988}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B15C311F-1B52-4511-8E33-8AE0A2A6D374}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="160.1752014160156" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{B15C311F-1B52-4511-8E33-8AE0A2A6D374}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body trailing &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-001.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{4B88EBC2-023E-4510-83C6-EA5F1318AD22}{1}{B0}" name="Renamed 🦋 é" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:34.000Z" lastModifiedTime="2026-09-09T03:09:34.000Z" objectID="{66700A76-E485-4260-95B8-0A1DC54E285D}{16}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Renamed &#129419; é]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2D0721DC-8CB8-4EFA-90F8-957D662E9963}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="170.2942504882812" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{2D0721DC-8CB8-4EFA-90F8-957D662E9963}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body duplicate &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-002.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{5B247581-61CB-4843-97DC-800580E81409}{1}{B0}" name="Body automatic 🦀 é preserved" dateTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{EC5A0FC9-C961-47A2-951E-5B3BA3B6B71A}{14}{B0}"><one:Position x="36.0" y="14.40000057220459" z="0"/><one:Size width="174.3547973632812" height="13.42771625518799"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{EC5A0FC9-C961-47A2-951E-5B3BA3B6B71A}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body automatic &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-003.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{8CD7B9C6-CBFB-0712-20A9-EEA112A3B791}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-004.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{981BF0BF-CD3E-4244-9DAA-A61DAAF78849}{1}{B0}" name="Same title" dateTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:27.000Z" objectID="{9A0069C5-9998-48D1-AF95-6C12840C96F4}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[Same title]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{9A0069C5-9998-48D1-AF95-6C12840C96F4}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="158.2952728271484" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:27.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{9A0069C5-9998-48D1-AF95-6C12840C96F4}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body parent &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-005.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{984B19EF-D1B2-461D-BF61-4665C46F406E}{1}{B0}" name="grandchild" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="3" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{089E325C-D088-45B2-8364-F6EDEDE7232F}{32}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[grandchild]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{089E325C-D088-45B2-8364-F6EDEDE7232F}{39}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="175.9715728759766" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:30.000Z" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{089E325C-D088-45B2-8364-F6EDEDE7232F}{40}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body grandchild &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-006.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{ACD878F5-C223-0030-3034-2855E9119FF4}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{833CBD2E-6D76-0C29-1B5E-50EBC5774176}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-007.xml created+4| ... | ... | @@ -0,0 +1,4 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{C597DB2C-4B78-4842-A347-9EC9EEDD1CB8}{1}{B0}" name="child" dateTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="2" lang="en-US"><one:QuickStyleDef index="0" name="p" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="11.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{4FC3AE5F-A955-4CEA-8B00-819B5566C51C}{28}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:17.0pt"><one:T><![CDATA[child]]></one:T></one:OE></one:Title><one:Outline author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" lastModifiedTime="2026-09-09T03:09:30.000Z" objectID="{4FC3AE5F-A955-4CEA-8B00-819B5566C51C}{35}{B0}"><one:Position x="36.0" y="86.4000015258789" z="0"/><one:Size width="149.6102294921875" height="13.42771339416504"/><one:OEChildren><one:OE creationTime="2026-09-09T03:09:29.000Z" lastModifiedTime="2026-09-09T03:09:29.000Z" objectID="{4FC3AE5F-A955-4CEA-8B00-819B5566C51C}{36}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[<span | |
| 3 | style='font-weight:bold' lang=en-US>Body child &#129408; é</span><span | |
| 4 | lang=en-US> </span><span style='font-style:italic' lang=x-none>preserved</span>]]></one:T></one:OE></one:OEChildren></one:Outline></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/page-008.xml created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | <?xml version="1.0"?> | |
| 2 | <one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2010/onenote" ID="{E6B50106-5288-09A2-2477-2874048154DA}{1}{B0}" name="Untitled page" dateTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-27T15:45:24.000Z" pageLevel="1"><one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Calibri" fontSize="17.0" spaceBefore="0.0" spaceAfter="0.0"/><one:PageSettings RTL="false" color="automatic"><one:PageSize><one:Automatic/></one:PageSize><one:RuleLines visible="false"/></one:PageSettings><one:Title lang="en-US"><one:OE author="virtual" authorInitials="V" lastModifiedBy="virtual" lastModifiedByInitials="V" creationTime="2026-09-09T03:09:19.000Z" lastModifiedTime="2026-09-09T03:09:19.000Z" objectID="{28C0701D-6E3D-01C5-0FF0-73449EF2D825}{15}{B0}" alignment="left" quickStyleIndex="0"><one:T><![CDATA[]]></one:T></one:OE></one:Title></one:Page> |
corpus/page-lifecycle/page-edits-series/single-page/cold/read/payloads.json created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | [ | |
| 2 | ||
| 3 | ] | |
| \ No newline at end of file |
corpus/page-lifecycle/page-edits-series/single-page/cold/run.json created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | { | |
| 2 | "notebook": "/private/var/folders/90/4f4rngds01j55ggdj_vglk_c0000gn/T/tmpbiygu3ji", | |
| 3 | "expected_pages": 9, | |
| 4 | "author": null, | |
| 5 | "author_timeout_seconds": 600, | |
| 6 | "inspect": false, | |
| 7 | "collect_notebook": true, | |
| 8 | "base": { | |
| 9 | "file": "win7-office-base.qcow2", | |
| 10 | "format": "qcow2", | |
| 11 | "sha256": "a1a4f8fab782ee14885ff801ca2f6347c208fdcfc3513637096f314315c89346", | |
| 12 | "virtual_size": 68719476736 | |
| 13 | }, | |
| 14 | "scripts": { | |
| 15 | "cold.ps1": "c177fc72ae6c2634d186f5671a880de20b09f9716532c37c69cb13aa15c7e331", | |
| 16 | "read.ps1": "04013bfcccee40a17e2a225f9b9e96f40a3a8daad9e350609654f8eda3ccbb41" | |
| 17 | } | |
| 18 | } |
corpus/page-lifecycle/page-edits-series/single-page/cold/scripts/cold.ps1 created+27| ... | ... | @@ -0,0 +1,27 @@ |
| 1 | param([Parameter(Mandatory=$true)][string]$Root, [string]$CloneHost = '') | |
| 2 | Set-StrictMode -Version Latest | |
| 3 | $ErrorActionPreference = 'Stop' | |
| 4 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 5 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 6 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 7 | } | |
| 8 | if (Get-Process ONENOTE -ErrorAction SilentlyContinue) { throw 'Close OneNote before resetting its test cache.' } | |
| 9 | $key = 'HKCU:\Software\Microsoft\Office\14.0\OneNote' | |
| 10 | if ($CloneHost) { | |
| 11 | if ($CloneHost -notmatch '^ONE-[A-Z0-9-]+$' -or [Environment]::MachineName -ne $CloneHost) { | |
| 12 | throw 'The disposable clone hostname does not match this machine.' | |
| 13 | } | |
| 14 | New-Item "$key\Options\Paths" -Force | Out-Null | |
| 15 | New-ItemProperty "$key\Options\Paths" -Name UnfiledNotesSection -PropertyType ExpandString -Value 'C:\one-tests\Loose.one' -Force | Out-Null | |
| 16 | } elseif ((Get-ItemProperty "$key\Options\Paths").UnfiledNotesSection -ne 'C:\one-tests\Loose.one' -or | |
| 17 | -not (Test-Path 'C:\one-tests\profile-original-cache')) { | |
| 18 | throw 'Park the personal OneNote profile before resetting the test cache.' | |
| 19 | } | |
| 20 | $cache = Join-Path $env:LOCALAPPDATA 'Microsoft\OneNote\14.0' | |
| 21 | $parked = Join-Path 'C:\one-tests\caches' ([IO.Path]::GetFileName($root)) | |
| 22 | if (Test-Path $parked) { throw 'Choose a new run; its parked cache already exists.' } | |
| 23 | New-Item -ItemType Directory -Path 'C:\one-tests\caches' -Force | Out-Null | |
| 24 | if (Test-Path $cache) { Move-Item -LiteralPath $cache -Destination $parked } | |
| 25 | if (Test-Path "$key\OpenNotebooks") { Remove-Item "$key\OpenNotebooks" -Recurse } | |
| 26 | New-Item "$key\OpenNotebooks" | Out-Null | |
| 27 | New-ItemProperty "$key\OpenNotebooks" -Name '1' -PropertyType String -Value "$root\notebook" | Out-Null |
corpus/page-lifecycle/page-edits-series/single-page/cold/scripts/read.ps1 created+142| ... | ... | @@ -0,0 +1,142 @@ |
| 1 | param( | |
| 2 | [Parameter(Mandatory=$true)][string]$Root, | |
| 3 | [int]$ExpectedPages = -1, | |
| 4 | [switch]$UseCurrentCache, | |
| 5 | [switch]$Pdf, | |
| 6 | [switch]$KeepOpen, | |
| 7 | [string]$CloneHost = '' | |
| 8 | ) | |
| 9 | Set-StrictMode -Version Latest | |
| 10 | $ErrorActionPreference = 'Stop' | |
| 11 | $root = [IO.Path]::GetFullPath($Root).TrimEnd('\') | |
| 12 | if ([IO.Path]::GetDirectoryName($root) -ne 'C:\one-tests\runs') { | |
| 13 | throw 'Choose a run directly below C:\one-tests\runs.' | |
| 14 | } | |
| 15 | $notebook = Join-Path $root 'notebook' | |
| 16 | $output = Join-Path $root 'read' | |
| 17 | if (Test-Path $output) { throw 'Choose a new read destination.' } | |
| 18 | if ($UseCurrentCache) { | |
| 19 | if ((Get-ItemProperty 'HKCU:\Software\Microsoft\Office\14.0\OneNote\Options\Paths').UnfiledNotesSection -ne 'C:\one-tests\Loose.one') { | |
| 20 | throw 'Park the personal OneNote profile before reading test notebooks.' | |
| 21 | } | |
| 22 | } else { | |
| 23 | & "$PSScriptRoot\cold-current.ps1" -Root $root -CloneHost $CloneHost | |
| 24 | } | |
| 25 | New-Item -ItemType Directory -Path $output | Out-Null | |
| 26 | $app = New-Object -ComObject OneNote.Application | |
| 27 | $notebookId = '' | |
| 28 | $failure = $null | |
| 29 | try { | |
| 30 | $app.OpenHierarchy($notebook, '', [ref]$notebookId, 0) | |
| 31 | $process = Get-Process ONENOTE | |
| 32 | @{ hostname = [Environment]::MachineName; onenote = $process.MainModule.FileVersionInfo.FileVersion; | |
| 33 | powershell = $PSVersionTable.PSVersion.ToString(); schema = 'xs2010'; cold = (-not $UseCurrentCache.IsPresent) } | | |
| 34 | ConvertTo-Json | Set-Content (Join-Path $output 'environment.json') -Encoding UTF8 | |
| 35 | $sections = @() | |
| 36 | foreach ($file in @(Get-ChildItem $notebook -Recurse | Where-Object { $_.Extension -eq '.one' })) { | |
| 37 | $id = '' | |
| 38 | $app.OpenHierarchy($file.FullName, '', [ref]$id, 0) | |
| 39 | $sections += $id | |
| 40 | } | |
| 41 | $deadline = [DateTime]::UtcNow.AddSeconds(300) | |
| 42 | $previous = '' | |
| 43 | $lastChange = '' | |
| 44 | $stableSince = [DateTime]::UtcNow | |
| 45 | $settled = $false | |
| 46 | do { | |
| 47 | $pages = @{} | |
| 48 | foreach ($section in $sections) { | |
| 49 | $hierarchy = '' | |
| 50 | $app.GetHierarchy($section, 4, [ref]$hierarchy, 1) | |
| 51 | [xml]$xml = $hierarchy | |
| 52 | foreach ($node in $xml.SelectNodes('//*[@path]')) { | |
| 53 | if (-not $node.GetAttribute('path').StartsWith("$notebook\", [StringComparison]::OrdinalIgnoreCase)) { | |
| 54 | throw 'OneNote opened a section outside the copied notebook.' | |
| 55 | } | |
| 56 | } | |
| 57 | foreach ($node in $xml.SelectNodes('//*[local-name()="Page"]')) { | |
| 58 | $id = $node.GetAttribute('ID') | |
| 59 | $content = '' | |
| 60 | $app.GetPageContent($id, [ref]$content, 1, 1) | |
| 61 | $pages[$id] = $content | |
| 62 | } | |
| 63 | } | |
| 64 | $signature = [String]::Join('|', @($pages.Keys | Sort-Object | ForEach-Object { $_ + $pages[$_] })) | |
| 65 | if ($signature -ne $previous) { | |
| 66 | $lastChange = $previous | |
| 67 | $previous = $signature | |
| 68 | $stableSince = [DateTime]::UtcNow | |
| 69 | } | |
| 70 | if ((($ExpectedPages -ge 0 -and $pages.Count -eq $ExpectedPages) -or | |
| 71 | ($ExpectedPages -lt 0 -and $pages.Count -gt 0)) -and | |
| 72 | ([DateTime]::UtcNow - $stableSince).TotalSeconds -ge 2) { $settled = $true; break } | |
| 73 | Start-Sleep -Milliseconds 250 | |
| 74 | } while ([DateTime]::UtcNow -lt $deadline) | |
| 75 | if (-not $settled -or ($ExpectedPages -ge 0 -and $pages.Count -ne $ExpectedPages) -or ($ExpectedPages -lt 0 -and $pages.Count -eq 0)) { | |
| 76 | [IO.File]::WriteAllText((Join-Path $output 'previous-signature.txt'), $lastChange, [Text.Encoding]::UTF8) | |
| 77 | $index = 0 | |
| 78 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 79 | [IO.File]::WriteAllText((Join-Path $output ('unsettled-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 80 | $index++ | |
| 81 | } | |
| 82 | $hierarchy = '' | |
| 83 | $app.GetHierarchy($notebookId, 4, [ref]$hierarchy, 1) | |
| 84 | [IO.File]::WriteAllText((Join-Path $output 'unsettled-hierarchy.xml'), $hierarchy, [Text.Encoding]::UTF8) | |
| 85 | throw "Expected $ExpectedPages stable pages; OneNote returned $($pages.Count), settled=$settled." | |
| 86 | } | |
| 87 | $index = 0 | |
| 88 | $payloads = @() | |
| 89 | foreach ($id in @($pages.Keys | Sort-Object)) { | |
| 90 | [IO.File]::WriteAllText((Join-Path $output ('page-{0:d3}.xml' -f $index)), $pages[$id], [Text.Encoding]::UTF8) | |
| 91 | if ($Pdf) { | |
| 92 | $pdfPath = Join-Path $output ('page-{0:d3}.pdf' -f $index) | |
| 93 | $app.NavigateTo($id, '', $false) | |
| 94 | $app.Publish($id, $pdfPath, 3, '') | |
| 95 | if (-not (Test-Path $pdfPath) -or (Get-Item $pdfPath).Length -eq 0) { throw 'OneNote did not publish the page PDF.' } | |
| 96 | } | |
| 97 | [xml]$page = $pages[$id] | |
| 98 | foreach ($file in $page.SelectNodes('//*[local-name()="InsertedFile" or local-name()="MediaFile"]')) { | |
| 99 | $bytes = [IO.File]::ReadAllBytes($file.GetAttribute('pathCache')) | |
| 100 | $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($bytes)).Replace('-', '').ToLowerInvariant() | |
| 101 | [IO.File]::WriteAllBytes((Join-Path $output ($hash + '.attachment')), $bytes) | |
| 102 | $payloads += @{ page = $id; object = $file.ParentNode.GetAttribute('objectID'); | |
| 103 | kind = $file.LocalName; name = $file.GetAttribute('preferredName'); | |
| 104 | sha256 = $hash; bytes = $bytes.Length } | |
| 105 | } | |
| 106 | $index++ | |
| 107 | } | |
| 108 | [IO.File]::WriteAllText((Join-Path $output 'payloads.json'), (ConvertTo-Json -InputObject $payloads -Depth 4), [Text.Encoding]::UTF8) | |
| 109 | $all = '' | |
| 110 | $app.GetHierarchy($notebookId, 4, [ref]$all, 1) | |
| 111 | [xml]$finalTree = $all | |
| 112 | $finalIds = @($finalTree.SelectNodes('//*[local-name()="Page"]') | ForEach-Object { $_.GetAttribute('ID') } | Sort-Object -Unique) | |
| 113 | if ($finalIds.Count -ne $pages.Count -or @($finalIds | Where-Object { -not $pages.ContainsKey($_) }).Count -ne 0) { | |
| 114 | throw 'The notebook hierarchy changed while collecting page evidence; repeat the cold read.' | |
| 115 | } | |
| 116 | [IO.File]::WriteAllText((Join-Path $output 'hierarchy.xml'), $all, [Text.Encoding]::UTF8) | |
| 117 | Write-Output "Read $($sections.Count) sections and $($pages.Count) pages." | |
| 118 | } catch { | |
| 119 | $failure = $_ | |
| 120 | [IO.File]::WriteAllText((Join-Path $output 'failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 121 | throw | |
| 122 | } finally { | |
| 123 | try { | |
| 124 | try { | |
| 125 | if ($notebookId -and $CloneHost) { $app.SyncHierarchy($notebookId) } | |
| 126 | if ($notebookId -and -not $KeepOpen -and (-not $UseCurrentCache -or $CloneHost)) { | |
| 127 | $app.CloseNotebook($notebookId, $false) | |
| 128 | } | |
| 129 | } catch { | |
| 130 | if ($null -eq $failure) { throw } | |
| 131 | [IO.File]::WriteAllText((Join-Path $output 'cleanup-failure.txt'), ($_ | Out-String), [Text.Encoding]::UTF8) | |
| 132 | } | |
| 133 | } finally { | |
| 134 | [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($app) | |
| 135 | } | |
| 136 | $app = $null | |
| 137 | [GC]::Collect() | |
| 138 | [GC]::WaitForPendingFinalizers() | |
| 139 | if (-not $UseCurrentCache -and -not $CloneHost) { | |
| 140 | Get-Process ONENOTE -ErrorAction SilentlyContinue | Wait-Process -Timeout 10 | |
| 141 | } | |
| 142 | } |
corpus/page-lifecycle/page-edits-series/single-page/cold/source.json created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | [ | |
| 2 | { | |
| 3 | "path": "Lifecycle.one", | |
| 4 | "bytes": 55032, | |
| 5 | "sha256": "eed7365c2054ffe32321b599ac4456d583130d3cb2e3aed41bf0baac4e27d8d2", | |
| 6 | "mtime_ns": 1790522182633015571 | |
| 7 | } | |
| 8 | ] |
corpus/page-lifecycle/page-edits-series/single-page/cold/teardown.json created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | {"absent": true} |
crates/notebook/README.md+11-6| ... | ... | @@ -242,12 +242,17 @@ directly from the core document model. |
| 242 | 242 | |
| 243 | 243 | ## Notebook structure |
| 244 | 244 | |
| 245 | `Notebook::create_section`, `create_group`, `rename`, `set_section_color`, | |
| 246 | `reorder` and `delete` change a notebook the way OneNote does: the table of | |
| 247 | contents (`Open Notebook.onetoc2`, created when a folder has none) gains, | |
| 248 | renames, reorders or loses entries; a section's colour lives in its own | |
| 249 | metadata; a deleted section moves into `OneNote_RecycleBin`, a group with its | |
| 250 | own TOC. Every created, renamed or moved file is placed with | |
| 245 | `Notebook::create`, `create_section`, `create_group`, `rename`, `move_entry`, | |
| 246 | `set_section_color`, `reorder` and `delete` change a notebook the way OneNote does: the | |
| 247 | table of contents (`Open Notebook.onetoc2`, created when a folder has none) gains, | |
| 248 | renames, reorders or loses entries; a new notebook holds "New Section 1", and a new | |
| 249 | section an empty section's file plus the page its `PageCreation` makes, in OneNote's | |
| 250 | new-section colour order; a section's colour lives in its own metadata; a deleted | |
| 251 | section moves into `OneNote_RecycleBin`, a group with its own TOC, and a deleted group's | |
| 252 | sections move there too before its folders go. `recycle_pages` keeps copies of pages a | |
| 253 | section is about to delete in `OneNote_RecycleBin/OneNote_DeletedPages.one`, with their | |
| 254 | identities, titles, dates and creation times, as OneNote does | |
| 255 | (`corpus/notebook-management`). Every created, renamed or moved file is placed with | |
| 251 | 256 | `onestore::place_file`, which sets the header's ancestor to the parent TOC's |
| 252 | 257 | identity and the name CRC OneNote checks on open; a file without them is |
| 253 | 258 | re-identified and listed anew. They run over `Storage`: a mounted directory |
crates/notebook/src/merge.rs+45-54| ... | ... | @@ -37,6 +37,8 @@ pub(crate) struct Merged { |
| 37 | 37 | /// Pages whose local version the remote could not take, with who made the first edit |
| 38 | 38 | /// that did not replay and the objects the dropped ops named. |
| 39 | 39 | pub conflicts: BTreeMap<ExGuid, (String, BTreeSet<ExGuid>)>, |
| 40 | /// Pages the base listed that the remote moved (`moved`). | |
| 41 | pub moved: BTreeSet<ExGuid>, | |
| 40 | 42 | } |
| 41 | 43 | |
| 42 | 44 | /// Replays `edits` on `new`, the remote section; `old` is the base they were made on. |
| ... | ... | @@ -54,7 +56,7 @@ pub(crate) fn rebase( |
| 54 | 56 | before, |
| 55 | 57 | after, |
| 56 | 58 | local: orders.0.clone(), |
| 57 | unmoved: unmoved(old, new)?, | |
| 59 | moved: moved(old, new)?, | |
| 58 | 60 | orders, |
| 59 | 61 | created: BTreeSet::new(), |
| 60 | 62 | diffs: BTreeMap::new(), |
| ... | ... | @@ -62,6 +64,7 @@ pub(crate) fn rebase( |
| 62 | 64 | let mut merged = Merged { |
| 63 | 65 | rewritten: Vec::new(), |
| 64 | 66 | conflicts: BTreeMap::new(), |
| 67 | moved: state.moved.clone(), | |
| 65 | 68 | }; |
| 66 | 69 | for queued in edits { |
| 67 | 70 | let mut ops = Vec::new(); |
| ... | ... | @@ -117,14 +120,11 @@ pub(crate) fn rebase( |
| 117 | 120 | } |
| 118 | 121 | Op::Section(section_op) => { |
| 119 | 122 | advance(&mut state.local, section_op); |
| 120 | // The first form of the edit the remote's page list takes, or none. | |
| 121 | let mut kept = None; | |
| 122 | for form in state.forms(new, section_op)? { | |
| 123 | let form = Op::Section(form); | |
| 124 | if apply(&mut state, new, &form)? { | |
| 125 | kept = Some(form); | |
| 126 | break; | |
| 127 | } | |
| 123 | let mut kept = state.form(new, section_op)?.map(Op::Section); | |
| 124 | if let Some(form) = &kept | |
| 125 | && !apply(&mut state, new, form)? | |
| 126 | { | |
| 127 | kept = None; | |
| 128 | 128 | } |
| 129 | 129 | changed |= kept.as_ref() != Some(op); |
| 130 | 130 | ops.extend(kept); |
| ... | ... | @@ -179,15 +179,16 @@ fn named(op: &PageOp) -> Vec<ExGuid> { |
| 179 | 179 | } |
| 180 | 180 | |
| 181 | 181 | /// The edit keeping `page`, the version of page `space` the remote could not take, and |
| 182 | /// applies it to `new`: a conflict page under the remote's page marking `objects` where | |
| 183 | /// `page` holds them, or, where the remote removed the page, the page put back as a copy | |
| 184 | /// where `local`, the section as the queue leaves it, has it. Content outside the page | |
| 185 | /// model stays on the remote's page only; `at` is now. | |
| 182 | /// applies it to `new`, the merged section: a conflict page under the remote's page | |
| 183 | /// marking `objects` where `page` holds them, or, where the remote removed the page, the | |
| 184 | /// page put back as a copy before the next page after it in `local`, the section as the | |
| 185 | /// queue leaves it, that the remote did not move (`moved`). Content outside the page model | |
| 186 | /// stays on the remote's page only; `at` is now. | |
| 186 | 187 | #[allow(clippy::too_many_arguments)] |
| 187 | 188 | pub(crate) fn conflict_page( |
| 188 | 189 | new: &mut Section<'_>, |
| 189 | old: &mut Section<'_>, | |
| 190 | 190 | local: &mut Section<'_>, |
| 191 | moved: &BTreeSet<ExGuid>, | |
| 191 | 192 | space: ExGuid, |
| 192 | 193 | page: &Page, |
| 193 | 194 | author: &str, |
| ... | ... | @@ -217,7 +218,6 @@ pub(crate) fn conflict_page( |
| 217 | 218 | })] |
| 218 | 219 | } else { |
| 219 | 220 | // A copy under fresh identities, as OneNote 2010 puts a removed page back. |
| 220 | let (base, unmoved) = (order(old)?, unmoved(old, new)?); | |
| 221 | 221 | let queued = order(local)?; |
| 222 | 222 | let at = queued.iter().position(|(queued, _)| *queued == space); |
| 223 | 223 | let before = at |
| ... | ... | @@ -225,8 +225,7 @@ pub(crate) fn conflict_page( |
| 225 | 225 | .iter() |
| 226 | 226 | .map(|(next, _)| *next) |
| 227 | 227 | .find(|next| { |
| 228 | listed.iter().any(|(listed, _)| listed == next) | |
| 229 | && (unmoved.contains(next) || base.iter().all(|(page, _)| page != next)) | |
| 228 | !moved.contains(next) && listed.iter().any(|(listed, _)| listed == next) | |
| 230 | 229 | }); |
| 231 | 230 | let creation = PageCreation::new(before, Some(&page.title), author)?; |
| 232 | 231 | let mut ops = vec![Op::Section(SectionOp::Import { |
| ... | ... | @@ -246,19 +245,20 @@ pub(crate) fn conflict_page( |
| 246 | 245 | Ok(edit) |
| 247 | 246 | } |
| 248 | 247 | |
| 249 | /// Pages the base and the remote both list that the remote left in place: in the same | |
| 250 | /// series at the same level, in base order among themselves. OneNote 2010 gives a page it | |
| 251 | /// moves a series of its own; a page moved within its series is out of base order. | |
| 252 | fn unmoved(old: &mut Section<'_>, new: &mut Section<'_>) -> Result<BTreeSet<ExGuid>> { | |
| 248 | /// Pages the base and the remote both list that the remote moved: into another series or | |
| 249 | /// level, or out of base order among the rest. OneNote 2010 and this writer give a moved | |
| 250 | /// page a series of its own; older builds of this writer moved a page within its series. | |
| 251 | fn moved(old: &mut Section<'_>, new: &mut Section<'_>) -> Result<BTreeSet<ExGuid>> { | |
| 253 | 252 | let series = (old.series()?, new.series()?); |
| 254 | 253 | let base: BTreeMap<ExGuid, (usize, u32)> = order(old)? |
| 255 | 254 | .into_iter() |
| 256 | 255 | .enumerate() |
| 257 | 256 | .map(|(at, (space, level))| (space, (at, level))) |
| 258 | 257 | .collect(); |
| 259 | let kept: Vec<(ExGuid, usize)> = order(new)? | |
| 260 | .into_iter() | |
| 261 | .filter_map(|(space, level)| { | |
| 258 | let listed = order(new)?; | |
| 259 | let kept: Vec<(ExGuid, usize)> = listed | |
| 260 | .iter() | |
| 261 | .filter_map(|&(space, level)| { | |
| 262 | 262 | let (at, before) = base.get(&space)?; |
| 263 | 263 | (*before == level && series.0.get(&space) == series.1.get(&space)).then_some((space, *at)) |
| 264 | 264 | }) |
| ... | ... | @@ -281,7 +281,11 @@ fn unmoved(old: &mut Section<'_>, new: &mut Section<'_>) -> Result<BTreeSet<ExGu |
| 281 | 281 | unmoved.insert(kept[i].0); |
| 282 | 282 | next = previous[i]; |
| 283 | 283 | } |
| 284 | Ok(unmoved) | |
| 284 | Ok(listed | |
| 285 | .into_iter() | |
| 286 | .map(|(space, _)| space) | |
| 287 | .filter(|space| base.contains_key(space) && !unmoved.contains(space)) | |
| 288 | .collect()) | |
| 285 | 289 | } |
| 286 | 290 | |
| 287 | 291 | /// Applies a queued page-list edit to `local`, the page order as the queue leaves it. |
| ... | ... | @@ -332,8 +336,8 @@ struct Replay { |
| 332 | 336 | orders: (Order, Order), |
| 333 | 337 | /// Page order as the queue leaves it, up to the op replaying. |
| 334 | 338 | local: Order, |
| 335 | /// Pages the remote left in place (`unmoved`). | |
| 336 | unmoved: BTreeSet<ExGuid>, | |
| 339 | /// Pages the base listed that the remote moved (`moved`). | |
| 340 | moved: BTreeSet<ExGuid>, | |
| 337 | 341 | /// Page spaces the replayed edits created. |
| 338 | 342 | created: BTreeSet<ExGuid>, |
| 339 | 343 | /// Per page the remote changed, what it changed; `None` when it left the page alone. |
| ... | ... | @@ -403,57 +407,52 @@ impl Replay { |
| 403 | 407 | self.created.contains(&space) || self.orders.1.iter().any(|(page, _)| *page == space) |
| 404 | 408 | } |
| 405 | 409 | |
| 406 | /// Whether the remote moved or re-leveled a page the base listed. | |
| 407 | fn placed(&self, page: ExGuid) -> bool { | |
| 408 | !self.unmoved.contains(&page) && self.orders.0.iter().any(|(listed, _)| *listed == page) | |
| 409 | } | |
| 410 | ||
| 411 | 410 | /// Where a page the queue put before `before` goes on the remote: before the first page |
| 412 | 411 | /// from `before` on, in the queue's order, that the remote lists where the base had it, |
| 413 | 412 | /// or last, as OneNote 2010 places a page series only one side changed. |
| 414 | 413 | fn anchor(&self, listed: &Order, page: ExGuid, before: Option<ExGuid>) -> Option<ExGuid> { |
| 415 | 414 | let from = self.local.iter().position(|(space, _)| Some(*space) == before)?; |
| 416 | 415 | self.local[from..].iter().map(|(space, _)| *space).find(|space| { |
| 417 | *space != page && !self.placed(*space) && listed.iter().any(|(listed, _)| listed == space) | |
| 416 | *space != page && !self.moved.contains(space) && listed.iter().any(|(listed, _)| listed == space) | |
| 418 | 417 | }) |
| 419 | 418 | } |
| 420 | 419 | |
| 421 | /// Forms of a section op to try on the remote section, in order: a page placed by | |
| 420 | /// A section op as it replays on the remote section, or `None`: a page placed by | |
| 422 | 421 | /// `anchor`, the page edits of pages the remote still has and did not move, removals of |
| 423 | 422 | /// pages the remote still has (a page it changed is not removed), a conflict page's |
| 424 | 423 | /// content as a page of its own where the remote removed its page. |
| 425 | fn forms(&self, new: &mut Section<'_>, op: &SectionOp) -> Result<Vec<SectionOp>> { | |
| 424 | fn form(&self, new: &mut Section<'_>, op: &SectionOp) -> Result<Option<SectionOp>> { | |
| 426 | 425 | let conflicts: BTreeSet<ExGuid> = new |
| 427 | 426 | .conflicts()? |
| 428 | 427 | .into_iter() |
| 429 | 428 | .flat_map(|(_, pages)| pages.into_iter().map(|page| page.space)) |
| 430 | 429 | .collect(); |
| 431 | 430 | let listed = order(new)?; |
| 432 | let placed = |creation: &PageCreation| { | |
| 431 | let anchored = |creation: &PageCreation| { | |
| 433 | 432 | creation.reposition(self.anchor(&listed, creation.space(), creation.before())) |
| 434 | 433 | }; |
| 435 | 434 | Ok(match op { |
| 436 | SectionOp::Create(creation) => vec![SectionOp::Create(placed(creation)?)], | |
| 437 | SectionOp::Import { creation, page } => vec![SectionOp::Import { | |
| 438 | creation: placed(creation)?, | |
| 435 | SectionOp::Create(creation) => Some(SectionOp::Create(anchored(creation)?)), | |
| 436 | SectionOp::Import { creation, page } => Some(SectionOp::Import { | |
| 437 | creation: anchored(creation)?, | |
| 439 | 438 | page: page.clone(), |
| 440 | }], | |
| 441 | SectionOp::Color(_) => vec![op.clone()], | |
| 439 | }), | |
| 440 | SectionOp::Color(_) => Some(op.clone()), | |
| 442 | 441 | SectionOp::Conflict { |
| 443 | 442 | of, creation, page, .. |
| 444 | } => vec![if self.listed(*of) { | |
| 443 | } => Some(if self.listed(*of) { | |
| 445 | 444 | op.clone() |
| 446 | 445 | } else { |
| 447 | 446 | SectionOp::Import { |
| 448 | 447 | creation: creation.clone(), |
| 449 | 448 | page: page.clone(), |
| 450 | 449 | } |
| 451 | }], | |
| 450 | }), | |
| 452 | 451 | // A page the remote moved or re-leveled keeps the remote's placement. |
| 453 | 452 | SectionOp::Pages(edits) => { |
| 454 | 453 | let mut kept = Vec::new(); |
| 455 | 454 | for edit in edits { |
| 456 | if self.placed(edit.space()) | |
| 455 | if self.moved.contains(&edit.space()) | |
| 457 | 456 | || listed.iter().all(|(listed, _)| *listed != edit.space()) |
| 458 | 457 | { |
| 459 | 458 | continue; |
| ... | ... | @@ -466,11 +465,7 @@ impl Replay { |
| 466 | 465 | )?, |
| 467 | 466 | }); |
| 468 | 467 | } |
| 469 | if kept.is_empty() { | |
| 470 | Vec::new() | |
| 471 | } else { | |
| 472 | vec![SectionOp::Pages(kept)] | |
| 473 | } | |
| 468 | (!kept.is_empty()).then_some(SectionOp::Pages(kept)) | |
| 474 | 469 | } |
| 475 | 470 | SectionOp::Delete(deleted) => { |
| 476 | 471 | let deleted: Vec<ExGuid> = deleted |
| ... | ... | @@ -481,11 +476,7 @@ impl Replay { |
| 481 | 476 | }) |
| 482 | 477 | .copied() |
| 483 | 478 | .collect(); |
| 484 | if deleted.is_empty() { | |
| 485 | Vec::new() | |
| 486 | } else { | |
| 487 | vec![SectionOp::Delete(deleted)] | |
| 488 | } | |
| 479 | (!deleted.is_empty()).then_some(SectionOp::Delete(deleted)) | |
| 489 | 480 | } |
| 490 | 481 | }) |
| 491 | 482 | } |
crates/notebook/src/session.rs+69-37| ... | ... | @@ -140,11 +140,12 @@ impl Storage for Directory { |
| 140 | 140 | |
| 141 | 141 | fn delete(&self, path: &str) -> Result<()> { |
| 142 | 142 | let path = self.path(path); |
| 143 | Ok(if path.is_dir() { | |
| 144 | std::fs::remove_dir(path)? | |
| 143 | if path.is_dir() { | |
| 144 | std::fs::remove_dir(path)?; | |
| 145 | 145 | } else { |
| 146 | std::fs::remove_file(path)? | |
| 147 | }) | |
| 146 | std::fs::remove_file(path)?; | |
| 147 | } | |
| 148 | Ok(()) | |
| 148 | 149 | } |
| 149 | 150 | |
| 150 | 151 | fn place(&self, path: &str, ancestor: [u8; 16], name: &str) -> Result<()> { |
| ... | ... | @@ -259,6 +260,7 @@ impl Notebook { |
| 259 | 260 | std::fs::create_dir(root.as_ref())?; |
| 260 | 261 | let mut notebook = Self::open(root, cache)?; |
| 261 | 262 | notebook.edit_toc("", &[onestore::TocEdit::Color(color)])?; |
| 263 | notebook.refresh()?; | |
| 262 | 264 | notebook.create_section("", "New Section 1", page)?; |
| 263 | 265 | Ok(notebook) |
| 264 | 266 | } |
| ... | ... | @@ -368,8 +370,14 @@ impl Notebook { |
| 368 | 370 | Some(toc) => Ok((catalog_path(folder, &toc.filename), toc.file_id)), |
| 369 | 371 | None => { |
| 370 | 372 | let path = catalog_path(folder, TOC); |
| 371 | let bytes = onestore::create_table_of_contents(TOC, &[])?; | |
| 372 | self.storage.create(&path, &bytes)?; | |
| 373 | // One this change already created, before the catalog was read again. | |
| 374 | let bytes = if self.storage.exists(&path) { | |
| 375 | self.storage.read(&path)? | |
| 376 | } else { | |
| 377 | let bytes = onestore::create_table_of_contents(TOC, &[])?; | |
| 378 | self.storage.create(&path, &bytes)?; | |
| 379 | bytes | |
| 380 | }; | |
| 373 | 381 | Ok((path, onestore::Store::parse(&bytes)?.header.file_id)) |
| 374 | 382 | } |
| 375 | 383 | } |
| ... | ... | @@ -632,17 +640,7 @@ impl Notebook { |
| 632 | 640 | let mut section = onestore::Section::open(&arena, self.storage.read(&path)?)?; |
| 633 | 641 | let mut ops = Vec::new(); |
| 634 | 642 | for page in pages { |
| 635 | let mut creation = PageCreation::new(None, Some(&page.title), author)?; | |
| 636 | if let (Some(identity), Some(created)) = (page.identity, page.created) { | |
| 637 | creation = creation.keeping(identity, created)?; | |
| 638 | } | |
| 639 | if let Some([date, time]) = page.date_text() { | |
| 640 | creation = creation.dated(&date, &time)?; | |
| 641 | } | |
| 642 | ops.push(Op::Section(SectionOp::Import { | |
| 643 | creation, | |
| 644 | page: page.copy()?, | |
| 645 | })); | |
| 643 | ops.push(moved(page, author)?); | |
| 646 | 644 | } |
| 647 | 645 | section.apply(author, &Edit { at: crate::now(), ops })?; |
| 648 | 646 | if let Some(transaction) = section.seal()? { |
| ... | ... | @@ -802,6 +800,17 @@ impl Notebook { |
| 802 | 800 | |
| 803 | 801 | /// Opens a section of a mounted notebook by its catalog path. |
| 804 | 802 | pub fn section(&self, path: &str, notify: impl Fn() + Send + 'static) -> Result<Section> { |
| 803 | self.section_with(path, |file| Ok(FileRemote(file.to_owned())), notify) | |
| 804 | } | |
| 805 | ||
| 806 | /// `section`, reading and publishing through the remote `connect` makes for its file | |
| 807 | /// (`Section::open_with`). | |
| 808 | pub fn section_with<R: Remote + 'static>( | |
| 809 | &self, | |
| 810 | path: &str, | |
| 811 | connect: impl FnMut(&Path) -> io::Result<R> + Send + 'static, | |
| 812 | notify: impl Fn() + Send + 'static, | |
| 813 | ) -> Result<Section> { | |
| 805 | 814 | let path = self.section_path(path)?.path.clone(); |
| 806 | 815 | let Some(root) = &self.root else { |
| 807 | 816 | return Err(io::Error::new( |
| ... | ... | @@ -815,29 +824,39 @@ impl Notebook { |
| 815 | 824 | if !file.starts_with(root) { |
| 816 | 825 | return Err(io::Error::from(io::ErrorKind::PermissionDenied).into()); |
| 817 | 826 | } |
| 818 | Section::open(file, &self.cache, notify) | |
| 827 | Section::open_with(file, &self.cache, connect, notify) | |
| 819 | 828 | } |
| 820 | 829 | } |
| 821 | 830 | |
| 822 | /// The section colours OneNote 2010 gives new sections, COLORREF, in the order it gives | |
| 823 | /// them (`evidence/notebook-management/new-notebook`). | |
| 824 | const SECTION_COLORS: [u32; 3] = [0x00e4a88a, 0x0078b0f6, 0x00bba4d5]; | |
| 831 | /// The colours OneNote 2010 gives a folder's first sixteen new sections, COLORREF, in the | |
| 832 | /// order it gives them (`corpus/notebook-management/native/section-colors`: sixteen sections | |
| 833 | /// made with New Section in a new notebook). | |
| 834 | const SECTION_COLORS: [u32; 16] = [ | |
| 835 | 0x00e4a88a, 0x0078b0f6, 0x00bba4d5, 0x00d2bb9b, 0x00b79cab, 0x0099d1e8, 0x006ff9f5, | |
| 836 | 0x0092e7ad, 0x00cabc4d, 0x007575ba, 0x00aa9595, 0x00e4a88a, 0x0069d8ff, 0x0097c9b7, | |
| 837 | 0x009795ee, 0x00de9eb4, | |
| 838 | ]; | |
| 825 | 839 | |
| 826 | /// The colour OneNote gives a new section in `folder`: the first of its colours none of | |
| 827 | /// the folder's sections has, or the next in turn when all are taken. | |
| 840 | /// The colour OneNote gives a new section in `folder`, by how many sections it holds. | |
| 828 | 841 | fn next_color(folder: &discover::Folder) -> u32 { |
| 829 | let taken: Vec<u32> = folder | |
| 830 | .sections | |
| 831 | .iter() | |
| 832 | .filter_map(|section| match section.state { | |
| 833 | discover::SectionState::Readable { color, .. } => color, | |
| 834 | _ => None, | |
| 835 | }) | |
| 836 | .collect(); | |
| 837 | SECTION_COLORS | |
| 838 | .into_iter() | |
| 839 | .find(|color| !taken.contains(color)) | |
| 840 | .unwrap_or(SECTION_COLORS[folder.sections.len() % SECTION_COLORS.len()]) | |
| 842 | SECTION_COLORS[folder.sections.len() % SECTION_COLORS.len()] | |
| 843 | } | |
| 844 | ||
| 845 | /// The op putting `page` into another section as OneNote moves a page there, into the | |
| 846 | /// recycle bin or another section: last, under fresh object identities, keeping its page | |
| 847 | /// identity, title, date and creation time. | |
| 848 | pub fn moved(page: &Page, author: &str) -> Result<Op> { | |
| 849 | let mut creation = PageCreation::new(None, Some(&page.title), author)?; | |
| 850 | if let (Some(identity), Some(created)) = (page.identity, page.created) { | |
| 851 | creation = creation.keeping(identity, created)?; | |
| 852 | } | |
| 853 | if let Some([date, time]) = page.date_text() { | |
| 854 | creation = creation.dated(&date, &time)?; | |
| 855 | } | |
| 856 | Ok(Op::Section(SectionOp::Import { | |
| 857 | creation, | |
| 858 | page: page.copy()?, | |
| 859 | })) | |
| 841 | 860 | } |
| 842 | 861 | |
| 843 | 862 | fn component(name: &str) -> bool { |
| ... | ... | @@ -896,9 +915,21 @@ impl Section { |
| 896 | 915 | file: impl AsRef<Path>, |
| 897 | 916 | cache: impl AsRef<Path>, |
| 898 | 917 | notify: impl Fn() + Send + 'static, |
| 918 | ) -> Result<Self> { | |
| 919 | Self::open_with(file, cache, |file| Ok(FileRemote(file.to_owned())), notify) | |
| 920 | } | |
| 921 | ||
| 922 | /// `open`, reading and publishing the file through the remote `connect` makes for it, | |
| 923 | /// as a host that coordinates file access with other processes (iOS's file providers) | |
| 924 | /// needs. | |
| 925 | pub fn open_with<R: Remote + 'static>( | |
| 926 | file: impl AsRef<Path>, | |
| 927 | cache: impl AsRef<Path>, | |
| 928 | mut connect: impl FnMut(&Path) -> io::Result<R> + Send + 'static, | |
| 929 | notify: impl Fn() + Send + 'static, | |
| 899 | 930 | ) -> Result<Self> { |
| 900 | 931 | let file = file.as_ref().canonicalize()?; |
| 901 | let source = onestore::read_file(&file)?; | |
| 932 | let source = connect(&file)?.read()?; | |
| 902 | 933 | let store = Store::parse(&source)?; |
| 903 | 934 | let identity = RevisionIndex::parse(&store)?.root; |
| 904 | 935 | let name: String = identity |
| ... | ... | @@ -913,7 +944,8 @@ impl Section { |
| 913 | 944 | } else { |
| 914 | 945 | Replica::create(&cache, &source)? |
| 915 | 946 | }; |
| 916 | Self::resume(file, replica, notify) | |
| 947 | let remote = file.clone(); | |
| 948 | Self::start(file, replica, move || connect(&remote), notify) | |
| 917 | 949 | } |
| 918 | 950 | |
| 919 | 951 | /// Resumes an owned local replica without reading the publication target. |
crates/notebook/src/working.rs+1-1| ... | ... | @@ -642,8 +642,8 @@ fn rebase(connection: &Mutex<Connection>, image: Option<Vec<u8>>) -> Result<Vec< |
| 642 | 642 | }; |
| 643 | 643 | let edit = merge::conflict_page( |
| 644 | 644 | &mut new, |
| 645 | &mut old, | |
| 646 | 645 | local, |
| 646 | &merged.moved, | |
| 647 | 647 | *space, |
| 648 | 648 | page, |
| 649 | 649 | author, |
crates/onestore/README.md+6-1| ... | ... | @@ -85,7 +85,12 @@ under the section's key (fresh IV per object, payloads under the file IV); `Sect |
| 85 | 85 | rejects protected sections. |
| 86 | 86 | `PageCreation::new` appends, or inserts before the first page space of an existing |
| 87 | 87 | series. `Some("")` creates an empty title field; `None` omits the title node. |
| 88 | The page has no body outlines, generated date/time text or applied template. | |
| 88 | `dated(date, time)` gives the title OneNote 2010's date and time fields showing that | |
| 89 | text, as OneNote titles a new page; `keeping(identity, created)` keeps another page's | |
| 90 | identity and creation time, as a page moved to the recycle bin keeps them. The page has | |
| 91 | no body outlines or applied template; `create_empty_section` makes a section for such | |
| 92 | pages, and `PageOp::Color` sets or clears a page's colour (`0x14001d2a` on the page node, | |
| 93 | absent for "No color"). | |
| 89 | 94 | Retain the intent to preserve its page, title and space identities; existing |
| 90 | 95 | identities require reconciliation before retry. Body insertion and title edits |
| 91 | 96 | use those identities through page ops. [Native page-creation fixtures](../../corpus/page-lifecycle/creation/README.md) |
crates/onestore/examples/scratch_dump.rs deleted-29| ... | ... | @@ -1,29 +0,0 @@ |
| 1 | use onestore::{ObjectData, PropertySets, RevisionIndex, Store, Value, document::Document}; | |
| 2 | fn main() -> Result<(), Box<dyn std::error::Error>> { | |
| 3 | let args: Vec<String> = std::env::args().skip(1).collect(); | |
| 4 | let bytes = std::fs::read(&args[0])?; | |
| 5 | let store = Store::parse(&bytes)?; | |
| 6 | let index = RevisionIndex::parse(&store)?; | |
| 7 | let pages = Document::parse(&index).and_then(|document| document.pages()).unwrap_or_default(); | |
| 8 | let space = if args[1] == "root" { index.root } else { pages[args[1].parse::<usize>()?].0 }; | |
| 9 | println!("space {space}; pages {:?}", pages.iter().map(|p| p.0).collect::<Vec<_>>()); | |
| 10 | let raw = index.resolve_active(space)?; | |
| 11 | for (id, object) in &raw.objects { | |
| 12 | println!("{id} jcid {:#x}", object.jcid); | |
| 13 | if let ObjectData::Properties(data) = object.data { | |
| 14 | let sets = PropertySets::parse(data)?; | |
| 15 | for (n, set) in sets.sets.iter().enumerate() { | |
| 16 | for p in set { | |
| 17 | let v = match &p.value { | |
| 18 | Value::NoData => "-".to_string(), | |
| 19 | Value::Bytes(b) => b.iter().map(|x| format!("{x:02x}")).collect(), | |
| 20 | Value::References { stream, compact_ids } => format!("{stream:?} {}", compact_ids.iter().map(|x| format!("{x:02x}")).collect::<String>()), | |
| 21 | Value::Sets(r) => format!("sets {r:?}"), | |
| 22 | }; | |
| 23 | println!(" [{n}] {:#010x} {v}", p.id); | |
| 24 | } | |
| 25 | } | |
| 26 | } | |
| 27 | } | |
| 28 | Ok(()) | |
| 29 | } |
crates/onestore/src/page/mod.rs+1-1| ... | ... | @@ -52,7 +52,7 @@ mod payload { |
| 52 | 52 | pub use text::Paragraph; |
| 53 | 53 | |
| 54 | 54 | /// The page node's colour (View, Page Color) as COLORREF, absent for "No color"; not in |
| 55 | /// MS-ONE, observed in OneNote 2010's pages (`evidence/notebook-management`). | |
| 55 | /// MS-ONE, observed in OneNote 2010's pages (`corpus/notebook-management/native/page-color`). | |
| 56 | 56 | pub(crate) const PAGE_COLOR: u32 = 0x14001d2a; |
| 57 | 57 | |
| 58 | 58 | /// The role of a title-outline paragraph that displays the page's creation date or time. |
crates/onestore/src/pages.rs+17-7| ... | ... | @@ -264,10 +264,12 @@ fn page_changes<'a>( |
| 264 | 264 | let mut series_by_head = BTreeMap::new(); |
| 265 | 265 | let mut copies = BTreeMap::new(); |
| 266 | 266 | let mut copy_ids = BTreeSet::new(); |
| 267 | let mut stale = BTreeSet::new(); | |
| 267 | 268 | for oid in &section_node.children { |
| 268 | 269 | let series = &view.nodes[oid]; |
| 270 | // OneNote leaves the losing side's series empty after a merge; the rewrite drops it. | |
| 269 | 271 | let Some(head) = series.spaces.first() else { |
| 270 | return Err(invalid("A page series must contain at least one page")); | |
| 272 | continue; | |
| 271 | 273 | }; |
| 272 | 274 | if levels.get(head) != Some(&1) |
| 273 | 275 | || series.spaces[1..] |
| ... | ... | @@ -285,8 +287,11 @@ fn page_changes<'a>( |
| 285 | 287 | let FieldValue::Objects(ids) = &field.value else { |
| 286 | 288 | return Err(invalid("Page metadata copies must be object references")); |
| 287 | 289 | }; |
| 288 | if ids.len() != series.spaces.len() { | |
| 289 | return Err(invalid("Page metadata copies must match their series")); | |
| 290 | // OneNote can leave a page's former copy beside its new one (MS-ONE 2.2.81, note | |
| 291 | // 9): the last copy of each page stays and the series is rewritten to match. | |
| 292 | let mismatched = ids.len() != series.spaces.len(); | |
| 293 | if mismatched { | |
| 294 | stale.insert(*oid); | |
| 290 | 295 | } |
| 291 | 296 | for id in ids { |
| 292 | 297 | if !copy_ids.insert(*id) |
| ... | ... | @@ -303,7 +308,7 @@ fn page_changes<'a>( |
| 303 | 308 | .ok_or_else(|| { |
| 304 | 309 | invalid("Metadata copy must identify a page in its series") |
| 305 | 310 | })?; |
| 306 | if copies.insert(*sid, *id).is_some() { | |
| 311 | if copies.insert(*sid, *id).is_some() && !mismatched { | |
| 307 | 312 | return Err(invalid("Each page needs its own ordinary metadata copy")); |
| 308 | 313 | } |
| 309 | 314 | } |
| ... | ... | @@ -372,7 +377,11 @@ fn page_changes<'a>( |
| 372 | 377 | let mut children = Vec::new(); |
| 373 | 378 | for spaces in groups { |
| 374 | 379 | let head = spaces[0]; |
| 375 | let old_id = series_by_head.get(&head).copied(); | |
| 380 | // A moved page heads a series of its own, as OneNote's drag gives one. | |
| 381 | let moved = selected | |
| 382 | .get(&head) | |
| 383 | .is_some_and(|edit| matches!(edit.position, PagePosition::Before(_))); | |
| 384 | let old_id = series_by_head.get(&head).copied().filter(|_| !moved); | |
| 376 | 385 | let (id, mut series) = if let Some(id) = old_id { |
| 377 | 386 | (id, PropertyObject::from_object(&raw.objects[&id])?) |
| 378 | 387 | } else { |
| ... | ... | @@ -396,7 +405,8 @@ fn page_changes<'a>( |
| 396 | 405 | ) |
| 397 | 406 | }; |
| 398 | 407 | children.push(id); |
| 399 | let membership_changed = old_id.is_none_or(|old| view.nodes[&old].spaces != spaces); | |
| 408 | let membership_changed = old_id | |
| 409 | .is_none_or(|old| view.nodes[&old].spaces != spaces || stale.contains(&old)); | |
| 400 | 410 | if !membership_changed |
| 401 | 411 | && !spaces.iter().any(|sid| { |
| 402 | 412 | levels[sid] != original_levels[sid] |
| ... | ... | @@ -654,7 +664,7 @@ impl PageCreation { |
| 654 | 664 | /// The title's second outline as OneNote 2010 writes it for a new page (object numbers, |
| 655 | 665 | /// jcids and properties): a read-only outline of two paragraphs, the date then the |
| 656 | 666 | /// time, in the `PageDateTime` style. |
| 657 | fn date_fields(&self, date: &str, time: &str) -> Vec<(u32, u32, Vec<(u32, Vec<u8>)>)> { | |
| 667 | fn date_fields(&self, date: &str, time: &str) -> Vec<(u32, u32, crate::op::Values)> { | |
| 658 | 668 | let reference = |n: u32| n.to_le_bytes().to_vec(); |
| 659 | 669 | let modified = || (0x14001d7a, self.created.to_le_bytes().to_vec()); |
| 660 | 670 | let yes = |id: u32| (id | 1 << 31, Vec::new()); |
crates/onestore/tests/page_movement.rs+40| ... | ... | @@ -520,3 +520,43 @@ fn repeated_nesting_retains_series_history_across_revision_checkpoints() { |
| 520 | 520 | std::fs::write(std::path::Path::new(&output).join("movement.one"), &source).unwrap(); |
| 521 | 521 | } |
| 522 | 522 | } |
| 523 | ||
| 524 | /// A move on a section OneNote merged, which holds empty page series, rewrites the series | |
| 525 | /// without them and gives the moved page one of its own. | |
| 526 | #[test] | |
| 527 | fn a_move_after_a_native_merge_drops_its_empty_series() { | |
| 528 | let merged = include_bytes!( | |
| 529 | "../../../corpus/conflict-page/native-pages/merged/notebook/synthetic.one" | |
| 530 | ); | |
| 531 | let series = |bytes: &[u8]| { | |
| 532 | let store = Store::parse(bytes).unwrap(); | |
| 533 | let index = RevisionIndex::parse(&store).unwrap(); | |
| 534 | let document = Document::parse(&index).unwrap(); | |
| 535 | let space = &document.spaces[&document.root]; | |
| 536 | let view = &space.revisions[&space.contexts[&ExGuid::default()]]; | |
| 537 | view.nodes[&view.roots[&1]] | |
| 538 | .children | |
| 539 | .iter() | |
| 540 | .map(|id| (*id, view.nodes[id].spaces.clone())) | |
| 541 | .collect::<Vec<_>>() | |
| 542 | }; | |
| 543 | let before = series(merged); | |
| 544 | assert!(before.iter().any(|(_, spaces)| spaces.is_empty())); | |
| 545 | let ids = pages(merged); | |
| 546 | let moved = ops::section_op( | |
| 547 | merged, | |
| 548 | SectionOp::Pages(vec![PageEdit::move_to(ids[1], None, 1).unwrap()]), | |
| 549 | ) | |
| 550 | .unwrap(); | |
| 551 | let after = series(moved.as_bytes()); | |
| 552 | assert!(after.iter().all(|(_, spaces)| !spaces.is_empty())); | |
| 553 | let (id, spaces) = after.last().unwrap(); | |
| 554 | assert_eq!(spaces, &vec![ids[1]]); | |
| 555 | assert!(before.iter().all(|(old, _)| old != id)); | |
| 556 | assert_eq!(pages(moved.as_bytes()), [&ids[..1], &ids[2..], &ids[1..2]].concat()); | |
| 557 | if let Some(output) = std::env::var_os("ONESTORE_EMPTY_SERIES_EXPORT") { | |
| 558 | let output = std::path::Path::new(&output); | |
| 559 | std::fs::create_dir(output).unwrap(); | |
| 560 | std::fs::write(output.join("synthetic.one"), moved.as_bytes()).unwrap(); | |
| 561 | } | |
| 562 | } |
tools/canvas/README.md+3-1| ... | ... | @@ -50,9 +50,11 @@ snowbound title bar · toolbar · section frame · page tabs · the page as a |
| 50 | 50 | |
| 51 | 51 | `--notebook FOLDER` opens a notebook laid out as OneNote lays one out. The title bar shows the application's icon and the notebook's name; below it two rows of toolbar buttons follow the Home ribbon's Basic Text group, the first nine tags and zoom (only zoom acts yet). Readable top-level sections are tabs in the notebook's order, each leaning over the next at 45° with a faint highlight along its top, and the open one on top, casting a soft shadow and framing the page and the page tabs on the right in its colour, which shades slightly down the window; a tab that opens rises to meet the frame as its outline fades in. The frame's top corners and the page's corners are rounded concentric with the window's. The open page's tab is the page's colour and joins it with rounded inside corners; subpages are indented. The interface follows the system's light or dark appearance, and in the dark one the page's paper darkens and text left at OneNote's automatic colour turns light (except on a highlight), resolved when painting so nothing re-lays out; explicit colours, highlights, pictures and ink keep theirs, except that the background art of OneNote 2010's page templates, recognised by the picture's hash, paints from bundled vector recreations drawn for the paper. Sections take their stored colour's hue at a saturation and lightness chosen for each appearance. `--ui-font FONT_FILE_OR_FOLDER` sets the interface's typeface in place of the system's; fonts are not bundled. The section's colour is also the interface accent, easing to the next section's when another opens. The search box, New Page and the page-tab toggle sit above the page tabs. Command-F searches the page titles; Enter opens the first match and Escape clears it. A page that also changed on another computer shows Keep mine / Keep theirs above it. `--section FILE TITLE` opens one section the same way at that page. Section files must be regular files; discovery rejects symbolic links. |
| 52 | 52 | |
| 53 | Launched without a file, the app reopens the notebooks open when it last closed, at the one shown last, or shows "No notebooks open" with New Notebook and Open Existing. Settings (the open notebooks, the sidebar and recent fonts) are JSON in `~/Library/Application Support/Snowbound/settings.json` or `$XDG_CONFIG_HOME/snowbound`; `--settings FILE` uses another file, `--notebook FOLDER` adds a notebook to them, and `--screenshot` never writes them. Open Existing takes a notebook folder, its `Open Notebook.onetoc2` or a section file, which opens in the notebook its folders make up. A notebook on a mounted SMB share opens through the mount; the embedded SMB client is not yet used for it. The notebook button left of the section tabs opens OneNote 2010's navigation bar: the open notebooks with their sections and section groups, the open section marked; dragging a row reorders a folder or, onto a group, moves into it, and right-clicking a row, a section tab or a page tab offers OneNote's commands (Rename, Delete to the notebook's recycle bin, New Section, New Section Group, Close This Notebook; Delete, New Page, Make Subpage, Promote Subpage). Page tabs drag to reorder. The `+` above the page tabs adds a page at the end of the section, titled with its date and time as OneNote titles one, and puts the caret in its title; until its body is typed in, templates offer our recreations of OneNote 2010's art (Ivy first), its page colours and Informal Meeting Notes' content, written as ops (`corpus/notebook-management`). | |
| 54 | ||
| 53 | 55 | The `ui` crate builds every frame from the application's state. A cache keyed by stable box ids keeps hover, press, focus, scroll and animation values, and the previous frame's layout routes the frame's input before building, so a frame answers input one layout late and paints with its own. Sizes are solved per axis after building: fixed, label-sized, a fraction of an ancestor, or the sum of children, with overflow shared out by each box's strictness. The page is a custom box: `ui` routes it the pointer, wheel, key and input-method events that land on it, in order, and the host hands them to `PageView` and paints the page in a clipped layer of the same frame. Page scrollbars are `ui` widgets over that box; the canvas reports only its scroll bounds. Text fields edit through `draw::edit`, as the page does, so keys, clicks and drags select and move the same way in both. Work the frame asks for (page requests, saving) runs after the frame is painted and requests the frame that shows it. Opening a section or page reads it on a thread of its own while the current page stays live; the newest read is laid out and replaces the page once the pictures it shows first are drawn, or after 200 ms. |
| 54 | 56 | |
| 55 | A covered window receives no redraws, so interaction can be scripted: `SNOWBOUND_REPLAY` names a file of `move X Y`, `press`, `release`, `wheel DX DY`, `key NAME`, `type TEXT`, `modifiers [shift] [command]`, `wait MS`, `snapshot PNG_PATH` and `appearance light|dark` lines in logical pixels, and each step and every 16 ms of a wait draws a frame. Snapshots omit the window's traffic lights, which AppKit draws. Replays edit and save like a user, so point them at a copy of a notebook. | |
| 57 | A covered window receives no redraws, so interaction can be scripted: `SNOWBOUND_REPLAY` names a file of `move X Y`, `press [right]`, `release [right]`, `wheel DX DY`, `key NAME`, `type TEXT`, `modifiers [shift] [command]`, `wait MS`, `snapshot PNG_PATH`, `appearance light|dark` and `quit` lines in logical pixels, and each step and every 16 ms of a wait draws a frame. With `--screenshot` as well, the window stays hidden and only the replay's snapshots capture it. Snapshots omit the window's traffic lights, which AppKit draws. Replays edit and save like a user, so point them at a copy of a notebook. | |
| 56 | 58 | |
| 57 | 59 | ```sh |
| 58 | 60 | cp -RL SOURCE_NOTEBOOK /tmp/notebook-copy && chmod u+w /tmp/notebook-copy/*.one |
tools/test_conflict_page.py+8| ... | ... | @@ -11,6 +11,7 @@ import hashlib |
| 11 | 11 | |
| 12 | 12 | from native_xml import pages, texts |
| 13 | 13 | from document_model import EXPORTER, ordered_pages, view |
| 14 | from verify_page_creation import compare as compare_graphs | |
| 14 | 15 | |
| 15 | 16 | ROOT = Path(__file__).resolve().parent.parent |
| 16 | 17 | FIXTURE = ROOT / 'corpus/conflict-page' |
| ... | ... | @@ -149,6 +150,13 @@ class ConflictPageTest(unittest.TestCase): |
| 149 | 150 | for title in client: |
| 150 | 151 | self.assertNotIn(owner(merged, title), {**initial, **published}, title) |
| 151 | 152 | |
| 153 | def test_onenote_reads_a_rust_move_that_drops_empty_series(self): | |
| 154 | root = FIXTURE / 'series-move' | |
| 155 | self.assertEqual((root / 'candidate/synthetic.one').read_bytes()[1024:], | |
| 156 | (root / 'cold/notebook/synthetic.one').read_bytes()[1024:]) | |
| 157 | self.assertEqual(compare_graphs(root / 'candidate', root / 'cold'), 0) | |
| 158 | self.assertTrue(all(series(model(root / 'candidate')).values())) | |
| 159 | ||
| 152 | 160 | def test_a_page_edited_offline_and_deleted_online_comes_back_as_a_new_page(self): |
| 153 | 161 | for capture in ('native-pages', 'native-restore'): |
| 154 | 162 | root = FIXTURE / capture |
tools/test_notebook_management.py created+105| ... | ... | @@ -0,0 +1,105 @@ |
| 1 | from pathlib import Path | |
| 2 | import runpy | |
| 3 | import shutil | |
| 4 | from tempfile import TemporaryDirectory | |
| 5 | import unittest | |
| 6 | import uuid | |
| 7 | import xml.etree.ElementTree as ET | |
| 8 | ||
| 9 | from native_xml import ns | |
| 10 | ||
| 11 | ROOT = Path(__file__).resolve().parent.parent | |
| 12 | FIXTURE = ROOT / 'corpus/notebook-management' | |
| 13 | compare = runpy.run_path(str(ROOT / 'tools/verify-document.py'))['compare'] | |
| 14 | ||
| 15 | ||
| 16 | def file_identity(path): | |
| 17 | return uuid.UUID(bytes_le=path.read_bytes()[16:32]) | |
| 18 | ||
| 19 | ||
| 20 | def tree(node): | |
| 21 | """Sections, groups and pages as OneNote lists them, with what the app set on each.""" | |
| 22 | out = [] | |
| 23 | for child in node: | |
| 24 | tag = child.tag.rsplit('}', 1)[-1] | |
| 25 | if tag in ('Section', 'SectionGroup'): | |
| 26 | out.append((tag, child.get('name'), child.get('color'), tree(child))) | |
| 27 | elif tag == 'Page': | |
| 28 | out.append((tag, child.get('name'), child.get('pageLevel'), child.get('isInRecycleBin'))) | |
| 29 | return out | |
| 30 | ||
| 31 | ||
| 32 | def page(title): | |
| 33 | for path in sorted((FIXTURE / 'cold/read').glob('page-*.xml')): | |
| 34 | root = ET.parse(path).getroot() | |
| 35 | if root.get('name') == title: | |
| 36 | return root | |
| 37 | raise AssertionError(f'No page titled {title!r}') | |
| 38 | ||
| 39 | ||
| 40 | class NotebookManagementTest(unittest.TestCase): | |
| 41 | def test_the_managed_notebook_reopens_natively_as_written(self): | |
| 42 | with TemporaryDirectory() as temporary: | |
| 43 | read = Path(temporary) / 'read' | |
| 44 | shutil.copytree(FIXTURE / 'cold/read', read) | |
| 45 | compare(FIXTURE / 'candidate', read) | |
| 46 | for candidate in sorted((FIXTURE / 'candidate').rglob('*.one*')): | |
| 47 | relative = candidate.relative_to(FIXTURE / 'candidate') | |
| 48 | self.assertEqual(file_identity(FIXTURE / 'cold/notebook' / relative), | |
| 49 | file_identity(candidate), str(relative)) | |
| 50 | ||
| 51 | def test_sections_groups_and_pages_sit_where_the_app_put_them(self): | |
| 52 | hierarchy = ET.parse(FIXTURE / 'cold/read/hierarchy.xml').getroot() | |
| 53 | self.assertEqual(tree(hierarchy), [ | |
| 54 | ('Section', 'New Section 1', '#8AA8E4', [ | |
| 55 | ('Page', 'Garden plan', '1', None), | |
| 56 | ('Page', 'Ivy page', '1', None), | |
| 57 | ('Page', 'Teal page', '1', None), | |
| 58 | ('Page', 'Subpage', '2', None), | |
| 59 | ('Page', 'Meeting page', '1', None), | |
| 60 | ]), | |
| 61 | ('SectionGroup', 'Archive', None, [ | |
| 62 | ('Section', 'Inner', '#8AA8E4', [('Page', 'Untitled page', '1', None)]), | |
| 63 | ('Section', 'Kitchen', '#F6B078', [ | |
| 64 | ('Page', 'Untitled page', '1', None), | |
| 65 | ('Page', 'Moved page', '1', None), | |
| 66 | ]), | |
| 67 | ]), | |
| 68 | ('SectionGroup', 'OneNote_RecycleBin', None, [ | |
| 69 | ('Section', 'Deleted Pages', '#E1E1E1', [('Page', 'Deleted page', '1', 'true')]), | |
| 70 | ('Section', 'Gone', '#8AA8E4', [('Page', 'Untitled page', '1', 'true')]), | |
| 71 | ('Section', 'Binned', '#D5A4BB', [('Page', 'Untitled page', '1', 'true')]), | |
| 72 | ]), | |
| 73 | ]) | |
| 74 | bin = hierarchy.find("one:SectionGroup[@name='OneNote_RecycleBin']", ns) | |
| 75 | self.assertEqual(bin.get('isRecycleBin'), 'true') | |
| 76 | deleted = bin.find("one:Section[@name='Deleted Pages']", ns) | |
| 77 | self.assertEqual(deleted.get('isDeletedPages'), 'true') | |
| 78 | ||
| 79 | def test_pages_keep_their_date_colour_and_template_art(self): | |
| 80 | teal = page('Teal page') | |
| 81 | self.assertEqual(teal.find('one:PageSettings', ns).get('color'), '#D4F9F2') | |
| 82 | # The title's second outline holds the date and the time. | |
| 83 | title = teal.find('one:Title', ns) | |
| 84 | texts = [t.text for t in title.iter('{%s}T' % ns['one'])] | |
| 85 | self.assertEqual(len(texts), 1) | |
| 86 | ivy = page('Ivy page') | |
| 87 | images = ivy.findall('one:Image', ns) | |
| 88 | self.assertEqual([image.get('backgroundImage') for image in images], ['true']) | |
| 89 | self.assertEqual(page('Garden plan').find('one:PageSettings', ns).get('color'), 'automatic') | |
| 90 | ||
| 91 | def test_meeting_notes_content_reads_back_as_onenote_writes_it(self): | |
| 92 | meeting = page('Meeting page') | |
| 93 | self.assertEqual(len(meeting.findall('one:Image', ns)), 1) | |
| 94 | outlines = meeting.findall('one:Outline', ns) | |
| 95 | self.assertEqual(len(outlines), 4) | |
| 96 | texts = [t.text or '' for t in meeting.iter('{%s}T' % ns['one'])] | |
| 97 | for text in ('Agenda', 'Action Items', 'Important Dates', 'Meeting Details', 'Attendees:', 'Next Meeting'): | |
| 98 | self.assertTrue(any(text in line for line in texts), text) | |
| 99 | self.assertEqual(len(meeting.findall('.//one:Tag', ns)), 1) | |
| 100 | self.assertEqual(len(meeting.findall('.//one:Number', ns)), 1) | |
| 101 | self.assertEqual(len(meeting.findall('.//one:Bullet', ns)), 11) | |
| 102 | ||
| 103 | ||
| 104 | if __name__ == '__main__': | |
| 105 | unittest.main() |
tools/test_page_movement.py+41| ... | ... | @@ -90,6 +90,47 @@ class PageMovementTest(unittest.TestCase): |
| 90 | 90 | (fixture / 'cold/notebook/Lifecycle.one').read_bytes()[1024:]) |
| 91 | 91 | self.assertEqual(compare(fixture / 'candidate', fixture / 'cold'), 0) |
| 92 | 92 | |
| 93 | def test_series_rows_survive_native_reopen(self): | |
| 94 | """Rust moves heading series of their own, and offline batches merged as page series.""" | |
| 95 | def series(one): | |
| 96 | with TemporaryDirectory() as temporary: | |
| 97 | subprocess.run([EXPORTER, one, Path(temporary) / 'm'], check=True, capture_output=True) | |
| 98 | document = json.loads((Path(temporary) / 'm/document.json').read_text()) | |
| 99 | _, root = view(document, document['root']) | |
| 100 | section = root['nodes'][root['roots']['1']] | |
| 101 | return {space: oid for oid in section['children'] for space in root['nodes'][oid]['spaces']} | |
| 102 | edits = FIXTURE / 'page-edits-series' | |
| 103 | before = series(FIXTURE / '04-nested/notebook/Lifecycle.one') | |
| 104 | base, previous = list(before), before | |
| 105 | # The page each phase moves; `05` moves a subpage into its parent's series. | |
| 106 | moved = {'03-selected-group-move': 3, '04-subpage-move': 4, '08-collapsed-group-move': 4, 'single-page': 3} | |
| 107 | for phase in sorted(p.name for p in edits.iterdir() if p.is_dir()): | |
| 108 | with self.subTest(phase=phase): | |
| 109 | fixture = edits / phase | |
| 110 | self.assertEqual((fixture / 'candidate/Lifecycle.one').read_bytes()[1024:], | |
| 111 | (fixture / 'cold/notebook/Lifecycle.one').read_bytes()[1024:]) | |
| 112 | self.assertEqual(compare(fixture / 'candidate', fixture / 'cold'), 0) | |
| 113 | after = series(fixture / 'candidate/Lifecycle.one') | |
| 114 | if phase in moved: | |
| 115 | start = before if phase == 'single-page' else previous | |
| 116 | self.assertNotIn(after[base[moved[phase]]], start.values()) | |
| 117 | if phase != 'single-page': | |
| 118 | previous = after | |
| 119 | offline = FIXTURE / 'offline-edits-series' | |
| 120 | for case in sorted(p.name for p in offline.iterdir() if p.is_dir() and p.name != 'twelve-clients'): | |
| 121 | with self.subTest(case=case): | |
| 122 | source, cold = offline / case / 'candidate', offline / case / 'cold' | |
| 123 | manifest = json.loads((source / 'manifest.json').read_text()) | |
| 124 | self.assertEqual((manifest['conflict'], manifest['reviewed']), (True, [])) | |
| 125 | repaired = case == 'indent-02-promoted-parent' | |
| 126 | self.assertEqual(compare(source, cold, refresh_metadata=repaired), int(repaired)) | |
| 127 | if not repaired: | |
| 128 | self.assertEqual((source / 'Lifecycle.one').read_bytes()[1024:], | |
| 129 | (cold / 'notebook/Lifecycle.one').read_bytes()[1024:]) | |
| 130 | twelve = offline / 'twelve-clients' | |
| 131 | self.assertEqual(compare(twelve / 'candidate', twelve / 'cold'), 0) | |
| 132 | self.assertEqual(json.loads((twelve / 'candidate/manifest.json').read_text())['publications'], 12) | |
| 133 | ||
| 93 | 134 | def test_repeated_page_nesting_survives_native_reopen_after_checkpoints(self): |
| 94 | 135 | fixture = FIXTURE / 'page-edits/stress' |
| 95 | 136 | self.assertEqual((fixture / 'candidate/movement.one').read_bytes()[1024:], |