boulder-opal-scale-up-sdk 1.0.1__py3-none-any.whl → 1.0.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: boulder-opal-scale-up-sdk
3
- Version: 1.0.1
3
+ Version: 1.0.2
4
4
  Summary: Q-CTRL Boulder Opal Scale Up Python SDK
5
5
  License: https://q-ctrl.com/terms
6
6
  Keywords: black opal,boulder opal,fire opal,nisq,open controls,q control,q ctrl,q-control,q-ctrl,qcontrol,qctrl,quantum,quantum algorithms,quantum circuits,quantum coding,quantum coding software,quantum computing,quantum control,quantum control software,quantum control theory,quantum engineering,quantum error correction,quantum firmware,quantum fundamentals,quantum sensing,qubit,qudit
@@ -2,31 +2,31 @@ boulderopalscaleupsdk/__init__.py,sha256=nD3YDqPiE52mmuUrIlDUrYSyljpMsDJvc5HsubB
2
2
  boulderopalscaleupsdk/agent/__init__.py,sha256=aFkAtHJDOdXA126JklxYz0ix1k4lCcLLS9DQp8zUKMk,1092
3
3
  boulderopalscaleupsdk/agent/worker.py,sha256=XlbjvAjQgKMpRbbI04jzVY9NzqW5nO_D5wFq7fJC-qM,7937
4
4
  boulderopalscaleupsdk/common/__init__.py,sha256=vLaJ1FP36xV5eX6VD7nShqxVBm3UzsBMIK1pmSiTIag,550
5
- boulderopalscaleupsdk/common/dtypes.py,sha256=E8N1BhB6917WCvPGIPc_keDmgqUlbtPdtkgYPIOKBZU,9379
5
+ boulderopalscaleupsdk/common/dtypes.py,sha256=1Lf-kulA0vxFMCW1E5nfHifoCTOtq76fDwQTSco_qCQ,9601
6
6
  boulderopalscaleupsdk/common/typeclasses.py,sha256=FZHyTcuCQH5niqFPZmIyoO2zN6mA661h8kyvDcYFryg,3033
7
7
  boulderopalscaleupsdk/device/__init__.py,sha256=Bbo9KYQqNZloj2H9sl2PdfFvYMDS78q1Mu0Q0q5Ze5o,727
8
8
  boulderopalscaleupsdk/device/common.py,sha256=ZLXpmORKQYntX7DeKZ8pd49Ju1jzidR2q2EeN3TNwTI,1909
9
- boulderopalscaleupsdk/device/config_loader.py,sha256=4mp6lfOIhWIZqq24xGNKLRLYmTN4TGnND4CIfHv9he0,3271
9
+ boulderopalscaleupsdk/device/config_loader.py,sha256=RxCD77Z52lVaMYcimdyxoz9V3hb1Q5ta4xk1eU7wwxM,3367
10
10
  boulderopalscaleupsdk/device/controller/__init__.py,sha256=ePkrCbX1ORm05fS0BEQ8cx7DPxGGN6IkUoNH6eQL1DM,1136
11
11
  boulderopalscaleupsdk/device/controller/base.py,sha256=xuT4VzRulknxppiQpzYYn_TwuRNfV9wHMqjN2okA8Lw,793
12
12
  boulderopalscaleupsdk/device/controller/qblox.py,sha256=c-wG9jAZHy6hCTO7ynKvwJbW1MPNJJh9ryfedthuuz8,22543
13
13
  boulderopalscaleupsdk/device/controller/quantum_machines.py,sha256=m0_zO7Cn-Ea1-ewG7qgjEnt4GXtQMvBv_oz-dnOmI9k,5320
14
14
  boulderopalscaleupsdk/device/controller/resolver.py,sha256=hW5U58dmJf_IGmD4EK_bbn0XU-N9autFBFHmqbRnY2Y,3812
15
- boulderopalscaleupsdk/device/defcal.py,sha256=0uB-haRyw8OPUDJ5b4x3tKivDzaz-exh4Hyj55ToWRc,1871
15
+ boulderopalscaleupsdk/device/defcal.py,sha256=CL9T-oy94st20NyQZWW8mHJU4Nlx2DKZ-o5x1mf6L8c,1912
16
16
  boulderopalscaleupsdk/device/device.py,sha256=e3jW6dTFmGAxniPLTSTRVQs5HUkSUvrqolOlv2xJKUw,1243
17
17
  boulderopalscaleupsdk/device/processor/__init__.py,sha256=O9d4tMcii3OOGez845qXp06D_AxYMoHr-7ICEStlNro,1038
18
18
  boulderopalscaleupsdk/device/processor/common.py,sha256=kRR5nufc8PoTDLxXbSeuprlCgBDrPHSdPom_go9fDOs,9136
19
- boulderopalscaleupsdk/device/processor/superconducting_processor.py,sha256=o67SRxcOF5saqHa1NQ6RXi5oAxazFjLMYspa9dKuaLU,12278
20
- boulderopalscaleupsdk/experiments/__init__.py,sha256=pcFXtz8JAE-pUt8NpOx-QfqjBuifFzXgaPun9947bPk,1675
19
+ boulderopalscaleupsdk/device/processor/superconducting_processor.py,sha256=c6Au_j5db611xOJF0zy6bpOanhm-7QYAMWerfKMwjzQ,12269
20
+ boulderopalscaleupsdk/experiments/__init__.py,sha256=kskcl-oMR8tRMo8_liSqmty82mtbl3WzB-IY5g88ng4,1628
21
+ boulderopalscaleupsdk/experiments/chi01_scan.py,sha256=qPFa6R1IJmctRId8K-DPejX5P0LXqXUmC-NO6-xmCQU,1862
21
22
  boulderopalscaleupsdk/experiments/common.py,sha256=sT06O3I71iEY5AmXGRZfx-V6RQlBEq5B7hCRxnG64tM,2482
22
23
  boulderopalscaleupsdk/experiments/power_rabi.py,sha256=_keqv3tW10d-1vnUPTsky9FvLnjFcKF3pcnYfOyNvaI,2059
23
- boulderopalscaleupsdk/experiments/ramsey.py,sha256=kJ0EfrgtGyz4bEPSBKWP5Wclq-_AIEdk3lbuZuX6Q9E,2034
24
+ boulderopalscaleupsdk/experiments/ramsey.py,sha256=R3pptmkqwHYhhlAyRbYBaSscuiB3RffodC23kKuqwFY,2050
24
25
  boulderopalscaleupsdk/experiments/readout_classifier_calibration.py,sha256=mUgKgKiXTv4owykR6nYj-DYZvplR5Xr9Akj36b7WGA4,732
25
26
  boulderopalscaleupsdk/experiments/resonator_spectroscopy.py,sha256=EmmLbDq0d-67F1D6biLlUd1-UYP4uiICSkrIeez2T1I,2191
26
27
  boulderopalscaleupsdk/experiments/resonator_spectroscopy_by_bias.py,sha256=ypb3ZX-OCzQGy3vSlpRct5MGZmvMMZk7pi8dD9EU5VU,2765
27
28
  boulderopalscaleupsdk/experiments/resonator_spectroscopy_by_power.py,sha256=N1ibW6ZWSrsRs6-es0bBGkRSc-1WeqU4pwpKRSpZBhE,2225
28
- boulderopalscaleupsdk/experiments/transmon_anharmonicity.py,sha256=7shRQbkdP1OgKx_OpaggqdlaKt6zl1qIZz6c_JHZdXs,2694
29
- boulderopalscaleupsdk/experiments/transmon_resonator_chi_scan.py,sha256=VV_w8HWJ0weTeGiZsbyLio0oDvacL6a7IuhpkkVeoq0,1894
29
+ boulderopalscaleupsdk/experiments/transmon_anharmonicity.py,sha256=5nb_wTHJ_rhNGAR7THAL2YNvBZKPFJmMwjamPKgP8ko,2706
30
30
  boulderopalscaleupsdk/experiments/transmon_spectroscopy.py,sha256=Ib1OdJwCE7m0Q3N_l0Mx8uKBO6GjjM56BDroLDVCBRI,2324
31
31
  boulderopalscaleupsdk/grpc_interceptors/__init__.py,sha256=PkdOlllLbRWycofvGCCxDY60Ydp_U0QM5l4u3Fsnno4,616
32
32
  boulderopalscaleupsdk/grpc_interceptors/auth.py,sha256=PSe_b9ckqhcb3xf1Y4jpn1TjfEWfokkarqfUHIz6HIs,4165
@@ -35,8 +35,8 @@ boulderopalscaleupsdk/plotting/dtypes.py,sha256=PlVzGpoZfrqVULPJfpRQq3JmgjUgVH7Z
35
35
  boulderopalscaleupsdk/protobuf/v1/agent_pb2.py,sha256=yExXTLC3g_TnHJWkfYsF_kctsftxONyZOBtOFDTTuec,5364
36
36
  boulderopalscaleupsdk/protobuf/v1/agent_pb2.pyi,sha256=YJdOKaOtI2PGk7ct_LuC8_6NeKsLCXMriVEt4-0TWYM,2536
37
37
  boulderopalscaleupsdk/protobuf/v1/agent_pb2_grpc.py,sha256=UH8u9ZmvMjteAYKtTmA-IWSGZmhCQLHdg0_OuKCaYew,6875
38
- boulderopalscaleupsdk/protobuf/v1/device_pb2.py,sha256=8XcuwpHHvA3oWm6R6rRviVXPItn9Bafd5iHhVVwaVHU,11228
39
- boulderopalscaleupsdk/protobuf/v1/device_pb2.pyi,sha256=DpFtmB2EBIvNJCKhDIVrrDONDMt7Y6ErdSsug9Ej0os,6132
38
+ boulderopalscaleupsdk/protobuf/v1/device_pb2.py,sha256=lu-FLsrwT_xnG0411zN2lE1yvtpIiMF22M8hvCpP4Zk,11429
39
+ boulderopalscaleupsdk/protobuf/v1/device_pb2.pyi,sha256=NCrnlIXEsTKZaXjgEdy1cXxgOu4Xli0qbUm4_mOXqf8,6527
40
40
  boulderopalscaleupsdk/protobuf/v1/device_pb2_grpc.py,sha256=0CtrO8gKkcfHn7flQLFAySyOVpdDgzct_EaMMF73rUY,19445
41
41
  boulderopalscaleupsdk/protobuf/v1/task_pb2.py,sha256=7NWFFBEPij8B9dvexRia3B_T9-oOCDwayASCglvBtO4,7086
42
42
  boulderopalscaleupsdk/protobuf/v1/task_pb2.pyi,sha256=QWciGKFD1AcaAhqgym0ZwNtIlNT85HhOTBdivEC6QJE,5952
@@ -54,7 +54,7 @@ boulderopalscaleupsdk/third_party/quantum_machines/config.py,sha256=tQsWx_nSXSFT
54
54
  boulderopalscaleupsdk/third_party/quantum_machines/constants.py,sha256=5PpAi6MZ53yEinBHerY2ssi30BR37JnLBWL21irpZ8Y,870
55
55
  boulderopalscaleupsdk/utils/__init__.py,sha256=vLaJ1FP36xV5eX6VD7nShqxVBm3UzsBMIK1pmSiTIag,550
56
56
  boulderopalscaleupsdk/utils/serial_utils.py,sha256=SzvY-WFD0b8IGSh6PTv7F9y1W2IPPYmj8pY3AsX-xlM,2062
57
- boulder_opal_scale_up_sdk-1.0.1.dist-info/LICENSE,sha256=wqX4S5Brcwkwo750l9grSspwm0cyMsZtZEa1Vx3_WiE,36587
58
- boulder_opal_scale_up_sdk-1.0.1.dist-info/METADATA,sha256=YIG6OihYpRxYNistXloLsm79Egn77OzeS_-aX_ChbJc,2419
59
- boulder_opal_scale_up_sdk-1.0.1.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
60
- boulder_opal_scale_up_sdk-1.0.1.dist-info/RECORD,,
57
+ boulder_opal_scale_up_sdk-1.0.2.dist-info/LICENSE,sha256=wqX4S5Brcwkwo750l9grSspwm0cyMsZtZEa1Vx3_WiE,36587
58
+ boulder_opal_scale_up_sdk-1.0.2.dist-info/METADATA,sha256=SPWPGe2xUsza1tnuUBCgVzXHcBrJCxCVbz0Zrr5HlII,2419
59
+ boulder_opal_scale_up_sdk-1.0.2.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
60
+ boulder_opal_scale_up_sdk-1.0.2.dist-info/RECORD,,
@@ -13,6 +13,7 @@
13
13
 
14
14
  from __future__ import annotations
15
15
 
16
+ import enum
16
17
  from typing import overload
17
18
 
18
19
  __all__ = [
@@ -23,7 +24,6 @@ __all__ = [
23
24
 
24
25
  from datetime import datetime, timedelta
25
26
  from decimal import Decimal
26
- from enum import Enum
27
27
  from typing import Annotated, Any, Literal, Self
28
28
 
29
29
  import numpy as np
@@ -37,7 +37,7 @@ GrpcMetadata = list[tuple[str, str | bytes]]
37
37
  class BaseType: ...
38
38
 
39
39
 
40
- class FrequencyUnit(str, Enum):
40
+ class FrequencyUnit(str, enum.Enum):
41
41
  Hz = "Hz"
42
42
 
43
43
 
@@ -115,7 +115,7 @@ class Frequency:
115
115
  return self.__mul__(lhs)
116
116
 
117
117
 
118
- class TimeUnit(str, Enum):
118
+ class TimeUnit(str, enum.Enum):
119
119
  S = "s"
120
120
  MS = "ms"
121
121
  US = "us"
@@ -308,3 +308,13 @@ ISO8601DatetimeUTCLike = Annotated[
308
308
  BeforeValidator(_validate_iso_datetime),
309
309
  PlainSerializer(_serialize_datetime),
310
310
  ]
311
+
312
+
313
+ class JobHistorySortOrder(enum.Enum):
314
+ CREATED_AT_DESC = 1
315
+ CREATED_AT_ASC = 2
316
+
317
+
318
+ DEFAULT_JOB_HISTORY_PAGE = 1
319
+ DEFAULT_JOB_HISTORY_PAGE_SIZE = 10
320
+ DEFAULT_JOB_HISTORY_SORT_ORDER = JobHistorySortOrder.CREATED_AT_DESC
@@ -52,9 +52,12 @@ class DeviceConfigLoader:
52
52
  layout_file = device_config_data.pop("layout_file", None)
53
53
  if layout_file is None:
54
54
  raise ValueError("Layout file is missing from device configuration data.")
55
- self._validate_file_is_filename(layout_file)
56
55
 
57
- layout_path = self.config_path.parent / layout_file
56
+ layout_path = Path(layout_file)
57
+ if not layout_path.is_absolute():
58
+ self._validate_file_is_filename(layout_path.name)
59
+ layout_path = self.config_path.parent / layout_file
60
+
58
61
  device_layout_data = self._load_yaml_file(layout_path)
59
62
 
60
63
  processed_device_config = {**device_config_data, **device_layout_data}
@@ -59,3 +59,4 @@ DataKeyLike = Annotated[
59
59
  class DefCalData:
60
60
  body: str
61
61
  status: Literal["calibrated", "uncalibrated"]
62
+ scope: Literal["public", "internal"]
@@ -81,9 +81,9 @@ class Transmon(Component[Literal["tunable"]]):
81
81
  )
82
82
 
83
83
 
84
- class Resonator(Component[Literal["dispersive"]]):
84
+ class Resonator(Component[Literal["readout"]]):
85
85
  dtype: Literal["resonator"] = "resonator"
86
- traits: list[Literal["dispersive"]] = Field(default=["dispersive"])
86
+ traits: list[Literal["readout"]] = Field(default=["readout"])
87
87
 
88
88
  frequency_high: FloatComponentParameter | None = Field(
89
89
  default=None,
@@ -15,6 +15,7 @@
15
15
 
16
16
  __all__ = [
17
17
  "CWSIterable",
18
+ "Chi01Scan",
18
19
  "ConstantWaveform",
19
20
  "Experiment",
20
21
  "GaussianWaveform",
@@ -28,10 +29,10 @@ __all__ = [
28
29
  "ResonatorSpectroscopyByBias",
29
30
  "ResonatorSpectroscopyByPower",
30
31
  "TransmonAnharmonicity",
31
- "TransmonResonatorChiScan",
32
32
  "TransmonSpectroscopy",
33
33
  ]
34
34
 
35
+ from .chi01_scan import Chi01Scan
35
36
  from .common import (
36
37
  ConstantWaveform,
37
38
  CWSIterable,
@@ -48,5 +49,4 @@ from .resonator_spectroscopy import ResonatorSpectroscopy
48
49
  from .resonator_spectroscopy_by_bias import ResonatorSpectroscopyByBias
49
50
  from .resonator_spectroscopy_by_power import ResonatorSpectroscopyByPower
50
51
  from .transmon_anharmonicity import TransmonAnharmonicity
51
- from .transmon_resonator_chi_scan import TransmonResonatorChiScan
52
52
  from .transmon_spectroscopy import TransmonSpectroscopy
@@ -25,7 +25,7 @@ DEFAULT_RECYCLE_DELAY_NS = 10_000
25
25
  DEFAULT_SHOT_COUNT = 100
26
26
 
27
27
 
28
- class TransmonResonatorChiScan(Experiment):
28
+ class Chi01Scan(Experiment):
29
29
  """
30
30
  Parameters for running an experiment to find the dispersive shift for a transmon
31
31
  resonator pair.
@@ -46,7 +46,7 @@ class TransmonResonatorChiScan(Experiment):
46
46
  Defaults to 100.
47
47
  """
48
48
 
49
- _experiment_name: str = PrivateAttr("transmon_resonator_chi_scan")
49
+ _experiment_name: str = PrivateAttr("chi01_scan")
50
50
 
51
51
  transmon: str
52
52
  frequencies: list[int] | LinspaceIterable | RangeIterable | CWSIterable | HypIterable | None = (
@@ -34,7 +34,7 @@ class Ramsey(Experiment):
34
34
  The minimum delay time, in nanoseconds.
35
35
  delay_step_ns : int
36
36
  The step for generating the list of delays, in nanoseconds.
37
- detuning : float
37
+ virtual_detuning : float
38
38
  The difference between the drive signal frequency and the qubit frequency, in Hz.
39
39
  readout_amplitude : float
40
40
  The amplitude of the readout pulse.
@@ -55,7 +55,7 @@ class Ramsey(Experiment):
55
55
  max_delay_ns: int
56
56
  min_delay_ns: int
57
57
  delay_step_ns: int
58
- detuning: float
58
+ virtual_detuning: float
59
59
  readout_amplitude: float
60
60
  duration_ns: int = DEFAULT_DURATION_NS
61
61
  recycle_delay_ns: int = DEFAULT_RECYCLE_DELAY_NS
@@ -18,7 +18,7 @@ from .common import CWSIterable, Experiment, HypIterable, LinspaceIterable, Rang
18
18
  DEFAULT_DURATION_NS = 2_000 # ns
19
19
  DEFAULT_RECYCLE_DELAY_NS = 1_000 # ns
20
20
  DEFAULT_SHOT_COUNT = 100
21
- DEFAULT_ANHARMONICITY_GUESS = 200e6 # Hz, typical anharmonicity for transmons
21
+ DEFAULT_ANHARMONICITY_GUESS = -200e6 # Hz, typical anharmonicity for transmons
22
22
 
23
23
 
24
24
  class TransmonAnharmonicity(Experiment):
@@ -33,14 +33,14 @@ class TransmonAnharmonicity(Experiment):
33
33
  or HypIterable or None, optional
34
34
  The drive frequencies to be scanned in the experiment.
35
35
  If None, a default scan will be used based on the transmon's frequency and anharmonicity.
36
- drive_amplitude : float
37
- The amplitude of the drive pulse, in volts.
38
- drive_duration : int
39
- The duration of the drive pulse, in nanoseconds.
36
+ spec_amplitude : float
37
+ The amplitude of the spectroscopy pulse, in volts.
38
+ spec_duration : int
39
+ The duration of the spectroscopy pulse, in nanoseconds.
40
40
  anharmonicity_guess_hz : float
41
41
  The guessed anharmonicity of the qubit, in Hz. This is used to determine the
42
42
  range of frequencies to scan if `frequencies` is not provided.
43
- Defaults to 200 MHz.
43
+ Defaults to -200 MHz.
44
44
  readout_amplitude : float
45
45
  The amplitude of the readout pulse.
46
46
  duration_ns : int, optional
@@ -59,8 +59,8 @@ class TransmonAnharmonicity(Experiment):
59
59
  frequencies: list[int] | LinspaceIterable | RangeIterable | CWSIterable | HypIterable | None = (
60
60
  None
61
61
  )
62
- drive_amplitude: float
63
- drive_duration: int
62
+ spec_amplitude: float
63
+ spec_duration: int
64
64
  anharmonicity_guess_hz: float = DEFAULT_ANHARMONICITY_GUESS
65
65
  readout_amplitude: float
66
66
  duration_ns: int = DEFAULT_DURATION_NS
@@ -16,7 +16,7 @@ from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
16
16
  from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
17
17
 
18
18
 
19
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n.boulderopalscaleupsdk/protobuf/v1/device.proto\x12!boulderopalscaleupsdk.protobuf.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto\"-\n\x14GetJobSummaryRequest\x12\x15\n\x06job_id\x18\x01 \x01(\tR\x05jobId\"Z\n\x15GetJobSummaryResponse\x12\x41\n\x10job_summary_data\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructR\x0ejobSummaryData\"&\n\rGetJobRequest\x12\x15\n\x06job_id\x18\x01 \x01(\tR\x05jobId\"D\n\x0eGetJobResponse\x12\x32\n\x08job_data\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructR\x07jobData\"2\n\x0fListJobsRequest\x12\x1f\n\x0b\x64\x65vice_name\x18\x01 \x01(\tR\ndeviceName\"?\n\x10ListJobsResponse\x12+\n\x04jobs\x18\x01 \x03(\x0b\x32\x17.google.protobuf.StructR\x04jobs\"\x85\x01\n\rCreateRequest\x12\x19\n\x08\x61pp_name\x18\x01 \x01(\tR\x07\x61ppName\x12\x1f\n\x0b\x64\x65vice_name\x18\x02 \x01(\tR\ndeviceName\x12\x38\n\x0b\x64\x65vice_data\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\ndeviceData\"$\n\x0e\x43reateResponse\x12\x12\n\x04\x64one\x18\x01 \x01(\x08R\x04\x64one\"]\n\x0b\x43opyRequest\x12(\n\x10\x66rom_device_name\x18\x01 \x01(\tR\x0e\x66romDeviceName\x12$\n\x0eto_device_name\x18\x02 \x01(\tR\x0ctoDeviceName\"\"\n\x0c\x43opyResponse\x12\x12\n\x04\x64one\x18\x01 \x01(\x08R\x04\x64one\"L\n\x0eGetDataRequest\x12\x19\n\x08\x61pp_name\x18\x01 \x01(\tR\x07\x61ppName\x12\x1f\n\x0b\x64\x65vice_name\x18\x02 \x01(\tR\ndeviceName\"\x93\x01\n\x0fGetDataResponse\x12>\n\x0eprocessor_data\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructR\rprocessorData\x12@\n\x0f\x63ontroller_data\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\x0e\x63ontrollerData\"\x8b\x01\n\rUpdateRequest\x12\x19\n\x08\x61pp_name\x18\x01 \x01(\tR\x07\x61ppName\x12\x1f\n\x0b\x64\x65vice_name\x18\x02 \x01(\tR\ndeviceName\x12>\n\x0eprocessor_data\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\rprocessorData\"\x92\x01\n\x0eUpdateResponse\x12>\n\x0eprocessor_data\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\rprocessorData\x12@\n\x0f\x63ontroller_data\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructR\x0e\x63ontrollerData\"K\n\rDeleteRequest\x12\x19\n\x08\x61pp_name\x18\x01 \x01(\tR\x07\x61ppName\x12\x1f\n\x0b\x64\x65vice_name\x18\x02 \x01(\tR\ndeviceName\"$\n\x0e\x44\x65leteResponse\x12\x12\n\x04\x64one\x18\x01 \x01(\x08R\x04\x64one\"5\n\x12GetMetadataRequest\x12\x1f\n\x0b\x64\x65vice_name\x18\x01 \x01(\tR\ndeviceName\"J\n\x13GetMetadataResponse\x12\x33\n\x08metadata\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"\x1e\n\x1cGetAllDevicesMetadataRequest\"V\n\x1dGetAllDevicesMetadataResponse\x12\x35\n\tmetadatas\x18\x01 \x03(\x0b\x32\x17.google.protobuf.StructR\tmetadatas2\xb0\x0c\n\x14\x44\x65viceManagerService\x12\x8b\x01\n\x06\x43reate\x12\x30.boulderopalscaleupsdk.protobuf.v1.CreateRequest\x1a\x31.boulderopalscaleupsdk.protobuf.v1.CreateResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\"\x11/v1/device/create:\x01*\x12\x83\x01\n\x04\x43opy\x12..boulderopalscaleupsdk.protobuf.v1.CopyRequest\x1a/.boulderopalscaleupsdk.protobuf.v1.CopyResponse\"\x1a\x82\xd3\xe4\x93\x02\x14\"\x0f/v1/device/copy:\x01*\x12\x97\x01\n\x07GetData\x12\x31.boulderopalscaleupsdk.protobuf.v1.GetDataRequest\x1a\x32.boulderopalscaleupsdk.protobuf.v1.GetDataResponse\"%\x82\xd3\xe4\x93\x02\x1f\"\x1a/v1/device/get_device_data:\x01*\x12\x8b\x01\n\x06Update\x12\x30.boulderopalscaleupsdk.protobuf.v1.UpdateRequest\x1a\x31.boulderopalscaleupsdk.protobuf.v1.UpdateResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\"\x11/v1/device/update:\x01*\x12\x8b\x01\n\x06\x44\x65lete\x12\x30.boulderopalscaleupsdk.protobuf.v1.DeleteRequest\x1a\x31.boulderopalscaleupsdk.protobuf.v1.DeleteResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\"\x11/v1/device/delete:\x01*\x12\x94\x01\n\x08ListJobs\x12\x32.boulderopalscaleupsdk.protobuf.v1.ListJobsRequest\x1a\x33.boulderopalscaleupsdk.protobuf.v1.ListJobsResponse\"\x1f\x82\xd3\xe4\x93\x02\x19\"\x14/v1/device/list_jobs:\x01*\x12\x8c\x01\n\x06GetJob\x12\x30.boulderopalscaleupsdk.protobuf.v1.GetJobRequest\x1a\x31.boulderopalscaleupsdk.protobuf.v1.GetJobResponse\"\x1d\x82\xd3\xe4\x93\x02\x17\"\x12/v1/device/get_job:\x01*\x12\xa9\x01\n\rGetJobSummary\x12\x37.boulderopalscaleupsdk.protobuf.v1.GetJobSummaryRequest\x1a\x38.boulderopalscaleupsdk.protobuf.v1.GetJobSummaryResponse\"%\x82\xd3\xe4\x93\x02\x1f\"\x1a/v1/device/get_job_summary:\x01*\x12\xa7\x01\n\x0bGetMetadata\x12\x35.boulderopalscaleupsdk.protobuf.v1.GetMetadataRequest\x1a\x36.boulderopalscaleupsdk.protobuf.v1.GetMetadataResponse\")\x82\xd3\xe4\x93\x02#\"\x1e/v1/device/get_device_metadata:\x01*\x12\xd1\x01\n\x15GetAllDevicesMetadata\x12?.boulderopalscaleupsdk.protobuf.v1.GetAllDevicesMetadataRequest\x1a@.boulderopalscaleupsdk.protobuf.v1.GetAllDevicesMetadataResponse\"5\x82\xd3\xe4\x93\x02/\"*/v1/device/get_all_devices_metadata_by_org:\x01*B\xaa\x02\n%com.boulderopalscaleupsdk.protobuf.v1B\x0b\x44\x65viceProtoP\x01ZNgithub.com/qctrl/boulder-opal-scale-up/proto/boulderopalscaleupsdk/protobuf/v1\xa2\x02\x03\x42PX\xaa\x02!Boulderopalscaleupsdk.Protobuf.V1\xca\x02!Boulderopalscaleupsdk\\Protobuf\\V1\xe2\x02-Boulderopalscaleupsdk\\Protobuf\\V1\\GPBMetadata\xea\x02#Boulderopalscaleupsdk::Protobuf::V1b\x06proto3')
19
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n.boulderopalscaleupsdk/protobuf/v1/device.proto\x12!boulderopalscaleupsdk.protobuf.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto\"-\n\x14GetJobSummaryRequest\x12\x15\n\x06job_id\x18\x01 \x01(\tR\x05jobId\"Z\n\x15GetJobSummaryResponse\x12\x41\n\x10job_summary_data\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructR\x0ejobSummaryData\"&\n\rGetJobRequest\x12\x15\n\x06job_id\x18\x01 \x01(\tR\x05jobId\"D\n\x0eGetJobResponse\x12\x32\n\x08job_data\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructR\x07jobData\"\x96\x01\n\x0fListJobsRequest\x12\x1f\n\x0b\x64\x65vice_name\x18\x01 \x01(\tR\ndeviceName\x12\x19\n\x08job_name\x18\x02 \x01(\tR\x07jobName\x12\x12\n\x04page\x18\x03 \x01(\x05R\x04page\x12\x14\n\x05limit\x18\x04 \x01(\x05R\x05limit\x12\x1d\n\nsort_order\x18\x05 \x01(\x05R\tsortOrder\"?\n\x10ListJobsResponse\x12+\n\x04jobs\x18\x01 \x03(\x0b\x32\x17.google.protobuf.StructR\x04jobs\"\x85\x01\n\rCreateRequest\x12\x19\n\x08\x61pp_name\x18\x01 \x01(\tR\x07\x61ppName\x12\x1f\n\x0b\x64\x65vice_name\x18\x02 \x01(\tR\ndeviceName\x12\x38\n\x0b\x64\x65vice_data\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\ndeviceData\"$\n\x0e\x43reateResponse\x12\x12\n\x04\x64one\x18\x01 \x01(\x08R\x04\x64one\"]\n\x0b\x43opyRequest\x12(\n\x10\x66rom_device_name\x18\x01 \x01(\tR\x0e\x66romDeviceName\x12$\n\x0eto_device_name\x18\x02 \x01(\tR\x0ctoDeviceName\"\"\n\x0c\x43opyResponse\x12\x12\n\x04\x64one\x18\x01 \x01(\x08R\x04\x64one\"L\n\x0eGetDataRequest\x12\x19\n\x08\x61pp_name\x18\x01 \x01(\tR\x07\x61ppName\x12\x1f\n\x0b\x64\x65vice_name\x18\x02 \x01(\tR\ndeviceName\"\x93\x01\n\x0fGetDataResponse\x12>\n\x0eprocessor_data\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructR\rprocessorData\x12@\n\x0f\x63ontroller_data\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\x0e\x63ontrollerData\"\x8b\x01\n\rUpdateRequest\x12\x19\n\x08\x61pp_name\x18\x01 \x01(\tR\x07\x61ppName\x12\x1f\n\x0b\x64\x65vice_name\x18\x02 \x01(\tR\ndeviceName\x12>\n\x0eprocessor_data\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\rprocessorData\"\x92\x01\n\x0eUpdateResponse\x12>\n\x0eprocessor_data\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\rprocessorData\x12@\n\x0f\x63ontroller_data\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructR\x0e\x63ontrollerData\"K\n\rDeleteRequest\x12\x19\n\x08\x61pp_name\x18\x01 \x01(\tR\x07\x61ppName\x12\x1f\n\x0b\x64\x65vice_name\x18\x02 \x01(\tR\ndeviceName\"$\n\x0e\x44\x65leteResponse\x12\x12\n\x04\x64one\x18\x01 \x01(\x08R\x04\x64one\"5\n\x12GetMetadataRequest\x12\x1f\n\x0b\x64\x65vice_name\x18\x01 \x01(\tR\ndeviceName\"J\n\x13GetMetadataResponse\x12\x33\n\x08metadata\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"\x1e\n\x1cGetAllDevicesMetadataRequest\"V\n\x1dGetAllDevicesMetadataResponse\x12\x35\n\tmetadatas\x18\x01 \x03(\x0b\x32\x17.google.protobuf.StructR\tmetadatas2\xb0\x0c\n\x14\x44\x65viceManagerService\x12\x8b\x01\n\x06\x43reate\x12\x30.boulderopalscaleupsdk.protobuf.v1.CreateRequest\x1a\x31.boulderopalscaleupsdk.protobuf.v1.CreateResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\"\x11/v1/device/create:\x01*\x12\x83\x01\n\x04\x43opy\x12..boulderopalscaleupsdk.protobuf.v1.CopyRequest\x1a/.boulderopalscaleupsdk.protobuf.v1.CopyResponse\"\x1a\x82\xd3\xe4\x93\x02\x14\"\x0f/v1/device/copy:\x01*\x12\x97\x01\n\x07GetData\x12\x31.boulderopalscaleupsdk.protobuf.v1.GetDataRequest\x1a\x32.boulderopalscaleupsdk.protobuf.v1.GetDataResponse\"%\x82\xd3\xe4\x93\x02\x1f\"\x1a/v1/device/get_device_data:\x01*\x12\x8b\x01\n\x06Update\x12\x30.boulderopalscaleupsdk.protobuf.v1.UpdateRequest\x1a\x31.boulderopalscaleupsdk.protobuf.v1.UpdateResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\"\x11/v1/device/update:\x01*\x12\x8b\x01\n\x06\x44\x65lete\x12\x30.boulderopalscaleupsdk.protobuf.v1.DeleteRequest\x1a\x31.boulderopalscaleupsdk.protobuf.v1.DeleteResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\"\x11/v1/device/delete:\x01*\x12\x94\x01\n\x08ListJobs\x12\x32.boulderopalscaleupsdk.protobuf.v1.ListJobsRequest\x1a\x33.boulderopalscaleupsdk.protobuf.v1.ListJobsResponse\"\x1f\x82\xd3\xe4\x93\x02\x19\"\x14/v1/device/list_jobs:\x01*\x12\x8c\x01\n\x06GetJob\x12\x30.boulderopalscaleupsdk.protobuf.v1.GetJobRequest\x1a\x31.boulderopalscaleupsdk.protobuf.v1.GetJobResponse\"\x1d\x82\xd3\xe4\x93\x02\x17\"\x12/v1/device/get_job:\x01*\x12\xa9\x01\n\rGetJobSummary\x12\x37.boulderopalscaleupsdk.protobuf.v1.GetJobSummaryRequest\x1a\x38.boulderopalscaleupsdk.protobuf.v1.GetJobSummaryResponse\"%\x82\xd3\xe4\x93\x02\x1f\"\x1a/v1/device/get_job_summary:\x01*\x12\xa7\x01\n\x0bGetMetadata\x12\x35.boulderopalscaleupsdk.protobuf.v1.GetMetadataRequest\x1a\x36.boulderopalscaleupsdk.protobuf.v1.GetMetadataResponse\")\x82\xd3\xe4\x93\x02#\"\x1e/v1/device/get_device_metadata:\x01*\x12\xd1\x01\n\x15GetAllDevicesMetadata\x12?.boulderopalscaleupsdk.protobuf.v1.GetAllDevicesMetadataRequest\x1a@.boulderopalscaleupsdk.protobuf.v1.GetAllDevicesMetadataResponse\"5\x82\xd3\xe4\x93\x02/\"*/v1/device/get_all_devices_metadata_by_org:\x01*B\xaa\x02\n%com.boulderopalscaleupsdk.protobuf.v1B\x0b\x44\x65viceProtoP\x01ZNgithub.com/qctrl/boulder-opal-scale-up/proto/boulderopalscaleupsdk/protobuf/v1\xa2\x02\x03\x42PX\xaa\x02!Boulderopalscaleupsdk.Protobuf.V1\xca\x02!Boulderopalscaleupsdk\\Protobuf\\V1\xe2\x02-Boulderopalscaleupsdk\\Protobuf\\V1\\GPBMetadata\xea\x02#Boulderopalscaleupsdk::Protobuf::V1b\x06proto3')
20
20
 
21
21
  _globals = globals()
22
22
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -52,38 +52,38 @@ if not _descriptor._USE_C_DESCRIPTORS:
52
52
  _globals['_GETJOBREQUEST']._serialized_end=322
53
53
  _globals['_GETJOBRESPONSE']._serialized_start=324
54
54
  _globals['_GETJOBRESPONSE']._serialized_end=392
55
- _globals['_LISTJOBSREQUEST']._serialized_start=394
56
- _globals['_LISTJOBSREQUEST']._serialized_end=444
57
- _globals['_LISTJOBSRESPONSE']._serialized_start=446
58
- _globals['_LISTJOBSRESPONSE']._serialized_end=509
59
- _globals['_CREATEREQUEST']._serialized_start=512
60
- _globals['_CREATEREQUEST']._serialized_end=645
61
- _globals['_CREATERESPONSE']._serialized_start=647
62
- _globals['_CREATERESPONSE']._serialized_end=683
63
- _globals['_COPYREQUEST']._serialized_start=685
64
- _globals['_COPYREQUEST']._serialized_end=778
65
- _globals['_COPYRESPONSE']._serialized_start=780
66
- _globals['_COPYRESPONSE']._serialized_end=814
67
- _globals['_GETDATAREQUEST']._serialized_start=816
68
- _globals['_GETDATAREQUEST']._serialized_end=892
69
- _globals['_GETDATARESPONSE']._serialized_start=895
70
- _globals['_GETDATARESPONSE']._serialized_end=1042
71
- _globals['_UPDATEREQUEST']._serialized_start=1045
72
- _globals['_UPDATEREQUEST']._serialized_end=1184
73
- _globals['_UPDATERESPONSE']._serialized_start=1187
74
- _globals['_UPDATERESPONSE']._serialized_end=1333
75
- _globals['_DELETEREQUEST']._serialized_start=1335
76
- _globals['_DELETEREQUEST']._serialized_end=1410
77
- _globals['_DELETERESPONSE']._serialized_start=1412
78
- _globals['_DELETERESPONSE']._serialized_end=1448
79
- _globals['_GETMETADATAREQUEST']._serialized_start=1450
80
- _globals['_GETMETADATAREQUEST']._serialized_end=1503
81
- _globals['_GETMETADATARESPONSE']._serialized_start=1505
82
- _globals['_GETMETADATARESPONSE']._serialized_end=1579
83
- _globals['_GETALLDEVICESMETADATAREQUEST']._serialized_start=1581
84
- _globals['_GETALLDEVICESMETADATAREQUEST']._serialized_end=1611
85
- _globals['_GETALLDEVICESMETADATARESPONSE']._serialized_start=1613
86
- _globals['_GETALLDEVICESMETADATARESPONSE']._serialized_end=1699
87
- _globals['_DEVICEMANAGERSERVICE']._serialized_start=1702
88
- _globals['_DEVICEMANAGERSERVICE']._serialized_end=3286
55
+ _globals['_LISTJOBSREQUEST']._serialized_start=395
56
+ _globals['_LISTJOBSREQUEST']._serialized_end=545
57
+ _globals['_LISTJOBSRESPONSE']._serialized_start=547
58
+ _globals['_LISTJOBSRESPONSE']._serialized_end=610
59
+ _globals['_CREATEREQUEST']._serialized_start=613
60
+ _globals['_CREATEREQUEST']._serialized_end=746
61
+ _globals['_CREATERESPONSE']._serialized_start=748
62
+ _globals['_CREATERESPONSE']._serialized_end=784
63
+ _globals['_COPYREQUEST']._serialized_start=786
64
+ _globals['_COPYREQUEST']._serialized_end=879
65
+ _globals['_COPYRESPONSE']._serialized_start=881
66
+ _globals['_COPYRESPONSE']._serialized_end=915
67
+ _globals['_GETDATAREQUEST']._serialized_start=917
68
+ _globals['_GETDATAREQUEST']._serialized_end=993
69
+ _globals['_GETDATARESPONSE']._serialized_start=996
70
+ _globals['_GETDATARESPONSE']._serialized_end=1143
71
+ _globals['_UPDATEREQUEST']._serialized_start=1146
72
+ _globals['_UPDATEREQUEST']._serialized_end=1285
73
+ _globals['_UPDATERESPONSE']._serialized_start=1288
74
+ _globals['_UPDATERESPONSE']._serialized_end=1434
75
+ _globals['_DELETEREQUEST']._serialized_start=1436
76
+ _globals['_DELETEREQUEST']._serialized_end=1511
77
+ _globals['_DELETERESPONSE']._serialized_start=1513
78
+ _globals['_DELETERESPONSE']._serialized_end=1549
79
+ _globals['_GETMETADATAREQUEST']._serialized_start=1551
80
+ _globals['_GETMETADATAREQUEST']._serialized_end=1604
81
+ _globals['_GETMETADATARESPONSE']._serialized_start=1606
82
+ _globals['_GETMETADATARESPONSE']._serialized_end=1680
83
+ _globals['_GETALLDEVICESMETADATAREQUEST']._serialized_start=1682
84
+ _globals['_GETALLDEVICESMETADATAREQUEST']._serialized_end=1712
85
+ _globals['_GETALLDEVICESMETADATARESPONSE']._serialized_start=1714
86
+ _globals['_GETALLDEVICESMETADATARESPONSE']._serialized_end=1800
87
+ _globals['_DEVICEMANAGERSERVICE']._serialized_start=1803
88
+ _globals['_DEVICEMANAGERSERVICE']._serialized_end=3387
89
89
  # @@protoc_insertion_point(module_scope)
@@ -32,10 +32,18 @@ class GetJobResponse(_message.Message):
32
32
  def __init__(self, job_data: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ...
33
33
 
34
34
  class ListJobsRequest(_message.Message):
35
- __slots__ = ("device_name",)
35
+ __slots__ = ("device_name", "job_name", "page", "limit", "sort_order")
36
36
  DEVICE_NAME_FIELD_NUMBER: _ClassVar[int]
37
+ JOB_NAME_FIELD_NUMBER: _ClassVar[int]
38
+ PAGE_FIELD_NUMBER: _ClassVar[int]
39
+ LIMIT_FIELD_NUMBER: _ClassVar[int]
40
+ SORT_ORDER_FIELD_NUMBER: _ClassVar[int]
37
41
  device_name: str
38
- def __init__(self, device_name: _Optional[str] = ...) -> None: ...
42
+ job_name: str
43
+ page: int
44
+ limit: int
45
+ sort_order: int
46
+ def __init__(self, device_name: _Optional[str] = ..., job_name: _Optional[str] = ..., page: _Optional[int] = ..., limit: _Optional[int] = ..., sort_order: _Optional[int] = ...) -> None: ...
39
47
 
40
48
  class ListJobsResponse(_message.Message):
41
49
  __slots__ = ("jobs",)