frontend-patterns/research/candidates/VersionCheckedMutation.md
tegwick 96d11431dc Expand transactional editing evidence and compare authority cases
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0cffe-206f-7323-89d3-b20ca4cf4bf9
2026-09-25 10:32:13 +02:00

1.6 KiB
Raw Blame History

title status maturity families scales admission
Version-Checked Mutation draft hypothesis
mutation
authority
L2
L6
research-candidate-only

Version-Checked Mutation

Context: a proposal depends on a previously observed record. Problem: concurrent updates can invalidate that base. Consistency competes with throughput and user effort.

Proposed solution: send an expected version with the proposal; the authority checks it atomically with validation and commit. A mismatch rejects the attempt. Preserve the draft, fetch current state and reconsider intent before a new attempt. An operation identity for safe retries is separate from the version precondition.

Consequences: lost updates can be detected, but high contention creates repeated review. Unconditional or commutative operations may need different preconditions; blindly retrying with a new version can overwrite another user's intent.

Evidence: T01 documents Kubernetes conditional PUT; T02 documents a different GitLab failure surface and optional last_commit_id, insufficient to prove identical atomic semantics. One precise mechanism use, not two verified frontend uses. Recurrence of this frontend configuration: unknown. Hypothesis only.

Proposed connection: rejection creates work for Local Draft State and Mutation Outcome Tracking.

T01–T05 refer to TransactionalEvidenceExpansion. Connections are research proposals, not admitted graph edges. Reasoning exercise: VC-01.