test: bootstrap fixpoint (stage1 == stage2 == stage3 behavioral parity)
Soundness gate for self-hosting (jolt-d0r). stage1 = analyzer built by the Janet bootstrap; stage2 = analyzer rebuilt by compiling jolt.ir + jolt.analyzer through stage1 (self-host); stage3 = the same self-rebuild again. A corpus of programs must produce identical results across all three. Compared BEHAVIORALLY rather than by emitted code: emitted Janet forms embed live setter/getter closures (identity varies per compile) and the IR carries representation-level gensyms and pvec internals, so structural equality fights the representation. Behavioral parity is the property that actually matters and is representation-independent. Also corrects the battery baseline 3920 -> 3919: 3920 was a lucky run; 3919 is the stable value (the 9 timeout-prone tests can shift the count by one).
This commit is contained in:
parent
3638521e2d
commit
e02ccab4c0
2 changed files with 86 additions and 3 deletions
|
|
@ -26,9 +26,11 @@
|
|||
# (sleep 1)))` re-raises the unresolved-`Thread/sleep` error — a documented
|
||||
# platform gap, not a regression in any previously-working behavior.
|
||||
# Raised 3913 -> 3916 with the staged-bootstrap kernel tier (ns-restore-on-throw
|
||||
# + faithful subvec coercion), then 3916 -> 3920 moving juxt/every-pred/some-fn to
|
||||
# Clojure (the canonical defs are more correct than the prior Janet ones).
|
||||
(def baseline-pass 3920)
|
||||
# + faithful subvec coercion), then 3916 -> 3919 moving juxt/every-pred/some-fn to
|
||||
# Clojure (the canonical defs are more correct than the prior Janet ones). 3919 is
|
||||
# the stable value; runs can read 3920 when a timeout-prone test (of the 9 that
|
||||
# can time out) happens to finish, so the floor is set at the consistent 3919.
|
||||
(def baseline-pass 3919)
|
||||
# A file is "clean" when it ran with zero failures AND zero errors.
|
||||
(def baseline-clean-files 45)
|
||||
# Per-file wall-clock budget (seconds). Normal files finish in well under 1s;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue