
Six new language features, twelve new or overhauled stdlib modules, a 28-rule check engine, and VAST promoted to a required release gate. The CLI framework was rewritten with typed parsing and structured output. Mutation testing gained scoped runs and equivalent-likely detection. Seven compiler codegen bugs were fixed, several found by VAST differential testing.

<div class="table-scroll">
<table style="width: 100%; table-layout: fixed;">
<colgroup><col style="width: 240px;"><col></colgroup>
<thead><tr style="background: rgba(0, 0, 0, 0.03);"><th style="text-align: left;">Change</th><th style="text-align: left;">Description</th></tr></thead>
<tbody>
<tr><td>Structured concurrency</td><td>Task groups with cooperative cancellation and timeouts for safe parallel execution.</td></tr>
<tr><td>Effect system</td><td>Compile-time effect tracking with capability checks and per-module policy enforcement via <code>vary.toml</code>.</td></tr>
<tr><td>Bounded type parameters</td><td>Type parameters can specify upper bounds and interface constraints for more expressive generics.</td></tr>
<tr><td>Typed boundaries</td><td>Processes, determinism markers, and JSON decode use typed boundary expansion for safer interop.</td></tr>
<tr><td><code>across</code> generated inputs</td><td>Type-directed generated input testing with the <code>across</code> keyword for property-based test patterns.</td></tr>
<tr><td>Module root discovery</td><td>Modules resolve from a discovered project root with relative imports and improved diagnostics.</td></tr>
<tr><td>stdlib.time</td><td>Duration, instant, calendar, timezone, and clock types with deterministic testing support.</td></tr>
<tr><td>stdlib.collections overhaul</td><td>Removed legacy APIs, added new list, dict, and set utility functions.</td></tr>
<tr><td>stdlib.fs typed metadata</td><td>Filesystem module returns typed metadata, permissions, and query results.</td></tr>
<tr><td>stdlib.http upgrade</td><td>Result-based API, mock transport for testing, request builder, and JSON-first defaults.</td></tr>
<tr><td>stdlib.crypto</td><td>JVM-backed cryptography module with typed wrappers for hashing, HMAC, and encryption.</td></tr>
<tr><td>Bytes type</td><td>New <code>Bytes</code> type with binary I/O across filesystem, HTTP, and crypto modules.</td></tr>
<tr><td>Decimal and Money types</td><td>Exact-precision <code>Decimal</code> arithmetic and <code>Money</code> type for financial calculations.</td></tr>
<tr><td>URL, UUID, CSV modules</td><td>Three new stdlib modules for URL parsing, UUID generation, and CSV read/write.</td></tr>
<tr><td>Text processing</td><td>Text normalization, case transforms, layout utilities, and display-width support.</td></tr>
<tr><td>JSON path access</td><td>JSON values support path-based access, typed encode/decode, and schema validation.</td></tr>
<tr><td>Process typed results</td><td>Process execution returns typed results; new date and time type system.</td></tr>
<tr><td>Surface area shrink</td><td>Effectful built-in APIs moved from the compiler into stdlib modules.</td></tr>
<tr><td><code>vary check</code> engine (28 rules)</td><td>Rule-based diagnostic engine with 28 lint rules, canonical renderers, and <code>vary.toml</code> configuration.</td></tr>
<tr><td>Check suppression and explain</td><td>Suppress individual diagnostics with inline comments; view detailed explanations with <code>--explain</code>.</td></tr>
<tr><td>Check SARIF output</td><td>Project-wide summaries and SARIF-format output for CI integration.</td></tr>
<tr><td>Autofix safety hardening</td><td>Autofixes validated against output contracts to prevent destructive rewrites.</td></tr>
<tr><td>CLI framework overhaul</td><td>Typed argument parsing, validation, structured output modes, and consistent help text across all subcommands.</td></tr>
<tr><td>Unified diagnostic model</td><td>All compiler diagnostics go through a canonical model with consistent terminal and JSON renderers.</td></tr>
<tr><td>Unified failure model</td><td>Errors, warnings, and traces use a single structured failure model for consistent reporting.</td></tr>
<tr><td>LSP improvements</td><td>Enhanced Language Server with docs generation, incremental cache, and bug fixes.</td></tr>
<tr><td><code>vary new</code> template</td><td>Scaffolding template passes <code>vary check</code> clean and better demonstrates language features.</td></tr>
<tr><td>Scoped mutation</td><td>Mutation testing can be scoped to specific modules or functions for faster targeted runs.</td></tr>
<tr><td>Equivalent-likely detection</td><td>Lie detector tracks mutations likely equivalent to the original, reducing false survivor noise.</td></tr>
<tr><td>Testing governance</td><td>Test inventory system and check rule coverage tracking for quality gates.</td></tr>
<tr><td>Performance guards</td><td>Profiling infrastructure and regression guards to catch performance regressions.</td></tr>
<tr><td>VAST as release gate</td><td>VAST is now a required release-candidate gate, blocking releases that fail semantic validation.</td></tr>
<tr><td>VAST semantic profiles</td><td>Phase-based profiles replaced with semantic naming for clarity.</td></tr>
<tr><td>VAST 4-path differential</td><td>Validates compiler output across four optimization paths to catch optimizer bugs.</td></tr>
<tr><td>VAST feature expansion</td><td>Coverage expanded to collections, enums, data classes, match, exceptions, generics, floats, and concurrency.</td></tr>
<tr><td>Docker image</td><td>Official Docker image at <code>ghcr.io/ccollicutt/vary</code> with pre-installed compiler and examples.</td></tr>
<tr><td>List + List codegen fix</td><td>Fixed list concatenation emitting <code>LADD</code> (long addition) instead of list concat.</td></tr>
<tr><td>Nullable codegen fixes</td><td>Fixed two nullable-type code generation bugs found by VAST differential testing.</td></tr>
<tr><td>Collections codegen fixes</td><td>Fixed collections builtin bypass, <code>None</code> unwrap store, and <code>flatten</code> on empty list.</td></tr>
<tr><td>Generic type validation fix</td><td>Fixed generic type validation rejecting valid type parameter usage.</td></tr>
<tr><td>Formatter round-trip fixes</td><td>Fixed not-precedence grouping, right-associativity, and negative literal formatting.</td></tr>
</tbody>
</table>
</div>
