vv_agent/skills/validator/
diagnostics.rs1#[derive(Debug, Clone, Default, PartialEq, Eq)]
2pub struct ValidationDiagnostics {
3 pub errors: Vec<String>,
4 pub warnings: Vec<String>,
5}
6
7#[derive(Debug, Clone, Copy, PartialEq, Eq)]
8pub(super) enum IssueSeverity {
9 Error,
10 Warning,
11}
12
13pub(super) fn append_issue(
14 diagnostics: &mut ValidationDiagnostics,
15 message: impl Into<String>,
16 severity: IssueSeverity,
17) {
18 match severity {
19 IssueSeverity::Error => diagnostics.errors.push(message.into()),
20 IssueSeverity::Warning => diagnostics.warnings.push(message.into()),
21 }
22}
23
24pub(super) fn merge_diagnostics(base: &mut ValidationDiagnostics, incoming: ValidationDiagnostics) {
25 base.errors.extend(incoming.errors);
26 base.warnings.extend(incoming.warnings);
27}