From 3328d3fe52cd280e26bc57e512286bc583258ad0 Mon Sep 17 00:00:00 2001 From: agra Date: Sun, 28 Jun 2026 16:50:31 +0300 Subject: [PATCH] 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). --- current/CHECKPOINT-FIBERS.md | 7 +++++++ current/PLAN-FIBERS.md | 8 ++++++++ current/PLAN-RACE.md | 7 +++++++ 3 files changed, 22 insertions(+) diff --git a/current/CHECKPOINT-FIBERS.md b/current/CHECKPOINT-FIBERS.md index fa0d1950..cd278f8f 100644 --- a/current/CHECKPOINT-FIBERS.md +++ b/current/CHECKPOINT-FIBERS.md @@ -1,3 +1,10 @@ +> **SUPERSEDED (2026-06-28).** The fiber-async API tracked here — `Task` / `go` / `wait` +> / `cancel` — was RETIRED and folded into the unified `context.io` async stack in +> PLAN-IO-UNIFY Phase 5. See `current/PLAN-IO-UNIFY.md` (`## Status (2026-06-28)`) for +> the current design. The `Scheduler` ENGINE primitives (swap_context, mmap stacks, +> spawn / run / yield_now / suspend_self / wake / sleep / block_on_fd, virtual-time +> timers) REMAIN and are still accurate. Below is a historical record. + # CHECKPOINT-FIBERS — Stream B1 (fibers + Io + M:1 scheduler) Companion to [PLAN-FIBERS.md](PLAN-FIBERS.md). Update after every step (one step at a time, diff --git a/current/PLAN-FIBERS.md b/current/PLAN-FIBERS.md index 646bfa73..108d8457 100644 --- a/current/PLAN-FIBERS.md +++ b/current/PLAN-FIBERS.md @@ -1,3 +1,11 @@ +> **SUPERSEDED (2026-06-28).** The fiber-async layer described here — `sched.go` / +> `wait` / `cancel` over `Task($R)` (B1.4a) — was RETIRED and folded into the unified +> `context.io` async stack (`async` / `await` / `cancel` / `race`) in PLAN-IO-UNIFY +> Phase 5. See `current/PLAN-IO-UNIFY.md` (`## Status (2026-06-28)`) for the current +> design. The `Scheduler` ENGINE primitives this doc documents (swap_context, guarded +> mmap stacks, spawn / run / yield_now / suspend_self / wake / sleep / block_on_fd, +> virtual-time timers) REMAIN and are still accurate. Body below is a historical record. + # PLAN-FIBERS — Stream B1 (fibers + Io + M:1 scheduler) > **STATUS: ✅ COMPLETE.** The pure-sx M:1 async runtime is feature-complete end-to-end diff --git a/current/PLAN-RACE.md b/current/PLAN-RACE.md index 604d426e..da003544 100644 --- a/current/PLAN-RACE.md +++ b/current/PLAN-RACE.md @@ -1,3 +1,10 @@ +> **SUPERSEDED (2026-06-28).** The `race` LOGIC described here shipped, then was +> RE-HOMED onto `*Future` + the `Io` protocol as `context.io.race` in PLAN-IO-UNIFY +> Phase 4. The Task-based `sched.race` over `*Task` documented below is RETIRED. See +> `current/PLAN-IO-UNIFY.md` (`## Status (2026-06-28)`) for the current design. The +> type-level machinery this doc documents (`RaceResult` / `make_variant` / tuple +> reflection) is UNCHANGED and still in use. Body below is a historical record. + # PLAN-RACE — Stream B2/A1: `race` over the M:1 fiber scheduler Carved from the async roadmap ([../design/execution-evolution-roadmap.md](../design/execution-evolution-roadmap.md)