rightkit-qts 0.2.6

Qwen3 TTS inference (GGUF + GGML), vendored from yet-another-ai/qts v0.2.0 for RightKit
use std::path::PathBuf;

#[derive(Debug, thiserror::Error)]
pub enum Qwen3TtsError {
    #[error("IO error: {0}")]
    Io(#[from] std::io::Error),

    #[error("invalid string: {0}")]
    Nul(#[from] std::ffi::NulError),

    #[error("invalid UTF-8 in path")]
    InvalidPath,

    #[error("missing or unreadable model file: {0}")]
    ModelFile(PathBuf),

    #[error("file is not a valid GGUF container: {0}")]
    InvalidGguf(PathBuf),

    #[error("file is not a valid ONNX model: {0}")]
    InvalidOnnx(PathBuf),

    #[error("tokenizer error: {0}")]
    Tokenizer(String),

    #[error("missing tokenizer token: {0}")]
    MissingTokenizerToken(String),

    #[error("invalid input: {0}")]
    InvalidInput(String),

    #[error("missing GGUF tensor: {0}")]
    MissingTensor(String),

    #[error("invalid GGUF tensor: {0}")]
    InvalidTensor(String),

    #[error("unsupported GGUF tensor type for {0}")]
    UnsupportedTensorType(String),

    #[error("stage not implemented yet: {0}")]
    NotImplemented(&'static str),

    #[error("onnx runtime error: {0}")]
    Ort(String),
}