vyre-conform 0.1.0

Conformance suite for vyre backends — proves byte-identical output to CPU reference
Documentation
#[test]
fn {name}() {{
    let op_id_str = {op_id_str};
    let input_words: &[u32] = &[{input_values}];
    let specs = vyre_conform::op_registry::all_specs();
    let Some(op) = specs.iter().find(|spec| spec.id == {op_id}) else {{
        panic!("Fix: generated test references an op missing from op_registry::all_specs: {{}}", {op_id});
    }};
    let program = {program};
    let inputs = {value_inputs};
    let actual_values = vyre_conform::vyre_reference::run(&program, &inputs)
        .unwrap_or_else(|error| panic!("Fix: reference interpreter rejected generated {op_id_display}/{archetype_id_display} archetype test: {{}}", error));
    let observed_words: Vec<u32> = actual_values.iter().flat_map(|value| value.to_bytes().chunks(4).map(|chunk| {{
        let mut padded = [0u8; 4];
        padded[..chunk.len()].copy_from_slice(chunk);
        u32::from_le_bytes(padded)
    }})).collect();
    assert!(!actual_values.is_empty(), "Fix: vyre_reference::run produced no output for {op_id_display}/{archetype_id_display}/{property_display} seed {seed} via {oracle_display}");
    let mutation_id = {mutation_id};
    assert!(!mutation_id.is_empty(), "Fix: mutation-kill route must name the mutation it targets for {op_id_display}/{archetype_id_display}");
    let _ = (op, input_words, observed_words);
}}