Commit Graph

6 Commits

Author SHA1 Message Date
agra
3328d3fe52 docs: mark fiber-async / race plans SUPERSEDED by the unified context.io stack
Phase 5 of PLAN-IO-UNIFY retired the bespoke fiber-task API (Task/go/wait/cancel)
and re-homed race onto *Future. Prepend SUPERSEDED banners to the three historical
planning docs (PLAN-FIBERS, CHECKPOINT-FIBERS, PLAN-RACE) pointing readers to
PLAN-IO-UNIFY for the current design, noting that the Scheduler engine primitives
+ the race type-machinery they document remain accurate. Bodies kept as the
historical record. Completes the plan's 'update roadmap/checkpoints' item.

Verified by parallel agents: a completeness pass (no retired API in compilable
code; sched.sx surface fully retired; migrated examples meaningful; readme on the
unified API) and an adversarial memory-safety pass over the heap reclamation (no
UAF/double-free; await/worker orderings, cancel timings, 8-way double-free+deinit,
blocking impl all reclaim cleanly with exact values).
2026-06-28 16:50:31 +03:00
agra
3d8f9ca094 docs: PLAN-RACE — race runtime DONE (GAP 1/2 fixed, 826/0, both platforms) 2026-06-26 18:08:03 +03:00
agra
291f21e1b5 docs: PLAN-RACE — make_variant + inline-if-return done; GAP 1 (tuple cursor index) is the last blocker 2026-06-26 15:34:17 +03:00
agra
6dcb620b48 docs: PLAN-RACE — composition gap fixed, synthesis proven; next is the race runtime in sched.sx 2026-06-26 13:41:42 +03:00
agra
18443ea2e9 docs: PLAN-RACE status — folding done, next blocker is nested comptime-type-call composition 2026-06-26 13:14:06 +03:00
agra
dea96bd66a docs: PLAN-RACE (race over M:1 tasks) + file issue 0196
Plan the `race` async deliverable (roadmap A1): a structured first-wins over
the M:1 `Task` layer, returning a comptime-synthesized tagged-union mirroring
the input named tuple's labels. Identifies the one net-new compiler primitive
needed — `pointee($P: Type) -> Type` (project `*Task(A)` → `A`); everything else
(tuple reflection, union synthesis, the suspending runtime) is already in place.

Issue 0196: a named-tuple type ALIAS (`NT :: Tuple(a: i64, b: bool)`) loses its
structure — field access and reflection both fail on the alias, while the inline
and `$T`-type-parameter forms work. Not on the race critical path (race reflects
a tuple type parameter), filed for tracking.
2026-06-26 12:34:13 +03:00