On this page
Strictspec-generated validator (do not edit; regenerate via `strictspec gen`) that parses and validates workflow TOML/JSON documents into typed Workflow/Task/ServiceConfig bindings.
#scheduler.src.orxtra.scheduler._gen_workflow
#scheduler.src.orxtra.scheduler._gen_workflow
#validate_bytes
def validate_bytes(input: bytes, syntax: str) -> tuple[Workflow | 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[Workflow | None, tuple[Diagnostic, ...]]validate_bytes plus cross-document resolver evidence for the phase-2 constraint vocabulary.
#validate_value
def validate_value(v: Value) -> tuple[Workflow | 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.
#Workflow
Frozen typed binding of the "Workflow" record. Immutable; use with_* for copy-on-write.
#with_workflow
def with_workflow(self, v: Value) -> Workflow#with_tasks
def with_tasks(self, v: list[Task]) -> Workflow#with_dependencies
def with_dependencies(self, v: Value) -> Workflow#with_services
def with_services(self, v: list[ServiceConfig]) -> Workflow#Execution
Frozen typed binding of the "Execution" record. Immutable; use with_* for copy-on-write.
#with_scripts
def with_scripts(self, v: list[str]) -> Execution#with_agents
def with_agents(self, v: list[Value]) -> Execution#ServiceConfig
Frozen typed binding of the "ServiceConfig" record. Immutable; use with_* for copy-on-write.
#with_name
def with_name(self, v: str) -> ServiceConfig#with_start_command
def with_start_command(self, v: str) -> ServiceConfig#with_health_check_command
def with_health_check_command(self, v: str) -> ServiceConfig#with_stop_command
def with_stop_command(self, v: str) -> ServiceConfig#with_port
def with_port(self, v: int) -> ServiceConfig#with_ready_timeout
def with_ready_timeout(self, v: int) -> ServiceConfig#Task
Frozen typed binding of the "Task" record. Immutable; use with_* for copy-on-write.
#with_name
def with_name(self, v: str) -> Task#with_agent
def with_agent(self, v: str) -> Task#with_task_prompt
def with_task_prompt(self, v: str) -> Task#with_callable
def with_callable(self, v: str) -> Task#with_wait_for
def with_wait_for(self, v: str) -> Task#with_decision_point
def with_decision_point(self, v: bool) -> Task#with_subtasks
def with_subtasks(self, v: list[Task]) -> Task#with_timeout
def with_timeout(self, v: int) -> Task#with_context_refinement
def with_context_refinement(self, v: bool) -> Task#with_retry
def with_retry(self, v: int) -> Task#with_retry_resume
def with_retry_resume(self, v: bool) -> Task#with_retry_inject_failure
def with_retry_inject_failure(self, v: bool) -> Task#with_for_each
def with_for_each(self, v: str) -> Task#with_for_each_abort_on_failure
def with_for_each_abort_on_failure(self, v: bool) -> Task#with_max_concurrency
def with_max_concurrency(self, v: int) -> Task#with_depends_on
def with_depends_on(self, v: list[str]) -> Task#with_variables
def with_variables(self, v: list[str]) -> Task#with_category
def with_category(self, v: str) -> Task#with_output_schema
def with_output_schema(self, v: str) -> Task#with_budget
def with_budget(self, v: float) -> Task#with_write_paths
def with_write_paths(self, v: list[str]) -> Task#with_on_success
def with_on_success(self, v: str) -> Task#with_pre_retry
def with_pre_retry(self, v: str) -> Task#with_prechecks
def with_prechecks(self, v: Execution | None) -> Task#with_postchecks
def with_postchecks(self, v: Execution | None) -> Task