stabilize architecture docs: address review findings and advance to stable
Critical fixes: - Restructure pointers.md: move setNode prop-key writes section under its own heading (was incorrectly nested under selectNode) - Add Context/Density/Direction/RenderContext documentation section to host-config.md (was only a brief constraint bullet) - Advance all 5 ADRs from Status: Proposed → Accepted and frontmatter from status: draft → status: stable (decisions are driving implementation) - Add error handling philosophy section to README Warning/suggestion fixes: - Add isUElement null check (node !== null) to schema.md discriminator table - Add UjsxEnvelope convenience type documentation to events.md - Add Direction Unicode arrow naming note to transforms.md - Standardize all cross-references from absolute docs/research/ paths to relative ../research/ paths across all architecture docs - Fix schema.md ADR references to use relative paths - Reduce redundancy between transforms.md and host-config.md Direction notes - Update all architecture doc frontmatter from draft → stable Deferred: - Performance model section (reconciler not yet built) - Concepts/glossary document (low ROI at current scale) - Line counts in source references (would date quickly)
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
---
|
||||
status: draft
|
||||
status: stable
|
||||
last_updated: 2026-05-18
|
||||
---
|
||||
|
||||
# ADR-001: HTML-agnostic core
|
||||
|
||||
**Status**: Proposed
|
||||
**Status**: Accepted
|
||||
|
||||
## Context
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
status: draft
|
||||
status: stable
|
||||
last_updated: 2026-05-18
|
||||
---
|
||||
|
||||
# ADR-002: TypeBox Module as type registry
|
||||
|
||||
**Status**: Proposed
|
||||
**Status**: Accepted
|
||||
|
||||
## Context
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
status: draft
|
||||
status: stable
|
||||
last_updated: 2026-05-18
|
||||
---
|
||||
|
||||
# ADR-003: Preact signals-core for reactivity
|
||||
|
||||
**Status**: Proposed
|
||||
**Status**: Accepted
|
||||
|
||||
## Context
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
status: draft
|
||||
status: stable
|
||||
last_updated: 2026-05-18
|
||||
---
|
||||
|
||||
# ADR-004: `key` as a First-Class Field on `UElement`
|
||||
|
||||
**Status**: Proposed
|
||||
**Status**: Accepted
|
||||
|
||||
## Context
|
||||
|
||||
@@ -70,7 +70,7 @@ The TypeBox schema uses `Type.Optional(Type.String())` for `key`, so validation
|
||||
|
||||
## References
|
||||
|
||||
- Key field design research: `docs/research/reconciler/00-KEY-FIELD-DESIGN.md`
|
||||
- Key field design research: `../../research/reconciler/00-KEY-FIELD-DESIGN.md`
|
||||
- Schema architecture: [schema.md](../schema.md)
|
||||
- Element factory: [element-factory.md](../element-factory.md)
|
||||
- Reconciler algorithm: [reconciler.md](../reconciler.md)
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
status: draft
|
||||
status: stable
|
||||
last_updated: 2026-05-18
|
||||
---
|
||||
|
||||
# ADR-005: Signal-Driven Updates Over Tree Diffing
|
||||
|
||||
**Status**: Proposed
|
||||
**Status**: Accepted
|
||||
|
||||
## Context
|
||||
|
||||
@@ -58,8 +58,8 @@ This means 90% of updates (property changes) bypass tree diffing entirely. The r
|
||||
|
||||
## References
|
||||
|
||||
- Reactive → Host bridge research: `docs/research/reconciler/01-reactive-host-bridge.md`
|
||||
- Key-based children reconciliation: `docs/research/reconciler/02-key-based-children-reconciliation.md`
|
||||
- Reactive → Host bridge research: `../../research/reconciler/01-reactive-host-bridge.md`
|
||||
- Key-based children reconciliation: `../../research/reconciler/02-key-based-children-reconciliation.md`
|
||||
- Reconciler architecture: [reconciler.md](../reconciler.md)
|
||||
- Reactive layer: [reactive-layer.md](../reactive-layer.md)
|
||||
- HostConfig interface: [host-config.md](../host-config.md)
|
||||
Reference in New Issue
Block a user