diff --git a/plans/abstractions.md b/plans/abstractions.md index cedc2d64..a8fa4a1e 100644 --- a/plans/abstractions.md +++ b/plans/abstractions.md @@ -12,6 +12,13 @@ Anything short → _Watching_ (what's missing) or _Rejected_ (why). ## Last scan +- **Date:** 2026-06-07 (radar loop, pass 28) +- **Pass 28 — fleet expanding again.** Conformance loop: `go` migrated 609/609; **`forth` + excluded** (foreign Forth corpus — classify-then-exclude working). 4 migrated +1 excluded + on the branch; js/ocaml/smalltalk/tcl remain. **2 new subsystems:** `relations` (Phase 1, + parent/child rel facts → new W9 nascent watch) and `artdag` (nascent, 0 files). `events` + MERGED to architecture (its persist+flow adoption now integrated — W4/W8 landed). Briefing + commit hints more incoming: `dream`, `host`, +5 language chisels. - **Date:** 2026-06-07 (radar loop, passes 26–27) - **Passes 26–27 (routine tracking):** conformance loop steady at ~1 migration/iteration — erlang 761/761, then feed 189/189. A1 = 8 on architecture + 3 on the branch; 6 remain. @@ -242,9 +249,10 @@ one merged file copied N times. Correct one-liner: - **Priority: HIGH** (15 consumers, low risk, interface-preserving, additive). - **8 adopters on architecture** (pass 25): acl, apl, datalog, **events**, haskell, mod, prolog, search — `events` migrated via its OWN loop; `search` via counters mode (which - corrects the earlier "search excluded" note). **+3 on the `loops/conformance` branch: - `common-lisp` 487/487, `erlang` 761/761, `feed` 189/189** — pending merge to architecture. - Remaining for the loop: forth, go, js, ocaml, smalltalk(likely-excluded), tcl. + corrects the earlier "search excluded" note). **+4 on the `loops/conformance` branch: + `common-lisp` 487/487, `erlang` 761/761, `feed` 189/189, `go` 609/609** — pending merge. + **`forth` EXCLUDED** (foreign Forth corpus — Hayes core.fr via awk+python, like lua). + Remaining for the loop: js, ocaml, smalltalk(likely-excluded), tcl. - **NOW IN PROGRESS — dedicated loop (2026-06-07).** A human-triggered `conformance` loop (worktree `/root/rose-ash-loops/conformance`, branch `loops/conformance`, tmux session `a1-conformance`, briefing `plans/agent-briefings/conformance-loop.md`) is working the @@ -425,6 +433,18 @@ one merged file copied N times. Correct one-liner: --- +### W9 · Parent/child relationship tracking → the new `relations` subsystem (nascent) +- **New subsystem (pass 28):** `relations` (loops/relations, Phase 1 — `schema.sx`+`api.sx`, + rel facts + `relate`/`unrelate`/`children`/`parents`/`related`, 22 tests). Per CLAUDE.md + it's the canonical "cross-domain parent/child relationship tracking." +- **Why watch:** several subsystems already track parent/child *locally* — feed reply-to + threading (`thread`/`replies`), content nested block trees, events occurrence/RECURRENCE-ID + links. If `relations` becomes the shared home, those are candidate *delegators* (like + acl=authZ, persist=log). But it's **Phase 1, pre-Phase-2, moving target** — and each + local impl is currently domain-specific (different keys/semantics). Do NOT propose yet. + Re-check when relations is past Phase 2 AND ≥3 subsystems' relationship logic could + genuinely delegate to it. `artdag` also just spawned (nascent, 0 files) — tracking only. + ### W8 · Durable externally-resumed orchestration on `lib/flow` (suspend→host-IO→resume) - **The shared shape:** a durable `flow` that `request`s an external action (a suspend point), the **host** performs the IO, then `flow/resume`s the flow with the outcome;