Repository navigation
Commit 3e3bf0d
committed
fix(gc): deserializer composite-rebuild rooting hole + TAP pin follow-through
Smell-audited: 2: the gc_torture failure A/B-bisected to the D-563(b)
commit, but the ROOT CAUSE is a pre-existing latent hole my change was
first to mass-exercise: serialize.readValue's composite arms (list /
vector / array_map / hash_set) grow `out` (+ in-flight key / cons buf)
as Zig LOCALS across per-element readValue/assoc/conj allocs — an
alloc-torture collect in the window sweeps the in-progress structure
(recycled ArrayMap count → the "index 16, len 16" trace walk panic).
Per-def meta constants (D-563b) made every lazy-ns bytecode replay
deserialize composites, exposing it at 6/10 under
CLJW_GC_TORTURE_ALLOC=1. Fix = the established fabrication-region
bracket (ADR-0150) on all four arms: 0/12 post-fix, full gc_torture
suite green. Composite constants are small — deferring the collect to
the bracket end is bounded.
Also: phase15_clojure_test_tap pins updated for the D-563(b)
` (file:line)` suffix (clj's TAP emits it too — oracle-checked;
deftest-var-sourced per the narrowed AD-041).1 parent 2828448 commit 3e3bf0d
2 files changed
Lines changed: 23 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
551 | 551 | | |
552 | 552 | | |
553 | 553 | | |
| 554 | + | |
| 555 | + | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
554 | 561 | | |
555 | 562 | | |
556 | 563 | | |
| |||
563 | 570 | | |
564 | 571 | | |
565 | 572 | | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
566 | 577 | | |
567 | 578 | | |
568 | 579 | | |
| |||
573 | 584 | | |
574 | 585 | | |
575 | 586 | | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
576 | 591 | | |
577 | 592 | | |
578 | 593 | | |
| |||
584 | 599 | | |
585 | 600 | | |
586 | 601 | | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
587 | 605 | | |
588 | 606 | | |
589 | 607 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
35 | | - | |
36 | | - | |
37 | | - | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
| 41 | + | |
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
46 | | - | |
| 46 | + | |
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
| |||
0 commit comments