exlab_wizard.api.routers.operations#
/operations router. Backend Spec §4.6.1, Frontend §9.5.
Lists all in-flight controller operations. The Frontend’s Operations
panel (Frontend §9.5) renders one entry per session: id, state,
started_at, equipment_id, project_short_id, run_label,
optional plugin_name (when in INPUT_REQUIRED), and optional
suspended_reason (the reason string from the
PluginInputRequired payload).
The endpoint reads the in-memory SessionStore directly via
the controller; non-terminal sessions are returned in chronological
order so the panel is stable across refreshes.
Functions
Construct the |
Classes
|
One row in the Operations panel. |
|
|
- class exlab_wizard.api.routers.operations.OperationEntry(**data)[source]#
Bases:
BaseModelOne row in the Operations panel. Backend Spec §4.6.1, Frontend §9.5.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class exlab_wizard.api.routers.operations.OperationsResponse(**data)[source]#
Bases:
BaseModelGET /operationsresponse.- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- operations: list[OperationEntry]#