docs(requirements): tighten runtime rows
Add explicit northstar ring fields to runtime requirements and split EffectBatch application from the tiny-runtime size target without changing behavior. req: runtime/001 req: runtime/002 req: runtime/003 req: runtime/004 req: runtime/005 req: runtime/006
This commit is contained in:
+8
-5
@@ -526,19 +526,22 @@ what a valid business email is. [north_star]
|
||||
## runtime
|
||||
|
||||
### req: runtime/001
|
||||
001 Every hemx tree must declare a root boundary via `data-hemx-root` on an ancestor element. The JS runtime resolves lookups within that root only. Multiple independent hemx apps/widgets/modals may coexist on the same document without ID collision. [north_star]
|
||||
0 001 Every hemx tree declares a root boundary via `data-hemx-root`. JS runtime lookups stay within that root, so independent hemx apps/widgets/modals can coexist without ID collision. [north_star]
|
||||
|
||||
### req: runtime/002
|
||||
002 JS runtime attaches a single delegated listener per event type on each `data-hemx-root`. No per-node listeners. Dispatch resolves target via `data-hid` / `data-sid` attributes on the event path scoped to its root.
|
||||
0 002 JS runtime attaches a single delegated listener per event type on each `data-hemx-root`. No per-node listeners. Dispatch resolves target via `data-hid` / `data-sid` attributes on the event path scoped to its root. [north_star]
|
||||
|
||||
### req: runtime/003
|
||||
003 The core JS runtime target is under 5KB minified+gzipped. It remains a tiny op interpreter (no selectors, no VDOM, no scheduler, no expressions). It reads postcard `EffectBatch` bytes and applies them as DOM operations. Optional sync/transition/WASM helpers are separate files.
|
||||
0 003 The core JS runtime target is under 5KB minified+gzipped. It remains a tiny op interpreter: no selectors, VDOM, scheduler, or expressions. [north_star]
|
||||
|
||||
### req: runtime/006
|
||||
0 006 The core JS runtime reads postcard `EffectBatch` bytes and applies them as DOM operations. Optional sync/transition/WASM helpers are separate files. [north_star]
|
||||
|
||||
### req: runtime/004
|
||||
004 Core runtime exposes a minimal version/fingerprint handshake only. Capability negotiation belongs to integration crates such as `hemx-wasm`, `hemx-sync`, and `hemx-transition`.
|
||||
0 004 Core runtime exposes a minimal version/fingerprint handshake only. Capability negotiation belongs to integration crates such as `hemx-wasm`, `hemx-sync`, and `hemx-transition`. [north_star]
|
||||
|
||||
### req: runtime/005
|
||||
005 Failed hemx HTTP requests must fail closed: non-2xx responses are not applied as effects, pending state is restored, root-scoped `data-hemx-error` outlets show a transport failure when present, and the runtime emits an inspectable `hemx:error` event with status when available. [north_star]
|
||||
0 005 Failed hemx HTTP requests fail closed: non-2xx responses are not applied as effects, pending state is restored, root-scoped `data-hemx-error` outlets show transport failure, and runtime emits `hemx:error` with status when available. [north_star]
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user