Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a0cffe-206f-7323-89d3-b20ca4cf4bf9
39 lines
1.8 KiB
Markdown
39 lines
1.8 KiB
Markdown
---
|
|
title: Presentation Model
|
|
status: draft
|
|
maturity: hypothesis
|
|
families: [composition, affordance]
|
|
scales: [L4, L6]
|
|
admission: research-candidate-only
|
|
---
|
|
|
|
# Presentation Model
|
|
|
|
Context: a screen contains presentation decisions that are difficult to exercise
|
|
through widget APIs. Testability and reuse compete with binding complexity.
|
|
|
|
Proposed solution: represent presentation state and decisions independently of the
|
|
concrete controls; adapt that model into the view and translate interaction back
|
|
into intents. Domain authority stays outside presentation decisions. Specify the
|
|
binding direction and ownership of each editable value to avoid feedback loops.
|
|
|
|
Result: logic can be tested without mounting the full interface, but model/view
|
|
synchronization becomes another failure surface. This is broader than Local Draft
|
|
State: a presentation model may contain selection and enablement without any draft.
|
|
Do not create a second editable copy of every domain object by default.
|
|
|
|
Evidence: B01 locates Fowler's named pattern and its synchronization trade-off.
|
|
The source is a historical draft, not a verified deployment in this research.
|
|
Alternative: keep a trivial screen's logic in its view; another controller style
|
|
may be sufficient. Full-pattern recurrence here remains unverified.
|
|
|
|
Proposed relations: may contain [Local Draft State](LocalDraftState.md) and compute
|
|
[Derived State](DerivedState.md); neither is mandatory.
|
|
|
|
Next test: edit, refresh and change selection; verify ownership of draft versus
|
|
server observation and ensure a binding update does not trigger duplicate commands.
|
|
|
|
Evidence locators: [breadth review](../reviews/PatternBreadthExpansion.md).
|
|
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.
|