From 5b6b21475126dcb8933be7dc5f643f7b9193c356 Mon Sep 17 00:00:00 2001 From: AdaWorldAPI Date: Thu, 22 Oct 2026 23:11:12 +0200 Subject: [PATCH 1/2] test: add falsifiable Palette256 research probe --- .../tests/palette_immutable_salience_probe.rs | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 crates/bgz-tensor/tests/palette_immutable_salience_probe.rs diff --git a/crates/bgz-tensor/tests/palette_immutable_salience_probe.rs b/crates/bgz-tensor/tests/palette_immutable_salience_probe.rs new file mode 100644 index 000000000..157a09b39 --- /dev/null +++ b/crates/bgz-tensor/tests/palette_immutable_salience_probe.rs @@ -0,0 +1,37 @@ +//! Read-only Palette256 frame and PCDVQ salience contract. +//! This does not assert that dropping weak signals eliminates hallucinations. +use bgz_tensor::{Base17, WeightPalette}; + +fn axis(axis: usize, amplitude: i16) -> Base17 { + let mut dims = [0i16; 17]; + dims[axis] = amplitude; + Base17 { dims } +} + +#[test] +fn directional_signal_has_higher_salience_than_same_amplitude_detail() { + let origin = axis(0, 0); + let directional = axis(0, 8); + let detail = axis(16, 8); + assert_eq!(origin.l1(&directional), origin.l1(&detail)); + assert_eq!(origin.l1_weighted(&directional), 20 * 8); + assert_eq!(origin.l1_weighted(&detail), 8); +} + +#[test] +fn inference_reads_do_not_retrain_the_baked_reference() { + let rows = [axis(0, 0), axis(0, 12), axis(16, 2), axis(0, -12)]; + let palette = WeightPalette::build(&rows, 3); + let original_entries = palette.entries.clone(); + let original_radii = palette.radii.clone(); + let original_counts = palette.counts.clone(); + for _ in 0..64 { + for row in &rows { + let assignment = palette.assign(row); + assert!((assignment.index as usize) < palette.len()); + } + } + assert_eq!(palette.entries, original_entries); + assert_eq!(palette.radii, original_radii); + assert_eq!(palette.counts, original_counts); +} \ No newline at end of file From eac927e8897fd476f1bf187ce58b17ead6ab5191 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 22 Oct 2026 21:41:55 +0000 Subject: [PATCH 2/2] fix(ci): rustfmt the probe test Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg --- crates/bgz-tensor/tests/palette_immutable_salience_probe.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/bgz-tensor/tests/palette_immutable_salience_probe.rs b/crates/bgz-tensor/tests/palette_immutable_salience_probe.rs index 157a09b39..e345a957c 100644 --- a/crates/bgz-tensor/tests/palette_immutable_salience_probe.rs +++ b/crates/bgz-tensor/tests/palette_immutable_salience_probe.rs @@ -34,4 +34,4 @@ fn inference_reads_do_not_retrain_the_baked_reference() { assert_eq!(palette.entries, original_entries); assert_eq!(palette.radii, original_radii); assert_eq!(palette.counts, original_counts); -} \ No newline at end of file +}