Skip to content

release: prepare 0.40.1 (hotfix: #968) - #970

Merged
michalharakal merged 1 commit into
developfrom
release/0.40.1
Aug 12, 2026
Merged

michalharakal merged 1 commit into
developfrom
release/0.40.1

Conversation

@michalharakal

Copy link
Copy Markdown
Contributor

Release preparation for 0.40.1. Version bump + all version-carrying docs; no functional code changes in this branch itself — the fix already shipped to develop in #969.

Headline

Correctness hotfix — silently wrong output, not a crash. This is a hotfix-only release: exactly one functional change since the 0.40.0 tag, #969 (fixes #968). DefaultCpuOps.transpose() for packed quantized weights (Q4_0/Q5_0/Q5_1/Q8_0/Q4_K/Q5_K/Q6_K) performed a shape-only relabel instead of a real block-grid byte permutation whenever a row spanned more than one quant block (blocksPerInputDim > 1 — true of virtually every real model). ops.matmul(x, ops.transpose(W)) fed the packed-quant kernels bytes in the wrong order across all three kernel tiers — scalar, Panama-vector, and native (FFM/JNI) — silently producing wrong numbers, sometimes all-zero output, with no exception raised. Caught by a new ground-truth regression test that dequants each format's canonical vs. kernel-native byte layouts independently and checks both matmul paths against it.

No new features, no API changes. Recommended upgrade priority: high — this is a silent-data-corruption class of bug, not a crash, so it can go unnoticed in production until model output is scrutinized.

What's in this branch

The full 0.40.0..develop delta going into this release: only #969 (fixes #968) — nothing else has merged since 0.40.0.

File Change
gradle.properties VERSION_NAME 0.40.0 → 0.40.1 (single source of truth; BOM re-exports it)
CHANGELOG.md [0.40.1] - 2026-08-12 added under [Unreleased], headline + ### Fixed covering the bug across all 3 tiers / 7 packed formats, closes #968
README.md BOM snippet → 0.40.1, "What's New in 0.40.1" (0.40.0 moves under "Previously"), Contributors (0.40.1)
docs/antora.yml skainet_version attribute → 0.40.1 (used in docs dependency snippets)
docs/…/kernel-support-matrix.adoc regenerated (generateKernelMatrix) — no kernel/tier changes (no new kernels, no tier promotions), version stamp only → 0.40.1

Notes

  • Swept for other stale self-version references (SKEEPs, samples) — none found; this is a 1-commit delta so the surface is minimal.
  • Sanity: ./gradlew help and ./gradlew generateKernelMatrix both green on this branch.
  • No tag created — branch + PR only. Per Gitflow this targets develop; retarget/tag per the maintainers' release flow.

🤖 Generated with Claude Code

Bump VERSION_NAME 0.40.0 -> 0.40.1 and update all version-carrying docs
for a hotfix release scoped to the single functional delta since the
0.40.0 tag: #969 (fixes #968).

- CHANGELOG: new [0.40.1] - 2026-08-12 entry under [Unreleased], headline
  framing this as a correctness hotfix (silently wrong output, not a
  crash); ### Fixed covers DefaultCpuOps.transpose() doing a shape-only
  relabel instead of a real block-grid byte permutation for packed
  quantized formats (Q4_0/Q5_0/Q5_1/Q8_0/Q4_K/Q5_K/Q6_K) whenever
  blocksPerInputDim>1, across scalar, Panama-vector, and native kernel
  tiers; misaligned input now throws instead of silently truncating;
  credits the ground-truth regression test approach.
- README: BOM snippet -> 0.40.1, What's New in 0.40.1 (correctness fix,
  recommend upgrading), 0.40.0 demoted to "Previously", Contributors
  (0.40.1).
- docs/antora.yml: skainet_version attribute 0.40.0 -> 0.40.1.
- kernel-support-matrix.adoc: regenerated via generateKernelMatrix on
  this base — no kernel/tier changes, version stamp only -> 0.40.1.

Branch prep only — no tag created.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

📖 Documentation Preview

The documentation has been built successfully for this PR.

Generated Files:

  • Operator documentation: docs/modules/operators/_generated_/
  • JSON schema output: operators.json

Artifacts:

  • Download the documentation-preview-970 artifact to view the complete documentation locally.

This comment will be updated automatically when the PR is updated.

@michalharakal
michalharakal requested a review from aharakal August 12, 2026 09:19
@michalharakal
michalharakal merged commit dc9102c into develop Aug 12, 2026
19 checks passed
@michalharakal
michalharakal deleted the release/0.40.1 branch August 12, 2026 10:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Packed-quant lazy transpose silently corrupts matmul for any weight with >1 block/row (all formats, not just Q5_0/Q5_1)

2 participants