frontend-patterns/research/catalog/PatternCandidateCatalog.md

144 lines
8.6 KiB
Markdown
Raw Normal View History

# Pattern Candidate Catalog
This file tracks concepts before promotion into canonical pattern files.
| Candidate | Family | Scale | Status | Main force |
|---|---|---:|---|---|
| Server Authority | authority | L2 | seed | authoritative consistency |
| Local Authority | authority | L2 | seed | offline usability |
| Replicated Authority | authority | L2 | seed | collaborative concurrency |
| URL as Application State | address | L3 | seed | addressability |
| Server Projection | projection | L3 | seed | client compute / delivery |
| Client Projection | projection | L3 | seed | interaction locality |
| Streaming Projection | projection | L3 | seed | first-content latency |
| Islands of Interactivity | projection | L3 | seed | client execution cost |
| Local Interaction State | affordance | L6 | seed | responsiveness |
| Optimistic Overlay | affordance | L6 | seed | interaction latency |
| Invalidate and Reproject | synchronization | L3/L6 | seed | freshness |
| Persistent Subscription | synchronization | L3 | seed | update latency |
| Vertical Feature Slice | composition | L4 | seed | change locality |
| Independent Feature Boundary | composition | L4 | seed | team autonomy |
| Progressive Enhancement | quality | cross-scale | seed | resilience/accessibility |
| Failure Boundary | quality | L5/L6 | seed | fault containment |
`seed` means "worth researching", not "accepted into the canon".
## First investigation dispositions — 2026-09-24
See [AuthorityPilot](../reviews/AuthorityPilot.md). These are manual source-review
outcomes, not successful bench extraction or canonical admission.
| Candidate | Evidence reference | Disposition / question |
| --- | --- | --- |
| Server Authority | SRC-0001, Carniato review C01 | Retain; identify precisely which data and decisions it governs |
| Immediate Feedback | SRC-0001, Carniato review C02 | Add seed; feedback should distinguish tentative from durable/accepted state |
| Local Authority | SRC-0002, local-first review C01 | Retain; test primary ownership versus cache behavior |
| Scoped Authority | Cross-source interpretation in AuthorityPilot | Defer new pattern; may belong in context requirements instead |
No recurrence, established maturity, known uses or required dependency edges are
claimed by these dispositions. Other seed candidates remain unassessed.
2026-09-25: the completed local-first `-06` investigation found no pattern justified
by its single-fragment packet. Local Authority remains a manual seed hypothesis;
no generated candidate IDs or relations were admitted. The missing evidence is
persistence, concurrency, recovery and located independent uses. See
[editorial review](../reviews/TruncationDiagnosis.md).
## Located conflict-handling uses — 2026-09-25
[Conflict Copy](../candidates/ConflictCopy.md) is a new research draft (synchronization,
L2/L6, hypothesis). It merges the Joplin and Obsidian workspace P01 candidates.
Two independently published application guides document the narrow mechanism;
no runtime tests or universal no-loss guarantee. Invalid generated requires edges
were rejected. See [evidence/dispositions](../reviews/LocalFirstEvidenceExpansion.md).
The expanded evidence also refines Local Authority: local persistence, remote-version
selection, semantic resolution and backup are separate concerns. A primary local
copy does not make every local edit globally authoritative.
## Application-driven drafts — 2026-09-25
[VC-02](../walkthroughs/VC02-OfflineFieldNotes.md) connects Conflict Copy with three
new hypothesis research drafts: [Local Commit Boundary](../candidates/LocalCommitBoundary.md),
[Pending Synchronization](../candidates/PendingSynchronization.md), and
[Explicit Reconciliation](../candidates/ExplicitReconciliation.md). Their exact
transaction/retry/UI contracts are proposed, not inferred implementation guarantees.
No FEP IDs or canonical edges. Test whether Explicit Reconciliation deserves a
separate pattern; full admission remains open.
## Transactional expansion — 2026-09-25
Four additional hypothesis drafts: [Local Draft State](../candidates/LocalDraftState.md),
[Version-Checked Mutation](../candidates/VersionCheckedMutation.md),
[Mutation Outcome Tracking](../candidates/MutationOutcomeTracking.md) and
[Invalidate and Reproject](../candidates/InvalidateAndReproject.md).
The last elaborates the existing seed name. Eight developed research drafts now exist;
none has canonical admission. Server Authority remains context; Optimistic Overlay
remains deferred. See [dispositions and evidence](../reviews/TransactionalEvidenceExpansion.md).
## Presentation pilot — 2026-09-26
[Six-pair pilot](../evaluations/language-pilot-01/README.md): initial masked editorial
scoring found 21/24 obligations met with named patterns versus 19/24 with equivalent
prose, and two unsupported claims in each. Inconclusive; human review pending.
Retain all eight hypotheses, no new pattern or promotion. Do not mistake a small
presentation difference for proof of recurrence or improved architecture decisions.
2026-09-26 adjudication: the user-submitted model-assisted worksheet supports four
rating corrections; both presentations now meet 18/24 obligations. The original
21/24 versus 19/24 figures above are historical. [Adjudication](../evaluations/language-pilot-01/submitted-review-01/adjudication.md)
retains all eight hypotheses and the unfulfilled independent-human evidence gate.
## Navigation/rendering expansion — 2026-09-26
[URL-addressable State](../candidates/URLAddressableState.md) develops the URL as
Application State seed; [Progressive Enhancement](../candidates/ProgressiveEnhancement.md)
develops its existing seed. Ten developed hypothesis drafts now exist, none admitted.
[VC-03](../walkthroughs/VC03-ContentPublication.md) adds a provisional synthetic case;
documentation mechanisms do not establish full-pattern recurrence or decision benefit.
Six existing drafts received [shared guidance corrections](../reviews/SharedGuidanceRevision.md)
outside the frozen pilot. Stop adding drafts for this slice; next gather implementation
evidence and challenge the proposed contracts.
## Broader decisions — 2026-09-26
The user's request to broaden supersedes the previous slice's pause on candidate
addition. Six further developed hypotheses bring the current total to **sixteen**:
| Draft | Family / scale | Decision |
| --- | --- | --- |
| [Presentation Model](../candidates/PresentationModel.md) | composition, affordance / L4, L6 | Separate presentation decisions from widget APIs |
| [Derived State](../candidates/DerivedState.md) | projection, affordance / L3, L6 | Compute values instead of maintaining competing mutable copies |
| [Vertical Feature Slice](../candidates/VerticalFeatureSlice.md) | composition / L4 | Organize a capability behind a public module interface |
| [Islands of Interactivity](../candidates/IslandsOfInteractivity.md) | projection, execution / L3, L5 | Activate selected document regions |
| [Failure Boundary](../candidates/FailureBoundary.md) | quality, composition / L5, L6 | Contain a declared failure class and define recovery |
| [Focus Return](../candidates/FocusReturn.md) | quality, affordance / L6 | Resume keyboard work after modal interruption |
[Breadth review](../reviews/PatternBreadthExpansion.md) records primary claims,
non-overlap, counterexamples, synthetic probes and deferred candidates. Initial seed
rows above are historical inventory, not additional developed records. No canonical
admission, proven recurrence or demonstrated presentation benefit is claimed.
## Partial boundary execution — 2026-09-26
[Browser experiment](../reviews/BoundaryRecoveryExperiment.md) adds partial evidence
for Failure Boundary and Focus Return. Seven of eight immediate-run assertions met;
a separate 100 ms nested-settling condition met eight. Removed-trigger default behavior
is a negative control, and immediate nested dismissal remains unresolved. Sixteen
hypotheses retained, no admission or full-pattern recurrence claim.
## Source/build/release distinction — 2026-09-26
[Independent Feature Boundary](../candidates/IndependentFeatureBoundary.md) develops
the existing seed around separate release/activation contracts (composition/execution,
L1/L4). Seventeen developed hypotheses now exist; none admitted. Pinned example
sources support partial mechanisms, not verified production release independence.
[Vertical Feature Slice](../candidates/VerticalFeatureSlice.md) gains a source-layout
example and a contrast with deployment. [Evidence](../reviews/FeatureDeploymentBoundaries.md)
and [provisional VC-06](../walkthroughs/VC06-MicrofrontendEstate.md) distinguish module,
artifact, activation, runtime-failure and organizational boundaries.