portal-rng: 9-cell cross-impl stream matches independent Python baseline

Closes tickets 0001 (portal-rng) and 0002 (os-entropy-seed).

Ticket 0001 goal 4 called for proof that seeding with k, drawing N,
saving, clearing, resuming in any impl, and drawing M more produces a
full stream matching a single-process Python baseline bit-for-bit.
Prior tests/portal-cross-test.sh exercised producer-consumer agreement
but used a producer-side self-computed baseline; it did not compare
against an independent Python run that never saves or resumes.

tests/portal-rng-cross-test.sh computes a single-process Python baseline
once (seed=42, N+M=10 draws, no portal), then runs all 9 producer x
consumer cells (Python, C, asm each side) and checks that producer's
first N plus consumer's M equals the independent baseline. All 12
assertions pass.

Wired into make test-all. Ticket status updated to resolved on both
0001 and 0002 with dated one-line resolution notes.
This commit is contained in:
russell@unturf.com 2026-04-23 20:19:16 -04:00
parent 9dee0d02ee
commit d2866f486d
4 changed files with 156 additions and 5 deletions

View file

@ -99,9 +99,12 @@ functional-test: c-build
@echo "── C ──"
@./c/lumbda tests/functional.lsp | tail -3
test-all: test c-test asm-test functional-test
portal-rng-cross-test: c-build asm-build
@bash tests/portal-rng-cross-test.sh
test-all: test c-test asm-test functional-test portal-rng-cross-test
@echo "════════════════════════════════════════════════════"
@echo "All tests passed (Python + C + Assembly + functional)"
@echo "All tests passed (Python + C + Assembly + functional + portal-rng-cross)"
# ─── Benchmarks (reproducible; referenced in whitepaper §6§11) ───
@ -237,6 +240,6 @@ clean-all: clean clean-whitepaper clean-docs c-clean asm-clean
.PHONY: all test test-verbose bench bench-verbose repl lint \
c-build c-test c-bench c-repl c-clean \
asm-build asm-test asm-repl asm-clean \
test-all bench-all examples friction functional-test \
test-all bench-all examples friction functional-test portal-rng-cross-test \
bench-3way bench-portal bench-portal-cross bench-web bench-rpc-chain bench-proof \
docs whitepaper clean clean-whitepaper clean-docs clean-all