docs(local): describe projections before generated effects
Keep local/offline and host capability recipes on app-owned command/event/projection flow without teaching raw EffectBatch as the authoring boundary. req: local/001 req: local/002 req: host/002
This commit is contained in:
@@ -55,7 +55,7 @@ HostEvent
|
|||||||
→ app/domain command
|
→ app/domain command
|
||||||
→ domain validation and optional persistence
|
→ domain validation and optional persistence
|
||||||
→ projection/rendering
|
→ projection/rendering
|
||||||
→ hemx EffectBatch
|
→ generated UI effects
|
||||||
```
|
```
|
||||||
|
|
||||||
Adapters must not mutate DOM, append domain events, or write application state
|
Adapters must not mutate DOM, append domain events, or write application state
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ req: local/002
|
|||||||
The host capability path proves that thin typed contracts work when the shared
|
The host capability path proves that thin typed contracts work when the shared
|
||||||
semantics are obvious: manifest, call, event, and host-check failure. The local
|
semantics are obvious: manifest, call, event, and host-check failure. The local
|
||||||
exemplar proves a safer boundary for offline work: command, domain event,
|
exemplar proves a safer boundary for offline work: command, domain event,
|
||||||
projection, then `EffectBatch`. It does not yet prove common storage,
|
projection, then generated UI effects. It does not yet prove common storage,
|
||||||
reconciliation, export, deletion, or conflict semantics across apps, so a crate
|
reconciliation, export, deletion, or conflict semantics across apps, so a crate
|
||||||
would freeze product policy too early. req: local/002 req: local/003 req:
|
would freeze product policy too early. req: local/002 req: local/003 req:
|
||||||
local/004
|
local/004
|
||||||
@@ -29,7 +29,7 @@ user intent
|
|||||||
→ domain validation
|
→ domain validation
|
||||||
→ LocalEvent
|
→ LocalEvent
|
||||||
→ Projection
|
→ Projection
|
||||||
→ hemx EffectBatch
|
→ generated UI effects
|
||||||
```
|
```
|
||||||
|
|
||||||
The log may live in memory, IndexedDB, SQLite, a native host store, or another
|
The log may live in memory, IndexedDB, SQLite, a native host store, or another
|
||||||
@@ -44,9 +44,10 @@ can render immediate feedback while those decisions remain pending. req: local/0
|
|||||||
|
|
||||||
## Boundary
|
## Boundary
|
||||||
|
|
||||||
Do not persist DOM patches as truth. Do not persist `EffectBatch` payloads as the
|
Do not persist DOM patches as truth. Do not persist generated UI effect payloads
|
||||||
local application log. Those are render instructions produced after app/domain
|
as the local application log. Those are render instructions produced after
|
||||||
code accepts commands and projects events. req: local/001 req: local/004
|
app/domain code accepts commands and projects events. req: local/001 req:
|
||||||
|
local/004
|
||||||
|
|
||||||
Use `hemx-host` only when the local log needs device or shell capabilities such
|
Use `hemx-host` only when the local log needs device or shell capabilities such
|
||||||
as secure storage, files, haptics, microphone, or notifications. The host still
|
as secure storage, files, haptics, microphone, or notifications. The host still
|
||||||
|
|||||||
Reference in New Issue
Block a user