frontend-patterns/research/reviews/VC01-VC02-Comparison.md
tegwick d7b2ea49ce Inspect frontend recovery implementations and refine operation lifecycles
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0cffe-206f-7323-89d3-b20ca4cf4bf9
2026-09-25 10:41:59 +02:00

41 lines
3.2 KiB
Markdown

# VC-01 / VC-02 cross-case assessment
Codex self-review, 2026-09-25. Inputs: [transactional administration](../walkthroughs/VC01-TransactionalAdministration.md)
and [offline field notes](../walkthroughs/VC02-OfflineFieldNotes.md). Both are synthetic;
the comparison is a hypothesis test in prose, not independent validation.
| Decision | VC-01 | VC-02 | Consequence for the language |
| --- | --- | --- | --- |
| First acknowledged boundary | Server accepts a valid command | Local recoverable commit | “Saved” needs an explicit scope |
| Local editing | Unaccepted proposal | Locally authoritative revision after commit | Local state does not imply local authority |
| Remote divergence | Reject stale proposal; retain intent for review | Preserve divergent revisions for reconciliation | Shared concern, different acceptance histories |
| Response loss | Outcome unknown until operation-specific evidence | Propagation unacknowledged; local commit remains valid | Pending synchronization and pending mutation are not synonyms |
| Retry | Same command identity under bounded contract | Same propagation identity under receiver contract | Retry identity is a shared prerequisite, not yet an admitted pattern |
| Refresh | Server observation must not erase a draft | Incoming revision must not erase unresolved local work | Preservation connects the cases without equating their storage guarantees |
| Single writer branch | Domain validation and uncertain outcomes remain | Conflict-copy path can be omitted | Remove mechanisms only when their motivating force disappears |
Q02 remains open but gains a precise counterexample to “local state means local
authority”: VC-01 keeps local drafts while server acceptance controls shared records.
Q03 remains open: server API evidence does not establish independent frontend uses.
Q04 remains unknown: both plain narratives already express the obligations. An
independent reviewer must judge whether names expose omissions or improve decisions.
Provisional relations: Local Draft State supports Version-Checked Mutation recovery;
Mutation Outcome Tracking distinguishes acceptance from Invalidate and Reproject
freshness. Across cases, draft preservation resembles Conflict Copy's preservation
of intent, but neither requires the other's exact mechanism. These are editorial
connections, not canonical graph edges or evidence of recurrence.
Keep the structure stable for the next cycle. Seek implementation evidence for the
weakest new claim (unknown-outcome recovery), then an independent comparison of both
cases. Rendering/addressing can follow as a bounded new branch after that review;
a graph export or broader schema would not resolve the current evidence gaps.
## Pinned implementation and recovery follow-up — 2026-09-25
[Zulip/Element inspection](FrontendRecoveryImplementations.md) adds two partial uses
of unsent-intent preservation and asynchronous message reconciliation. They do not
prove the full approval or offline-note designs. [Review disposition](RecoveryWalkthroughReview.md)
records two rejected model findings and three separate editorial lifecycle corrections.
Q03 still needs complete-pattern evidence; Q04 remains unknown. A completed second-model
response does not satisfy independent empirical review.