Error Correction default placement: embedded vs detached #3
Replies: 2 comments 1 reply
|
Good thought, and it's worth opening properly rather than me just picking. The single-file philosophy is real, but embedded and detached are not symmetric, they protect different things and cost different things, so the "default" choice has consequences beyond ergonomics. Let me lay the three paths out so we can decide on the full picture. The asymmetry in one line: the embedded extension is located through the MAC-verified header, so if the header or manifest is the thing that rots, you can't find the embedded parity (chicken-and-egg). Only the detached sidecar, which sits outside and is content-SHA-bound, can rebuild a damaged header/manifest on open. So embedded effectively protects the data window only. The three paths
* the embedded extension is located via the MAC-verified header; if the header itself is damaged the parity can't be found. Two notes that the table compresses:
What each path looks like, and how it fails1. detached (current default) -- max resilience, footgun on copy 2. embedded -- truly one file, but blind to header/manifest damage 3. both -- self-contained for data, sidecar still covers the metadata Where that leaves the defaultThe honest read is that "single file" and "survives header/manifest corruption" pull against each other, and embedded as the sole default quietly drops the protection for the failure that makes a vault completely unopenable. So the real question for the V4 default is probably detached vs both, not detached vs embedded. What weighs more for the default user in your view: keeping it one self-contained file, or never paying double overhead? And is the copy-the-vault-lose-the-sidecar footgun something we'd rather solve at the UX layer (warn/bundle on move) than by changing the format default? |
|
To make the three options concrete while we weigh the default, here is how each placement actually looks on disk:
Sharing it as a visual aid for the discussion, it does not pre-empt the decision. |

Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Maybe it would actually make sense for the default place for Error Correction in AeroVault V4 to be as embedded instead of detached, because it's part of the philosophy of AeroVault that it's a single file.
So going against this philosophy should be opt-in.
All reactions