@ultrst-armada/kloks 1.10.2 → 1.10.3

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.
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schema": 1,
3
3
  "packageName": "@ultrst-armada/kloks",
4
- "version": "1.10.2",
5
- "sourceCommit": "4a3966cdcb02dd9710777acbe76c5fba6abe6353",
4
+ "version": "1.10.3",
5
+ "sourceCommit": "2996ca27ffbccaf9a982b5423f63f8b67efda7e3",
6
6
  "releaseWorkflow": "npm Release",
7
- "workflowRunId": "40316830979"
7
+ "workflowRunId": "40318694348"
8
8
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ultrst-armada/kloks",
3
- "version": "1.10.2",
3
+ "version": "1.10.3",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public",
@@ -1,10 +1,16 @@
1
1
  import {
2
2
  workspaceGraphService
3
- } from "./chunk-5RXXC6GE.js";
3
+ } from "./chunk-VKSGYMAH.js";
4
4
  import {
5
5
  getSrklAccounts,
6
6
  srklListBackblazeBuckets
7
7
  } from "./chunk-XHADDA75.js";
8
+ import {
9
+ StorageAdapterFactory
10
+ } from "./chunk-SHZAQTIT.js";
11
+ import {
12
+ b2ListBuckets
13
+ } from "./chunk-4QEMALXF.js";
8
14
  import {
9
15
  formatCanonicalWorkspaceFolderName,
10
16
  sanitizeWorkspaceName
@@ -19,12 +25,6 @@ import {
19
25
  import {
20
26
  queryUnifiedDb
21
27
  } from "./chunk-VAFCR2MS.js";
22
- import {
23
- StorageAdapterFactory
24
- } from "./chunk-SHZAQTIT.js";
25
- import {
26
- b2ListBuckets
27
- } from "./chunk-4QEMALXF.js";
28
28
  import {
29
29
  RateLimiter,
30
30
  SessionManager,
@@ -30,6 +30,9 @@ import {
30
30
  syncSrklAccounts,
31
31
  useSrklServices
32
32
  } from "./chunk-3IUA66RS.js";
33
+ import {
34
+ S3Adapter
35
+ } from "./chunk-RBQ4CW3T.js";
33
36
  import {
34
37
  RemoteWorkspaceService,
35
38
  SyncEngine,
@@ -46,9 +49,6 @@ import {
46
49
  syncWorkspace,
47
50
  workingWorkspaceService
48
51
  } from "./chunk-BTMIK44G.js";
49
- import {
50
- S3Adapter
51
- } from "./chunk-RBQ4CW3T.js";
52
52
  import {
53
53
  AuthServiceDefinition,
54
54
  AuthServiceFacade,
@@ -82,15 +82,35 @@ import {
82
82
  krnlWorkspaceGraphServiceFacade,
83
83
  krnlWorkspaceServiceDefinition,
84
84
  krnlWorkspaceServiceFacade
85
- } from "./chunk-R62OJR5I.js";
85
+ } from "./chunk-UMEO6XS4.js";
86
86
  import {
87
87
  workspaceGraphService
88
- } from "./chunk-5RXXC6GE.js";
88
+ } from "./chunk-VKSGYMAH.js";
89
89
  import {
90
90
  getPrimarySrklDeploymentUrl,
91
91
  getSrklAccounts,
92
92
  srklListBackblazeBuckets
93
93
  } from "./chunk-XHADDA75.js";
94
+ import {
95
+ BackblazeB2Adapter,
96
+ LocalFSAdapter,
97
+ StorageAdapterFactory,
98
+ SupabaseStorageAdapter,
99
+ ensureS3DirectoryMarker,
100
+ isSecretMasked,
101
+ normalizeBackblazeCredentials,
102
+ permanentDeleteS3Folder,
103
+ permanentDeleteS3Object,
104
+ renameS3Folder,
105
+ resolveBackblazeEndpoint
106
+ } from "./chunk-SHZAQTIT.js";
107
+ import {
108
+ authorizeB2,
109
+ b2DownloadFile,
110
+ b2ListBuckets,
111
+ b2ListFileNames,
112
+ b2UploadFile
113
+ } from "./chunk-4QEMALXF.js";
94
114
  import {
95
115
  formatCanonicalWorkspaceFolderName,
96
116
  sanitizeWorkspaceName
@@ -125,26 +145,6 @@ import {
125
145
  getUnifiedDbUrl,
126
146
  queryUnifiedDb
127
147
  } from "./chunk-VAFCR2MS.js";
128
- import {
129
- BackblazeB2Adapter,
130
- LocalFSAdapter,
131
- StorageAdapterFactory,
132
- SupabaseStorageAdapter,
133
- ensureS3DirectoryMarker,
134
- isSecretMasked,
135
- normalizeBackblazeCredentials,
136
- permanentDeleteS3Folder,
137
- permanentDeleteS3Object,
138
- renameS3Folder,
139
- resolveBackblazeEndpoint
140
- } from "./chunk-SHZAQTIT.js";
141
- import {
142
- authorizeB2,
143
- b2DownloadFile,
144
- b2ListBuckets,
145
- b2ListFileNames,
146
- b2UploadFile
147
- } from "./chunk-4QEMALXF.js";
148
148
  import {
149
149
  BaseStorageAdapter,
150
150
  GoogleDriveAdapter,
@@ -177,14 +177,6 @@ import {
177
177
  useBackend,
178
178
  useBackendClient
179
179
  } from "./chunk-N7OUR5R5.js";
180
- import {
181
- AuditLogger,
182
- ControlPlaneManager,
183
- DatabaseClusterManager,
184
- detectDatabaseEngine,
185
- getSystemDatabaseUrls,
186
- resolveSystemDatabaseClusterNodes
187
- } from "./chunk-RCCQ7IRM.js";
188
180
  import {
189
181
  BackendRegistry,
190
182
  ConcurrencyConflictError,
@@ -209,6 +201,14 @@ import {
209
201
  WebSocketTransport,
210
202
  createBackendClient
211
203
  } from "./chunk-NIP22V2G.js";
204
+ import {
205
+ AuditLogger,
206
+ ControlPlaneManager,
207
+ DatabaseClusterManager,
208
+ detectDatabaseEngine,
209
+ getSystemDatabaseUrls,
210
+ resolveSystemDatabaseClusterNodes
211
+ } from "./chunk-RCCQ7IRM.js";
212
212
  import {
213
213
  AgentHarnessRuntime,
214
214
  AgentHarnessServiceDefinition,
@@ -31,14 +31,14 @@ import {
31
31
  krnlWorkspaceGraphServiceFacade,
32
32
  krnlWorkspaceServiceDefinition,
33
33
  krnlWorkspaceServiceFacade
34
- } from "./chunk-R62OJR5I.js";
35
- import "./chunk-5RXXC6GE.js";
34
+ } from "./chunk-UMEO6XS4.js";
35
+ import "./chunk-VKSGYMAH.js";
36
36
  import "./chunk-XHADDA75.js";
37
+ import "./chunk-SHZAQTIT.js";
38
+ import "./chunk-4QEMALXF.js";
37
39
  import "./chunk-FZKBTF34.js";
38
40
  import "./chunk-6K75XXFD.js";
39
41
  import "./chunk-VAFCR2MS.js";
40
- import "./chunk-SHZAQTIT.js";
41
- import "./chunk-4QEMALXF.js";
42
42
  import "./chunk-KKRWZDMN.js";
43
43
  import "./chunk-WTBAG4AV.js";
44
44
  import "./chunk-TY32TUNI.js";
@@ -14,10 +14,10 @@ import {
14
14
  } from "../chunk-RBF2OGMC.js";
15
15
  import {
16
16
  workspaceGraphService
17
- } from "../chunk-5RXXC6GE.js";
17
+ } from "../chunk-VKSGYMAH.js";
18
+ import "../chunk-SHZAQTIT.js";
18
19
  import "../chunk-6K75XXFD.js";
19
20
  import "../chunk-VAFCR2MS.js";
20
- import "../chunk-SHZAQTIT.js";
21
21
  import "../chunk-KKRWZDMN.js";
22
22
  import "../chunk-TY32TUNI.js";
23
23
  export {
@@ -16,8 +16,8 @@ import {
16
16
  getSrklAccounts,
17
17
  srklListBackblazeBuckets
18
18
  } from "../chunk-XHADDA75.js";
19
- import "../chunk-VAFCR2MS.js";
20
19
  import "../chunk-4QEMALXF.js";
20
+ import "../chunk-VAFCR2MS.js";
21
21
  export {
22
22
  CANONICAL_SRKL_URL,
23
23
  SrklClient,
@@ -628,6 +628,9 @@ interface UIAuthoringNode {
628
628
  assetRef?: AssetRef;
629
629
  parentId?: string;
630
630
  props: Record<string, string | number | boolean>;
631
+ slots?: Record<string, string[]>;
632
+ states?: Record<string, Record<string, string | number | boolean>>;
633
+ events?: Record<string, string>;
631
634
  }
632
635
  interface UIAuthoringBinding {
633
636
  componentId: string;
@@ -1886,6 +1886,22 @@ function validateSession(session) {
1886
1886
  }
1887
1887
  if (session.nodes.some((node) => node.kind === "component" && !node.assetRef)) errors.push("Every component node requires a FLOKS asset reference.");
1888
1888
  if (session.context === "service" && !session.metadata.serviceId) errors.push("Service authoring requires metadata.serviceId.");
1889
+ for (const node of session.nodes) {
1890
+ for (const [slotId, childIds] of Object.entries(node.slots || {})) {
1891
+ if (!slotId.trim()) errors.push(`Slot id cannot be blank on node: ${node.id}`);
1892
+ for (const childId of childIds) {
1893
+ const child = session.nodes.find((candidate) => candidate.id === childId);
1894
+ if (!child) errors.push(`Slot ${slotId} references missing child: ${childId}`);
1895
+ else if (child.parentId !== node.id) errors.push(`Slot child ${childId} must be a direct child of node: ${node.id}`);
1896
+ }
1897
+ }
1898
+ for (const [eventName, operationId] of Object.entries(node.events || {})) {
1899
+ if (!eventName.trim()) errors.push(`Event name cannot be blank on node: ${node.id}`);
1900
+ if (!operationId.trim() || !session.operations.some((operation) => operation.operationId === operationId)) {
1901
+ errors.push(`Event ${eventName} references missing operation: ${operationId}`);
1902
+ }
1903
+ }
1904
+ }
1889
1905
  for (const binding of session.bindings) {
1890
1906
  const component = session.nodes.find((node) => node.id === binding.componentId);
1891
1907
  if (!component) errors.push(`Binding references missing component: ${binding.componentId}`);
@@ -7,20 +7,6 @@ import {
7
7
  instantiateSubgraph
8
8
  } from "./chunk-S22PMERU.js";
9
9
  import "./chunk-RHRXPY2U.js";
10
- import {
11
- CommandApi,
12
- GhostStore,
13
- GraphStore
14
- } from "./chunk-4UVGXFEM.js";
15
- import {
16
- BaseGraph,
17
- BaseNode,
18
- BaseViewWindow,
19
- CustomGraph,
20
- CustomNode,
21
- CustomViewWindow,
22
- DEFAULT_GRAPH_SETTINGS
23
- } from "./chunk-KG6QYS26.js";
24
10
  import {
25
11
  LifecycleCycleError,
26
12
  LifecycleGraph,
@@ -45,6 +31,20 @@ import {
45
31
  WireTypeRegistry,
46
32
  initializeDefaultGraphRules
47
33
  } from "./chunk-TZOL3RN7.js";
34
+ import {
35
+ CommandApi,
36
+ GhostStore,
37
+ GraphStore
38
+ } from "./chunk-4UVGXFEM.js";
39
+ import {
40
+ BaseGraph,
41
+ BaseNode,
42
+ BaseViewWindow,
43
+ CustomGraph,
44
+ CustomNode,
45
+ CustomViewWindow,
46
+ DEFAULT_GRAPH_SETTINGS
47
+ } from "./chunk-KG6QYS26.js";
48
48
  import {
49
49
  AutoSolidify,
50
50
  SpatialEngine,
@@ -1,9 +1,9 @@
1
- import {
2
- findUserWorkspace
3
- } from "./chunk-6K75XXFD.js";
4
1
  import {
5
2
  StorageAdapterFactory
6
3
  } from "./chunk-SHZAQTIT.js";
4
+ import {
5
+ findUserWorkspace
6
+ } from "./chunk-6K75XXFD.js";
7
7
 
8
8
  // src/services/workspaceGraphService.ts
9
9
  function slugify(name) {