Files
content-ingestion-agent/app/validation.py
Jonathan Boniface d8a4b6b3c1
Some checks failed
quality-gates / verify (push) Failing after 7s
fix: files manually
2026-09-01 17:21:58 +01:00

23 lines
652 B
Python

from dataclasses import dataclass
from kab_ingestion.models import SourceDocument
@dataclass(frozen=True)
class ValidationReport:
valid: bool
errors: tuple[str, ...]
def validate_document(document: SourceDocument) -> ValidationReport:
errors: list[str] = []
if not document.identifier.strip():
errors.append("identifier is required")
if not document.title.strip():
errors.append("title is required")
if not document.body.strip():
errors.append("body is required")
if not document.source.strip():
errors.append("source is required")
return ValidationReport(not errors, tuple(errors))