v0.8.6 — shard resilience
The 0.8.5 whole-project sweep could silently lose shards: a numeric truthiness guard (end ? a : b) reached a try-less path as a Real, ctx.Not threw, the uncaught error killed the child with exit 1 — indistinguishable from proof failures — and six files vanished from the report, counted as zero.
Three layers of defense, innermost out:
- Non-Bool ternary guards are havoc'd like untranslatable ones — a truthiness test on a number or reference becomes a free boolean.
- Per-function isolation: one untranslatable shape skips that function with a note on stderr, never the file.
- Dead-child detection by artifact, not status: a missing totals file means the shard died — its files are retried individually, so a single bad file costs itself, not its five siblings.
On the dogfood application the sweep recovered 4 lost files and 5 lost proofs (52 → 57 proved), including an estimate-summary function whose for-of folds now translate.
~325 core tests.