@camstack/addon-notifiers 1.2.129 → 1.2.130
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/addon.js +422 -139
- package/dist/addon.mjs +422 -139
- package/package.json +1 -1
package/dist/addon.mjs
CHANGED
|
@@ -5380,7 +5380,7 @@ var ZodIssueCode = {
|
|
|
5380
5380
|
var ZodFirstPartyTypeKind;
|
|
5381
5381
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5382
5382
|
//#endregion
|
|
5383
|
-
//#region ../types/dist/sleep-
|
|
5383
|
+
//#region ../types/dist/sleep-DwAQ9sqX.mjs
|
|
5384
5384
|
/**
|
|
5385
5385
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5386
5386
|
* window to float samples (D455).
|
|
@@ -9331,6 +9331,16 @@ var CompositionSchema = object({
|
|
|
9331
9331
|
seen.add(feature.cap);
|
|
9332
9332
|
});
|
|
9333
9333
|
});
|
|
9334
|
+
var NodeColorIdSchema = _enum([
|
|
9335
|
+
"node-a",
|
|
9336
|
+
"node-b",
|
|
9337
|
+
"node-c",
|
|
9338
|
+
"node-d",
|
|
9339
|
+
"node-e",
|
|
9340
|
+
"node-f",
|
|
9341
|
+
"node-g",
|
|
9342
|
+
"node-h"
|
|
9343
|
+
]);
|
|
9334
9344
|
new Set([
|
|
9335
9345
|
"track",
|
|
9336
9346
|
"face",
|
|
@@ -18206,14 +18216,14 @@ var LlmProfileSchema = object({
|
|
|
18206
18216
|
/** ConfigUISchema tree passed through untyped on the wire (the
|
|
18207
18217
|
* notification-output `ConfigSchemaPassthrough` precedent at
|
|
18208
18218
|
* notification-output.cap.ts:151); the exported TS type re-tightens it. */
|
|
18209
|
-
var ConfigSchemaPassthrough$
|
|
18219
|
+
var ConfigSchemaPassthrough$3 = unknown();
|
|
18210
18220
|
var LlmProfileKindDescriptorSchema = object({
|
|
18211
18221
|
kind: LlmProfileKindSchema,
|
|
18212
18222
|
label: string(),
|
|
18213
18223
|
icon: string(),
|
|
18214
18224
|
/** Stamped by each provider so the concat-fanned catalog stays routable. */
|
|
18215
18225
|
addonId: string(),
|
|
18216
|
-
configSchema: ConfigSchemaPassthrough$
|
|
18226
|
+
configSchema: ConfigSchemaPassthrough$3
|
|
18217
18227
|
});
|
|
18218
18228
|
var LlmDefaultSelectorSchema = union([object({ consumer: string() }), object({ purpose: _enum(["text", "vision"]) })]);
|
|
18219
18229
|
var LlmDefaultSchema = object({
|
|
@@ -19334,7 +19344,7 @@ var TargetKindCapsSchema = object({
|
|
|
19334
19344
|
* the union is large and not meant for runtime validation here; the exported
|
|
19335
19345
|
* `TargetKind` type re-tightens `configSchema` to `ConfigUISchema`.
|
|
19336
19346
|
*/
|
|
19337
|
-
var ConfigSchemaPassthrough = unknown();
|
|
19347
|
+
var ConfigSchemaPassthrough$2 = unknown();
|
|
19338
19348
|
var TargetKindSchema = object({
|
|
19339
19349
|
kind: string(),
|
|
19340
19350
|
label: string(),
|
|
@@ -19371,7 +19381,7 @@ var TargetKindSchema = object({
|
|
|
19371
19381
|
* its raster path, which is the safe default for an unknown image.
|
|
19372
19382
|
*/
|
|
19373
19383
|
iconMediaType: string().optional(),
|
|
19374
|
-
configSchema: ConfigSchemaPassthrough,
|
|
19384
|
+
configSchema: ConfigSchemaPassthrough$2,
|
|
19375
19385
|
/**
|
|
19376
19386
|
* The config keys that decide WHERE this kind's secrets are sent (server,
|
|
19377
19387
|
* base URL, instance, chat, recipient). A save that changes any of them
|
|
@@ -22692,6 +22702,61 @@ var OauthIntegrationDescriptorSchema = object({
|
|
|
22692
22702
|
});
|
|
22693
22703
|
method(_void(), OauthIntegrationDescriptorSchema, { auth: "admin" });
|
|
22694
22704
|
/**
|
|
22705
|
+
* `oidc-connections` — CRUD for IdP rows under `auth-oidc` (D828 sibling).
|
|
22706
|
+
*
|
|
22707
|
+
* One hub-only singleton (`auth-oidc`). The Settings UI is a DataTable +
|
|
22708
|
+
* ItemFormDialog; there is no `editable-array` in `globalSettingsSchema`.
|
|
22709
|
+
* Operator-chosen `id` is the URL slug (`/addon/auth-oidc/<id>/…`) and is
|
|
22710
|
+
* immutable after create.
|
|
22711
|
+
*/
|
|
22712
|
+
var ConfigSchemaPassthrough$1 = unknown();
|
|
22713
|
+
var OidcConnectionSchema = object({
|
|
22714
|
+
id: string().min(1),
|
|
22715
|
+
displayName: string(),
|
|
22716
|
+
icon: string(),
|
|
22717
|
+
issuerUrl: string(),
|
|
22718
|
+
clientId: string(),
|
|
22719
|
+
/** Client id + secret present — never the secret value. */
|
|
22720
|
+
configured: boolean(),
|
|
22721
|
+
/**
|
|
22722
|
+
* Values for the connection form schema. `clientSecret` is a keychain
|
|
22723
|
+
* {@link SecretFieldView} or `null` / `''`, never plaintext (D789).
|
|
22724
|
+
*/
|
|
22725
|
+
formValues: record(string(), unknown()).optional()
|
|
22726
|
+
});
|
|
22727
|
+
/**
|
|
22728
|
+
* Patch one connection. Omitted or empty `clientSecret` keeps the stored
|
|
22729
|
+
* secret (D787). `{ $secretClear: true }` clears it. `id` is never renamed.
|
|
22730
|
+
*/
|
|
22731
|
+
var OidcConnectionUpdateInputSchema = object({
|
|
22732
|
+
id: string().min(1),
|
|
22733
|
+
displayName: string().min(1),
|
|
22734
|
+
icon: string().optional(),
|
|
22735
|
+
issuerUrl: string().optional(),
|
|
22736
|
+
clientId: string().optional(),
|
|
22737
|
+
clientSecret: union([string(), object({ $secretClear: literal(true) })]).optional(),
|
|
22738
|
+
redirectUri: string().optional(),
|
|
22739
|
+
scopes: string().optional(),
|
|
22740
|
+
usernameClaim: _enum([
|
|
22741
|
+
"preferred_username",
|
|
22742
|
+
"email",
|
|
22743
|
+
"sub"
|
|
22744
|
+
]).optional()
|
|
22745
|
+
});
|
|
22746
|
+
method(object({}), ConfigSchemaPassthrough$1, { auth: "admin" }), method(object({}), array(OidcConnectionSchema).readonly(), { auth: "admin" }), method(object({
|
|
22747
|
+
id: string().min(1).regex(/^[a-z0-9][a-z0-9-]{0,63}$/, "id must be a lowercase slug"),
|
|
22748
|
+
displayName: string().min(1)
|
|
22749
|
+
}), object({ id: string() }), {
|
|
22750
|
+
kind: "mutation",
|
|
22751
|
+
auth: "admin"
|
|
22752
|
+
}), method(OidcConnectionUpdateInputSchema, object({ ok: literal(true) }), {
|
|
22753
|
+
kind: "mutation",
|
|
22754
|
+
auth: "admin"
|
|
22755
|
+
}), method(object({ id: string().min(1) }), object({ ok: literal(true) }), {
|
|
22756
|
+
kind: "mutation",
|
|
22757
|
+
auth: "admin"
|
|
22758
|
+
});
|
|
22759
|
+
/**
|
|
22695
22760
|
* What started a camera's onboard motion (D672). `camera` is the camera's own
|
|
22696
22761
|
* firmware; `sensor` is a device the operator ATTACHED to it. Absent on the
|
|
22697
22762
|
* wire means the camera: only the camera-sensors bridge ever says `sensor`.
|
|
@@ -24048,24 +24113,69 @@ var RetrainFrameListSchema = object({
|
|
|
24048
24113
|
/** What the page pre-selects — the native key frame when one survives. */
|
|
24049
24114
|
autoPickMediaId: number().int().optional()
|
|
24050
24115
|
});
|
|
24116
|
+
/** Exclusive partition of a corpus copy's annotation progress (design §4.2). */
|
|
24117
|
+
var RetrainFrameWorkStateSchema = _enum([
|
|
24118
|
+
"unannotated",
|
|
24119
|
+
"annotated",
|
|
24120
|
+
"complete"
|
|
24121
|
+
]);
|
|
24122
|
+
/**
|
|
24123
|
+
* Filters for paginated corpus list, KPI, and matching export (design §4.4).
|
|
24124
|
+
* Every narrowing field is ANDed; omitted fields impose no constraint.
|
|
24125
|
+
*/
|
|
24126
|
+
var RetrainCorpusFilterSchema = object({
|
|
24127
|
+
workState: RetrainFrameWorkStateSchema.optional(),
|
|
24128
|
+
deviceIds: array(number()).max(500).optional(),
|
|
24129
|
+
/** When set, only frames in this named collection. */
|
|
24130
|
+
collectionId: string().optional(),
|
|
24131
|
+
/** Frames that carry at least one saved annotation in one of these classes. */
|
|
24132
|
+
classes: array(RetrainMacroClassSchema).optional(),
|
|
24133
|
+
page: number().int().positive().default(1),
|
|
24134
|
+
pageSize: number().int().positive().max(100).default(50)
|
|
24135
|
+
});
|
|
24136
|
+
var RetrainCorpusPageSchema = object({
|
|
24137
|
+
frames: array(RetrainFrameSchema.extend({ workState: RetrainFrameWorkStateSchema })).readonly(),
|
|
24138
|
+
total: number().int().nonnegative(),
|
|
24139
|
+
page: number().int().positive(),
|
|
24140
|
+
pageSize: number().int().positive()
|
|
24141
|
+
});
|
|
24142
|
+
var RetrainCorpusKpiCameraRowSchema = object({
|
|
24143
|
+
deviceId: number(),
|
|
24144
|
+
unannotated: number().int().nonnegative(),
|
|
24145
|
+
annotated: number().int().nonnegative(),
|
|
24146
|
+
complete: number().int().nonnegative(),
|
|
24147
|
+
/** This camera's `complete` count divided by corpus `total`, in `[0,1]`.
|
|
24148
|
+
* `null` when the corpus is empty (no ratio). */
|
|
24149
|
+
pctOfCorpus: number().min(0).max(1).nullable()
|
|
24150
|
+
});
|
|
24151
|
+
var RetrainCorpusKpiSchema = object({
|
|
24152
|
+
total: number().int().nonnegative(),
|
|
24153
|
+
unannotated: number().int().nonnegative(),
|
|
24154
|
+
annotated: number().int().nonnegative(),
|
|
24155
|
+
complete: number().int().nonnegative(),
|
|
24156
|
+
cameras: array(RetrainCorpusKpiCameraRowSchema).readonly()
|
|
24157
|
+
});
|
|
24051
24158
|
/**
|
|
24052
24159
|
* Which frames an annotated export carries. Every field narrows; an empty
|
|
24053
|
-
* filter is every annotated copy.
|
|
24054
|
-
*
|
|
24055
|
-
*
|
|
24056
|
-
*
|
|
24160
|
+
* filter is every annotated copy. `frameIds` is the primitive a job or
|
|
24161
|
+
* download uses; `batchId` re-selects what an earlier export carried
|
|
24162
|
+
* (`exportedInBatch`). Frozen dataset versions were removed — live selection
|
|
24163
|
+
* resolves to `frameIds` at plan/start.
|
|
24057
24164
|
*/
|
|
24058
24165
|
var RetrainExportFilterSchema = object({
|
|
24059
24166
|
deviceIds: array(number()).optional(),
|
|
24060
24167
|
frameIds: array(string()).max(2e4).optional(),
|
|
24061
24168
|
/** Only frames in at least one of these named collections. */
|
|
24062
24169
|
collectionIds: array(string()).max(200).optional(),
|
|
24063
|
-
/**
|
|
24064
|
-
|
|
24065
|
-
datasetVersionId: string().optional(),
|
|
24170
|
+
/** Single collection (Frames filter bar). ANDed with `collectionIds` when both set. */
|
|
24171
|
+
collectionId: string().optional(),
|
|
24066
24172
|
batchId: string().optional(),
|
|
24067
24173
|
/** Only frames the operator marked complete (all subjects boxed). */
|
|
24068
|
-
completeOnly: boolean().optional()
|
|
24174
|
+
completeOnly: boolean().optional(),
|
|
24175
|
+
/** Exclusive work-state partition (`workStateOf`); same as the corpus list. */
|
|
24176
|
+
workState: RetrainFrameWorkStateSchema.optional(),
|
|
24177
|
+
/** Frames with at least one saved annotation in one of these classes. */
|
|
24178
|
+
classes: array(RetrainMacroClassSchema).optional()
|
|
24069
24179
|
});
|
|
24070
24180
|
/**
|
|
24071
24181
|
* `frames`: the full frame copies, boxes in `annotations.json`.
|
|
@@ -24265,8 +24375,7 @@ var RetrainDatasetStatsSchema = object({
|
|
|
24265
24375
|
completeFrames: number().int()
|
|
24266
24376
|
})).readonly()
|
|
24267
24377
|
});
|
|
24268
|
-
|
|
24269
|
-
var RetrainDatasetVersionSchema = object({
|
|
24378
|
+
object({
|
|
24270
24379
|
id: string(),
|
|
24271
24380
|
name: string(),
|
|
24272
24381
|
createdAt: number(),
|
|
@@ -24274,22 +24383,33 @@ var RetrainDatasetVersionSchema = object({
|
|
|
24274
24383
|
layout: RetrainExportLayoutSchema,
|
|
24275
24384
|
completeOnly: boolean(),
|
|
24276
24385
|
frameCount: number().int(),
|
|
24277
|
-
/** sha256 of what the frames taught when the version was frozen. */
|
|
24278
24386
|
annotationHash: string(),
|
|
24279
|
-
/** The export manifest schema the version was cut under. */
|
|
24280
24387
|
manifestSchema: string(),
|
|
24281
24388
|
stats: RetrainDatasetStatsSchema
|
|
24282
24389
|
});
|
|
24283
|
-
|
|
24284
|
-
|
|
24285
|
-
|
|
24390
|
+
/**
|
|
24391
|
+
* Live training corpus criteria — same shape as `TrainingCorpusSelection` on
|
|
24392
|
+
* the training cap. Resolved here so plan/start and the annotated export share
|
|
24393
|
+
* one definition of "the frames" (`buildRetrainExportPlan`).
|
|
24394
|
+
*/
|
|
24395
|
+
var RetrainTrainingCorpusSelectionSchema = object({
|
|
24396
|
+
collectionIds: array(string()).min(1),
|
|
24397
|
+
workState: _enum([
|
|
24398
|
+
"complete",
|
|
24399
|
+
"annotated_or_complete",
|
|
24400
|
+
"any_annotated"
|
|
24401
|
+
]).default("complete")
|
|
24402
|
+
});
|
|
24403
|
+
var RetrainTrainingCorpusResolveResultSchema = discriminatedUnion("kind", [object({
|
|
24404
|
+
kind: literal("resolved"),
|
|
24405
|
+
frameIds: array(string()).max(2e4).readonly(),
|
|
24406
|
+
stats: RetrainDatasetStatsSchema,
|
|
24407
|
+
annotationHash: string(),
|
|
24408
|
+
layout: RetrainExportLayoutSchema
|
|
24286
24409
|
}), object({
|
|
24287
24410
|
kind: literal("refused"),
|
|
24288
|
-
reason: _enum([
|
|
24289
|
-
|
|
24290
|
-
"duplicate-name",
|
|
24291
|
-
"no-frames"
|
|
24292
|
-
])
|
|
24411
|
+
reason: _enum(["unknown-collection", "no-frames"]),
|
|
24412
|
+
detail: string()
|
|
24293
24413
|
})]);
|
|
24294
24414
|
/** The outcome of a lifecycle move owned by the retrain page. */
|
|
24295
24415
|
var RetrainTransitionResultSchema = object({
|
|
@@ -24996,6 +25116,12 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
24996
25116
|
}), array(RetrainTrackSchema).readonly(), {
|
|
24997
25117
|
kind: "query",
|
|
24998
25118
|
auth: "admin"
|
|
25119
|
+
}), method(RetrainCorpusFilterSchema, RetrainCorpusPageSchema, {
|
|
25120
|
+
kind: "query",
|
|
25121
|
+
auth: "admin"
|
|
25122
|
+
}), method(object({}), RetrainCorpusKpiSchema, {
|
|
25123
|
+
kind: "query",
|
|
25124
|
+
auth: "admin"
|
|
24999
25125
|
}), method(object({ trackId: string() }), RetrainFrameListSchema, {
|
|
25000
25126
|
kind: "query",
|
|
25001
25127
|
auth: "admin"
|
|
@@ -25091,36 +25217,6 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25091
25217
|
kind: "mutation",
|
|
25092
25218
|
auth: "admin",
|
|
25093
25219
|
timeoutMs: 12e4
|
|
25094
|
-
}), method(object({
|
|
25095
|
-
selection: RetrainDatasetSelectionSchema,
|
|
25096
|
-
completeOnly: boolean().optional()
|
|
25097
|
-
}), RetrainDatasetStatsSchema, {
|
|
25098
|
-
kind: "query",
|
|
25099
|
-
auth: "admin"
|
|
25100
|
-
}), method(object({
|
|
25101
|
-
name: string().max(120),
|
|
25102
|
-
selection: RetrainDatasetSelectionSchema,
|
|
25103
|
-
layout: RetrainExportLayoutSchema,
|
|
25104
|
-
completeOnly: boolean()
|
|
25105
|
-
}), CreateRetrainDatasetVersionResultSchema, {
|
|
25106
|
-
kind: "mutation",
|
|
25107
|
-
auth: "admin",
|
|
25108
|
-
timeoutMs: 12e4
|
|
25109
|
-
}), method(object({}), array(RetrainDatasetVersionSchema).readonly(), {
|
|
25110
|
-
kind: "query",
|
|
25111
|
-
auth: "admin"
|
|
25112
|
-
}), method(object({ id: string() }), object({ deleted: boolean() }), {
|
|
25113
|
-
kind: "mutation",
|
|
25114
|
-
auth: "admin"
|
|
25115
|
-
}), method(object({ id: string() }), object({
|
|
25116
|
-
found: boolean(),
|
|
25117
|
-
annotationHash: string(),
|
|
25118
|
-
matches: boolean(),
|
|
25119
|
-
missingFrames: number().int()
|
|
25120
|
-
}), {
|
|
25121
|
-
kind: "query",
|
|
25122
|
-
auth: "admin",
|
|
25123
|
-
timeoutMs: 12e4
|
|
25124
25220
|
}), method(object({}), array(RetrainAssistProfileSchema).readonly(), {
|
|
25125
25221
|
kind: "query",
|
|
25126
25222
|
auth: "admin"
|
|
@@ -25147,6 +25243,10 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25147
25243
|
}), method(object({}), array(RetrainCollectionSchema).readonly(), {
|
|
25148
25244
|
kind: "query",
|
|
25149
25245
|
auth: "admin"
|
|
25246
|
+
}), method(RetrainTrainingCorpusSelectionSchema, RetrainTrainingCorpusResolveResultSchema, {
|
|
25247
|
+
kind: "query",
|
|
25248
|
+
auth: "admin",
|
|
25249
|
+
timeoutMs: 6e4
|
|
25150
25250
|
}), method(object({
|
|
25151
25251
|
id: string(),
|
|
25152
25252
|
name: string().max(120)
|
|
@@ -25763,11 +25863,14 @@ var HardwareClassIdSchema = _enum([
|
|
|
25763
25863
|
"intel-n-series",
|
|
25764
25864
|
"apple-m-base",
|
|
25765
25865
|
"apple-m-pro",
|
|
25866
|
+
"amd-phoenix",
|
|
25766
25867
|
"unknown"
|
|
25767
25868
|
]);
|
|
25768
25869
|
var AcceleratorKindSchema = _enum([
|
|
25769
25870
|
"intel-npu",
|
|
25770
25871
|
"intel-igpu",
|
|
25872
|
+
"amd-igpu",
|
|
25873
|
+
"amd-npu",
|
|
25771
25874
|
"x86-cpu",
|
|
25772
25875
|
"arm-cpu",
|
|
25773
25876
|
"apple-ane",
|
|
@@ -27657,6 +27760,8 @@ var AgentPipelineSettingsSchema = object({
|
|
|
27657
27760
|
* address is wrong (multi-homed host, NAT, custom interface).
|
|
27658
27761
|
*/
|
|
27659
27762
|
reachableHost: string().optional(),
|
|
27763
|
+
/** Hub-persisted UI colour (`--color-node-*` theme tokens). */
|
|
27764
|
+
color: NodeColorIdSchema.optional(),
|
|
27660
27765
|
/**
|
|
27661
27766
|
* Multi-device inference opt-in (Phase 4). Per-node map deviceKey → {enabled,
|
|
27662
27767
|
* weight, steps}. Absent / all-disabled ⇒ the node's single default
|
|
@@ -28206,8 +28311,9 @@ method(object({
|
|
|
28206
28311
|
auth: "admin"
|
|
28207
28312
|
}), method(object({
|
|
28208
28313
|
agentNodeId: string(),
|
|
28209
|
-
reachableHost: string().nullable()
|
|
28210
|
-
|
|
28314
|
+
reachableHost: string().nullable().optional(),
|
|
28315
|
+
color: NodeColorIdSchema.nullable().optional()
|
|
28316
|
+
}).refine((v) => v.reachableHost !== void 0 || v.color !== void 0, { message: "reachableHost or color required" }), object({ success: literal(true) }), {
|
|
28211
28317
|
kind: "mutation",
|
|
28212
28318
|
auth: "admin"
|
|
28213
28319
|
}), method(object({
|
|
@@ -31254,7 +31360,7 @@ var CustomActionInputSchema = object({
|
|
|
31254
31360
|
action: string().min(1),
|
|
31255
31361
|
input: unknown()
|
|
31256
31362
|
});
|
|
31257
|
-
method(
|
|
31363
|
+
method(object({ nodeId: string().optional() }).optional(), array(AddonListItemSchema).readonly()), method(object({
|
|
31258
31364
|
addonId: string(),
|
|
31259
31365
|
limit: number().min(1).max(500).default(100),
|
|
31260
31366
|
level: LogLevelSchema$2.optional()
|
|
@@ -34801,7 +34907,13 @@ var TopologyNodeSchema = object({
|
|
|
34801
34907
|
})).readonly(),
|
|
34802
34908
|
processes: array(TopologyProcessSchema).readonly(),
|
|
34803
34909
|
categories: array(TopologyCategorySchema).readonly(),
|
|
34804
|
-
rootPackage: TopologyRootPackageSchema.nullable()
|
|
34910
|
+
rootPackage: TopologyRootPackageSchema.nullable(),
|
|
34911
|
+
/**
|
|
34912
|
+
* How an online AGENT reaches the hub (mesh mTLS Release A): `tls` once it has
|
|
34913
|
+
* completed a mutual-TLS handshake, `clear` otherwise. Absent for the hub,
|
|
34914
|
+
* for offline rows and when the hub cannot tell.
|
|
34915
|
+
*/
|
|
34916
|
+
meshTransport: _enum(["tls", "clear"]).optional()
|
|
34805
34917
|
});
|
|
34806
34918
|
var CapUsageEdgeSchema = object({
|
|
34807
34919
|
callerAddonId: string(),
|
|
@@ -35141,6 +35253,7 @@ var OsdNamedTemplateSchema = object({
|
|
|
35141
35253
|
});
|
|
35142
35254
|
/** Where a slot's value comes from. */
|
|
35143
35255
|
var OsdSourceSchema = discriminatedUnion("kind", [
|
|
35256
|
+
object({ kind: literal("none") }),
|
|
35144
35257
|
object({
|
|
35145
35258
|
kind: literal("static"),
|
|
35146
35259
|
text: string().max(64)
|
|
@@ -35267,6 +35380,13 @@ method(object({ deviceId: number().int() }), object({
|
|
|
35267
35380
|
}), object({ success: literal(true) }), {
|
|
35268
35381
|
kind: "mutation",
|
|
35269
35382
|
auth: "admin"
|
|
35383
|
+
}), method(object({
|
|
35384
|
+
deviceId: number().int(),
|
|
35385
|
+
slotId: string().min(1),
|
|
35386
|
+
enabled: boolean()
|
|
35387
|
+
}), object({ success: literal(true) }), {
|
|
35388
|
+
kind: "mutation",
|
|
35389
|
+
auth: "admin"
|
|
35270
35390
|
}), method(object({
|
|
35271
35391
|
sourceDeviceId: number().int(),
|
|
35272
35392
|
targetDeviceId: number().int()
|
|
@@ -35647,7 +35767,15 @@ var GpuInfoSchema = object({
|
|
|
35647
35767
|
name: string(),
|
|
35648
35768
|
memoryMB: number().optional()
|
|
35649
35769
|
});
|
|
35650
|
-
var NpuInfoSchema = object({
|
|
35770
|
+
var NpuInfoSchema = object({
|
|
35771
|
+
type: _enum([
|
|
35772
|
+
"apple-ane",
|
|
35773
|
+
"intel-npu",
|
|
35774
|
+
"amd-xdna"
|
|
35775
|
+
]),
|
|
35776
|
+
name: string().optional(),
|
|
35777
|
+
generation: _enum(["xdna1", "xdna2"]).optional()
|
|
35778
|
+
});
|
|
35651
35779
|
var CoralInfoSchema = object({
|
|
35652
35780
|
type: literal("coral-edgetpu"),
|
|
35653
35781
|
bus: string().optional()
|
|
@@ -39409,9 +39537,11 @@ DeviceType.Camera, method(object({
|
|
|
39409
39537
|
* once is what makes a second provider (RunPod, a local NVIDIA node) a new
|
|
39410
39538
|
* manifest entry and nothing else.
|
|
39411
39539
|
*
|
|
39412
|
-
* Collection
|
|
39413
|
-
*
|
|
39414
|
-
*
|
|
39540
|
+
* Collection of provider **types** (addons). Each addon owns zero or more
|
|
39541
|
+
* **entries** (credentials + defaults). Concat-fans: `describe`,
|
|
39542
|
+
* `describeTypes`, `listEntries`, `listJobs`. Single-row work is keyed by
|
|
39543
|
+
* `entryId`; callers also pass the owning `addonId` as the collection
|
|
39544
|
+
* selector (broker posture). Every method is `admin`: these spend money.
|
|
39415
39545
|
*
|
|
39416
39546
|
* Every cloud object a provider creates is tagged with the orchestrator's
|
|
39417
39547
|
* `jobKey`, so a retried submit finds the job it already started instead of
|
|
@@ -39435,8 +39565,8 @@ var TrainingRegionOptionSchema = object({
|
|
|
39435
39565
|
priceMultiplier: number().positive()
|
|
39436
39566
|
});
|
|
39437
39567
|
/**
|
|
39438
|
-
* The provider's per-
|
|
39439
|
-
* live
|
|
39568
|
+
* The provider's per-entry settings, as the orchestrator reads them. They
|
|
39569
|
+
* live on the PROVIDER addon's entry (operator decision 2026-10-08: they
|
|
39440
39570
|
* depend on the user's account), never hard-coded in the orchestrator.
|
|
39441
39571
|
*/
|
|
39442
39572
|
var TrainingProviderDefaultsSchema = object({
|
|
@@ -39447,9 +39577,44 @@ var TrainingProviderDefaultsSchema = object({
|
|
|
39447
39577
|
/** Hours a FAILED job's cloud dataset is kept for debugging; 0 = delete at once. */
|
|
39448
39578
|
failedDatasetGraceHours: number().nonnegative()
|
|
39449
39579
|
});
|
|
39580
|
+
/**
|
|
39581
|
+
* Entry form schema for a provider type — same seam as notification
|
|
39582
|
+
* `TargetKind.configSchema` (`z.unknown()` at the wire; callers tighten to
|
|
39583
|
+
* {@link ConfigUISchema}). Drives `ConfigFormBuilder` on Training → Providers.
|
|
39584
|
+
*/
|
|
39585
|
+
var ConfigSchemaPassthrough = unknown();
|
|
39586
|
+
/** One creatable provider type, for the Add-entry dialog. */
|
|
39587
|
+
var TrainingProviderTypeSchema = object({
|
|
39588
|
+
typeId: string(),
|
|
39589
|
+
label: string(),
|
|
39590
|
+
/** Path under the addon package (e.g. `assets/training-modal/icon.svg`). */
|
|
39591
|
+
iconAsset: string(),
|
|
39592
|
+
/** Owning `training-provider` addon — collection selector for createEntry. */
|
|
39593
|
+
addonId: string(),
|
|
39594
|
+
/**
|
|
39595
|
+
* Fields for one entry of this type (credentials + defaults). Absent on a
|
|
39596
|
+
* type that only needs a name. Password fields are keychain-backed on the
|
|
39597
|
+
* provider addon (`secretStatePaths`), not D634 plaintext.
|
|
39598
|
+
*/
|
|
39599
|
+
configSchema: ConfigSchemaPassthrough.optional()
|
|
39600
|
+
});
|
|
39601
|
+
/** One configured account / workspace under a provider type. */
|
|
39602
|
+
var TrainingProviderEntrySchema = object({
|
|
39603
|
+
entryId: string(),
|
|
39604
|
+
typeId: string(),
|
|
39605
|
+
name: string(),
|
|
39606
|
+
addonId: string(),
|
|
39607
|
+
/** Credentials are present — never the values. */
|
|
39608
|
+
configured: boolean()
|
|
39609
|
+
});
|
|
39450
39610
|
var TrainingProviderDescriptorSchema = object({
|
|
39451
39611
|
addonId: string(),
|
|
39452
|
-
|
|
39612
|
+
entryId: string(),
|
|
39613
|
+
typeId: string(),
|
|
39614
|
+
/** Operator-chosen entry name. */
|
|
39615
|
+
name: string(),
|
|
39616
|
+
iconAsset: string(),
|
|
39617
|
+
/** `modal`, `runpod`, `fake`, … — same as typeId for current providers. */
|
|
39453
39618
|
kind: string(),
|
|
39454
39619
|
label: string(),
|
|
39455
39620
|
gpuTypes: array(TrainingGpuOptionSchema).readonly(),
|
|
@@ -39461,7 +39626,30 @@ var TrainingProviderDescriptorSchema = object({
|
|
|
39461
39626
|
dataResidencyNote: string(),
|
|
39462
39627
|
/** Credentials are present — never the values. */
|
|
39463
39628
|
configured: boolean(),
|
|
39464
|
-
defaults: TrainingProviderDefaultsSchema
|
|
39629
|
+
defaults: TrainingProviderDefaultsSchema,
|
|
39630
|
+
/**
|
|
39631
|
+
* Values for {@link TrainingProviderTypeSchema}'s `configSchema` — password
|
|
39632
|
+
* fields are keychain {@link SecretFieldView} or `null` / `''` (create),
|
|
39633
|
+
* never plaintext. Same hydrate contract as settings forms (D789).
|
|
39634
|
+
*/
|
|
39635
|
+
formValues: record(string(), unknown()).optional()
|
|
39636
|
+
});
|
|
39637
|
+
/**
|
|
39638
|
+
* Patch one entry's name, credentials and defaults. Pin with owning `{ addonId }`.
|
|
39639
|
+
* An omitted or empty `tokenSecret` means KEEP the stored secret (D787).
|
|
39640
|
+
* `{ $secretClear: true }` clears it.
|
|
39641
|
+
*/
|
|
39642
|
+
var TrainingProviderUpdateEntryInputSchema = object({
|
|
39643
|
+
entryId: string().min(1),
|
|
39644
|
+
name: string().min(1),
|
|
39645
|
+
tokenId: string().optional(),
|
|
39646
|
+
tokenSecret: union([string(), object({ $secretClear: literal(true) })]).optional(),
|
|
39647
|
+
environment: string().optional(),
|
|
39648
|
+
gpuType: string().optional(),
|
|
39649
|
+
region: string().optional(),
|
|
39650
|
+
costCapUsd: number().nonnegative().optional(),
|
|
39651
|
+
maxRuntimeSec: number().int().positive().optional(),
|
|
39652
|
+
failedDatasetGraceHours: number().nonnegative().optional()
|
|
39465
39653
|
});
|
|
39466
39654
|
var TrainingCredentialCheckSchema = object({
|
|
39467
39655
|
ok: boolean(),
|
|
@@ -39513,20 +39701,33 @@ var TrainerSourceRefSchema = object({
|
|
|
39513
39701
|
/** A commit sha (never a branch) — the job must be reproducible. */
|
|
39514
39702
|
revision: string().regex(/^[0-9a-f]{7,64}$/)
|
|
39515
39703
|
});
|
|
39704
|
+
/** Cloud job identity — route with the owning addon's `addonId` selector. */
|
|
39516
39705
|
var JobRef = {
|
|
39517
|
-
|
|
39706
|
+
entryId: string().min(1),
|
|
39518
39707
|
jobKey: string().uuid()
|
|
39519
39708
|
};
|
|
39520
39709
|
var TrainingLogLineSchema = object({
|
|
39521
39710
|
ts: number(),
|
|
39522
39711
|
text: string()
|
|
39523
39712
|
});
|
|
39524
|
-
method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "admin" }), method(object({
|
|
39713
|
+
method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "admin" }), method(object({}), array(TrainingProviderTypeSchema).readonly(), { auth: "admin" }), method(object({}), array(TrainingProviderEntrySchema).readonly(), { auth: "admin" }), method(object({
|
|
39714
|
+
typeId: string().min(1),
|
|
39715
|
+
name: string().min(1)
|
|
39716
|
+
}), object({ entryId: string() }), {
|
|
39717
|
+
kind: "mutation",
|
|
39718
|
+
auth: "admin"
|
|
39719
|
+
}), method(object({ entryId: string().min(1) }), object({ ok: literal(true) }), {
|
|
39720
|
+
kind: "mutation",
|
|
39721
|
+
auth: "admin"
|
|
39722
|
+
}), method(TrainingProviderUpdateEntryInputSchema, object({ ok: literal(true) }), {
|
|
39723
|
+
kind: "mutation",
|
|
39724
|
+
auth: "admin"
|
|
39725
|
+
}), method(object({ entryId: string().min(1) }), TrainingCredentialCheckSchema, {
|
|
39525
39726
|
kind: "mutation",
|
|
39526
39727
|
auth: "admin",
|
|
39527
39728
|
timeoutMs: 3e4
|
|
39528
39729
|
}), method(object({
|
|
39529
|
-
|
|
39730
|
+
entryId: string().min(1),
|
|
39530
39731
|
gpuType: string(),
|
|
39531
39732
|
region: string(),
|
|
39532
39733
|
datasetBytes: number().int().nonnegative(),
|
|
@@ -39592,7 +39793,7 @@ method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "
|
|
|
39592
39793
|
kind: "mutation",
|
|
39593
39794
|
auth: "admin",
|
|
39594
39795
|
timeoutMs: 5 * 6e4
|
|
39595
|
-
}), method(object({
|
|
39796
|
+
}), method(object({ entryId: string().min(1).optional() }), array(ProviderJobStatusSchema).readonly(), {
|
|
39596
39797
|
auth: "admin",
|
|
39597
39798
|
timeoutMs: 2 * 6e4
|
|
39598
39799
|
});
|
|
@@ -39602,20 +39803,31 @@ method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "
|
|
|
39602
39803
|
*
|
|
39603
39804
|
* It owns what every provider must agree on, written once:
|
|
39604
39805
|
*
|
|
39605
|
-
* - **Dataset versions.** Taken over from pipeline-analytics (D796): the rows
|
|
39606
|
-
* live here (D808); pipeline-analytics still CUTS a version (it owns the corpus and
|
|
39607
|
-
* the export plan) and reaches this store through the five row methods
|
|
39608
|
-
* below, so the Retrain page and the export did not change.
|
|
39609
39806
|
* - **Jobs.** A persisted state machine, a reconcile loop against the
|
|
39610
39807
|
* provider, a cost guard, a daily orphan sweep and the retention rules.
|
|
39611
39808
|
* - **The return flow.** Verified artefacts → Model Studio
|
|
39612
39809
|
* (`custom-model-registry.importModelBundle`) → canary on cameras →
|
|
39613
39810
|
* rollback. Nothing is ever registered automatically.
|
|
39614
39811
|
*
|
|
39812
|
+
* Plan/start takes a live {@link TrainingCorpusSelection} (collections +
|
|
39813
|
+
* work-state rule); frame ids are resolved via pipeline-analytics at that
|
|
39814
|
+
* moment and snapshotted on the job. No frozen dataset version.
|
|
39815
|
+
*
|
|
39615
39816
|
* Every method is `admin`.
|
|
39616
39817
|
*/
|
|
39617
|
-
/**
|
|
39618
|
-
|
|
39818
|
+
/**
|
|
39819
|
+
* Live corpus criteria for plan/start (design §5.2). Default is complete-only.
|
|
39820
|
+
* Frame ids are resolved at plan/start — never a frozen version id.
|
|
39821
|
+
*/
|
|
39822
|
+
var TrainingCorpusSelectionSchema = object({
|
|
39823
|
+
collectionIds: array(string()).min(1),
|
|
39824
|
+
/** Default complete-only for v1 */
|
|
39825
|
+
workState: _enum([
|
|
39826
|
+
"complete",
|
|
39827
|
+
"annotated_or_complete",
|
|
39828
|
+
"any_annotated"
|
|
39829
|
+
]).default("complete")
|
|
39830
|
+
});
|
|
39619
39831
|
/** A base model a detector job can fine-tune, and the baseline it is judged against. */
|
|
39620
39832
|
var TrainingBaseModelSchema = object({
|
|
39621
39833
|
modelId: string(),
|
|
@@ -39633,9 +39845,13 @@ var TrainingPresetSchema = _enum([
|
|
|
39633
39845
|
"thorough"
|
|
39634
39846
|
]);
|
|
39635
39847
|
var TrainingJobRequestSchema = object({
|
|
39636
|
-
|
|
39637
|
-
|
|
39638
|
-
|
|
39848
|
+
/** Live collection + work-state criteria; resolved at plan/start. */
|
|
39849
|
+
selection: TrainingCorpusSelectionSchema,
|
|
39850
|
+
/**
|
|
39851
|
+
* The provider **entry** that runs it (credentials + defaults).
|
|
39852
|
+
* Resolve to an owning addon via `training-provider.describe` / `listEntries`.
|
|
39853
|
+
*/
|
|
39854
|
+
entryId: string().min(1),
|
|
39639
39855
|
gpuType: string().min(1),
|
|
39640
39856
|
region: string(),
|
|
39641
39857
|
baseModelId: string().min(1),
|
|
@@ -39694,6 +39910,7 @@ var TrainingJobPlanSchema = object({
|
|
|
39694
39910
|
* result lives after the operator acted on it.
|
|
39695
39911
|
*/
|
|
39696
39912
|
var TrainingJobStateSchema = _enum([
|
|
39913
|
+
"queued",
|
|
39697
39914
|
"uploading",
|
|
39698
39915
|
"submitted",
|
|
39699
39916
|
"starting",
|
|
@@ -39747,6 +39964,11 @@ var TrainingJobSchema = object({
|
|
|
39747
39964
|
createdAt: number(),
|
|
39748
39965
|
updatedAt: number(),
|
|
39749
39966
|
state: TrainingJobStateSchema,
|
|
39967
|
+
/**
|
|
39968
|
+
* Shared by every job enqueued together via `startJobBatch`.
|
|
39969
|
+
* `null` for a lone `startJob`. The engine advances queued siblings by this id.
|
|
39970
|
+
*/
|
|
39971
|
+
batchId: string().nullable().default(null),
|
|
39750
39972
|
stage: TrainingStageSchema.nullable(),
|
|
39751
39973
|
failure: object({
|
|
39752
39974
|
reason: TrainingFailureReasonSchema,
|
|
@@ -39758,6 +39980,12 @@ var TrainingJobSchema = object({
|
|
|
39758
39980
|
maxRuntimeSec: number().int().positive(),
|
|
39759
39981
|
trainer: TrainerSourceRefSchema,
|
|
39760
39982
|
datasetLayout: RetrainExportLayoutSchema,
|
|
39983
|
+
/** Frame count snapshotted when the job started (audit; equals `frameIds.length`). */
|
|
39984
|
+
frameCount: number().int().nonnegative(),
|
|
39985
|
+
/** Resolved frame ids at start — the archive ships exactly these. */
|
|
39986
|
+
frameIds: array(string()).max(2e4).readonly(),
|
|
39987
|
+
/** Hash of what those frames taught at start (trainer `dataset.annotationHash`). */
|
|
39988
|
+
annotationHash: string(),
|
|
39761
39989
|
dataset: object({
|
|
39762
39990
|
bytes: number().int(),
|
|
39763
39991
|
sha256: string(),
|
|
@@ -39799,13 +40027,7 @@ var TrainingJobSchema = object({
|
|
|
39799
40027
|
canary: TrainingCanarySchema.nullable()
|
|
39800
40028
|
});
|
|
39801
40029
|
var IdInput = object({ id: string().min(1) });
|
|
39802
|
-
method(
|
|
39803
|
-
kind: "mutation",
|
|
39804
|
-
auth: "admin"
|
|
39805
|
-
}), 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() }), {
|
|
39806
|
-
kind: "mutation",
|
|
39807
|
-
auth: "admin"
|
|
39808
|
-
}), method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" }), method(TrainingJobRequestSchema, TrainingJobPlanSchema, {
|
|
40030
|
+
method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" }), method(TrainingJobRequestSchema, TrainingJobPlanSchema, {
|
|
39809
40031
|
auth: "admin",
|
|
39810
40032
|
timeoutMs: 6e4
|
|
39811
40033
|
}), method(TrainingJobRequestSchema.extend({
|
|
@@ -39824,6 +40046,24 @@ method(TrainingDatasetVersionRowSchema, object({ stored: boolean() }), {
|
|
|
39824
40046
|
kind: "mutation",
|
|
39825
40047
|
auth: "admin",
|
|
39826
40048
|
timeoutMs: 12e4
|
|
40049
|
+
}), method(TrainingJobRequestSchema.omit({ baseModelId: true }).extend({
|
|
40050
|
+
baseModelIds: array(string().min(1)).min(1),
|
|
40051
|
+
name: string().min(1).max(120),
|
|
40052
|
+
maxCostUsd: number().positive(),
|
|
40053
|
+
maxRuntimeSec: number().int().positive(),
|
|
40054
|
+
idempotencyKey: string().min(8).max(80)
|
|
40055
|
+
}), discriminatedUnion("kind", [object({
|
|
40056
|
+
kind: literal("started"),
|
|
40057
|
+
batchId: string(),
|
|
40058
|
+
jobs: array(TrainingJobSchema).min(1).readonly()
|
|
40059
|
+
}), object({
|
|
40060
|
+
kind: literal("refused"),
|
|
40061
|
+
reason: TrainingRefusalReasonSchema,
|
|
40062
|
+
detail: string()
|
|
40063
|
+
})]), {
|
|
40064
|
+
kind: "mutation",
|
|
40065
|
+
auth: "admin",
|
|
40066
|
+
timeoutMs: 12e4
|
|
39827
40067
|
}), method(object({}), array(TrainingJobSchema).readonly(), { auth: "admin" }), method(IdInput, TrainingJobSchema.nullable(), { auth: "admin" }), method(IdInput, TrainingJobSchema, {
|
|
39828
40068
|
kind: "mutation",
|
|
39829
40069
|
auth: "admin",
|
|
@@ -43857,6 +44097,36 @@ Object.freeze({
|
|
|
43857
44097
|
addonId: null,
|
|
43858
44098
|
access: "view"
|
|
43859
44099
|
},
|
|
44100
|
+
"oidcConnections.connectionFormSchema": {
|
|
44101
|
+
capName: "oidc-connections",
|
|
44102
|
+
capScope: "system",
|
|
44103
|
+
addonId: null,
|
|
44104
|
+
access: "view"
|
|
44105
|
+
},
|
|
44106
|
+
"oidcConnections.createConnection": {
|
|
44107
|
+
capName: "oidc-connections",
|
|
44108
|
+
capScope: "system",
|
|
44109
|
+
addonId: null,
|
|
44110
|
+
access: "create"
|
|
44111
|
+
},
|
|
44112
|
+
"oidcConnections.deleteConnection": {
|
|
44113
|
+
capName: "oidc-connections",
|
|
44114
|
+
capScope: "system",
|
|
44115
|
+
addonId: null,
|
|
44116
|
+
access: "delete"
|
|
44117
|
+
},
|
|
44118
|
+
"oidcConnections.listConnections": {
|
|
44119
|
+
capName: "oidc-connections",
|
|
44120
|
+
capScope: "system",
|
|
44121
|
+
addonId: null,
|
|
44122
|
+
access: "view"
|
|
44123
|
+
},
|
|
44124
|
+
"oidcConnections.updateConnection": {
|
|
44125
|
+
capName: "oidc-connections",
|
|
44126
|
+
capScope: "system",
|
|
44127
|
+
addonId: null,
|
|
44128
|
+
access: "create"
|
|
44129
|
+
},
|
|
43860
44130
|
"osd.getStatus": {
|
|
43861
44131
|
capName: "osd",
|
|
43862
44132
|
capScope: "device",
|
|
@@ -43929,6 +44199,12 @@ Object.freeze({
|
|
|
43929
44199
|
addonId: null,
|
|
43930
44200
|
access: "create"
|
|
43931
44201
|
},
|
|
44202
|
+
"osdManager.setSlotCameraEnabled": {
|
|
44203
|
+
capName: "osd-manager",
|
|
44204
|
+
capScope: "system",
|
|
44205
|
+
addonId: null,
|
|
44206
|
+
access: "create"
|
|
44207
|
+
},
|
|
43932
44208
|
"osdManager.upsertTemplate": {
|
|
43933
44209
|
capName: "osd-manager",
|
|
43934
44210
|
capScope: "system",
|
|
@@ -44067,12 +44343,6 @@ Object.freeze({
|
|
|
44067
44343
|
addonId: null,
|
|
44068
44344
|
access: "create"
|
|
44069
44345
|
},
|
|
44070
|
-
"pipelineAnalytics.createRetrainDatasetVersion": {
|
|
44071
|
-
capName: "pipeline-analytics",
|
|
44072
|
-
capScope: "device",
|
|
44073
|
-
addonId: null,
|
|
44074
|
-
access: "create"
|
|
44075
|
-
},
|
|
44076
44346
|
"pipelineAnalytics.deleteDeviceEvents": {
|
|
44077
44347
|
capName: "pipeline-analytics",
|
|
44078
44348
|
capScope: "device",
|
|
@@ -44085,12 +44355,6 @@ Object.freeze({
|
|
|
44085
44355
|
addonId: null,
|
|
44086
44356
|
access: "delete"
|
|
44087
44357
|
},
|
|
44088
|
-
"pipelineAnalytics.deleteRetrainDatasetVersion": {
|
|
44089
|
-
capName: "pipeline-analytics",
|
|
44090
|
-
capScope: "device",
|
|
44091
|
-
addonId: null,
|
|
44092
|
-
access: "delete"
|
|
44093
|
-
},
|
|
44094
44358
|
"pipelineAnalytics.deleteTracks": {
|
|
44095
44359
|
capName: "pipeline-analytics",
|
|
44096
44360
|
capScope: "device",
|
|
@@ -44193,6 +44457,12 @@ Object.freeze({
|
|
|
44193
44457
|
addonId: null,
|
|
44194
44458
|
access: "view"
|
|
44195
44459
|
},
|
|
44460
|
+
"pipelineAnalytics.getRetrainCorpusKpi": {
|
|
44461
|
+
capName: "pipeline-analytics",
|
|
44462
|
+
capScope: "device",
|
|
44463
|
+
addonId: null,
|
|
44464
|
+
access: "view"
|
|
44465
|
+
},
|
|
44196
44466
|
"pipelineAnalytics.getRetrainExportUrl": {
|
|
44197
44467
|
capName: "pipeline-analytics",
|
|
44198
44468
|
capScope: "device",
|
|
@@ -44313,7 +44583,7 @@ Object.freeze({
|
|
|
44313
44583
|
addonId: null,
|
|
44314
44584
|
access: "view"
|
|
44315
44585
|
},
|
|
44316
|
-
"pipelineAnalytics.
|
|
44586
|
+
"pipelineAnalytics.listRetrainCorpusPage": {
|
|
44317
44587
|
capName: "pipeline-analytics",
|
|
44318
44588
|
capScope: "device",
|
|
44319
44589
|
addonId: null,
|
|
@@ -44367,12 +44637,6 @@ Object.freeze({
|
|
|
44367
44637
|
addonId: null,
|
|
44368
44638
|
access: "create"
|
|
44369
44639
|
},
|
|
44370
|
-
"pipelineAnalytics.previewRetrainDataset": {
|
|
44371
|
-
capName: "pipeline-analytics",
|
|
44372
|
-
capScope: "device",
|
|
44373
|
-
addonId: null,
|
|
44374
|
-
access: "view"
|
|
44375
|
-
},
|
|
44376
44640
|
"pipelineAnalytics.proposeRetrainAnnotations": {
|
|
44377
44641
|
capName: "pipeline-analytics",
|
|
44378
44642
|
capScope: "device",
|
|
@@ -44451,6 +44715,12 @@ Object.freeze({
|
|
|
44451
44715
|
addonId: null,
|
|
44452
44716
|
access: "create"
|
|
44453
44717
|
},
|
|
44718
|
+
"pipelineAnalytics.resolveRetrainTrainingCorpus": {
|
|
44719
|
+
capName: "pipeline-analytics",
|
|
44720
|
+
capScope: "device",
|
|
44721
|
+
addonId: null,
|
|
44722
|
+
access: "view"
|
|
44723
|
+
},
|
|
44454
44724
|
"pipelineAnalytics.restageRetrainTrack": {
|
|
44455
44725
|
capName: "pipeline-analytics",
|
|
44456
44726
|
capScope: "device",
|
|
@@ -44511,12 +44781,6 @@ Object.freeze({
|
|
|
44511
44781
|
addonId: null,
|
|
44512
44782
|
access: "create"
|
|
44513
44783
|
},
|
|
44514
|
-
"pipelineAnalytics.verifyRetrainDatasetVersion": {
|
|
44515
|
-
capName: "pipeline-analytics",
|
|
44516
|
-
capScope: "device",
|
|
44517
|
-
addonId: null,
|
|
44518
|
-
access: "view"
|
|
44519
|
-
},
|
|
44520
44784
|
"pipelineAnalytics.wipeAllAnalytics": {
|
|
44521
44785
|
capName: "pipeline-analytics",
|
|
44522
44786
|
capScope: "device",
|
|
@@ -46911,18 +47175,6 @@ Object.freeze({
|
|
|
46911
47175
|
addonId: null,
|
|
46912
47176
|
access: "create"
|
|
46913
47177
|
},
|
|
46914
|
-
"training.findDatasetVersionIdByName": {
|
|
46915
|
-
capName: "training",
|
|
46916
|
-
capScope: "system",
|
|
46917
|
-
addonId: null,
|
|
46918
|
-
access: "view"
|
|
46919
|
-
},
|
|
46920
|
-
"training.getDatasetVersion": {
|
|
46921
|
-
capName: "training",
|
|
46922
|
-
capScope: "system",
|
|
46923
|
-
addonId: null,
|
|
46924
|
-
access: "view"
|
|
46925
|
-
},
|
|
46926
47178
|
"training.getJob": {
|
|
46927
47179
|
capName: "training",
|
|
46928
47180
|
capScope: "system",
|
|
@@ -46941,12 +47193,6 @@ Object.freeze({
|
|
|
46941
47193
|
addonId: null,
|
|
46942
47194
|
access: "view"
|
|
46943
47195
|
},
|
|
46944
|
-
"training.listDatasetVersions": {
|
|
46945
|
-
capName: "training",
|
|
46946
|
-
capScope: "system",
|
|
46947
|
-
addonId: null,
|
|
46948
|
-
access: "view"
|
|
46949
|
-
},
|
|
46950
47196
|
"training.listJobs": {
|
|
46951
47197
|
capName: "training",
|
|
46952
47198
|
capScope: "system",
|
|
@@ -46959,54 +47205,66 @@ Object.freeze({
|
|
|
46959
47205
|
addonId: null,
|
|
46960
47206
|
access: "view"
|
|
46961
47207
|
},
|
|
46962
|
-
"training.
|
|
47208
|
+
"training.registerResult": {
|
|
46963
47209
|
capName: "training",
|
|
46964
47210
|
capScope: "system",
|
|
46965
47211
|
addonId: null,
|
|
46966
47212
|
access: "create"
|
|
46967
47213
|
},
|
|
46968
|
-
"training.
|
|
47214
|
+
"training.rollbackCanary": {
|
|
46969
47215
|
capName: "training",
|
|
46970
47216
|
capScope: "system",
|
|
46971
47217
|
addonId: null,
|
|
46972
47218
|
access: "create"
|
|
46973
47219
|
},
|
|
46974
|
-
"training.
|
|
47220
|
+
"training.startJob": {
|
|
46975
47221
|
capName: "training",
|
|
46976
47222
|
capScope: "system",
|
|
46977
47223
|
addonId: null,
|
|
46978
|
-
access: "
|
|
47224
|
+
access: "create"
|
|
46979
47225
|
},
|
|
46980
|
-
"training.
|
|
47226
|
+
"training.startJobBatch": {
|
|
46981
47227
|
capName: "training",
|
|
46982
47228
|
capScope: "system",
|
|
46983
47229
|
addonId: null,
|
|
46984
47230
|
access: "create"
|
|
46985
47231
|
},
|
|
46986
|
-
"
|
|
46987
|
-
capName: "training",
|
|
47232
|
+
"trainingProvider.cancelJob": {
|
|
47233
|
+
capName: "training-provider",
|
|
46988
47234
|
capScope: "system",
|
|
46989
47235
|
addonId: null,
|
|
46990
47236
|
access: "create"
|
|
46991
47237
|
},
|
|
46992
|
-
"trainingProvider.
|
|
47238
|
+
"trainingProvider.cleanupJob": {
|
|
46993
47239
|
capName: "training-provider",
|
|
46994
47240
|
capScope: "system",
|
|
46995
47241
|
addonId: null,
|
|
46996
47242
|
access: "create"
|
|
46997
47243
|
},
|
|
46998
|
-
"trainingProvider.
|
|
47244
|
+
"trainingProvider.createEntry": {
|
|
46999
47245
|
capName: "training-provider",
|
|
47000
47246
|
capScope: "system",
|
|
47001
47247
|
addonId: null,
|
|
47002
47248
|
access: "create"
|
|
47003
47249
|
},
|
|
47250
|
+
"trainingProvider.deleteEntry": {
|
|
47251
|
+
capName: "training-provider",
|
|
47252
|
+
capScope: "system",
|
|
47253
|
+
addonId: null,
|
|
47254
|
+
access: "delete"
|
|
47255
|
+
},
|
|
47004
47256
|
"trainingProvider.describe": {
|
|
47005
47257
|
capName: "training-provider",
|
|
47006
47258
|
capScope: "system",
|
|
47007
47259
|
addonId: null,
|
|
47008
47260
|
access: "view"
|
|
47009
47261
|
},
|
|
47262
|
+
"trainingProvider.describeTypes": {
|
|
47263
|
+
capName: "training-provider",
|
|
47264
|
+
capScope: "system",
|
|
47265
|
+
addonId: null,
|
|
47266
|
+
access: "view"
|
|
47267
|
+
},
|
|
47010
47268
|
"trainingProvider.estimateJob": {
|
|
47011
47269
|
capName: "training-provider",
|
|
47012
47270
|
capScope: "system",
|
|
@@ -47019,6 +47277,12 @@ Object.freeze({
|
|
|
47019
47277
|
addonId: null,
|
|
47020
47278
|
access: "view"
|
|
47021
47279
|
},
|
|
47280
|
+
"trainingProvider.listEntries": {
|
|
47281
|
+
capName: "training-provider",
|
|
47282
|
+
capScope: "system",
|
|
47283
|
+
addonId: null,
|
|
47284
|
+
access: "view"
|
|
47285
|
+
},
|
|
47022
47286
|
"trainingProvider.listJobEvents": {
|
|
47023
47287
|
capName: "training-provider",
|
|
47024
47288
|
capScope: "system",
|
|
@@ -47049,6 +47313,12 @@ Object.freeze({
|
|
|
47049
47313
|
addonId: null,
|
|
47050
47314
|
access: "create"
|
|
47051
47315
|
},
|
|
47316
|
+
"trainingProvider.updateEntry": {
|
|
47317
|
+
capName: "training-provider",
|
|
47318
|
+
capScope: "system",
|
|
47319
|
+
addonId: null,
|
|
47320
|
+
access: "create"
|
|
47321
|
+
},
|
|
47052
47322
|
"trainingProvider.uploadDataset": {
|
|
47053
47323
|
capName: "training-provider",
|
|
47054
47324
|
capScope: "system",
|
|
@@ -50255,6 +50525,11 @@ Object.freeze({
|
|
|
50255
50525
|
form: "single",
|
|
50256
50526
|
optional: false
|
|
50257
50527
|
}],
|
|
50528
|
+
"osdManager.setSlotCameraEnabled": [{
|
|
50529
|
+
name: "deviceId",
|
|
50530
|
+
form: "single",
|
|
50531
|
+
optional: false
|
|
50532
|
+
}],
|
|
50258
50533
|
"petFeeder.callPet": [{
|
|
50259
50534
|
name: "deviceId",
|
|
50260
50535
|
form: "single",
|
|
@@ -50475,6 +50750,11 @@ Object.freeze({
|
|
|
50475
50750
|
form: "array",
|
|
50476
50751
|
optional: false
|
|
50477
50752
|
}],
|
|
50753
|
+
"pipelineAnalytics.listRetrainCorpusPage": [{
|
|
50754
|
+
name: "deviceIds",
|
|
50755
|
+
form: "array",
|
|
50756
|
+
optional: true
|
|
50757
|
+
}],
|
|
50478
50758
|
"pipelineAnalytics.listRetrainStaging": [{
|
|
50479
50759
|
name: "deviceIds",
|
|
50480
50760
|
form: "array",
|
|
@@ -51584,6 +51864,7 @@ Object.freeze({
|
|
|
51584
51864
|
});
|
|
51585
51865
|
Object.freeze({
|
|
51586
51866
|
"broker": "broker",
|
|
51867
|
+
"calendar-source": "calendar",
|
|
51587
51868
|
"device-export": "device-export",
|
|
51588
51869
|
"llm": "ai",
|
|
51589
51870
|
"mesh-network": "mesh",
|
|
@@ -52276,6 +52557,8 @@ var STATE_SUMMARY_VARS = [
|
|
|
52276
52557
|
[...RULE_TEXT],
|
|
52277
52558
|
[...RULE_TEXT],
|
|
52278
52559
|
[...RULE_TEXT],
|
|
52560
|
+
[...RULE_TEXT],
|
|
52561
|
+
[...RULE_TEXT],
|
|
52279
52562
|
([...RULE_TEXT], [...UPDATES]),
|
|
52280
52563
|
([...RULE_TEXT], [...PACKAGE_UPDATES]),
|
|
52281
52564
|
([...RULE_TEXT], [...PACKAGE_UPDATES]),
|