jolt/test/integration
Yogthos c7b0ad9d84 core: Stage 3 turn 2a — close the implicit Janet root-env leak
resolve-sym's last resort silently resolved any unknown Clojure symbol
against Janet's root environment — leaking Janet builtins with JANET
semantics into Clojure code: (type 1) was Janet's :number, (gensym) returned
Janet symbols (the long-documented (symbol (str (gensym))) macro landmine
existed BECAUSE of this), compare/slurp/int?/any? likewise. The explicit
janet/ prefix is the deliberate interop channel; the implicit fallback is
gone — an unresolved symbol is an error.

What the leak was masking, now proper interned vars:
- gensym: jolt's own (already existed, never interned) — returns real jolt
  symbols; the macro landmine is dead
- compare: full Clojure total order (nil-first, numbers, strings, keywords,
  symbols by ns/name, booleans, chars, uuid/inst, vectors by length then
  elementwise; cross-type throws)
- type: :type metadata override, deftype/record tag as symbol, else a
  taxonomy keyword (host-classified)
- int?: core-integer? — which had a latent bug the leak hid: (integer?
  ##Inf) was true (floor of inf is inf); NaN/infinities now excluded
- any?: constantly true (Clojure 1.9; SCI's namespaces.cljc needs it)
- jolt.interop/janet-type now uses the explicit (janet/type x) channel
- evaluator-test uses init (a bare make-ctx resolved EVERYTHING via the leak)

Suite 4470 -> 4532+ pass / 86-87 clean (proper compare unlocks the sort
files); baselines raised. Conformance 326x3 (+5 rows), +22 predicate spec
rows, stdlib battery green, all specs+unit. Coverage dashboard now counts
previously-leak-resolvable names honestly (missing-portable 19 -> 27).
2026-06-10 12:43:08 -04:00
..
aot-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
api-test.janet test: restructure into unit / integration / spec layers + shared harness 2026-06-05 00:00:16 -04:00
bootstrap-fixpoint-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
cli-test.janet cli: babashka-style flags (--version, --eval, --main, nrepl-server) 2026-06-05 23:20:29 -04:00
clojure-stdlib-suite-test.janet edn: fix strict-map? regression in edn->value; apply EDN built-in tags 2026-06-10 12:25:45 -04:00
clojure-test-suite-test.janet core: Stage 3 turn 2a — close the implicit Janet root-env leak 2026-06-10 12:43:08 -04:00
compile-mode-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
conformance-test.janet core: Stage 3 turn 2a — close the implicit Janet root-env leak 2026-06-10 12:43:08 -04:00
deps-conformance-test.janet docs: fix doc/ -> docs/ references missed in the consolidation merge 2026-06-10 12:11:53 -04:00
deps-loader-test.janet test: fall back to /tmp when TMPDIR is unset (Linux CI) 2026-06-05 23:07:20 -04:00
deps-resolve-test.janet test: fall back to /tmp when TMPDIR is unset (Linux CI) 2026-06-05 23:07:20 -04:00
direct-linking-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
dispatch-cache-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
embedded-stdlib-test.janet bake the .clj stdlib into the binary 2026-06-05 23:51:03 -04:00
fallback-zero-test.janet test: freeze the punt set — fallback-zero asserts the exhaustive fallback surface 2026-06-10 09:54:21 -04:00
features-test.janet core: fix jolt-265 — syntax-quote fully-qualifies core syms to clojure.core/ (#18) 2026-06-10 11:41:42 +08:00
jank-conformance-test.janet test: restructure into unit / integration / spec layers + shared harness 2026-06-05 00:00:16 -04:00
lazy-infinite-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
namespace-test.janet Stage2 task2 tier5 (#16) 2026-06-10 08:13:42 +08:00
nrepl-test.janet fix: pr-str/str of a var, and nREPL namespace switching 2026-06-05 22:05:45 -04:00
sci-bootstrap-test.janet reader: feature set #{:jolt :default}, clause-order matching (RFC 0002) 2026-06-10 11:40:06 -04:00
sci-runtime-test.janet reader: feature set #{:jolt :default}, clause-order matching (RFC 0002) 2026-06-10 11:40:06 -04:00
self-host-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
staged-bootstrap-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
suite-worker.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
systematic-coverage-test.janet feat(strictness): numeric ops reject non-numbers/non-integers like Clojure 2026-06-05 10:58:21 -04:00
uberscript-test.janet deps phases 3-4: uberscript bundling + conformance harness 2026-06-05 23:36:40 -04:00