On this page
Strictspec-generated validator for the run_config document schema (workflow/agents/knowledge paths, db_url, provider configs, budget, autonomy policy) -- machine-generated, never hand-edited.
#services.src.orxtra.services._gen_run_config
#services.src.orxtra.services._gen_run_config
#validate_bytes
def validate_bytes(input: bytes, syntax: str) -> tuple[RunConfig | None, tuple[Diagnostic, ...]]RAW-BYTES entry point: lossless parse of input in the given syntax ("json" | "toml" | "jsonl"), then validate. Returns the typed root value (None when any diagnostic fired) and the ordered diagnostics.
#validate_bytes_with_evidence
def validate_bytes_with_evidence(input: bytes, syntax: str, evidence: dict | None) -> tuple[RunConfig | None, tuple[Diagnostic, ...]]validate_bytes plus cross-document resolver evidence for the phase-2 constraint vocabulary.
#validate_value
def validate_value(v: Value) -> tuple[RunConfig | None, tuple[Diagnostic, ...]]TAGGED-VALUE entry point: validate an already-parsed tagged document value (from strictspec.load_value or a typed constructor). Raw untagged dicts are never accepted.
#RunConfig
Frozen typed binding of the "RunConfig" record. Immutable; use with_* for copy-on-write.
#with_workflow_path
def with_workflow_path(self, v: str) -> RunConfig#with_agents_dir
def with_agents_dir(self, v: str) -> RunConfig#with_knowledge_dir
def with_knowledge_dir(self, v: str) -> RunConfig#with_categories_path
def with_categories_path(self, v: str) -> RunConfig#with_read_root
def with_read_root(self, v: str) -> RunConfig#with_db_url
def with_db_url(self, v: str) -> RunConfig#with_provider_configs
def with_provider_configs(self, v: Value) -> RunConfig#with_budget
def with_budget(self, v: str) -> RunConfig#with_autonomy_level
def with_autonomy_level(self, v: str) -> RunConfig#with_budget_exhaustion_policy
def with_budget_exhaustion_policy(self, v: str) -> RunConfig#with_secrets_env
def with_secrets_env(self, v: Value) -> RunConfig#with_tools_dir
def with_tools_dir(self, v: str) -> RunConfig#with_pricing
def with_pricing(self, v: Value) -> RunConfig#TokenRates
Frozen typed binding of the "TokenRates" record. Immutable; use with_* for copy-on-write.
#with_input_per_million
def with_input_per_million(self, v: str) -> TokenRates#with_output_per_million
def with_output_per_million(self, v: str) -> TokenRates#with_cache_read_per_million
def with_cache_read_per_million(self, v: str) -> TokenRates#with_cache_write_per_million
def with_cache_write_per_million(self, v: str) -> TokenRates#with_reasoning_per_million
def with_reasoning_per_million(self, v: str) -> TokenRates