@camstack/addon-ai 0.4.96 → 0.4.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/addon.js CHANGED
@@ -16439,6 +16439,7 @@ var NcSystemEventKindSchema = _enum([
16439
16439
  "addon-crash-loop",
16440
16440
  "addon-update-available",
16441
16441
  "server-update-available",
16442
+ "wrapper-update-available",
16442
16443
  "alarm-triggered",
16443
16444
  "alarm-armed",
16444
16445
  "alarm-disarmed",
@@ -21955,6 +21956,53 @@ var ImageContractSchema = object({
21955
21956
  /** One operator-grade sentence: this node runs image X; the contract says Y. */
21956
21957
  message: string()
21957
21958
  });
21959
+ /**
21960
+ * The shell verdict (see {@link WrapperKindSchema}) with the proofs that
21961
+ * produced it.
21962
+ *
21963
+ * There is deliberately NO `canSelfUpdate` and no apply action: a wrapper
21964
+ * update is an ANNOUNCEMENT. The notification body carries the exact command
21965
+ * for a `docker` shell and says the app restarts into the new build for
21966
+ * `electron`, and that sentence is chosen from `kind` alone — a boolean
21967
+ * nothing reads is the defect this repo keeps paying for.
21968
+ */
21969
+ var WrapperIdentitySchema = object({
21970
+ kind: _enum([
21971
+ "docker",
21972
+ "electron",
21973
+ "native",
21974
+ "contradictory",
21975
+ "unknown"
21976
+ ]),
21977
+ /** Every probe that ran, in a stable order. Never empty. */
21978
+ evidence: array(object({
21979
+ /** Which probe this row reports. */
21980
+ fact: _enum([
21981
+ "dockerenv-file",
21982
+ "proc-1-cgroup",
21983
+ "platform",
21984
+ "electron-app-version-env"
21985
+ ]),
21986
+ /**
21987
+ * `observed` — this process read it itself. `declared` — the shell told the
21988
+ * process and nothing here can check it. Only the Electron app version is
21989
+ * ever `declared`, and only because a child cannot see its parent.
21990
+ */
21991
+ mode: _enum(["observed", "declared"]),
21992
+ /** Did the probe support the fact it names? A `false` row is still evidence. */
21993
+ holds: boolean(),
21994
+ /** What was actually read, verbatim enough for an operator to argue with. */
21995
+ detail: string()
21996
+ })),
21997
+ /**
21998
+ * The version of the SHELL, when the shell has one it can state: the
21999
+ * Electron app version it declared, or the baked seed closure that
22000
+ * fingerprints a container / app bundle. `null` for `contradictory` and
22001
+ * `unknown` — which version belongs to the shell is precisely what is not
22002
+ * known there.
22003
+ */
22004
+ currentVersion: string().nullable()
22005
+ });
21958
22006
  var ServerRollbackInfoSchema = object({
21959
22007
  /** The version that failed (or was manually rolled back). */
21960
22008
  fromVersion: string(),
@@ -21996,7 +22044,13 @@ var ServerPackageStatusSchema = object({
21996
22044
  * Seed-vs-contract verdict (see {@link ImageContractSchema}). Optional for
21997
22045
  * version skew: an older provider's payload simply omits it.
21998
22046
  */
21999
- imageContract: ImageContractSchema.optional()
22047
+ imageContract: ImageContractSchema.optional(),
22048
+ /**
22049
+ * What this node runs INSIDE (see {@link WrapperIdentitySchema}). Optional
22050
+ * for version skew: an older provider's payload simply omits it, and an
22051
+ * absent wrapper is unknown — never `native`.
22052
+ */
22053
+ wrapper: WrapperIdentitySchema.optional()
22000
22054
  });
22001
22055
  var ServerUpdateCheckResultSchema = object({
22002
22056
  packageName: string(),
@@ -25018,8 +25072,8 @@ includeCrops: boolean().optional() }).optional(), array(IdentitySchema).readonly
25018
25072
  *
25019
25073
  * An **empty array reads NOTHING** — `[]` is an empty page, never
25020
25074
  * "every camera". A request for no devices is a request, not an
25021
- * omission; same contract as `deviceManager.listFleet` and
25022
- * `pipelineAnalytics.listRecentTracks`.
25075
+ * omission; same contract as `deviceManager.listAll`'s `deviceIds`
25076
+ * and `pipelineAnalytics.listRecentTracks`.
25023
25077
  *
25024
25078
  * Absent (`undefined`) is the omission, and keeps the cluster-wide view.
25025
25079
  */
package/dist/addon.mjs CHANGED
@@ -16466,6 +16466,7 @@ var NcSystemEventKindSchema = _enum([
16466
16466
  "addon-crash-loop",
16467
16467
  "addon-update-available",
16468
16468
  "server-update-available",
16469
+ "wrapper-update-available",
16469
16470
  "alarm-triggered",
16470
16471
  "alarm-armed",
16471
16472
  "alarm-disarmed",
@@ -21982,6 +21983,53 @@ var ImageContractSchema = object({
21982
21983
  /** One operator-grade sentence: this node runs image X; the contract says Y. */
21983
21984
  message: string()
21984
21985
  });
21986
+ /**
21987
+ * The shell verdict (see {@link WrapperKindSchema}) with the proofs that
21988
+ * produced it.
21989
+ *
21990
+ * There is deliberately NO `canSelfUpdate` and no apply action: a wrapper
21991
+ * update is an ANNOUNCEMENT. The notification body carries the exact command
21992
+ * for a `docker` shell and says the app restarts into the new build for
21993
+ * `electron`, and that sentence is chosen from `kind` alone — a boolean
21994
+ * nothing reads is the defect this repo keeps paying for.
21995
+ */
21996
+ var WrapperIdentitySchema = object({
21997
+ kind: _enum([
21998
+ "docker",
21999
+ "electron",
22000
+ "native",
22001
+ "contradictory",
22002
+ "unknown"
22003
+ ]),
22004
+ /** Every probe that ran, in a stable order. Never empty. */
22005
+ evidence: array(object({
22006
+ /** Which probe this row reports. */
22007
+ fact: _enum([
22008
+ "dockerenv-file",
22009
+ "proc-1-cgroup",
22010
+ "platform",
22011
+ "electron-app-version-env"
22012
+ ]),
22013
+ /**
22014
+ * `observed` — this process read it itself. `declared` — the shell told the
22015
+ * process and nothing here can check it. Only the Electron app version is
22016
+ * ever `declared`, and only because a child cannot see its parent.
22017
+ */
22018
+ mode: _enum(["observed", "declared"]),
22019
+ /** Did the probe support the fact it names? A `false` row is still evidence. */
22020
+ holds: boolean(),
22021
+ /** What was actually read, verbatim enough for an operator to argue with. */
22022
+ detail: string()
22023
+ })),
22024
+ /**
22025
+ * The version of the SHELL, when the shell has one it can state: the
22026
+ * Electron app version it declared, or the baked seed closure that
22027
+ * fingerprints a container / app bundle. `null` for `contradictory` and
22028
+ * `unknown` — which version belongs to the shell is precisely what is not
22029
+ * known there.
22030
+ */
22031
+ currentVersion: string().nullable()
22032
+ });
21985
22033
  var ServerRollbackInfoSchema = object({
21986
22034
  /** The version that failed (or was manually rolled back). */
21987
22035
  fromVersion: string(),
@@ -22023,7 +22071,13 @@ var ServerPackageStatusSchema = object({
22023
22071
  * Seed-vs-contract verdict (see {@link ImageContractSchema}). Optional for
22024
22072
  * version skew: an older provider's payload simply omits it.
22025
22073
  */
22026
- imageContract: ImageContractSchema.optional()
22074
+ imageContract: ImageContractSchema.optional(),
22075
+ /**
22076
+ * What this node runs INSIDE (see {@link WrapperIdentitySchema}). Optional
22077
+ * for version skew: an older provider's payload simply omits it, and an
22078
+ * absent wrapper is unknown — never `native`.
22079
+ */
22080
+ wrapper: WrapperIdentitySchema.optional()
22027
22081
  });
22028
22082
  var ServerUpdateCheckResultSchema = object({
22029
22083
  packageName: string(),
@@ -25045,8 +25099,8 @@ includeCrops: boolean().optional() }).optional(), array(IdentitySchema).readonly
25045
25099
  *
25046
25100
  * An **empty array reads NOTHING** — `[]` is an empty page, never
25047
25101
  * "every camera". A request for no devices is a request, not an
25048
- * omission; same contract as `deviceManager.listFleet` and
25049
- * `pipelineAnalytics.listRecentTracks`.
25102
+ * omission; same contract as `deviceManager.listAll`'s `deviceIds`
25103
+ * and `pipelineAnalytics.listRecentTracks`.
25050
25104
  *
25051
25105
  * Absent (`undefined`) is the omission, and keeps the cluster-wide view.
25052
25106
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-ai",
3
- "version": "0.4.96",
3
+ "version": "0.4.98",
4
4
  "description": "AI addon for CamStack — the `llm` collection provider (cloud, LAN, and camstack-managed local llama.cpp profiles) plus the per-node `llm-runtime` managed executor.",
5
5
  "keywords": [
6
6
  "camstack",