roboto.domain.actions.invocation_record
Module Contents
ActionProvenance
DataSelector
Bases: pydantic.BaseModel
Selector for inputs (e.g. files) to an action invocation.
Parameters
data AnyAttributes
DataSelector.dataset_id
Dataset ID, needed for backward compatibility purposes. Prefer RoboQL: dataset_id = <the ID in double quotes>
DataSelector.ensure_not_empty()
Return type
ExecutableProvenance
FileSelector
Bases: DataSelector
Selector for file inputs to an action invocation.
This selector type exists for backward compatibility purposes. We encourage you to use the query field to scope your input query to any dataset and/or file paths.
Parameters
data AnyFileSelector.ensure_not_empty()
Return type
Attributes
FileSelector.paths
File paths or patterns. Prefer RoboQL: path LIKE <path pattern in double quotes>
InvocationDataSource
Bases: pydantic.BaseModel
Abstracted data source that can be provided to an invocation.
Represents a source of input data for action invocations. The data source type determines how the ID should be interpreted (e.g., as a dataset ID).
Parameters
data AnyAttributes
InvocationDataSource.data_source_id
The ID of the data source. For Dataset type, this is a dataset ID.
InvocationDataSource.data_source_type
The type of data source (currently only Dataset).
InvocationDataSource.is_unspecified()
Check if this data source is unspecified.
Returns
True if this is an unspecified data source, False otherwise.
InvocationDataSource.unspecified()
Returns a special value indicating that no invocation source is specified.
Returns
An InvocationDataSource instance representing an unspecified data source.
InvocationDataSourceType
Bases: enum.Enum
Source of data for an action’s input binding.
Defines the type of data source that provides input data to an action invocation. Currently supports datasets, with potential for future expansion to other data source types.
Attributes
InvocationDataSourceType.Dataset
InvocationInput
Bases: pydantic.BaseModel
Input specification for an action invocation.
An invocation may require no inputs at all, or some combination of Roboto files, topics, events, etc. Those are specified using selectors, which tell the invocation how to locate inputs. Selector choices include RoboQL queries (for maximum flexibility), as well as unique IDs or friendly names.
Note: support for certain input types is a work in progress, and will be offered in future Roboto platform releases.
At least one data selector must be provided in order to construct a valid InvocationInput instance.
Parameters
data AnyInvocationInput.ensure_not_empty()
Return type
Properties
InvocationInput.file_query()
Specify file inputs using a RoboQL query.
Parameters
roboql_query strReturn type
Attributes
InvocationInput.from_dataset_file_paths()
Specify file input by dataset ID and dataset-relative file paths or globs.
Parameters
dataset_id strfile_paths list[str]Return type
InvocationInput.from_session_id()
Specify session input by session ID.
Parameters
session_id strReturn type
Properties
InvocationInput.safe_files
File selectors as a list. Empty if no such selectors are specified.
InvocationInput.safe_sessions
Session selectors as a list. Empty if no such selectors are specified.
InvocationInput.safe_topics
Topic selectors as a list. Empty if no such selectors are specified.
InvocationInput.session_query()
Specify session inputs using a RoboQL query.
Parameters
roboql_query strReturn type
Attributes
InvocationInput.sessions
Session selectors.
InvocationInput.topic_query()
Specify topic inputs using a RoboQL query.
Parameters
roboql_query strReturn type
Attributes
InvocationProvenance
Bases: pydantic.BaseModel
Provenance information for an invocation
Parameters
data AnyAttributes
InvocationProvenance.executable
The underlying executable (e.g., Docker image) that was run.
InvocationRecord
Bases: pydantic.BaseModel
A wire-transmissible representation of an invocation.
Parameters
data AnyAttributes
InvocationRecord.compute_requirements
InvocationRecord.container_parameters
InvocationRecord.created
InvocationRecord.data_source
InvocationRecord.duration
InvocationRecord.idempotency_id
InvocationRecord.input_data
InvocationRecord.invocation_id
InvocationRecord.last_heartbeat
InvocationRecord.last_status
InvocationRecord.org_id
InvocationRecord.parameter_values
InvocationRecord.provenance
InvocationRecord.rich_input_data
InvocationRecord.status
InvocationRecord.timeout
InvocationRecord.upload_destination
InvocationSource
InvocationStatus
Bases: int, enum.Enum
Invocation status enum
Attributes
InvocationStatus.Cancelled
InvocationStatus.Completed
InvocationStatus.Deadly
InvocationStatus.Downloading
InvocationStatus.Failed
InvocationStatus.Processing
InvocationStatus.Queued
InvocationStatus.Scheduled
InvocationStatus.Uploading
InvocationStatus.can_transition_to()
Parameters
other InvocationStatusReturn type
InvocationStatus.from_value()
Parameters
v Union[int, str]Return type
InvocationStatus.is_running()
Return type
InvocationStatus.is_terminal()
Return type
InvocationStatus.next()
Return type
InvocationStatusRecord
Bases: pydantic.BaseModel
A wire-transmissible representation of an invocation status.
Parameters
data AnyAttributes
InvocationStatusRecord.detail
InvocationStatusRecord.status
InvocationStatusRecord.timestamp
InvocationStatusRecord.to_presentable_dict()
Return type
InvocationUploadDestination
Bases: pydantic.BaseModel
Default destination to which invocation outputs - if any - should be uploaded.
Specifies where files generated during action execution should be stored. Actions can write files to their output directory, and this destination determines where those files are uploaded after execution completes.
Parameters
data AnyInvocationUploadDestination.dataset()
Create a dataset upload destination with the given ID.
Parameters
dataset_id strThe ID of the dataset where outputs should be uploaded.
Returns
An InvocationUploadDestination configured for the specified dataset.
Attributes
InvocationUploadDestination.destination_id
Optional identifier for the upload destination. In the case of a dataset, it would be the dataset ID.
InvocationUploadDestination.destination_type
Type of upload destination. By default, outputs are uploaded to a dataset.
Properties
InvocationUploadDestination.is_dataset
True if this is a dataset destination with a dataset ID, False otherwise.
Returns
True if this destination is configured for a dataset with a valid ID.
InvocationUploadDestination.is_unknown
True if the upload destination is not of a supported type, False otherwise.
InvocationUploadDestination.pre_validate_destination_type()
Parameters
value AnyReturn type
LogRecord
Bases: pydantic.BaseModel
A wire-transmissible representation of a log record.
Parameters
data AnyAttributes
LogRecord.log
LogRecord.partial_id
LogRecord.process
LogRecord.timestamp
LogsLocation
SourceProvenance
Bases: pydantic.BaseModel
Provenance information for an invocation source
Parameters
data AnyAttributes
SourceProvenance.source_id
SourceProvenance.source_type
UploadDestinationType
Bases: enum.Enum
Type of upload destination for invocation outputs.
Defines where files generated by action invocations should be uploaded. Currently supports datasets as the primary destination type.
Attributes
UploadDestinationType.Dataset
Outputs will be uploaded to a dataset. This is the default.
UploadDestinationType.Unknown
The output destination is unknown.
This destination type exists for compatibility between different versions of the Roboto SDK and the Roboto service backend. It should not be used directly in action invocation requests. If you encounter it in an SDK response, consider upgrading to the latest available SDK version.