fix: resolve test failures and update flake.nix for factur-x source distribution
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -4,6 +4,7 @@ import re
|
||||
import time
|
||||
from typing import Any
|
||||
|
||||
from pydantic import ValidationError
|
||||
from src.models import (
|
||||
ErrorDetail,
|
||||
ValidateRequest,
|
||||
@@ -275,7 +276,34 @@ def validate_invoice(request: ValidateRequest) -> ValidationResult:
|
||||
validation_time_ms=0,
|
||||
)
|
||||
|
||||
xml_data = XmlData(**request.xml_data)
|
||||
try:
|
||||
xml_data = XmlData(**request.xml_data)
|
||||
except ValidationError as e:
|
||||
# Convert Pydantic validation errors to ValidationResult
|
||||
validation_errors = []
|
||||
for error in e.errors():
|
||||
validation_errors.append(
|
||||
ErrorDetail(
|
||||
check="schema_validation",
|
||||
field=error["loc"][0] if error["loc"] else None,
|
||||
error_code=error["type"],
|
||||
message=error["msg"],
|
||||
severity="critical",
|
||||
)
|
||||
)
|
||||
return ValidationResult(
|
||||
is_valid=False,
|
||||
errors=validation_errors,
|
||||
warnings=[],
|
||||
summary={
|
||||
"total_checks": 1,
|
||||
"checks_passed": 0,
|
||||
"checks_failed": 1,
|
||||
"critical_errors": len(validation_errors),
|
||||
"warnings": 0,
|
||||
},
|
||||
validation_time_ms=int((time.time() - start_time) * 1000),
|
||||
)
|
||||
|
||||
# Run requested checks
|
||||
for check_name in request.checks:
|
||||
|
||||
Reference in New Issue
Block a user