Skip to content

bgz-tensor: D-PALETTE-NNUE CORRECTED — FT columns ARE a palette256 tenant (GREEN, certified codec)#681

Merged
AdaWorldAPI merged 2 commits into
mainfrom
claude/review-claude-board-files-nhqgx1
Jul 12, 2026
Merged

bgz-tensor: D-PALETTE-NNUE CORRECTED — FT columns ARE a palette256 tenant (GREEN, certified codec)#681
AdaWorldAPI merged 2 commits into
mainfrom
claude/review-claude-board-files-nhqgx1

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

Summary

Corrects the palette-tenant probe. The earlier scalar-256 "FENCED" result used the wrong codec (a hand-rolled k-means codebook, not the workspace's certified Fisher-z cosine-replacement) and the wrong method (materialized — reconstructed weights and re-ran eval, when a similarity/ranking claim is read off the distance without reconstruction). encoding-ecosystem.md — the mandatory codec map — was skipped. Re-run with the real codec flips the verdict.

Corrected result — GREEN

Reuses bgz_tensor::fisher_z::FisherZTable (Fisher-z i8, per-family 3σ gamma; certified ρ≥0.999 on 21 Qwen3-TTS roles / 256 Jina-v5 centroids). On 256 FT columns from nn-1b6a82263149 (32,640 off-diagonal pairs — the Jina-v5 cert setup), pairwise cosine ranking read off the i8 table, no materialization:

ρ_all = 0.99971  (Pearson r 0.99993), cosine MAE 0.00655, 64 KB one-table-read
ρ_mid = 0.99873  on the hard near-orthogonal band (|cos| ≤ 0.3, 19,126 pairs)

Both clear the certified ρ≥0.999 anchor. Fisher-z (arctanh) is monotone → rank-preserving by construction; only the i8 3σ quantization is lossy, and it is negligible. Verdict: the FT columns ARE a palette256 tenant — one-table-read cosine similarity preserved.

Scope (honest)

Proven for FT-column pairwise-cosine similarity (the one-table-read tenant claim). It does not claim byte-exact eval from palette codes — the palette is a similarity/routing tenant, not an exact-eval substitute (that remains the raw net's job). The two are non-contradictory: similarity ranking is preserved; absolute-eval reconstruction was never the palette's job.

Changes

  • crates/bgz-tensor/examples/nnue_palette_cosine.rs — the corrected probe (reads the FT-column fixture exported by stockfish-rs examples/export_ft_columns.rs; the codec drags arrow via holograph, so a file is the clean cross-crate seam).
  • .claude/knowledge/stockfish-nnue-as-perturbation-cascade.md — D-SF-V3-2 flipped to GREEN with the certified-codec result + a correction note explaining why the first cut was wrong.
  • .claude/board/EPIPHANIES.mdE-PALETTE-NNUE-COSINE-GREEN-1 prepended (corrects/supersedes the scalar-fence entry; standing lesson banked: consult encoding-ecosystem.md and reuse the certified codec; measure ranking in distance space, never reconstruct).

Testing

cargo run --manifest-path crates/bgz-tensor/Cargo.toml --release --example nnue_palette_cosine → GREEN (shown above). fmt + clippy clean (-D warnings).

🤖 Generated with Claude Code

https://claude.ai/code/session_01Awg6TXocHcwTtc6eGsHcdD


Generated by Claude Code

…nant (GREEN)

Corrects the 2026-07-11 scalar-256 FENCE, which used the wrong codec (hand-rolled
k-means, not the certified Fisher-z cosine-replacement) and the wrong method
(materialized: reconstruct weights + re-run eval, when a similarity/ranking claim
is read off the distance without reconstruction). encoding-ecosystem.md — the
mandatory codec map — was skipped.

Corrected probe reuses the REAL codec, bgz_tensor::fisher_z::FisherZTable
(Fisher-z i8, per-family 3σ gamma; certified ρ≥0.999). On 256 FT columns from
nn-1b6a82263149 (32640 off-diagonal pairs, the Jina-v5 cert setup), pairwise
cosine ranking read off the i8 table, no materialization:
  ρ_all = 0.99971 (Pearson 0.99993), cosine MAE 0.00655, 64 KB one-table-read
  ρ_mid = 0.99873 on the hard near-orthogonal band (|cos| ≤ 0.3, 19126 pairs)
Both clear the ρ≥0.999 anchor. Fisher-z (arctanh) is monotone → rank-preserving
by construction; only the i8 3σ quantization is lossy, negligibly. Verdict: the
FT columns ARE a palette256 tenant (one-table-read similarity preserved).

Scope: FT-column pairwise-cosine SIMILARITY, not byte-exact eval from codes.
examples/nnue_palette_cosine.rs reads the FT-column fixture exported by
stockfish-rs export_ft_columns. Board: doc D-SF-V3-2 flipped to GREEN;
EPIPHANIES E-PALETTE-NNUE-COSINE-GREEN-1 (corrects/supersedes the scalar fence).

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Awg6TXocHcwTtc6eGsHcdD
@coderabbitai

coderabbitai Bot commented Jul 12, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@AdaWorldAPI, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 19 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 68bca4c6-16bb-4425-810d-a44bd764a3ac

📥 Commits

Reviewing files that changed from the base of the PR and between 2403166 and ab41b39.

📒 Files selected for processing (3)
  • .claude/board/EPIPHANIES.md
  • .claude/knowledge/stockfish-nnue-as-perturbation-cascade.md
  • crates/bgz-tensor/examples/nnue_palette_cosine.rs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@cursor

cursor Bot commented Jul 12, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_c7e5efc6-e12d-45c3-9879-7e044a1c0ce6)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ae58658253

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/bgz-tensor/examples/nnue_palette_cosine.rs Outdated
Comment thread crates/bgz-tensor/examples/nnue_palette_cosine.rs Outdated
Two review fixes on the D-PALETTE-NNUE probe gate:
1. A missing hard cut (rho_mid NaN, < 8 near-orthogonal pairs) no longer reports
   GREEN — it withholds GREEN and returns non-zero (INSUFFICIENT), so a degenerate
   export can't certify the tenant without the fine-discrimination bar exercised.
2. A fenced/below-threshold result now returns a non-zero exit code instead of
   exiting 0, so automation can distinguish a certified tenant from a failed gate.
The exit code is now the gate: 0 only on GREEN; non-zero on fenced/insufficient.
The input-absent path stays exit 0 (CI-safe). No number changed — real fixture
still GREEN (rho_all 0.99971, rho_mid 0.99873), exit 0.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Awg6TXocHcwTtc6eGsHcdD
@AdaWorldAPI AdaWorldAPI merged commit 6153293 into main Jul 12, 2026
6 checks passed
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.

2 participants