pub struct FileMatch {
pub video_file_id: String,
pub subtitle_file_id: String,
pub confidence: f32,
pub match_factors: Vec<String>,
pub language: Option<String>,
pub target_filename_suffix: Option<String>,
}Expand description
Individual file match information using unique file IDs.
Represents a single video-subtitle file pairing suggested by the AI identified by unique IDs with associated confidence metrics and reasoning factors.
Fields§
§video_file_id: StringUnique ID of the matched video file
subtitle_file_id: StringUnique ID of the matched subtitle file
confidence: f32Confidence score for this specific match (0.0 to 1.0)
match_factors: Vec<String>List of factors that contributed to this match
language: Option<String>Optional language code inferred by the AI from filename + content.
Short language code such as "tc", "sc", "en", "ja", or
"und" when the model could not decide. Marked
#[serde(default)] so legacy cached responses without this field
continue to deserialize. Consumers SHOULD pass the value through
crate::core::language::LanguageDetector::normalize before use.
target_filename_suffix: Option<String>Optional disambiguating filename suffix supplied by the AI.
When the model decides two subtitles for the same video would
otherwise produce identical target filenames, it MAY hand back a
short tag (typically a language code such as "tc" or a numeric
fallback such as "2") to splice between the video base name and
the subtitle extension. Marked #[serde(default)] for backward
compatibility with legacy cached responses. Callers MUST sanitize
the value before using it as a path component.