Version-checked complete record replacement
Context
Editors and import adapters can hold stale or partial content. Replacement semantics need a clear distinction from partial changes.
Decision
Versioned replacements describe the complete mutable content and clear omissions, patches change named parts, and lifecycle actions use their own guards and concurrency contracts.
Alternatives Considered
Merging omitted replacement fields: Clients would lack predictable clearing semantics and retain content outside their intended complete replacement. Accepting unversioned overwrites: Concurrent editors could silently replace changes they never read.
Consequences
Replacement clears omitted position, group and requirement settings. Custom-record replacement clears omitted live properties. Load corrections can clear omitted link dates and reopen ended connections. Field archival, restoration and rule replacement are unversioned exceptions.