@ultrst-armada/kloks 1.5.2 → 1.7.0
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/.krusbl-release-attestation.json +3 -3
- package/package.json +1 -1
- package/packages/backend/dist/{chunk-E72GXBXF.js → chunk-6K75XXFD.js} +9 -200
- package/packages/backend/dist/{chunk-GPXV4GBD.js → chunk-6QTNNZSE.js} +7 -5
- package/packages/backend/dist/{chunk-OZDYAEH4.js → chunk-BI5RDDB4.js} +210 -1
- package/packages/backend/dist/{chunk-DBZVGMJ7.js → chunk-KSZ67VZJ.js} +1 -1
- package/packages/backend/dist/{chunk-VDROUXFT.js → chunk-N4Z57FVR.js} +10 -10
- package/packages/backend/dist/{chunk-3Z7EUZWE.js → chunk-SQGBAWZN.js} +238 -6
- package/packages/backend/dist/chunk-VAFCR2MS.js +203 -0
- package/packages/backend/dist/{chunk-GQUNN7SA.js → chunk-Y3X3H2XX.js} +6 -4
- package/packages/backend/dist/development/index.d.ts +100 -1
- package/packages/backend/dist/development/index.js +15 -1
- package/packages/backend/dist/index.d.ts +2 -2
- package/packages/backend/dist/index.js +39 -213
- package/packages/backend/dist/krnl-services.js +5 -4
- package/packages/backend/dist/services/index.js +3 -2
- package/packages/backend/dist/srkl/index.d.ts +48 -1
- package/packages/backend/dist/srkl/index.js +3 -2
- package/packages/backend/dist/workspace/index.js +3 -2
- package/packages/backend/kloks.manifest.json +52 -1
|
@@ -13,7 +13,7 @@ export { AdaptedStorageConnection, AppAccountManifest, AppServiceDeclaration, CA
|
|
|
13
13
|
export { CompositeBackend, EndpointGenerator, GeneratedEndpointSummary, LOCAL_STORAGE_GRAPHS_PREFIX, LocalService, NodeGraphPersistenceService, NodeGraphValidationResult, RemoteServiceProxy, SaveGraphOptions, UniversalAppEntity, UniversalGraphEdge, UniversalGraphNode, UniversalNodeGraphDocument, UniversalStorageConnection, WorkspaceGraphDocument, WorkspaceGraphSummary, createBackend, createCompositeService, createLocalService, createRemoteService, exportGraphAsJsonFile, nodeGraphPersistence, parseGraphJsonFile, validateGraphDocument, workspaceGraphService } from './services/index.js';
|
|
14
14
|
import { AssetDataType as AssetDataType$1, AssetChannelType as AssetChannelType$1, GraphFolderInfo as GraphFolderInfo$1, GraphAssetItem as GraphAssetItem$1, SpaceNode, NodeConnection, DawProject } from '@ultrst-armada/kloks/state-graph';
|
|
15
15
|
export { AuthServiceDefinition, AuthServiceFacade, ControlPlaneServiceDefinition, ControlPlaneServiceFacade, DatabaseServiceDefinition, DatabaseServiceFacade, GeminiServiceDefinition, GeminiServiceFacade, SrklServiceDefinition, SrklServiceFacade, StorageServiceDefinition, StorageServiceFacade, WorkspaceGraphServiceDefinition, WorkspaceGraphServiceFacade, WorkspaceServiceDefinition, WorkspaceServiceFacade, krnlAuthServiceDefinition, krnlAuthServiceFacade, krnlControlPlaneServiceDefinition, krnlControlPlaneServiceFacade, krnlDatabaseServiceDefinition, krnlDatabaseServiceFacade, krnlGeminiServiceDefinition, krnlGeminiServiceFacade, krnlSrklServiceDefinition, krnlSrklServiceFacade, krnlStorageServiceDefinition, krnlStorageServiceFacade, krnlWorkspaceGraphServiceDefinition, krnlWorkspaceGraphServiceFacade, krnlWorkspaceServiceDefinition, krnlWorkspaceServiceFacade } from './krnl-services.js';
|
|
16
|
-
export { CodeDiagnosticsInput, CodeDiagnosticsResult, CodeDiagnosticsService, CodeValidationInput, CodeValidationResult, CodeValidationRuntime, CodeValidationServiceDefinition, CodeValidationServiceFacade, DevelopmentProvider, DevelopmentRequest, DevelopmentResult, DevelopmentRuntime, DevelopmentServiceContract, DevelopmentServiceDefinition, DevelopmentServiceFacade, DevelopmentTask, GitHubActionsClient, GitHubActionsConfig, GitHubActionsServiceDefinition, GitHubActionsServiceFacade, ValidationDiagnostic, ValidationLayer, WebContainerCommand, WebContainerRunCommandInput, WebContainerRuntime, WebContainerServiceDefinition, WebContainerServiceFacade, WorkflowRun, codeDiagnosticsService, resolveDevelopmentCommand } from './development/index.js';
|
|
16
|
+
export { AgentHarnessProvider, AgentHarnessProviderInfo, AgentHarnessResult, AgentHarnessRunInput, AgentHarnessRuntime, AgentHarnessServiceContract, AgentHarnessServiceDefinition, AgentHarnessServiceFacade, CodeDiagnosticsInput, CodeDiagnosticsResult, CodeDiagnosticsService, CodeValidationInput, CodeValidationResult, CodeValidationRuntime, CodeValidationServiceDefinition, CodeValidationServiceFacade, DevelopmentProvider, DevelopmentRequest, DevelopmentResult, DevelopmentRuntime, DevelopmentServiceContract, DevelopmentServiceDefinition, DevelopmentServiceFacade, DevelopmentTask, GitHubActionsClient, GitHubActionsConfig, GitHubActionsServiceDefinition, GitHubActionsServiceFacade, TYPESCRIPT_LANGUAGE_SERVER_PACKAGE, TYPESCRIPT_LANGUAGE_SERVER_VERSION, TypeScriptLanguageServerNotificationInput, TypeScriptLanguageServerRequestInput, TypeScriptLanguageServerResponse, TypeScriptLanguageServerServiceDefinition, TypeScriptLanguageServerServiceFacade, TypeScriptLanguageServerStartInput, TypeScriptLanguageServerStatus, ValidationDiagnostic, ValidationLayer, WebContainerCommand, WebContainerRunCommandInput, WebContainerRuntime, WebContainerServiceDefinition, WebContainerServiceFacade, WorkflowRun, codeDiagnosticsService, resolveDevelopmentCommand } from './development/index.js';
|
|
17
17
|
export { EndpointDescriptor, IService, ProtocolAdapter, ServiceDefinition } from '@ultrst-armada/krnl';
|
|
18
18
|
import 'react';
|
|
19
19
|
|
|
@@ -291,7 +291,7 @@ declare function listBackblazeBuckets(payload: any, rawUserId?: string, env?: Re
|
|
|
291
291
|
buckets?: any[];
|
|
292
292
|
error?: string;
|
|
293
293
|
}>;
|
|
294
|
-
declare const srklListBackblazeBuckets: (keyId?: string, applicationKey?: string, bucketId?: string, bucketName?: string, userId?: string) => Promise<{
|
|
294
|
+
declare const srklListBackblazeBuckets: (keyId?: string, applicationKey?: string, bucketId?: string, bucketName?: string, userId?: string, accountId?: string) => Promise<{
|
|
295
295
|
success: boolean;
|
|
296
296
|
buckets?: any[];
|
|
297
297
|
error?: string;
|
|
@@ -19,12 +19,17 @@ import {
|
|
|
19
19
|
SrklVaultAccessClient,
|
|
20
20
|
createSrklClient,
|
|
21
21
|
decryptVaultBufferInBrowser,
|
|
22
|
+
getPrimarySrklDeploymentUrl as getPrimarySrklDeploymentUrl2,
|
|
23
|
+
getSrklAccounts as getSrklAccounts2,
|
|
24
|
+
getSrklStatus,
|
|
22
25
|
globalCredentialRegistry,
|
|
23
26
|
hexToBytes,
|
|
27
|
+
listBackblazeBuckets,
|
|
28
|
+
srklListBackblazeBuckets as srklListBackblazeBuckets2,
|
|
24
29
|
srklService,
|
|
25
30
|
syncSrklAccounts,
|
|
26
31
|
useSrklServices
|
|
27
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-BI5RDDB4.js";
|
|
28
33
|
import "./chunk-LS3HWJBX.js";
|
|
29
34
|
import {
|
|
30
35
|
RemoteWorkspaceService,
|
|
@@ -41,7 +46,7 @@ import {
|
|
|
41
46
|
setWorkingWorkspaceConfig,
|
|
42
47
|
syncWorkspace,
|
|
43
48
|
workingWorkspaceService
|
|
44
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-6QTNNZSE.js";
|
|
45
50
|
import {
|
|
46
51
|
AuthServiceDefinition,
|
|
47
52
|
AuthServiceFacade,
|
|
@@ -75,15 +80,15 @@ import {
|
|
|
75
80
|
krnlWorkspaceGraphServiceFacade,
|
|
76
81
|
krnlWorkspaceServiceDefinition,
|
|
77
82
|
krnlWorkspaceServiceFacade
|
|
78
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-Y3X3H2XX.js";
|
|
79
84
|
import {
|
|
80
85
|
workspaceGraphService
|
|
81
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-KSZ67VZJ.js";
|
|
82
87
|
import {
|
|
83
88
|
getPrimarySrklDeploymentUrl,
|
|
84
89
|
getSrklAccounts,
|
|
85
90
|
srklListBackblazeBuckets
|
|
86
|
-
} from "./chunk-
|
|
91
|
+
} from "./chunk-N4Z57FVR.js";
|
|
87
92
|
import {
|
|
88
93
|
BackblazeB2Adapter,
|
|
89
94
|
BaseStorageAdapter,
|
|
@@ -111,24 +116,17 @@ import {
|
|
|
111
116
|
sanitizeWorkspaceName
|
|
112
117
|
} from "./chunk-FZKBTF34.js";
|
|
113
118
|
import {
|
|
114
|
-
b2DeleteFileVersion,
|
|
115
|
-
b2DeleteFolder,
|
|
116
|
-
b2ListBuckets as b2ListBuckets2,
|
|
117
|
-
cleanDbUrl,
|
|
118
119
|
createWorkspace,
|
|
119
120
|
deleteWorkspace,
|
|
120
121
|
deleteWorkspaceFile,
|
|
121
122
|
deleteWorkspaceFolder,
|
|
122
123
|
findUserWorkspace,
|
|
123
|
-
getB2BucketId,
|
|
124
|
-
getUnifiedDbUrl,
|
|
125
124
|
getWorkspaceFolderPrefix,
|
|
126
125
|
getWorkspaceStorageDetails,
|
|
127
126
|
getWorkspaces,
|
|
128
127
|
isB2Workspace,
|
|
129
128
|
listWorkspaceFiles,
|
|
130
129
|
loadWorkspaceData,
|
|
131
|
-
queryUnifiedDb,
|
|
132
130
|
readWorkspaceFile,
|
|
133
131
|
renameAppInWorkspaceData,
|
|
134
132
|
resolveWorkspaceConnection,
|
|
@@ -138,13 +136,26 @@ import {
|
|
|
138
136
|
syncWorkspaceDeleteToBucket,
|
|
139
137
|
updateWorkspace,
|
|
140
138
|
writeWorkspaceFile
|
|
141
|
-
} from "./chunk-
|
|
139
|
+
} from "./chunk-6K75XXFD.js";
|
|
140
|
+
import {
|
|
141
|
+
b2DeleteFileVersion,
|
|
142
|
+
b2DeleteFolder,
|
|
143
|
+
cleanDbUrl,
|
|
144
|
+
getB2BucketId,
|
|
145
|
+
getUnifiedDbUrl,
|
|
146
|
+
queryUnifiedDb
|
|
147
|
+
} from "./chunk-VAFCR2MS.js";
|
|
142
148
|
import {
|
|
143
149
|
BaseApiRoute,
|
|
144
150
|
createSSEResponse,
|
|
145
151
|
withAuth,
|
|
146
152
|
withCors
|
|
147
153
|
} from "./chunk-TWCEVES2.js";
|
|
154
|
+
import {
|
|
155
|
+
BackendProvider,
|
|
156
|
+
useBackend,
|
|
157
|
+
useBackendClient
|
|
158
|
+
} from "./chunk-G3ZOSXUR.js";
|
|
148
159
|
import {
|
|
149
160
|
AdminGuard,
|
|
150
161
|
BaseAccountProvider,
|
|
@@ -157,11 +168,6 @@ import {
|
|
|
157
168
|
loginSystemUser,
|
|
158
169
|
resolveUserFromToken
|
|
159
170
|
} from "./chunk-ZDH4XI7W.js";
|
|
160
|
-
import {
|
|
161
|
-
BackendProvider,
|
|
162
|
-
useBackend,
|
|
163
|
-
useBackendClient
|
|
164
|
-
} from "./chunk-G3ZOSXUR.js";
|
|
165
171
|
import {
|
|
166
172
|
BackendRegistry,
|
|
167
173
|
ConcurrencyConflictError,
|
|
@@ -195,6 +201,9 @@ import {
|
|
|
195
201
|
resolveSystemDatabaseClusterNodes
|
|
196
202
|
} from "./chunk-RCCQ7IRM.js";
|
|
197
203
|
import {
|
|
204
|
+
AgentHarnessRuntime,
|
|
205
|
+
AgentHarnessServiceDefinition,
|
|
206
|
+
AgentHarnessServiceFacade,
|
|
198
207
|
CodeDiagnosticsService,
|
|
199
208
|
CodeValidationRuntime,
|
|
200
209
|
CodeValidationServiceDefinition,
|
|
@@ -205,12 +214,16 @@ import {
|
|
|
205
214
|
GitHubActionsClient,
|
|
206
215
|
GitHubActionsServiceDefinition,
|
|
207
216
|
GitHubActionsServiceFacade,
|
|
217
|
+
TYPESCRIPT_LANGUAGE_SERVER_PACKAGE,
|
|
218
|
+
TYPESCRIPT_LANGUAGE_SERVER_VERSION,
|
|
219
|
+
TypeScriptLanguageServerServiceDefinition,
|
|
220
|
+
TypeScriptLanguageServerServiceFacade,
|
|
208
221
|
WebContainerRuntime,
|
|
209
222
|
WebContainerServiceDefinition,
|
|
210
223
|
WebContainerServiceFacade,
|
|
211
224
|
codeDiagnosticsService,
|
|
212
225
|
resolveDevelopmentCommand
|
|
213
|
-
} from "./chunk-
|
|
226
|
+
} from "./chunk-SQGBAWZN.js";
|
|
214
227
|
import "./chunk-TY32TUNI.js";
|
|
215
228
|
|
|
216
229
|
// src/data/BaseDataProvider.ts
|
|
@@ -560,200 +573,6 @@ var SrklStorageService = class {
|
|
|
560
573
|
}
|
|
561
574
|
};
|
|
562
575
|
|
|
563
|
-
// src/core/srklCore.ts
|
|
564
|
-
var cachedSrklUrl = null;
|
|
565
|
-
async function getPrimarySrklDeploymentUrl2(env) {
|
|
566
|
-
if (cachedSrklUrl && Date.now() < cachedSrklUrl.expiresAt) return cachedSrklUrl.url;
|
|
567
|
-
try {
|
|
568
|
-
const res = await queryUnifiedDb(
|
|
569
|
-
`SELECT url FROM "ultrst-srkl-deployments" WHERE is_active = true ORDER BY is_primary DESC, priority DESC, created_at ASC LIMIT 1`,
|
|
570
|
-
[],
|
|
571
|
-
env
|
|
572
|
-
);
|
|
573
|
-
if (res.rows.length > 0 && res.rows[0].url) {
|
|
574
|
-
const url = res.rows[0].url.trim().replace(/\/+$/, "");
|
|
575
|
-
cachedSrklUrl = { url, expiresAt: Date.now() + 10 * 60 * 1e3 };
|
|
576
|
-
return url;
|
|
577
|
-
}
|
|
578
|
-
} catch (err) {
|
|
579
|
-
console.warn("[SrklCore] Deployment DB lookup fallback:", err.message);
|
|
580
|
-
}
|
|
581
|
-
const fallback = "https://srkl-engine.vercel.app";
|
|
582
|
-
cachedSrklUrl = { url: fallback, expiresAt: Date.now() + 10 * 60 * 1e3 };
|
|
583
|
-
return fallback;
|
|
584
|
-
}
|
|
585
|
-
function deduplicateAccounts(items) {
|
|
586
|
-
const seen = /* @__PURE__ */ new Set();
|
|
587
|
-
const out = [];
|
|
588
|
-
for (const a of items) {
|
|
589
|
-
if (!a) continue;
|
|
590
|
-
const creds = a.credentials || a.metadata?.credentials || a;
|
|
591
|
-
const keyId = (creds.keyId || creds.b2KeyId || creds.accessKeyId || "").trim();
|
|
592
|
-
const token = (creds.token || creds.apiToken || creds.applicationKey || creds.b2ApplicationKey || "").trim();
|
|
593
|
-
const sId = (a.serviceId || a.provider || "").toLowerCase().trim();
|
|
594
|
-
const sig = keyId ? `key:${keyId}` : token ? `tok:${sId}:${token.slice(-12)}` : a.id ? `id:${a.id}` : `nam:${sId}:${a.name || a.label}`;
|
|
595
|
-
if (!seen.has(sig)) {
|
|
596
|
-
seen.add(sig);
|
|
597
|
-
if (a.id) seen.add(`id:${a.id}`);
|
|
598
|
-
out.push(a);
|
|
599
|
-
}
|
|
600
|
-
}
|
|
601
|
-
return out;
|
|
602
|
-
}
|
|
603
|
-
async function getSrklAccounts2(userId, service, env) {
|
|
604
|
-
const rawAccounts = [];
|
|
605
|
-
const srklUrl = await getPrimarySrklDeploymentUrl2(env);
|
|
606
|
-
if (userId) {
|
|
607
|
-
try {
|
|
608
|
-
const uRes = await queryUnifiedDb(
|
|
609
|
-
`SELECT app_profiles FROM "ultrst-users" WHERE id = $1 OR email = $1 LIMIT 1`,
|
|
610
|
-
[userId],
|
|
611
|
-
env
|
|
612
|
-
);
|
|
613
|
-
if (uRes.rows.length > 0) {
|
|
614
|
-
const p = typeof uRes.rows[0].app_profiles === "string" ? JSON.parse(uRes.rows[0].app_profiles) : uRes.rows[0].app_profiles || {};
|
|
615
|
-
const conns = [
|
|
616
|
-
...p.srkl?.storage_connections || [],
|
|
617
|
-
...p.depm?.storage_connections || [],
|
|
618
|
-
...p.qwnsr?.storage_connections || [],
|
|
619
|
-
...p.loky?.storage_connections || []
|
|
620
|
-
];
|
|
621
|
-
for (const c of conns) {
|
|
622
|
-
if (!service || (c.provider || "").toLowerCase().includes(service.toLowerCase())) {
|
|
623
|
-
rawAccounts.push({
|
|
624
|
-
id: c.id,
|
|
625
|
-
name: c.label || c.name || "Backblaze B2 Account",
|
|
626
|
-
provider: c.provider === "backblaze_b2" ? "backblaze" : c.provider,
|
|
627
|
-
serviceId: "backblaze",
|
|
628
|
-
category: "storage",
|
|
629
|
-
groupIds: c.groupIds || (c.groupId ? [c.groupId] : []),
|
|
630
|
-
credentials: {
|
|
631
|
-
keyId: c.b2KeyId || c.keyId || c.accessKeyId || "",
|
|
632
|
-
applicationKey: c.b2ApplicationKey || c.applicationKey || c.secretAccessKey || "",
|
|
633
|
-
bucketName: c.b2BucketName || c.bucketName || "",
|
|
634
|
-
bucketId: c.b2BucketId || c.bucketId || "",
|
|
635
|
-
endpoint: c.b2Endpoint || c.endpoint || "s3.eu-central-003.backblazeb2.com",
|
|
636
|
-
region: c.b2Region || c.region || "eu-central-003"
|
|
637
|
-
}
|
|
638
|
-
});
|
|
639
|
-
}
|
|
640
|
-
}
|
|
641
|
-
}
|
|
642
|
-
} catch (err) {
|
|
643
|
-
console.warn("[SrklCore] Storage connection DB lookup fallback:", err.message);
|
|
644
|
-
}
|
|
645
|
-
}
|
|
646
|
-
try {
|
|
647
|
-
const fs9 = await import("fs/promises");
|
|
648
|
-
const path9 = await import("path");
|
|
649
|
-
const accPath = path9.resolve(".skipo/accounts.json");
|
|
650
|
-
const raw = await fs9.readFile(accPath, "utf-8");
|
|
651
|
-
const localUsers = JSON.parse(raw);
|
|
652
|
-
for (const u of Object.values(localUsers)) {
|
|
653
|
-
const conns = Array.isArray(u.storage_connections) ? u.storage_connections : [];
|
|
654
|
-
for (const c of conns) {
|
|
655
|
-
if (!service || (c.provider || "").toLowerCase().includes(service.toLowerCase())) {
|
|
656
|
-
rawAccounts.push({
|
|
657
|
-
id: c.id,
|
|
658
|
-
name: c.label || c.name || "Local B2 Account",
|
|
659
|
-
provider: "backblaze",
|
|
660
|
-
serviceId: "backblaze",
|
|
661
|
-
credentials: {
|
|
662
|
-
keyId: c.b2KeyId || c.keyId || "",
|
|
663
|
-
applicationKey: c.b2ApplicationKey || c.applicationKey || "",
|
|
664
|
-
bucketName: c.b2BucketName || c.bucketName || "",
|
|
665
|
-
bucketId: c.b2BucketId || "",
|
|
666
|
-
endpoint: c.b2Endpoint || "s3.eu-central-003.backblazeb2.com",
|
|
667
|
-
region: c.b2Region || "eu-central-003"
|
|
668
|
-
}
|
|
669
|
-
});
|
|
670
|
-
}
|
|
671
|
-
}
|
|
672
|
-
}
|
|
673
|
-
} catch {
|
|
674
|
-
}
|
|
675
|
-
let fetchError;
|
|
676
|
-
try {
|
|
677
|
-
const srklRes = await fetch(`${srklUrl}/api/srkl/accounts?service=${service || "backblaze"}`, {
|
|
678
|
-
signal: AbortSignal.timeout(5e3)
|
|
679
|
-
});
|
|
680
|
-
if (srklRes.ok) {
|
|
681
|
-
const sData = await srklRes.json();
|
|
682
|
-
if (Array.isArray(sData.accounts)) {
|
|
683
|
-
for (const sa of sData.accounts) {
|
|
684
|
-
rawAccounts.push(sa);
|
|
685
|
-
}
|
|
686
|
-
}
|
|
687
|
-
}
|
|
688
|
-
} catch (err) {
|
|
689
|
-
fetchError = err.message;
|
|
690
|
-
}
|
|
691
|
-
const accounts = deduplicateAccounts(rawAccounts);
|
|
692
|
-
return {
|
|
693
|
-
success: true,
|
|
694
|
-
deploymentUrl: srklUrl,
|
|
695
|
-
userId,
|
|
696
|
-
count: accounts.length,
|
|
697
|
-
accounts,
|
|
698
|
-
error: accounts.length > 0 ? void 0 : fetchError
|
|
699
|
-
};
|
|
700
|
-
}
|
|
701
|
-
async function listBackblazeBuckets(payload, rawUserId, env) {
|
|
702
|
-
try {
|
|
703
|
-
const userId = rawUserId || payload?.userId || payload?.credentials?.userId || "";
|
|
704
|
-
const creds = payload?.credentials || {};
|
|
705
|
-
let keyId = (payload?.keyId || payload?.b2KeyId || payload?.accessKeyId || creds.keyId || creds.b2KeyId || creds.accessKeyId || "").trim();
|
|
706
|
-
let appKey = (payload?.applicationKey || payload?.b2ApplicationKey || payload?.appKey || payload?.secretAccessKey || creds.applicationKey || creds.b2ApplicationKey || creds.appKey || creds.secretAccessKey || "").trim();
|
|
707
|
-
const bucketId = (payload?.bucketId || creds.bucketId || "").trim();
|
|
708
|
-
const bucketName = (payload?.bucketName || payload?.b2BucketName || creds.bucketName || creds.b2BucketName || "").trim();
|
|
709
|
-
if ((!keyId || !appKey) && (payload?.accountId || payload?.id)) {
|
|
710
|
-
const srkl = await getSrklAccounts2(userId, "backblaze", env);
|
|
711
|
-
const matched = srkl.accounts?.find((a) => a.id === (payload.accountId || payload.id));
|
|
712
|
-
if (matched?.credentials) {
|
|
713
|
-
keyId = (matched.credentials.keyId || matched.credentials.b2KeyId || matched.credentials.accessKeyId || keyId).trim();
|
|
714
|
-
appKey = (matched.credentials.applicationKey || matched.credentials.b2ApplicationKey || matched.credentials.appKey || matched.credentials.secretAccessKey || appKey).trim();
|
|
715
|
-
}
|
|
716
|
-
}
|
|
717
|
-
if (!keyId || !appKey) return { success: false, error: "Backblaze credentials (Key ID and Application Key) required." };
|
|
718
|
-
try {
|
|
719
|
-
const buckets = await b2ListBuckets2(keyId, appKey, bucketId || void 0, bucketName || void 0);
|
|
720
|
-
if (Array.isArray(buckets) && buckets.length > 0) return { success: true, buckets };
|
|
721
|
-
} catch (err) {
|
|
722
|
-
console.warn("[SrklCore] Direct B2 bucket query failed, trying SRKL fallback:", err.message);
|
|
723
|
-
}
|
|
724
|
-
const srklUrl = await getPrimarySrklDeploymentUrl2(env);
|
|
725
|
-
const srklRes = await fetch(`${srklUrl}/api/backblaze/buckets`, {
|
|
726
|
-
method: "POST",
|
|
727
|
-
headers: { "Content-Type": "application/json", "x-user-id": userId || "" },
|
|
728
|
-
body: JSON.stringify({ keyId, applicationKey: appKey, bucketId: bucketId || void 0 }),
|
|
729
|
-
signal: AbortSignal.timeout(6e3)
|
|
730
|
-
});
|
|
731
|
-
if (srklRes.ok) {
|
|
732
|
-
const data = await srklRes.json();
|
|
733
|
-
if (data.success && Array.isArray(data.buckets)) return { success: true, buckets: data.buckets };
|
|
734
|
-
}
|
|
735
|
-
return { success: true, buckets: [] };
|
|
736
|
-
} catch (err) {
|
|
737
|
-
return { success: false, error: err.message || "Failed to list Backblaze buckets" };
|
|
738
|
-
}
|
|
739
|
-
}
|
|
740
|
-
var srklListBackblazeBuckets2 = (keyId, applicationKey, bucketId, bucketName, userId) => listBackblazeBuckets({ keyId, applicationKey, bucketId, bucketName }, userId);
|
|
741
|
-
async function getSrklStatus(env) {
|
|
742
|
-
const srklUrl = await getPrimarySrklDeploymentUrl2(env);
|
|
743
|
-
const start = Date.now();
|
|
744
|
-
try {
|
|
745
|
-
const resp = await fetch(`${srklUrl}/api/ecosystem/health`, { signal: AbortSignal.timeout(5e3) });
|
|
746
|
-
const latencyMs = Date.now() - start;
|
|
747
|
-
if (resp.ok) {
|
|
748
|
-
const data = await resp.json().catch(() => ({}));
|
|
749
|
-
return { success: true, deploymentUrl: srklUrl, online: true, latencyMs, details: data };
|
|
750
|
-
}
|
|
751
|
-
return { success: false, deploymentUrl: srklUrl, online: false, status: resp.status, latencyMs };
|
|
752
|
-
} catch (err) {
|
|
753
|
-
return { success: false, deploymentUrl: srklUrl, online: false, error: err.message, latencyMs: Date.now() - start };
|
|
754
|
-
}
|
|
755
|
-
}
|
|
756
|
-
|
|
757
576
|
// src/core/credentialVaultCore.ts
|
|
758
577
|
var MANIFEST_PATH = "credentials/manifest.json";
|
|
759
578
|
var SECRET_PREFIX = "credentials/secrets";
|
|
@@ -4368,6 +4187,9 @@ function tryResolveSystemDatabaseUrl(env = typeof process !== "undefined" ? proc
|
|
|
4368
4187
|
}
|
|
4369
4188
|
export {
|
|
4370
4189
|
AdminGuard,
|
|
4190
|
+
AgentHarnessRuntime,
|
|
4191
|
+
AgentHarnessServiceDefinition,
|
|
4192
|
+
AgentHarnessServiceFacade,
|
|
4371
4193
|
AuditLogger,
|
|
4372
4194
|
AuthServiceDefinition,
|
|
4373
4195
|
AuthServiceFacade,
|
|
@@ -4445,6 +4267,10 @@ export {
|
|
|
4445
4267
|
StorageServiceFacade,
|
|
4446
4268
|
SupabaseStorageAdapter,
|
|
4447
4269
|
SyncEngine,
|
|
4270
|
+
TYPESCRIPT_LANGUAGE_SERVER_PACKAGE,
|
|
4271
|
+
TYPESCRIPT_LANGUAGE_SERVER_VERSION,
|
|
4272
|
+
TypeScriptLanguageServerServiceDefinition,
|
|
4273
|
+
TypeScriptLanguageServerServiceFacade,
|
|
4448
4274
|
VercelResourceFetcher,
|
|
4449
4275
|
WORKSPACE_ASSETS_ROOT,
|
|
4450
4276
|
WORKSPACE_ROOT,
|
|
@@ -31,13 +31,14 @@ import {
|
|
|
31
31
|
krnlWorkspaceGraphServiceFacade,
|
|
32
32
|
krnlWorkspaceServiceDefinition,
|
|
33
33
|
krnlWorkspaceServiceFacade
|
|
34
|
-
} from "./chunk-
|
|
35
|
-
import "./chunk-
|
|
36
|
-
import "./chunk-
|
|
34
|
+
} from "./chunk-Y3X3H2XX.js";
|
|
35
|
+
import "./chunk-KSZ67VZJ.js";
|
|
36
|
+
import "./chunk-N4Z57FVR.js";
|
|
37
37
|
import "./chunk-J2J24JVC.js";
|
|
38
38
|
import "./chunk-4QEMALXF.js";
|
|
39
39
|
import "./chunk-FZKBTF34.js";
|
|
40
|
-
import "./chunk-
|
|
40
|
+
import "./chunk-6K75XXFD.js";
|
|
41
|
+
import "./chunk-VAFCR2MS.js";
|
|
41
42
|
import "./chunk-ZDH4XI7W.js";
|
|
42
43
|
import "./chunk-TY32TUNI.js";
|
|
43
44
|
export {
|
|
@@ -14,9 +14,10 @@ import {
|
|
|
14
14
|
} from "../chunk-RBF2OGMC.js";
|
|
15
15
|
import {
|
|
16
16
|
workspaceGraphService
|
|
17
|
-
} from "../chunk-
|
|
17
|
+
} from "../chunk-KSZ67VZJ.js";
|
|
18
18
|
import "../chunk-J2J24JVC.js";
|
|
19
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-6K75XXFD.js";
|
|
20
|
+
import "../chunk-VAFCR2MS.js";
|
|
20
21
|
import "../chunk-TY32TUNI.js";
|
|
21
22
|
export {
|
|
22
23
|
CompositeBackend,
|
|
@@ -187,7 +187,7 @@ declare function getSrklAccounts(userId: string, service?: string, queryDb?: (sq
|
|
|
187
187
|
}>;
|
|
188
188
|
declare function srklListBackblazeBuckets(keyId?: string, applicationKey?: string, _bucketId?: string, _bucketName?: string, userId?: string, queryDb?: (sql: string, params?: unknown[]) => Promise<{
|
|
189
189
|
rows: any[];
|
|
190
|
-
}
|
|
190
|
+
}>, accountId?: string): Promise<{
|
|
191
191
|
success: boolean;
|
|
192
192
|
buckets: any[];
|
|
193
193
|
error?: string;
|
|
@@ -293,6 +293,53 @@ declare const srklService: {
|
|
|
293
293
|
supportedEngines: string[];
|
|
294
294
|
version: string;
|
|
295
295
|
};
|
|
296
|
+
getSrklAccounts: (userId?: string, serviceName?: string, env?: any) => Promise<{
|
|
297
|
+
success: boolean;
|
|
298
|
+
deploymentUrl: string;
|
|
299
|
+
userId?: string;
|
|
300
|
+
count: number;
|
|
301
|
+
accounts: any[];
|
|
302
|
+
error?: string;
|
|
303
|
+
}>;
|
|
304
|
+
getAccounts: (userId?: string, serviceName?: string, env?: any) => Promise<{
|
|
305
|
+
success: boolean;
|
|
306
|
+
deploymentUrl: string;
|
|
307
|
+
userId?: string;
|
|
308
|
+
count: number;
|
|
309
|
+
accounts: any[];
|
|
310
|
+
error?: string;
|
|
311
|
+
}>;
|
|
312
|
+
listBackblazeBuckets: (payload: any, userId?: string, env?: any) => Promise<{
|
|
313
|
+
success: boolean;
|
|
314
|
+
buckets?: any[];
|
|
315
|
+
error?: string;
|
|
316
|
+
}>;
|
|
317
|
+
getSrklStatus: (env?: any) => Promise<{
|
|
318
|
+
success: boolean;
|
|
319
|
+
deploymentUrl: string;
|
|
320
|
+
online: boolean;
|
|
321
|
+
latencyMs: number;
|
|
322
|
+
details: any;
|
|
323
|
+
status?: undefined;
|
|
324
|
+
error?: undefined;
|
|
325
|
+
} | {
|
|
326
|
+
success: boolean;
|
|
327
|
+
deploymentUrl: string;
|
|
328
|
+
online: boolean;
|
|
329
|
+
status: number;
|
|
330
|
+
latencyMs: number;
|
|
331
|
+
details?: undefined;
|
|
332
|
+
error?: undefined;
|
|
333
|
+
} | {
|
|
334
|
+
success: boolean;
|
|
335
|
+
deploymentUrl: string;
|
|
336
|
+
online: boolean;
|
|
337
|
+
error: any;
|
|
338
|
+
latencyMs: number;
|
|
339
|
+
details?: undefined;
|
|
340
|
+
status?: undefined;
|
|
341
|
+
}>;
|
|
342
|
+
getDeploymentUrl: (env?: any) => Promise<string>;
|
|
296
343
|
};
|
|
297
344
|
|
|
298
345
|
export { type AdaptedStorageConnection, type AppAccountManifest, type AppServiceDeclaration, CANONICAL_SRKL_URL, type CredentialRegistryMap, type EcosystemAccount, type EcosystemAccountsRequest, type EcosystemAccountsResponse, type EcosystemServiceCategory, type KeyMaterial, type ServiceAccountEntry, SrklClient, type SrklClientOptions, SrklCredentialRegistry, type SrklEcosystemQueryOptions, type SrklEcosystemResponse, type SrklServiceAccount, SrklVaultAccessClient, type SrklVaultAccessResponse, type UseSrklServicesOptions, type UseSrklServicesResult, type VaultAccessClientOptions, createSrklClient, decryptVaultBufferInBrowser, getPrimarySrklDeploymentUrl, getSrklAccounts, globalCredentialRegistry, hexToBytes, srklListBackblazeBuckets, srklService, syncSrklAccounts, useSrklServices };
|
|
@@ -10,13 +10,14 @@ import {
|
|
|
10
10
|
srklService,
|
|
11
11
|
syncSrklAccounts,
|
|
12
12
|
useSrklServices
|
|
13
|
-
} from "../chunk-
|
|
13
|
+
} from "../chunk-BI5RDDB4.js";
|
|
14
14
|
import {
|
|
15
15
|
getPrimarySrklDeploymentUrl,
|
|
16
16
|
getSrklAccounts,
|
|
17
17
|
srklListBackblazeBuckets
|
|
18
|
-
} from "../chunk-
|
|
18
|
+
} from "../chunk-N4Z57FVR.js";
|
|
19
19
|
import "../chunk-4QEMALXF.js";
|
|
20
|
+
import "../chunk-VAFCR2MS.js";
|
|
20
21
|
export {
|
|
21
22
|
CANONICAL_SRKL_URL,
|
|
22
23
|
SrklClient,
|
|
@@ -6,12 +6,13 @@ import {
|
|
|
6
6
|
WorkspaceFS,
|
|
7
7
|
remoteWorkspaceService,
|
|
8
8
|
workingWorkspaceService
|
|
9
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-6QTNNZSE.js";
|
|
10
10
|
import {
|
|
11
11
|
formatCanonicalWorkspaceFolderName,
|
|
12
12
|
sanitizeWorkspaceName
|
|
13
13
|
} from "../chunk-FZKBTF34.js";
|
|
14
|
-
import "../chunk-
|
|
14
|
+
import "../chunk-6K75XXFD.js";
|
|
15
|
+
import "../chunk-VAFCR2MS.js";
|
|
15
16
|
export {
|
|
16
17
|
RemoteWorkspaceService,
|
|
17
18
|
SyncEngine,
|
|
@@ -266,7 +266,7 @@
|
|
|
266
266
|
"id": "code-validation",
|
|
267
267
|
"name": "Code Validation & Diagnostics",
|
|
268
268
|
"version": "1.0.0",
|
|
269
|
-
"description": "Shared syntax, lint, test, build, KrnlTS, FrnlTS and Law L9 validation pipeline backed by the canonical WebContainer runtime.",
|
|
269
|
+
"description": "Shared syntax, lint, test, build, KrnlTS, FrnlTS and Law L9 validation pipeline backed by the canonical WebContainer runtime; diagnostics are consumable by IDEs and agents.",
|
|
270
270
|
"backend": {
|
|
271
271
|
"package": "@ultrst-armada/kloks",
|
|
272
272
|
"subpath": "development",
|
|
@@ -313,6 +313,57 @@
|
|
|
313
313
|
"dependencies": [
|
|
314
314
|
"web-container"
|
|
315
315
|
]
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
"id": "typescript-language-server",
|
|
319
|
+
"name": "TypeScript Language Server",
|
|
320
|
+
"version": "1.0.0",
|
|
321
|
+
"description": "Reusable TypeScript Language Server Protocol service provisioned into a development runtime and consumable by IDEs and agents.",
|
|
322
|
+
"backend": {
|
|
323
|
+
"package": "@ultrst-armada/kloks",
|
|
324
|
+
"subpath": "development",
|
|
325
|
+
"export": "TypeScriptLanguageServerServiceFacade",
|
|
326
|
+
"facade": "TypeScriptLanguageServerServiceFacade"
|
|
327
|
+
},
|
|
328
|
+
"modes": [
|
|
329
|
+
"fullstack"
|
|
330
|
+
],
|
|
331
|
+
"targets": {
|
|
332
|
+
"backend": [
|
|
333
|
+
"App.main-content"
|
|
334
|
+
],
|
|
335
|
+
"frontend": [
|
|
336
|
+
"App.main-content"
|
|
337
|
+
]
|
|
338
|
+
},
|
|
339
|
+
"dependencies": [
|
|
340
|
+
"web-container"
|
|
341
|
+
]
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
"id": "agent-harness",
|
|
345
|
+
"name": "Agent Harness",
|
|
346
|
+
"version": "1.0.0",
|
|
347
|
+
"description": "Provider-neutral agent harness service with DeepSeek Harness execution and pluggable OpenAI Agents SDK and Google ADK providers.",
|
|
348
|
+
"backend": {
|
|
349
|
+
"package": "@ultrst-armada/kloks",
|
|
350
|
+
"subpath": "development",
|
|
351
|
+
"export": "AgentHarnessServiceFacade",
|
|
352
|
+
"facade": "AgentHarnessServiceFacade"
|
|
353
|
+
},
|
|
354
|
+
"modes": [
|
|
355
|
+
"backend",
|
|
356
|
+
"fullstack"
|
|
357
|
+
],
|
|
358
|
+
"targets": {
|
|
359
|
+
"backend": [
|
|
360
|
+
"BackendFacade.services"
|
|
361
|
+
],
|
|
362
|
+
"frontend": [
|
|
363
|
+
"App.main-content"
|
|
364
|
+
]
|
|
365
|
+
},
|
|
366
|
+
"dependencies": []
|
|
316
367
|
}
|
|
317
368
|
]
|
|
318
369
|
}
|