@camstack/addon-smtp-nodemailer 1.0.3 → 1.0.5
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 +315 -30
- package/dist/smtp.addon.mjs +315 -30
- package/package.json +1 -1
package/dist/smtp.addon.js
CHANGED
|
@@ -5019,6 +5019,18 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
5019
5019
|
*/
|
|
5020
5020
|
EventCategory["PipelineEngineMetricsSnapshot"] = "pipeline.engine-metrics-snapshot";
|
|
5021
5021
|
/**
|
|
5022
|
+
* Per-node detection-engine runtime-provisioning transition. Emitted by
|
|
5023
|
+
* the detection-pipeline provider on every state change of its lazy
|
|
5024
|
+
* engine-provisioning machine (idle → installing → verifying → ready,
|
|
5025
|
+
* or → failed with a `nextRetryAt`). Payload is the
|
|
5026
|
+
* `EngineProvisioningState` snapshot; `event.source.nodeId` carries the
|
|
5027
|
+
* node. The Pipeline page subscribes to drive a live "installing
|
|
5028
|
+
* OpenVINO… / ready" indicator per node without polling
|
|
5029
|
+
* `pipelineExecutor.getEngineProvisioning`. Telemetry-grade (D8): the UI
|
|
5030
|
+
* also reads the cap snapshot on mount / reconnect. Phase 2.
|
|
5031
|
+
*/
|
|
5032
|
+
EventCategory["PipelineEngineProvisioning"] = "pipeline.engine-provisioning";
|
|
5033
|
+
/**
|
|
5022
5034
|
* Cluster topology snapshot. Carries the same payload returned by
|
|
5023
5035
|
* `nodes.topology` (every reachable node + addons + processes).
|
|
5024
5036
|
* Emitted by the hub on any agent / addon lifecycle change
|
|
@@ -5168,14 +5180,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
5168
5180
|
EventCategory["DeviceSleeping"] = "device.sleeping";
|
|
5169
5181
|
EventCategory["RetentionCleanup"] = "retention.cleanup";
|
|
5170
5182
|
/**
|
|
5171
|
-
*
|
|
5172
|
-
*
|
|
5173
|
-
*
|
|
5174
|
-
* to
|
|
5175
|
-
*
|
|
5176
|
-
* Spec: docs/superpowers/specs/2026-05-21-addons-bulk-update-progress-design.md
|
|
5183
|
+
* Legacy bulk-update progress snapshot (payload `BulkUpdateState`). No longer
|
|
5184
|
+
* emitted — F3 removed the coordinator that produced it; "Update all" now runs
|
|
5185
|
+
* as one lifecycle engine job (`AddonsJobProgress`/`AddonsJobLog`). Retained
|
|
5186
|
+
* (with `BulkUpdateState`) only to avoid regenerating the event maps; removed
|
|
5187
|
+
* in F4 once live bulk progress is re-implemented over the engine events.
|
|
5177
5188
|
*/
|
|
5178
5189
|
EventCategory["AddonsBulkUpdateProgress"] = "addons.bulk-update-progress";
|
|
5190
|
+
EventCategory["AddonsJobProgress"] = "addons.job-progress";
|
|
5191
|
+
EventCategory["AddonsJobLog"] = "addons.job-log";
|
|
5179
5192
|
/**
|
|
5180
5193
|
* A container's child visibility toggled (hidden/shown). Emitted by the
|
|
5181
5194
|
* `accessories` cap when a child device is hidden or revealed.
|
|
@@ -9182,6 +9195,24 @@ var DetectorOutputSchema = object({
|
|
|
9182
9195
|
inferenceMs: number(),
|
|
9183
9196
|
modelId: string()
|
|
9184
9197
|
});
|
|
9198
|
+
var EngineProvisioningSchema = object({
|
|
9199
|
+
runtimeId: _enum([
|
|
9200
|
+
"onnx",
|
|
9201
|
+
"openvino",
|
|
9202
|
+
"coreml"
|
|
9203
|
+
]).nullable(),
|
|
9204
|
+
device: string().nullable(),
|
|
9205
|
+
state: _enum([
|
|
9206
|
+
"idle",
|
|
9207
|
+
"installing",
|
|
9208
|
+
"verifying",
|
|
9209
|
+
"ready",
|
|
9210
|
+
"failed"
|
|
9211
|
+
]),
|
|
9212
|
+
progress: number().optional(),
|
|
9213
|
+
error: string().optional(),
|
|
9214
|
+
nextRetryAt: number().optional()
|
|
9215
|
+
});
|
|
9185
9216
|
var PipelineStepInputSchema = lazy(() => object({
|
|
9186
9217
|
addonId: string(),
|
|
9187
9218
|
modelId: string(),
|
|
@@ -9250,7 +9281,7 @@ var PipelineRunResultBridge = custom();
|
|
|
9250
9281
|
method(_void(), array(PipelineEngineChoiceSchema)), method(_void(), PipelineEngineChoiceSchema), method(PipelineEngineChoiceSchema, array(PipelineDefaultStepSchema)), method(_void(), PipelineEngineChoiceSchema, {
|
|
9251
9282
|
kind: "mutation",
|
|
9252
9283
|
auth: "admin"
|
|
9253
|
-
}), method(_void(), record(string(), object({
|
|
9284
|
+
}), method(object({ nodeId: string() }), EngineProvisioningSchema), method(_void(), record(string(), object({
|
|
9254
9285
|
modelId: string(),
|
|
9255
9286
|
settings: record(string(), unknown()).readonly()
|
|
9256
9287
|
}))), method(object({ steps: record(string(), object({
|
|
@@ -12850,7 +12881,10 @@ var AgentAddonConfigSchema = object({
|
|
|
12850
12881
|
modelId: string(),
|
|
12851
12882
|
settings: record(string(), unknown()).readonly()
|
|
12852
12883
|
});
|
|
12853
|
-
var AgentPipelineSettingsSchema = object({
|
|
12884
|
+
var AgentPipelineSettingsSchema = object({
|
|
12885
|
+
addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
|
|
12886
|
+
maxCameras: number().int().nonnegative().nullable().default(null)
|
|
12887
|
+
});
|
|
12854
12888
|
var CameraPipelineForAgentSchema = object({
|
|
12855
12889
|
steps: array(PipelineStepInputSchema).readonly(),
|
|
12856
12890
|
audio: object({
|
|
@@ -12952,6 +12986,133 @@ var GlobalMetricsSchema = object({
|
|
|
12952
12986
|
* capability providers.
|
|
12953
12987
|
*/
|
|
12954
12988
|
var CapabilityBindingsSchema = record(string(), string());
|
|
12989
|
+
/** Source block — always present; derives from the stream catalog. */
|
|
12990
|
+
var CameraSourceStatusSchema = object({ streams: array(object({
|
|
12991
|
+
camStreamId: string(),
|
|
12992
|
+
codec: string(),
|
|
12993
|
+
width: number(),
|
|
12994
|
+
height: number(),
|
|
12995
|
+
fps: number(),
|
|
12996
|
+
kind: string()
|
|
12997
|
+
})).readonly() });
|
|
12998
|
+
/** Assignment block — always present (orchestrator-local, no remote call). */
|
|
12999
|
+
var CameraAssignmentStatusSchema = object({
|
|
13000
|
+
detectionNodeId: string().nullable(),
|
|
13001
|
+
decoderNodeId: string().nullable(),
|
|
13002
|
+
audioNodeId: string().nullable(),
|
|
13003
|
+
pinned: object({
|
|
13004
|
+
detection: boolean(),
|
|
13005
|
+
decoder: boolean(),
|
|
13006
|
+
audio: boolean()
|
|
13007
|
+
}),
|
|
13008
|
+
reasons: object({
|
|
13009
|
+
detection: string().optional(),
|
|
13010
|
+
decoder: string().optional(),
|
|
13011
|
+
audio: string().optional()
|
|
13012
|
+
})
|
|
13013
|
+
});
|
|
13014
|
+
/** Broker block — null when the broker stage is unreachable or inactive. */
|
|
13015
|
+
var CameraBrokerStatusSchema = object({
|
|
13016
|
+
profiles: array(object({
|
|
13017
|
+
profile: string(),
|
|
13018
|
+
status: string(),
|
|
13019
|
+
codec: string(),
|
|
13020
|
+
width: number(),
|
|
13021
|
+
height: number(),
|
|
13022
|
+
subscribers: number(),
|
|
13023
|
+
inFps: number(),
|
|
13024
|
+
outFps: number()
|
|
13025
|
+
})).readonly(),
|
|
13026
|
+
webrtcSessions: number(),
|
|
13027
|
+
rtspRestream: boolean()
|
|
13028
|
+
});
|
|
13029
|
+
/** Shared-memory ring statistics within the decoder block. */
|
|
13030
|
+
var CameraDecoderShmSchema = object({
|
|
13031
|
+
framesWritten: number(),
|
|
13032
|
+
getFrameHits: number(),
|
|
13033
|
+
getFrameMisses: number(),
|
|
13034
|
+
budgetMb: number()
|
|
13035
|
+
});
|
|
13036
|
+
/** Decoder block — null when the decoder stage is unreachable or inactive. */
|
|
13037
|
+
var CameraDecoderStatusSchema = object({
|
|
13038
|
+
nodeId: string(),
|
|
13039
|
+
formats: array(string()).readonly(),
|
|
13040
|
+
sessionCount: number(),
|
|
13041
|
+
shm: CameraDecoderShmSchema
|
|
13042
|
+
});
|
|
13043
|
+
/** Motion block — null when motion detection is not active for this device. */
|
|
13044
|
+
var CameraMotionStatusSchema = object({
|
|
13045
|
+
enabled: boolean(),
|
|
13046
|
+
fps: number()
|
|
13047
|
+
});
|
|
13048
|
+
/** Detection provisioning sub-block. */
|
|
13049
|
+
var CameraDetectionProvisioningSchema = object({
|
|
13050
|
+
state: _enum([
|
|
13051
|
+
"idle",
|
|
13052
|
+
"installing",
|
|
13053
|
+
"verifying",
|
|
13054
|
+
"ready",
|
|
13055
|
+
"failed"
|
|
13056
|
+
]),
|
|
13057
|
+
error: string().optional()
|
|
13058
|
+
});
|
|
13059
|
+
/** Detection phase — derived from the runner's engine phase. */
|
|
13060
|
+
var CameraDetectionPhaseSchema = _enum([
|
|
13061
|
+
"idle",
|
|
13062
|
+
"watching",
|
|
13063
|
+
"active"
|
|
13064
|
+
]);
|
|
13065
|
+
/** Detection block — null when no detection node is assigned or reachable. */
|
|
13066
|
+
var CameraDetectionStatusSchema = object({
|
|
13067
|
+
nodeId: string(),
|
|
13068
|
+
engine: object({
|
|
13069
|
+
backend: string(),
|
|
13070
|
+
device: string()
|
|
13071
|
+
}),
|
|
13072
|
+
phase: CameraDetectionPhaseSchema,
|
|
13073
|
+
configuredFps: number(),
|
|
13074
|
+
actualFps: number(),
|
|
13075
|
+
queueDepth: number(),
|
|
13076
|
+
avgInferenceMs: number(),
|
|
13077
|
+
provisioning: CameraDetectionProvisioningSchema
|
|
13078
|
+
});
|
|
13079
|
+
/** Audio block — null when no audio node is assigned or reachable. */
|
|
13080
|
+
var CameraAudioStatusSchema = object({
|
|
13081
|
+
nodeId: string(),
|
|
13082
|
+
enabled: boolean()
|
|
13083
|
+
});
|
|
13084
|
+
/** Recording block — null when no recording cap is active for this device. */
|
|
13085
|
+
var CameraRecordingStatusSchema = object({
|
|
13086
|
+
mode: _enum([
|
|
13087
|
+
"off",
|
|
13088
|
+
"continuous",
|
|
13089
|
+
"events"
|
|
13090
|
+
]),
|
|
13091
|
+
active: boolean(),
|
|
13092
|
+
storageBytes: number()
|
|
13093
|
+
});
|
|
13094
|
+
/**
|
|
13095
|
+
* Aggregated per-camera pipeline status — server-composed, single call.
|
|
13096
|
+
*
|
|
13097
|
+
* The `assignment` and `source` blocks are always present.
|
|
13098
|
+
* Every other block is `null` when the stage is inactive or unreachable
|
|
13099
|
+
* during the bounded parallel fan-out in the orchestrator implementation.
|
|
13100
|
+
*
|
|
13101
|
+
* See spec: `docs/superpowers/specs/2026-06-24-camera-status-aggregator-cap.md`
|
|
13102
|
+
*/
|
|
13103
|
+
var CameraStatusSchema = object({
|
|
13104
|
+
deviceId: number(),
|
|
13105
|
+
assignment: CameraAssignmentStatusSchema,
|
|
13106
|
+
source: CameraSourceStatusSchema,
|
|
13107
|
+
broker: CameraBrokerStatusSchema.nullable(),
|
|
13108
|
+
decoder: CameraDecoderStatusSchema.nullable(),
|
|
13109
|
+
motion: CameraMotionStatusSchema.nullable(),
|
|
13110
|
+
detection: CameraDetectionStatusSchema.nullable(),
|
|
13111
|
+
audio: CameraAudioStatusSchema.nullable(),
|
|
13112
|
+
recording: CameraRecordingStatusSchema.nullable(),
|
|
13113
|
+
/** Unix timestamp (ms) when this snapshot was composed server-side. */
|
|
13114
|
+
fetchedAt: number()
|
|
13115
|
+
});
|
|
12955
13116
|
method(object({
|
|
12956
13117
|
deviceId: number(),
|
|
12957
13118
|
agentNodeId: string()
|
|
@@ -13019,6 +13180,12 @@ method(object({
|
|
|
13019
13180
|
}), {
|
|
13020
13181
|
kind: "mutation",
|
|
13021
13182
|
auth: "admin"
|
|
13183
|
+
}), method(object({
|
|
13184
|
+
agentNodeId: string(),
|
|
13185
|
+
maxCameras: number().int().nonnegative().nullable()
|
|
13186
|
+
}), object({ success: literal(true) }), {
|
|
13187
|
+
kind: "mutation",
|
|
13188
|
+
auth: "admin"
|
|
13022
13189
|
}), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
|
|
13023
13190
|
deviceId: number(),
|
|
13024
13191
|
addonId: string(),
|
|
@@ -13044,7 +13211,7 @@ method(object({
|
|
|
13044
13211
|
}), method(object({
|
|
13045
13212
|
deviceId: number(),
|
|
13046
13213
|
agentNodeId: string().optional()
|
|
13047
|
-
}), CameraPipelineConfigSchema), method(_void(), array(PipelineTemplateSchema).readonly()), method(object({
|
|
13214
|
+
}), CameraPipelineConfigSchema), method(object({ deviceId: number() }), CameraStatusSchema), method(object({ deviceIds: array(number()).optional() }), array(CameraStatusSchema).readonly()), method(_void(), array(PipelineTemplateSchema).readonly()), method(object({
|
|
13048
13215
|
name: string(),
|
|
13049
13216
|
description: string().optional(),
|
|
13050
13217
|
config: CameraPipelineConfigSchema
|
|
@@ -16008,6 +16175,69 @@ method(_void(), array(IntegrationWithStateSchema)), method(object({ id: string()
|
|
|
16008
16175
|
kind: "mutation",
|
|
16009
16176
|
auth: "admin"
|
|
16010
16177
|
});
|
|
16178
|
+
var jobKindSchema = _enum([
|
|
16179
|
+
"install",
|
|
16180
|
+
"update",
|
|
16181
|
+
"uninstall",
|
|
16182
|
+
"restart"
|
|
16183
|
+
]);
|
|
16184
|
+
var taskPhaseSchema = _enum([
|
|
16185
|
+
"queued",
|
|
16186
|
+
"fetching",
|
|
16187
|
+
"staged",
|
|
16188
|
+
"validating",
|
|
16189
|
+
"applying",
|
|
16190
|
+
"restarting",
|
|
16191
|
+
"applied",
|
|
16192
|
+
"done",
|
|
16193
|
+
"failed",
|
|
16194
|
+
"skipped"
|
|
16195
|
+
]);
|
|
16196
|
+
var taskTargetSchema = _enum(["framework", "addon"]);
|
|
16197
|
+
var taskLogEntrySchema = object({
|
|
16198
|
+
tsMs: number(),
|
|
16199
|
+
nodeId: string(),
|
|
16200
|
+
packageName: string(),
|
|
16201
|
+
phase: taskPhaseSchema,
|
|
16202
|
+
message: string()
|
|
16203
|
+
});
|
|
16204
|
+
var lifecycleTaskSchema = object({
|
|
16205
|
+
taskId: string(),
|
|
16206
|
+
nodeId: string(),
|
|
16207
|
+
packageName: string(),
|
|
16208
|
+
fromVersion: string().nullable(),
|
|
16209
|
+
toVersion: string(),
|
|
16210
|
+
target: taskTargetSchema,
|
|
16211
|
+
phase: taskPhaseSchema,
|
|
16212
|
+
stagedPath: string().nullable(),
|
|
16213
|
+
attempts: number(),
|
|
16214
|
+
steps: array(taskLogEntrySchema),
|
|
16215
|
+
error: string().nullable(),
|
|
16216
|
+
startedAtMs: number().nullable(),
|
|
16217
|
+
finishedAtMs: number().nullable()
|
|
16218
|
+
});
|
|
16219
|
+
var lifecycleJobStateSchema = _enum([
|
|
16220
|
+
"running",
|
|
16221
|
+
"completed",
|
|
16222
|
+
"failed",
|
|
16223
|
+
"partially-failed",
|
|
16224
|
+
"cancelled"
|
|
16225
|
+
]);
|
|
16226
|
+
var lifecycleJobScopeSchema = _enum([
|
|
16227
|
+
"single",
|
|
16228
|
+
"bulk",
|
|
16229
|
+
"cluster"
|
|
16230
|
+
]);
|
|
16231
|
+
var lifecycleJobSchema = object({
|
|
16232
|
+
jobId: string(),
|
|
16233
|
+
kind: jobKindSchema,
|
|
16234
|
+
createdAtMs: number(),
|
|
16235
|
+
createdBy: string(),
|
|
16236
|
+
scope: lifecycleJobScopeSchema,
|
|
16237
|
+
tasks: array(lifecycleTaskSchema),
|
|
16238
|
+
state: lifecycleJobStateSchema,
|
|
16239
|
+
schemaVersion: literal(1)
|
|
16240
|
+
});
|
|
16011
16241
|
/**
|
|
16012
16242
|
* addons — system-scoped singleton capability for addon package
|
|
16013
16243
|
* management (install, update, configure, restart) and per-addon log
|
|
@@ -16190,7 +16420,7 @@ var BulkUpdatePhaseSchema = _enum([
|
|
|
16190
16420
|
"restarting",
|
|
16191
16421
|
"finalizing"
|
|
16192
16422
|
]);
|
|
16193
|
-
|
|
16423
|
+
object({
|
|
16194
16424
|
id: string(),
|
|
16195
16425
|
nodeId: string(),
|
|
16196
16426
|
startedAtMs: number(),
|
|
@@ -16293,20 +16523,7 @@ method(_void(), array(AddonListItemSchema).readonly()), method(object({
|
|
|
16293
16523
|
}), UpdateFrameworkPackageResultSchema, {
|
|
16294
16524
|
kind: "mutation",
|
|
16295
16525
|
auth: "admin"
|
|
16296
|
-
}), method(object({
|
|
16297
|
-
nodeId: string(),
|
|
16298
|
-
items: array(object({
|
|
16299
|
-
name: string(),
|
|
16300
|
-
version: string(),
|
|
16301
|
-
isSystem: boolean()
|
|
16302
|
-
})).readonly()
|
|
16303
|
-
}), object({ id: string() }), {
|
|
16304
|
-
kind: "mutation",
|
|
16305
|
-
auth: "admin"
|
|
16306
|
-
}), method(object({ id: string() }), BulkUpdateStateSchema.nullable(), { auth: "admin" }), method(object({ id: string() }), object({ cancelled: boolean() }), {
|
|
16307
|
-
kind: "mutation",
|
|
16308
|
-
auth: "admin"
|
|
16309
|
-
}), method(object({ nodeId: string().optional() }), array(BulkUpdateStateSchema).readonly(), { auth: "admin" }), method(object({ name: string() }), array(PackageVersionInfoSchema).readonly()), method(object({ addonId: string() }), RestartAddonResultSchema, {
|
|
16526
|
+
}), method(object({ name: string() }), array(PackageVersionInfoSchema).readonly()), method(object({ addonId: string() }), RestartAddonResultSchema, {
|
|
16310
16527
|
kind: "mutation",
|
|
16311
16528
|
auth: "admin"
|
|
16312
16529
|
}), method(object({ packageName: string() }), object({ success: literal(true) }), {
|
|
@@ -16328,6 +16545,24 @@ method(_void(), array(AddonListItemSchema).readonly()), method(object({
|
|
|
16328
16545
|
kind: "mutation",
|
|
16329
16546
|
auth: "admin"
|
|
16330
16547
|
}), method(CustomActionInputSchema, unknown(), { kind: "mutation" }), method(object({
|
|
16548
|
+
kind: _enum([
|
|
16549
|
+
"install",
|
|
16550
|
+
"update",
|
|
16551
|
+
"uninstall",
|
|
16552
|
+
"restart"
|
|
16553
|
+
]),
|
|
16554
|
+
targets: array(object({
|
|
16555
|
+
name: string().min(1),
|
|
16556
|
+
version: string().min(1)
|
|
16557
|
+
})).min(1),
|
|
16558
|
+
nodeIds: array(string()).optional()
|
|
16559
|
+
}), object({ jobId: string() }), {
|
|
16560
|
+
kind: "mutation",
|
|
16561
|
+
auth: "admin"
|
|
16562
|
+
}), method(object({ jobId: string() }), lifecycleJobSchema.nullable(), { auth: "admin" }), method(object({ activeOnly: boolean().optional() }), array(lifecycleJobSchema), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
16563
|
+
kind: "mutation",
|
|
16564
|
+
auth: "admin"
|
|
16565
|
+
}), method(object({
|
|
16331
16566
|
addonId: string(),
|
|
16332
16567
|
level: LogLevelSchema$1.optional()
|
|
16333
16568
|
}), LogStreamEntrySchema, { kind: "subscription" });
|
|
@@ -16368,7 +16603,7 @@ Object.freeze({
|
|
|
16368
16603
|
addonId: null,
|
|
16369
16604
|
access: "create"
|
|
16370
16605
|
},
|
|
16371
|
-
"addons.
|
|
16606
|
+
"addons.cancelJob": {
|
|
16372
16607
|
capName: "addons",
|
|
16373
16608
|
capScope: "system",
|
|
16374
16609
|
addonId: null,
|
|
@@ -16398,7 +16633,7 @@ Object.freeze({
|
|
|
16398
16633
|
addonId: null,
|
|
16399
16634
|
access: "view"
|
|
16400
16635
|
},
|
|
16401
|
-
"addons.
|
|
16636
|
+
"addons.getJob": {
|
|
16402
16637
|
capName: "addons",
|
|
16403
16638
|
capScope: "system",
|
|
16404
16639
|
addonId: null,
|
|
@@ -16446,19 +16681,19 @@ Object.freeze({
|
|
|
16446
16681
|
addonId: null,
|
|
16447
16682
|
access: "view"
|
|
16448
16683
|
},
|
|
16449
|
-
"addons.
|
|
16684
|
+
"addons.listCapabilityProviders": {
|
|
16450
16685
|
capName: "addons",
|
|
16451
16686
|
capScope: "system",
|
|
16452
16687
|
addonId: null,
|
|
16453
16688
|
access: "view"
|
|
16454
16689
|
},
|
|
16455
|
-
"addons.
|
|
16690
|
+
"addons.listFrameworkPackages": {
|
|
16456
16691
|
capName: "addons",
|
|
16457
16692
|
capScope: "system",
|
|
16458
16693
|
addonId: null,
|
|
16459
16694
|
access: "view"
|
|
16460
16695
|
},
|
|
16461
|
-
"addons.
|
|
16696
|
+
"addons.listJobs": {
|
|
16462
16697
|
capName: "addons",
|
|
16463
16698
|
capScope: "system",
|
|
16464
16699
|
addonId: null,
|
|
@@ -16542,7 +16777,7 @@ Object.freeze({
|
|
|
16542
16777
|
addonId: null,
|
|
16543
16778
|
access: "create"
|
|
16544
16779
|
},
|
|
16545
|
-
"addons.
|
|
16780
|
+
"addons.startJob": {
|
|
16546
16781
|
capName: "addons",
|
|
16547
16782
|
capScope: "system",
|
|
16548
16783
|
addonId: null,
|
|
@@ -18768,6 +19003,12 @@ Object.freeze({
|
|
|
18768
19003
|
addonId: null,
|
|
18769
19004
|
access: "view"
|
|
18770
19005
|
},
|
|
19006
|
+
"pipelineExecutor.getEngineProvisioning": {
|
|
19007
|
+
capName: "pipeline-executor",
|
|
19008
|
+
capScope: "system",
|
|
19009
|
+
addonId: null,
|
|
19010
|
+
access: "view"
|
|
19011
|
+
},
|
|
18771
19012
|
"pipelineExecutor.getGlobalPipelineConfig": {
|
|
18772
19013
|
capName: "pipeline-executor",
|
|
18773
19014
|
capScope: "system",
|
|
@@ -18972,6 +19213,18 @@ Object.freeze({
|
|
|
18972
19213
|
addonId: null,
|
|
18973
19214
|
access: "view"
|
|
18974
19215
|
},
|
|
19216
|
+
"pipelineOrchestrator.getCameraStatus": {
|
|
19217
|
+
capName: "pipeline-orchestrator",
|
|
19218
|
+
capScope: "system",
|
|
19219
|
+
addonId: null,
|
|
19220
|
+
access: "view"
|
|
19221
|
+
},
|
|
19222
|
+
"pipelineOrchestrator.getCameraStatuses": {
|
|
19223
|
+
capName: "pipeline-orchestrator",
|
|
19224
|
+
capScope: "system",
|
|
19225
|
+
addonId: null,
|
|
19226
|
+
access: "view"
|
|
19227
|
+
},
|
|
18975
19228
|
"pipelineOrchestrator.getCameraStepOverrides": {
|
|
18976
19229
|
capName: "pipeline-orchestrator",
|
|
18977
19230
|
capScope: "system",
|
|
@@ -19056,6 +19309,12 @@ Object.freeze({
|
|
|
19056
19309
|
addonId: null,
|
|
19057
19310
|
access: "create"
|
|
19058
19311
|
},
|
|
19312
|
+
"pipelineOrchestrator.setAgentMaxCameras": {
|
|
19313
|
+
capName: "pipeline-orchestrator",
|
|
19314
|
+
capScope: "system",
|
|
19315
|
+
addonId: null,
|
|
19316
|
+
access: "create"
|
|
19317
|
+
},
|
|
19059
19318
|
"pipelineOrchestrator.setCameraPipelineForAgent": {
|
|
19060
19319
|
capName: "pipeline-orchestrator",
|
|
19061
19320
|
capScope: "system",
|
|
@@ -20529,6 +20788,32 @@ Object.freeze({
|
|
|
20529
20788
|
"network-access": "ingress",
|
|
20530
20789
|
"smtp-provider": "email"
|
|
20531
20790
|
});
|
|
20791
|
+
var frameworkSwapPackageSchema = object({
|
|
20792
|
+
name: string(),
|
|
20793
|
+
stagedPath: string(),
|
|
20794
|
+
backupPath: string(),
|
|
20795
|
+
toVersion: string(),
|
|
20796
|
+
fromVersion: string().nullable()
|
|
20797
|
+
});
|
|
20798
|
+
object({
|
|
20799
|
+
jobId: string(),
|
|
20800
|
+
taskId: string(),
|
|
20801
|
+
packages: array(frameworkSwapPackageSchema),
|
|
20802
|
+
requestedAtMs: number(),
|
|
20803
|
+
schemaVersion: literal(1)
|
|
20804
|
+
});
|
|
20805
|
+
object({
|
|
20806
|
+
jobId: string(),
|
|
20807
|
+
taskId: string(),
|
|
20808
|
+
backups: array(object({
|
|
20809
|
+
name: string(),
|
|
20810
|
+
backupPath: string(),
|
|
20811
|
+
livePath: string()
|
|
20812
|
+
})),
|
|
20813
|
+
appliedAtMs: number(),
|
|
20814
|
+
bootAttempts: number(),
|
|
20815
|
+
schemaVersion: literal(1)
|
|
20816
|
+
});
|
|
20532
20817
|
//#endregion
|
|
20533
20818
|
//#region ../../node_modules/nodemailer/lib/punycode/index.js
|
|
20534
20819
|
var require_punycode = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
package/dist/smtp.addon.mjs
CHANGED
|
@@ -5017,6 +5017,18 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
5017
5017
|
*/
|
|
5018
5018
|
EventCategory["PipelineEngineMetricsSnapshot"] = "pipeline.engine-metrics-snapshot";
|
|
5019
5019
|
/**
|
|
5020
|
+
* Per-node detection-engine runtime-provisioning transition. Emitted by
|
|
5021
|
+
* the detection-pipeline provider on every state change of its lazy
|
|
5022
|
+
* engine-provisioning machine (idle → installing → verifying → ready,
|
|
5023
|
+
* or → failed with a `nextRetryAt`). Payload is the
|
|
5024
|
+
* `EngineProvisioningState` snapshot; `event.source.nodeId` carries the
|
|
5025
|
+
* node. The Pipeline page subscribes to drive a live "installing
|
|
5026
|
+
* OpenVINO… / ready" indicator per node without polling
|
|
5027
|
+
* `pipelineExecutor.getEngineProvisioning`. Telemetry-grade (D8): the UI
|
|
5028
|
+
* also reads the cap snapshot on mount / reconnect. Phase 2.
|
|
5029
|
+
*/
|
|
5030
|
+
EventCategory["PipelineEngineProvisioning"] = "pipeline.engine-provisioning";
|
|
5031
|
+
/**
|
|
5020
5032
|
* Cluster topology snapshot. Carries the same payload returned by
|
|
5021
5033
|
* `nodes.topology` (every reachable node + addons + processes).
|
|
5022
5034
|
* Emitted by the hub on any agent / addon lifecycle change
|
|
@@ -5166,14 +5178,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
5166
5178
|
EventCategory["DeviceSleeping"] = "device.sleeping";
|
|
5167
5179
|
EventCategory["RetentionCleanup"] = "retention.cleanup";
|
|
5168
5180
|
/**
|
|
5169
|
-
*
|
|
5170
|
-
*
|
|
5171
|
-
*
|
|
5172
|
-
* to
|
|
5173
|
-
*
|
|
5174
|
-
* Spec: docs/superpowers/specs/2026-05-21-addons-bulk-update-progress-design.md
|
|
5181
|
+
* Legacy bulk-update progress snapshot (payload `BulkUpdateState`). No longer
|
|
5182
|
+
* emitted — F3 removed the coordinator that produced it; "Update all" now runs
|
|
5183
|
+
* as one lifecycle engine job (`AddonsJobProgress`/`AddonsJobLog`). Retained
|
|
5184
|
+
* (with `BulkUpdateState`) only to avoid regenerating the event maps; removed
|
|
5185
|
+
* in F4 once live bulk progress is re-implemented over the engine events.
|
|
5175
5186
|
*/
|
|
5176
5187
|
EventCategory["AddonsBulkUpdateProgress"] = "addons.bulk-update-progress";
|
|
5188
|
+
EventCategory["AddonsJobProgress"] = "addons.job-progress";
|
|
5189
|
+
EventCategory["AddonsJobLog"] = "addons.job-log";
|
|
5177
5190
|
/**
|
|
5178
5191
|
* A container's child visibility toggled (hidden/shown). Emitted by the
|
|
5179
5192
|
* `accessories` cap when a child device is hidden or revealed.
|
|
@@ -9180,6 +9193,24 @@ var DetectorOutputSchema = object({
|
|
|
9180
9193
|
inferenceMs: number(),
|
|
9181
9194
|
modelId: string()
|
|
9182
9195
|
});
|
|
9196
|
+
var EngineProvisioningSchema = object({
|
|
9197
|
+
runtimeId: _enum([
|
|
9198
|
+
"onnx",
|
|
9199
|
+
"openvino",
|
|
9200
|
+
"coreml"
|
|
9201
|
+
]).nullable(),
|
|
9202
|
+
device: string().nullable(),
|
|
9203
|
+
state: _enum([
|
|
9204
|
+
"idle",
|
|
9205
|
+
"installing",
|
|
9206
|
+
"verifying",
|
|
9207
|
+
"ready",
|
|
9208
|
+
"failed"
|
|
9209
|
+
]),
|
|
9210
|
+
progress: number().optional(),
|
|
9211
|
+
error: string().optional(),
|
|
9212
|
+
nextRetryAt: number().optional()
|
|
9213
|
+
});
|
|
9183
9214
|
var PipelineStepInputSchema = lazy(() => object({
|
|
9184
9215
|
addonId: string(),
|
|
9185
9216
|
modelId: string(),
|
|
@@ -9248,7 +9279,7 @@ var PipelineRunResultBridge = custom();
|
|
|
9248
9279
|
method(_void(), array(PipelineEngineChoiceSchema)), method(_void(), PipelineEngineChoiceSchema), method(PipelineEngineChoiceSchema, array(PipelineDefaultStepSchema)), method(_void(), PipelineEngineChoiceSchema, {
|
|
9249
9280
|
kind: "mutation",
|
|
9250
9281
|
auth: "admin"
|
|
9251
|
-
}), method(_void(), record(string(), object({
|
|
9282
|
+
}), method(object({ nodeId: string() }), EngineProvisioningSchema), method(_void(), record(string(), object({
|
|
9252
9283
|
modelId: string(),
|
|
9253
9284
|
settings: record(string(), unknown()).readonly()
|
|
9254
9285
|
}))), method(object({ steps: record(string(), object({
|
|
@@ -12848,7 +12879,10 @@ var AgentAddonConfigSchema = object({
|
|
|
12848
12879
|
modelId: string(),
|
|
12849
12880
|
settings: record(string(), unknown()).readonly()
|
|
12850
12881
|
});
|
|
12851
|
-
var AgentPipelineSettingsSchema = object({
|
|
12882
|
+
var AgentPipelineSettingsSchema = object({
|
|
12883
|
+
addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
|
|
12884
|
+
maxCameras: number().int().nonnegative().nullable().default(null)
|
|
12885
|
+
});
|
|
12852
12886
|
var CameraPipelineForAgentSchema = object({
|
|
12853
12887
|
steps: array(PipelineStepInputSchema).readonly(),
|
|
12854
12888
|
audio: object({
|
|
@@ -12950,6 +12984,133 @@ var GlobalMetricsSchema = object({
|
|
|
12950
12984
|
* capability providers.
|
|
12951
12985
|
*/
|
|
12952
12986
|
var CapabilityBindingsSchema = record(string(), string());
|
|
12987
|
+
/** Source block — always present; derives from the stream catalog. */
|
|
12988
|
+
var CameraSourceStatusSchema = object({ streams: array(object({
|
|
12989
|
+
camStreamId: string(),
|
|
12990
|
+
codec: string(),
|
|
12991
|
+
width: number(),
|
|
12992
|
+
height: number(),
|
|
12993
|
+
fps: number(),
|
|
12994
|
+
kind: string()
|
|
12995
|
+
})).readonly() });
|
|
12996
|
+
/** Assignment block — always present (orchestrator-local, no remote call). */
|
|
12997
|
+
var CameraAssignmentStatusSchema = object({
|
|
12998
|
+
detectionNodeId: string().nullable(),
|
|
12999
|
+
decoderNodeId: string().nullable(),
|
|
13000
|
+
audioNodeId: string().nullable(),
|
|
13001
|
+
pinned: object({
|
|
13002
|
+
detection: boolean(),
|
|
13003
|
+
decoder: boolean(),
|
|
13004
|
+
audio: boolean()
|
|
13005
|
+
}),
|
|
13006
|
+
reasons: object({
|
|
13007
|
+
detection: string().optional(),
|
|
13008
|
+
decoder: string().optional(),
|
|
13009
|
+
audio: string().optional()
|
|
13010
|
+
})
|
|
13011
|
+
});
|
|
13012
|
+
/** Broker block — null when the broker stage is unreachable or inactive. */
|
|
13013
|
+
var CameraBrokerStatusSchema = object({
|
|
13014
|
+
profiles: array(object({
|
|
13015
|
+
profile: string(),
|
|
13016
|
+
status: string(),
|
|
13017
|
+
codec: string(),
|
|
13018
|
+
width: number(),
|
|
13019
|
+
height: number(),
|
|
13020
|
+
subscribers: number(),
|
|
13021
|
+
inFps: number(),
|
|
13022
|
+
outFps: number()
|
|
13023
|
+
})).readonly(),
|
|
13024
|
+
webrtcSessions: number(),
|
|
13025
|
+
rtspRestream: boolean()
|
|
13026
|
+
});
|
|
13027
|
+
/** Shared-memory ring statistics within the decoder block. */
|
|
13028
|
+
var CameraDecoderShmSchema = object({
|
|
13029
|
+
framesWritten: number(),
|
|
13030
|
+
getFrameHits: number(),
|
|
13031
|
+
getFrameMisses: number(),
|
|
13032
|
+
budgetMb: number()
|
|
13033
|
+
});
|
|
13034
|
+
/** Decoder block — null when the decoder stage is unreachable or inactive. */
|
|
13035
|
+
var CameraDecoderStatusSchema = object({
|
|
13036
|
+
nodeId: string(),
|
|
13037
|
+
formats: array(string()).readonly(),
|
|
13038
|
+
sessionCount: number(),
|
|
13039
|
+
shm: CameraDecoderShmSchema
|
|
13040
|
+
});
|
|
13041
|
+
/** Motion block — null when motion detection is not active for this device. */
|
|
13042
|
+
var CameraMotionStatusSchema = object({
|
|
13043
|
+
enabled: boolean(),
|
|
13044
|
+
fps: number()
|
|
13045
|
+
});
|
|
13046
|
+
/** Detection provisioning sub-block. */
|
|
13047
|
+
var CameraDetectionProvisioningSchema = object({
|
|
13048
|
+
state: _enum([
|
|
13049
|
+
"idle",
|
|
13050
|
+
"installing",
|
|
13051
|
+
"verifying",
|
|
13052
|
+
"ready",
|
|
13053
|
+
"failed"
|
|
13054
|
+
]),
|
|
13055
|
+
error: string().optional()
|
|
13056
|
+
});
|
|
13057
|
+
/** Detection phase — derived from the runner's engine phase. */
|
|
13058
|
+
var CameraDetectionPhaseSchema = _enum([
|
|
13059
|
+
"idle",
|
|
13060
|
+
"watching",
|
|
13061
|
+
"active"
|
|
13062
|
+
]);
|
|
13063
|
+
/** Detection block — null when no detection node is assigned or reachable. */
|
|
13064
|
+
var CameraDetectionStatusSchema = object({
|
|
13065
|
+
nodeId: string(),
|
|
13066
|
+
engine: object({
|
|
13067
|
+
backend: string(),
|
|
13068
|
+
device: string()
|
|
13069
|
+
}),
|
|
13070
|
+
phase: CameraDetectionPhaseSchema,
|
|
13071
|
+
configuredFps: number(),
|
|
13072
|
+
actualFps: number(),
|
|
13073
|
+
queueDepth: number(),
|
|
13074
|
+
avgInferenceMs: number(),
|
|
13075
|
+
provisioning: CameraDetectionProvisioningSchema
|
|
13076
|
+
});
|
|
13077
|
+
/** Audio block — null when no audio node is assigned or reachable. */
|
|
13078
|
+
var CameraAudioStatusSchema = object({
|
|
13079
|
+
nodeId: string(),
|
|
13080
|
+
enabled: boolean()
|
|
13081
|
+
});
|
|
13082
|
+
/** Recording block — null when no recording cap is active for this device. */
|
|
13083
|
+
var CameraRecordingStatusSchema = object({
|
|
13084
|
+
mode: _enum([
|
|
13085
|
+
"off",
|
|
13086
|
+
"continuous",
|
|
13087
|
+
"events"
|
|
13088
|
+
]),
|
|
13089
|
+
active: boolean(),
|
|
13090
|
+
storageBytes: number()
|
|
13091
|
+
});
|
|
13092
|
+
/**
|
|
13093
|
+
* Aggregated per-camera pipeline status — server-composed, single call.
|
|
13094
|
+
*
|
|
13095
|
+
* The `assignment` and `source` blocks are always present.
|
|
13096
|
+
* Every other block is `null` when the stage is inactive or unreachable
|
|
13097
|
+
* during the bounded parallel fan-out in the orchestrator implementation.
|
|
13098
|
+
*
|
|
13099
|
+
* See spec: `docs/superpowers/specs/2026-06-24-camera-status-aggregator-cap.md`
|
|
13100
|
+
*/
|
|
13101
|
+
var CameraStatusSchema = object({
|
|
13102
|
+
deviceId: number(),
|
|
13103
|
+
assignment: CameraAssignmentStatusSchema,
|
|
13104
|
+
source: CameraSourceStatusSchema,
|
|
13105
|
+
broker: CameraBrokerStatusSchema.nullable(),
|
|
13106
|
+
decoder: CameraDecoderStatusSchema.nullable(),
|
|
13107
|
+
motion: CameraMotionStatusSchema.nullable(),
|
|
13108
|
+
detection: CameraDetectionStatusSchema.nullable(),
|
|
13109
|
+
audio: CameraAudioStatusSchema.nullable(),
|
|
13110
|
+
recording: CameraRecordingStatusSchema.nullable(),
|
|
13111
|
+
/** Unix timestamp (ms) when this snapshot was composed server-side. */
|
|
13112
|
+
fetchedAt: number()
|
|
13113
|
+
});
|
|
12953
13114
|
method(object({
|
|
12954
13115
|
deviceId: number(),
|
|
12955
13116
|
agentNodeId: string()
|
|
@@ -13017,6 +13178,12 @@ method(object({
|
|
|
13017
13178
|
}), {
|
|
13018
13179
|
kind: "mutation",
|
|
13019
13180
|
auth: "admin"
|
|
13181
|
+
}), method(object({
|
|
13182
|
+
agentNodeId: string(),
|
|
13183
|
+
maxCameras: number().int().nonnegative().nullable()
|
|
13184
|
+
}), object({ success: literal(true) }), {
|
|
13185
|
+
kind: "mutation",
|
|
13186
|
+
auth: "admin"
|
|
13020
13187
|
}), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
|
|
13021
13188
|
deviceId: number(),
|
|
13022
13189
|
addonId: string(),
|
|
@@ -13042,7 +13209,7 @@ method(object({
|
|
|
13042
13209
|
}), method(object({
|
|
13043
13210
|
deviceId: number(),
|
|
13044
13211
|
agentNodeId: string().optional()
|
|
13045
|
-
}), CameraPipelineConfigSchema), method(_void(), array(PipelineTemplateSchema).readonly()), method(object({
|
|
13212
|
+
}), CameraPipelineConfigSchema), method(object({ deviceId: number() }), CameraStatusSchema), method(object({ deviceIds: array(number()).optional() }), array(CameraStatusSchema).readonly()), method(_void(), array(PipelineTemplateSchema).readonly()), method(object({
|
|
13046
13213
|
name: string(),
|
|
13047
13214
|
description: string().optional(),
|
|
13048
13215
|
config: CameraPipelineConfigSchema
|
|
@@ -16006,6 +16173,69 @@ method(_void(), array(IntegrationWithStateSchema)), method(object({ id: string()
|
|
|
16006
16173
|
kind: "mutation",
|
|
16007
16174
|
auth: "admin"
|
|
16008
16175
|
});
|
|
16176
|
+
var jobKindSchema = _enum([
|
|
16177
|
+
"install",
|
|
16178
|
+
"update",
|
|
16179
|
+
"uninstall",
|
|
16180
|
+
"restart"
|
|
16181
|
+
]);
|
|
16182
|
+
var taskPhaseSchema = _enum([
|
|
16183
|
+
"queued",
|
|
16184
|
+
"fetching",
|
|
16185
|
+
"staged",
|
|
16186
|
+
"validating",
|
|
16187
|
+
"applying",
|
|
16188
|
+
"restarting",
|
|
16189
|
+
"applied",
|
|
16190
|
+
"done",
|
|
16191
|
+
"failed",
|
|
16192
|
+
"skipped"
|
|
16193
|
+
]);
|
|
16194
|
+
var taskTargetSchema = _enum(["framework", "addon"]);
|
|
16195
|
+
var taskLogEntrySchema = object({
|
|
16196
|
+
tsMs: number(),
|
|
16197
|
+
nodeId: string(),
|
|
16198
|
+
packageName: string(),
|
|
16199
|
+
phase: taskPhaseSchema,
|
|
16200
|
+
message: string()
|
|
16201
|
+
});
|
|
16202
|
+
var lifecycleTaskSchema = object({
|
|
16203
|
+
taskId: string(),
|
|
16204
|
+
nodeId: string(),
|
|
16205
|
+
packageName: string(),
|
|
16206
|
+
fromVersion: string().nullable(),
|
|
16207
|
+
toVersion: string(),
|
|
16208
|
+
target: taskTargetSchema,
|
|
16209
|
+
phase: taskPhaseSchema,
|
|
16210
|
+
stagedPath: string().nullable(),
|
|
16211
|
+
attempts: number(),
|
|
16212
|
+
steps: array(taskLogEntrySchema),
|
|
16213
|
+
error: string().nullable(),
|
|
16214
|
+
startedAtMs: number().nullable(),
|
|
16215
|
+
finishedAtMs: number().nullable()
|
|
16216
|
+
});
|
|
16217
|
+
var lifecycleJobStateSchema = _enum([
|
|
16218
|
+
"running",
|
|
16219
|
+
"completed",
|
|
16220
|
+
"failed",
|
|
16221
|
+
"partially-failed",
|
|
16222
|
+
"cancelled"
|
|
16223
|
+
]);
|
|
16224
|
+
var lifecycleJobScopeSchema = _enum([
|
|
16225
|
+
"single",
|
|
16226
|
+
"bulk",
|
|
16227
|
+
"cluster"
|
|
16228
|
+
]);
|
|
16229
|
+
var lifecycleJobSchema = object({
|
|
16230
|
+
jobId: string(),
|
|
16231
|
+
kind: jobKindSchema,
|
|
16232
|
+
createdAtMs: number(),
|
|
16233
|
+
createdBy: string(),
|
|
16234
|
+
scope: lifecycleJobScopeSchema,
|
|
16235
|
+
tasks: array(lifecycleTaskSchema),
|
|
16236
|
+
state: lifecycleJobStateSchema,
|
|
16237
|
+
schemaVersion: literal(1)
|
|
16238
|
+
});
|
|
16009
16239
|
/**
|
|
16010
16240
|
* addons — system-scoped singleton capability for addon package
|
|
16011
16241
|
* management (install, update, configure, restart) and per-addon log
|
|
@@ -16188,7 +16418,7 @@ var BulkUpdatePhaseSchema = _enum([
|
|
|
16188
16418
|
"restarting",
|
|
16189
16419
|
"finalizing"
|
|
16190
16420
|
]);
|
|
16191
|
-
|
|
16421
|
+
object({
|
|
16192
16422
|
id: string(),
|
|
16193
16423
|
nodeId: string(),
|
|
16194
16424
|
startedAtMs: number(),
|
|
@@ -16291,20 +16521,7 @@ method(_void(), array(AddonListItemSchema).readonly()), method(object({
|
|
|
16291
16521
|
}), UpdateFrameworkPackageResultSchema, {
|
|
16292
16522
|
kind: "mutation",
|
|
16293
16523
|
auth: "admin"
|
|
16294
|
-
}), method(object({
|
|
16295
|
-
nodeId: string(),
|
|
16296
|
-
items: array(object({
|
|
16297
|
-
name: string(),
|
|
16298
|
-
version: string(),
|
|
16299
|
-
isSystem: boolean()
|
|
16300
|
-
})).readonly()
|
|
16301
|
-
}), object({ id: string() }), {
|
|
16302
|
-
kind: "mutation",
|
|
16303
|
-
auth: "admin"
|
|
16304
|
-
}), method(object({ id: string() }), BulkUpdateStateSchema.nullable(), { auth: "admin" }), method(object({ id: string() }), object({ cancelled: boolean() }), {
|
|
16305
|
-
kind: "mutation",
|
|
16306
|
-
auth: "admin"
|
|
16307
|
-
}), method(object({ nodeId: string().optional() }), array(BulkUpdateStateSchema).readonly(), { auth: "admin" }), method(object({ name: string() }), array(PackageVersionInfoSchema).readonly()), method(object({ addonId: string() }), RestartAddonResultSchema, {
|
|
16524
|
+
}), method(object({ name: string() }), array(PackageVersionInfoSchema).readonly()), method(object({ addonId: string() }), RestartAddonResultSchema, {
|
|
16308
16525
|
kind: "mutation",
|
|
16309
16526
|
auth: "admin"
|
|
16310
16527
|
}), method(object({ packageName: string() }), object({ success: literal(true) }), {
|
|
@@ -16326,6 +16543,24 @@ method(_void(), array(AddonListItemSchema).readonly()), method(object({
|
|
|
16326
16543
|
kind: "mutation",
|
|
16327
16544
|
auth: "admin"
|
|
16328
16545
|
}), method(CustomActionInputSchema, unknown(), { kind: "mutation" }), method(object({
|
|
16546
|
+
kind: _enum([
|
|
16547
|
+
"install",
|
|
16548
|
+
"update",
|
|
16549
|
+
"uninstall",
|
|
16550
|
+
"restart"
|
|
16551
|
+
]),
|
|
16552
|
+
targets: array(object({
|
|
16553
|
+
name: string().min(1),
|
|
16554
|
+
version: string().min(1)
|
|
16555
|
+
})).min(1),
|
|
16556
|
+
nodeIds: array(string()).optional()
|
|
16557
|
+
}), object({ jobId: string() }), {
|
|
16558
|
+
kind: "mutation",
|
|
16559
|
+
auth: "admin"
|
|
16560
|
+
}), method(object({ jobId: string() }), lifecycleJobSchema.nullable(), { auth: "admin" }), method(object({ activeOnly: boolean().optional() }), array(lifecycleJobSchema), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
16561
|
+
kind: "mutation",
|
|
16562
|
+
auth: "admin"
|
|
16563
|
+
}), method(object({
|
|
16329
16564
|
addonId: string(),
|
|
16330
16565
|
level: LogLevelSchema$1.optional()
|
|
16331
16566
|
}), LogStreamEntrySchema, { kind: "subscription" });
|
|
@@ -16366,7 +16601,7 @@ Object.freeze({
|
|
|
16366
16601
|
addonId: null,
|
|
16367
16602
|
access: "create"
|
|
16368
16603
|
},
|
|
16369
|
-
"addons.
|
|
16604
|
+
"addons.cancelJob": {
|
|
16370
16605
|
capName: "addons",
|
|
16371
16606
|
capScope: "system",
|
|
16372
16607
|
addonId: null,
|
|
@@ -16396,7 +16631,7 @@ Object.freeze({
|
|
|
16396
16631
|
addonId: null,
|
|
16397
16632
|
access: "view"
|
|
16398
16633
|
},
|
|
16399
|
-
"addons.
|
|
16634
|
+
"addons.getJob": {
|
|
16400
16635
|
capName: "addons",
|
|
16401
16636
|
capScope: "system",
|
|
16402
16637
|
addonId: null,
|
|
@@ -16444,19 +16679,19 @@ Object.freeze({
|
|
|
16444
16679
|
addonId: null,
|
|
16445
16680
|
access: "view"
|
|
16446
16681
|
},
|
|
16447
|
-
"addons.
|
|
16682
|
+
"addons.listCapabilityProviders": {
|
|
16448
16683
|
capName: "addons",
|
|
16449
16684
|
capScope: "system",
|
|
16450
16685
|
addonId: null,
|
|
16451
16686
|
access: "view"
|
|
16452
16687
|
},
|
|
16453
|
-
"addons.
|
|
16688
|
+
"addons.listFrameworkPackages": {
|
|
16454
16689
|
capName: "addons",
|
|
16455
16690
|
capScope: "system",
|
|
16456
16691
|
addonId: null,
|
|
16457
16692
|
access: "view"
|
|
16458
16693
|
},
|
|
16459
|
-
"addons.
|
|
16694
|
+
"addons.listJobs": {
|
|
16460
16695
|
capName: "addons",
|
|
16461
16696
|
capScope: "system",
|
|
16462
16697
|
addonId: null,
|
|
@@ -16540,7 +16775,7 @@ Object.freeze({
|
|
|
16540
16775
|
addonId: null,
|
|
16541
16776
|
access: "create"
|
|
16542
16777
|
},
|
|
16543
|
-
"addons.
|
|
16778
|
+
"addons.startJob": {
|
|
16544
16779
|
capName: "addons",
|
|
16545
16780
|
capScope: "system",
|
|
16546
16781
|
addonId: null,
|
|
@@ -18766,6 +19001,12 @@ Object.freeze({
|
|
|
18766
19001
|
addonId: null,
|
|
18767
19002
|
access: "view"
|
|
18768
19003
|
},
|
|
19004
|
+
"pipelineExecutor.getEngineProvisioning": {
|
|
19005
|
+
capName: "pipeline-executor",
|
|
19006
|
+
capScope: "system",
|
|
19007
|
+
addonId: null,
|
|
19008
|
+
access: "view"
|
|
19009
|
+
},
|
|
18769
19010
|
"pipelineExecutor.getGlobalPipelineConfig": {
|
|
18770
19011
|
capName: "pipeline-executor",
|
|
18771
19012
|
capScope: "system",
|
|
@@ -18970,6 +19211,18 @@ Object.freeze({
|
|
|
18970
19211
|
addonId: null,
|
|
18971
19212
|
access: "view"
|
|
18972
19213
|
},
|
|
19214
|
+
"pipelineOrchestrator.getCameraStatus": {
|
|
19215
|
+
capName: "pipeline-orchestrator",
|
|
19216
|
+
capScope: "system",
|
|
19217
|
+
addonId: null,
|
|
19218
|
+
access: "view"
|
|
19219
|
+
},
|
|
19220
|
+
"pipelineOrchestrator.getCameraStatuses": {
|
|
19221
|
+
capName: "pipeline-orchestrator",
|
|
19222
|
+
capScope: "system",
|
|
19223
|
+
addonId: null,
|
|
19224
|
+
access: "view"
|
|
19225
|
+
},
|
|
18973
19226
|
"pipelineOrchestrator.getCameraStepOverrides": {
|
|
18974
19227
|
capName: "pipeline-orchestrator",
|
|
18975
19228
|
capScope: "system",
|
|
@@ -19054,6 +19307,12 @@ Object.freeze({
|
|
|
19054
19307
|
addonId: null,
|
|
19055
19308
|
access: "create"
|
|
19056
19309
|
},
|
|
19310
|
+
"pipelineOrchestrator.setAgentMaxCameras": {
|
|
19311
|
+
capName: "pipeline-orchestrator",
|
|
19312
|
+
capScope: "system",
|
|
19313
|
+
addonId: null,
|
|
19314
|
+
access: "create"
|
|
19315
|
+
},
|
|
19057
19316
|
"pipelineOrchestrator.setCameraPipelineForAgent": {
|
|
19058
19317
|
capName: "pipeline-orchestrator",
|
|
19059
19318
|
capScope: "system",
|
|
@@ -20527,6 +20786,32 @@ Object.freeze({
|
|
|
20527
20786
|
"network-access": "ingress",
|
|
20528
20787
|
"smtp-provider": "email"
|
|
20529
20788
|
});
|
|
20789
|
+
var frameworkSwapPackageSchema = object({
|
|
20790
|
+
name: string(),
|
|
20791
|
+
stagedPath: string(),
|
|
20792
|
+
backupPath: string(),
|
|
20793
|
+
toVersion: string(),
|
|
20794
|
+
fromVersion: string().nullable()
|
|
20795
|
+
});
|
|
20796
|
+
object({
|
|
20797
|
+
jobId: string(),
|
|
20798
|
+
taskId: string(),
|
|
20799
|
+
packages: array(frameworkSwapPackageSchema),
|
|
20800
|
+
requestedAtMs: number(),
|
|
20801
|
+
schemaVersion: literal(1)
|
|
20802
|
+
});
|
|
20803
|
+
object({
|
|
20804
|
+
jobId: string(),
|
|
20805
|
+
taskId: string(),
|
|
20806
|
+
backups: array(object({
|
|
20807
|
+
name: string(),
|
|
20808
|
+
backupPath: string(),
|
|
20809
|
+
livePath: string()
|
|
20810
|
+
})),
|
|
20811
|
+
appliedAtMs: number(),
|
|
20812
|
+
bootAttempts: number(),
|
|
20813
|
+
schemaVersion: literal(1)
|
|
20814
|
+
});
|
|
20530
20815
|
//#endregion
|
|
20531
20816
|
//#region ../../node_modules/nodemailer/lib/punycode/index.js
|
|
20532
20817
|
var require_punycode = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-smtp-nodemailer",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.5",
|
|
4
4
|
"description": "SMTP email provider addon for CamStack — wraps `nodemailer` and registers a `smtp-provider` cap collection entry. Used by magic-link login + notifier addons.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|