@camstack/addon-smtp-nodemailer 1.2.120 → 1.2.122
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/smtp.addon.js +422 -139
- package/dist/smtp.addon.mjs +422 -139
- package/package.json +2 -3
package/dist/smtp.addon.mjs
CHANGED
|
@@ -5412,7 +5412,7 @@ var ZodIssueCode = {
|
|
|
5412
5412
|
var ZodFirstPartyTypeKind;
|
|
5413
5413
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5414
5414
|
//#endregion
|
|
5415
|
-
//#region ../types/dist/sleep-
|
|
5415
|
+
//#region ../types/dist/sleep-DwAQ9sqX.mjs
|
|
5416
5416
|
/**
|
|
5417
5417
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5418
5418
|
* window to float samples (D455).
|
|
@@ -9341,6 +9341,16 @@ var CompositionSchema = object({
|
|
|
9341
9341
|
seen.add(feature.cap);
|
|
9342
9342
|
});
|
|
9343
9343
|
});
|
|
9344
|
+
var NodeColorIdSchema = _enum([
|
|
9345
|
+
"node-a",
|
|
9346
|
+
"node-b",
|
|
9347
|
+
"node-c",
|
|
9348
|
+
"node-d",
|
|
9349
|
+
"node-e",
|
|
9350
|
+
"node-f",
|
|
9351
|
+
"node-g",
|
|
9352
|
+
"node-h"
|
|
9353
|
+
]);
|
|
9344
9354
|
new Set([
|
|
9345
9355
|
"track",
|
|
9346
9356
|
"face",
|
|
@@ -18080,14 +18090,14 @@ var LlmProfileSchema = object({
|
|
|
18080
18090
|
/** ConfigUISchema tree passed through untyped on the wire (the
|
|
18081
18091
|
* notification-output `ConfigSchemaPassthrough` precedent at
|
|
18082
18092
|
* notification-output.cap.ts:151); the exported TS type re-tightens it. */
|
|
18083
|
-
var ConfigSchemaPassthrough$
|
|
18093
|
+
var ConfigSchemaPassthrough$3 = unknown();
|
|
18084
18094
|
var LlmProfileKindDescriptorSchema = object({
|
|
18085
18095
|
kind: LlmProfileKindSchema,
|
|
18086
18096
|
label: string(),
|
|
18087
18097
|
icon: string(),
|
|
18088
18098
|
/** Stamped by each provider so the concat-fanned catalog stays routable. */
|
|
18089
18099
|
addonId: string(),
|
|
18090
|
-
configSchema: ConfigSchemaPassthrough$
|
|
18100
|
+
configSchema: ConfigSchemaPassthrough$3
|
|
18091
18101
|
});
|
|
18092
18102
|
var LlmDefaultSelectorSchema = union([object({ consumer: string() }), object({ purpose: _enum(["text", "vision"]) })]);
|
|
18093
18103
|
var LlmDefaultSchema = object({
|
|
@@ -19208,7 +19218,7 @@ var TargetKindCapsSchema = object({
|
|
|
19208
19218
|
* the union is large and not meant for runtime validation here; the exported
|
|
19209
19219
|
* `TargetKind` type re-tightens `configSchema` to `ConfigUISchema`.
|
|
19210
19220
|
*/
|
|
19211
|
-
var ConfigSchemaPassthrough = unknown();
|
|
19221
|
+
var ConfigSchemaPassthrough$2 = unknown();
|
|
19212
19222
|
var TargetKindSchema = object({
|
|
19213
19223
|
kind: string(),
|
|
19214
19224
|
label: string(),
|
|
@@ -19245,7 +19255,7 @@ var TargetKindSchema = object({
|
|
|
19245
19255
|
* its raster path, which is the safe default for an unknown image.
|
|
19246
19256
|
*/
|
|
19247
19257
|
iconMediaType: string().optional(),
|
|
19248
|
-
configSchema: ConfigSchemaPassthrough,
|
|
19258
|
+
configSchema: ConfigSchemaPassthrough$2,
|
|
19249
19259
|
/**
|
|
19250
19260
|
* The config keys that decide WHERE this kind's secrets are sent (server,
|
|
19251
19261
|
* base URL, instance, chat, recipient). A save that changes any of them
|
|
@@ -22544,6 +22554,61 @@ var OauthIntegrationDescriptorSchema = object({
|
|
|
22544
22554
|
});
|
|
22545
22555
|
method(_void(), OauthIntegrationDescriptorSchema, { auth: "admin" });
|
|
22546
22556
|
/**
|
|
22557
|
+
* `oidc-connections` — CRUD for IdP rows under `auth-oidc` (D828 sibling).
|
|
22558
|
+
*
|
|
22559
|
+
* One hub-only singleton (`auth-oidc`). The Settings UI is a DataTable +
|
|
22560
|
+
* ItemFormDialog; there is no `editable-array` in `globalSettingsSchema`.
|
|
22561
|
+
* Operator-chosen `id` is the URL slug (`/addon/auth-oidc/<id>/…`) and is
|
|
22562
|
+
* immutable after create.
|
|
22563
|
+
*/
|
|
22564
|
+
var ConfigSchemaPassthrough$1 = unknown();
|
|
22565
|
+
var OidcConnectionSchema = object({
|
|
22566
|
+
id: string().min(1),
|
|
22567
|
+
displayName: string(),
|
|
22568
|
+
icon: string(),
|
|
22569
|
+
issuerUrl: string(),
|
|
22570
|
+
clientId: string(),
|
|
22571
|
+
/** Client id + secret present — never the secret value. */
|
|
22572
|
+
configured: boolean(),
|
|
22573
|
+
/**
|
|
22574
|
+
* Values for the connection form schema. `clientSecret` is a keychain
|
|
22575
|
+
* {@link SecretFieldView} or `null` / `''`, never plaintext (D789).
|
|
22576
|
+
*/
|
|
22577
|
+
formValues: record(string(), unknown()).optional()
|
|
22578
|
+
});
|
|
22579
|
+
/**
|
|
22580
|
+
* Patch one connection. Omitted or empty `clientSecret` keeps the stored
|
|
22581
|
+
* secret (D787). `{ $secretClear: true }` clears it. `id` is never renamed.
|
|
22582
|
+
*/
|
|
22583
|
+
var OidcConnectionUpdateInputSchema = object({
|
|
22584
|
+
id: string().min(1),
|
|
22585
|
+
displayName: string().min(1),
|
|
22586
|
+
icon: string().optional(),
|
|
22587
|
+
issuerUrl: string().optional(),
|
|
22588
|
+
clientId: string().optional(),
|
|
22589
|
+
clientSecret: union([string(), object({ $secretClear: literal(true) })]).optional(),
|
|
22590
|
+
redirectUri: string().optional(),
|
|
22591
|
+
scopes: string().optional(),
|
|
22592
|
+
usernameClaim: _enum([
|
|
22593
|
+
"preferred_username",
|
|
22594
|
+
"email",
|
|
22595
|
+
"sub"
|
|
22596
|
+
]).optional()
|
|
22597
|
+
});
|
|
22598
|
+
method(object({}), ConfigSchemaPassthrough$1, { auth: "admin" }), method(object({}), array(OidcConnectionSchema).readonly(), { auth: "admin" }), method(object({
|
|
22599
|
+
id: string().min(1).regex(/^[a-z0-9][a-z0-9-]{0,63}$/, "id must be a lowercase slug"),
|
|
22600
|
+
displayName: string().min(1)
|
|
22601
|
+
}), object({ id: string() }), {
|
|
22602
|
+
kind: "mutation",
|
|
22603
|
+
auth: "admin"
|
|
22604
|
+
}), method(OidcConnectionUpdateInputSchema, object({ ok: literal(true) }), {
|
|
22605
|
+
kind: "mutation",
|
|
22606
|
+
auth: "admin"
|
|
22607
|
+
}), method(object({ id: string().min(1) }), object({ ok: literal(true) }), {
|
|
22608
|
+
kind: "mutation",
|
|
22609
|
+
auth: "admin"
|
|
22610
|
+
});
|
|
22611
|
+
/**
|
|
22547
22612
|
* What started a camera's onboard motion (D672). `camera` is the camera's own
|
|
22548
22613
|
* firmware; `sensor` is a device the operator ATTACHED to it. Absent on the
|
|
22549
22614
|
* wire means the camera: only the camera-sensors bridge ever says `sensor`.
|
|
@@ -23900,24 +23965,69 @@ var RetrainFrameListSchema = object({
|
|
|
23900
23965
|
/** What the page pre-selects — the native key frame when one survives. */
|
|
23901
23966
|
autoPickMediaId: number().int().optional()
|
|
23902
23967
|
});
|
|
23968
|
+
/** Exclusive partition of a corpus copy's annotation progress (design §4.2). */
|
|
23969
|
+
var RetrainFrameWorkStateSchema = _enum([
|
|
23970
|
+
"unannotated",
|
|
23971
|
+
"annotated",
|
|
23972
|
+
"complete"
|
|
23973
|
+
]);
|
|
23974
|
+
/**
|
|
23975
|
+
* Filters for paginated corpus list, KPI, and matching export (design §4.4).
|
|
23976
|
+
* Every narrowing field is ANDed; omitted fields impose no constraint.
|
|
23977
|
+
*/
|
|
23978
|
+
var RetrainCorpusFilterSchema = object({
|
|
23979
|
+
workState: RetrainFrameWorkStateSchema.optional(),
|
|
23980
|
+
deviceIds: array(number()).max(500).optional(),
|
|
23981
|
+
/** When set, only frames in this named collection. */
|
|
23982
|
+
collectionId: string().optional(),
|
|
23983
|
+
/** Frames that carry at least one saved annotation in one of these classes. */
|
|
23984
|
+
classes: array(RetrainMacroClassSchema).optional(),
|
|
23985
|
+
page: number().int().positive().default(1),
|
|
23986
|
+
pageSize: number().int().positive().max(100).default(50)
|
|
23987
|
+
});
|
|
23988
|
+
var RetrainCorpusPageSchema = object({
|
|
23989
|
+
frames: array(RetrainFrameSchema.extend({ workState: RetrainFrameWorkStateSchema })).readonly(),
|
|
23990
|
+
total: number().int().nonnegative(),
|
|
23991
|
+
page: number().int().positive(),
|
|
23992
|
+
pageSize: number().int().positive()
|
|
23993
|
+
});
|
|
23994
|
+
var RetrainCorpusKpiCameraRowSchema = object({
|
|
23995
|
+
deviceId: number(),
|
|
23996
|
+
unannotated: number().int().nonnegative(),
|
|
23997
|
+
annotated: number().int().nonnegative(),
|
|
23998
|
+
complete: number().int().nonnegative(),
|
|
23999
|
+
/** This camera's `complete` count divided by corpus `total`, in `[0,1]`.
|
|
24000
|
+
* `null` when the corpus is empty (no ratio). */
|
|
24001
|
+
pctOfCorpus: number().min(0).max(1).nullable()
|
|
24002
|
+
});
|
|
24003
|
+
var RetrainCorpusKpiSchema = object({
|
|
24004
|
+
total: number().int().nonnegative(),
|
|
24005
|
+
unannotated: number().int().nonnegative(),
|
|
24006
|
+
annotated: number().int().nonnegative(),
|
|
24007
|
+
complete: number().int().nonnegative(),
|
|
24008
|
+
cameras: array(RetrainCorpusKpiCameraRowSchema).readonly()
|
|
24009
|
+
});
|
|
23903
24010
|
/**
|
|
23904
24011
|
* Which frames an annotated export carries. Every field narrows; an empty
|
|
23905
|
-
* filter is every annotated copy.
|
|
23906
|
-
*
|
|
23907
|
-
*
|
|
23908
|
-
*
|
|
24012
|
+
* filter is every annotated copy. `frameIds` is the primitive a job or
|
|
24013
|
+
* download uses; `batchId` re-selects what an earlier export carried
|
|
24014
|
+
* (`exportedInBatch`). Frozen dataset versions were removed — live selection
|
|
24015
|
+
* resolves to `frameIds` at plan/start.
|
|
23909
24016
|
*/
|
|
23910
24017
|
var RetrainExportFilterSchema = object({
|
|
23911
24018
|
deviceIds: array(number()).optional(),
|
|
23912
24019
|
frameIds: array(string()).max(2e4).optional(),
|
|
23913
24020
|
/** Only frames in at least one of these named collections. */
|
|
23914
24021
|
collectionIds: array(string()).max(200).optional(),
|
|
23915
|
-
/**
|
|
23916
|
-
|
|
23917
|
-
datasetVersionId: string().optional(),
|
|
24022
|
+
/** Single collection (Frames filter bar). ANDed with `collectionIds` when both set. */
|
|
24023
|
+
collectionId: string().optional(),
|
|
23918
24024
|
batchId: string().optional(),
|
|
23919
24025
|
/** Only frames the operator marked complete (all subjects boxed). */
|
|
23920
|
-
completeOnly: boolean().optional()
|
|
24026
|
+
completeOnly: boolean().optional(),
|
|
24027
|
+
/** Exclusive work-state partition (`workStateOf`); same as the corpus list. */
|
|
24028
|
+
workState: RetrainFrameWorkStateSchema.optional(),
|
|
24029
|
+
/** Frames with at least one saved annotation in one of these classes. */
|
|
24030
|
+
classes: array(RetrainMacroClassSchema).optional()
|
|
23921
24031
|
});
|
|
23922
24032
|
/**
|
|
23923
24033
|
* `frames`: the full frame copies, boxes in `annotations.json`.
|
|
@@ -24117,8 +24227,7 @@ var RetrainDatasetStatsSchema = object({
|
|
|
24117
24227
|
completeFrames: number().int()
|
|
24118
24228
|
})).readonly()
|
|
24119
24229
|
});
|
|
24120
|
-
|
|
24121
|
-
var RetrainDatasetVersionSchema = object({
|
|
24230
|
+
object({
|
|
24122
24231
|
id: string(),
|
|
24123
24232
|
name: string(),
|
|
24124
24233
|
createdAt: number(),
|
|
@@ -24126,22 +24235,33 @@ var RetrainDatasetVersionSchema = object({
|
|
|
24126
24235
|
layout: RetrainExportLayoutSchema,
|
|
24127
24236
|
completeOnly: boolean(),
|
|
24128
24237
|
frameCount: number().int(),
|
|
24129
|
-
/** sha256 of what the frames taught when the version was frozen. */
|
|
24130
24238
|
annotationHash: string(),
|
|
24131
|
-
/** The export manifest schema the version was cut under. */
|
|
24132
24239
|
manifestSchema: string(),
|
|
24133
24240
|
stats: RetrainDatasetStatsSchema
|
|
24134
24241
|
});
|
|
24135
|
-
|
|
24136
|
-
|
|
24137
|
-
|
|
24242
|
+
/**
|
|
24243
|
+
* Live training corpus criteria — same shape as `TrainingCorpusSelection` on
|
|
24244
|
+
* the training cap. Resolved here so plan/start and the annotated export share
|
|
24245
|
+
* one definition of "the frames" (`buildRetrainExportPlan`).
|
|
24246
|
+
*/
|
|
24247
|
+
var RetrainTrainingCorpusSelectionSchema = object({
|
|
24248
|
+
collectionIds: array(string()).min(1),
|
|
24249
|
+
workState: _enum([
|
|
24250
|
+
"complete",
|
|
24251
|
+
"annotated_or_complete",
|
|
24252
|
+
"any_annotated"
|
|
24253
|
+
]).default("complete")
|
|
24254
|
+
});
|
|
24255
|
+
var RetrainTrainingCorpusResolveResultSchema = discriminatedUnion("kind", [object({
|
|
24256
|
+
kind: literal("resolved"),
|
|
24257
|
+
frameIds: array(string()).max(2e4).readonly(),
|
|
24258
|
+
stats: RetrainDatasetStatsSchema,
|
|
24259
|
+
annotationHash: string(),
|
|
24260
|
+
layout: RetrainExportLayoutSchema
|
|
24138
24261
|
}), object({
|
|
24139
24262
|
kind: literal("refused"),
|
|
24140
|
-
reason: _enum([
|
|
24141
|
-
|
|
24142
|
-
"duplicate-name",
|
|
24143
|
-
"no-frames"
|
|
24144
|
-
])
|
|
24263
|
+
reason: _enum(["unknown-collection", "no-frames"]),
|
|
24264
|
+
detail: string()
|
|
24145
24265
|
})]);
|
|
24146
24266
|
/** The outcome of a lifecycle move owned by the retrain page. */
|
|
24147
24267
|
var RetrainTransitionResultSchema = object({
|
|
@@ -24848,6 +24968,12 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
24848
24968
|
}), array(RetrainTrackSchema).readonly(), {
|
|
24849
24969
|
kind: "query",
|
|
24850
24970
|
auth: "admin"
|
|
24971
|
+
}), method(RetrainCorpusFilterSchema, RetrainCorpusPageSchema, {
|
|
24972
|
+
kind: "query",
|
|
24973
|
+
auth: "admin"
|
|
24974
|
+
}), method(object({}), RetrainCorpusKpiSchema, {
|
|
24975
|
+
kind: "query",
|
|
24976
|
+
auth: "admin"
|
|
24851
24977
|
}), method(object({ trackId: string() }), RetrainFrameListSchema, {
|
|
24852
24978
|
kind: "query",
|
|
24853
24979
|
auth: "admin"
|
|
@@ -24943,36 +25069,6 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
24943
25069
|
kind: "mutation",
|
|
24944
25070
|
auth: "admin",
|
|
24945
25071
|
timeoutMs: 12e4
|
|
24946
|
-
}), method(object({
|
|
24947
|
-
selection: RetrainDatasetSelectionSchema,
|
|
24948
|
-
completeOnly: boolean().optional()
|
|
24949
|
-
}), RetrainDatasetStatsSchema, {
|
|
24950
|
-
kind: "query",
|
|
24951
|
-
auth: "admin"
|
|
24952
|
-
}), method(object({
|
|
24953
|
-
name: string().max(120),
|
|
24954
|
-
selection: RetrainDatasetSelectionSchema,
|
|
24955
|
-
layout: RetrainExportLayoutSchema,
|
|
24956
|
-
completeOnly: boolean()
|
|
24957
|
-
}), CreateRetrainDatasetVersionResultSchema, {
|
|
24958
|
-
kind: "mutation",
|
|
24959
|
-
auth: "admin",
|
|
24960
|
-
timeoutMs: 12e4
|
|
24961
|
-
}), method(object({}), array(RetrainDatasetVersionSchema).readonly(), {
|
|
24962
|
-
kind: "query",
|
|
24963
|
-
auth: "admin"
|
|
24964
|
-
}), method(object({ id: string() }), object({ deleted: boolean() }), {
|
|
24965
|
-
kind: "mutation",
|
|
24966
|
-
auth: "admin"
|
|
24967
|
-
}), method(object({ id: string() }), object({
|
|
24968
|
-
found: boolean(),
|
|
24969
|
-
annotationHash: string(),
|
|
24970
|
-
matches: boolean(),
|
|
24971
|
-
missingFrames: number().int()
|
|
24972
|
-
}), {
|
|
24973
|
-
kind: "query",
|
|
24974
|
-
auth: "admin",
|
|
24975
|
-
timeoutMs: 12e4
|
|
24976
25072
|
}), method(object({}), array(RetrainAssistProfileSchema).readonly(), {
|
|
24977
25073
|
kind: "query",
|
|
24978
25074
|
auth: "admin"
|
|
@@ -24999,6 +25095,10 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
|
|
|
24999
25095
|
}), method(object({}), array(RetrainCollectionSchema).readonly(), {
|
|
25000
25096
|
kind: "query",
|
|
25001
25097
|
auth: "admin"
|
|
25098
|
+
}), method(RetrainTrainingCorpusSelectionSchema, RetrainTrainingCorpusResolveResultSchema, {
|
|
25099
|
+
kind: "query",
|
|
25100
|
+
auth: "admin",
|
|
25101
|
+
timeoutMs: 6e4
|
|
25002
25102
|
}), method(object({
|
|
25003
25103
|
id: string(),
|
|
25004
25104
|
name: string().max(120)
|
|
@@ -25615,11 +25715,14 @@ var HardwareClassIdSchema = _enum([
|
|
|
25615
25715
|
"intel-n-series",
|
|
25616
25716
|
"apple-m-base",
|
|
25617
25717
|
"apple-m-pro",
|
|
25718
|
+
"amd-phoenix",
|
|
25618
25719
|
"unknown"
|
|
25619
25720
|
]);
|
|
25620
25721
|
var AcceleratorKindSchema = _enum([
|
|
25621
25722
|
"intel-npu",
|
|
25622
25723
|
"intel-igpu",
|
|
25724
|
+
"amd-igpu",
|
|
25725
|
+
"amd-npu",
|
|
25623
25726
|
"x86-cpu",
|
|
25624
25727
|
"arm-cpu",
|
|
25625
25728
|
"apple-ane",
|
|
@@ -27509,6 +27612,8 @@ var AgentPipelineSettingsSchema = object({
|
|
|
27509
27612
|
* address is wrong (multi-homed host, NAT, custom interface).
|
|
27510
27613
|
*/
|
|
27511
27614
|
reachableHost: string().optional(),
|
|
27615
|
+
/** Hub-persisted UI colour (`--color-node-*` theme tokens). */
|
|
27616
|
+
color: NodeColorIdSchema.optional(),
|
|
27512
27617
|
/**
|
|
27513
27618
|
* Multi-device inference opt-in (Phase 4). Per-node map deviceKey → {enabled,
|
|
27514
27619
|
* weight, steps}. Absent / all-disabled ⇒ the node's single default
|
|
@@ -28058,8 +28163,9 @@ method(object({
|
|
|
28058
28163
|
auth: "admin"
|
|
28059
28164
|
}), method(object({
|
|
28060
28165
|
agentNodeId: string(),
|
|
28061
|
-
reachableHost: string().nullable()
|
|
28062
|
-
|
|
28166
|
+
reachableHost: string().nullable().optional(),
|
|
28167
|
+
color: NodeColorIdSchema.nullable().optional()
|
|
28168
|
+
}).refine((v) => v.reachableHost !== void 0 || v.color !== void 0, { message: "reachableHost or color required" }), object({ success: literal(true) }), {
|
|
28063
28169
|
kind: "mutation",
|
|
28064
28170
|
auth: "admin"
|
|
28065
28171
|
}), method(object({
|
|
@@ -31119,7 +31225,7 @@ var CustomActionInputSchema = object({
|
|
|
31119
31225
|
action: string().min(1),
|
|
31120
31226
|
input: unknown()
|
|
31121
31227
|
});
|
|
31122
|
-
method(
|
|
31228
|
+
method(object({ nodeId: string().optional() }).optional(), array(AddonListItemSchema).readonly()), method(object({
|
|
31123
31229
|
addonId: string(),
|
|
31124
31230
|
limit: number().min(1).max(500).default(100),
|
|
31125
31231
|
level: LogLevelSchema$2.optional()
|
|
@@ -34666,7 +34772,13 @@ var TopologyNodeSchema = object({
|
|
|
34666
34772
|
})).readonly(),
|
|
34667
34773
|
processes: array(TopologyProcessSchema).readonly(),
|
|
34668
34774
|
categories: array(TopologyCategorySchema).readonly(),
|
|
34669
|
-
rootPackage: TopologyRootPackageSchema.nullable()
|
|
34775
|
+
rootPackage: TopologyRootPackageSchema.nullable(),
|
|
34776
|
+
/**
|
|
34777
|
+
* How an online AGENT reaches the hub (mesh mTLS Release A): `tls` once it has
|
|
34778
|
+
* completed a mutual-TLS handshake, `clear` otherwise. Absent for the hub,
|
|
34779
|
+
* for offline rows and when the hub cannot tell.
|
|
34780
|
+
*/
|
|
34781
|
+
meshTransport: _enum(["tls", "clear"]).optional()
|
|
34670
34782
|
});
|
|
34671
34783
|
var CapUsageEdgeSchema = object({
|
|
34672
34784
|
callerAddonId: string(),
|
|
@@ -35006,6 +35118,7 @@ var OsdNamedTemplateSchema = object({
|
|
|
35006
35118
|
});
|
|
35007
35119
|
/** Where a slot's value comes from. */
|
|
35008
35120
|
var OsdSourceSchema = discriminatedUnion("kind", [
|
|
35121
|
+
object({ kind: literal("none") }),
|
|
35009
35122
|
object({
|
|
35010
35123
|
kind: literal("static"),
|
|
35011
35124
|
text: string().max(64)
|
|
@@ -35132,6 +35245,13 @@ method(object({ deviceId: number().int() }), object({
|
|
|
35132
35245
|
}), object({ success: literal(true) }), {
|
|
35133
35246
|
kind: "mutation",
|
|
35134
35247
|
auth: "admin"
|
|
35248
|
+
}), method(object({
|
|
35249
|
+
deviceId: number().int(),
|
|
35250
|
+
slotId: string().min(1),
|
|
35251
|
+
enabled: boolean()
|
|
35252
|
+
}), object({ success: literal(true) }), {
|
|
35253
|
+
kind: "mutation",
|
|
35254
|
+
auth: "admin"
|
|
35135
35255
|
}), method(object({
|
|
35136
35256
|
sourceDeviceId: number().int(),
|
|
35137
35257
|
targetDeviceId: number().int()
|
|
@@ -35512,7 +35632,15 @@ var GpuInfoSchema = object({
|
|
|
35512
35632
|
name: string(),
|
|
35513
35633
|
memoryMB: number().optional()
|
|
35514
35634
|
});
|
|
35515
|
-
var NpuInfoSchema = object({
|
|
35635
|
+
var NpuInfoSchema = object({
|
|
35636
|
+
type: _enum([
|
|
35637
|
+
"apple-ane",
|
|
35638
|
+
"intel-npu",
|
|
35639
|
+
"amd-xdna"
|
|
35640
|
+
]),
|
|
35641
|
+
name: string().optional(),
|
|
35642
|
+
generation: _enum(["xdna1", "xdna2"]).optional()
|
|
35643
|
+
});
|
|
35516
35644
|
var CoralInfoSchema = object({
|
|
35517
35645
|
type: literal("coral-edgetpu"),
|
|
35518
35646
|
bus: string().optional()
|
|
@@ -39274,9 +39402,11 @@ DeviceType.Camera, method(object({
|
|
|
39274
39402
|
* once is what makes a second provider (RunPod, a local NVIDIA node) a new
|
|
39275
39403
|
* manifest entry and nothing else.
|
|
39276
39404
|
*
|
|
39277
|
-
* Collection
|
|
39278
|
-
*
|
|
39279
|
-
*
|
|
39405
|
+
* Collection of provider **types** (addons). Each addon owns zero or more
|
|
39406
|
+
* **entries** (credentials + defaults). Concat-fans: `describe`,
|
|
39407
|
+
* `describeTypes`, `listEntries`, `listJobs`. Single-row work is keyed by
|
|
39408
|
+
* `entryId`; callers also pass the owning `addonId` as the collection
|
|
39409
|
+
* selector (broker posture). Every method is `admin`: these spend money.
|
|
39280
39410
|
*
|
|
39281
39411
|
* Every cloud object a provider creates is tagged with the orchestrator's
|
|
39282
39412
|
* `jobKey`, so a retried submit finds the job it already started instead of
|
|
@@ -39300,8 +39430,8 @@ var TrainingRegionOptionSchema = object({
|
|
|
39300
39430
|
priceMultiplier: number().positive()
|
|
39301
39431
|
});
|
|
39302
39432
|
/**
|
|
39303
|
-
* The provider's per-
|
|
39304
|
-
* live
|
|
39433
|
+
* The provider's per-entry settings, as the orchestrator reads them. They
|
|
39434
|
+
* live on the PROVIDER addon's entry (operator decision 2026-10-08: they
|
|
39305
39435
|
* depend on the user's account), never hard-coded in the orchestrator.
|
|
39306
39436
|
*/
|
|
39307
39437
|
var TrainingProviderDefaultsSchema = object({
|
|
@@ -39312,9 +39442,44 @@ var TrainingProviderDefaultsSchema = object({
|
|
|
39312
39442
|
/** Hours a FAILED job's cloud dataset is kept for debugging; 0 = delete at once. */
|
|
39313
39443
|
failedDatasetGraceHours: number().nonnegative()
|
|
39314
39444
|
});
|
|
39445
|
+
/**
|
|
39446
|
+
* Entry form schema for a provider type — same seam as notification
|
|
39447
|
+
* `TargetKind.configSchema` (`z.unknown()` at the wire; callers tighten to
|
|
39448
|
+
* {@link ConfigUISchema}). Drives `ConfigFormBuilder` on Training → Providers.
|
|
39449
|
+
*/
|
|
39450
|
+
var ConfigSchemaPassthrough = unknown();
|
|
39451
|
+
/** One creatable provider type, for the Add-entry dialog. */
|
|
39452
|
+
var TrainingProviderTypeSchema = object({
|
|
39453
|
+
typeId: string(),
|
|
39454
|
+
label: string(),
|
|
39455
|
+
/** Path under the addon package (e.g. `assets/training-modal/icon.svg`). */
|
|
39456
|
+
iconAsset: string(),
|
|
39457
|
+
/** Owning `training-provider` addon — collection selector for createEntry. */
|
|
39458
|
+
addonId: string(),
|
|
39459
|
+
/**
|
|
39460
|
+
* Fields for one entry of this type (credentials + defaults). Absent on a
|
|
39461
|
+
* type that only needs a name. Password fields are keychain-backed on the
|
|
39462
|
+
* provider addon (`secretStatePaths`), not D634 plaintext.
|
|
39463
|
+
*/
|
|
39464
|
+
configSchema: ConfigSchemaPassthrough.optional()
|
|
39465
|
+
});
|
|
39466
|
+
/** One configured account / workspace under a provider type. */
|
|
39467
|
+
var TrainingProviderEntrySchema = object({
|
|
39468
|
+
entryId: string(),
|
|
39469
|
+
typeId: string(),
|
|
39470
|
+
name: string(),
|
|
39471
|
+
addonId: string(),
|
|
39472
|
+
/** Credentials are present — never the values. */
|
|
39473
|
+
configured: boolean()
|
|
39474
|
+
});
|
|
39315
39475
|
var TrainingProviderDescriptorSchema = object({
|
|
39316
39476
|
addonId: string(),
|
|
39317
|
-
|
|
39477
|
+
entryId: string(),
|
|
39478
|
+
typeId: string(),
|
|
39479
|
+
/** Operator-chosen entry name. */
|
|
39480
|
+
name: string(),
|
|
39481
|
+
iconAsset: string(),
|
|
39482
|
+
/** `modal`, `runpod`, `fake`, … — same as typeId for current providers. */
|
|
39318
39483
|
kind: string(),
|
|
39319
39484
|
label: string(),
|
|
39320
39485
|
gpuTypes: array(TrainingGpuOptionSchema).readonly(),
|
|
@@ -39326,7 +39491,30 @@ var TrainingProviderDescriptorSchema = object({
|
|
|
39326
39491
|
dataResidencyNote: string(),
|
|
39327
39492
|
/** Credentials are present — never the values. */
|
|
39328
39493
|
configured: boolean(),
|
|
39329
|
-
defaults: TrainingProviderDefaultsSchema
|
|
39494
|
+
defaults: TrainingProviderDefaultsSchema,
|
|
39495
|
+
/**
|
|
39496
|
+
* Values for {@link TrainingProviderTypeSchema}'s `configSchema` — password
|
|
39497
|
+
* fields are keychain {@link SecretFieldView} or `null` / `''` (create),
|
|
39498
|
+
* never plaintext. Same hydrate contract as settings forms (D789).
|
|
39499
|
+
*/
|
|
39500
|
+
formValues: record(string(), unknown()).optional()
|
|
39501
|
+
});
|
|
39502
|
+
/**
|
|
39503
|
+
* Patch one entry's name, credentials and defaults. Pin with owning `{ addonId }`.
|
|
39504
|
+
* An omitted or empty `tokenSecret` means KEEP the stored secret (D787).
|
|
39505
|
+
* `{ $secretClear: true }` clears it.
|
|
39506
|
+
*/
|
|
39507
|
+
var TrainingProviderUpdateEntryInputSchema = object({
|
|
39508
|
+
entryId: string().min(1),
|
|
39509
|
+
name: string().min(1),
|
|
39510
|
+
tokenId: string().optional(),
|
|
39511
|
+
tokenSecret: union([string(), object({ $secretClear: literal(true) })]).optional(),
|
|
39512
|
+
environment: string().optional(),
|
|
39513
|
+
gpuType: string().optional(),
|
|
39514
|
+
region: string().optional(),
|
|
39515
|
+
costCapUsd: number().nonnegative().optional(),
|
|
39516
|
+
maxRuntimeSec: number().int().positive().optional(),
|
|
39517
|
+
failedDatasetGraceHours: number().nonnegative().optional()
|
|
39330
39518
|
});
|
|
39331
39519
|
var TrainingCredentialCheckSchema = object({
|
|
39332
39520
|
ok: boolean(),
|
|
@@ -39378,20 +39566,33 @@ var TrainerSourceRefSchema = object({
|
|
|
39378
39566
|
/** A commit sha (never a branch) — the job must be reproducible. */
|
|
39379
39567
|
revision: string().regex(/^[0-9a-f]{7,64}$/)
|
|
39380
39568
|
});
|
|
39569
|
+
/** Cloud job identity — route with the owning addon's `addonId` selector. */
|
|
39381
39570
|
var JobRef = {
|
|
39382
|
-
|
|
39571
|
+
entryId: string().min(1),
|
|
39383
39572
|
jobKey: string().uuid()
|
|
39384
39573
|
};
|
|
39385
39574
|
var TrainingLogLineSchema = object({
|
|
39386
39575
|
ts: number(),
|
|
39387
39576
|
text: string()
|
|
39388
39577
|
});
|
|
39389
|
-
method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "admin" }), method(object({
|
|
39578
|
+
method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "admin" }), method(object({}), array(TrainingProviderTypeSchema).readonly(), { auth: "admin" }), method(object({}), array(TrainingProviderEntrySchema).readonly(), { auth: "admin" }), method(object({
|
|
39579
|
+
typeId: string().min(1),
|
|
39580
|
+
name: string().min(1)
|
|
39581
|
+
}), object({ entryId: string() }), {
|
|
39582
|
+
kind: "mutation",
|
|
39583
|
+
auth: "admin"
|
|
39584
|
+
}), method(object({ entryId: string().min(1) }), object({ ok: literal(true) }), {
|
|
39585
|
+
kind: "mutation",
|
|
39586
|
+
auth: "admin"
|
|
39587
|
+
}), method(TrainingProviderUpdateEntryInputSchema, object({ ok: literal(true) }), {
|
|
39588
|
+
kind: "mutation",
|
|
39589
|
+
auth: "admin"
|
|
39590
|
+
}), method(object({ entryId: string().min(1) }), TrainingCredentialCheckSchema, {
|
|
39390
39591
|
kind: "mutation",
|
|
39391
39592
|
auth: "admin",
|
|
39392
39593
|
timeoutMs: 3e4
|
|
39393
39594
|
}), method(object({
|
|
39394
|
-
|
|
39595
|
+
entryId: string().min(1),
|
|
39395
39596
|
gpuType: string(),
|
|
39396
39597
|
region: string(),
|
|
39397
39598
|
datasetBytes: number().int().nonnegative(),
|
|
@@ -39457,7 +39658,7 @@ method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "
|
|
|
39457
39658
|
kind: "mutation",
|
|
39458
39659
|
auth: "admin",
|
|
39459
39660
|
timeoutMs: 5 * 6e4
|
|
39460
|
-
}), method(object({
|
|
39661
|
+
}), method(object({ entryId: string().min(1).optional() }), array(ProviderJobStatusSchema).readonly(), {
|
|
39461
39662
|
auth: "admin",
|
|
39462
39663
|
timeoutMs: 2 * 6e4
|
|
39463
39664
|
});
|
|
@@ -39467,20 +39668,31 @@ method(object({}), array(TrainingProviderDescriptorSchema).readonly(), { auth: "
|
|
|
39467
39668
|
*
|
|
39468
39669
|
* It owns what every provider must agree on, written once:
|
|
39469
39670
|
*
|
|
39470
|
-
* - **Dataset versions.** Taken over from pipeline-analytics (D796): the rows
|
|
39471
|
-
* live here (D808); pipeline-analytics still CUTS a version (it owns the corpus and
|
|
39472
|
-
* the export plan) and reaches this store through the five row methods
|
|
39473
|
-
* below, so the Retrain page and the export did not change.
|
|
39474
39671
|
* - **Jobs.** A persisted state machine, a reconcile loop against the
|
|
39475
39672
|
* provider, a cost guard, a daily orphan sweep and the retention rules.
|
|
39476
39673
|
* - **The return flow.** Verified artefacts → Model Studio
|
|
39477
39674
|
* (`custom-model-registry.importModelBundle`) → canary on cameras →
|
|
39478
39675
|
* rollback. Nothing is ever registered automatically.
|
|
39479
39676
|
*
|
|
39677
|
+
* Plan/start takes a live {@link TrainingCorpusSelection} (collections +
|
|
39678
|
+
* work-state rule); frame ids are resolved via pipeline-analytics at that
|
|
39679
|
+
* moment and snapshotted on the job. No frozen dataset version.
|
|
39680
|
+
*
|
|
39480
39681
|
* Every method is `admin`.
|
|
39481
39682
|
*/
|
|
39482
|
-
/**
|
|
39483
|
-
|
|
39683
|
+
/**
|
|
39684
|
+
* Live corpus criteria for plan/start (design §5.2). Default is complete-only.
|
|
39685
|
+
* Frame ids are resolved at plan/start — never a frozen version id.
|
|
39686
|
+
*/
|
|
39687
|
+
var TrainingCorpusSelectionSchema = object({
|
|
39688
|
+
collectionIds: array(string()).min(1),
|
|
39689
|
+
/** Default complete-only for v1 */
|
|
39690
|
+
workState: _enum([
|
|
39691
|
+
"complete",
|
|
39692
|
+
"annotated_or_complete",
|
|
39693
|
+
"any_annotated"
|
|
39694
|
+
]).default("complete")
|
|
39695
|
+
});
|
|
39484
39696
|
/** A base model a detector job can fine-tune, and the baseline it is judged against. */
|
|
39485
39697
|
var TrainingBaseModelSchema = object({
|
|
39486
39698
|
modelId: string(),
|
|
@@ -39498,9 +39710,13 @@ var TrainingPresetSchema = _enum([
|
|
|
39498
39710
|
"thorough"
|
|
39499
39711
|
]);
|
|
39500
39712
|
var TrainingJobRequestSchema = object({
|
|
39501
|
-
|
|
39502
|
-
|
|
39503
|
-
|
|
39713
|
+
/** Live collection + work-state criteria; resolved at plan/start. */
|
|
39714
|
+
selection: TrainingCorpusSelectionSchema,
|
|
39715
|
+
/**
|
|
39716
|
+
* The provider **entry** that runs it (credentials + defaults).
|
|
39717
|
+
* Resolve to an owning addon via `training-provider.describe` / `listEntries`.
|
|
39718
|
+
*/
|
|
39719
|
+
entryId: string().min(1),
|
|
39504
39720
|
gpuType: string().min(1),
|
|
39505
39721
|
region: string(),
|
|
39506
39722
|
baseModelId: string().min(1),
|
|
@@ -39559,6 +39775,7 @@ var TrainingJobPlanSchema = object({
|
|
|
39559
39775
|
* result lives after the operator acted on it.
|
|
39560
39776
|
*/
|
|
39561
39777
|
var TrainingJobStateSchema = _enum([
|
|
39778
|
+
"queued",
|
|
39562
39779
|
"uploading",
|
|
39563
39780
|
"submitted",
|
|
39564
39781
|
"starting",
|
|
@@ -39612,6 +39829,11 @@ var TrainingJobSchema = object({
|
|
|
39612
39829
|
createdAt: number(),
|
|
39613
39830
|
updatedAt: number(),
|
|
39614
39831
|
state: TrainingJobStateSchema,
|
|
39832
|
+
/**
|
|
39833
|
+
* Shared by every job enqueued together via `startJobBatch`.
|
|
39834
|
+
* `null` for a lone `startJob`. The engine advances queued siblings by this id.
|
|
39835
|
+
*/
|
|
39836
|
+
batchId: string().nullable().default(null),
|
|
39615
39837
|
stage: TrainingStageSchema.nullable(),
|
|
39616
39838
|
failure: object({
|
|
39617
39839
|
reason: TrainingFailureReasonSchema,
|
|
@@ -39623,6 +39845,12 @@ var TrainingJobSchema = object({
|
|
|
39623
39845
|
maxRuntimeSec: number().int().positive(),
|
|
39624
39846
|
trainer: TrainerSourceRefSchema,
|
|
39625
39847
|
datasetLayout: RetrainExportLayoutSchema,
|
|
39848
|
+
/** Frame count snapshotted when the job started (audit; equals `frameIds.length`). */
|
|
39849
|
+
frameCount: number().int().nonnegative(),
|
|
39850
|
+
/** Resolved frame ids at start — the archive ships exactly these. */
|
|
39851
|
+
frameIds: array(string()).max(2e4).readonly(),
|
|
39852
|
+
/** Hash of what those frames taught at start (trainer `dataset.annotationHash`). */
|
|
39853
|
+
annotationHash: string(),
|
|
39626
39854
|
dataset: object({
|
|
39627
39855
|
bytes: number().int(),
|
|
39628
39856
|
sha256: string(),
|
|
@@ -39664,13 +39892,7 @@ var TrainingJobSchema = object({
|
|
|
39664
39892
|
canary: TrainingCanarySchema.nullable()
|
|
39665
39893
|
});
|
|
39666
39894
|
var IdInput = object({ id: string().min(1) });
|
|
39667
|
-
method(
|
|
39668
|
-
kind: "mutation",
|
|
39669
|
-
auth: "admin"
|
|
39670
|
-
}), 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() }), {
|
|
39671
|
-
kind: "mutation",
|
|
39672
|
-
auth: "admin"
|
|
39673
|
-
}), method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" }), method(TrainingJobRequestSchema, TrainingJobPlanSchema, {
|
|
39895
|
+
method(object({}), array(TrainingBaseModelSchema).readonly(), { auth: "admin" }), method(TrainingJobRequestSchema, TrainingJobPlanSchema, {
|
|
39674
39896
|
auth: "admin",
|
|
39675
39897
|
timeoutMs: 6e4
|
|
39676
39898
|
}), method(TrainingJobRequestSchema.extend({
|
|
@@ -39689,6 +39911,24 @@ method(TrainingDatasetVersionRowSchema, object({ stored: boolean() }), {
|
|
|
39689
39911
|
kind: "mutation",
|
|
39690
39912
|
auth: "admin",
|
|
39691
39913
|
timeoutMs: 12e4
|
|
39914
|
+
}), method(TrainingJobRequestSchema.omit({ baseModelId: true }).extend({
|
|
39915
|
+
baseModelIds: array(string().min(1)).min(1),
|
|
39916
|
+
name: string().min(1).max(120),
|
|
39917
|
+
maxCostUsd: number().positive(),
|
|
39918
|
+
maxRuntimeSec: number().int().positive(),
|
|
39919
|
+
idempotencyKey: string().min(8).max(80)
|
|
39920
|
+
}), discriminatedUnion("kind", [object({
|
|
39921
|
+
kind: literal("started"),
|
|
39922
|
+
batchId: string(),
|
|
39923
|
+
jobs: array(TrainingJobSchema).min(1).readonly()
|
|
39924
|
+
}), object({
|
|
39925
|
+
kind: literal("refused"),
|
|
39926
|
+
reason: TrainingRefusalReasonSchema,
|
|
39927
|
+
detail: string()
|
|
39928
|
+
})]), {
|
|
39929
|
+
kind: "mutation",
|
|
39930
|
+
auth: "admin",
|
|
39931
|
+
timeoutMs: 12e4
|
|
39692
39932
|
}), method(object({}), array(TrainingJobSchema).readonly(), { auth: "admin" }), method(IdInput, TrainingJobSchema.nullable(), { auth: "admin" }), method(IdInput, TrainingJobSchema, {
|
|
39693
39933
|
kind: "mutation",
|
|
39694
39934
|
auth: "admin",
|
|
@@ -43722,6 +43962,36 @@ Object.freeze({
|
|
|
43722
43962
|
addonId: null,
|
|
43723
43963
|
access: "view"
|
|
43724
43964
|
},
|
|
43965
|
+
"oidcConnections.connectionFormSchema": {
|
|
43966
|
+
capName: "oidc-connections",
|
|
43967
|
+
capScope: "system",
|
|
43968
|
+
addonId: null,
|
|
43969
|
+
access: "view"
|
|
43970
|
+
},
|
|
43971
|
+
"oidcConnections.createConnection": {
|
|
43972
|
+
capName: "oidc-connections",
|
|
43973
|
+
capScope: "system",
|
|
43974
|
+
addonId: null,
|
|
43975
|
+
access: "create"
|
|
43976
|
+
},
|
|
43977
|
+
"oidcConnections.deleteConnection": {
|
|
43978
|
+
capName: "oidc-connections",
|
|
43979
|
+
capScope: "system",
|
|
43980
|
+
addonId: null,
|
|
43981
|
+
access: "delete"
|
|
43982
|
+
},
|
|
43983
|
+
"oidcConnections.listConnections": {
|
|
43984
|
+
capName: "oidc-connections",
|
|
43985
|
+
capScope: "system",
|
|
43986
|
+
addonId: null,
|
|
43987
|
+
access: "view"
|
|
43988
|
+
},
|
|
43989
|
+
"oidcConnections.updateConnection": {
|
|
43990
|
+
capName: "oidc-connections",
|
|
43991
|
+
capScope: "system",
|
|
43992
|
+
addonId: null,
|
|
43993
|
+
access: "create"
|
|
43994
|
+
},
|
|
43725
43995
|
"osd.getStatus": {
|
|
43726
43996
|
capName: "osd",
|
|
43727
43997
|
capScope: "device",
|
|
@@ -43794,6 +44064,12 @@ Object.freeze({
|
|
|
43794
44064
|
addonId: null,
|
|
43795
44065
|
access: "create"
|
|
43796
44066
|
},
|
|
44067
|
+
"osdManager.setSlotCameraEnabled": {
|
|
44068
|
+
capName: "osd-manager",
|
|
44069
|
+
capScope: "system",
|
|
44070
|
+
addonId: null,
|
|
44071
|
+
access: "create"
|
|
44072
|
+
},
|
|
43797
44073
|
"osdManager.upsertTemplate": {
|
|
43798
44074
|
capName: "osd-manager",
|
|
43799
44075
|
capScope: "system",
|
|
@@ -43932,12 +44208,6 @@ Object.freeze({
|
|
|
43932
44208
|
addonId: null,
|
|
43933
44209
|
access: "create"
|
|
43934
44210
|
},
|
|
43935
|
-
"pipelineAnalytics.createRetrainDatasetVersion": {
|
|
43936
|
-
capName: "pipeline-analytics",
|
|
43937
|
-
capScope: "device",
|
|
43938
|
-
addonId: null,
|
|
43939
|
-
access: "create"
|
|
43940
|
-
},
|
|
43941
44211
|
"pipelineAnalytics.deleteDeviceEvents": {
|
|
43942
44212
|
capName: "pipeline-analytics",
|
|
43943
44213
|
capScope: "device",
|
|
@@ -43950,12 +44220,6 @@ Object.freeze({
|
|
|
43950
44220
|
addonId: null,
|
|
43951
44221
|
access: "delete"
|
|
43952
44222
|
},
|
|
43953
|
-
"pipelineAnalytics.deleteRetrainDatasetVersion": {
|
|
43954
|
-
capName: "pipeline-analytics",
|
|
43955
|
-
capScope: "device",
|
|
43956
|
-
addonId: null,
|
|
43957
|
-
access: "delete"
|
|
43958
|
-
},
|
|
43959
44223
|
"pipelineAnalytics.deleteTracks": {
|
|
43960
44224
|
capName: "pipeline-analytics",
|
|
43961
44225
|
capScope: "device",
|
|
@@ -44058,6 +44322,12 @@ Object.freeze({
|
|
|
44058
44322
|
addonId: null,
|
|
44059
44323
|
access: "view"
|
|
44060
44324
|
},
|
|
44325
|
+
"pipelineAnalytics.getRetrainCorpusKpi": {
|
|
44326
|
+
capName: "pipeline-analytics",
|
|
44327
|
+
capScope: "device",
|
|
44328
|
+
addonId: null,
|
|
44329
|
+
access: "view"
|
|
44330
|
+
},
|
|
44061
44331
|
"pipelineAnalytics.getRetrainExportUrl": {
|
|
44062
44332
|
capName: "pipeline-analytics",
|
|
44063
44333
|
capScope: "device",
|
|
@@ -44178,7 +44448,7 @@ Object.freeze({
|
|
|
44178
44448
|
addonId: null,
|
|
44179
44449
|
access: "view"
|
|
44180
44450
|
},
|
|
44181
|
-
"pipelineAnalytics.
|
|
44451
|
+
"pipelineAnalytics.listRetrainCorpusPage": {
|
|
44182
44452
|
capName: "pipeline-analytics",
|
|
44183
44453
|
capScope: "device",
|
|
44184
44454
|
addonId: null,
|
|
@@ -44232,12 +44502,6 @@ Object.freeze({
|
|
|
44232
44502
|
addonId: null,
|
|
44233
44503
|
access: "create"
|
|
44234
44504
|
},
|
|
44235
|
-
"pipelineAnalytics.previewRetrainDataset": {
|
|
44236
|
-
capName: "pipeline-analytics",
|
|
44237
|
-
capScope: "device",
|
|
44238
|
-
addonId: null,
|
|
44239
|
-
access: "view"
|
|
44240
|
-
},
|
|
44241
44505
|
"pipelineAnalytics.proposeRetrainAnnotations": {
|
|
44242
44506
|
capName: "pipeline-analytics",
|
|
44243
44507
|
capScope: "device",
|
|
@@ -44316,6 +44580,12 @@ Object.freeze({
|
|
|
44316
44580
|
addonId: null,
|
|
44317
44581
|
access: "create"
|
|
44318
44582
|
},
|
|
44583
|
+
"pipelineAnalytics.resolveRetrainTrainingCorpus": {
|
|
44584
|
+
capName: "pipeline-analytics",
|
|
44585
|
+
capScope: "device",
|
|
44586
|
+
addonId: null,
|
|
44587
|
+
access: "view"
|
|
44588
|
+
},
|
|
44319
44589
|
"pipelineAnalytics.restageRetrainTrack": {
|
|
44320
44590
|
capName: "pipeline-analytics",
|
|
44321
44591
|
capScope: "device",
|
|
@@ -44376,12 +44646,6 @@ Object.freeze({
|
|
|
44376
44646
|
addonId: null,
|
|
44377
44647
|
access: "create"
|
|
44378
44648
|
},
|
|
44379
|
-
"pipelineAnalytics.verifyRetrainDatasetVersion": {
|
|
44380
|
-
capName: "pipeline-analytics",
|
|
44381
|
-
capScope: "device",
|
|
44382
|
-
addonId: null,
|
|
44383
|
-
access: "view"
|
|
44384
|
-
},
|
|
44385
44649
|
"pipelineAnalytics.wipeAllAnalytics": {
|
|
44386
44650
|
capName: "pipeline-analytics",
|
|
44387
44651
|
capScope: "device",
|
|
@@ -46776,18 +47040,6 @@ Object.freeze({
|
|
|
46776
47040
|
addonId: null,
|
|
46777
47041
|
access: "create"
|
|
46778
47042
|
},
|
|
46779
|
-
"training.findDatasetVersionIdByName": {
|
|
46780
|
-
capName: "training",
|
|
46781
|
-
capScope: "system",
|
|
46782
|
-
addonId: null,
|
|
46783
|
-
access: "view"
|
|
46784
|
-
},
|
|
46785
|
-
"training.getDatasetVersion": {
|
|
46786
|
-
capName: "training",
|
|
46787
|
-
capScope: "system",
|
|
46788
|
-
addonId: null,
|
|
46789
|
-
access: "view"
|
|
46790
|
-
},
|
|
46791
47043
|
"training.getJob": {
|
|
46792
47044
|
capName: "training",
|
|
46793
47045
|
capScope: "system",
|
|
@@ -46806,12 +47058,6 @@ Object.freeze({
|
|
|
46806
47058
|
addonId: null,
|
|
46807
47059
|
access: "view"
|
|
46808
47060
|
},
|
|
46809
|
-
"training.listDatasetVersions": {
|
|
46810
|
-
capName: "training",
|
|
46811
|
-
capScope: "system",
|
|
46812
|
-
addonId: null,
|
|
46813
|
-
access: "view"
|
|
46814
|
-
},
|
|
46815
47061
|
"training.listJobs": {
|
|
46816
47062
|
capName: "training",
|
|
46817
47063
|
capScope: "system",
|
|
@@ -46824,54 +47070,66 @@ Object.freeze({
|
|
|
46824
47070
|
addonId: null,
|
|
46825
47071
|
access: "view"
|
|
46826
47072
|
},
|
|
46827
|
-
"training.
|
|
47073
|
+
"training.registerResult": {
|
|
46828
47074
|
capName: "training",
|
|
46829
47075
|
capScope: "system",
|
|
46830
47076
|
addonId: null,
|
|
46831
47077
|
access: "create"
|
|
46832
47078
|
},
|
|
46833
|
-
"training.
|
|
47079
|
+
"training.rollbackCanary": {
|
|
46834
47080
|
capName: "training",
|
|
46835
47081
|
capScope: "system",
|
|
46836
47082
|
addonId: null,
|
|
46837
47083
|
access: "create"
|
|
46838
47084
|
},
|
|
46839
|
-
"training.
|
|
47085
|
+
"training.startJob": {
|
|
46840
47086
|
capName: "training",
|
|
46841
47087
|
capScope: "system",
|
|
46842
47088
|
addonId: null,
|
|
46843
|
-
access: "
|
|
47089
|
+
access: "create"
|
|
46844
47090
|
},
|
|
46845
|
-
"training.
|
|
47091
|
+
"training.startJobBatch": {
|
|
46846
47092
|
capName: "training",
|
|
46847
47093
|
capScope: "system",
|
|
46848
47094
|
addonId: null,
|
|
46849
47095
|
access: "create"
|
|
46850
47096
|
},
|
|
46851
|
-
"
|
|
46852
|
-
capName: "training",
|
|
47097
|
+
"trainingProvider.cancelJob": {
|
|
47098
|
+
capName: "training-provider",
|
|
46853
47099
|
capScope: "system",
|
|
46854
47100
|
addonId: null,
|
|
46855
47101
|
access: "create"
|
|
46856
47102
|
},
|
|
46857
|
-
"trainingProvider.
|
|
47103
|
+
"trainingProvider.cleanupJob": {
|
|
46858
47104
|
capName: "training-provider",
|
|
46859
47105
|
capScope: "system",
|
|
46860
47106
|
addonId: null,
|
|
46861
47107
|
access: "create"
|
|
46862
47108
|
},
|
|
46863
|
-
"trainingProvider.
|
|
47109
|
+
"trainingProvider.createEntry": {
|
|
46864
47110
|
capName: "training-provider",
|
|
46865
47111
|
capScope: "system",
|
|
46866
47112
|
addonId: null,
|
|
46867
47113
|
access: "create"
|
|
46868
47114
|
},
|
|
47115
|
+
"trainingProvider.deleteEntry": {
|
|
47116
|
+
capName: "training-provider",
|
|
47117
|
+
capScope: "system",
|
|
47118
|
+
addonId: null,
|
|
47119
|
+
access: "delete"
|
|
47120
|
+
},
|
|
46869
47121
|
"trainingProvider.describe": {
|
|
46870
47122
|
capName: "training-provider",
|
|
46871
47123
|
capScope: "system",
|
|
46872
47124
|
addonId: null,
|
|
46873
47125
|
access: "view"
|
|
46874
47126
|
},
|
|
47127
|
+
"trainingProvider.describeTypes": {
|
|
47128
|
+
capName: "training-provider",
|
|
47129
|
+
capScope: "system",
|
|
47130
|
+
addonId: null,
|
|
47131
|
+
access: "view"
|
|
47132
|
+
},
|
|
46875
47133
|
"trainingProvider.estimateJob": {
|
|
46876
47134
|
capName: "training-provider",
|
|
46877
47135
|
capScope: "system",
|
|
@@ -46884,6 +47142,12 @@ Object.freeze({
|
|
|
46884
47142
|
addonId: null,
|
|
46885
47143
|
access: "view"
|
|
46886
47144
|
},
|
|
47145
|
+
"trainingProvider.listEntries": {
|
|
47146
|
+
capName: "training-provider",
|
|
47147
|
+
capScope: "system",
|
|
47148
|
+
addonId: null,
|
|
47149
|
+
access: "view"
|
|
47150
|
+
},
|
|
46887
47151
|
"trainingProvider.listJobEvents": {
|
|
46888
47152
|
capName: "training-provider",
|
|
46889
47153
|
capScope: "system",
|
|
@@ -46914,6 +47178,12 @@ Object.freeze({
|
|
|
46914
47178
|
addonId: null,
|
|
46915
47179
|
access: "create"
|
|
46916
47180
|
},
|
|
47181
|
+
"trainingProvider.updateEntry": {
|
|
47182
|
+
capName: "training-provider",
|
|
47183
|
+
capScope: "system",
|
|
47184
|
+
addonId: null,
|
|
47185
|
+
access: "create"
|
|
47186
|
+
},
|
|
46917
47187
|
"trainingProvider.uploadDataset": {
|
|
46918
47188
|
capName: "training-provider",
|
|
46919
47189
|
capScope: "system",
|
|
@@ -50120,6 +50390,11 @@ Object.freeze({
|
|
|
50120
50390
|
form: "single",
|
|
50121
50391
|
optional: false
|
|
50122
50392
|
}],
|
|
50393
|
+
"osdManager.setSlotCameraEnabled": [{
|
|
50394
|
+
name: "deviceId",
|
|
50395
|
+
form: "single",
|
|
50396
|
+
optional: false
|
|
50397
|
+
}],
|
|
50123
50398
|
"petFeeder.callPet": [{
|
|
50124
50399
|
name: "deviceId",
|
|
50125
50400
|
form: "single",
|
|
@@ -50340,6 +50615,11 @@ Object.freeze({
|
|
|
50340
50615
|
form: "array",
|
|
50341
50616
|
optional: false
|
|
50342
50617
|
}],
|
|
50618
|
+
"pipelineAnalytics.listRetrainCorpusPage": [{
|
|
50619
|
+
name: "deviceIds",
|
|
50620
|
+
form: "array",
|
|
50621
|
+
optional: true
|
|
50622
|
+
}],
|
|
50343
50623
|
"pipelineAnalytics.listRetrainStaging": [{
|
|
50344
50624
|
name: "deviceIds",
|
|
50345
50625
|
form: "array",
|
|
@@ -51449,6 +51729,7 @@ Object.freeze({
|
|
|
51449
51729
|
});
|
|
51450
51730
|
Object.freeze({
|
|
51451
51731
|
"broker": "broker",
|
|
51732
|
+
"calendar-source": "calendar",
|
|
51452
51733
|
"device-export": "device-export",
|
|
51453
51734
|
"llm": "ai",
|
|
51454
51735
|
"mesh-network": "mesh",
|
|
@@ -51934,6 +52215,8 @@ var STATE_SUMMARY_VARS = [
|
|
|
51934
52215
|
[...RULE_TEXT],
|
|
51935
52216
|
[...RULE_TEXT],
|
|
51936
52217
|
[...RULE_TEXT],
|
|
52218
|
+
[...RULE_TEXT],
|
|
52219
|
+
[...RULE_TEXT],
|
|
51937
52220
|
([...RULE_TEXT], [...UPDATES]),
|
|
51938
52221
|
([...RULE_TEXT], [...PACKAGE_UPDATES]),
|
|
51939
52222
|
([...RULE_TEXT], [...PACKAGE_UPDATES]),
|