frontend-patterns/reference/0.1/Catalog.md
tegwick 53bb65e7a6 Complete the bounded language 0.1 research preview
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e241-8285-7a63-8c0c-51c9cb824dc3
2026-09-27 11:49:48 +02:00

32 lines
6.5 KiB
Markdown

# Candidate reference — 0.1
All records are draft hypotheses. Classification is provisional; linked candidate prose contains context, alternatives and consequences. Evidence locators describe partial support, not full-contract recurrence.
## Core
| Candidate / decision | Families; scales | Evidence limits |
| --- | --- | --- |
| [CAND-0001 — Conflict Copy](../../research/candidates/ConflictCopy.md) — Preserve competing versions instead of silently losing one. | synchronization; L2, L6 | Authorized retention and export are separate decisions. Complete contract recurrence and fault-tested deployed behavior remain unverified. |
| [CAND-0002 — Local Commit Boundary](../../research/candidates/LocalCommitBoundary.md) — Define when a local change is durably accepted. | mutation, authority; L2, L6 | No executed storage crash or backup test. Local acceptance is not off-device recovery. |
| [CAND-0003 — Pending Synchronization](../../research/candidates/PendingSynchronization.md) — Keep accepted local intent visible until synchronization resolves. | synchronization; L2, L6 | Atomic supersession and retry contract proposed, not storage-tested. |
| [CAND-0004 — Explicit Reconciliation](../../research/candidates/ExplicitReconciliation.md) — Resolve divergent content while retaining provenance. | synchronization, affordance; L2, L6 | Atomic resolution/provenance UI not executed. Overlap with Conflict Copy remains an open merge question. |
| [CAND-0005 — Local Draft State](../../research/candidates/LocalDraftState.md) — Separate unfinished intent from refreshed authoritative data. | affordance, mutation; L6 | No native-unload, crash, multiple-tab or access-revocation guarantee. Full base/draft/current merge contract is not verified in deployed frontends. |
| [CAND-0006 — Version-Checked Mutation](../../research/candidates/VersionCheckedMutation.md) — Reject an operation whose observed base is stale. | mutation, authority; L2, L6 | Distributed atomicity and complete frontend recurrence remain unverified. Refetch does not authorize overwriting conflicting intent. |
| [CAND-0007 — Mutation Outcome Tracking](../../research/candidates/MutationOutcomeTracking.md) — Retain operation identity when transport outcome is uncertain. | mutation, synchronization; L2, L6 | No production server deduplication or complete retention-window guarantee. Cancelling local UI is not remote compensation. |
| [CAND-0008 — Invalidate and Reproject](../../research/candidates/InvalidateAndReproject.md) — Refresh a projection after mutation without equating acceptance and visibility. | projection, synchronization; L3, L6 | Read-your-write and acceptance/refresh distinction still proposed. No independent deployed full-contract observation. |
## Extensions
| Candidate / decision | Families; scales | Evidence limits |
| --- | --- | --- |
| [CAND-0009 — URL-addressable State](../../research/candidates/URLAddressableState.md) — Make a navigable state reconstructible from its URL. | address, projection; L3 | Independent application recurrence and human/AT validation remain unverified. Pending history disclosure, multiple history misses, redirects, nonzero swap delays, bfcache, lifecycle cleanup, interrupted/late enhancement and offline availability remain open. Zulip auxiliary target/anchor callbacks, deferred editing focus and search callback wiring remain unverified; static guards do not prove whole-application ownership. |
| [CAND-0010 — Progressive Enhancement](../../research/candidates/ProgressiveEnhancement.md) — Keep essential actions usable when enhancement is unavailable. | quality, execution, affordance; L3, L6 | Independent application recurrence and human/AT validation remain unverified. Pending history disclosure, multiple history misses, redirects, nonzero swap delays, bfcache, lifecycle cleanup, interrupted/late enhancement and offline availability remain open. Zulip auxiliary target/anchor callbacks, deferred editing focus and search callback wiring remain unverified; static guards do not prove whole-application ownership. |
| [CAND-0011 — Presentation Model](../../research/candidates/PresentationModel.md) — Separate presentation decisions from view mechanisms. | composition, affordance; L4, L6 | No executed model/view integration or independently reviewed full-contract use. |
| [CAND-0012 — Derived State](../../research/candidates/DerivedState.md) — Compute a result from explicit authoritative inputs. | projection, affordance; L3, L6 | Snapshot coherence and changed-locale cache test still planned. |
| [CAND-0013 — Vertical Feature Slice](../../research/candidates/VerticalFeatureSlice.md) — Group a capability across UI, state and behavior with explicit interfaces. | composition; L4 | Build/import enforcement not executed. Feature organization does not establish independent activation. |
| [CAND-0014 — Islands of Interactivity](../../research/candidates/IslandsOfInteractivity.md) — Activate selected interactive regions within a document. | projection, execution; L3, L5 | No executed island fixture, performance comparison or complete recurrence study. |
| [CAND-0015 — Failure Boundary](../../research/candidates/FailureBoundary.md) — Contain specified failure classes while preserving useful neighboring work. | quality, composition; L5, L6 | Synthetic host, not full application recurrence. Boundary cannot imply containment for all asynchronous failures. |
| [CAND-0016 — Focus Return](../../research/candidates/FocusReturn.md) — Restore meaningful focus after a temporary interaction ends. | quality, affordance; L6 | One implementation family; repeated trials are not independent uses. Animated exits and competing owners remain untested; no production repair claim. Route ownership is a contrast, not independent modal recurrence; AT speech and broader history/lifecycle cases remain unverified. Zulip auxiliary target/anchor callbacks, deferred editing focus and search callback wiring remain unverified; static guards do not prove whole-application ownership. |
| [CAND-0017 — Independent Feature Boundary](../../research/candidates/IndependentFeatureBoundary.md) — Separate feature release, activation and session transition contracts. | composition, execution; L1, L4 | No upstream deployment or real team/release-independence validation. Distributed atomicity, retention authorization and native-unload/crash behavior remain open. |
Extensions are optional research leads. VC-03/06 remain provisional; other planned cases are unsupported. Follow the [starting guide](../../START.md) for the two core contexts.