hf2q 0.1.1

Pure Rust CLI for converting HuggingFace models to hardware-optimized formats and serving them over an OpenAI-compatible API on Apple Silicon
use super::model::Deepseek4Model;
use super::residency_tests::{open_fixture, tiny_config};

#[test]
fn layer0_ffn_rejects_nonproduction_moe_contract() {
    let cfg = tiny_config();
    let (_directory, gguf) = open_fixture(&cfg, false, false);
    let _gpu = crate::inference::hf2q_gpu_test_lock();
    let mut model = Deepseek4Model::load_from_gguf(&gguf).unwrap();
    let state = model.embed_hyper_state(&[2]).unwrap();
    let error = model
        .forward_layer0_ffn_one(&state, 2)
        .expect_err("tiny MoE dimensions must fail closed");
    assert!(error.to_string().contains("4096/256/6/2048/enabled"));
}

#[test]
fn ffn_rejects_layer_outside_verifier() {
    let cfg = tiny_config();
    let (_directory, gguf) = open_fixture(&cfg, false, false);
    let _gpu = crate::inference::hf2q_gpu_test_lock();
    let mut model = Deepseek4Model::load_from_gguf(&gguf).unwrap();
    let state = model.embed_hyper_state(&[2]).unwrap();
    let error = model
        .forward_ffn_one(&state, 2, cfg.num_hidden_layers as usize, None, None)
        .expect_err("out-of-range layer must fail closed");
    assert!(error.to_string().contains("outside"));
}