@camstack/addon-mqtt-broker 1.2.123 → 1.2.124
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/dist/mqtt-broker.addon.js +413 -138
- package/dist/mqtt-broker.addon.mjs +413 -138
- package/package.json +1 -1
|
@@ -5417,7 +5417,7 @@ var ZodIssueCode = {
|
|
|
5417
5417
|
var ZodFirstPartyTypeKind;
|
|
5418
5418
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5419
5419
|
//#endregion
|
|
5420
|
-
//#region ../types/dist/sleep-
|
|
5420
|
+
//#region ../types/dist/sleep-DwAQ9sqX.mjs
|
|
5421
5421
|
/**
|
|
5422
5422
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5423
5423
|
* window to float samples (D455).
|
|
@@ -9346,6 +9346,16 @@ var CompositionSchema = object({
|
|
|
9346
9346
|
seen.add(feature.cap);
|
|
9347
9347
|
});
|
|
9348
9348
|
});
|
|
9349
|
+
var NodeColorIdSchema = _enum([
|
|
9350
|
+
"node-a",
|
|
9351
|
+
"node-b",
|
|
9352
|
+
"node-c",
|
|
9353
|
+
"node-d",
|
|
9354
|
+
"node-e",
|
|
9355
|
+
"node-f",
|
|
9356
|
+
"node-g",
|
|
9357
|
+
"node-h"
|
|
9358
|
+
]);
|
|
9349
9359
|
new Set([
|
|
9350
9360
|
"track",
|
|
9351
9361
|
"face",
|
|
@@ -18134,14 +18144,14 @@ var LlmProfileSchema = object({
|
|
|
18134
18144
|
/** ConfigUISchema tree passed through untyped on the wire (the
|
|
18135
18145
|
* notification-output `ConfigSchemaPassthrough` precedent at
|
|
18136
18146
|
* notification-output.cap.ts:151); the exported TS type re-tightens it. */
|
|
18137
|
-
var ConfigSchemaPassthrough$
|
|
18147
|
+
var ConfigSchemaPassthrough$3 = unknown();
|
|
18138
18148
|
var LlmProfileKindDescriptorSchema = object({
|
|
18139
18149
|
kind: LlmProfileKindSchema,
|
|
18140
18150
|
label: string(),
|
|
18141
18151
|
icon: string(),
|
|
18142
18152
|
/** Stamped by each provider so the concat-fanned catalog stays routable. */
|
|
18143
18153
|
addonId: string(),
|
|
18144
|
-
configSchema: ConfigSchemaPassthrough$
|
|
18154
|
+
configSchema: ConfigSchemaPassthrough$3
|
|
18145
18155
|
});
|
|
18146
18156
|
var LlmDefaultSelectorSchema = union([object({ consumer: string() }), object({ purpose: _enum(["text", "vision"]) })]);
|
|
18147
18157
|
var LlmDefaultSchema = object({
|
|
@@ -19281,7 +19291,7 @@ var TargetKindCapsSchema = object({
|
|
|
19281
19291
|
* the union is large and not meant for runtime validation here; the exported
|
|
19282
19292
|
* `TargetKind` type re-tightens `configSchema` to `ConfigUISchema`.
|
|
19283
19293
|
*/
|
|
19284
|
-
var ConfigSchemaPassthrough = unknown();
|
|
19294
|
+
var ConfigSchemaPassthrough$2 = unknown();
|
|
19285
19295
|
var TargetKindSchema = object({
|
|
19286
19296
|
kind: string(),
|
|
19287
19297
|
label: string(),
|
|
@@ -19318,7 +19328,7 @@ var TargetKindSchema = object({
|
|
|
19318
19328
|
* its raster path, which is the safe default for an unknown image.
|
|
19319
19329
|
*/
|
|
19320
19330
|
iconMediaType: string().optional(),
|
|
19321
|
-
configSchema: ConfigSchemaPassthrough,
|
|
19331
|
+
configSchema: ConfigSchemaPassthrough$2,
|
|
19322
19332
|
/**
|
|
19323
19333
|
* The config keys that decide WHERE this kind's secrets are sent (server,
|
|
19324
19334
|
* base URL, instance, chat, recipient). A save that changes any of them
|
|
@@ -22617,6 +22627,61 @@ var OauthIntegrationDescriptorSchema = object({
|
|
|
22617
22627
|
});
|
|
22618
22628
|
method(_void(), OauthIntegrationDescriptorSchema, { auth: "admin" });
|
|
22619
22629
|
/**
|
|
22630
|
+
* `oidc-connections` — CRUD for IdP rows under `auth-oidc` (D828 sibling).
|
|
22631
|
+
*
|
|
22632
|
+
* One hub-only singleton (`auth-oidc`). The Settings UI is a DataTable +
|
|
22633
|
+
* ItemFormDialog; there is no `editable-array` in `globalSettingsSchema`.
|
|
22634
|
+
* Operator-chosen `id` is the URL slug (`/addon/auth-oidc/<id>/…`) and is
|
|
22635
|
+
* immutable after create.
|
|
22636
|
+
*/
|
|
22637
|
+
var ConfigSchemaPassthrough$1 = unknown();
|
|
22638
|
+
var OidcConnectionSchema = object({
|
|
22639
|
+
id: string().min(1),
|
|
22640
|
+
displayName: string(),
|
|
22641
|
+
icon: string(),
|
|
22642
|
+
issuerUrl: string(),
|
|
22643
|
+
clientId: string(),
|
|
22644
|
+
/** Client id + secret present — never the secret value. */
|
|
22645
|
+
configured: boolean(),
|
|
22646
|
+
/**
|
|
22647
|
+
* Values for the connection form schema. `clientSecret` is a keychain
|
|
22648
|
+
* {@link SecretFieldView} or `null` / `''`, never plaintext (D789).
|
|
22649
|
+
*/
|
|
22650
|
+
formValues: record(string(), unknown()).optional()
|
|
22651
|
+
});
|
|
22652
|
+
/**
|
|
22653
|
+
* Patch one connection. Omitted or empty `clientSecret` keeps the stored
|
|
22654
|
+
* secret (D787). `{ $secretClear: true }` clears it. `id` is never renamed.
|
|
22655
|
+
*/
|
|
22656
|
+
var OidcConnectionUpdateInputSchema = object({
|
|
22657
|
+
id: string().min(1),
|
|
22658
|
+
displayName: string().min(1),
|
|
22659
|
+
icon: string().optional(),
|
|
22660
|
+
issuerUrl: string().optional(),
|
|
22661
|
+
clientId: string().optional(),
|
|
22662
|
+
clientSecret: union([string(), object({ $secretClear: literal(true) })]).optional(),
|
|
22663
|
+
redirectUri: string().optional(),
|
|
22664
|
+
scopes: string().optional(),
|
|
22665
|
+
usernameClaim: _enum([
|
|
22666
|
+
"preferred_username",
|
|
22667
|
+
"email",
|
|
22668
|
+
"sub"
|
|
22669
|
+
]).optional()
|
|
22670
|
+
});
|
|
22671
|
+
method(object({}), ConfigSchemaPassthrough$1, { auth: "admin" }), method(object({}), array(OidcConnectionSchema).readonly(), { auth: "admin" }), method(object({
|
|
22672
|
+
id: string().min(1).regex(/^[a-z0-9][a-z0-9-]{0,63}$/, "id must be a lowercase slug"),
|
|
22673
|
+
displayName: string().min(1)
|
|
22674
|
+
}), object({ id: string() }), {
|
|
22675
|
+
kind: "mutation",
|
|
22676
|
+
auth: "admin"
|
|
22677
|
+
}), method(OidcConnectionUpdateInputSchema, object({ ok: literal(true) }), {
|
|
22678
|
+
kind: "mutation",
|
|
22679
|
+
auth: "admin"
|
|
22680
|
+
}), method(object({ id: string().min(1) }), object({ ok: literal(true) }), {
|
|
22681
|
+
kind: "mutation",
|
|
22682
|
+
auth: "admin"
|
|
22683
|
+
});
|
|
22684
|
+
/**
|
|
22620
22685
|
* What started a camera's onboard motion (D672). `camera` is the camera's own
|
|
22621
22686
|
* firmware; `sensor` is a device the operator ATTACHED to it. Absent on the
|
|
22622
22687
|
* wire means the camera: only the camera-sensors bridge ever says `sensor`.
|
|
@@ -23973,24 +24038,69 @@ var RetrainFrameListSchema = object({
|
|
|
23973
24038
|
/** What the page pre-selects — the native key frame when one survives. */
|
|
23974
24039
|
autoPickMediaId: number().int().optional()
|
|
23975
24040
|
});
|
|
24041
|
+
/** Exclusive partition of a corpus copy's annotation progress (design §4.2). */
|
|
24042
|
+
var RetrainFrameWorkStateSchema = _enum([
|
|
24043
|
+
"unannotated",
|
|
24044
|
+
"annotated",
|
|
24045
|
+
"complete"
|
|
24046
|
+
]);
|
|
24047
|
+
/**
|
|
24048
|
+
* Filters for paginated corpus list, KPI, and matching export (design §4.4).
|
|
24049
|
+
* Every narrowing field is ANDed; omitted fields impose no constraint.
|
|
24050
|
+
*/
|
|
24051
|
+
var RetrainCorpusFilterSchema = object({
|
|
24052
|
+
workState: RetrainFrameWorkStateSchema.optional(),
|
|
24053
|
+
deviceIds: array(number()).max(500).optional(),
|
|
24054
|
+
/** When set, only frames in this named collection. */
|
|
24055
|
+
collectionId: string().optional(),
|
|
24056
|
+
/** Frames that carry at least one saved annotation in one of these classes. */
|
|
24057
|
+
classes: array(RetrainMacroClassSchema).optional(),
|
|
24058
|
+
page: number().int().positive().default(1),
|
|
24059
|
+
pageSize: number().int().positive().max(100).default(50)
|
|
24060
|
+
});
|
|
24061
|
+
var RetrainCorpusPageSchema = object({
|
|
24062
|
+
frames: array(RetrainFrameSchema.extend({ workState: RetrainFrameWorkStateSchema })).readonly(),
|
|
24063
|
+
total: number().int().nonnegative(),
|
|
24064
|
+
page: number().int().positive(),
|
|
24065
|
+
pageSize: number().int().positive()
|
|
24066
|
+
});
|
|
24067
|
+
var RetrainCorpusKpiCameraRowSchema = object({
|
|
24068
|
+
deviceId: number(),
|
|
24069
|
+
unannotated: number().int().nonnegative(),
|
|
24070
|
+
annotated: number().int().nonnegative(),
|
|
24071
|
+
complete: number().int().nonnegative(),
|
|
24072
|
+
/** This camera's `complete` count divided by corpus `total`, in `[0,1]`.
|
|
24073
|
+
* `null` when the corpus is empty (no ratio). */
|
|
24074
|
+
pctOfCorpus: number().min(0).max(1).nullable()
|
|
24075
|
+
});
|
|
24076
|
+
var RetrainCorpusKpiSchema = object({
|
|
24077
|
+
total: number().int().nonnegative(),
|
|
24078
|
+
unannotated: number().int().nonnegative(),
|
|
24079
|
+
annotated: number().int().nonnegative(),
|
|
24080
|
+
complete: number().int().nonnegative(),
|
|
24081
|
+
cameras: array(RetrainCorpusKpiCameraRowSchema).readonly()
|
|
24082
|
+
});
|
|
23976
24083
|
/**
|
|
23977
24084
|
* Which frames an annotated export carries. Every field narrows; an empty
|
|
23978
|
-
* filter is every annotated copy.
|
|
23979
|
-
*
|
|
23980
|
-
*
|
|
23981
|
-
*
|
|
24085
|
+
* filter is every annotated copy. `frameIds` is the primitive a job or
|
|
24086
|
+
* download uses; `batchId` re-selects what an earlier export carried
|
|
24087
|
+
* (`exportedInBatch`). Frozen dataset versions were removed — live selection
|
|
24088
|
+
* resolves to `frameIds` at plan/start.
|
|
23982
24089
|
*/
|
|
23983
24090
|
var RetrainExportFilterSchema = object({
|
|
23984
24091
|
deviceIds: array(number()).optional(),
|
|
23985
24092
|
frameIds: array(string()).max(2e4).optional(),
|
|
23986
24093
|
/** Only frames in at least one of these named collections. */
|
|
23987
24094
|
collectionIds: array(string()).max(200).optional(),
|
|
23988
|
-
/**
|
|
23989
|
-
|
|
23990
|
-
datasetVersionId: string().optional(),
|
|
24095
|
+
/** Single collection (Frames filter bar). ANDed with `collectionIds` when both set. */
|
|
24096
|
+
collectionId: string().optional(),
|
|
23991
24097
|
batchId: string().optional(),
|
|
23992
24098
|
/** Only frames the operator marked complete (all subjects boxed). */
|
|
23993
|
-
completeOnly: boolean().optional()
|
|
24099
|
+
completeOnly: boolean().optional(),
|
|
24100
|
+
/** Exclusive work-state partition (`workStateOf`); same as the corpus list. */
|
|
24101
|
+
workState: RetrainFrameWorkStateSchema.optional(),
|
|
24102
|
+
/** Frames with at least one saved annotation in one of these classes. */
|
|
24103
|
+
classes: array(RetrainMacroClassSchema).optional()
|
|
23994
24104
|
});
|
|
23995
24105
|
/**
|
|
23996
24106
|
* `frames`: the full frame copies, boxes in `annotations.json`.
|
|
@@ -24190,8 +24300,7 @@ var RetrainDatasetStatsSchema = object({
|
|
|
24190
24300
|
completeFrames: number().int()
|
|
24191
24301
|
})).readonly()
|
|
24192
24302
|
});
|
|
24193
|
-
|
|
24194
|
-
var RetrainDatasetVersionSchema = object({
|
|
24303
|
+
object({
|
|
24195
24304
|
id: string(),
|
|
24196
24305
|
name: string(),
|
|
24197
24306
|
createdAt: number(),
|
|
@@ -24199,22 +24308,33 @@ var RetrainDatasetVersionSchema = object({
|
|
|
24199
24308
|
layout: RetrainExportLayoutSchema,
|
|
24200
24309
|
completeOnly: boolean(),
|
|
24201
24310
|
frameCount: number().int(),
|
|
24202
|
-
/** sha256 of what the frames taught when the version was frozen. */
|
|
24203
24311
|
annotationHash: string(),
|
|
24204
|
-
/** The export manifest schema the version was cut under. */
|
|
24205
24312
|
manifestSchema: string(),
|
|
24206
24313
|
stats: RetrainDatasetStatsSchema
|
|
24207
24314
|
});
|
|
24208
|
-
|
|
24209
|
-
|
|
24210
|
-
|
|
24315
|
+
/**
|
|
24316
|
+
* Live training corpus criteria — same shape as `TrainingCorpusSelection` on
|
|
24317
|
+
* the training cap. Resolved here so plan/start and the annotated export share
|
|
24318
|
+
* one definition of "the frames" (`buildRetrainExportPlan`).
|
|
24319
|
+
*/
|
|
24320
|
+
var RetrainTrainingCorpusSelectionSchema = object({
|
|
24321
|
+
collectionIds: array(string()).min(1),
|
|
24322
|
+
workState: _enum([
|
|
24323
|
+
"complete",
|
|
24324
|
+
"annotated_or_complete",
|
|
24325
|
+
"any_annotated"
|
|
24326
|
+
]).default("complete")
|
|
24327
|
+
});
|
|
24328
|
+
var RetrainTrainingCorpusResolveResultSchema = discriminatedUnion("kind", [object({
|
|
24329
|
+
kind: literal("resolved"),
|
|
24330
|
+
frameIds: array(string()).max(2e4).readonly(),
|
|
24331
|
+
stats: RetrainDatasetStatsSchema,
|
|
24332
|
+
annotationHash: string(),
|
|
24333
|
+
layout: RetrainExportLayoutSchema
|
|
24211
24334
|
}), object({
|
|
24212
24335
|
kind: literal("refused"),
|
|
24213
|
-
reason: _enum([
|
|
24214
|
-
|
|
24215
|
-
"duplicate-name",
|
|
24216
|
-
"no-frames"
|
|
24217
|
-
])
|
|
24336
|
+
reason: _enum(["unknown-collection", "no-frames"]),
|
|
24337
|
+
detail: string()
|
|
24218
24338
|
})]);
|
|
24219
24339
|
/** The outcome of a lifecycle move owned by the retrain page. */
|
|
24220
24340
|
var RetrainTransitionResultSchema = object({
|
|
@@ -24921,6 +25041,12 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
24921
25041
|
}), array(RetrainTrackSchema).readonly(), {
|
|
24922
25042
|
kind: "query",
|
|
24923
25043
|
auth: "admin"
|
|
25044
|
+
}), method(RetrainCorpusFilterSchema, RetrainCorpusPageSchema, {
|
|
25045
|
+
kind: "query",
|
|
25046
|
+
auth: "admin"
|
|
25047
|
+
}), method(object({}), RetrainCorpusKpiSchema, {
|
|
25048
|
+
kind: "query",
|
|
25049
|
+
auth: "admin"
|
|
24924
25050
|
}), method(object({ trackId: string() }), RetrainFrameListSchema, {
|
|
24925
25051
|
kind: "query",
|
|
24926
25052
|
auth: "admin"
|
|
@@ -25016,36 +25142,6 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25016
25142
|
kind: "mutation",
|
|
25017
25143
|
auth: "admin",
|
|
25018
25144
|
timeoutMs: 12e4
|
|
25019
|
-
}), method(object({
|
|
25020
|
-
selection: RetrainDatasetSelectionSchema,
|
|
25021
|
-
completeOnly: boolean().optional()
|
|
25022
|
-
}), RetrainDatasetStatsSchema, {
|
|
25023
|
-
kind: "query",
|
|
25024
|
-
auth: "admin"
|
|
25025
|
-
}), method(object({
|
|
25026
|
-
name: string().max(120),
|
|
25027
|
-
selection: RetrainDatasetSelectionSchema,
|
|
25028
|
-
layout: RetrainExportLayoutSchema,
|
|
25029
|
-
completeOnly: boolean()
|
|
25030
|
-
}), CreateRetrainDatasetVersionResultSchema, {
|
|
25031
|
-
kind: "mutation",
|
|
25032
|
-
auth: "admin",
|
|
25033
|
-
timeoutMs: 12e4
|
|
25034
|
-
}), method(object({}), array(RetrainDatasetVersionSchema).readonly(), {
|
|
25035
|
-
kind: "query",
|
|
25036
|
-
auth: "admin"
|
|
25037
|
-
}), method(object({ id: string() }), object({ deleted: boolean() }), {
|
|
25038
|
-
kind: "mutation",
|
|
25039
|
-
auth: "admin"
|
|
25040
|
-
}), method(object({ id: string() }), object({
|
|
25041
|
-
found: boolean(),
|
|
25042
|
-
annotationHash: string(),
|
|
25043
|
-
matches: boolean(),
|
|
25044
|
-
missingFrames: number().int()
|
|
25045
|
-
}), {
|
|
25046
|
-
kind: "query",
|
|
25047
|
-
auth: "admin",
|
|
25048
|
-
timeoutMs: 12e4
|
|
25049
25145
|
}), method(object({}), array(RetrainAssistProfileSchema).readonly(), {
|
|
25050
25146
|
kind: "query",
|
|
25051
25147
|
auth: "admin"
|
|
@@ -25072,6 +25168,10 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25072
25168
|
}), method(object({}), array(RetrainCollectionSchema).readonly(), {
|
|
25073
25169
|
kind: "query",
|
|
25074
25170
|
auth: "admin"
|
|
25171
|
+
}), method(RetrainTrainingCorpusSelectionSchema, RetrainTrainingCorpusResolveResultSchema, {
|
|
25172
|
+
kind: "query",
|
|
25173
|
+
auth: "admin",
|
|
25174
|
+
timeoutMs: 6e4
|
|
25075
25175
|
}), method(object({
|
|
25076
25176
|
id: string(),
|
|
25077
25177
|
name: string().max(120)
|
|
@@ -25688,11 +25788,14 @@ var HardwareClassIdSchema = _enum([
|
|
|
25688
25788
|
"intel-n-series",
|
|
25689
25789
|
"apple-m-base",
|
|
25690
25790
|
"apple-m-pro",
|
|
25791
|
+
"amd-phoenix",
|
|
25691
25792
|
"unknown"
|
|
25692
25793
|
]);
|
|
25693
25794
|
var AcceleratorKindSchema = _enum([
|
|
25694
25795
|
"intel-npu",
|
|
25695
25796
|
"intel-igpu",
|
|
25797
|
+
"amd-igpu",
|
|
25798
|
+
"amd-npu",
|
|
25696
25799
|
"x86-cpu",
|
|
25697
25800
|
"arm-cpu",
|
|
25698
25801
|
"apple-ane",
|
|
@@ -27582,6 +27685,8 @@ var AgentPipelineSettingsSchema = object({
|
|
|
27582
27685
|
* address is wrong (multi-homed host, NAT, custom interface).
|
|
27583
27686
|
*/
|
|
27584
27687
|
reachableHost: string().optional(),
|
|
27688
|
+
/** Hub-persisted UI colour (`--color-node-*` theme tokens). */
|
|
27689
|
+
color: NodeColorIdSchema.optional(),
|
|
27585
27690
|
/**
|
|
27586
27691
|
* Multi-device inference opt-in (Phase 4). Per-node map deviceKey → {enabled,
|
|
27587
27692
|
* weight, steps}. Absent / all-disabled ⇒ the node's single default
|
|
@@ -28131,8 +28236,9 @@ method(object({
|
|
|
28131
28236
|
auth: "admin"
|
|
28132
28237
|
}), method(object({
|
|
28133
28238
|
agentNodeId: string(),
|
|
28134
|
-
reachableHost: string().nullable()
|
|
28135
|
-
|
|
28239
|
+
reachableHost: string().nullable().optional(),
|
|
28240
|
+
color: NodeColorIdSchema.nullable().optional()
|
|
28241
|
+
}).refine((v) => v.reachableHost !== void 0 || v.color !== void 0, { message: "reachableHost or color required" }), object({ success: literal(true) }), {
|
|
28136
28242
|
kind: "mutation",
|
|
28137
28243
|
auth: "admin"
|
|
28138
28244
|
}), method(object({
|
|
@@ -31179,7 +31285,7 @@ var CustomActionInputSchema = object({
|
|
|
31179
31285
|
action: string().min(1),
|
|
31180
31286
|
input: unknown()
|
|
31181
31287
|
});
|
|
31182
|
-
method(
|
|
31288
|
+
method(object({ nodeId: string().optional() }).optional(), array(AddonListItemSchema).readonly()), method(object({
|
|
31183
31289
|
addonId: string(),
|
|
31184
31290
|
limit: number().min(1).max(500).default(100),
|
|
31185
31291
|
level: LogLevelSchema$2.optional()
|
|
@@ -35072,6 +35178,7 @@ var OsdNamedTemplateSchema = object({
|
|
|
35072
35178
|
});
|
|
35073
35179
|
/** Where a slot's value comes from. */
|
|
35074
35180
|
var OsdSourceSchema = discriminatedUnion("kind", [
|
|
35181
|
+
object({ kind: literal("none") }),
|
|
35075
35182
|
object({
|
|
35076
35183
|
kind: literal("static"),
|
|
35077
35184
|
text: string().max(64)
|
|
@@ -35198,6 +35305,13 @@ method(object({ deviceId: number().int() }), object({
|
|
|
35198
35305
|
}), object({ success: literal(true) }), {
|
|
35199
35306
|
kind: "mutation",
|
|
35200
35307
|
auth: "admin"
|
|
35308
|
+
}), method(object({
|
|
35309
|
+
deviceId: number().int(),
|
|
35310
|
+
slotId: string().min(1),
|
|
35311
|
+
enabled: boolean()
|
|
35312
|
+
}), object({ success: literal(true) }), {
|
|
35313
|
+
kind: "mutation",
|
|
35314
|
+
auth: "admin"
|
|
35201
35315
|
}), method(object({
|
|
35202
35316
|
sourceDeviceId: number().int(),
|
|
35203
35317
|
targetDeviceId: number().int()
|
|
@@ -35578,7 +35692,15 @@ var GpuInfoSchema = object({
|
|
|
35578
35692
|
name: string(),
|
|
35579
35693
|
memoryMB: number().optional()
|
|
35580
35694
|
});
|
|
35581
|
-
var NpuInfoSchema = object({
|
|
35695
|
+
var NpuInfoSchema = object({
|
|
35696
|
+
type: _enum([
|
|
35697
|
+
"apple-ane",
|
|
35698
|
+
"intel-npu",
|
|
35699
|
+
"amd-xdna"
|
|
35700
|
+
]),
|
|
35701
|
+
name: string().optional(),
|
|
35702
|
+
generation: _enum(["xdna1", "xdna2"]).optional()
|
|
35703
|
+
});
|
|
35582
35704
|
var CoralInfoSchema = object({
|
|
35583
35705
|
type: literal("coral-edgetpu"),
|
|
35584
35706
|
bus: string().optional()
|
|
@@ -39340,9 +39462,11 @@ DeviceType.Camera, method(object({
|
|
|
39340
39462
|
* once is what makes a second provider (RunPod, a local NVIDIA node) a new
|
|
39341
39463
|
* manifest entry and nothing else.
|
|
39342
39464
|
*
|
|
39343
|
-
* Collection
|
|
39344
|
-
*
|
|
39345
|
-
*
|
|
39465
|
+
* Collection of provider **types** (addons). Each addon owns zero or more
|
|
39466
|
+
* **entries** (credentials + defaults). Concat-fans: `describe`,
|
|
39467
|
+
* `describeTypes`, `listEntries`, `listJobs`. Single-row work is keyed by
|
|
39468
|
+
* `entryId`; callers also pass the owning `addonId` as the collection
|
|
39469
|
+
* selector (broker posture). Every method is `admin`: these spend money.
|
|
39346
39470
|
*
|
|
39347
39471
|
* Every cloud object a provider creates is tagged with the orchestrator's
|
|
39348
39472
|
* `jobKey`, so a retried submit finds the job it already started instead of
|
|
@@ -39366,8 +39490,8 @@ var TrainingRegionOptionSchema = object({
|
|
|
39366
39490
|
priceMultiplier: number().positive()
|
|
39367
39491
|
});
|
|
39368
39492
|
/**
|
|
39369
|
-
* The provider's per-
|
|
39370
|
-
* live
|
|
39493
|
+
* The provider's per-entry settings, as the orchestrator reads them. They
|
|
39494
|
+
* live on the PROVIDER addon's entry (operator decision 2026-10-08: they
|
|
39371
39495
|
* depend on the user's account), never hard-coded in the orchestrator.
|
|
39372
39496
|
*/
|
|
39373
39497
|
var TrainingProviderDefaultsSchema = object({
|
|
@@ -39378,9 +39502,44 @@ var TrainingProviderDefaultsSchema = object({
|
|
|
39378
39502
|
/** Hours a FAILED job's cloud dataset is kept for debugging; 0 = delete at once. */
|
|
39379
39503
|
failedDatasetGraceHours: number().nonnegative()
|
|
39380
39504
|
});
|
|
39505
|
+
/**
|
|
39506
|
+
* Entry form schema for a provider type — same seam as notification
|
|
39507
|
+
* `TargetKind.configSchema` (`z.unknown()` at the wire; callers tighten to
|
|
39508
|
+
* {@link ConfigUISchema}). Drives `ConfigFormBuilder` on Training → Providers.
|
|
39509
|
+
*/
|
|
39510
|
+
var ConfigSchemaPassthrough = unknown();
|
|
39511
|
+
/** One creatable provider type, for the Add-entry dialog. */
|
|
39512
|
+
var TrainingProviderTypeSchema = object({
|
|
39513
|
+
typeId: string(),
|
|
39514
|
+
label: string(),
|
|
39515
|
+
/** Path under the addon package (e.g. `assets/training-modal/icon.svg`). */
|
|
39516
|
+
iconAsset: string(),
|
|
39517
|
+
/** Owning `training-provider` addon — collection selector for createEntry. */
|
|
39518
|
+
addonId: string(),
|
|
39519
|
+
/**
|
|
39520
|
+
* Fields for one entry of this type (credentials + defaults). Absent on a
|
|
39521
|
+
* type that only needs a name. Password fields are keychain-backed on the
|
|
39522
|
+
* provider addon (`secretStatePaths`), not D634 plaintext.
|
|
39523
|
+
*/
|
|
39524
|
+
configSchema: ConfigSchemaPassthrough.optional()
|
|
39525
|
+
});
|
|
39526
|
+
/** One configured account / workspace under a provider type. */
|
|
39527
|
+
var TrainingProviderEntrySchema = object({
|
|
39528
|
+
entryId: string(),
|
|
39529
|
+
typeId: string(),
|
|
39530
|
+
name: string(),
|
|
39531
|
+
addonId: string(),
|
|
39532
|
+
/** Credentials are present — never the values. */
|
|
39533
|
+
configured: boolean()
|
|
39534
|
+
});
|
|
39381
39535
|
var TrainingProviderDescriptorSchema = object({
|
|
39382
39536
|
addonId: string(),
|
|
39383
|
-
|
|
39537
|
+
entryId: string(),
|
|
39538
|
+
typeId: string(),
|
|
39539
|
+
/** Operator-chosen entry name. */
|
|
39540
|
+
name: string(),
|
|
39541
|
+
iconAsset: string(),
|
|
39542
|
+
/** `modal`, `runpod`, `fake`, … — same as typeId for current providers. */
|
|
39384
39543
|
kind: string(),
|
|
39385
39544
|
label: string(),
|
|
39386
39545
|
gpuTypes: array(TrainingGpuOptionSchema).readonly(),
|
|
@@ -39392,7 +39551,30 @@ var TrainingProviderDescriptorSchema = object({
|
|
|
39392
39551
|
dataResidencyNote: string(),
|
|
39393
39552
|
/** Credentials are present — never the values. */
|
|
39394
39553
|
configured: boolean(),
|
|
39395
|
-
defaults: TrainingProviderDefaultsSchema
|
|
39554
|
+
defaults: TrainingProviderDefaultsSchema,
|
|
39555
|
+
/**
|
|
39556
|
+
* Values for {@link TrainingProviderTypeSchema}'s `configSchema` — password
|
|
39557
|
+
* fields are keychain {@link SecretFieldView} or `null` / `''` (create),
|
|
39558
|
+
* never plaintext. Same hydrate contract as settings forms (D789).
|
|
39559
|
+
*/
|
|
39560
|
+
formValues: record(string(), unknown()).optional()
|
|
39561
|
+
});
|
|
39562
|
+
/**
|
|
39563
|
+
* Patch one entry's name, credentials and defaults. Pin with owning `{ addonId }`.
|
|
39564
|
+
* An omitted or empty `tokenSecret` means KEEP the stored secret (D787).
|
|
39565
|
+
* `{ $secretClear: true }` clears it.
|
|
39566
|
+
*/
|
|
39567
|
+
var TrainingProviderUpdateEntryInputSchema = object({
|
|
39568
|
+
entryId: string().min(1),
|
|
39569
|
+
name: string().min(1),
|
|
39570
|
+
tokenId: string().optional(),
|
|
39571
|
+
tokenSecret: union([string(), object({ $secretClear: literal(true) })]).optional(),
|
|
39572
|
+
environment: string().optional(),
|
|
39573
|
+
gpuType: string().optional(),
|
|
39574
|
+
region: string().optional(),
|
|
39575
|
+
costCapUsd: number().nonnegative().optional(),
|
|
39576
|
+
maxRuntimeSec: number().int().positive().optional(),
|
|
39577
|
+
failedDatasetGraceHours: number().nonnegative().optional()
|
|
39396
39578
|
});
|
|
39397
39579
|
var TrainingCredentialCheckSchema = object({
|
|
39398
39580
|
ok: boolean(),
|
|
@@ -39444,20 +39626,33 @@ var TrainerSourceRefSchema = object({
|
|
|
39444
39626
|
/** A commit sha (never a branch) — the job must be reproducible. */
|
|
39445
39627
|
revision: string().regex(/^[0-9a-f]{7,64}$/)
|
|
39446
39628
|
});
|
|
39629
|
+
/** Cloud job identity — route with the owning addon's `addonId` selector. */
|
|
39447
39630
|
var JobRef = {
|
|
39448
|
-
|
|
39631
|
+
entryId: string().min(1),
|
|
39449
39632
|
jobKey: string().uuid()
|
|
39450
39633
|
};
|
|
39451
39634
|
var TrainingLogLineSchema = object({
|
|
39452
39635
|
ts: number(),
|
|
39453
39636
|
text: string()
|
|
39454
39637
|
});
|
|
39455
|
-
method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "admin" }), method(object({
|
|
39638
|
+
method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "admin" }), method(object({}), array(TrainingProviderTypeSchema).readonly(), { auth: "admin" }), method(object({}), array(TrainingProviderEntrySchema).readonly(), { auth: "admin" }), method(object({
|
|
39639
|
+
typeId: string().min(1),
|
|
39640
|
+
name: string().min(1)
|
|
39641
|
+
}), object({ entryId: string() }), {
|
|
39642
|
+
kind: "mutation",
|
|
39643
|
+
auth: "admin"
|
|
39644
|
+
}), method(object({ entryId: string().min(1) }), object({ ok: literal(true) }), {
|
|
39645
|
+
kind: "mutation",
|
|
39646
|
+
auth: "admin"
|
|
39647
|
+
}), method(TrainingProviderUpdateEntryInputSchema, object({ ok: literal(true) }), {
|
|
39648
|
+
kind: "mutation",
|
|
39649
|
+
auth: "admin"
|
|
39650
|
+
}), method(object({ entryId: string().min(1) }), TrainingCredentialCheckSchema, {
|
|
39456
39651
|
kind: "mutation",
|
|
39457
39652
|
auth: "admin",
|
|
39458
39653
|
timeoutMs: 3e4
|
|
39459
39654
|
}), method(object({
|
|
39460
|
-
|
|
39655
|
+
entryId: string().min(1),
|
|
39461
39656
|
gpuType: string(),
|
|
39462
39657
|
region: string(),
|
|
39463
39658
|
datasetBytes: number().int().nonnegative(),
|
|
@@ -39523,7 +39718,7 @@ method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "
|
|
|
39523
39718
|
kind: "mutation",
|
|
39524
39719
|
auth: "admin",
|
|
39525
39720
|
timeoutMs: 5 * 6e4
|
|
39526
|
-
}), method(object({
|
|
39721
|
+
}), method(object({ entryId: string().min(1).optional() }), array(ProviderJobStatusSchema).readonly(), {
|
|
39527
39722
|
auth: "admin",
|
|
39528
39723
|
timeoutMs: 2 * 6e4
|
|
39529
39724
|
});
|
|
@@ -39533,20 +39728,31 @@ method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "
|
|
|
39533
39728
|
*
|
|
39534
39729
|
* It owns what every provider must agree on, written once:
|
|
39535
39730
|
*
|
|
39536
|
-
* - **Dataset versions.** Taken over from pipeline-analytics (D796): the rows
|
|
39537
|
-
* live here (D808); pipeline-analytics still CUTS a version (it owns the corpus and
|
|
39538
|
-
* the export plan) and reaches this store through the five row methods
|
|
39539
|
-
* below, so the Retrain page and the export did not change.
|
|
39540
39731
|
* - **Jobs.** A persisted state machine, a reconcile loop against the
|
|
39541
39732
|
* provider, a cost guard, a daily orphan sweep and the retention rules.
|
|
39542
39733
|
* - **The return flow.** Verified artefacts → Model Studio
|
|
39543
39734
|
* (`custom-model-registry.importModelBundle`) → canary on cameras →
|
|
39544
39735
|
* rollback. Nothing is ever registered automatically.
|
|
39545
39736
|
*
|
|
39737
|
+
* Plan/start takes a live {@link TrainingCorpusSelection} (collections +
|
|
39738
|
+
* work-state rule); frame ids are resolved via pipeline-analytics at that
|
|
39739
|
+
* moment and snapshotted on the job. No frozen dataset version.
|
|
39740
|
+
*
|
|
39546
39741
|
* Every method is `admin`.
|
|
39547
39742
|
*/
|
|
39548
|
-
/**
|
|
39549
|
-
|
|
39743
|
+
/**
|
|
39744
|
+
* Live corpus criteria for plan/start (design §5.2). Default is complete-only.
|
|
39745
|
+
* Frame ids are resolved at plan/start — never a frozen version id.
|
|
39746
|
+
*/
|
|
39747
|
+
var TrainingCorpusSelectionSchema = object({
|
|
39748
|
+
collectionIds: array(string()).min(1),
|
|
39749
|
+
/** Default complete-only for v1 */
|
|
39750
|
+
workState: _enum([
|
|
39751
|
+
"complete",
|
|
39752
|
+
"annotated_or_complete",
|
|
39753
|
+
"any_annotated"
|
|
39754
|
+
]).default("complete")
|
|
39755
|
+
});
|
|
39550
39756
|
/** A base model a detector job can fine-tune, and the baseline it is judged against. */
|
|
39551
39757
|
var TrainingBaseModelSchema = object({
|
|
39552
39758
|
modelId: string(),
|
|
@@ -39564,9 +39770,13 @@ var TrainingPresetSchema = _enum([
|
|
|
39564
39770
|
"thorough"
|
|
39565
39771
|
]);
|
|
39566
39772
|
var TrainingJobRequestSchema = object({
|
|
39567
|
-
|
|
39568
|
-
|
|
39569
|
-
|
|
39773
|
+
/** Live collection + work-state criteria; resolved at plan/start. */
|
|
39774
|
+
selection: TrainingCorpusSelectionSchema,
|
|
39775
|
+
/**
|
|
39776
|
+
* The provider **entry** that runs it (credentials + defaults).
|
|
39777
|
+
* Resolve to an owning addon via `training-provider.describe` / `listEntries`.
|
|
39778
|
+
*/
|
|
39779
|
+
entryId: string().min(1),
|
|
39570
39780
|
gpuType: string().min(1),
|
|
39571
39781
|
region: string(),
|
|
39572
39782
|
baseModelId: string().min(1),
|
|
@@ -39625,6 +39835,7 @@ var TrainingJobPlanSchema = object({
|
|
|
39625
39835
|
* result lives after the operator acted on it.
|
|
39626
39836
|
*/
|
|
39627
39837
|
var TrainingJobStateSchema = _enum([
|
|
39838
|
+
"queued",
|
|
39628
39839
|
"uploading",
|
|
39629
39840
|
"submitted",
|
|
39630
39841
|
"starting",
|
|
@@ -39678,6 +39889,11 @@ var TrainingJobSchema = object({
|
|
|
39678
39889
|
createdAt: number(),
|
|
39679
39890
|
updatedAt: number(),
|
|
39680
39891
|
state: TrainingJobStateSchema,
|
|
39892
|
+
/**
|
|
39893
|
+
* Shared by every job enqueued together via `startJobBatch`.
|
|
39894
|
+
* `null` for a lone `startJob`. The engine advances queued siblings by this id.
|
|
39895
|
+
*/
|
|
39896
|
+
batchId: string().nullable().default(null),
|
|
39681
39897
|
stage: TrainingStageSchema.nullable(),
|
|
39682
39898
|
failure: object({
|
|
39683
39899
|
reason: TrainingFailureReasonSchema,
|
|
@@ -39689,6 +39905,12 @@ var TrainingJobSchema = object({
|
|
|
39689
39905
|
maxRuntimeSec: number().int().positive(),
|
|
39690
39906
|
trainer: TrainerSourceRefSchema,
|
|
39691
39907
|
datasetLayout: RetrainExportLayoutSchema,
|
|
39908
|
+
/** Frame count snapshotted when the job started (audit; equals `frameIds.length`). */
|
|
39909
|
+
frameCount: number().int().nonnegative(),
|
|
39910
|
+
/** Resolved frame ids at start — the archive ships exactly these. */
|
|
39911
|
+
frameIds: array(string()).max(2e4).readonly(),
|
|
39912
|
+
/** Hash of what those frames taught at start (trainer `dataset.annotationHash`). */
|
|
39913
|
+
annotationHash: string(),
|
|
39692
39914
|
dataset: object({
|
|
39693
39915
|
bytes: number().int(),
|
|
39694
39916
|
sha256: string(),
|
|
@@ -39730,13 +39952,7 @@ var TrainingJobSchema = object({
|
|
|
39730
39952
|
canary: TrainingCanarySchema.nullable()
|
|
39731
39953
|
});
|
|
39732
39954
|
var IdInput = object({ id: string().min(1) });
|
|
39733
|
-
method(
|
|
39734
|
-
kind: "mutation",
|
|
39735
|
-
auth: "admin"
|
|
39736
|
-
}), method(IdInput, TrainingDatasetVersionRowSchema.nullable(), { auth: "admin" }), method(object({}), array(RetrainDatasetVersionSchema).readonly(), { auth: "admin" }), method(object({ name: string() }), object({ id: string().nullable() }), { auth: "admin" }), method(IdInput, object({ removed: boolean() }), {
|
|
39737
|
-
kind: "mutation",
|
|
39738
|
-
auth: "admin"
|
|
39739
|
-
}), method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" }), method(TrainingJobRequestSchema, TrainingJobPlanSchema, {
|
|
39955
|
+
method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" }), method(TrainingJobRequestSchema, TrainingJobPlanSchema, {
|
|
39740
39956
|
auth: "admin",
|
|
39741
39957
|
timeoutMs: 6e4
|
|
39742
39958
|
}), method(TrainingJobRequestSchema.extend({
|
|
@@ -39755,6 +39971,24 @@ method(TrainingDatasetVersionRowSchema, object({ stored: boolean() }), {
|
|
|
39755
39971
|
kind: "mutation",
|
|
39756
39972
|
auth: "admin",
|
|
39757
39973
|
timeoutMs: 12e4
|
|
39974
|
+
}), method(TrainingJobRequestSchema.omit({ baseModelId: true }).extend({
|
|
39975
|
+
baseModelIds: array(string().min(1)).min(1),
|
|
39976
|
+
name: string().min(1).max(120),
|
|
39977
|
+
maxCostUsd: number().positive(),
|
|
39978
|
+
maxRuntimeSec: number().int().positive(),
|
|
39979
|
+
idempotencyKey: string().min(8).max(80)
|
|
39980
|
+
}), discriminatedUnion("kind", [object({
|
|
39981
|
+
kind: literal("started"),
|
|
39982
|
+
batchId: string(),
|
|
39983
|
+
jobs: array(TrainingJobSchema).min(1).readonly()
|
|
39984
|
+
}), object({
|
|
39985
|
+
kind: literal("refused"),
|
|
39986
|
+
reason: TrainingRefusalReasonSchema,
|
|
39987
|
+
detail: string()
|
|
39988
|
+
})]), {
|
|
39989
|
+
kind: "mutation",
|
|
39990
|
+
auth: "admin",
|
|
39991
|
+
timeoutMs: 12e4
|
|
39758
39992
|
}), method(object({}), array(TrainingJobSchema).readonly(), { auth: "admin" }), method(IdInput, TrainingJobSchema.nullable(), { auth: "admin" }), method(IdInput, TrainingJobSchema, {
|
|
39759
39993
|
kind: "mutation",
|
|
39760
39994
|
auth: "admin",
|
|
@@ -43788,6 +44022,36 @@ Object.freeze({
|
|
|
43788
44022
|
addonId: null,
|
|
43789
44023
|
access: "view"
|
|
43790
44024
|
},
|
|
44025
|
+
"oidcConnections.connectionFormSchema": {
|
|
44026
|
+
capName: "oidc-connections",
|
|
44027
|
+
capScope: "system",
|
|
44028
|
+
addonId: null,
|
|
44029
|
+
access: "view"
|
|
44030
|
+
},
|
|
44031
|
+
"oidcConnections.createConnection": {
|
|
44032
|
+
capName: "oidc-connections",
|
|
44033
|
+
capScope: "system",
|
|
44034
|
+
addonId: null,
|
|
44035
|
+
access: "create"
|
|
44036
|
+
},
|
|
44037
|
+
"oidcConnections.deleteConnection": {
|
|
44038
|
+
capName: "oidc-connections",
|
|
44039
|
+
capScope: "system",
|
|
44040
|
+
addonId: null,
|
|
44041
|
+
access: "delete"
|
|
44042
|
+
},
|
|
44043
|
+
"oidcConnections.listConnections": {
|
|
44044
|
+
capName: "oidc-connections",
|
|
44045
|
+
capScope: "system",
|
|
44046
|
+
addonId: null,
|
|
44047
|
+
access: "view"
|
|
44048
|
+
},
|
|
44049
|
+
"oidcConnections.updateConnection": {
|
|
44050
|
+
capName: "oidc-connections",
|
|
44051
|
+
capScope: "system",
|
|
44052
|
+
addonId: null,
|
|
44053
|
+
access: "create"
|
|
44054
|
+
},
|
|
43791
44055
|
"osd.getStatus": {
|
|
43792
44056
|
capName: "osd",
|
|
43793
44057
|
capScope: "device",
|
|
@@ -43860,6 +44124,12 @@ Object.freeze({
|
|
|
43860
44124
|
addonId: null,
|
|
43861
44125
|
access: "create"
|
|
43862
44126
|
},
|
|
44127
|
+
"osdManager.setSlotCameraEnabled": {
|
|
44128
|
+
capName: "osd-manager",
|
|
44129
|
+
capScope: "system",
|
|
44130
|
+
addonId: null,
|
|
44131
|
+
access: "create"
|
|
44132
|
+
},
|
|
43863
44133
|
"osdManager.upsertTemplate": {
|
|
43864
44134
|
capName: "osd-manager",
|
|
43865
44135
|
capScope: "system",
|
|
@@ -43998,12 +44268,6 @@ Object.freeze({
|
|
|
43998
44268
|
addonId: null,
|
|
43999
44269
|
access: "create"
|
|
44000
44270
|
},
|
|
44001
|
-
"pipelineAnalytics.createRetrainDatasetVersion": {
|
|
44002
|
-
capName: "pipeline-analytics",
|
|
44003
|
-
capScope: "device",
|
|
44004
|
-
addonId: null,
|
|
44005
|
-
access: "create"
|
|
44006
|
-
},
|
|
44007
44271
|
"pipelineAnalytics.deleteDeviceEvents": {
|
|
44008
44272
|
capName: "pipeline-analytics",
|
|
44009
44273
|
capScope: "device",
|
|
@@ -44016,12 +44280,6 @@ Object.freeze({
|
|
|
44016
44280
|
addonId: null,
|
|
44017
44281
|
access: "delete"
|
|
44018
44282
|
},
|
|
44019
|
-
"pipelineAnalytics.deleteRetrainDatasetVersion": {
|
|
44020
|
-
capName: "pipeline-analytics",
|
|
44021
|
-
capScope: "device",
|
|
44022
|
-
addonId: null,
|
|
44023
|
-
access: "delete"
|
|
44024
|
-
},
|
|
44025
44283
|
"pipelineAnalytics.deleteTracks": {
|
|
44026
44284
|
capName: "pipeline-analytics",
|
|
44027
44285
|
capScope: "device",
|
|
@@ -44124,6 +44382,12 @@ Object.freeze({
|
|
|
44124
44382
|
addonId: null,
|
|
44125
44383
|
access: "view"
|
|
44126
44384
|
},
|
|
44385
|
+
"pipelineAnalytics.getRetrainCorpusKpi": {
|
|
44386
|
+
capName: "pipeline-analytics",
|
|
44387
|
+
capScope: "device",
|
|
44388
|
+
addonId: null,
|
|
44389
|
+
access: "view"
|
|
44390
|
+
},
|
|
44127
44391
|
"pipelineAnalytics.getRetrainExportUrl": {
|
|
44128
44392
|
capName: "pipeline-analytics",
|
|
44129
44393
|
capScope: "device",
|
|
@@ -44244,7 +44508,7 @@ Object.freeze({
|
|
|
44244
44508
|
addonId: null,
|
|
44245
44509
|
access: "view"
|
|
44246
44510
|
},
|
|
44247
|
-
"pipelineAnalytics.
|
|
44511
|
+
"pipelineAnalytics.listRetrainCorpusPage": {
|
|
44248
44512
|
capName: "pipeline-analytics",
|
|
44249
44513
|
capScope: "device",
|
|
44250
44514
|
addonId: null,
|
|
@@ -44298,12 +44562,6 @@ Object.freeze({
|
|
|
44298
44562
|
addonId: null,
|
|
44299
44563
|
access: "create"
|
|
44300
44564
|
},
|
|
44301
|
-
"pipelineAnalytics.previewRetrainDataset": {
|
|
44302
|
-
capName: "pipeline-analytics",
|
|
44303
|
-
capScope: "device",
|
|
44304
|
-
addonId: null,
|
|
44305
|
-
access: "view"
|
|
44306
|
-
},
|
|
44307
44565
|
"pipelineAnalytics.proposeRetrainAnnotations": {
|
|
44308
44566
|
capName: "pipeline-analytics",
|
|
44309
44567
|
capScope: "device",
|
|
@@ -44382,6 +44640,12 @@ Object.freeze({
|
|
|
44382
44640
|
addonId: null,
|
|
44383
44641
|
access: "create"
|
|
44384
44642
|
},
|
|
44643
|
+
"pipelineAnalytics.resolveRetrainTrainingCorpus": {
|
|
44644
|
+
capName: "pipeline-analytics",
|
|
44645
|
+
capScope: "device",
|
|
44646
|
+
addonId: null,
|
|
44647
|
+
access: "view"
|
|
44648
|
+
},
|
|
44385
44649
|
"pipelineAnalytics.restageRetrainTrack": {
|
|
44386
44650
|
capName: "pipeline-analytics",
|
|
44387
44651
|
capScope: "device",
|
|
@@ -44442,12 +44706,6 @@ Object.freeze({
|
|
|
44442
44706
|
addonId: null,
|
|
44443
44707
|
access: "create"
|
|
44444
44708
|
},
|
|
44445
|
-
"pipelineAnalytics.verifyRetrainDatasetVersion": {
|
|
44446
|
-
capName: "pipeline-analytics",
|
|
44447
|
-
capScope: "device",
|
|
44448
|
-
addonId: null,
|
|
44449
|
-
access: "view"
|
|
44450
|
-
},
|
|
44451
44709
|
"pipelineAnalytics.wipeAllAnalytics": {
|
|
44452
44710
|
capName: "pipeline-analytics",
|
|
44453
44711
|
capScope: "device",
|
|
@@ -46842,18 +47100,6 @@ Object.freeze({
|
|
|
46842
47100
|
addonId: null,
|
|
46843
47101
|
access: "create"
|
|
46844
47102
|
},
|
|
46845
|
-
"training.findDatasetVersionIdByName": {
|
|
46846
|
-
capName: "training",
|
|
46847
|
-
capScope: "system",
|
|
46848
|
-
addonId: null,
|
|
46849
|
-
access: "view"
|
|
46850
|
-
},
|
|
46851
|
-
"training.getDatasetVersion": {
|
|
46852
|
-
capName: "training",
|
|
46853
|
-
capScope: "system",
|
|
46854
|
-
addonId: null,
|
|
46855
|
-
access: "view"
|
|
46856
|
-
},
|
|
46857
47103
|
"training.getJob": {
|
|
46858
47104
|
capName: "training",
|
|
46859
47105
|
capScope: "system",
|
|
@@ -46872,12 +47118,6 @@ Object.freeze({
|
|
|
46872
47118
|
addonId: null,
|
|
46873
47119
|
access: "view"
|
|
46874
47120
|
},
|
|
46875
|
-
"training.listDatasetVersions": {
|
|
46876
|
-
capName: "training",
|
|
46877
|
-
capScope: "system",
|
|
46878
|
-
addonId: null,
|
|
46879
|
-
access: "view"
|
|
46880
|
-
},
|
|
46881
47121
|
"training.listJobs": {
|
|
46882
47122
|
capName: "training",
|
|
46883
47123
|
capScope: "system",
|
|
@@ -46890,54 +47130,66 @@ Object.freeze({
|
|
|
46890
47130
|
addonId: null,
|
|
46891
47131
|
access: "view"
|
|
46892
47132
|
},
|
|
46893
|
-
"training.
|
|
47133
|
+
"training.registerResult": {
|
|
46894
47134
|
capName: "training",
|
|
46895
47135
|
capScope: "system",
|
|
46896
47136
|
addonId: null,
|
|
46897
47137
|
access: "create"
|
|
46898
47138
|
},
|
|
46899
|
-
"training.
|
|
47139
|
+
"training.rollbackCanary": {
|
|
46900
47140
|
capName: "training",
|
|
46901
47141
|
capScope: "system",
|
|
46902
47142
|
addonId: null,
|
|
46903
47143
|
access: "create"
|
|
46904
47144
|
},
|
|
46905
|
-
"training.
|
|
47145
|
+
"training.startJob": {
|
|
46906
47146
|
capName: "training",
|
|
46907
47147
|
capScope: "system",
|
|
46908
47148
|
addonId: null,
|
|
46909
|
-
access: "
|
|
47149
|
+
access: "create"
|
|
46910
47150
|
},
|
|
46911
|
-
"training.
|
|
47151
|
+
"training.startJobBatch": {
|
|
46912
47152
|
capName: "training",
|
|
46913
47153
|
capScope: "system",
|
|
46914
47154
|
addonId: null,
|
|
46915
47155
|
access: "create"
|
|
46916
47156
|
},
|
|
46917
|
-
"
|
|
46918
|
-
capName: "training",
|
|
47157
|
+
"trainingProvider.cancelJob": {
|
|
47158
|
+
capName: "training-provider",
|
|
46919
47159
|
capScope: "system",
|
|
46920
47160
|
addonId: null,
|
|
46921
47161
|
access: "create"
|
|
46922
47162
|
},
|
|
46923
|
-
"trainingProvider.
|
|
47163
|
+
"trainingProvider.cleanupJob": {
|
|
46924
47164
|
capName: "training-provider",
|
|
46925
47165
|
capScope: "system",
|
|
46926
47166
|
addonId: null,
|
|
46927
47167
|
access: "create"
|
|
46928
47168
|
},
|
|
46929
|
-
"trainingProvider.
|
|
47169
|
+
"trainingProvider.createEntry": {
|
|
46930
47170
|
capName: "training-provider",
|
|
46931
47171
|
capScope: "system",
|
|
46932
47172
|
addonId: null,
|
|
46933
47173
|
access: "create"
|
|
46934
47174
|
},
|
|
47175
|
+
"trainingProvider.deleteEntry": {
|
|
47176
|
+
capName: "training-provider",
|
|
47177
|
+
capScope: "system",
|
|
47178
|
+
addonId: null,
|
|
47179
|
+
access: "delete"
|
|
47180
|
+
},
|
|
46935
47181
|
"trainingProvider.describe": {
|
|
46936
47182
|
capName: "training-provider",
|
|
46937
47183
|
capScope: "system",
|
|
46938
47184
|
addonId: null,
|
|
46939
47185
|
access: "view"
|
|
46940
47186
|
},
|
|
47187
|
+
"trainingProvider.describeTypes": {
|
|
47188
|
+
capName: "training-provider",
|
|
47189
|
+
capScope: "system",
|
|
47190
|
+
addonId: null,
|
|
47191
|
+
access: "view"
|
|
47192
|
+
},
|
|
46941
47193
|
"trainingProvider.estimateJob": {
|
|
46942
47194
|
capName: "training-provider",
|
|
46943
47195
|
capScope: "system",
|
|
@@ -46950,6 +47202,12 @@ Object.freeze({
|
|
|
46950
47202
|
addonId: null,
|
|
46951
47203
|
access: "view"
|
|
46952
47204
|
},
|
|
47205
|
+
"trainingProvider.listEntries": {
|
|
47206
|
+
capName: "training-provider",
|
|
47207
|
+
capScope: "system",
|
|
47208
|
+
addonId: null,
|
|
47209
|
+
access: "view"
|
|
47210
|
+
},
|
|
46953
47211
|
"trainingProvider.listJobEvents": {
|
|
46954
47212
|
capName: "training-provider",
|
|
46955
47213
|
capScope: "system",
|
|
@@ -46980,6 +47238,12 @@ Object.freeze({
|
|
|
46980
47238
|
addonId: null,
|
|
46981
47239
|
access: "create"
|
|
46982
47240
|
},
|
|
47241
|
+
"trainingProvider.updateEntry": {
|
|
47242
|
+
capName: "training-provider",
|
|
47243
|
+
capScope: "system",
|
|
47244
|
+
addonId: null,
|
|
47245
|
+
access: "create"
|
|
47246
|
+
},
|
|
46983
47247
|
"trainingProvider.uploadDataset": {
|
|
46984
47248
|
capName: "training-provider",
|
|
46985
47249
|
capScope: "system",
|
|
@@ -50186,6 +50450,11 @@ Object.freeze({
|
|
|
50186
50450
|
form: "single",
|
|
50187
50451
|
optional: false
|
|
50188
50452
|
}],
|
|
50453
|
+
"osdManager.setSlotCameraEnabled": [{
|
|
50454
|
+
name: "deviceId",
|
|
50455
|
+
form: "single",
|
|
50456
|
+
optional: false
|
|
50457
|
+
}],
|
|
50189
50458
|
"petFeeder.callPet": [{
|
|
50190
50459
|
name: "deviceId",
|
|
50191
50460
|
form: "single",
|
|
@@ -50406,6 +50675,11 @@ Object.freeze({
|
|
|
50406
50675
|
form: "array",
|
|
50407
50676
|
optional: false
|
|
50408
50677
|
}],
|
|
50678
|
+
"pipelineAnalytics.listRetrainCorpusPage": [{
|
|
50679
|
+
name: "deviceIds",
|
|
50680
|
+
form: "array",
|
|
50681
|
+
optional: true
|
|
50682
|
+
}],
|
|
50409
50683
|
"pipelineAnalytics.listRetrainStaging": [{
|
|
50410
50684
|
name: "deviceIds",
|
|
50411
50685
|
form: "array",
|
|
@@ -51515,6 +51789,7 @@ Object.freeze({
|
|
|
51515
51789
|
});
|
|
51516
51790
|
Object.freeze({
|
|
51517
51791
|
"broker": "broker",
|
|
51792
|
+
"calendar-source": "calendar",
|
|
51518
51793
|
"device-export": "device-export",
|
|
51519
51794
|
"llm": "ai",
|
|
51520
51795
|
"mesh-network": "mesh",
|