@cobotar/protocol 0.19.5 → 0.19.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  # CobotAR-Protocol
2
2
  A collection of protobuf messages for the CobotAR-project
3
3
 
4
- Current version: 0.19.5
4
+ Current version: 0.19.6
5
5
 
6
6
  ## Documentation
7
7
  Find it here: [documentation/README.md](documentation/README.md)
@@ -16,9 +16,71 @@ import type { Message } from "@bufbuild/protobuf";
16
16
  * Describes the file capability/v1/actor_skill.proto.
17
17
  */
18
18
  export const file_capability_v1_actor_skill: GenFile = /*@__PURE__*/
19
- fileDesc("Ch9jYXBhYmlsaXR5L3YxL2FjdG9yX3NraWxsLnByb3RvEg1jYXBhYmlsaXR5LnYxIjcKEVZhbGlkaXR5UG9saWN5UmVmEhEKCXBvbGljeV9pZBgBIAEoCRIPCgd2ZXJzaW9uGAIgASgJItkECgpBY3RvclNraWxsEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDAoEaWNvbhgDIAEoCRIqCgVhY3RvchgEIAEoCzITLmNvbW1vbi52MS5BY3RvclJlZkIGukgDyAEBEh4KCHNraWxsX2lkGAUgASgJQgy6SAnIAQFyBIDyBAESNQoFbGV2ZWwYBiABKA4yGS5jYXBhYmlsaXR5LnYxLlNraWxsTGV2ZWxCC7pICMgBAYIBAhABEjQKBnN0YXR1cxgHIAEoDjIaLmNhcGFiaWxpdHkudjEuU2tpbGxTdGF0dXNCCLpIBYIBAhABEisKCmNvbmZpZGVuY2UYCCABKAFCF7pIFBISGQAAAAAAAPA/KQAAAAAAAAAAEh8KDmV2aWRlbmNlX2NvdW50GAkgASgFQge6SAQaAigAEh4KDWZhaWx1cmVfY291bnQYCiABKAVCB7pIBBoCKAASNAoQbGFzdF9ldmlkZW5jZV9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMwoPbGFzdF9mYWlsdXJlX2F0GAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIvCgt2YWxpZF91bnRpbBgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASOQoPdmFsaWRpdHlfcG9saWN5GA4gASgLMiAuY2FwYWJpbGl0eS52MS5WYWxpZGl0eVBvbGljeVJlZhIPCgdyZWFzb25zGA8gAygJEhQKDG5leHRfYWN0aW9ucxgQIAMoCSI3CgtBY3RvclNraWxscxIoCgVpdGVtcxgBIAMoCzIZLmNhcGFiaWxpdHkudjEuQWN0b3JTa2lsbCquAQoKU2tpbGxMZXZlbBIbChdTS0lMTF9MRVZFTF9VTlNQRUNJRklFRBAAEhsKF1NLSUxMX0xFVkVMX05PVF9BTExPV0VEEAESGAoUU0tJTExfTEVWRUxfQVNTSVNURUQQAhIZChVTS0lMTF9MRVZFTF9RVUFMSUZJRUQQAxIWChJTS0lMTF9MRVZFTF9FWFBFUlQQBBIZChVTS0lMTF9MRVZFTF9BVVRIT1JJVFkQBSp7CgtTa2lsbFN0YXR1cxIcChhTS0lMTF9TVEFUVVNfVU5TUEVDSUZJRUQQABIXChNTS0lMTF9TVEFUVVNfQUNUSVZFEAESGwoXU0tJTExfU1RBVFVTX1JFU1RSSUNURUQQAhIYChRTS0lMTF9TVEFUVVNfRVhQSVJFRBADQsMBChFjb20uY2FwYWJpbGl0eS52MUIPQWN0b3JTa2lsbFByb3RvUAFaP2dpdGh1Yi5jb20vY29ib3Rhci9wcm90b2NvbC9tZXNzYWdlcy9jYXBhYmlsaXR5L3YxO2NhcGFiaWxpdHl2MaICA0NYWKoCFk1lc3NhZ2VzLkNhcGFiaWxpdHkuVjHKAg1DYXBhYmlsaXR5XFYx4gIZQ2FwYWJpbGl0eVxWMVxHUEJNZXRhZGF0YeoCDkNhcGFiaWxpdHk6OlYxYgZwcm90bzM", [file_buf_validate_validate, file_common_v1_actor, file_google_protobuf_timestamp, file_validation_v1_predefined_string_rules]);
19
+ fileDesc("Ch9jYXBhYmlsaXR5L3YxL2FjdG9yX3NraWxsLnByb3RvEg1jYXBhYmlsaXR5LnYxIqMCChJTa2lsbEV2aWRlbmNlU3RhdHMSHgoNc3VjY2Vzc19jb3VudBgBIAEoBUIHukgEGgIoABIeCg1mYWlsdXJlX2NvdW50GAIgASgFQge6SAQaAigAEjMKD2xhc3Rfc3VjY2Vzc19hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMwoPbGFzdF9mYWlsdXJlX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI0ChBsYXN0X2FjdGl2aXR5X2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBItChRyb2xsaW5nX3N1Y2Nlc3NfcmF0ZRgGIAEoAkIPukgMCgodAACAPy0AAAAAIjcKEVZhbGlkaXR5UG9saWN5UmVmEhEKCXBvbGljeV9pZBgBIAEoCRIPCgd2ZXJzaW9uGAIgASgJIq4FCgpBY3RvclNraWxsEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDAoEaWNvbhgDIAEoCRIqCgVhY3RvchgEIAEoCzITLmNvbW1vbi52MS5BY3RvclJlZkIGukgDyAEBEh4KCHNraWxsX2lkGAUgASgJQgy6SAnIAQFyBIDyBAESNQoFbGV2ZWwYBiABKA4yGS5jYXBhYmlsaXR5LnYxLlNraWxsTGV2ZWxCC7pICMgBAYIBAhABEjQKBnN0YXR1cxgHIAEoDjIaLmNhcGFiaWxpdHkudjEuU2tpbGxTdGF0dXNCCLpIBYIBAhABEikKEGNvbmZpZGVuY2Vfc2NvcmUYCCABKAJCD7pIDAoKHQAAgD8tAAAAABIwCgVzdGF0cxgJIAEoCzIhLmNhcGFiaWxpdHkudjEuU2tpbGxFdmlkZW5jZVN0YXRzEjQKEGxhc3RfdHJhaW5pbmdfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjUKEWxhc3RfY2VydGlmaWVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIvCgt2YWxpZF91bnRpbBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASOQoPdmFsaWRpdHlfcG9saWN5GA0gASgLMiAuY2FwYWJpbGl0eS52MS5WYWxpZGl0eVBvbGljeVJlZhJECgdyZWFzb25zGA4gAygOMiQuY2FwYWJpbGl0eS52MS5Ta2lsbEludmFsaWRpdHlSZWFzb25CDbpICpIBByIFggECEAESQwoMbmV4dF9hY3Rpb25zGA8gAygOMh4uY2FwYWJpbGl0eS52MS5Ta2lsbE5leHRBY3Rpb25CDbpICpIBByIFggECEAEiNwoLQWN0b3JTa2lsbHMSKAoFaXRlbXMYASADKAsyGS5jYXBhYmlsaXR5LnYxLkFjdG9yU2tpbGwqrgEKClNraWxsTGV2ZWwSGwoXU0tJTExfTEVWRUxfVU5TUEVDSUZJRUQQABIbChdTS0lMTF9MRVZFTF9OT1RfQUxMT1dFRBABEhgKFFNLSUxMX0xFVkVMX0FTU0lTVEVEEAISGQoVU0tJTExfTEVWRUxfUVVBTElGSUVEEAMSFgoSU0tJTExfTEVWRUxfRVhQRVJUEAQSGQoVU0tJTExfTEVWRUxfQVVUSE9SSVRZEAUqewoLU2tpbGxTdGF0dXMSHAoYU0tJTExfU1RBVFVTX1VOU1BFQ0lGSUVEEAASFwoTU0tJTExfU1RBVFVTX0FDVElWRRABEhsKF1NLSUxMX1NUQVRVU19SRVNUUklDVEVEEAISGAoUU0tJTExfU1RBVFVTX0VYUElSRUQQAyqHAgoVU2tpbGxJbnZhbGlkaXR5UmVhc29uEiwKKFNLSUxMX0lOVkFMSURJVFlfUkVBU09OX0NPREVfVU5TUEVDSUZJRUQQABIrCidTS0lMTF9JTlZBTElESVRZX1JFQVNPTl9DT0RFX0lOQUNUSVZJVFkQARItCilTS0lMTF9JTlZBTElESVRZX1JFQVNPTl9DT0RFX0ZBSUxVUkVfUkFURRACEi8KK1NLSUxMX0lOVkFMSURJVFlfUkVBU09OX0NPREVfUE9MSUNZX0VYUElSRUQQAxIzCi9TS0lMTF9JTlZBTElESVRZX1JFQVNPTl9DT0RFX0VOR0lORUVSSU5HX0NIQU5HRRAEKpECCg9Ta2lsbE5leHRBY3Rpb24SIQodU0tJTExfTkVYVF9BQ1RJT05fVU5TUEVDSUZJRUQQABIkCiBTS0lMTF9ORVhUX0FDVElPTl9NSUNST19UUkFJTklORxABEigKJFNLSUxMX05FWFRfQUNUSU9OX1JFRlJFU0hFUl9UUkFJTklORxACEiYKIlNLSUxMX05FWFRfQUNUSU9OX1JFX0NFUlRJRklDQVRJT04QAxIvCitTS0lMTF9ORVhUX0FDVElPTl9FWFRSQV9WQUxJREFUSU9OX1JFUVVJUkVEEAQSMgouU0tJTExfTkVYVF9BQ1RJT05fU1VQRVJWSVNPUl9BUFBST1ZBTF9SRVFVSVJFRBAFQsMBChFjb20uY2FwYWJpbGl0eS52MUIPQWN0b3JTa2lsbFByb3RvUAFaP2dpdGh1Yi5jb20vY29ib3Rhci9wcm90b2NvbC9tZXNzYWdlcy9jYXBhYmlsaXR5L3YxO2NhcGFiaWxpdHl2MaICA0NYWKoCFk1lc3NhZ2VzLkNhcGFiaWxpdHkuVjHKAg1DYXBhYmlsaXR5XFYx4gIZQ2FwYWJpbGl0eVxWMVxHUEJNZXRhZGF0YeoCDkNhcGFiaWxpdHk6OlYxYgZwcm90bzM", [file_buf_validate_validate, file_common_v1_actor, file_google_protobuf_timestamp, file_validation_v1_predefined_string_rules]);
20
20
 
21
21
  /**
22
+ * SkillEvidenceStats is a lightweight aggregated summary of recent evidence
23
+ * relevant to one actor + one skill.
24
+ *
25
+ * This is intended for fast runtime decisions and policy evaluation. It is
26
+ * typically derived from underlying execution evidence and training/certification
27
+ * events rather than being treated as the primary source of truth.
28
+ *
29
+ * The effective aggregation window is policy-dependent. For example, a policy
30
+ * may consider only the last N executions, the last N days, or all evidence
31
+ * since the most recent certification.
32
+ *
33
+ * @generated from message capability.v1.SkillEvidenceStats
34
+ */
35
+ export type SkillEvidenceStats = Message<"capability.v1.SkillEvidenceStats"> & {
36
+ /**
37
+ * Aggregated successful executions/evidence in the active evaluation window.
38
+ *
39
+ * @generated from field: int32 success_count = 1;
40
+ */
41
+ successCount: number;
42
+
43
+ /**
44
+ * Aggregated failed executions/evidence in the active evaluation window.
45
+ *
46
+ * @generated from field: int32 failure_count = 2;
47
+ */
48
+ failureCount: number;
49
+
50
+ /**
51
+ * @generated from field: google.protobuf.Timestamp last_success_at = 3;
52
+ */
53
+ lastSuccessAt?: Timestamp;
54
+
55
+ /**
56
+ * @generated from field: google.protobuf.Timestamp last_failure_at = 4;
57
+ */
58
+ lastFailureAt?: Timestamp;
59
+
60
+ /**
61
+ * @generated from field: google.protobuf.Timestamp last_activity_at = 5;
62
+ */
63
+ lastActivityAt?: Timestamp;
64
+
65
+ /**
66
+ * Optional derived metric in [0,1].
67
+ *
68
+ * @generated from field: float rolling_success_rate = 6;
69
+ */
70
+ rollingSuccessRate: number;
71
+ };
72
+
73
+ /**
74
+ * Describes the message capability.v1.SkillEvidenceStats.
75
+ * Use `create(SkillEvidenceStatsSchema)` to create a new message.
76
+ */
77
+ export const SkillEvidenceStatsSchema: GenMessage<SkillEvidenceStats> = /*@__PURE__*/
78
+ messageDesc(file_capability_v1_actor_skill, 0);
79
+
80
+ /**
81
+ * ValidityPolicyRef identifies the policy definition and version currently used
82
+ * to derive validity, degradation, and recovery behavior for this actor skill.
83
+ *
22
84
  * @generated from message capability.v1.ValidityPolicyRef
23
85
  */
24
86
  export type ValidityPolicyRef = Message<"capability.v1.ValidityPolicyRef"> & {
@@ -38,9 +100,21 @@ export type ValidityPolicyRef = Message<"capability.v1.ValidityPolicyRef"> & {
38
100
  * Use `create(ValidityPolicyRefSchema)` to create a new message.
39
101
  */
40
102
  export const ValidityPolicyRefSchema: GenMessage<ValidityPolicyRef> = /*@__PURE__*/
41
- messageDesc(file_capability_v1_actor_skill, 0);
103
+ messageDesc(file_capability_v1_actor_skill, 1);
42
104
 
43
105
  /**
106
+ * ActorSkill stores the current operational summary of one skill for one actor.
107
+ *
108
+ * It is intentionally a fast, runtime-friendly summary layer rather than a full
109
+ * audit log. Runtime planners/loaders should use this message to determine
110
+ * whether an actor is:
111
+ * - allowed
112
+ * - restricted
113
+ * - expired
114
+ *
115
+ * ExecutionEvidence and training/certification events are expected to update
116
+ * this summary over time.
117
+ *
44
118
  * @generated from message capability.v1.ActorSkill
45
119
  */
46
120
  export type ActorSkill = Message<"capability.v1.ActorSkill"> & {
@@ -80,63 +154,56 @@ export type ActorSkill = Message<"capability.v1.ActorSkill"> & {
80
154
  status: SkillStatus;
81
155
 
82
156
  /**
83
- * [0, 1]
157
+ * Optional derived confidence/proficiency score in [0,1].
84
158
  *
85
- * @generated from field: double confidence = 8;
159
+ * @generated from field: float confidence_score = 8;
86
160
  */
87
- confidence: number;
161
+ confidenceScore: number;
88
162
 
89
163
  /**
90
- * since last training
164
+ * Aggregated evidence summary used for fast runtime decisions.
91
165
  *
92
- * @generated from field: int32 evidence_count = 9;
166
+ * @generated from field: capability.v1.SkillEvidenceStats stats = 9;
93
167
  */
94
- evidenceCount: number;
168
+ stats?: SkillEvidenceStats;
95
169
 
96
170
  /**
97
- * since last training
171
+ * Most recent training/refresher event relevant to this skill.
98
172
  *
99
- * @generated from field: int32 failure_count = 10;
100
- */
101
- failureCount: number;
102
-
103
- /**
104
- * @generated from field: google.protobuf.Timestamp last_evidence_at = 11;
173
+ * @generated from field: google.protobuf.Timestamp last_training_at = 10;
105
174
  */
106
- lastEvidenceAt?: Timestamp;
175
+ lastTrainingAt?: Timestamp;
107
176
 
108
177
  /**
109
- * @generated from field: google.protobuf.Timestamp last_failure_at = 12;
178
+ * Most recent formal certification/re-certification event.
179
+ *
180
+ * @generated from field: google.protobuf.Timestamp last_certified_at = 11;
110
181
  */
111
- lastFailureAt?: Timestamp;
182
+ lastCertifiedAt?: Timestamp;
112
183
 
113
184
  /**
114
- * (timestamp) or policy-derived
185
+ * Explicit validity limit if known, otherwise policy-derived.
115
186
  *
116
- * @generated from field: google.protobuf.Timestamp valid_until = 13;
187
+ * @generated from field: google.protobuf.Timestamp valid_until = 12;
117
188
  */
118
189
  validUntil?: Timestamp;
119
190
 
120
191
  /**
121
- * which rule set is used
192
+ * Policy currently used to evaluate status/validity.
122
193
  *
123
- * @generated from field: capability.v1.ValidityPolicyRef validity_policy = 14;
194
+ * @generated from field: capability.v1.ValidityPolicyRef validity_policy = 13;
124
195
  */
125
196
  validityPolicy?: ValidityPolicyRef;
126
197
 
127
198
  /**
128
- * ["inactivity_>30d"]
129
- *
130
- * @generated from field: repeated string reasons = 15;
199
+ * @generated from field: repeated capability.v1.SkillInvalidityReason reasons = 14;
131
200
  */
132
- reasons: string[];
201
+ reasons: SkillInvalidityReason[];
133
202
 
134
203
  /**
135
- * ["micro_training", "extra_verification_required"]
136
- *
137
- * @generated from field: repeated string next_actions = 16;
204
+ * @generated from field: repeated capability.v1.SkillNextAction next_actions = 15;
138
205
  */
139
- nextActions: string[];
206
+ nextActions: SkillNextAction[];
140
207
  };
141
208
 
142
209
  /**
@@ -144,7 +211,7 @@ export type ActorSkill = Message<"capability.v1.ActorSkill"> & {
144
211
  * Use `create(ActorSkillSchema)` to create a new message.
145
212
  */
146
213
  export const ActorSkillSchema: GenMessage<ActorSkill> = /*@__PURE__*/
147
- messageDesc(file_capability_v1_actor_skill, 1);
214
+ messageDesc(file_capability_v1_actor_skill, 2);
148
215
 
149
216
  /**
150
217
  * @generated from message capability.v1.ActorSkills
@@ -161,7 +228,7 @@ export type ActorSkills = Message<"capability.v1.ActorSkills"> & {
161
228
  * Use `create(ActorSkillsSchema)` to create a new message.
162
229
  */
163
230
  export const ActorSkillsSchema: GenMessage<ActorSkills> = /*@__PURE__*/
164
- messageDesc(file_capability_v1_actor_skill, 2);
231
+ messageDesc(file_capability_v1_actor_skill, 3);
165
232
 
166
233
  /**
167
234
  *
@@ -282,3 +349,80 @@ export enum SkillStatus {
282
349
  export const SkillStatusSchema: GenEnum<SkillStatus> = /*@__PURE__*/
283
350
  enumDesc(file_capability_v1_actor_skill, 1);
284
351
 
352
+ /**
353
+ * @generated from enum capability.v1.SkillInvalidityReason
354
+ */
355
+ export enum SkillInvalidityReason {
356
+ /**
357
+ * @generated from enum value: SKILL_INVALIDITY_REASON_CODE_UNSPECIFIED = 0;
358
+ */
359
+ CODE_UNSPECIFIED = 0,
360
+
361
+ /**
362
+ * @generated from enum value: SKILL_INVALIDITY_REASON_CODE_INACTIVITY = 1;
363
+ */
364
+ CODE_INACTIVITY = 1,
365
+
366
+ /**
367
+ * @generated from enum value: SKILL_INVALIDITY_REASON_CODE_FAILURE_RATE = 2;
368
+ */
369
+ CODE_FAILURE_RATE = 2,
370
+
371
+ /**
372
+ * @generated from enum value: SKILL_INVALIDITY_REASON_CODE_POLICY_EXPIRED = 3;
373
+ */
374
+ CODE_POLICY_EXPIRED = 3,
375
+
376
+ /**
377
+ * @generated from enum value: SKILL_INVALIDITY_REASON_CODE_ENGINEERING_CHANGE = 4;
378
+ */
379
+ CODE_ENGINEERING_CHANGE = 4,
380
+ }
381
+
382
+ /**
383
+ * Describes the enum capability.v1.SkillInvalidityReason.
384
+ */
385
+ export const SkillInvalidityReasonSchema: GenEnum<SkillInvalidityReason> = /*@__PURE__*/
386
+ enumDesc(file_capability_v1_actor_skill, 2);
387
+
388
+ /**
389
+ * @generated from enum capability.v1.SkillNextAction
390
+ */
391
+ export enum SkillNextAction {
392
+ /**
393
+ * @generated from enum value: SKILL_NEXT_ACTION_UNSPECIFIED = 0;
394
+ */
395
+ UNSPECIFIED = 0,
396
+
397
+ /**
398
+ * @generated from enum value: SKILL_NEXT_ACTION_MICRO_TRAINING = 1;
399
+ */
400
+ MICRO_TRAINING = 1,
401
+
402
+ /**
403
+ * @generated from enum value: SKILL_NEXT_ACTION_REFRESHER_TRAINING = 2;
404
+ */
405
+ REFRESHER_TRAINING = 2,
406
+
407
+ /**
408
+ * @generated from enum value: SKILL_NEXT_ACTION_RE_CERTIFICATION = 3;
409
+ */
410
+ RE_CERTIFICATION = 3,
411
+
412
+ /**
413
+ * @generated from enum value: SKILL_NEXT_ACTION_EXTRA_VALIDATION_REQUIRED = 4;
414
+ */
415
+ EXTRA_VALIDATION_REQUIRED = 4,
416
+
417
+ /**
418
+ * @generated from enum value: SKILL_NEXT_ACTION_SUPERVISOR_APPROVAL_REQUIRED = 5;
419
+ */
420
+ SUPERVISOR_APPROVAL_REQUIRED = 5,
421
+ }
422
+
423
+ /**
424
+ * Describes the enum capability.v1.SkillNextAction.
425
+ */
426
+ export const SkillNextActionSchema: GenEnum<SkillNextAction> = /*@__PURE__*/
427
+ enumDesc(file_capability_v1_actor_skill, 3);
428
+
@@ -7,6 +7,10 @@ import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
7
7
  import { file_buf_validate_validate } from "../../buf/validate/validate_pb.ts";
8
8
  import type { ProcessRecipe } from "./process_recipe_pb.ts";
9
9
  import { file_process_v1_process_recipe } from "./process_recipe_pb.ts";
10
+ import type { SequenceDefinition } from "./sequence_definition_pb.ts";
11
+ import { file_process_v1_sequence_definition } from "./sequence_definition_pb.ts";
12
+ import type { TaskDefinition } from "./task_definition_pb.ts";
13
+ import { file_process_v1_task_definition } from "./task_definition_pb.ts";
10
14
  import type { VariantConfiguration } from "../../variance/v1/variant_configuration_pb.ts";
11
15
  import { file_variance_v1_variant_configuration } from "../../variance/v1/variant_configuration_pb.ts";
12
16
  import type { Message } from "@bufbuild/protobuf";
@@ -15,7 +19,7 @@ import type { Message } from "@bufbuild/protobuf";
15
19
  * Describes the file process/v1/generation_requests.proto.
16
20
  */
17
21
  export const file_process_v1_generation_requests: GenFile = /*@__PURE__*/
18
- fileDesc("CiRwcm9jZXNzL3YxL2dlbmVyYXRpb25fcmVxdWVzdHMucHJvdG8SCnByb2Nlc3MudjEiygMKIURyYWZ0UHJvY2Vzc1JlY2lwZUdlbmVyYXRlUmVxdWVzdBIlChVwcm9kdWN0X2RlZmluaXRpb25faWQYASABKAlCBrpIA8gBARIZCglyZWNpcGVfaWQYAiABKAlCBrpIA8gBARITCgtyZWNpcGVfbmFtZRgDIAEoCRITCgtyZWNpcGVfaWNvbhgEIAEoCRIaChJyZWNpcGVfZGVzY3JpcHRpb24YBSABKAkSQAoVdmFyaWFudF9jb25maWd1cmF0aW9uGAYgASgLMiEudmFyaWFuY2UudjEuVmFyaWFudENvbmZpZ3VyYXRpb24SKAogaW5zZXJ0X2FsaWduX2JlZm9yZV9mYXN0ZW5fZ3JvdXAYByABKAgSIQoZZ3JvdXBfZmFzdGVuZXJzX3RocmVzaG9sZBgIIAEoBRImCh5ncm91cF9yZXBlYXRlZF9wYXJ0c190aHJlc2hvbGQYCSABKAUSHQoVZ2VuZXJhdGVfdmVyaWZ5X3Rhc2tzGAogASgIEicKH3ByZWZlcl9tb3ZlX3Rhc2tzX3doZW5fcG9zc2libGUYCyABKAgSHgoWaW5jbHVkZV9vcHRpb25hbF9ub2RlcxgMIAEoCCJvCh9EcmFmdFByb2Nlc3NSZWNpcGVHZW5lcmF0ZUlzc3VlEhcKB21lc3NhZ2UYASABKAlCBrpIA8gBARIXCgdub2RlX2lkGAIgASgJQga6SAPIAQESGgoScGFydF9kZWZpbml0aW9uX2lkGAMgASgJIpIBCiBEcmFmdFByb2Nlc3NSZWNpcGVHZW5lcmF0ZVJlc3VsdBIxCgZyZWNpcGUYASABKAsyGS5wcm9jZXNzLnYxLlByb2Nlc3NSZWNpcGVCBrpIA8gBARI7CgZpc3N1ZXMYAiADKAsyKy5wcm9jZXNzLnYxLkRyYWZ0UHJvY2Vzc1JlY2lwZUdlbmVyYXRlSXNzdWVCtgEKDmNvbS5wcm9jZXNzLnYxQhdHZW5lcmF0aW9uUmVxdWVzdHNQcm90b1ABWjlnaXRodWIuY29tL2NvYm90YXIvcHJvdG9jb2wvbWVzc2FnZXMvcHJvY2Vzcy92MTtwcm9jZXNzdjGiAgNQWFiqAhNNZXNzYWdlcy5Qcm9jZXNzLlYxygIKUHJvY2Vzc1xWMeICFlByb2Nlc3NcVjFcR1BCTWV0YWRhdGHqAgtQcm9jZXNzOjpWMWIGcHJvdG8z", [file_buf_validate_validate, file_process_v1_process_recipe, file_variance_v1_variant_configuration]);
22
+ fileDesc("CiRwcm9jZXNzL3YxL2dlbmVyYXRpb25fcmVxdWVzdHMucHJvdG8SCnByb2Nlc3MudjEiygMKIURyYWZ0UHJvY2Vzc1JlY2lwZUdlbmVyYXRlUmVxdWVzdBIlChVwcm9kdWN0X2RlZmluaXRpb25faWQYASABKAlCBrpIA8gBARIZCglyZWNpcGVfaWQYAiABKAlCBrpIA8gBARITCgtyZWNpcGVfbmFtZRgDIAEoCRITCgtyZWNpcGVfaWNvbhgEIAEoCRIaChJyZWNpcGVfZGVzY3JpcHRpb24YBSABKAkSQAoVdmFyaWFudF9jb25maWd1cmF0aW9uGAYgASgLMiEudmFyaWFuY2UudjEuVmFyaWFudENvbmZpZ3VyYXRpb24SKAogaW5zZXJ0X2FsaWduX2JlZm9yZV9mYXN0ZW5fZ3JvdXAYByABKAgSIQoZZ3JvdXBfZmFzdGVuZXJzX3RocmVzaG9sZBgIIAEoBRImCh5ncm91cF9yZXBlYXRlZF9wYXJ0c190aHJlc2hvbGQYCSABKAUSHQoVZ2VuZXJhdGVfdmVyaWZ5X3Rhc2tzGAogASgIEicKH3ByZWZlcl9tb3ZlX3Rhc2tzX3doZW5fcG9zc2libGUYCyABKAgSHgoWaW5jbHVkZV9vcHRpb25hbF9ub2RlcxgMIAEoCCJvCh9EcmFmdFByb2Nlc3NSZWNpcGVHZW5lcmF0ZUlzc3VlEhcKB21lc3NhZ2UYASABKAlCBrpIA8gBARIXCgdub2RlX2lkGAIgASgJQga6SAPIAQESGgoScGFydF9kZWZpbml0aW9uX2lkGAMgASgJIvABCiBEcmFmdFByb2Nlc3NSZWNpcGVHZW5lcmF0ZVJlc3VsdBIxCgZyZWNpcGUYASABKAsyGS5wcm9jZXNzLnYxLlByb2Nlc3NSZWNpcGVCBrpIA8gBARIxCglzZXF1ZW5jZXMYAiADKAsyHi5wcm9jZXNzLnYxLlNlcXVlbmNlRGVmaW5pdGlvbhIpCgV0YXNrcxgDIAMoCzIaLnByb2Nlc3MudjEuVGFza0RlZmluaXRpb24SOwoGaXNzdWVzGAQgAygLMisucHJvY2Vzcy52MS5EcmFmdFByb2Nlc3NSZWNpcGVHZW5lcmF0ZUlzc3VlQrYBCg5jb20ucHJvY2Vzcy52MUIXR2VuZXJhdGlvblJlcXVlc3RzUHJvdG9QAVo5Z2l0aHViLmNvbS9jb2JvdGFyL3Byb3RvY29sL21lc3NhZ2VzL3Byb2Nlc3MvdjE7cHJvY2Vzc3YxogIDUFhYqgITTWVzc2FnZXMuUHJvY2Vzcy5WMcoCClByb2Nlc3NcVjHiAhZQcm9jZXNzXFYxXEdQQk1ldGFkYXRh6gILUHJvY2Vzczo6VjFiBnByb3RvMw", [file_buf_validate_validate, file_process_v1_process_recipe, file_process_v1_sequence_definition, file_process_v1_task_definition, file_variance_v1_variant_configuration]);
19
23
 
20
24
  /**
21
25
  * DraftProcessRecipeGenerateRequest asks the backend to generate a draft
@@ -166,7 +170,17 @@ export type DraftProcessRecipeGenerateResult = Message<"process.v1.DraftProcessR
166
170
  recipe?: ProcessRecipe;
167
171
 
168
172
  /**
169
- * @generated from field: repeated process.v1.DraftProcessRecipeGenerateIssue issues = 2;
173
+ * @generated from field: repeated process.v1.SequenceDefinition sequences = 2;
174
+ */
175
+ sequences: SequenceDefinition[];
176
+
177
+ /**
178
+ * @generated from field: repeated process.v1.TaskDefinition tasks = 3;
179
+ */
180
+ tasks: TaskDefinition[];
181
+
182
+ /**
183
+ * @generated from field: repeated process.v1.DraftProcessRecipeGenerateIssue issues = 4;
170
184
  */
171
185
  issues: DraftProcessRecipeGenerateIssue[];
172
186
  };
@@ -16,7 +16,7 @@ import type { Message } from "@bufbuild/protobuf";
16
16
  * Describes the file process/v1/process_recipe.proto.
17
17
  */
18
18
  export const file_process_v1_process_recipe: GenFile = /*@__PURE__*/
19
- fileDesc("Ch9wcm9jZXNzL3YxL3Byb2Nlc3NfcmVjaXBlLnByb3RvEgpwcm9jZXNzLnYxImsKE1JlY2lwZUFwcGxpY2FiaWxpdHkSKQoHaW5jbHVkZRgBIAMoCzIYLnZhcmlhbmNlLnYxLlZhcmlhbnRSdWxlEikKB2V4Y2x1ZGUYAiADKAsyGC52YXJpYW5jZS52MS5WYXJpYW50UnVsZSLjAgoNUHJvY2Vzc1JlY2lwZRIKCgJpZBgBIAEoCRIXCgRuYW1lGAIgASgJQgm6SAZyBIDxBAESDAoEaWNvbhgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRIyCgR0eXBlGAUgASgOMhcucHJvY2Vzcy52MS5Qcm9jZXNzVHlwZUILukgIyAEBggECEAESHQoVcHJvZHVjdF9kZWZpbml0aW9uX2lkGAYgASgJEjYKDWFwcGxpY2FiaWxpdHkYByABKAsyHy5wcm9jZXNzLnYxLlJlY2lwZUFwcGxpY2FiaWxpdHkSGAoQcm9vdF9zZXF1ZW5jZV9pZBgIIAEoCRIqCiJzdXBwb3J0ZWRfY29udGFpbmVyX2RlZmluaXRpb25faWRzGAsgAygJEjkKE2V4dGVybmFsX3JlZmVyZW5jZXMYDCADKAsyHC5jb21tb24udjEuRXh0ZXJuYWxSZWZlcmVuY2UiOgoOUHJvY2Vzc1JlY2lwZXMSKAoFaXRlbXMYASADKAsyGS5wcm9jZXNzLnYxLlByb2Nlc3NSZWNpcGUq1QEKC1Byb2Nlc3NUeXBlEhwKGFBST0NFU1NfVFlQRV9VTlNQRUNJRklFRBAAEhkKFVBST0NFU1NfVFlQRV9BU1NFTUJMWRABEhwKGFBST0NFU1NfVFlQRV9ESVNBU1NFTUJMWRACEhsKF1BST0NFU1NfVFlQRV9JTlNQRUNUSU9OEAMSGgoWUFJPQ0VTU19UWVBFX0NIRUNLTElTVBAEEhgKFFBST0NFU1NfVFlQRV9LSVRUSU5HEAUSHAoYUFJPQ0VTU19UWVBFX01BSU5URU5BTkNFEAZCsQEKDmNvbS5wcm9jZXNzLnYxQhJQcm9jZXNzUmVjaXBlUHJvdG9QAVo5Z2l0aHViLmNvbS9jb2JvdGFyL3Byb3RvY29sL21lc3NhZ2VzL3Byb2Nlc3MvdjE7cHJvY2Vzc3YxogIDUFhYqgITTWVzc2FnZXMuUHJvY2Vzcy5WMcoCClByb2Nlc3NcVjHiAhZQcm9jZXNzXFYxXEdQQk1ldGFkYXRh6gILUHJvY2Vzczo6VjFiBnByb3RvMw", [file_buf_validate_validate, file_common_v1_external_references, file_validation_v1_predefined_string_rules, file_variance_v1_variant_rule]);
19
+ fileDesc("Ch9wcm9jZXNzL3YxL3Byb2Nlc3NfcmVjaXBlLnByb3RvEgpwcm9jZXNzLnYxImsKE1JlY2lwZUFwcGxpY2FiaWxpdHkSKQoHaW5jbHVkZRgBIAMoCzIYLnZhcmlhbmNlLnYxLlZhcmlhbnRSdWxlEikKB2V4Y2x1ZGUYAiADKAsyGC52YXJpYW5jZS52MS5WYXJpYW50UnVsZSKLAwoNUHJvY2Vzc1JlY2lwZRIKCgJpZBgBIAEoCRIXCgRuYW1lGAIgASgJQgm6SAZyBIDxBAESDAoEaWNvbhgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRIyCgR0eXBlGAUgASgOMhcucHJvY2Vzcy52MS5Qcm9jZXNzVHlwZUILukgIyAEBggECEAESHQoVcHJvZHVjdF9kZWZpbml0aW9uX2lkGAYgASgJEjYKDWFwcGxpY2FiaWxpdHkYByABKAsyHy5wcm9jZXNzLnYxLlJlY2lwZUFwcGxpY2FiaWxpdHkSGAoQcm9vdF9zZXF1ZW5jZV9pZBgIIAEoCRIUCgxzZXF1ZW5jZV9pZHMYCSADKAkSEAoIdGFza19pZHMYCiADKAkSKgoic3VwcG9ydGVkX2NvbnRhaW5lcl9kZWZpbml0aW9uX2lkcxgLIAMoCRI5ChNleHRlcm5hbF9yZWZlcmVuY2VzGAwgAygLMhwuY29tbW9uLnYxLkV4dGVybmFsUmVmZXJlbmNlIjoKDlByb2Nlc3NSZWNpcGVzEigKBWl0ZW1zGAEgAygLMhkucHJvY2Vzcy52MS5Qcm9jZXNzUmVjaXBlKtUBCgtQcm9jZXNzVHlwZRIcChhQUk9DRVNTX1RZUEVfVU5TUEVDSUZJRUQQABIZChVQUk9DRVNTX1RZUEVfQVNTRU1CTFkQARIcChhQUk9DRVNTX1RZUEVfRElTQVNTRU1CTFkQAhIbChdQUk9DRVNTX1RZUEVfSU5TUEVDVElPThADEhoKFlBST0NFU1NfVFlQRV9DSEVDS0xJU1QQBBIYChRQUk9DRVNTX1RZUEVfS0lUVElORxAFEhwKGFBST0NFU1NfVFlQRV9NQUlOVEVOQU5DRRAGQrEBCg5jb20ucHJvY2Vzcy52MUISUHJvY2Vzc1JlY2lwZVByb3RvUAFaOWdpdGh1Yi5jb20vY29ib3Rhci9wcm90b2NvbC9tZXNzYWdlcy9wcm9jZXNzL3YxO3Byb2Nlc3N2MaICA1BYWKoCE01lc3NhZ2VzLlByb2Nlc3MuVjHKAgpQcm9jZXNzXFYx4gIWUHJvY2Vzc1xWMVxHUEJNZXRhZGF0YeoCC1Byb2Nlc3M6OlYxYgZwcm90bzM", [file_buf_validate_validate, file_common_v1_external_references, file_validation_v1_predefined_string_rules, file_variance_v1_variant_rule]);
20
20
 
21
21
  /**
22
22
  * @generated from message process.v1.RecipeApplicability
@@ -97,9 +97,16 @@ export type ProcessRecipe = Message<"process.v1.ProcessRecipe"> & {
97
97
  rootSequenceId: string;
98
98
 
99
99
  /**
100
- * repeated SequenceDefinition sequences = 9;
101
- * repeated TaskDefinition tasks = 10;
102
- *
100
+ * @generated from field: repeated string sequence_ids = 9;
101
+ */
102
+ sequenceIds: string[];
103
+
104
+ /**
105
+ * @generated from field: repeated string task_ids = 10;
106
+ */
107
+ taskIds: string[];
108
+
109
+ /**
103
110
  * Containers (typically fixture/pallet definitions) that this recipe is intended to run with.
104
111
  *
105
112
  * @generated from field: repeated string supported_container_definition_ids = 11;
@@ -5,6 +5,8 @@
5
5
  import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
6
6
  import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
7
7
  import { file_buf_validate_validate } from "../../buf/validate/validate_pb.ts";
8
+ import type { ActorRef } from "../../common/v1/actor_pb.ts";
9
+ import { file_common_v1_actor } from "../../common/v1/actor_pb.ts";
8
10
  import type { Timestamp } from "@bufbuild/protobuf/wkt";
9
11
  import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
10
12
  import { file_validation_v1_predefined_string_rules } from "../../validation/v1/predefined_string_rules_pb.ts";
@@ -14,9 +16,13 @@ import type { Message } from "@bufbuild/protobuf";
14
16
  * Describes the file runtime/v1/execution_evidence.proto.
15
17
  */
16
18
  export const file_runtime_v1_execution_evidence: GenFile = /*@__PURE__*/
17
- fileDesc("CiNydW50aW1lL3YxL2V4ZWN1dGlvbl9ldmlkZW5jZS5wcm90bxIKcnVudGltZS52MSI4CgxFdmlkZW5jZUZhY3QSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJEgwKBHVuaXQYAyABKAkivgEKEUV4ZWN1dGlvbkV2aWRlbmNlEgoKAmlkGAEgASgJEiEKC3Rhc2tfcnVuX2lkGAIgASgJQgy6SAnIAQFyBJjyBAESDgoGc291cmNlGAMgASgJEi8KC3JlY29yZGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBInCgVmYWN0cxgFIAMoCzIYLnJ1bnRpbWUudjEuRXZpZGVuY2VGYWN0EhAKCGJsb2JfdXJpGAYgASgJQrUBCg5jb20ucnVudGltZS52MUIWRXhlY3V0aW9uRXZpZGVuY2VQcm90b1ABWjlnaXRodWIuY29tL2NvYm90YXIvcHJvdG9jb2wvbWVzc2FnZXMvcnVudGltZS92MTtydW50aW1ldjGiAgNSWFiqAhNNZXNzYWdlcy5SdW50aW1lLlYxygIKUnVudGltZVxWMeICFlJ1bnRpbWVcVjFcR1BCTWV0YWRhdGHqAgtSdW50aW1lOjpWMWIGcHJvdG8z", [file_buf_validate_validate, file_google_protobuf_timestamp, file_validation_v1_predefined_string_rules]);
19
+ fileDesc("CiNydW50aW1lL3YxL2V4ZWN1dGlvbl9ldmlkZW5jZS5wcm90bxIKcnVudGltZS52MSI4CgxFdmlkZW5jZUZhY3QSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJEgwKBHVuaXQYAyABKAkihQIKEUV4ZWN1dGlvbkV2aWRlbmNlEgoKAmlkGAEgASgJEiEKC3Rhc2tfcnVuX2lkGAIgASgJQgy6SAnIAQFyBJjyBAESDgoGc291cmNlGAMgASgJEi8KC3JlY29yZGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBInCgVmYWN0cxgFIAMoCzIYLnJ1bnRpbWUudjEuRXZpZGVuY2VGYWN0EhAKCGJsb2JfdXJpGAYgASgJEiIKBWFjdG9yGAcgASgLMhMuY29tbW9uLnYxLkFjdG9yUmVmEhAKCHNraWxsX2lkGAggASgJEg8KB3N1Y2Nlc3MYCSABKAgiQgoSRXhlY3V0aW9uRXZpZGVuY2VzEiwKBWl0ZW1zGAEgAygLMh0ucnVudGltZS52MS5FeGVjdXRpb25FdmlkZW5jZUK1AQoOY29tLnJ1bnRpbWUudjFCFkV4ZWN1dGlvbkV2aWRlbmNlUHJvdG9QAVo5Z2l0aHViLmNvbS9jb2JvdGFyL3Byb3RvY29sL21lc3NhZ2VzL3J1bnRpbWUvdjE7cnVudGltZXYxogIDUlhYqgITTWVzc2FnZXMuUnVudGltZS5WMcoCClJ1bnRpbWVcVjHiAhZSdW50aW1lXFYxXEdQQk1ldGFkYXRh6gILUnVudGltZTo6VjFiBnByb3RvMw", [file_buf_validate_validate, file_common_v1_actor, file_google_protobuf_timestamp, file_validation_v1_predefined_string_rules]);
18
20
 
19
21
  /**
22
+ * EvidenceFact stores a flexible key/value fact recorded during execution.
23
+ * Use this for measurements, classifications, result details, operator notes,
24
+ * and other structured runtime output.
25
+ *
20
26
  * @generated from message runtime.v1.EvidenceFact
21
27
  */
22
28
  export type EvidenceFact = Message<"runtime.v1.EvidenceFact"> & {
@@ -44,6 +50,15 @@ export const EvidenceFactSchema: GenMessage<EvidenceFact> = /*@__PURE__*/
44
50
  messageDesc(file_runtime_v1_execution_evidence, 0);
45
51
 
46
52
  /**
53
+ * ExecutionEvidence records runtime facts produced during task execution.
54
+ *
55
+ * It is task-run-centric and primarily supports traceability, validation,
56
+ * analytics, and downstream aggregation into actor skill state.
57
+ *
58
+ * The normalized fields such as actor, skill_id, and success are optional but
59
+ * strongly recommended when known, because they make later aggregation much
60
+ * simpler and more robust than parsing facts alone.
61
+ *
47
62
  * @generated from message runtime.v1.ExecutionEvidence
48
63
  */
49
64
  export type ExecutionEvidence = Message<"runtime.v1.ExecutionEvidence"> & {
@@ -75,9 +90,32 @@ export type ExecutionEvidence = Message<"runtime.v1.ExecutionEvidence"> & {
75
90
  facts: EvidenceFact[];
76
91
 
77
92
  /**
93
+ * Optional external payload such as image, log, trace, or report.
94
+ *
78
95
  * @generated from field: string blob_uri = 6;
79
96
  */
80
97
  blobUri: string;
98
+
99
+ /**
100
+ * Optional actor who produced or is primarily associated with this evidence.
101
+ *
102
+ * @generated from field: common.v1.ActorRef actor = 7;
103
+ */
104
+ actor?: ActorRef;
105
+
106
+ /**
107
+ * Optional skill primarily exercised or validated by this evidence.
108
+ *
109
+ * @generated from field: string skill_id = 8;
110
+ */
111
+ skillId: string;
112
+
113
+ /**
114
+ * normalized success signal when known
115
+ *
116
+ * @generated from field: bool success = 9;
117
+ */
118
+ success: boolean;
81
119
  };
82
120
 
83
121
  /**
@@ -87,3 +125,20 @@ export type ExecutionEvidence = Message<"runtime.v1.ExecutionEvidence"> & {
87
125
  export const ExecutionEvidenceSchema: GenMessage<ExecutionEvidence> = /*@__PURE__*/
88
126
  messageDesc(file_runtime_v1_execution_evidence, 1);
89
127
 
128
+ /**
129
+ * @generated from message runtime.v1.ExecutionEvidences
130
+ */
131
+ export type ExecutionEvidences = Message<"runtime.v1.ExecutionEvidences"> & {
132
+ /**
133
+ * @generated from field: repeated runtime.v1.ExecutionEvidence items = 1;
134
+ */
135
+ items: ExecutionEvidence[];
136
+ };
137
+
138
+ /**
139
+ * Describes the message runtime.v1.ExecutionEvidences.
140
+ * Use `create(ExecutionEvidencesSchema)` to create a new message.
141
+ */
142
+ export const ExecutionEvidencesSchema: GenMessage<ExecutionEvidences> = /*@__PURE__*/
143
+ messageDesc(file_runtime_v1_execution_evidence, 2);
144
+
@@ -154,6 +154,8 @@ export type TaskRun = Message<"runtime.v1.TaskRun"> & {
154
154
  errorMessage: string;
155
155
 
156
156
  /**
157
+ * TODO: consider delete, already 'linked to' from ExecutionEvidence
158
+ *
157
159
  * @generated from field: repeated runtime.v1.ExecutionEvidence evidence = 17;
158
160
  */
159
161
  evidence: ExecutionEvidence[];
@@ -166,9 +168,9 @@ export type TaskRun = Message<"runtime.v1.TaskRun"> & {
166
168
  /**
167
169
  * Effective runtime restrictions that currently apply to this task.
168
170
  *
169
- * These restrictions should reflect the current assigned actor and execution
170
- * context. They may be copied from candidate-level evaluation results during
171
- * assignment or reassignment.
171
+ * These restrictions are the effective restrictions for the currently
172
+ * assigned actor and execution context. They may be copied from
173
+ * candidate-level evaluation results during assignment or reassignment.
172
174
  *
173
175
  * Examples:
174
176
  * - AR guidance required because the assigned actor's skill is restricted
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cobotar/protocol",
3
- "version": "0.19.5",
3
+ "version": "0.19.6",
4
4
  "description": "A collection of protobuf messages for the CobotAR-project",
5
5
  "homepage": "https://github.com/cobotar/protocol#readme",
6
6
  "files": [