Config Validation¶
Uni-Xervo supports two validation layers:
- Runtime validation in Rust during runtime build/registration.
- JSON Schema validation in CI before deployment.
Runtime validation¶
The runtime rejects invalid catalogs and registrations for:
- alias format violations,
- duplicate aliases,
- unknown providers,
- invalid provider options (unknown keys, wrong types),
- non-positive
timeoutandload_timeout.
Schema files¶
schemas/model-catalog.schema.jsonschemas/provider-options/*.schema.json
Provider-specific option schemas are wired via if/then in the model catalog schema by provider_id.
CI example with Ajv¶
Typical validation errors¶
additionalPropertieserror: unknown option key for provider.minimumerror: zero or negative numeric values for timeout/backoff fields.enumerror: unsupportedtaskorwarmupvalue.patternerror: alias missing/.
Best practices¶
- Version-control catalogs and treat them as deploy artifacts.
- Validate in CI and again at startup.
- Keep provider-specific options minimal and explicit.