@camstack/addon-provider-unifi 0.2.125 → 0.2.126
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.js
CHANGED
|
@@ -5377,7 +5377,7 @@ var ZodIssueCode = {
|
|
|
5377
5377
|
var ZodFirstPartyTypeKind;
|
|
5378
5378
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5379
5379
|
//#endregion
|
|
5380
|
-
//#region ../types/dist/sleep-
|
|
5380
|
+
//#region ../types/dist/sleep-DwAQ9sqX.mjs
|
|
5381
5381
|
/**
|
|
5382
5382
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5383
5383
|
* window to float samples (D455).
|
|
@@ -9383,6 +9383,16 @@ var CompositionSchema = object({
|
|
|
9383
9383
|
seen.add(feature.cap);
|
|
9384
9384
|
});
|
|
9385
9385
|
});
|
|
9386
|
+
var NodeColorIdSchema = _enum([
|
|
9387
|
+
"node-a",
|
|
9388
|
+
"node-b",
|
|
9389
|
+
"node-c",
|
|
9390
|
+
"node-d",
|
|
9391
|
+
"node-e",
|
|
9392
|
+
"node-f",
|
|
9393
|
+
"node-g",
|
|
9394
|
+
"node-h"
|
|
9395
|
+
]);
|
|
9386
9396
|
new Set([
|
|
9387
9397
|
"track",
|
|
9388
9398
|
"face",
|
|
@@ -18525,14 +18535,14 @@ var LlmProfileSchema = object({
|
|
|
18525
18535
|
/** ConfigUISchema tree passed through untyped on the wire (the
|
|
18526
18536
|
* notification-output `ConfigSchemaPassthrough` precedent at
|
|
18527
18537
|
* notification-output.cap.ts:151); the exported TS type re-tightens it. */
|
|
18528
|
-
var ConfigSchemaPassthrough$
|
|
18538
|
+
var ConfigSchemaPassthrough$3 = unknown();
|
|
18529
18539
|
var LlmProfileKindDescriptorSchema = object({
|
|
18530
18540
|
kind: LlmProfileKindSchema,
|
|
18531
18541
|
label: string(),
|
|
18532
18542
|
icon: string(),
|
|
18533
18543
|
/** Stamped by each provider so the concat-fanned catalog stays routable. */
|
|
18534
18544
|
addonId: string(),
|
|
18535
|
-
configSchema: ConfigSchemaPassthrough$
|
|
18545
|
+
configSchema: ConfigSchemaPassthrough$3
|
|
18536
18546
|
});
|
|
18537
18547
|
var LlmDefaultSelectorSchema = union([object({ consumer: string() }), object({ purpose: _enum(["text", "vision"]) })]);
|
|
18538
18548
|
var LlmDefaultSchema = object({
|
|
@@ -19653,7 +19663,7 @@ var TargetKindCapsSchema = object({
|
|
|
19653
19663
|
* the union is large and not meant for runtime validation here; the exported
|
|
19654
19664
|
* `TargetKind` type re-tightens `configSchema` to `ConfigUISchema`.
|
|
19655
19665
|
*/
|
|
19656
|
-
var ConfigSchemaPassthrough = unknown();
|
|
19666
|
+
var ConfigSchemaPassthrough$2 = unknown();
|
|
19657
19667
|
var TargetKindSchema = object({
|
|
19658
19668
|
kind: string(),
|
|
19659
19669
|
label: string(),
|
|
@@ -19690,7 +19700,7 @@ var TargetKindSchema = object({
|
|
|
19690
19700
|
* its raster path, which is the safe default for an unknown image.
|
|
19691
19701
|
*/
|
|
19692
19702
|
iconMediaType: string().optional(),
|
|
19693
|
-
configSchema: ConfigSchemaPassthrough,
|
|
19703
|
+
configSchema: ConfigSchemaPassthrough$2,
|
|
19694
19704
|
/**
|
|
19695
19705
|
* The config keys that decide WHERE this kind's secrets are sent (server,
|
|
19696
19706
|
* base URL, instance, chat, recipient). A save that changes any of them
|
|
@@ -23027,6 +23037,61 @@ var OauthIntegrationDescriptorSchema = object({
|
|
|
23027
23037
|
});
|
|
23028
23038
|
method(_void(), OauthIntegrationDescriptorSchema, { auth: "admin" });
|
|
23029
23039
|
/**
|
|
23040
|
+
* `oidc-connections` — CRUD for IdP rows under `auth-oidc` (D828 sibling).
|
|
23041
|
+
*
|
|
23042
|
+
* One hub-only singleton (`auth-oidc`). The Settings UI is a DataTable +
|
|
23043
|
+
* ItemFormDialog; there is no `editable-array` in `globalSettingsSchema`.
|
|
23044
|
+
* Operator-chosen `id` is the URL slug (`/addon/auth-oidc/<id>/…`) and is
|
|
23045
|
+
* immutable after create.
|
|
23046
|
+
*/
|
|
23047
|
+
var ConfigSchemaPassthrough$1 = unknown();
|
|
23048
|
+
var OidcConnectionSchema = object({
|
|
23049
|
+
id: string().min(1),
|
|
23050
|
+
displayName: string(),
|
|
23051
|
+
icon: string(),
|
|
23052
|
+
issuerUrl: string(),
|
|
23053
|
+
clientId: string(),
|
|
23054
|
+
/** Client id + secret present — never the secret value. */
|
|
23055
|
+
configured: boolean(),
|
|
23056
|
+
/**
|
|
23057
|
+
* Values for the connection form schema. `clientSecret` is a keychain
|
|
23058
|
+
* {@link SecretFieldView} or `null` / `''`, never plaintext (D789).
|
|
23059
|
+
*/
|
|
23060
|
+
formValues: record(string(), unknown()).optional()
|
|
23061
|
+
});
|
|
23062
|
+
/**
|
|
23063
|
+
* Patch one connection. Omitted or empty `clientSecret` keeps the stored
|
|
23064
|
+
* secret (D787). `{ $secretClear: true }` clears it. `id` is never renamed.
|
|
23065
|
+
*/
|
|
23066
|
+
var OidcConnectionUpdateInputSchema = object({
|
|
23067
|
+
id: string().min(1),
|
|
23068
|
+
displayName: string().min(1),
|
|
23069
|
+
icon: string().optional(),
|
|
23070
|
+
issuerUrl: string().optional(),
|
|
23071
|
+
clientId: string().optional(),
|
|
23072
|
+
clientSecret: union([string(), object({ $secretClear: literal(true) })]).optional(),
|
|
23073
|
+
redirectUri: string().optional(),
|
|
23074
|
+
scopes: string().optional(),
|
|
23075
|
+
usernameClaim: _enum([
|
|
23076
|
+
"preferred_username",
|
|
23077
|
+
"email",
|
|
23078
|
+
"sub"
|
|
23079
|
+
]).optional()
|
|
23080
|
+
});
|
|
23081
|
+
method(object({}), ConfigSchemaPassthrough$1, { auth: "admin" }), method(object({}), array(OidcConnectionSchema).readonly(), { auth: "admin" }), method(object({
|
|
23082
|
+
id: string().min(1).regex(/^[a-z0-9][a-z0-9-]{0,63}$/, "id must be a lowercase slug"),
|
|
23083
|
+
displayName: string().min(1)
|
|
23084
|
+
}), object({ id: string() }), {
|
|
23085
|
+
kind: "mutation",
|
|
23086
|
+
auth: "admin"
|
|
23087
|
+
}), method(OidcConnectionUpdateInputSchema, object({ ok: literal(true) }), {
|
|
23088
|
+
kind: "mutation",
|
|
23089
|
+
auth: "admin"
|
|
23090
|
+
}), method(object({ id: string().min(1) }), object({ ok: literal(true) }), {
|
|
23091
|
+
kind: "mutation",
|
|
23092
|
+
auth: "admin"
|
|
23093
|
+
});
|
|
23094
|
+
/**
|
|
23030
23095
|
* What started a camera's onboard motion (D672). `camera` is the camera's own
|
|
23031
23096
|
* firmware; `sensor` is a device the operator ATTACHED to it. Absent on the
|
|
23032
23097
|
* wire means the camera: only the camera-sensors bridge ever says `sensor`.
|
|
@@ -24383,24 +24448,69 @@ var RetrainFrameListSchema = object({
|
|
|
24383
24448
|
/** What the page pre-selects — the native key frame when one survives. */
|
|
24384
24449
|
autoPickMediaId: number().int().optional()
|
|
24385
24450
|
});
|
|
24451
|
+
/** Exclusive partition of a corpus copy's annotation progress (design §4.2). */
|
|
24452
|
+
var RetrainFrameWorkStateSchema = _enum([
|
|
24453
|
+
"unannotated",
|
|
24454
|
+
"annotated",
|
|
24455
|
+
"complete"
|
|
24456
|
+
]);
|
|
24457
|
+
/**
|
|
24458
|
+
* Filters for paginated corpus list, KPI, and matching export (design §4.4).
|
|
24459
|
+
* Every narrowing field is ANDed; omitted fields impose no constraint.
|
|
24460
|
+
*/
|
|
24461
|
+
var RetrainCorpusFilterSchema = object({
|
|
24462
|
+
workState: RetrainFrameWorkStateSchema.optional(),
|
|
24463
|
+
deviceIds: array(number()).max(500).optional(),
|
|
24464
|
+
/** When set, only frames in this named collection. */
|
|
24465
|
+
collectionId: string().optional(),
|
|
24466
|
+
/** Frames that carry at least one saved annotation in one of these classes. */
|
|
24467
|
+
classes: array(RetrainMacroClassSchema).optional(),
|
|
24468
|
+
page: number().int().positive().default(1),
|
|
24469
|
+
pageSize: number().int().positive().max(100).default(50)
|
|
24470
|
+
});
|
|
24471
|
+
var RetrainCorpusPageSchema = object({
|
|
24472
|
+
frames: array(RetrainFrameSchema.extend({ workState: RetrainFrameWorkStateSchema })).readonly(),
|
|
24473
|
+
total: number().int().nonnegative(),
|
|
24474
|
+
page: number().int().positive(),
|
|
24475
|
+
pageSize: number().int().positive()
|
|
24476
|
+
});
|
|
24477
|
+
var RetrainCorpusKpiCameraRowSchema = object({
|
|
24478
|
+
deviceId: number(),
|
|
24479
|
+
unannotated: number().int().nonnegative(),
|
|
24480
|
+
annotated: number().int().nonnegative(),
|
|
24481
|
+
complete: number().int().nonnegative(),
|
|
24482
|
+
/** This camera's `complete` count divided by corpus `total`, in `[0,1]`.
|
|
24483
|
+
* `null` when the corpus is empty (no ratio). */
|
|
24484
|
+
pctOfCorpus: number().min(0).max(1).nullable()
|
|
24485
|
+
});
|
|
24486
|
+
var RetrainCorpusKpiSchema = object({
|
|
24487
|
+
total: number().int().nonnegative(),
|
|
24488
|
+
unannotated: number().int().nonnegative(),
|
|
24489
|
+
annotated: number().int().nonnegative(),
|
|
24490
|
+
complete: number().int().nonnegative(),
|
|
24491
|
+
cameras: array(RetrainCorpusKpiCameraRowSchema).readonly()
|
|
24492
|
+
});
|
|
24386
24493
|
/**
|
|
24387
24494
|
* Which frames an annotated export carries. Every field narrows; an empty
|
|
24388
|
-
* filter is every annotated copy.
|
|
24389
|
-
*
|
|
24390
|
-
*
|
|
24391
|
-
*
|
|
24495
|
+
* filter is every annotated copy. `frameIds` is the primitive a job or
|
|
24496
|
+
* download uses; `batchId` re-selects what an earlier export carried
|
|
24497
|
+
* (`exportedInBatch`). Frozen dataset versions were removed — live selection
|
|
24498
|
+
* resolves to `frameIds` at plan/start.
|
|
24392
24499
|
*/
|
|
24393
24500
|
var RetrainExportFilterSchema = object({
|
|
24394
24501
|
deviceIds: array(number()).optional(),
|
|
24395
24502
|
frameIds: array(string()).max(2e4).optional(),
|
|
24396
24503
|
/** Only frames in at least one of these named collections. */
|
|
24397
24504
|
collectionIds: array(string()).max(200).optional(),
|
|
24398
|
-
/**
|
|
24399
|
-
|
|
24400
|
-
datasetVersionId: string().optional(),
|
|
24505
|
+
/** Single collection (Frames filter bar). ANDed with `collectionIds` when both set. */
|
|
24506
|
+
collectionId: string().optional(),
|
|
24401
24507
|
batchId: string().optional(),
|
|
24402
24508
|
/** Only frames the operator marked complete (all subjects boxed). */
|
|
24403
|
-
completeOnly: boolean().optional()
|
|
24509
|
+
completeOnly: boolean().optional(),
|
|
24510
|
+
/** Exclusive work-state partition (`workStateOf`); same as the corpus list. */
|
|
24511
|
+
workState: RetrainFrameWorkStateSchema.optional(),
|
|
24512
|
+
/** Frames with at least one saved annotation in one of these classes. */
|
|
24513
|
+
classes: array(RetrainMacroClassSchema).optional()
|
|
24404
24514
|
});
|
|
24405
24515
|
/**
|
|
24406
24516
|
* `frames`: the full frame copies, boxes in `annotations.json`.
|
|
@@ -24600,8 +24710,7 @@ var RetrainDatasetStatsSchema = object({
|
|
|
24600
24710
|
completeFrames: number().int()
|
|
24601
24711
|
})).readonly()
|
|
24602
24712
|
});
|
|
24603
|
-
|
|
24604
|
-
var RetrainDatasetVersionSchema = object({
|
|
24713
|
+
object({
|
|
24605
24714
|
id: string(),
|
|
24606
24715
|
name: string(),
|
|
24607
24716
|
createdAt: number(),
|
|
@@ -24609,22 +24718,33 @@ var RetrainDatasetVersionSchema = object({
|
|
|
24609
24718
|
layout: RetrainExportLayoutSchema,
|
|
24610
24719
|
completeOnly: boolean(),
|
|
24611
24720
|
frameCount: number().int(),
|
|
24612
|
-
/** sha256 of what the frames taught when the version was frozen. */
|
|
24613
24721
|
annotationHash: string(),
|
|
24614
|
-
/** The export manifest schema the version was cut under. */
|
|
24615
24722
|
manifestSchema: string(),
|
|
24616
24723
|
stats: RetrainDatasetStatsSchema
|
|
24617
24724
|
});
|
|
24618
|
-
|
|
24619
|
-
|
|
24620
|
-
|
|
24725
|
+
/**
|
|
24726
|
+
* Live training corpus criteria — same shape as `TrainingCorpusSelection` on
|
|
24727
|
+
* the training cap. Resolved here so plan/start and the annotated export share
|
|
24728
|
+
* one definition of "the frames" (`buildRetrainExportPlan`).
|
|
24729
|
+
*/
|
|
24730
|
+
var RetrainTrainingCorpusSelectionSchema = object({
|
|
24731
|
+
collectionIds: array(string()).min(1),
|
|
24732
|
+
workState: _enum([
|
|
24733
|
+
"complete",
|
|
24734
|
+
"annotated_or_complete",
|
|
24735
|
+
"any_annotated"
|
|
24736
|
+
]).default("complete")
|
|
24737
|
+
});
|
|
24738
|
+
var RetrainTrainingCorpusResolveResultSchema = discriminatedUnion("kind", [object({
|
|
24739
|
+
kind: literal("resolved"),
|
|
24740
|
+
frameIds: array(string()).max(2e4).readonly(),
|
|
24741
|
+
stats: RetrainDatasetStatsSchema,
|
|
24742
|
+
annotationHash: string(),
|
|
24743
|
+
layout: RetrainExportLayoutSchema
|
|
24621
24744
|
}), object({
|
|
24622
24745
|
kind: literal("refused"),
|
|
24623
|
-
reason: _enum([
|
|
24624
|
-
|
|
24625
|
-
"duplicate-name",
|
|
24626
|
-
"no-frames"
|
|
24627
|
-
])
|
|
24746
|
+
reason: _enum(["unknown-collection", "no-frames"]),
|
|
24747
|
+
detail: string()
|
|
24628
24748
|
})]);
|
|
24629
24749
|
/** The outcome of a lifecycle move owned by the retrain page. */
|
|
24630
24750
|
var RetrainTransitionResultSchema = object({
|
|
@@ -25331,6 +25451,12 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25331
25451
|
}), array(RetrainTrackSchema).readonly(), {
|
|
25332
25452
|
kind: "query",
|
|
25333
25453
|
auth: "admin"
|
|
25454
|
+
}), method(RetrainCorpusFilterSchema, RetrainCorpusPageSchema, {
|
|
25455
|
+
kind: "query",
|
|
25456
|
+
auth: "admin"
|
|
25457
|
+
}), method(object({}), RetrainCorpusKpiSchema, {
|
|
25458
|
+
kind: "query",
|
|
25459
|
+
auth: "admin"
|
|
25334
25460
|
}), method(object({ trackId: string() }), RetrainFrameListSchema, {
|
|
25335
25461
|
kind: "query",
|
|
25336
25462
|
auth: "admin"
|
|
@@ -25426,36 +25552,6 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25426
25552
|
kind: "mutation",
|
|
25427
25553
|
auth: "admin",
|
|
25428
25554
|
timeoutMs: 12e4
|
|
25429
|
-
}), method(object({
|
|
25430
|
-
selection: RetrainDatasetSelectionSchema,
|
|
25431
|
-
completeOnly: boolean().optional()
|
|
25432
|
-
}), RetrainDatasetStatsSchema, {
|
|
25433
|
-
kind: "query",
|
|
25434
|
-
auth: "admin"
|
|
25435
|
-
}), method(object({
|
|
25436
|
-
name: string().max(120),
|
|
25437
|
-
selection: RetrainDatasetSelectionSchema,
|
|
25438
|
-
layout: RetrainExportLayoutSchema,
|
|
25439
|
-
completeOnly: boolean()
|
|
25440
|
-
}), CreateRetrainDatasetVersionResultSchema, {
|
|
25441
|
-
kind: "mutation",
|
|
25442
|
-
auth: "admin",
|
|
25443
|
-
timeoutMs: 12e4
|
|
25444
|
-
}), method(object({}), array(RetrainDatasetVersionSchema).readonly(), {
|
|
25445
|
-
kind: "query",
|
|
25446
|
-
auth: "admin"
|
|
25447
|
-
}), method(object({ id: string() }), object({ deleted: boolean() }), {
|
|
25448
|
-
kind: "mutation",
|
|
25449
|
-
auth: "admin"
|
|
25450
|
-
}), method(object({ id: string() }), object({
|
|
25451
|
-
found: boolean(),
|
|
25452
|
-
annotationHash: string(),
|
|
25453
|
-
matches: boolean(),
|
|
25454
|
-
missingFrames: number().int()
|
|
25455
|
-
}), {
|
|
25456
|
-
kind: "query",
|
|
25457
|
-
auth: "admin",
|
|
25458
|
-
timeoutMs: 12e4
|
|
25459
25555
|
}), method(object({}), array(RetrainAssistProfileSchema).readonly(), {
|
|
25460
25556
|
kind: "query",
|
|
25461
25557
|
auth: "admin"
|
|
@@ -25482,6 +25578,10 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
25482
25578
|
}), method(object({}), array(RetrainCollectionSchema).readonly(), {
|
|
25483
25579
|
kind: "query",
|
|
25484
25580
|
auth: "admin"
|
|
25581
|
+
}), method(RetrainTrainingCorpusSelectionSchema, RetrainTrainingCorpusResolveResultSchema, {
|
|
25582
|
+
kind: "query",
|
|
25583
|
+
auth: "admin",
|
|
25584
|
+
timeoutMs: 6e4
|
|
25485
25585
|
}), method(object({
|
|
25486
25586
|
id: string(),
|
|
25487
25587
|
name: string().max(120)
|
|
@@ -26098,11 +26198,14 @@ var HardwareClassIdSchema = _enum([
|
|
|
26098
26198
|
"intel-n-series",
|
|
26099
26199
|
"apple-m-base",
|
|
26100
26200
|
"apple-m-pro",
|
|
26201
|
+
"amd-phoenix",
|
|
26101
26202
|
"unknown"
|
|
26102
26203
|
]);
|
|
26103
26204
|
var AcceleratorKindSchema = _enum([
|
|
26104
26205
|
"intel-npu",
|
|
26105
26206
|
"intel-igpu",
|
|
26207
|
+
"amd-igpu",
|
|
26208
|
+
"amd-npu",
|
|
26106
26209
|
"x86-cpu",
|
|
26107
26210
|
"arm-cpu",
|
|
26108
26211
|
"apple-ane",
|
|
@@ -28032,6 +28135,8 @@ var AgentPipelineSettingsSchema = object({
|
|
|
28032
28135
|
* address is wrong (multi-homed host, NAT, custom interface).
|
|
28033
28136
|
*/
|
|
28034
28137
|
reachableHost: string().optional(),
|
|
28138
|
+
/** Hub-persisted UI colour (`--color-node-*` theme tokens). */
|
|
28139
|
+
color: NodeColorIdSchema.optional(),
|
|
28035
28140
|
/**
|
|
28036
28141
|
* Multi-device inference opt-in (Phase 4). Per-node map deviceKey → {enabled,
|
|
28037
28142
|
* weight, steps}. Absent / all-disabled ⇒ the node's single default
|
|
@@ -28581,8 +28686,9 @@ method(object({
|
|
|
28581
28686
|
auth: "admin"
|
|
28582
28687
|
}), method(object({
|
|
28583
28688
|
agentNodeId: string(),
|
|
28584
|
-
reachableHost: string().nullable()
|
|
28585
|
-
|
|
28689
|
+
reachableHost: string().nullable().optional(),
|
|
28690
|
+
color: NodeColorIdSchema.nullable().optional()
|
|
28691
|
+
}).refine((v) => v.reachableHost !== void 0 || v.color !== void 0, { message: "reachableHost or color required" }), object({ success: literal(true) }), {
|
|
28586
28692
|
kind: "mutation",
|
|
28587
28693
|
auth: "admin"
|
|
28588
28694
|
}), method(object({
|
|
@@ -31658,7 +31764,7 @@ var CustomActionInputSchema = object({
|
|
|
31658
31764
|
action: string().min(1),
|
|
31659
31765
|
input: unknown()
|
|
31660
31766
|
});
|
|
31661
|
-
method(
|
|
31767
|
+
method(object({ nodeId: string().optional() }).optional(), array(AddonListItemSchema).readonly()), method(object({
|
|
31662
31768
|
addonId: string(),
|
|
31663
31769
|
limit: number().min(1).max(500).default(100),
|
|
31664
31770
|
level: LogLevelSchema$2.optional()
|
|
@@ -36737,7 +36843,13 @@ var TopologyNodeSchema = object({
|
|
|
36737
36843
|
})).readonly(),
|
|
36738
36844
|
processes: array(TopologyProcessSchema).readonly(),
|
|
36739
36845
|
categories: array(TopologyCategorySchema).readonly(),
|
|
36740
|
-
rootPackage: TopologyRootPackageSchema.nullable()
|
|
36846
|
+
rootPackage: TopologyRootPackageSchema.nullable(),
|
|
36847
|
+
/**
|
|
36848
|
+
* How an online AGENT reaches the hub (mesh mTLS Release A): `tls` once it has
|
|
36849
|
+
* completed a mutual-TLS handshake, `clear` otherwise. Absent for the hub,
|
|
36850
|
+
* for offline rows and when the hub cannot tell.
|
|
36851
|
+
*/
|
|
36852
|
+
meshTransport: _enum(["tls", "clear"]).optional()
|
|
36741
36853
|
});
|
|
36742
36854
|
var CapUsageEdgeSchema = object({
|
|
36743
36855
|
callerAddonId: string(),
|
|
@@ -37150,6 +37262,7 @@ var OsdNamedTemplateSchema = object({
|
|
|
37150
37262
|
});
|
|
37151
37263
|
/** Where a slot's value comes from. */
|
|
37152
37264
|
var OsdSourceSchema = discriminatedUnion("kind", [
|
|
37265
|
+
object({ kind: literal("none") }),
|
|
37153
37266
|
object({
|
|
37154
37267
|
kind: literal("static"),
|
|
37155
37268
|
text: string().max(64)
|
|
@@ -37276,6 +37389,13 @@ method(object({ deviceId: number().int() }), object({
|
|
|
37276
37389
|
}), object({ success: literal(true) }), {
|
|
37277
37390
|
kind: "mutation",
|
|
37278
37391
|
auth: "admin"
|
|
37392
|
+
}), method(object({
|
|
37393
|
+
deviceId: number().int(),
|
|
37394
|
+
slotId: string().min(1),
|
|
37395
|
+
enabled: boolean()
|
|
37396
|
+
}), object({ success: literal(true) }), {
|
|
37397
|
+
kind: "mutation",
|
|
37398
|
+
auth: "admin"
|
|
37279
37399
|
}), method(object({
|
|
37280
37400
|
sourceDeviceId: number().int(),
|
|
37281
37401
|
targetDeviceId: number().int()
|
|
@@ -37707,7 +37827,15 @@ var GpuInfoSchema = object({
|
|
|
37707
37827
|
name: string(),
|
|
37708
37828
|
memoryMB: number().optional()
|
|
37709
37829
|
});
|
|
37710
|
-
var NpuInfoSchema = object({
|
|
37830
|
+
var NpuInfoSchema = object({
|
|
37831
|
+
type: _enum([
|
|
37832
|
+
"apple-ane",
|
|
37833
|
+
"intel-npu",
|
|
37834
|
+
"amd-xdna"
|
|
37835
|
+
]),
|
|
37836
|
+
name: string().optional(),
|
|
37837
|
+
generation: _enum(["xdna1", "xdna2"]).optional()
|
|
37838
|
+
});
|
|
37711
37839
|
var CoralInfoSchema = object({
|
|
37712
37840
|
type: literal("coral-edgetpu"),
|
|
37713
37841
|
bus: string().optional()
|
|
@@ -42450,9 +42578,11 @@ var zoneRulesCapability = {
|
|
|
42450
42578
|
* once is what makes a second provider (RunPod, a local NVIDIA node) a new
|
|
42451
42579
|
* manifest entry and nothing else.
|
|
42452
42580
|
*
|
|
42453
|
-
* Collection
|
|
42454
|
-
*
|
|
42455
|
-
*
|
|
42581
|
+
* Collection of provider **types** (addons). Each addon owns zero or more
|
|
42582
|
+
* **entries** (credentials + defaults). Concat-fans: `describe`,
|
|
42583
|
+
* `describeTypes`, `listEntries`, `listJobs`. Single-row work is keyed by
|
|
42584
|
+
* `entryId`; callers also pass the owning `addonId` as the collection
|
|
42585
|
+
* selector (broker posture). Every method is `admin`: these spend money.
|
|
42456
42586
|
*
|
|
42457
42587
|
* Every cloud object a provider creates is tagged with the orchestrator's
|
|
42458
42588
|
* `jobKey`, so a retried submit finds the job it already started instead of
|
|
@@ -42476,8 +42606,8 @@ var TrainingRegionOptionSchema = object({
|
|
|
42476
42606
|
priceMultiplier: number().positive()
|
|
42477
42607
|
});
|
|
42478
42608
|
/**
|
|
42479
|
-
* The provider's per-
|
|
42480
|
-
* live
|
|
42609
|
+
* The provider's per-entry settings, as the orchestrator reads them. They
|
|
42610
|
+
* live on the PROVIDER addon's entry (operator decision 2026-10-08: they
|
|
42481
42611
|
* depend on the user's account), never hard-coded in the orchestrator.
|
|
42482
42612
|
*/
|
|
42483
42613
|
var TrainingProviderDefaultsSchema = object({
|
|
@@ -42488,9 +42618,44 @@ var TrainingProviderDefaultsSchema = object({
|
|
|
42488
42618
|
/** Hours a FAILED job's cloud dataset is kept for debugging; 0 = delete at once. */
|
|
42489
42619
|
failedDatasetGraceHours: number().nonnegative()
|
|
42490
42620
|
});
|
|
42621
|
+
/**
|
|
42622
|
+
* Entry form schema for a provider type — same seam as notification
|
|
42623
|
+
* `TargetKind.configSchema` (`z.unknown()` at the wire; callers tighten to
|
|
42624
|
+
* {@link ConfigUISchema}). Drives `ConfigFormBuilder` on Training → Providers.
|
|
42625
|
+
*/
|
|
42626
|
+
var ConfigSchemaPassthrough = unknown();
|
|
42627
|
+
/** One creatable provider type, for the Add-entry dialog. */
|
|
42628
|
+
var TrainingProviderTypeSchema = object({
|
|
42629
|
+
typeId: string(),
|
|
42630
|
+
label: string(),
|
|
42631
|
+
/** Path under the addon package (e.g. `assets/training-modal/icon.svg`). */
|
|
42632
|
+
iconAsset: string(),
|
|
42633
|
+
/** Owning `training-provider` addon — collection selector for createEntry. */
|
|
42634
|
+
addonId: string(),
|
|
42635
|
+
/**
|
|
42636
|
+
* Fields for one entry of this type (credentials + defaults). Absent on a
|
|
42637
|
+
* type that only needs a name. Password fields are keychain-backed on the
|
|
42638
|
+
* provider addon (`secretStatePaths`), not D634 plaintext.
|
|
42639
|
+
*/
|
|
42640
|
+
configSchema: ConfigSchemaPassthrough.optional()
|
|
42641
|
+
});
|
|
42642
|
+
/** One configured account / workspace under a provider type. */
|
|
42643
|
+
var TrainingProviderEntrySchema = object({
|
|
42644
|
+
entryId: string(),
|
|
42645
|
+
typeId: string(),
|
|
42646
|
+
name: string(),
|
|
42647
|
+
addonId: string(),
|
|
42648
|
+
/** Credentials are present — never the values. */
|
|
42649
|
+
configured: boolean()
|
|
42650
|
+
});
|
|
42491
42651
|
var TrainingProviderDescriptorSchema = object({
|
|
42492
42652
|
addonId: string(),
|
|
42493
|
-
|
|
42653
|
+
entryId: string(),
|
|
42654
|
+
typeId: string(),
|
|
42655
|
+
/** Operator-chosen entry name. */
|
|
42656
|
+
name: string(),
|
|
42657
|
+
iconAsset: string(),
|
|
42658
|
+
/** `modal`, `runpod`, `fake`, … — same as typeId for current providers. */
|
|
42494
42659
|
kind: string(),
|
|
42495
42660
|
label: string(),
|
|
42496
42661
|
gpuTypes: array(TrainingGpuOptionSchema).readonly(),
|
|
@@ -42502,7 +42667,30 @@ var TrainingProviderDescriptorSchema = object({
|
|
|
42502
42667
|
dataResidencyNote: string(),
|
|
42503
42668
|
/** Credentials are present — never the values. */
|
|
42504
42669
|
configured: boolean(),
|
|
42505
|
-
defaults: TrainingProviderDefaultsSchema
|
|
42670
|
+
defaults: TrainingProviderDefaultsSchema,
|
|
42671
|
+
/**
|
|
42672
|
+
* Values for {@link TrainingProviderTypeSchema}'s `configSchema` — password
|
|
42673
|
+
* fields are keychain {@link SecretFieldView} or `null` / `''` (create),
|
|
42674
|
+
* never plaintext. Same hydrate contract as settings forms (D789).
|
|
42675
|
+
*/
|
|
42676
|
+
formValues: record(string(), unknown()).optional()
|
|
42677
|
+
});
|
|
42678
|
+
/**
|
|
42679
|
+
* Patch one entry's name, credentials and defaults. Pin with owning `{ addonId }`.
|
|
42680
|
+
* An omitted or empty `tokenSecret` means KEEP the stored secret (D787).
|
|
42681
|
+
* `{ $secretClear: true }` clears it.
|
|
42682
|
+
*/
|
|
42683
|
+
var TrainingProviderUpdateEntryInputSchema = object({
|
|
42684
|
+
entryId: string().min(1),
|
|
42685
|
+
name: string().min(1),
|
|
42686
|
+
tokenId: string().optional(),
|
|
42687
|
+
tokenSecret: union([string(), object({ $secretClear: literal(true) })]).optional(),
|
|
42688
|
+
environment: string().optional(),
|
|
42689
|
+
gpuType: string().optional(),
|
|
42690
|
+
region: string().optional(),
|
|
42691
|
+
costCapUsd: number().nonnegative().optional(),
|
|
42692
|
+
maxRuntimeSec: number().int().positive().optional(),
|
|
42693
|
+
failedDatasetGraceHours: number().nonnegative().optional()
|
|
42506
42694
|
});
|
|
42507
42695
|
var TrainingCredentialCheckSchema = object({
|
|
42508
42696
|
ok: boolean(),
|
|
@@ -42554,20 +42742,33 @@ var TrainerSourceRefSchema = object({
|
|
|
42554
42742
|
/** A commit sha (never a branch) — the job must be reproducible. */
|
|
42555
42743
|
revision: string().regex(/^[0-9a-f]{7,64}$/)
|
|
42556
42744
|
});
|
|
42745
|
+
/** Cloud job identity — route with the owning addon's `addonId` selector. */
|
|
42557
42746
|
var JobRef = {
|
|
42558
|
-
|
|
42747
|
+
entryId: string().min(1),
|
|
42559
42748
|
jobKey: string().uuid()
|
|
42560
42749
|
};
|
|
42561
42750
|
var TrainingLogLineSchema = object({
|
|
42562
42751
|
ts: number(),
|
|
42563
42752
|
text: string()
|
|
42564
42753
|
});
|
|
42565
|
-
method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "admin" }), method(object({
|
|
42754
|
+
method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "admin" }), method(object({}), array(TrainingProviderTypeSchema).readonly(), { auth: "admin" }), method(object({}), array(TrainingProviderEntrySchema).readonly(), { auth: "admin" }), method(object({
|
|
42755
|
+
typeId: string().min(1),
|
|
42756
|
+
name: string().min(1)
|
|
42757
|
+
}), object({ entryId: string() }), {
|
|
42758
|
+
kind: "mutation",
|
|
42759
|
+
auth: "admin"
|
|
42760
|
+
}), method(object({ entryId: string().min(1) }), object({ ok: literal(true) }), {
|
|
42761
|
+
kind: "mutation",
|
|
42762
|
+
auth: "admin"
|
|
42763
|
+
}), method(TrainingProviderUpdateEntryInputSchema, object({ ok: literal(true) }), {
|
|
42764
|
+
kind: "mutation",
|
|
42765
|
+
auth: "admin"
|
|
42766
|
+
}), method(object({ entryId: string().min(1) }), TrainingCredentialCheckSchema, {
|
|
42566
42767
|
kind: "mutation",
|
|
42567
42768
|
auth: "admin",
|
|
42568
42769
|
timeoutMs: 3e4
|
|
42569
42770
|
}), method(object({
|
|
42570
|
-
|
|
42771
|
+
entryId: string().min(1),
|
|
42571
42772
|
gpuType: string(),
|
|
42572
42773
|
region: string(),
|
|
42573
42774
|
datasetBytes: number().int().nonnegative(),
|
|
@@ -42633,7 +42834,7 @@ method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "
|
|
|
42633
42834
|
kind: "mutation",
|
|
42634
42835
|
auth: "admin",
|
|
42635
42836
|
timeoutMs: 5 * 6e4
|
|
42636
|
-
}), method(object({
|
|
42837
|
+
}), method(object({ entryId: string().min(1).optional() }), array(ProviderJobStatusSchema).readonly(), {
|
|
42637
42838
|
auth: "admin",
|
|
42638
42839
|
timeoutMs: 2 * 6e4
|
|
42639
42840
|
});
|
|
@@ -42643,20 +42844,31 @@ method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "
|
|
|
42643
42844
|
*
|
|
42644
42845
|
* It owns what every provider must agree on, written once:
|
|
42645
42846
|
*
|
|
42646
|
-
* - **Dataset versions.** Taken over from pipeline-analytics (D796): the rows
|
|
42647
|
-
* live here (D808); pipeline-analytics still CUTS a version (it owns the corpus and
|
|
42648
|
-
* the export plan) and reaches this store through the five row methods
|
|
42649
|
-
* below, so the Retrain page and the export did not change.
|
|
42650
42847
|
* - **Jobs.** A persisted state machine, a reconcile loop against the
|
|
42651
42848
|
* provider, a cost guard, a daily orphan sweep and the retention rules.
|
|
42652
42849
|
* - **The return flow.** Verified artefacts → Model Studio
|
|
42653
42850
|
* (`custom-model-registry.importModelBundle`) → canary on cameras →
|
|
42654
42851
|
* rollback. Nothing is ever registered automatically.
|
|
42655
42852
|
*
|
|
42853
|
+
* Plan/start takes a live {@link TrainingCorpusSelection} (collections +
|
|
42854
|
+
* work-state rule); frame ids are resolved via pipeline-analytics at that
|
|
42855
|
+
* moment and snapshotted on the job. No frozen dataset version.
|
|
42856
|
+
*
|
|
42656
42857
|
* Every method is `admin`.
|
|
42657
42858
|
*/
|
|
42658
|
-
/**
|
|
42659
|
-
|
|
42859
|
+
/**
|
|
42860
|
+
* Live corpus criteria for plan/start (design §5.2). Default is complete-only.
|
|
42861
|
+
* Frame ids are resolved at plan/start — never a frozen version id.
|
|
42862
|
+
*/
|
|
42863
|
+
var TrainingCorpusSelectionSchema = object({
|
|
42864
|
+
collectionIds: array(string()).min(1),
|
|
42865
|
+
/** Default complete-only for v1 */
|
|
42866
|
+
workState: _enum([
|
|
42867
|
+
"complete",
|
|
42868
|
+
"annotated_or_complete",
|
|
42869
|
+
"any_annotated"
|
|
42870
|
+
]).default("complete")
|
|
42871
|
+
});
|
|
42660
42872
|
/** A base model a detector job can fine-tune, and the baseline it is judged against. */
|
|
42661
42873
|
var TrainingBaseModelSchema = object({
|
|
42662
42874
|
modelId: string(),
|
|
@@ -42674,9 +42886,13 @@ var TrainingPresetSchema = _enum([
|
|
|
42674
42886
|
"thorough"
|
|
42675
42887
|
]);
|
|
42676
42888
|
var TrainingJobRequestSchema = object({
|
|
42677
|
-
|
|
42678
|
-
|
|
42679
|
-
|
|
42889
|
+
/** Live collection + work-state criteria; resolved at plan/start. */
|
|
42890
|
+
selection: TrainingCorpusSelectionSchema,
|
|
42891
|
+
/**
|
|
42892
|
+
* The provider **entry** that runs it (credentials + defaults).
|
|
42893
|
+
* Resolve to an owning addon via `training-provider.describe` / `listEntries`.
|
|
42894
|
+
*/
|
|
42895
|
+
entryId: string().min(1),
|
|
42680
42896
|
gpuType: string().min(1),
|
|
42681
42897
|
region: string(),
|
|
42682
42898
|
baseModelId: string().min(1),
|
|
@@ -42735,6 +42951,7 @@ var TrainingJobPlanSchema = object({
|
|
|
42735
42951
|
* result lives after the operator acted on it.
|
|
42736
42952
|
*/
|
|
42737
42953
|
var TrainingJobStateSchema = _enum([
|
|
42954
|
+
"queued",
|
|
42738
42955
|
"uploading",
|
|
42739
42956
|
"submitted",
|
|
42740
42957
|
"starting",
|
|
@@ -42788,6 +43005,11 @@ var TrainingJobSchema = object({
|
|
|
42788
43005
|
createdAt: number(),
|
|
42789
43006
|
updatedAt: number(),
|
|
42790
43007
|
state: TrainingJobStateSchema,
|
|
43008
|
+
/**
|
|
43009
|
+
* Shared by every job enqueued together via `startJobBatch`.
|
|
43010
|
+
* `null` for a lone `startJob`. The engine advances queued siblings by this id.
|
|
43011
|
+
*/
|
|
43012
|
+
batchId: string().nullable().default(null),
|
|
42791
43013
|
stage: TrainingStageSchema.nullable(),
|
|
42792
43014
|
failure: object({
|
|
42793
43015
|
reason: TrainingFailureReasonSchema,
|
|
@@ -42799,6 +43021,12 @@ var TrainingJobSchema = object({
|
|
|
42799
43021
|
maxRuntimeSec: number().int().positive(),
|
|
42800
43022
|
trainer: TrainerSourceRefSchema,
|
|
42801
43023
|
datasetLayout: RetrainExportLayoutSchema,
|
|
43024
|
+
/** Frame count snapshotted when the job started (audit; equals `frameIds.length`). */
|
|
43025
|
+
frameCount: number().int().nonnegative(),
|
|
43026
|
+
/** Resolved frame ids at start — the archive ships exactly these. */
|
|
43027
|
+
frameIds: array(string()).max(2e4).readonly(),
|
|
43028
|
+
/** Hash of what those frames taught at start (trainer `dataset.annotationHash`). */
|
|
43029
|
+
annotationHash: string(),
|
|
42802
43030
|
dataset: object({
|
|
42803
43031
|
bytes: number().int(),
|
|
42804
43032
|
sha256: string(),
|
|
@@ -42840,13 +43068,7 @@ var TrainingJobSchema = object({
|
|
|
42840
43068
|
canary: TrainingCanarySchema.nullable()
|
|
42841
43069
|
});
|
|
42842
43070
|
var IdInput = object({ id: string().min(1) });
|
|
42843
|
-
method(
|
|
42844
|
-
kind: "mutation",
|
|
42845
|
-
auth: "admin"
|
|
42846
|
-
}), 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() }), {
|
|
42847
|
-
kind: "mutation",
|
|
42848
|
-
auth: "admin"
|
|
42849
|
-
}), method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" }), method(TrainingJobRequestSchema, TrainingJobPlanSchema, {
|
|
43071
|
+
method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" }), method(TrainingJobRequestSchema, TrainingJobPlanSchema, {
|
|
42850
43072
|
auth: "admin",
|
|
42851
43073
|
timeoutMs: 6e4
|
|
42852
43074
|
}), method(TrainingJobRequestSchema.extend({
|
|
@@ -42865,6 +43087,24 @@ method(TrainingDatasetVersionRowSchema, object({ stored: boolean() }), {
|
|
|
42865
43087
|
kind: "mutation",
|
|
42866
43088
|
auth: "admin",
|
|
42867
43089
|
timeoutMs: 12e4
|
|
43090
|
+
}), method(TrainingJobRequestSchema.omit({ baseModelId: true }).extend({
|
|
43091
|
+
baseModelIds: array(string().min(1)).min(1),
|
|
43092
|
+
name: string().min(1).max(120),
|
|
43093
|
+
maxCostUsd: number().positive(),
|
|
43094
|
+
maxRuntimeSec: number().int().positive(),
|
|
43095
|
+
idempotencyKey: string().min(8).max(80)
|
|
43096
|
+
}), discriminatedUnion("kind", [object({
|
|
43097
|
+
kind: literal("started"),
|
|
43098
|
+
batchId: string(),
|
|
43099
|
+
jobs: array(TrainingJobSchema).min(1).readonly()
|
|
43100
|
+
}), object({
|
|
43101
|
+
kind: literal("refused"),
|
|
43102
|
+
reason: TrainingRefusalReasonSchema,
|
|
43103
|
+
detail: string()
|
|
43104
|
+
})]), {
|
|
43105
|
+
kind: "mutation",
|
|
43106
|
+
auth: "admin",
|
|
43107
|
+
timeoutMs: 12e4
|
|
42868
43108
|
}), method(object({}), array(TrainingJobSchema).readonly(), { auth: "admin" }), method(IdInput, TrainingJobSchema.nullable(), { auth: "admin" }), method(IdInput, TrainingJobSchema, {
|
|
42869
43109
|
kind: "mutation",
|
|
42870
43110
|
auth: "admin",
|
|
@@ -48423,6 +48663,36 @@ Object.freeze({
|
|
|
48423
48663
|
addonId: null,
|
|
48424
48664
|
access: "view"
|
|
48425
48665
|
},
|
|
48666
|
+
"oidcConnections.connectionFormSchema": {
|
|
48667
|
+
capName: "oidc-connections",
|
|
48668
|
+
capScope: "system",
|
|
48669
|
+
addonId: null,
|
|
48670
|
+
access: "view"
|
|
48671
|
+
},
|
|
48672
|
+
"oidcConnections.createConnection": {
|
|
48673
|
+
capName: "oidc-connections",
|
|
48674
|
+
capScope: "system",
|
|
48675
|
+
addonId: null,
|
|
48676
|
+
access: "create"
|
|
48677
|
+
},
|
|
48678
|
+
"oidcConnections.deleteConnection": {
|
|
48679
|
+
capName: "oidc-connections",
|
|
48680
|
+
capScope: "system",
|
|
48681
|
+
addonId: null,
|
|
48682
|
+
access: "delete"
|
|
48683
|
+
},
|
|
48684
|
+
"oidcConnections.listConnections": {
|
|
48685
|
+
capName: "oidc-connections",
|
|
48686
|
+
capScope: "system",
|
|
48687
|
+
addonId: null,
|
|
48688
|
+
access: "view"
|
|
48689
|
+
},
|
|
48690
|
+
"oidcConnections.updateConnection": {
|
|
48691
|
+
capName: "oidc-connections",
|
|
48692
|
+
capScope: "system",
|
|
48693
|
+
addonId: null,
|
|
48694
|
+
access: "create"
|
|
48695
|
+
},
|
|
48426
48696
|
"osd.getStatus": {
|
|
48427
48697
|
capName: "osd",
|
|
48428
48698
|
capScope: "device",
|
|
@@ -48495,6 +48765,12 @@ Object.freeze({
|
|
|
48495
48765
|
addonId: null,
|
|
48496
48766
|
access: "create"
|
|
48497
48767
|
},
|
|
48768
|
+
"osdManager.setSlotCameraEnabled": {
|
|
48769
|
+
capName: "osd-manager",
|
|
48770
|
+
capScope: "system",
|
|
48771
|
+
addonId: null,
|
|
48772
|
+
access: "create"
|
|
48773
|
+
},
|
|
48498
48774
|
"osdManager.upsertTemplate": {
|
|
48499
48775
|
capName: "osd-manager",
|
|
48500
48776
|
capScope: "system",
|
|
@@ -48633,12 +48909,6 @@ Object.freeze({
|
|
|
48633
48909
|
addonId: null,
|
|
48634
48910
|
access: "create"
|
|
48635
48911
|
},
|
|
48636
|
-
"pipelineAnalytics.createRetrainDatasetVersion": {
|
|
48637
|
-
capName: "pipeline-analytics",
|
|
48638
|
-
capScope: "device",
|
|
48639
|
-
addonId: null,
|
|
48640
|
-
access: "create"
|
|
48641
|
-
},
|
|
48642
48912
|
"pipelineAnalytics.deleteDeviceEvents": {
|
|
48643
48913
|
capName: "pipeline-analytics",
|
|
48644
48914
|
capScope: "device",
|
|
@@ -48651,12 +48921,6 @@ Object.freeze({
|
|
|
48651
48921
|
addonId: null,
|
|
48652
48922
|
access: "delete"
|
|
48653
48923
|
},
|
|
48654
|
-
"pipelineAnalytics.deleteRetrainDatasetVersion": {
|
|
48655
|
-
capName: "pipeline-analytics",
|
|
48656
|
-
capScope: "device",
|
|
48657
|
-
addonId: null,
|
|
48658
|
-
access: "delete"
|
|
48659
|
-
},
|
|
48660
48924
|
"pipelineAnalytics.deleteTracks": {
|
|
48661
48925
|
capName: "pipeline-analytics",
|
|
48662
48926
|
capScope: "device",
|
|
@@ -48759,6 +49023,12 @@ Object.freeze({
|
|
|
48759
49023
|
addonId: null,
|
|
48760
49024
|
access: "view"
|
|
48761
49025
|
},
|
|
49026
|
+
"pipelineAnalytics.getRetrainCorpusKpi": {
|
|
49027
|
+
capName: "pipeline-analytics",
|
|
49028
|
+
capScope: "device",
|
|
49029
|
+
addonId: null,
|
|
49030
|
+
access: "view"
|
|
49031
|
+
},
|
|
48762
49032
|
"pipelineAnalytics.getRetrainExportUrl": {
|
|
48763
49033
|
capName: "pipeline-analytics",
|
|
48764
49034
|
capScope: "device",
|
|
@@ -48879,7 +49149,7 @@ Object.freeze({
|
|
|
48879
49149
|
addonId: null,
|
|
48880
49150
|
access: "view"
|
|
48881
49151
|
},
|
|
48882
|
-
"pipelineAnalytics.
|
|
49152
|
+
"pipelineAnalytics.listRetrainCorpusPage": {
|
|
48883
49153
|
capName: "pipeline-analytics",
|
|
48884
49154
|
capScope: "device",
|
|
48885
49155
|
addonId: null,
|
|
@@ -48933,12 +49203,6 @@ Object.freeze({
|
|
|
48933
49203
|
addonId: null,
|
|
48934
49204
|
access: "create"
|
|
48935
49205
|
},
|
|
48936
|
-
"pipelineAnalytics.previewRetrainDataset": {
|
|
48937
|
-
capName: "pipeline-analytics",
|
|
48938
|
-
capScope: "device",
|
|
48939
|
-
addonId: null,
|
|
48940
|
-
access: "view"
|
|
48941
|
-
},
|
|
48942
49206
|
"pipelineAnalytics.proposeRetrainAnnotations": {
|
|
48943
49207
|
capName: "pipeline-analytics",
|
|
48944
49208
|
capScope: "device",
|
|
@@ -49017,6 +49281,12 @@ Object.freeze({
|
|
|
49017
49281
|
addonId: null,
|
|
49018
49282
|
access: "create"
|
|
49019
49283
|
},
|
|
49284
|
+
"pipelineAnalytics.resolveRetrainTrainingCorpus": {
|
|
49285
|
+
capName: "pipeline-analytics",
|
|
49286
|
+
capScope: "device",
|
|
49287
|
+
addonId: null,
|
|
49288
|
+
access: "view"
|
|
49289
|
+
},
|
|
49020
49290
|
"pipelineAnalytics.restageRetrainTrack": {
|
|
49021
49291
|
capName: "pipeline-analytics",
|
|
49022
49292
|
capScope: "device",
|
|
@@ -49077,12 +49347,6 @@ Object.freeze({
|
|
|
49077
49347
|
addonId: null,
|
|
49078
49348
|
access: "create"
|
|
49079
49349
|
},
|
|
49080
|
-
"pipelineAnalytics.verifyRetrainDatasetVersion": {
|
|
49081
|
-
capName: "pipeline-analytics",
|
|
49082
|
-
capScope: "device",
|
|
49083
|
-
addonId: null,
|
|
49084
|
-
access: "view"
|
|
49085
|
-
},
|
|
49086
49350
|
"pipelineAnalytics.wipeAllAnalytics": {
|
|
49087
49351
|
capName: "pipeline-analytics",
|
|
49088
49352
|
capScope: "device",
|
|
@@ -51477,18 +51741,6 @@ Object.freeze({
|
|
|
51477
51741
|
addonId: null,
|
|
51478
51742
|
access: "create"
|
|
51479
51743
|
},
|
|
51480
|
-
"training.findDatasetVersionIdByName": {
|
|
51481
|
-
capName: "training",
|
|
51482
|
-
capScope: "system",
|
|
51483
|
-
addonId: null,
|
|
51484
|
-
access: "view"
|
|
51485
|
-
},
|
|
51486
|
-
"training.getDatasetVersion": {
|
|
51487
|
-
capName: "training",
|
|
51488
|
-
capScope: "system",
|
|
51489
|
-
addonId: null,
|
|
51490
|
-
access: "view"
|
|
51491
|
-
},
|
|
51492
51744
|
"training.getJob": {
|
|
51493
51745
|
capName: "training",
|
|
51494
51746
|
capScope: "system",
|
|
@@ -51507,12 +51759,6 @@ Object.freeze({
|
|
|
51507
51759
|
addonId: null,
|
|
51508
51760
|
access: "view"
|
|
51509
51761
|
},
|
|
51510
|
-
"training.listDatasetVersions": {
|
|
51511
|
-
capName: "training",
|
|
51512
|
-
capScope: "system",
|
|
51513
|
-
addonId: null,
|
|
51514
|
-
access: "view"
|
|
51515
|
-
},
|
|
51516
51762
|
"training.listJobs": {
|
|
51517
51763
|
capName: "training",
|
|
51518
51764
|
capScope: "system",
|
|
@@ -51525,54 +51771,66 @@ Object.freeze({
|
|
|
51525
51771
|
addonId: null,
|
|
51526
51772
|
access: "view"
|
|
51527
51773
|
},
|
|
51528
|
-
"training.
|
|
51774
|
+
"training.registerResult": {
|
|
51529
51775
|
capName: "training",
|
|
51530
51776
|
capScope: "system",
|
|
51531
51777
|
addonId: null,
|
|
51532
51778
|
access: "create"
|
|
51533
51779
|
},
|
|
51534
|
-
"training.
|
|
51780
|
+
"training.rollbackCanary": {
|
|
51535
51781
|
capName: "training",
|
|
51536
51782
|
capScope: "system",
|
|
51537
51783
|
addonId: null,
|
|
51538
51784
|
access: "create"
|
|
51539
51785
|
},
|
|
51540
|
-
"training.
|
|
51786
|
+
"training.startJob": {
|
|
51541
51787
|
capName: "training",
|
|
51542
51788
|
capScope: "system",
|
|
51543
51789
|
addonId: null,
|
|
51544
|
-
access: "
|
|
51790
|
+
access: "create"
|
|
51545
51791
|
},
|
|
51546
|
-
"training.
|
|
51792
|
+
"training.startJobBatch": {
|
|
51547
51793
|
capName: "training",
|
|
51548
51794
|
capScope: "system",
|
|
51549
51795
|
addonId: null,
|
|
51550
51796
|
access: "create"
|
|
51551
51797
|
},
|
|
51552
|
-
"
|
|
51553
|
-
capName: "training",
|
|
51798
|
+
"trainingProvider.cancelJob": {
|
|
51799
|
+
capName: "training-provider",
|
|
51554
51800
|
capScope: "system",
|
|
51555
51801
|
addonId: null,
|
|
51556
51802
|
access: "create"
|
|
51557
51803
|
},
|
|
51558
|
-
"trainingProvider.
|
|
51804
|
+
"trainingProvider.cleanupJob": {
|
|
51559
51805
|
capName: "training-provider",
|
|
51560
51806
|
capScope: "system",
|
|
51561
51807
|
addonId: null,
|
|
51562
51808
|
access: "create"
|
|
51563
51809
|
},
|
|
51564
|
-
"trainingProvider.
|
|
51810
|
+
"trainingProvider.createEntry": {
|
|
51565
51811
|
capName: "training-provider",
|
|
51566
51812
|
capScope: "system",
|
|
51567
51813
|
addonId: null,
|
|
51568
51814
|
access: "create"
|
|
51569
51815
|
},
|
|
51816
|
+
"trainingProvider.deleteEntry": {
|
|
51817
|
+
capName: "training-provider",
|
|
51818
|
+
capScope: "system",
|
|
51819
|
+
addonId: null,
|
|
51820
|
+
access: "delete"
|
|
51821
|
+
},
|
|
51570
51822
|
"trainingProvider.describe": {
|
|
51571
51823
|
capName: "training-provider",
|
|
51572
51824
|
capScope: "system",
|
|
51573
51825
|
addonId: null,
|
|
51574
51826
|
access: "view"
|
|
51575
51827
|
},
|
|
51828
|
+
"trainingProvider.describeTypes": {
|
|
51829
|
+
capName: "training-provider",
|
|
51830
|
+
capScope: "system",
|
|
51831
|
+
addonId: null,
|
|
51832
|
+
access: "view"
|
|
51833
|
+
},
|
|
51576
51834
|
"trainingProvider.estimateJob": {
|
|
51577
51835
|
capName: "training-provider",
|
|
51578
51836
|
capScope: "system",
|
|
@@ -51585,6 +51843,12 @@ Object.freeze({
|
|
|
51585
51843
|
addonId: null,
|
|
51586
51844
|
access: "view"
|
|
51587
51845
|
},
|
|
51846
|
+
"trainingProvider.listEntries": {
|
|
51847
|
+
capName: "training-provider",
|
|
51848
|
+
capScope: "system",
|
|
51849
|
+
addonId: null,
|
|
51850
|
+
access: "view"
|
|
51851
|
+
},
|
|
51588
51852
|
"trainingProvider.listJobEvents": {
|
|
51589
51853
|
capName: "training-provider",
|
|
51590
51854
|
capScope: "system",
|
|
@@ -51615,6 +51879,12 @@ Object.freeze({
|
|
|
51615
51879
|
addonId: null,
|
|
51616
51880
|
access: "create"
|
|
51617
51881
|
},
|
|
51882
|
+
"trainingProvider.updateEntry": {
|
|
51883
|
+
capName: "training-provider",
|
|
51884
|
+
capScope: "system",
|
|
51885
|
+
addonId: null,
|
|
51886
|
+
access: "create"
|
|
51887
|
+
},
|
|
51618
51888
|
"trainingProvider.uploadDataset": {
|
|
51619
51889
|
capName: "training-provider",
|
|
51620
51890
|
capScope: "system",
|
|
@@ -54821,6 +55091,11 @@ Object.freeze({
|
|
|
54821
55091
|
form: "single",
|
|
54822
55092
|
optional: false
|
|
54823
55093
|
}],
|
|
55094
|
+
"osdManager.setSlotCameraEnabled": [{
|
|
55095
|
+
name: "deviceId",
|
|
55096
|
+
form: "single",
|
|
55097
|
+
optional: false
|
|
55098
|
+
}],
|
|
54824
55099
|
"petFeeder.callPet": [{
|
|
54825
55100
|
name: "deviceId",
|
|
54826
55101
|
form: "single",
|
|
@@ -55041,6 +55316,11 @@ Object.freeze({
|
|
|
55041
55316
|
form: "array",
|
|
55042
55317
|
optional: false
|
|
55043
55318
|
}],
|
|
55319
|
+
"pipelineAnalytics.listRetrainCorpusPage": [{
|
|
55320
|
+
name: "deviceIds",
|
|
55321
|
+
form: "array",
|
|
55322
|
+
optional: true
|
|
55323
|
+
}],
|
|
55044
55324
|
"pipelineAnalytics.listRetrainStaging": [{
|
|
55045
55325
|
name: "deviceIds",
|
|
55046
55326
|
form: "array",
|
|
@@ -56150,6 +56430,7 @@ Object.freeze({
|
|
|
56150
56430
|
});
|
|
56151
56431
|
Object.freeze({
|
|
56152
56432
|
"broker": "broker",
|
|
56433
|
+
"calendar-source": "calendar",
|
|
56153
56434
|
"device-export": "device-export",
|
|
56154
56435
|
"llm": "ai",
|
|
56155
56436
|
"mesh-network": "mesh",
|
|
@@ -56635,6 +56916,8 @@ var STATE_SUMMARY_VARS = [
|
|
|
56635
56916
|
[...RULE_TEXT],
|
|
56636
56917
|
[...RULE_TEXT],
|
|
56637
56918
|
[...RULE_TEXT],
|
|
56919
|
+
[...RULE_TEXT],
|
|
56920
|
+
[...RULE_TEXT],
|
|
56638
56921
|
([...RULE_TEXT], [...UPDATES]),
|
|
56639
56922
|
([...RULE_TEXT], [...PACKAGE_UPDATES]),
|
|
56640
56923
|
([...RULE_TEXT], [...PACKAGE_UPDATES]),
|