decompose reconciler roadmap into 20 implementation tasks across 5 phases
Tasks follow the architecture spec phases: - Phase 0: key field on UElement (2 tasks + review) - Phase 1: reactive-host bridge / fiber tree (4 tasks + review) - Phase 2: key-based children reconciliation (3 tasks + review) - Phase 3: unmount & dispose support (4 tasks) - Phase 4: TypeBox value optimizations (4 tasks) Validated with taskgraph CLI: no cycles, 15 parallel generations, 3 high-risk tasks identified (signal-driven-updates, commit-mutations, fiber-disposal).
This commit is contained in:
40
tasks/fiber-type.md
Normal file
40
tasks/fiber-type.md
Normal file
@@ -0,0 +1,40 @@
|
||||
---
|
||||
id: fiber-type
|
||||
name: Define Fiber and Effect types
|
||||
status: pending
|
||||
depends_on: [review-key-field]
|
||||
created: 2026-05-18T16:22:57.140011417Z
|
||||
modified: 2026-05-18T16:22:57.140011873Z
|
||||
scope: narrow
|
||||
risk: medium
|
||||
impact: phase
|
||||
level: implementation
|
||||
---
|
||||
|
||||
# Description
|
||||
|
||||
Define the `Fiber<I>` interface and `Effect` type in a new file `src/host/fiber.ts`. The fiber tree is the reconciler's internal state — it maps `UElement` positions to host instances across renders. This is the foundational type that all reconciler work builds on.
|
||||
|
||||
The `Fiber` type is generic over `I` (matching `HostConfig`'s `Instance` type) so each fiber carries a reference to its host instance. This is the bridge: fiber → host instance → host-specific state.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] `Fiber<I>` interface defined with all fields: `instance`, `tag`, `props`, `key`, `children`, `parent`, `effect`, `signalDisposers`, `prevProps`
|
||||
- [ ] `Effect` union type defined with variants: `update`, `insert`, `move`, `remove`
|
||||
- [ ] Types are exported from `src/host/fiber.ts`
|
||||
- [ ] Types are re-exported from `src/mod.ts` barrel
|
||||
- [ ] TypeScript compiles (`npm run build:tsc`)
|
||||
- [ ] No runtime behavior changes — this is type-only
|
||||
|
||||
## References
|
||||
|
||||
- docs/architecture/reconciler.md — Fiber Node, Effect Types sections
|
||||
- docs/architecture/lifecycle.md — Fiber Tree Disposal (signalDisposers field)
|
||||
|
||||
## Notes
|
||||
|
||||
> To be filled by implementation agent
|
||||
|
||||
## Summary
|
||||
|
||||
> To be filled on completion
|
||||
Reference in New Issue
Block a user