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