Highlights
- Add Ripple-65B Preview support for JANGH2 and JANG_4D bundles, including bundled DFlash2 speculative decoding.
- Improve SSD prefix reuse across tool calls, model reloads and growing conversations, with more compact Ripple sliding-window cache storage.
- Correct model download and running-memory estimates for SSD-backed n-gram tables and mixed JANG formats.
- Strengthen generation-limit, sampler, image-processing and model-specific reasoning correctness.
Performance and known limitations
On the qualified M5 Max app runs, Ripple code generation with DFlash2 was about 2.8× faster than AR on JANGH2 and 2.4× on JANG_4D. Results depend on the model and task: JANGH2 prose was close to AR, and a degraded long-lived process showed a small prose slowdown. An intermittent whole-process slowdown remains under investigation; these measurements are not a guarantee for every workload or Mac.
Adaptive decoding preserves sampling choices. Requests with ineligible sampling options can use AR even while Adaptive is selected; the selector explains this fallback. When switching models, reset unsupported saved reasoning choices to the model default or Inherit. See the runtime qualification and remaining limitations.
What's Changed
- Preserve agent Max Tokens with the merged runtime output-limit fix by @jjang-ai in #3292
- Honor native generation settings and preserve agent control applicability by @jjang-ai in #3294
- fix(claude-code): hide ungranted tools, explain refusals, add effort to picker by @tpae in #3293
- Pin merged K2 grouped-normalization fusion by @jjang-ai in #3297
- Pin merged Spark projection input-cast fusion by @jjang-ai in #3299
- Align workspace mutation line counts with file reads by @jjang-ai in #3301
- Measure SSD table storage and RAM estimates from bundle data by @jjang-ai in #3303
- Keep installed model header totals consistent when filtering by @jjang-ai in #3304
- Count host reclaimable RAM without oversized internal aggregates by @jjang-ai in #3306
- keep every agent on the relay after re-pairing the phone and keep a phone run's stopped reply on the mac by @RaajeevChandran in #3305
- Preserve inherited output-limit provenance in Insights by @jjang-ai in #3308
- Consume merged Gemma unified vision LayerNorm correction by @jjang-ai in #3311
- Consume merged unified Gemma stored RGB correction by @jjang-ai in #3312
- Consume ordinary Gemma stored-RGB and white-alpha correction by @jjang-ai in #3313
- Lean agent-run tool surface, batch file reads, and opt-in specialist tools by @tpae in #3307
- Consume loaded tied-head precision and strengthen cache qualification by @jjang-ai in #3315
- Honor image-edit engine strength contracts by @jjang-ai in #3318
- Pin request-owned DFlash sampling and stabilize cache migration fixtures by @jjang-ai in #3323
- Consume SSD context and model reload runtime fixes by @jjang-ai in #3324
- Consume JANG semantic-width runtime correctness fix by @jjang-ai in #3325
- Consume speculative sampler vocabulary-axis fix by @jjang-ai in #3328
- Pin native MTP accepted stop-tail SSD cache fix by @jjang-ai in #3329
- Consume DFlash media fallback and hybrid cache boundary capture by @jjang-ai in #3331
- Pin vmlx-swift: Ripple-65B-Preview (JANGH2, JANG_4D) with DFlash2 by @jjang-ai in #3332
Full Changelog: 0.25.31...0.25.32