@cobotar/protocol 0.18.18 → 0.18.20
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.
- package/README.md +1 -1
- package/lib/capability/v1/actor_skill_pb.ts +29 -0
- package/lib/capability/v1/tool_requirement_pb.ts +3 -3
- package/lib/resources/v1/cell_definition_pb.ts +155 -4
- package/lib/resources/v1/line_definition_pb.ts +199 -0
- package/lib/resources/v1/station_definition_pb.ts +117 -11
- package/lib/runtime/v1/process_requests_pb.ts +286 -39
- package/lib/runtime/v1/process_run_pb.ts +37 -19
- package/lib/runtime/v1/runtime_restriction_pb.ts +149 -0
- package/lib/runtime/v1/sequence_run_pb.ts +7 -7
- package/lib/runtime/v1/task_run_pb.ts +38 -8
- package/package.json +1 -1
- package/lib/resources/v1/line_pb.ts +0 -103
package/README.md
CHANGED
|
@@ -213,6 +213,23 @@ export const SkillLevelSchema: GenEnum<SkillLevel> = /*@__PURE__*/
|
|
|
213
213
|
enumDesc(file_capability_v1_actor_skill, 0);
|
|
214
214
|
|
|
215
215
|
/**
|
|
216
|
+
* SkillStatus describes the current usability of an actor's skill.
|
|
217
|
+
*
|
|
218
|
+
* The status is operational and should be interpreted together with the
|
|
219
|
+
* associated policy, validity timestamps, and any derived restrictions.
|
|
220
|
+
*
|
|
221
|
+
* Typical semantics:
|
|
222
|
+
* - ACTIVE -> skill is fully usable
|
|
223
|
+
* - RESTRICTED -> skill is usable, but only under additional runtime
|
|
224
|
+
* safeguards such as AR guidance, extra validation,
|
|
225
|
+
* supervision, or other assistance
|
|
226
|
+
* - EXPIRED -> skill is no longer valid and must not be used
|
|
227
|
+
*
|
|
228
|
+
* Loaders and runtime planners should therefore treat:
|
|
229
|
+
* - ACTIVE -> feasible
|
|
230
|
+
* - RESTRICTED -> feasible with restrictions
|
|
231
|
+
* - EXPIRED -> infeasible
|
|
232
|
+
*
|
|
216
233
|
* @generated from enum capability.v1.SkillStatus
|
|
217
234
|
*/
|
|
218
235
|
export enum SkillStatus {
|
|
@@ -222,16 +239,28 @@ export enum SkillStatus {
|
|
|
222
239
|
UNSPECIFIED = 0,
|
|
223
240
|
|
|
224
241
|
/**
|
|
242
|
+
* Skill is valid and can be used normally.
|
|
243
|
+
*
|
|
225
244
|
* @generated from enum value: SKILL_STATUS_ACTIVE = 1;
|
|
226
245
|
*/
|
|
227
246
|
ACTIVE = 1,
|
|
228
247
|
|
|
229
248
|
/**
|
|
249
|
+
* Skill is allowed but restricted. The actor may perform the task but additional safeguards
|
|
250
|
+
*
|
|
251
|
+
* Examples:
|
|
252
|
+
* - AR guidance required
|
|
253
|
+
* - manual confirmation required
|
|
254
|
+
* - second check required
|
|
255
|
+
* - supervisor approval required
|
|
256
|
+
*
|
|
230
257
|
* @generated from enum value: SKILL_STATUS_RESTRICTED = 2;
|
|
231
258
|
*/
|
|
232
259
|
RESTRICTED = 2,
|
|
233
260
|
|
|
234
261
|
/**
|
|
262
|
+
* Skill is no longer valid and cannot be used.
|
|
263
|
+
*
|
|
235
264
|
* @generated from enum value: SKILL_STATUS_EXPIRED = 3;
|
|
236
265
|
*/
|
|
237
266
|
EXPIRED = 3,
|
|
@@ -15,16 +15,16 @@ import type { Message } from "@bufbuild/protobuf";
|
|
|
15
15
|
* Describes the file capability/v1/tool_requirement.proto.
|
|
16
16
|
*/
|
|
17
17
|
export const file_capability_v1_tool_requirement: GenFile = /*@__PURE__*/
|
|
18
|
-
fileDesc("
|
|
18
|
+
fileDesc("CiRjYXBhYmlsaXR5L3YxL3Rvb2xfcmVxdWlyZW1lbnQucHJvdG8SDWNhcGFiaWxpdHkudjEi9AEKD1Rvb2xSZXF1aXJlbWVudBI1CgVyb2xlcxgBIAMoDjIXLmNhcGFiaWxpdHkudjEuVG9vbFJvbGVCDbpICpIBByIFggECEAESRwoTcmVxdWlyZWRfcHJvcGVydGllcxgCIAMoDjIbLmNhcGFiaWxpdHkudjEuVG9vbFByb3BlcnR5Qg26SAqSAQciBYIBAhABEjwKEm1pbmltdW1fY2FwYWJpbGl0eRgDIAEoCzIgLmNhcGFiaWxpdHkudjEuQ2FwYWJpbGl0eVByb2ZpbGUSIwobYWxsb3dlZF90b29sX2RlZmluaXRpb25faWRzGAQgAygJKu8BCgxUb29sUHJvcGVydHkSHQoZVE9PTF9QUk9QRVJUWV9VTlNQRUNJRklFRBAAEiMKH1RPT0xfUFJPUEVSVFlfVE9SUVVFX0NPTlRST0xMRUQQARIaChZUT09MX1BST1BFUlRZX0VTRF9TQUZFEAISGwoXVE9PTF9QUk9QRVJUWV9JTlNVTEFURUQQAxIkCiBUT09MX1BST1BFUlRZX0NPTExBQk9SQVRJVkVfU0FGRRAEEhwKGFRPT0xfUFJPUEVSVFlfQ0FMSUJSQVRFRBAFEh4KGlRPT0xfUFJPUEVSVFlfUVVJQ0tfQ0hBTkdFEAZCyAEKEWNvbS5jYXBhYmlsaXR5LnYxQhRUb29sUmVxdWlyZW1lbnRQcm90b1ABWj9naXRodWIuY29tL2NvYm90YXIvcHJvdG9jb2wvbWVzc2FnZXMvY2FwYWJpbGl0eS92MTtjYXBhYmlsaXR5djGiAgNDWFiqAhZNZXNzYWdlcy5DYXBhYmlsaXR5LlYxygINQ2FwYWJpbGl0eVxWMeICGUNhcGFiaWxpdHlcVjFcR1BCTWV0YWRhdGHqAg5DYXBhYmlsaXR5OjpWMWIGcHJvdG8z", [file_buf_validate_validate, file_capability_v1_capability_profile, file_capability_v1_skill_definition]);
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* @generated from message capability.v1.ToolRequirement
|
|
22
22
|
*/
|
|
23
23
|
export type ToolRequirement = Message<"capability.v1.ToolRequirement"> & {
|
|
24
24
|
/**
|
|
25
|
-
* @generated from field: capability.v1.ToolRole
|
|
25
|
+
* @generated from field: repeated capability.v1.ToolRole roles = 1;
|
|
26
26
|
*/
|
|
27
|
-
|
|
27
|
+
roles: ToolRole[];
|
|
28
28
|
|
|
29
29
|
/**
|
|
30
30
|
* @generated from field: repeated capability.v1.ToolProperty required_properties = 2;
|
|
@@ -2,19 +2,36 @@
|
|
|
2
2
|
// @generated from file resources/v1/cell_definition.proto (package resources.v1, syntax proto3)
|
|
3
3
|
/* eslint-disable */
|
|
4
4
|
|
|
5
|
-
import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
|
|
6
|
-
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
|
|
5
|
+
import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
|
|
6
|
+
import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
|
|
7
|
+
import { file_buf_validate_validate } from "../../buf/validate/validate_pb.ts";
|
|
7
8
|
import type { CustomProperties } from "../../common/v1/custom_properties_pb.ts";
|
|
8
9
|
import { file_common_v1_custom_properties } from "../../common/v1/custom_properties_pb.ts";
|
|
10
|
+
import type { LocalizedPose } from "../../geometry/v1/pose_pb.ts";
|
|
11
|
+
import { file_geometry_v1_pose } from "../../geometry/v1/pose_pb.ts";
|
|
12
|
+
import { file_validation_v1_predefined_string_rules } from "../../validation/v1/predefined_string_rules_pb.ts";
|
|
9
13
|
import type { Message } from "@bufbuild/protobuf";
|
|
10
14
|
|
|
11
15
|
/**
|
|
12
16
|
* Describes the file resources/v1/cell_definition.proto.
|
|
13
17
|
*/
|
|
14
18
|
export const file_resources_v1_cell_definition: GenFile = /*@__PURE__*/
|
|
15
|
-
fileDesc("
|
|
19
|
+
fileDesc("CiJyZXNvdXJjZXMvdjEvY2VsbF9kZWZpbml0aW9uLnByb3RvEgxyZXNvdXJjZXMudjEi5gMKDkNlbGxEZWZpbml0aW9uEgoKAmlkGAEgASgJEhcKBG5hbWUYAiABKAlCCbpIBnIEgPEEARITCgtkZXNjcmlwdGlvbhgDIAEoCRIMCgRpY29uGAQgASgJEhMKC3N0YXRpb25faWRzGAUgAygJEjIKBnN0YXR1cxgGIAEoDjIYLnJlc291cmNlcy52MS5DZWxsU3RhdHVzQgi6SAWCAQIQARIpChhtYXhfY29uY3VycmVudF9wcm9jZXNzZXMYByABKAVCB7pIBBoCKAASHAoUYWxsb3dfcXVldWVkX3Byb2Nlc3MYCCABKAgSGQoRdG9vbF9pbnN0YW5jZV9pZHMYCSADKAkSHgoWY29udGFpbmVyX2luc3RhbmNlX2lkcxgKIAMoCRIaChJyb2JvdF9pbnN0YW5jZV9pZHMYCyADKAkSGgoSYXNzZXRfaW5zdGFuY2VfaWRzGAwgAygJEhsKE21hcmtlcl9pbnN0YW5jZV9pZHMYDSADKAkSEgoKd29ya2VyX2lkcxgOIAMoCRIpCgVmcmFtZRgPIAEoCzIaLmdlb21ldHJ5LnYxLkxvY2FsaXplZFBvc2USKwoGY3VzdG9tGBAgASgLMhsuY29tbW9uLnYxLkN1c3RvbVByb3BlcnRpZXMiPgoPQ2VsbERlZmluaXRpb25zEisKBWl0ZW1zGAEgAygLMhwucmVzb3VyY2VzLnYxLkNlbGxEZWZpbml0aW9uKoYBCgpDZWxsU3RhdHVzEhsKF0NFTExfU1RBVFVTX1VOU1BFQ0lGSUVEEAASFAoQQ0VMTF9TVEFUVVNfT1BFThABEhQKEENFTExfU1RBVFVTX0JVU1kQAhIWChJDRUxMX1NUQVRVU19DTE9TRUQQAxIXChNDRUxMX1NUQVRVU19CTE9DS0VEEARCwAEKEGNvbS5yZXNvdXJjZXMudjFCE0NlbGxEZWZpbml0aW9uUHJvdG9QAVo9Z2l0aHViLmNvbS9jb2JvdGFyL3Byb3RvY29sL21lc3NhZ2VzL3Jlc291cmNlcy92MTtyZXNvdXJjZXN2MaICA1JYWKoCFU1lc3NhZ2VzLlJlc291cmNlcy5WMcoCDFJlc291cmNlc1xWMeICGFJlc291cmNlc1xWMVxHUEJNZXRhZGF0YeoCDVJlc291cmNlczo6VjFiBnByb3RvMw", [file_buf_validate_validate, file_common_v1_custom_properties, file_geometry_v1_pose, file_validation_v1_predefined_string_rules]);
|
|
16
20
|
|
|
17
21
|
/**
|
|
22
|
+
* CellDefinition describes an operational grouping of stations and shared
|
|
23
|
+
* resources inside a line.
|
|
24
|
+
*
|
|
25
|
+
* A cell is useful when multiple stations share workers, robots, assets,
|
|
26
|
+
* safety boundaries, or scheduling constraints. It gives the model a clear
|
|
27
|
+
* middle layer between line-level routing and station-level execution.
|
|
28
|
+
*
|
|
29
|
+
* Typical cell responsibilities:
|
|
30
|
+
* - group stations into a shared execution/safety zone
|
|
31
|
+
* - own resources that are shared across several stations
|
|
32
|
+
* - expose operational state and capacity above individual stations
|
|
33
|
+
* - act as an optional target/selector scope for loaders and planners
|
|
34
|
+
*
|
|
18
35
|
* @generated from message resources.v1.CellDefinition
|
|
19
36
|
*/
|
|
20
37
|
export type CellDefinition = Message<"resources.v1.CellDefinition"> & {
|
|
@@ -39,12 +56,84 @@ export type CellDefinition = Message<"resources.v1.CellDefinition"> & {
|
|
|
39
56
|
icon: string;
|
|
40
57
|
|
|
41
58
|
/**
|
|
59
|
+
* Stations belonging to this cell.
|
|
60
|
+
*
|
|
42
61
|
* @generated from field: repeated string station_ids = 5;
|
|
43
62
|
*/
|
|
44
63
|
stationIds: string[];
|
|
45
64
|
|
|
46
65
|
/**
|
|
47
|
-
*
|
|
66
|
+
* Current operational availability of the cell as a whole.
|
|
67
|
+
*
|
|
68
|
+
* @generated from field: resources.v1.CellStatus status = 6;
|
|
69
|
+
*/
|
|
70
|
+
status: CellStatus;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Maximum number of active/queued processes this cell should host concurrently.
|
|
74
|
+
*
|
|
75
|
+
* @generated from field: int32 max_concurrent_processes = 7;
|
|
76
|
+
*/
|
|
77
|
+
maxConcurrentProcesses: number;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* If true, loaders may create queued ProcessRuns when the cell is BUSY.
|
|
81
|
+
*
|
|
82
|
+
* @generated from field: bool allow_queued_process = 8;
|
|
83
|
+
*/
|
|
84
|
+
allowQueuedProcess: boolean;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Shared tools mounted, parked, or otherwise directly available here.
|
|
88
|
+
*
|
|
89
|
+
* @generated from field: repeated string tool_instance_ids = 9;
|
|
90
|
+
*/
|
|
91
|
+
toolInstanceIds: string[];
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Shared fixtures, trays, pallets, bins, or other concrete containers.
|
|
95
|
+
*
|
|
96
|
+
* @generated from field: repeated string container_instance_ids = 10;
|
|
97
|
+
*/
|
|
98
|
+
containerInstanceIds: string[];
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Robots shared across multiple stations inside the cell.
|
|
102
|
+
*
|
|
103
|
+
* @generated from field: repeated string robot_instance_ids = 11;
|
|
104
|
+
*/
|
|
105
|
+
robotInstanceIds: string[];
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Shared assets such as cameras, HMIs, or feeders serving several stations.
|
|
109
|
+
*
|
|
110
|
+
* @generated from field: repeated string asset_instance_ids = 12;
|
|
111
|
+
*/
|
|
112
|
+
assetInstanceIds: string[];
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Markers shared for this cell for localization, AR anchoring, or identification.
|
|
116
|
+
*
|
|
117
|
+
* @generated from field: repeated string marker_instance_ids = 13;
|
|
118
|
+
*/
|
|
119
|
+
markerInstanceIds: string[];
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Shared worker pool for the cell when workers are not bound to a specific station.
|
|
123
|
+
*
|
|
124
|
+
* @generated from field: repeated string worker_ids = 14;
|
|
125
|
+
*/
|
|
126
|
+
workerIds: string[];
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Cell-local reference frame or zone anchor.
|
|
130
|
+
*
|
|
131
|
+
* @generated from field: geometry.v1.LocalizedPose frame = 15;
|
|
132
|
+
*/
|
|
133
|
+
frame?: LocalizedPose;
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* @generated from field: common.v1.CustomProperties custom = 16;
|
|
48
137
|
*/
|
|
49
138
|
custom?: CustomProperties;
|
|
50
139
|
};
|
|
@@ -73,3 +162,65 @@ export type CellDefinitions = Message<"resources.v1.CellDefinitions"> & {
|
|
|
73
162
|
export const CellDefinitionsSchema: GenMessage<CellDefinitions> = /*@__PURE__*/
|
|
74
163
|
messageDesc(file_resources_v1_cell_definition, 1);
|
|
75
164
|
|
|
165
|
+
/**
|
|
166
|
+
* CellStatus describes whether a cell can currently accept or host work.
|
|
167
|
+
*
|
|
168
|
+
* A cell is typically a grouping of stations and related resources. The loader
|
|
169
|
+
* can use this status to quickly reject or prefer a cell before evaluating
|
|
170
|
+
* individual stations.
|
|
171
|
+
*
|
|
172
|
+
* Status should be interpreted as:
|
|
173
|
+
* - OPEN -> cell can accept new work now
|
|
174
|
+
* - BUSY -> cell is occupied; queueing may still be possible
|
|
175
|
+
* - CLOSED -> cell is intentionally unavailable
|
|
176
|
+
* - BLOCKED -> cell is unavailable due to fault, safety state, maintenance,
|
|
177
|
+
* or other blocking condition
|
|
178
|
+
*
|
|
179
|
+
* This field is operational and should be considered together with
|
|
180
|
+
* max_concurrent_processes and the status of contained stations.
|
|
181
|
+
*
|
|
182
|
+
* @generated from enum resources.v1.CellStatus
|
|
183
|
+
*/
|
|
184
|
+
export enum CellStatus {
|
|
185
|
+
/**
|
|
186
|
+
* @generated from enum value: CELL_STATUS_UNSPECIFIED = 0;
|
|
187
|
+
*/
|
|
188
|
+
UNSPECIFIED = 0,
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* Cell can accept new work now.
|
|
192
|
+
*
|
|
193
|
+
* @generated from enum value: CELL_STATUS_OPEN = 1;
|
|
194
|
+
*/
|
|
195
|
+
OPEN = 1,
|
|
196
|
+
|
|
197
|
+
/**
|
|
198
|
+
* Cell is currently occupied by one or more active runs.
|
|
199
|
+
* Depending on policy, new runs may still be queued.
|
|
200
|
+
*
|
|
201
|
+
* @generated from enum value: CELL_STATUS_BUSY = 2;
|
|
202
|
+
*/
|
|
203
|
+
BUSY = 2,
|
|
204
|
+
|
|
205
|
+
/**
|
|
206
|
+
* Cell is intentionally unavailable for loading or running work.
|
|
207
|
+
*
|
|
208
|
+
* @generated from enum value: CELL_STATUS_CLOSED = 3;
|
|
209
|
+
*/
|
|
210
|
+
CLOSED = 3,
|
|
211
|
+
|
|
212
|
+
/**
|
|
213
|
+
* Cell is temporarily unavailable due to fault, interlock,
|
|
214
|
+
* maintenance state, or similar blocking condition.
|
|
215
|
+
*
|
|
216
|
+
* @generated from enum value: CELL_STATUS_BLOCKED = 4;
|
|
217
|
+
*/
|
|
218
|
+
BLOCKED = 4,
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* Describes the enum resources.v1.CellStatus.
|
|
223
|
+
*/
|
|
224
|
+
export const CellStatusSchema: GenEnum<CellStatus> = /*@__PURE__*/
|
|
225
|
+
enumDesc(file_resources_v1_cell_definition, 0);
|
|
226
|
+
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
// @generated by protoc-gen-es v2.10.2 with parameter "target=ts,import_extension=ts"
|
|
2
|
+
// @generated from file resources/v1/line_definition.proto (package resources.v1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
|
|
5
|
+
import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
|
|
6
|
+
import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
|
|
7
|
+
import { file_buf_validate_validate } from "../../buf/validate/validate_pb.ts";
|
|
8
|
+
import type { CustomProperties } from "../../common/v1/custom_properties_pb.ts";
|
|
9
|
+
import { file_common_v1_custom_properties } from "../../common/v1/custom_properties_pb.ts";
|
|
10
|
+
import { file_validation_v1_predefined_string_rules } from "../../validation/v1/predefined_string_rules_pb.ts";
|
|
11
|
+
import type { Message } from "@bufbuild/protobuf";
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Describes the file resources/v1/line_definition.proto.
|
|
15
|
+
*/
|
|
16
|
+
export const file_resources_v1_line_definition: GenFile = /*@__PURE__*/
|
|
17
|
+
fileDesc("CiJyZXNvdXJjZXMvdjEvbGluZV9kZWZpbml0aW9uLnByb3RvEgxyZXNvdXJjZXMudjEivwIKDkxpbmVEZWZpbml0aW9uEhgKAmlkGAEgASgJQgy6SAnIAQFyBKjyBAESFwoEbmFtZRgCIAEoCUIJukgGcgSA8QQBEhMKC2Rlc2NyaXB0aW9uGAMgASgJEgwKBGljb24YBCABKAkSJAoEdHlwZRgFIAEoDjIWLnJlc291cmNlcy52MS5MaW5lVHlwZRIyCgZzdGF0dXMYBiABKA4yGC5yZXNvdXJjZXMudjEuTGluZVN0YXR1c0IIukgFggECEAESKQoYbWF4X2NvbmN1cnJlbnRfcHJvY2Vzc2VzGAcgASgFQge6SAQaAigAEhAKCGNlbGxfaWRzGAggAygJEhMKC3N0YXRpb25faWRzGAkgAygJEisKBmN1c3RvbRgKIAEoCzIbLmNvbW1vbi52MS5DdXN0b21Qcm9wZXJ0aWVzIj4KD0xpbmVEZWZpbml0aW9ucxIrCgVpdGVtcxgBIAMoCzIcLnJlc291cmNlcy52MS5MaW5lRGVmaW5pdGlvbiolCghMaW5lVHlwZRIZChVMSU5FX1RZUEVfVU5TUEVDSUZJRUQQACqGAQoKTGluZVN0YXR1cxIbChdMSU5FX1NUQVRVU19VTlNQRUNJRklFRBAAEhQKEExJTkVfU1RBVFVTX09QRU4QARIUChBMSU5FX1NUQVRVU19CVVNZEAISFgoSTElORV9TVEFUVVNfQ0xPU0VEEAMSFwoTTElORV9TVEFUVVNfQkxPQ0tFRBAEQsABChBjb20ucmVzb3VyY2VzLnYxQhNMaW5lRGVmaW5pdGlvblByb3RvUAFaPWdpdGh1Yi5jb20vY29ib3Rhci9wcm90b2NvbC9tZXNzYWdlcy9yZXNvdXJjZXMvdjE7cmVzb3VyY2VzdjGiAgNSWFiqAhVNZXNzYWdlcy5SZXNvdXJjZXMuVjHKAgxSZXNvdXJjZXNcVjHiAhhSZXNvdXJjZXNcVjFcR1BCTWV0YWRhdGHqAg1SZXNvdXJjZXM6OlYxYgZwcm90bzM", [file_buf_validate_validate, file_common_v1_custom_properties, file_validation_v1_predefined_string_rules]);
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* LineDefinition describes the highest operational routing context for loading
|
|
21
|
+
* and dispatching work.
|
|
22
|
+
*
|
|
23
|
+
* A line groups cells and/or stations into a production area that can be
|
|
24
|
+
* targeted by ProcessLoadRequest. Loaders typically resolve a concrete cell and
|
|
25
|
+
* station within the selected line.
|
|
26
|
+
*
|
|
27
|
+
* Typical line responsibilities:
|
|
28
|
+
* - act as the top-level routing target for process loading
|
|
29
|
+
* - expose high-level operational status and capacity
|
|
30
|
+
* - contain one or more cells and/or directly attached stations
|
|
31
|
+
* - provide a coarse operational boundary for planning and dispatch
|
|
32
|
+
*
|
|
33
|
+
* @generated from message resources.v1.LineDefinition
|
|
34
|
+
*/
|
|
35
|
+
export type LineDefinition = Message<"resources.v1.LineDefinition"> & {
|
|
36
|
+
/**
|
|
37
|
+
* @generated from field: string id = 1;
|
|
38
|
+
*/
|
|
39
|
+
id: string;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* @generated from field: string name = 2;
|
|
43
|
+
*/
|
|
44
|
+
name: string;
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* @generated from field: string description = 3;
|
|
48
|
+
*/
|
|
49
|
+
description: string;
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @generated from field: string icon = 4;
|
|
53
|
+
*/
|
|
54
|
+
icon: string;
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Broad line classification. Keep optional until concrete line types are introduced.
|
|
58
|
+
*
|
|
59
|
+
* @generated from field: resources.v1.LineType type = 5;
|
|
60
|
+
*/
|
|
61
|
+
type: LineType;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Current operational availability of the line as a whole.
|
|
65
|
+
*
|
|
66
|
+
* @generated from field: resources.v1.LineStatus status = 6;
|
|
67
|
+
*/
|
|
68
|
+
status: LineStatus;
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Maximum number of active/queued processes this line should host concurrently.
|
|
72
|
+
*
|
|
73
|
+
* @generated from field: int32 max_concurrent_processes = 7;
|
|
74
|
+
*/
|
|
75
|
+
maxConcurrentProcesses: number;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Cells belonging to this line.
|
|
79
|
+
*
|
|
80
|
+
* @generated from field: repeated string cell_ids = 8;
|
|
81
|
+
*/
|
|
82
|
+
cellIds: string[];
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Optional directly attached stations when a line references stations without an intermediate cell.
|
|
86
|
+
*
|
|
87
|
+
* @generated from field: repeated string station_ids = 9;
|
|
88
|
+
*/
|
|
89
|
+
stationIds: string[];
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* @generated from field: common.v1.CustomProperties custom = 10;
|
|
93
|
+
*/
|
|
94
|
+
custom?: CustomProperties;
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Describes the message resources.v1.LineDefinition.
|
|
99
|
+
* Use `create(LineDefinitionSchema)` to create a new message.
|
|
100
|
+
*/
|
|
101
|
+
export const LineDefinitionSchema: GenMessage<LineDefinition> = /*@__PURE__*/
|
|
102
|
+
messageDesc(file_resources_v1_line_definition, 0);
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* @generated from message resources.v1.LineDefinitions
|
|
106
|
+
*/
|
|
107
|
+
export type LineDefinitions = Message<"resources.v1.LineDefinitions"> & {
|
|
108
|
+
/**
|
|
109
|
+
* @generated from field: repeated resources.v1.LineDefinition items = 1;
|
|
110
|
+
*/
|
|
111
|
+
items: LineDefinition[];
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Describes the message resources.v1.LineDefinitions.
|
|
116
|
+
* Use `create(LineDefinitionsSchema)` to create a new message.
|
|
117
|
+
*/
|
|
118
|
+
export const LineDefinitionsSchema: GenMessage<LineDefinitions> = /*@__PURE__*/
|
|
119
|
+
messageDesc(file_resources_v1_line_definition, 1);
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* @generated from enum resources.v1.LineType
|
|
123
|
+
*/
|
|
124
|
+
export enum LineType {
|
|
125
|
+
/**
|
|
126
|
+
* @generated from enum value: LINE_TYPE_UNSPECIFIED = 0;
|
|
127
|
+
*/
|
|
128
|
+
UNSPECIFIED = 0,
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Describes the enum resources.v1.LineType.
|
|
133
|
+
*/
|
|
134
|
+
export const LineTypeSchema: GenEnum<LineType> = /*@__PURE__*/
|
|
135
|
+
enumDesc(file_resources_v1_line_definition, 0);
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* LineStatus describes whether a production line can currently accept work.
|
|
139
|
+
*
|
|
140
|
+
* A line is a higher-level operational grouping of cells and/or stations.
|
|
141
|
+
* The loader can use this status as an early gate before checking specific
|
|
142
|
+
* cells, stations, and resources.
|
|
143
|
+
*
|
|
144
|
+
* Status should be interpreted as:
|
|
145
|
+
* - OPEN -> line can accept new work now
|
|
146
|
+
* - BUSY -> line is operational but currently occupied; queueing may still
|
|
147
|
+
* be allowed
|
|
148
|
+
* - CLOSED -> line is intentionally unavailable
|
|
149
|
+
* - BLOCKED -> line is unavailable due to fault, safety state, maintenance,
|
|
150
|
+
* or similar blocking condition
|
|
151
|
+
*
|
|
152
|
+
* This field is operational and should be considered together with
|
|
153
|
+
* max_concurrent_processes and the statuses of child cells/stations.
|
|
154
|
+
*
|
|
155
|
+
* @generated from enum resources.v1.LineStatus
|
|
156
|
+
*/
|
|
157
|
+
export enum LineStatus {
|
|
158
|
+
/**
|
|
159
|
+
* @generated from enum value: LINE_STATUS_UNSPECIFIED = 0;
|
|
160
|
+
*/
|
|
161
|
+
UNSPECIFIED = 0,
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Line can accept new work now.
|
|
165
|
+
*
|
|
166
|
+
* @generated from enum value: LINE_STATUS_OPEN = 1;
|
|
167
|
+
*/
|
|
168
|
+
OPEN = 1,
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Line is currently occupied by one or more active runs.
|
|
172
|
+
* Depending on policy, new runs may still be queued.
|
|
173
|
+
*
|
|
174
|
+
* @generated from enum value: LINE_STATUS_BUSY = 2;
|
|
175
|
+
*/
|
|
176
|
+
BUSY = 2,
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* Line is intentionally unavailable for loading or running work.
|
|
180
|
+
*
|
|
181
|
+
* @generated from enum value: LINE_STATUS_CLOSED = 3;
|
|
182
|
+
*/
|
|
183
|
+
CLOSED = 3,
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Line is temporarily unavailable due to fault, interlock,
|
|
187
|
+
* maintenance state, or similar blocking condition.
|
|
188
|
+
*
|
|
189
|
+
* @generated from enum value: LINE_STATUS_BLOCKED = 4;
|
|
190
|
+
*/
|
|
191
|
+
BLOCKED = 4,
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* Describes the enum resources.v1.LineStatus.
|
|
196
|
+
*/
|
|
197
|
+
export const LineStatusSchema: GenEnum<LineStatus> = /*@__PURE__*/
|
|
198
|
+
enumDesc(file_resources_v1_line_definition, 1);
|
|
199
|
+
|
|
@@ -16,9 +16,21 @@ import type { Message } from "@bufbuild/protobuf";
|
|
|
16
16
|
* Describes the file resources/v1/station_definition.proto.
|
|
17
17
|
*/
|
|
18
18
|
export const file_resources_v1_station_definition: GenFile = /*@__PURE__*/
|
|
19
|
-
fileDesc("
|
|
19
|
+
fileDesc("CiVyZXNvdXJjZXMvdjEvc3RhdGlvbl9kZWZpbml0aW9uLnByb3RvEgxyZXNvdXJjZXMudjEiigQKEVN0YXRpb25EZWZpbml0aW9uEgoKAmlkGAEgASgJEhcKBG5hbWUYAiABKAlCCbpIBnIEgPEEARITCgtkZXNjcmlwdGlvbhgDIAEoCRIMCgRpY29uGAQgASgJEjEKBHR5cGUYBSABKA4yGS5yZXNvdXJjZXMudjEuU3RhdGlvblR5cGVCCLpIBYIBAhABEjUKBnN0YXR1cxgGIAEoDjIbLnJlc291cmNlcy52MS5TdGF0aW9uU3RhdHVzQgi6SAWCAQIQARIpChhtYXhfY29uY3VycmVudF9wcm9jZXNzZXMYByABKAVCB7pIBBoCKAASHAoUYWxsb3dfcXVldWVkX3Byb2Nlc3MYCCABKAgSGQoRdG9vbF9pbnN0YW5jZV9pZHMYCSADKAkSHgoWY29udGFpbmVyX2luc3RhbmNlX2lkcxgKIAMoCRIaChJyb2JvdF9pbnN0YW5jZV9pZHMYCyADKAkSGgoSYXNzZXRfaW5zdGFuY2VfaWRzGAwgAygJEhsKE21hcmtlcl9pbnN0YW5jZV9pZHMYDSADKAkSEgoKd29ya2VyX2lkcxgOIAMoCRIpCgVmcmFtZRgPIAEoCzIaLmdlb21ldHJ5LnYxLkxvY2FsaXplZFBvc2USKwoGY3VzdG9tGBAgASgLMhsuY29tbW9uLnYxLkN1c3RvbVByb3BlcnRpZXMiRAoSU3RhdGlvbkRlZmluaXRpb25zEi4KBWl0ZW1zGAEgAygLMh8ucmVzb3VyY2VzLnYxLlN0YXRpb25EZWZpbml0aW9uKqsBCgtTdGF0aW9uVHlwZRIcChhTVEFUSU9OX1RZUEVfVU5TUEVDSUZJRUQQABIYChRTVEFUSU9OX1RZUEVfU1RPUkFHRRABEh8KG1NUQVRJT05fVFlQRV9NQU5VQUxfU1RBVElPThACEiIKHlNUQVRJT05fVFlQRV9BVVRPTUFUSUNfU1RBVElPThADEh8KG1NUQVRJT05fVFlQRV9IWUJSSURfU1RBVElPThAEKpgBCg1TdGF0aW9uU3RhdHVzEh4KGlNUQVRJT05fU1RBVFVTX1VOU1BFQ0lGSUVEEAASFwoTU1RBVElPTl9TVEFUVVNfT1BFThABEhcKE1NUQVRJT05fU1RBVFVTX0JVU1kQAhIZChVTVEFUSU9OX1NUQVRVU19DTE9TRUQQAxIaChZTVEFUSU9OX1NUQVRVU19CTE9DS0VEEARCwwEKEGNvbS5yZXNvdXJjZXMudjFCFlN0YXRpb25EZWZpbml0aW9uUHJvdG9QAVo9Z2l0aHViLmNvbS9jb2JvdGFyL3Byb3RvY29sL21lc3NhZ2VzL3Jlc291cmNlcy92MTtyZXNvdXJjZXN2MaICA1JYWKoCFU1lc3NhZ2VzLlJlc291cmNlcy5WMcoCDFJlc291cmNlc1xWMeICGFJlc291cmNlc1xWMVxHUEJNZXRhZGF0YeoCDVJlc291cmNlczo6VjFiBnByb3RvMw", [file_buf_validate_validate, file_common_v1_custom_properties, file_geometry_v1_pose, file_validation_v1_predefined_string_rules]);
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
+
* StationDefinition describes a concrete execution point inside a cell or line.
|
|
23
|
+
*
|
|
24
|
+
* A station is the most specific location where work is typically loaded,
|
|
25
|
+
* queued, executed, and tracked at runtime. Stations are therefore the primary
|
|
26
|
+
* target for task/resource matching in loader/planner logic.
|
|
27
|
+
*
|
|
28
|
+
* Typical station responsibilities:
|
|
29
|
+
* - host concrete task execution
|
|
30
|
+
* - own station-local tools, containers, robots, markers, and frame
|
|
31
|
+
* - expose operational state such as OPEN/BUSY/CLOSED/BLOCKED
|
|
32
|
+
* - optionally allow queueing when already occupied
|
|
33
|
+
*
|
|
22
34
|
* @generated from message resources.v1.StationDefinition
|
|
23
35
|
*/
|
|
24
36
|
export type StationDefinition = Message<"resources.v1.StationDefinition"> & {
|
|
@@ -43,51 +55,84 @@ export type StationDefinition = Message<"resources.v1.StationDefinition"> & {
|
|
|
43
55
|
icon: string;
|
|
44
56
|
|
|
45
57
|
/**
|
|
58
|
+
* Broad station classification, e.g. manual, automatic, or hybrid.
|
|
59
|
+
*
|
|
46
60
|
* @generated from field: resources.v1.StationType type = 5;
|
|
47
61
|
*/
|
|
48
62
|
type: StationType;
|
|
49
63
|
|
|
50
64
|
/**
|
|
51
|
-
*
|
|
65
|
+
* Current operational availability used by loaders, planners, and UIs.
|
|
66
|
+
*
|
|
67
|
+
* @generated from field: resources.v1.StationStatus status = 6;
|
|
68
|
+
*/
|
|
69
|
+
status: StationStatus;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Maximum number of active/queued processes this station should host concurrently.
|
|
73
|
+
*
|
|
74
|
+
* @generated from field: int32 max_concurrent_processes = 7;
|
|
75
|
+
*/
|
|
76
|
+
maxConcurrentProcesses: number;
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* If true, loaders may create queued ProcessRuns when the station is BUSY.
|
|
80
|
+
*
|
|
81
|
+
* @generated from field: bool allow_queued_process = 8;
|
|
82
|
+
*/
|
|
83
|
+
allowQueuedProcess: boolean;
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Station-local tools mounted, parked, or otherwise directly available here.
|
|
87
|
+
*
|
|
88
|
+
* @generated from field: repeated string tool_instance_ids = 9;
|
|
52
89
|
*/
|
|
53
90
|
toolInstanceIds: string[];
|
|
54
91
|
|
|
55
92
|
/**
|
|
56
|
-
*
|
|
93
|
+
* Station-local fixtures, trays, pallets, bins, or other concrete containers.
|
|
94
|
+
*
|
|
95
|
+
* @generated from field: repeated string container_instance_ids = 10;
|
|
57
96
|
*/
|
|
58
97
|
containerInstanceIds: string[];
|
|
59
98
|
|
|
60
99
|
/**
|
|
61
|
-
*
|
|
100
|
+
* Robots directly assigned to or executing within this station.
|
|
101
|
+
*
|
|
102
|
+
* @generated from field: repeated string robot_instance_ids = 11;
|
|
62
103
|
*/
|
|
63
104
|
robotInstanceIds: string[];
|
|
64
105
|
|
|
65
106
|
/**
|
|
66
|
-
*
|
|
107
|
+
* Station-local assets such as cameras, HMIs, feeders, or sensors.
|
|
108
|
+
*
|
|
109
|
+
* @generated from field: repeated string asset_instance_ids = 12;
|
|
67
110
|
*/
|
|
68
111
|
assetInstanceIds: string[];
|
|
69
112
|
|
|
70
113
|
/**
|
|
71
|
-
*
|
|
114
|
+
* Markers used specifically at this station for localization, AR anchoring, or identification.
|
|
72
115
|
*
|
|
73
|
-
* @generated from field: repeated string marker_instance_ids =
|
|
116
|
+
* @generated from field: repeated string marker_instance_ids = 13;
|
|
74
117
|
*/
|
|
75
118
|
markerInstanceIds: string[];
|
|
76
119
|
|
|
77
120
|
/**
|
|
78
|
-
*
|
|
121
|
+
* Workers explicitly assigned to this station. Use cell-level worker_ids for shared pools.
|
|
79
122
|
*
|
|
80
|
-
* @generated from field: repeated string worker_ids =
|
|
123
|
+
* @generated from field: repeated string worker_ids = 14;
|
|
81
124
|
*/
|
|
82
125
|
workerIds: string[];
|
|
83
126
|
|
|
84
127
|
/**
|
|
85
|
-
*
|
|
128
|
+
* Station-local reference frame used for runtime bindings, AR anchoring, and execution geometry.
|
|
129
|
+
*
|
|
130
|
+
* @generated from field: geometry.v1.LocalizedPose frame = 15;
|
|
86
131
|
*/
|
|
87
132
|
frame?: LocalizedPose;
|
|
88
133
|
|
|
89
134
|
/**
|
|
90
|
-
* @generated from field: common.v1.CustomProperties custom =
|
|
135
|
+
* @generated from field: common.v1.CustomProperties custom = 16;
|
|
91
136
|
*/
|
|
92
137
|
custom?: CustomProperties;
|
|
93
138
|
};
|
|
@@ -152,3 +197,64 @@ export enum StationType {
|
|
|
152
197
|
export const StationTypeSchema: GenEnum<StationType> = /*@__PURE__*/
|
|
153
198
|
enumDesc(file_resources_v1_station_definition, 0);
|
|
154
199
|
|
|
200
|
+
/**
|
|
201
|
+
* StationStatus describes whether a station can currently accept or execute work.
|
|
202
|
+
*
|
|
203
|
+
* This is an operational/runtime-oriented state used by loaders, planners,
|
|
204
|
+
* dispatchers, and UIs when deciding whether a ProcessRun can be started here.
|
|
205
|
+
*
|
|
206
|
+
* Status should be interpreted as:
|
|
207
|
+
* - OPEN -> can accept new work now
|
|
208
|
+
* - BUSY -> currently occupied; may still allow queueing
|
|
209
|
+
* - CLOSED -> intentionally unavailable for new work
|
|
210
|
+
* - BLOCKED -> unavailable due to a fault, interlock, maintenance lock, or
|
|
211
|
+
* other condition that should prevent execution
|
|
212
|
+
*
|
|
213
|
+
* A station may also expose capacity constraints through
|
|
214
|
+
* max_concurrent_processes, which is separate from this status field.
|
|
215
|
+
*
|
|
216
|
+
* @generated from enum resources.v1.StationStatus
|
|
217
|
+
*/
|
|
218
|
+
export enum StationStatus {
|
|
219
|
+
/**
|
|
220
|
+
* @generated from enum value: STATION_STATUS_UNSPECIFIED = 0;
|
|
221
|
+
*/
|
|
222
|
+
UNSPECIFIED = 0,
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* Station can accept new work now.
|
|
226
|
+
*
|
|
227
|
+
* @generated from enum value: STATION_STATUS_OPEN = 1;
|
|
228
|
+
*/
|
|
229
|
+
OPEN = 1,
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Station is currently occupied by one or more active runs.
|
|
233
|
+
* Depending on loader policy and allow_queued_process, new runs may be queued.
|
|
234
|
+
*
|
|
235
|
+
* @generated from enum value: STATION_STATUS_BUSY = 2;
|
|
236
|
+
*/
|
|
237
|
+
BUSY = 2,
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* Station is intentionally unavailable for loading or running work.
|
|
241
|
+
*
|
|
242
|
+
* @generated from enum value: STATION_STATUS_CLOSED = 3;
|
|
243
|
+
*/
|
|
244
|
+
CLOSED = 3,
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
* Station is temporarily unavailable due to fault, safety interlock,
|
|
248
|
+
* maintenance state, missing prerequisite, or similar blocking condition.
|
|
249
|
+
*
|
|
250
|
+
* @generated from enum value: STATION_STATUS_BLOCKED = 4;
|
|
251
|
+
*/
|
|
252
|
+
BLOCKED = 4,
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* Describes the enum resources.v1.StationStatus.
|
|
257
|
+
*/
|
|
258
|
+
export const StationStatusSchema: GenEnum<StationStatus> = /*@__PURE__*/
|
|
259
|
+
enumDesc(file_resources_v1_station_definition, 1);
|
|
260
|
+
|