Files

17 lines
3.5 KiB
Markdown
Raw Permalink Normal View History

# Independent source-5 checkpoint review — 2026-09-06
No new material defect was found in the bounded source-5 checkpoint upgrade. This was a read-only review of implementation owned by other agents: `recovery/source5.rs`, `recovery/source5_tests.rs`, `recovery.rs`, `source_workspace.rs`, `workflow/recovery.rs`, `port_workflow.rs`, `semantic_review/recovery.rs` and `app/checkpoints.rs`. No Cargo or native operation was performed by this reviewer.
| Concern | Inspected behavior |
| --- | --- |
| Admission | Restore first compiles the accepted bundle. Compatibility requires the reported migration to be exactly 5→6 and the resulting entire bundle to equal the original after replacing only the parsed entry version token. Comments, whitespace, includes and UUIDs must otherwise remain byte-identical. Missing identity insertion, other source changes and source 4 are rejected. |
| Raw buffers and baselines | Only an applied workspace with the same entry can refresh clean buffers, and only where text equals baseline equals the old accepted file bytes. Dirty invalid text, its old baseline, an unrelated clean buffer, and an unapplied alternative workspace remain untouched. |
| Historical model binding | The legacy serializer preserves the historical Project/Diagram field order and omits the new default view options. Its shape was compared against the model changes since checkpoint `2b2d2bc`; new constructors do not change the existing serialized variants. Old workflow fingerprints must match this independently reconstructed accepted base before rebinding to schema 6. This is a consistency check, not cryptographic authentication. |
| Workflow intent and approvals | Typed relation/transition/port inputs are restored through their ordinary restore/replan paths. Semantic v1 and v2 retain authored choices and raw drafts, clear accepted impact approvals, then use strict current restoration and planning. No serialized executable command is accepted as a restored plan. |
| Limits and scope | The normal 256 MiB checkpoint read bound, source workspace validation, typed unknown-field rejection, semantic aggregate draft limits, stable row-address checks and row-count bounds remain in the restore path. The compatibility branch does not bypass them. |
| Failure and destination | App prepares the complete restoration before resetting the current document. A failed upgrade retains the checkpoint and existing document. A successful restore is dirty with no undo stack or original/hosted destination; source files and the checkpoint are not rewritten by migration. |
Inspected `.local/source5-recovery-tests2.log`: **13 tests passed**. These cover historical serialization, exact token-only migration, invalid raw text/baselines, unrelated/unapplied workspaces, untouched origin/checkpoint bytes, unsupported source 4 and missing identities, old Diagram property shape, stale workflow/port fingerprints, and semantic v1/v2 compatibility with approval clearing. The later `.local/source6-desktop-attachments-recovery-all.log` records **506 desktop tests passed**. These are other owners' execution results, not independent reruns by this reviewer.
The review does not establish native old-checkpoint migration, arbitrary-corruption repair, power-loss durability or every historical binary's private checkpoint format. Unsupported or malformed records deliberately fail without replacing accepted work. The running source-6 native binary predates this upgrade; new-binary native restore/repair/Save As remains a release gate.