frontend-patterns/research/catalog/PatternCandidateCatalog.md
tegwick 3ce54fb2d2 Separate authority projection and delivery in measured seed review
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0cffe-206f-7323-89d3-b20ca4cf4bf9
2026-09-27 01:57:30 +02:00

164 lines
10 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Pattern Candidate Catalog
This file tracks concepts before promotion into canonical pattern files.
See [ClassificationCoverage.md](ClassificationCoverage.md) for current counts by
family, scale, responsibility and force, and the comparison against the initial
sixteen seeds. Responsibility/force assignments are provisional editorial mappings.
| 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.
Independent Feature Boundary follow-up: [native-module release cases](../reviews/FeatureReleaseExperiment.md)
add bounded execution for publication, activation, session-scoped rollback and artifact
retention. Corpus remains seventeen hypotheses; synthetic host behavior is not an
independent application use or production release guarantee.
## Authority/projection seed dispositions — 2026-09-27
[AP01–AP06 and six-seed matrix](../reviews/AuthorityProjectionComparison.md) distinguish
scoped acceptance, projection placement and partial delivery. Server/Local Authority
remain scoped context choices pending complete pattern contracts; Replicated Authority
needs a decision-rights/convergence distinction. Server/Client Projection remain
strategies; Streaming Projection is provisionally a delivery qualifier, with a possible
partial-delivery pattern still unproven. Retain all six seeds; none rejected or merged.
Zero new drafts: seventeen hypotheses, seven original seeds developed, nine without
dedicated drafts. Six documentary sources and two synthetic traces do not confer
independent recurrence or human usefulness. Initial seed rows remain historical.