orchestrator.notifier#

Attributes#

Classes#

ProtocolManagerNotifier

Notifies protocol manager about Dagster job outcomes.

DeviceManagerNotifier

Notifies device manager.

Module Contents#

orchestrator.notifier._log#
class orchestrator.notifier.ProtocolManagerNotifier#

Bases: dagster.ConfigurableResource

Notifies protocol manager about Dagster job outcomes.

base_url: str#
timeout: float = 5.0#
create_blank_result(task_id: str, access_token: str) str#

Create an empty result placeholder and return its ID.

set_result(result_id: str, result_type: str, directory: str, files: list[str], access_token: str) None#

Populate a blank result entry with actual data.

update_task_status(task_id: str, status: str, access_token: str) None#

Update task status in the protocol manager.

class orchestrator.notifier.DeviceManagerNotifier#

Bases: dagster.ConfigurableResource

Notifies device manager.

base_url: str#
timeout: float = 5.0#
send_device_parameter_update(device_id: str, access_token: str, parameter: dict) None#

Notify backend about device parameter update and send parameters.

push_task_event(task_id: str, source: str, task_status: str, progress: int = 0, message: str = '') None#

Push a real-time status event to all SSE subscribers watching a task.

source: identifies the emitting component, e.g. ‘device’ or ‘pipeline’. task_status: one of the known display statuses (INPROGRESS, FINISHED, FAILED, …). Failures are non-fatal — if no browser is subscribed the call still succeeds.