Skip to content

Ralph25 - #134

Merged
SeanCheatham merged 9 commits into
mainfrom
ralph25
Sep 18, 2026
Merged

SeanCheatham merged 9 commits into
mainfrom
ralph25

Conversation

@SeanCheatham

Copy link
Copy Markdown
Owner

No description provided.

…out emit or link, with codegen oracles and a CI parity diff against the compiled hello.
…urning defs, so a flatMap inside a constructor argument no longer references a missing or foreign continuation.
A failing search promotes its repro into <pkg>/corpus/. Run the campaign
that must fail on /tmp/bad-example so the tracked corpus stays what a
human committed.
Replay reads events, schedule_seed, and fault_seed. The campaign seed
that found an entry is provenance, not input. Stop writing it, stop
threading it through the replay chain, and strip it from every corpus.
Note the schedule_seed replay drift gap in gaps.md.
Replay decodes PCT parameters from schedule_seed and the fault plan from
fault_seed. The expanded fields were documentation that nothing read.
Stop writing them and strip them from every corpus.
scuzz eval examples/kernel matches scuzz run byte for byte. Eval covers
Str, List, Map, Set, Json, Float, Builder, Hash, Hex, Base64 kits, IO.both,
IO.fail, handleErrorWith with typed errors, copy on records, implicit self
in defs, for guards, and bare _ callbacks. Effect kits are listed in
Eval.excludedKits for slice 3.

Emit: flatMap releases its receiver only when the receiver is owned.
Fs.read, Fs.list, and Sys.args return owned IO nodes. The codegen oracle
fmParamBorrowed locks the borrowed-receiver case.

codegen: evKitsCovered probes every non-excluded kit through Eval.kitProbe.
ci-kernel.sh diffs scuzz eval against scuzz run.
scuzz eval runs examples/io with the same stdout as scuzz run, except
clock and random lines. Eval maps IO combinators, Fs, Sys, Clock, Random,
Uuid, Bytes, Ref, Queue, Deferred, Fiber, Resource, Stream, and Net to
native IO at Value. excludedKits keeps only the UI and fuzz prefixes.

Emit: thread the flatMap continuation id through constructor, qualified
call, and method-value argument emission. Retain a borrowed Ref.of arg.

Runtime: stream pull graphs borrow an eval node's IO. race, timeout, and
both resume after the loser's finalizers run. io_slot_child takes a raw
env from a shared parent.

ci-kernel.sh diffs scuzz eval against scuzz run on examples/io.
Eval: VTimeline and VVerdict values; Property, Timeline, Verdict, and
Scenario.context cases; excludedKits keeps UI prefixes, the live signal
readers, and Fuzz.

Runtime: sz_fuzz_setup, sz_fuzz_driver, sz_fuzz_verify, sz_fuzz_verify_rel,
sz_fuzz_hit, sz_fuzz_probe. Closure drivers and claims run beside fn-pointer
registrations. The probe copies SCUZZ_EV_* to SCUZZ_* and runs one session in
process. Test: test_fuzz_probe_closures.

Kits and Emit: Fuzz.* rows lower to the hooks. Verdict.onHit binds its lambda
as (Int, Int) for any parameter name.

Proof: examples/codegen prints probe-ok under the env scripts/ci.sh codegen
sets. Docs: vision, gaps, philosophy, plans.
The v0.2.10 bootstrap emitter names the continuation of a flatMap whose body
holds a map lambda inside a constructor argument without a function prefix.
Stage 1 of the bootstrap then fails to link. tcpAcceptIo and udpRecvIo hold
those bodies as defs.
@SeanCheatham
SeanCheatham merged commit 36c021e into main Sep 18, 2026
12 checks passed
@SeanCheatham
SeanCheatham deleted the ralph25 branch September 18, 2026 17:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant