@camstack/addon-model-studio 1.1.307 → 1.1.308

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,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.1.308] - 2026-10-27
11
+
12
+ ### Changed
13
+
14
+ - Rebuilt against updated dependencies.
15
+
16
+ ## [1.1.307] - 2026-10-27
17
+
10
18
  ### Added
11
19
 
12
- - Package README and changelog, included in the published files list.
20
+ - Model Studio: Custom detection model registry, conversion & distribution for CamStack.
21
+ - Provides the addon Model Studio.
package/README.md CHANGED
@@ -1,19 +1,27 @@
1
- # @camstack/addon-model-studio
1
+ # Model Studio
2
2
 
3
- Custom detection model registry, conversion & distribution for CamStack
3
+ Custom detection model registry, conversion & distribution for CamStack.
4
4
 
5
- ## What it does
5
+ <!-- readme:generated:start (derived from the manifest; edit outside this block) -->
6
6
 
7
- - **Model Studio** (`model-studio`): Register, manipulate and distribute custom detection models
8
- - Node placement: `any-node`, runner group `ml`.
9
- - Capabilities: `custom-model-registry`, `model-convert`, `addon-pages-source`.
7
+ Package `@camstack/addon-model-studio` on npm.
10
8
 
11
- ## Settings
9
+ ## What it provides
12
10
 
13
- Settings this addon exposes are edited from System → Addons → this addon → Settings when they apply to the whole cluster, and from the device page when they belong to one device. A password field is stored in the keychain.
11
+ - **Model Studio** (`model-studio`): Register, manipulate and distribute custom detection models. Category: system.
12
+ - Capabilities: `custom-model-registry`, `model-convert`, `addon-pages-source`.
14
13
 
15
14
  ## Requirements
16
15
 
17
- - Peer packages already on the node: `@camstack/types`, `react`, `react-dom`.
18
- - A CamStack hub. An agent is used only when the placement above allows it.
16
+ - Placement: any-node (runner group `ml`).
17
+ - Python: Model Studio installs `python/requirements.txt` into its own environment.
18
+ - A CamStack hub. An agent is used only where the placement above allows it.
19
+
20
+ ## Documentation
21
+
22
+ - [docs/architecture/cloud-training.md](https://github.com/camstack/server/blob/main/docs/architecture/cloud-training.md)
23
+ - [packages/addon-model-studio/AGENTS.md](https://github.com/camstack/server/blob/main/packages/addon-model-studio/AGENTS.md)
24
+
25
+ See [CHANGELOG.md](./CHANGELOG.md) for what changed in each version.
19
26
 
27
+ <!-- readme:generated:end -->
package/dist/_stub.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "./virtualExposes-CWSi4E_g.mjs";
2
- import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-cC9vn7dW.mjs";
2
+ import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CqZcfvB1.mjs";
3
3
  import { S as e, _ as t, a as n, b as r, d as i, f as a, g as o, h as s, i as c, l, m as u, n as d, p as f, r as p, t as m, u as h, v as g, y as _ } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react__loadShare__.js-DMBKVIH7.mjs";
4
4
  import { n as v, r as y, t as b } from "./_virtual_mf___mfe_internal__addon_model_studio_page__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-ds_Ehzaa.mjs";
5
5
  import { n as x, r as S, t as C } from "./ui-text-BqZa5BNK.mjs";
@@ -1,9 +1,9 @@
1
- import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-cC9vn7dW.mjs";
1
+ import "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CqZcfvB1.mjs";
2
2
  //#region \0virtual:mf-localSharedImportMap:__mfe_internal__addon_model_studio_page
3
3
  var e = {
4
4
  "@camstack/sdk": {
5
5
  name: "@camstack/sdk",
6
- version: "1.2.153",
6
+ version: "1.2.154",
7
7
  scope: ["default"],
8
8
  loaded: !1,
9
9
  from: "addon_model_studio_page",
@@ -18,7 +18,7 @@ var e = {
18
18
  },
19
19
  "@camstack/types": {
20
20
  name: "@camstack/types",
21
- version: "1.2.427",
21
+ version: "1.2.428",
22
22
  scope: ["default"],
23
23
  loaded: !1,
24
24
  from: "addon_model_studio_page",
@@ -33,7 +33,7 @@ var e = {
33
33
  },
34
34
  "@camstack/ui-library": {
35
35
  name: "@camstack/ui-library",
36
- version: "1.2.336",
36
+ version: "1.2.337",
37
37
  scope: ["default"],
38
38
  loaded: !1,
39
39
  from: "addon_model_studio_page",
@@ -36,7 +36,7 @@ async function r() {
36
36
  }
37
37
  },
38
38
  "@camstack/types": {
39
- version: "1.2.427",
39
+ version: "1.2.428",
40
40
  scope: "default",
41
41
  shareConfig: {
42
42
  singleton: !0,
@@ -45,7 +45,7 @@ async function r() {
45
45
  }
46
46
  },
47
47
  "@camstack/sdk": {
48
- version: "1.2.153",
48
+ version: "1.2.154",
49
49
  scope: "default",
50
50
  shareConfig: {
51
51
  singleton: !0,
@@ -81,7 +81,7 @@ async function r() {
81
81
  }
82
82
  },
83
83
  "@camstack/ui-library": {
84
- version: "1.2.336",
84
+ version: "1.2.337",
85
85
  scope: "default",
86
86
  shareConfig: {
87
87
  singleton: !0,
@@ -44302,7 +44302,7 @@ var NetworkAccessStatusSchema = object({
44302
44302
  });
44303
44303
  /**
44304
44304
  * Optional, richer endpoint shape returned by providers that expose
44305
- * MORE than one ingress concurrently (Tailscale Ingress with mixed
44305
+ * MORE than one ingress concurrently (Tailscale Funnel with mixed
44306
44306
  * serve+funnel rules, future ngrok multi-tunnel, …). Each entry carries
44307
44307
  * the originating provider config (mode + sourcePort) so the
44308
44308
  * orchestrator UI can label rows distinctly. Providers that expose only
@@ -44276,7 +44276,7 @@ var NetworkAccessStatusSchema = object({
44276
44276
  });
44277
44277
  /**
44278
44278
  * Optional, richer endpoint shape returned by providers that expose
44279
- * MORE than one ingress concurrently (Tailscale Ingress with mixed
44279
+ * MORE than one ingress concurrently (Tailscale Funnel with mixed
44280
44280
  * serve+funnel rules, future ngrok multi-tunnel, …). Each entry carries
44281
44281
  * the originating provider config (mode + sourcePort) so the
44282
44282
  * orchestrator UI can label rows distinctly. Providers that expose only
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-cC9vn7dW.mjs";
1
+ import { n as e, t } from "./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__addon_model_studio_page__remoteEntry_js-CqZcfvB1.mjs";
2
2
  export { t as get, e as init };
@@ -2753,7 +2753,7 @@ async function rr(e) {
2753
2753
  }
2754
2754
  }
2755
2755
  async function ir() {
2756
- return tr ||= rr(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-DLl1PFV-.mjs")).catch((e) => {
2756
+ return tr ||= rr(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_model_studio_page-DHIXnmpZ.mjs")).catch((e) => {
2757
2757
  throw tr = void 0, e;
2758
2758
  }), tr;
2759
2759
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-model-studio",
3
- "version": "1.1.307",
3
+ "version": "1.1.308",
4
4
  "description": "Custom detection model registry, conversion & distribution for CamStack",
5
5
  "keywords": [
6
6
  "camstack",