pseudo-immutability
In a filesystem-based structure like a semantic mesh, you can't really prevent changes. But some things in a mesh should be treated as immutable, like version snapshot and intramesh identifier.
Pseudo-immutability acknowledges that things might be changed, for various reasons:
- accidental changes
- "cleaning up" of data for legal reasons, e.g.: personally-identifiable information (PII) or "the right to be forgotten."
- fixing of typos or other errors
- re-organizing namespaces
If you're updating a dataset, the principle of pseudo-immutability is preserved in that the old data can still exist and be discoverable from the metadata
Psuedo-immutability also acknowledges that for non-atomic data especially, "the next version" is going to keep changing until a checkout or "weave". And that sometime you want the "latest" data for a given resource, and without sophisticated database management (e.g., )
Mitigations
- metadata can track changes and supply reasons
- tooling can be used to make changes in ways that don't break the API
Backlinks