hypersteeldb 0.3.2

A database that compiles questions instead of guessing answers: typed vocabulary discovered from your documents, queries type-checked before they run, roaring-bitmap set algebra over reified hyperedges, and Dempster-Shafer evidence with an explicit conflict guard.
Documentation
#[cfg(feature = "onnx")]
#[test]
fn spo_holdout() {
    use steeldb::text::SpoTagger;
    let ml = std::path::PathBuf::from("models/step0_bundle_ml");
    if !ml.join("spo.onnx").exists() { eprintln!("NOMODELS"); return; }
    let mut t = SpoTagger::load(&ml).unwrap();
    // held-out sentences (paper-style + fresh domains), none from the 230-record training set
    let holdout = [
        "Toyota supplies a battery cell under SAE J1100 specs in Q3 2026.",
        "The RQ-4 does not operate below 40,000 feet during monsoon season.",
        "Pfizer's mRNA vaccine candidate failed the phase III trial in Brazil last March.",
        "Hyundai and Kia jointly recalled 82,000 electric SUVs over a coolant fault.",
    ];
    for s in holdout {
        let spans = t.tag(s).unwrap();
        let out: Vec<String> = spans.iter().map(|x| format!("{}:{:?}", x.kind, x.text.trim())).collect();
        eprintln!("HOLDOUT | {s}\n   spans: {}", out.join("  "));
    }
}