camstack 1.2.211 → 1.2.212
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/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.2.212] - 2026-10-30
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- The MCP gains ops_update_check (cluster-wide server, wrapper, addon and CLI update report) and ops_update_apply (ordered, verified, confirm-gated cluster update; wrapper updates are reported with instructions)
|
|
15
|
+
|
|
10
16
|
## [1.2.211] - 2026-10-30
|
|
11
17
|
|
|
12
18
|
### Changed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
// ../types/dist/err-msg-
|
|
3
|
+
// ../types/dist/err-msg-BD5buxvT.mjs
|
|
4
4
|
var DeviceType = /* @__PURE__ */ (function(DeviceType2) {
|
|
5
5
|
DeviceType2["Camera"] = "camera";
|
|
6
6
|
DeviceType2["Hub"] = "hub";
|
|
@@ -37,6 +37,7 @@ var DeviceType = /* @__PURE__ */ (function(DeviceType2) {
|
|
|
37
37
|
DeviceType2["Dishwasher"] = "dishwasher";
|
|
38
38
|
DeviceType2["Washer"] = "washer";
|
|
39
39
|
DeviceType2["Dryer"] = "dryer";
|
|
40
|
+
DeviceType2["Gateway"] = "gateway";
|
|
40
41
|
return DeviceType2;
|
|
41
42
|
})({});
|
|
42
43
|
var DeviceFeature = /* @__PURE__ */ (function(DeviceFeature2) {
|
|
@@ -154,7 +155,7 @@ var DeviceRole = /* @__PURE__ */ (function(DeviceRole2) {
|
|
|
154
155
|
return DeviceRole2;
|
|
155
156
|
})({});
|
|
156
157
|
|
|
157
|
-
// ../types/dist/composition-
|
|
158
|
+
// ../types/dist/composition-C7WdThmP.mjs
|
|
158
159
|
import { z } from "zod";
|
|
159
160
|
import { createHash } from "crypto";
|
|
160
161
|
var RESTREAM_INPUT_PROBE = {
|
|
@@ -10846,8 +10847,21 @@ var BrokerProviderInfoSchema = z4.object({
|
|
|
10846
10847
|
* (`{ sessionId }`) drops the session. The dialog that edits a broker
|
|
10847
10848
|
* offers it as the default path; the fields the session fills are
|
|
10848
10849
|
* marked `filledBySignIn` in the kind's settings schema.
|
|
10850
|
+
*
|
|
10851
|
+
* `methods` lists the ways the session can sign in, recommended first:
|
|
10852
|
+
* `'device-code'` adds `POST {basePath}/code/start` (body: the form's
|
|
10853
|
+
* settings) answering `{ sessionId, userCode, verificationUrl,
|
|
10854
|
+
* expiresAt }` — the operator types `userCode` at `verificationUrl` on
|
|
10855
|
+
* any device, and the same `status` / `commit` / `cancel` routes follow
|
|
10856
|
+
* (status then carries `method`, `userCode`, `verificationUrl`,
|
|
10857
|
+
* `expiresAt` and the phases `'awaiting-code'` / `'expired'`);
|
|
10858
|
+
* `'proxy'` is the `{basePath}/start` flow above. Absent means
|
|
10859
|
+
* `['proxy']`.
|
|
10849
10860
|
*/
|
|
10850
|
-
signIn: z4.object({
|
|
10861
|
+
signIn: z4.object({
|
|
10862
|
+
basePath: z4.string().min(1),
|
|
10863
|
+
methods: z4.array(z4.enum(["device-code", "proxy"])).optional()
|
|
10864
|
+
}).optional()
|
|
10851
10865
|
}))
|
|
10852
10866
|
});
|
|
10853
10867
|
var ListInputSchema = z4.object({
|
|
@@ -60924,7 +60938,8 @@ var rebootCapability = {
|
|
|
60924
60938
|
deviceTypes: [
|
|
60925
60939
|
DeviceType.Camera,
|
|
60926
60940
|
DeviceType.Sensor,
|
|
60927
|
-
DeviceType.Switch
|
|
60941
|
+
DeviceType.Switch,
|
|
60942
|
+
DeviceType.Gateway
|
|
60928
60943
|
],
|
|
60929
60944
|
methods: { reboot: method(z4.object({ deviceId: z4.number().int().nonnegative() }), z4.object({ success: z4.literal(true) }), {
|
|
60930
60945
|
kind: "mutation",
|
|
@@ -65450,7 +65465,8 @@ var CAP_CUSTOMIZE_CATALOG = {
|
|
|
65450
65465
|
DeviceType.PetFountain,
|
|
65451
65466
|
DeviceType.Dishwasher,
|
|
65452
65467
|
DeviceType.Washer,
|
|
65453
|
-
DeviceType.Dryer
|
|
65468
|
+
DeviceType.Dryer,
|
|
65469
|
+
DeviceType.Gateway
|
|
65454
65470
|
],
|
|
65455
65471
|
apply: "add",
|
|
65456
65472
|
vocabularyCap: "consumables",
|
|
@@ -65951,7 +65967,8 @@ var DEVICE_TYPE_CONTROL_KIND = {
|
|
|
65951
65967
|
[DeviceType.PetFountain]: "pet-fountain",
|
|
65952
65968
|
[DeviceType.Dishwasher]: "dishwasher",
|
|
65953
65969
|
[DeviceType.Washer]: "dummy",
|
|
65954
|
-
[DeviceType.Dryer]: "dummy"
|
|
65970
|
+
[DeviceType.Dryer]: "dummy",
|
|
65971
|
+
[DeviceType.Gateway]: "dummy"
|
|
65955
65972
|
};
|
|
65956
65973
|
var DEVICE_TYPE_VALUES = new Set(Object.values(DeviceType));
|
|
65957
65974
|
var METHOD_ACCESS_MAP = Object.freeze({
|
|
@@ -80013,7 +80030,8 @@ var DEVICE_TYPE_DO_CAPS = {
|
|
|
80013
80030
|
[DeviceType.PetFountain]: ["pet-fountain"],
|
|
80014
80031
|
[DeviceType.Dishwasher]: ["dishwasher"],
|
|
80015
80032
|
[DeviceType.Washer]: [],
|
|
80016
|
-
[DeviceType.Dryer]: []
|
|
80033
|
+
[DeviceType.Dryer]: [],
|
|
80034
|
+
[DeviceType.Gateway]: []
|
|
80017
80035
|
};
|
|
80018
80036
|
var NUMERIC_ABOVE = t("When {quantity} of {device} rises above {threshold}", "Quando {quantity} di {device} sale sopra {threshold}");
|
|
80019
80037
|
var NUMERIC_BELOW = t("When {quantity} of {device} falls below {threshold}", "Quando {quantity} di {device} scende sotto {threshold}");
|
package/dist/cli.js
CHANGED
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
describeHub,
|
|
5
5
|
findHubs,
|
|
6
6
|
validateManualHubUrl
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-MLWXP2SI.js";
|
|
8
8
|
import "./chunk-LMMQX4CK.js";
|
|
9
9
|
|
|
10
10
|
// src/cli.ts
|
|
@@ -41,7 +41,7 @@ async function runServe(args) {
|
|
|
41
41
|
...typeof values.data === "string" ? { data: values.data } : {}
|
|
42
42
|
};
|
|
43
43
|
Object.assign(process.env, buildServeEnv(opts));
|
|
44
|
-
await import("./launcher-
|
|
44
|
+
await import("./launcher-EACOVUIT.js");
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
// src/commands/agent.ts
|
|
@@ -86,7 +86,7 @@ async function runAgent(args) {
|
|
|
86
86
|
...typeof values.port === "string" ? { port: values.port } : {}
|
|
87
87
|
};
|
|
88
88
|
Object.assign(process.env, buildAgentEnv(opts));
|
|
89
|
-
await import("./launcher-
|
|
89
|
+
await import("./launcher-EACOVUIT.js");
|
|
90
90
|
}
|
|
91
91
|
|
|
92
92
|
// src/commands/setup.ts
|
|
@@ -2561,7 +2561,7 @@ async function runMcp(args, cliVersion) {
|
|
|
2561
2561
|
process.exitCode = 1;
|
|
2562
2562
|
return;
|
|
2563
2563
|
}
|
|
2564
|
-
const { runPublicMcp } = await import("./server-
|
|
2564
|
+
const { runPublicMcp } = await import("./server-2GOCBDEY.js");
|
|
2565
2565
|
await runPublicMcp({
|
|
2566
2566
|
cliVersion,
|
|
2567
2567
|
toolsets: selection.toolsets,
|