frontend-patterns/research/candidates/DerivedState.md
tegwick 50c68575f1 Broaden pattern hypotheses across presentation composition and quality
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0cffe-206f-7323-89d3-b20ca4cf4bf9
2026-09-26 21:46:28 +02:00

1.8 KiB

title status maturity families scales admission
Derived State draft hypothesis
projection
affordance
L3
L6
research-candidate-only

Derived State

Context: totals, filters and enabled states can be calculated from existing inputs. Keeping separate mutable copies risks disagreement; repeated computation costs time.

Proposed solution: identify the authoritative inputs and derive a read-only result from a coherent input snapshot. Cache expensive results only with explicit dependency and invalidation rules. An independently editable proposal is a new input, not a computed value to overwrite when its source changes.

Result: fewer mutable synchronization obligations, at the cost of computation and cache bookkeeping. Deriving from stale input does not make the output fresh. Time, locale and access context must be represented when they influence the result.

Evidence: B02 locates Redux selector guidance. This is a documented mechanism, not a requirement to adopt Redux or a global store. Alternative: a maintained materialized view when recomputation is too expensive, with its consistency contract. Historical snapshots and user overrides must retain their distinct meanings.

Proposed relations: supplies Presentation Model; refreshing inputs through Invalidate and Reproject is conditional.

Next test: change a filtered record and its filter together; verify list and total use the same snapshot, then challenge a cached result with a changed locale.

Evidence locators: breadth review. All relations are research proposals; no canonical identity or admitted graph edges. The next test is planned, not executed. Known uses of the complete proposed contract have not been verified in this investigation.