What's Changed
- Drex Max v1 setup in the README, and the affine Q4 checkpoint in docs/drex-max.md. Not verified on a GPU by @alisher-amantay in #813
- Release workflow opens a pull request in the Homebrew tap, not a push to its main (the tap's ruleset rejected v0.2.25's). Not verified end to end by @alisher-amantay in #815
- docs/drex-max.md: drop the experimental caveat, keep the 0.0329 drift as a number. Not verified on a GPU by @alisher-amantay in #814
- README and docs: Splash only as a separately measured engine, Kapitsa decodes with KFlash. Docs only; log lines renamed, not verified on a GPU by @alish-nace-23 in #821
- Release workflow makes a Homebrew bottle and pours it, so brew install works on a Mac with stale or missing Command Line Tools. Not verified end to end by @alish-nace-23 in #823
- serve: a WebSocket upgrade on /v1/responses gets 426, not 404, so Codex Desktop falls back to HTTP at once. Not verified on a GPU by @alish-nace-23 in #824
- Keep earlier turns' reasoning by default for templates with preserve_thinking (#253). Not verified on a GPU by @alish-nace-23 in #820
- Ignore named CMake build directories by @itomatik in #834
- Pin preserve_thinking's default with a CPU test (follow-up to #820) by @alish-nace-23 in #827
- bench: report which drafter decoded, and send the telemetry header on writing runs by @alish-nace-23 in #817
- Splash mode: structured output through Kapitsa's own grammar answering Splash's token-mask requests (tests/test_structured.py passes on Flash-Next Q2_0 with Splash 1.5.0) by @alish-nace-23 in #826
- perf: share RoPE pair angles (M4 Pro 128/512-row prep -8–10%) by @chainhelen in #835
- api: effort above minimal asks the template for thinking instead of assuming it by @yangweijie in #839
- Qwen: load 5-bit group-128 MLX packs with existing group-64 kernels by @chainhelen in #836
- perf: gate SIMD top-k selection (M4 opt-in stage 1 -21%) by @chainhelen in #799
- sdk: add Node.js/TypeScript bindings (27B streaming and cancellation checked) by @chainhelen in #802
- systemone: discover Drex Max option codes on demand. Not verified on a GPU by @alish-nace-23 in #842
- bench: measure large input increments after a cached prefix by @chainhelen in #843
- Qwen 4 gate: the loader's expert, MoE width, GDN, GQA and n-gram limits refused before the download too (CPU only) by @fearampgreed in #844
- qwen4_exp converter: the n-gram table's hash, layer, shards and width from config.json, and --repo / --rev (CPU only) by @fearampgreed in #845
- Reuse paired QMT metadata: Qwen −3.2%, Max within noise by @alish-nace-23 in #846
- M5 Max: Kapitsa's cells re-measured on 7f4e709, Flash-Next 1,701 / 108 (prefill +46%), Dory prefill +34%, 27B 143 (+8%), Lightning 287 (+7%), Super-VL 87 (-7%), with prefill and decode from 1K to 32K by @fearampgreed in #849
- perf(metal): separate bidi attention exchange, Max prefill -3.5% by @alish-nace-23 in #847
- tools: capture complete Max readout vectors (Not verified on a GPU) by @alish-nace-23 in #848
- README: Kapitsa's prefill and decode from 1K to 32K context on the M5 Max (two charts, every model), and Clover re-measured on 7f4e709 (5,981 / 304) by @fearampgreed in #850
- Kapitsa 0.2.26: sets the version in CMakeLists.txt, the KAPITSA_VERSION fallbacks in src/, install.sh's example and packaging/homebrew/kapitsa.rb, as #786 did for 0.2.25. The tag v0.2.26 goes on the merge commit. by @fearampgreed in #856
New Contributors
- @alish-nace-23 made their first contribution in #821
- @yangweijie made their first contribution in #839
Full Changelog: v0.2.25...v0.2.26