@semiont/core 0.5.4 → 0.5.5
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/config/node-config-loader.d.ts +615 -4
- package/dist/index.d.ts +6623 -59
- package/package.json +4 -2
- package/dist/annotation-assembly.d.ts +0 -54
- package/dist/annotation-assembly.d.ts.map +0 -1
- package/dist/annotation-types.d.ts +0 -30
- package/dist/annotation-types.d.ts.map +0 -1
- package/dist/annotation-utils.d.ts +0 -43
- package/dist/annotation-utils.d.ts.map +0 -1
- package/dist/auth-types.d.ts +0 -8
- package/dist/auth-types.d.ts.map +0 -1
- package/dist/branded-types.d.ts +0 -70
- package/dist/branded-types.d.ts.map +0 -1
- package/dist/bridged-channels.d.ts +0 -18
- package/dist/bridged-channels.d.ts.map +0 -1
- package/dist/bus-log.d.ts +0 -25
- package/dist/bus-log.d.ts.map +0 -1
- package/dist/bus-protocol.d.ts +0 -510
- package/dist/bus-protocol.d.ts.map +0 -1
- package/dist/config/config.types.d.ts +0 -563
- package/dist/config/config.types.d.ts.map +0 -1
- package/dist/config/configuration-error.d.ts +0 -17
- package/dist/config/configuration-error.d.ts.map +0 -1
- package/dist/config/environment-validator.d.ts +0 -28
- package/dist/config/environment-validator.d.ts.map +0 -1
- package/dist/config/node-config-loader.d.ts.map +0 -1
- package/dist/config/platform-types.d.ts +0 -26
- package/dist/config/platform-types.d.ts.map +0 -1
- package/dist/config/toml-loader.d.ts +0 -59
- package/dist/config/toml-loader.d.ts.map +0 -1
- package/dist/did-utils.d.ts +0 -76
- package/dist/did-utils.d.ts.map +0 -1
- package/dist/errors.d.ts +0 -48
- package/dist/errors.d.ts.map +0 -1
- package/dist/event-base.d.ts +0 -70
- package/dist/event-base.d.ts.map +0 -1
- package/dist/event-bus.d.ts +0 -141
- package/dist/event-bus.d.ts.map +0 -1
- package/dist/event-utils.d.ts +0 -43
- package/dist/event-utils.d.ts.map +0 -1
- package/dist/fuzzy-anchor.d.ts +0 -81
- package/dist/fuzzy-anchor.d.ts.map +0 -1
- package/dist/graph.d.ts +0 -44
- package/dist/graph.d.ts.map +0 -1
- package/dist/id-generation.d.ts +0 -8
- package/dist/id-generation.d.ts.map +0 -1
- package/dist/identifiers.d.ts +0 -24
- package/dist/identifiers.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/locales.d.ts +0 -31
- package/dist/locales.d.ts.map +0 -1
- package/dist/logger.d.ts +0 -56
- package/dist/logger.d.ts.map +0 -1
- package/dist/mime-utils.d.ts +0 -38
- package/dist/mime-utils.d.ts.map +0 -1
- package/dist/operators/burst-buffer.d.ts +0 -61
- package/dist/operators/burst-buffer.d.ts.map +0 -1
- package/dist/payload-types.d.ts +0 -16
- package/dist/payload-types.d.ts.map +0 -1
- package/dist/persisted-events.d.ts +0 -76
- package/dist/persisted-events.d.ts.map +0 -1
- package/dist/project.d.ts +0 -69
- package/dist/project.d.ts.map +0 -1
- package/dist/resource-types.d.ts +0 -15
- package/dist/resource-types.d.ts.map +0 -1
- package/dist/resource-utils.d.ts +0 -97
- package/dist/resource-utils.d.ts.map +0 -1
- package/dist/serialize-per-key.d.ts +0 -51
- package/dist/serialize-per-key.d.ts.map +0 -1
- package/dist/svg-utils.d.ts +0 -44
- package/dist/svg-utils.d.ts.map +0 -1
- package/dist/tag-schemas.d.ts +0 -27
- package/dist/tag-schemas.d.ts.map +0 -1
- package/dist/text-context.d.ts +0 -85
- package/dist/text-context.d.ts.map +0 -1
- package/dist/text-encoding.d.ts +0 -34
- package/dist/text-encoding.d.ts.map +0 -1
- package/dist/transport.d.ts +0 -274
- package/dist/transport.d.ts.map +0 -1
- package/dist/type-guards.d.ts +0 -44
- package/dist/type-guards.d.ts.map +0 -1
- package/dist/types.d.ts +0 -3517
- package/dist/types.d.ts.map +0 -1
- package/dist/validation.d.ts +0 -57
- package/dist/validation.d.ts.map +0 -1
- package/dist/web-annotation-utils.d.ts +0 -154
- package/dist/web-annotation-utils.d.ts.map +0 -1
|
@@ -1,5 +1,615 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
3
|
+
* via the `definition` "PlatformType".
|
|
4
|
+
*/
|
|
5
|
+
type PlatformType = 'posix' | 'container' | 'aws' | 'external';
|
|
6
|
+
/**
|
|
7
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
8
|
+
* via the `definition` "GraphDatabaseType".
|
|
9
|
+
*/
|
|
10
|
+
type GraphDatabaseType = 'neo4j' | 'janusgraph' | 'neptune' | 'memory';
|
|
11
|
+
/**
|
|
12
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
13
|
+
* via the `definition` "GraphServiceConfig".
|
|
14
|
+
*/
|
|
15
|
+
type GraphServiceConfig = {
|
|
16
|
+
[k: string]: unknown;
|
|
17
|
+
} & {
|
|
18
|
+
platform: ServicePlatformConfig;
|
|
19
|
+
type: GraphDatabaseType;
|
|
20
|
+
name?: string;
|
|
21
|
+
uri?: string;
|
|
22
|
+
url?: string;
|
|
23
|
+
username?: string;
|
|
24
|
+
password?: string;
|
|
25
|
+
database?: string;
|
|
26
|
+
host?: string;
|
|
27
|
+
port?: number;
|
|
28
|
+
storage?: string;
|
|
29
|
+
index?: string;
|
|
30
|
+
endpoint?: string;
|
|
31
|
+
region?: string;
|
|
32
|
+
command?: string;
|
|
33
|
+
image?: string;
|
|
34
|
+
janusgraphVersion?: string;
|
|
35
|
+
javaOptions?: string;
|
|
36
|
+
heapSize?: string;
|
|
37
|
+
pageCacheSize?: string;
|
|
38
|
+
noAuth?: boolean;
|
|
39
|
+
dataPath?: string;
|
|
40
|
+
timeout?: number;
|
|
41
|
+
wait?: number;
|
|
42
|
+
logsEndpoint?: string;
|
|
43
|
+
tag?: string;
|
|
44
|
+
resources?: ResourceRequirements;
|
|
45
|
+
security?: SecurityRequirements;
|
|
46
|
+
build?: boolean | BuildRequirements;
|
|
47
|
+
dockerfile?: string;
|
|
48
|
+
buildContext?: string;
|
|
49
|
+
buildArgs?: {
|
|
50
|
+
[k: string]: string;
|
|
51
|
+
};
|
|
52
|
+
buildTarget?: string;
|
|
53
|
+
prebuilt?: boolean;
|
|
54
|
+
noCache?: boolean;
|
|
55
|
+
secrets?: string[];
|
|
56
|
+
labels?: {
|
|
57
|
+
[k: string]: string;
|
|
58
|
+
};
|
|
59
|
+
annotations?: {
|
|
60
|
+
[k: string]: string;
|
|
61
|
+
};
|
|
62
|
+
dependencies?: string[];
|
|
63
|
+
externalDependencies?: (string | {
|
|
64
|
+
name?: string;
|
|
65
|
+
url?: string;
|
|
66
|
+
required?: boolean;
|
|
67
|
+
healthCheck?: string;
|
|
68
|
+
[k: string]: unknown;
|
|
69
|
+
})[];
|
|
70
|
+
environment?: {
|
|
71
|
+
[k: string]: string;
|
|
72
|
+
};
|
|
73
|
+
env?: {
|
|
74
|
+
[k: string]: string;
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
79
|
+
* via the `definition` "ServicePlatformConfig".
|
|
80
|
+
*/
|
|
81
|
+
interface ServicePlatformConfig {
|
|
82
|
+
type: PlatformType;
|
|
83
|
+
[k: string]: unknown;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
87
|
+
* via the `definition` "ResourceRequirements".
|
|
88
|
+
*/
|
|
89
|
+
interface ResourceRequirements {
|
|
90
|
+
cpu?: string;
|
|
91
|
+
memory?: string;
|
|
92
|
+
gpu?: number;
|
|
93
|
+
gpus?: number;
|
|
94
|
+
replicas?: number;
|
|
95
|
+
ephemeralStorage?: string;
|
|
96
|
+
memoryReservation?: string;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
100
|
+
* via the `definition` "SecurityRequirements".
|
|
101
|
+
*/
|
|
102
|
+
interface SecurityRequirements {
|
|
103
|
+
readOnlyRootFilesystem?: boolean;
|
|
104
|
+
runAsNonRoot?: boolean;
|
|
105
|
+
runAsUser?: number;
|
|
106
|
+
runAsGroup?: number;
|
|
107
|
+
capabilities?: string[] | {
|
|
108
|
+
add?: string[];
|
|
109
|
+
drop?: string[];
|
|
110
|
+
[k: string]: unknown;
|
|
111
|
+
};
|
|
112
|
+
privileged?: boolean;
|
|
113
|
+
allowPrivilegeEscalation?: boolean;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
117
|
+
* via the `definition` "BuildRequirements".
|
|
118
|
+
*/
|
|
119
|
+
interface BuildRequirements {
|
|
120
|
+
dockerfile?: string;
|
|
121
|
+
buildContext?: string;
|
|
122
|
+
buildArgs?: {
|
|
123
|
+
[k: string]: string;
|
|
124
|
+
};
|
|
125
|
+
buildTarget?: string;
|
|
126
|
+
prebuilt?: boolean;
|
|
127
|
+
noCache?: boolean;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
131
|
+
* via the `definition` "BackendServiceConfig".
|
|
132
|
+
*/
|
|
133
|
+
interface BackendServiceConfig {
|
|
134
|
+
platform: ServicePlatformConfig;
|
|
135
|
+
devMode?: boolean;
|
|
136
|
+
command?: string;
|
|
137
|
+
port: number;
|
|
138
|
+
publicURL: string;
|
|
139
|
+
corsOrigin: string;
|
|
140
|
+
image?: string;
|
|
141
|
+
cpu?: string;
|
|
142
|
+
memory?: string;
|
|
143
|
+
databaseUrl?: string;
|
|
144
|
+
projectRoot?: string;
|
|
145
|
+
timeout?: number;
|
|
146
|
+
wait?: number;
|
|
147
|
+
logsEndpoint?: string;
|
|
148
|
+
tag?: string;
|
|
149
|
+
resources?: ResourceRequirements;
|
|
150
|
+
security?: SecurityRequirements;
|
|
151
|
+
build?: boolean | BuildRequirements;
|
|
152
|
+
dockerfile?: string;
|
|
153
|
+
buildContext?: string;
|
|
154
|
+
buildArgs?: {
|
|
155
|
+
[k: string]: string;
|
|
156
|
+
};
|
|
157
|
+
buildTarget?: string;
|
|
158
|
+
prebuilt?: boolean;
|
|
159
|
+
noCache?: boolean;
|
|
160
|
+
secrets?: string[];
|
|
161
|
+
labels?: {
|
|
162
|
+
[k: string]: string;
|
|
163
|
+
};
|
|
164
|
+
annotations?: {
|
|
165
|
+
[k: string]: string;
|
|
166
|
+
};
|
|
167
|
+
dependencies?: string[];
|
|
168
|
+
externalDependencies?: (string | {
|
|
169
|
+
name?: string;
|
|
170
|
+
url?: string;
|
|
171
|
+
required?: boolean;
|
|
172
|
+
healthCheck?: string;
|
|
173
|
+
[k: string]: unknown;
|
|
174
|
+
})[];
|
|
175
|
+
redisUrl?: string;
|
|
176
|
+
environment?: {
|
|
177
|
+
[k: string]: string;
|
|
178
|
+
};
|
|
179
|
+
env?: {
|
|
180
|
+
[k: string]: string;
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
185
|
+
* via the `definition` "FrontendServiceConfig".
|
|
186
|
+
*/
|
|
187
|
+
interface FrontendServiceConfig {
|
|
188
|
+
platform: ServicePlatformConfig;
|
|
189
|
+
devMode?: boolean;
|
|
190
|
+
command?: string;
|
|
191
|
+
port: number;
|
|
192
|
+
siteName: string;
|
|
193
|
+
image?: string;
|
|
194
|
+
projectRoot?: string;
|
|
195
|
+
databaseUrl?: string;
|
|
196
|
+
timeout?: number;
|
|
197
|
+
wait?: number;
|
|
198
|
+
logsEndpoint?: string;
|
|
199
|
+
tag?: string;
|
|
200
|
+
resources?: ResourceRequirements;
|
|
201
|
+
security?: SecurityRequirements;
|
|
202
|
+
build?: boolean | BuildRequirements;
|
|
203
|
+
dockerfile?: string;
|
|
204
|
+
buildContext?: string;
|
|
205
|
+
buildArgs?: {
|
|
206
|
+
[k: string]: string;
|
|
207
|
+
};
|
|
208
|
+
buildTarget?: string;
|
|
209
|
+
prebuilt?: boolean;
|
|
210
|
+
noCache?: boolean;
|
|
211
|
+
secrets?: string[];
|
|
212
|
+
labels?: {
|
|
213
|
+
[k: string]: string;
|
|
214
|
+
};
|
|
215
|
+
annotations?: {
|
|
216
|
+
[k: string]: string;
|
|
217
|
+
};
|
|
218
|
+
dependencies?: string[];
|
|
219
|
+
externalDependencies?: (string | {
|
|
220
|
+
name?: string;
|
|
221
|
+
url?: string;
|
|
222
|
+
required?: boolean;
|
|
223
|
+
healthCheck?: string;
|
|
224
|
+
[k: string]: unknown;
|
|
225
|
+
})[];
|
|
226
|
+
environment?: {
|
|
227
|
+
[k: string]: string;
|
|
228
|
+
};
|
|
229
|
+
env?: {
|
|
230
|
+
[k: string]: string;
|
|
231
|
+
};
|
|
232
|
+
publicURL?: string;
|
|
233
|
+
allowedOrigins?: string[];
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
237
|
+
* via the `definition` "VectorsServiceConfig".
|
|
238
|
+
*/
|
|
239
|
+
interface VectorsServiceConfig {
|
|
240
|
+
platform?: ServicePlatformConfig;
|
|
241
|
+
type: 'qdrant' | 'memory';
|
|
242
|
+
host?: string;
|
|
243
|
+
port?: number;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
247
|
+
* via the `definition` "EmbeddingServiceConfig".
|
|
248
|
+
*/
|
|
249
|
+
interface EmbeddingServiceConfig {
|
|
250
|
+
platform?: ServicePlatformConfig;
|
|
251
|
+
type: 'voyage' | 'ollama';
|
|
252
|
+
model: string;
|
|
253
|
+
apiKey?: string;
|
|
254
|
+
baseURL?: string;
|
|
255
|
+
endpoint?: string;
|
|
256
|
+
chunking?: {
|
|
257
|
+
chunkSize?: number;
|
|
258
|
+
overlap?: number;
|
|
259
|
+
[k: string]: unknown;
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
264
|
+
* via the `definition` "DatabaseServiceConfig".
|
|
265
|
+
*/
|
|
266
|
+
interface DatabaseServiceConfig {
|
|
267
|
+
platform: ServicePlatformConfig;
|
|
268
|
+
type: string;
|
|
269
|
+
name?: string;
|
|
270
|
+
host: string;
|
|
271
|
+
port: number;
|
|
272
|
+
environment?: {
|
|
273
|
+
[k: string]: string;
|
|
274
|
+
};
|
|
275
|
+
env?: {
|
|
276
|
+
[k: string]: string;
|
|
277
|
+
};
|
|
278
|
+
description?: string;
|
|
279
|
+
command?: string;
|
|
280
|
+
image?: string;
|
|
281
|
+
user?: string;
|
|
282
|
+
username?: string;
|
|
283
|
+
password?: string;
|
|
284
|
+
database?: string;
|
|
285
|
+
/**
|
|
286
|
+
* Override the default data storage directory ($XDG_DATA_HOME/semiont/{name}/database/{service})
|
|
287
|
+
*/
|
|
288
|
+
dataDir?: string;
|
|
289
|
+
storageSize?: string;
|
|
290
|
+
timeout?: number;
|
|
291
|
+
wait?: number;
|
|
292
|
+
logsEndpoint?: string;
|
|
293
|
+
tag?: string;
|
|
294
|
+
resources?: ResourceRequirements;
|
|
295
|
+
security?: SecurityRequirements;
|
|
296
|
+
build?: boolean | BuildRequirements;
|
|
297
|
+
dockerfile?: string;
|
|
298
|
+
buildContext?: string;
|
|
299
|
+
buildArgs?: {
|
|
300
|
+
[k: string]: string;
|
|
301
|
+
};
|
|
302
|
+
buildTarget?: string;
|
|
303
|
+
prebuilt?: boolean;
|
|
304
|
+
noCache?: boolean;
|
|
305
|
+
secrets?: string[];
|
|
306
|
+
labels?: {
|
|
307
|
+
[k: string]: string;
|
|
308
|
+
};
|
|
309
|
+
annotations?: {
|
|
310
|
+
[k: string]: string;
|
|
311
|
+
};
|
|
312
|
+
dependencies?: string[];
|
|
313
|
+
externalDependencies?: (string | {
|
|
314
|
+
name?: string;
|
|
315
|
+
url?: string;
|
|
316
|
+
required?: boolean;
|
|
317
|
+
healthCheck?: string;
|
|
318
|
+
[k: string]: unknown;
|
|
319
|
+
})[];
|
|
320
|
+
}
|
|
321
|
+
/**
|
|
322
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
323
|
+
* via the `definition` "OllamaProviderConfig".
|
|
324
|
+
*/
|
|
325
|
+
interface OllamaProviderConfig {
|
|
326
|
+
platform: ServicePlatformConfig;
|
|
327
|
+
baseURL?: string;
|
|
328
|
+
port?: number;
|
|
329
|
+
image?: string;
|
|
330
|
+
command?: string;
|
|
331
|
+
timeout?: number;
|
|
332
|
+
wait?: number;
|
|
333
|
+
logsEndpoint?: string;
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
337
|
+
* via the `definition` "AnthropicProviderConfig".
|
|
338
|
+
*/
|
|
339
|
+
interface AnthropicProviderConfig {
|
|
340
|
+
platform: 'external';
|
|
341
|
+
endpoint: string;
|
|
342
|
+
apiKey: string;
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
346
|
+
* via the `definition` "InferenceProvidersConfig".
|
|
347
|
+
*/
|
|
348
|
+
interface InferenceProvidersConfig {
|
|
349
|
+
ollama?: OllamaProviderConfig;
|
|
350
|
+
anthropic?: AnthropicProviderConfig;
|
|
351
|
+
[k: string]: unknown;
|
|
352
|
+
}
|
|
353
|
+
/**
|
|
354
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
355
|
+
* via the `definition` "McpServiceConfig".
|
|
356
|
+
*/
|
|
357
|
+
interface McpServiceConfig {
|
|
358
|
+
platform: ServicePlatformConfig;
|
|
359
|
+
command?: string;
|
|
360
|
+
image?: string;
|
|
361
|
+
port?: number;
|
|
362
|
+
dependsOn?: string[];
|
|
363
|
+
timeout?: number;
|
|
364
|
+
wait?: number;
|
|
365
|
+
logsEndpoint?: string;
|
|
366
|
+
tag?: string;
|
|
367
|
+
resources?: ResourceRequirements;
|
|
368
|
+
security?: SecurityRequirements;
|
|
369
|
+
build?: boolean | BuildRequirements;
|
|
370
|
+
dockerfile?: string;
|
|
371
|
+
buildContext?: string;
|
|
372
|
+
buildArgs?: {
|
|
373
|
+
[k: string]: string;
|
|
374
|
+
};
|
|
375
|
+
buildTarget?: string;
|
|
376
|
+
prebuilt?: boolean;
|
|
377
|
+
noCache?: boolean;
|
|
378
|
+
secrets?: string[];
|
|
379
|
+
labels?: {
|
|
380
|
+
[k: string]: string;
|
|
381
|
+
};
|
|
382
|
+
annotations?: {
|
|
383
|
+
[k: string]: string;
|
|
384
|
+
};
|
|
385
|
+
dependencies?: string[];
|
|
386
|
+
externalDependencies?: (string | {
|
|
387
|
+
name?: string;
|
|
388
|
+
url?: string;
|
|
389
|
+
required?: boolean;
|
|
390
|
+
healthCheck?: string;
|
|
391
|
+
[k: string]: unknown;
|
|
392
|
+
})[];
|
|
393
|
+
environment?: {
|
|
394
|
+
[k: string]: string;
|
|
395
|
+
};
|
|
396
|
+
env?: {
|
|
397
|
+
[k: string]: string;
|
|
398
|
+
};
|
|
399
|
+
}
|
|
400
|
+
/**
|
|
401
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
402
|
+
* via the `definition` "ServicesConfig".
|
|
403
|
+
*/
|
|
404
|
+
interface ServicesConfig {
|
|
405
|
+
backend?: BackendServiceConfig;
|
|
406
|
+
frontend?: FrontendServiceConfig;
|
|
407
|
+
database?: DatabaseServiceConfig;
|
|
408
|
+
graph?: GraphServiceConfig;
|
|
409
|
+
mcp?: McpServiceConfig;
|
|
410
|
+
vectors?: VectorsServiceConfig;
|
|
411
|
+
embedding?: EmbeddingServiceConfig;
|
|
412
|
+
[k: string]: unknown;
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
416
|
+
* via the `definition` "SiteConfig".
|
|
417
|
+
*/
|
|
418
|
+
interface SiteConfig {
|
|
419
|
+
/**
|
|
420
|
+
* Display name for the site
|
|
421
|
+
*/
|
|
422
|
+
siteName?: string;
|
|
423
|
+
/**
|
|
424
|
+
* Primary domain for the site
|
|
425
|
+
*/
|
|
426
|
+
domain: string;
|
|
427
|
+
/**
|
|
428
|
+
* Administrator email address
|
|
429
|
+
*/
|
|
430
|
+
adminEmail?: string;
|
|
431
|
+
/**
|
|
432
|
+
* Support email address (optional)
|
|
433
|
+
*/
|
|
434
|
+
supportEmail?: string;
|
|
435
|
+
/**
|
|
436
|
+
* Email domains allowed for OAuth authentication
|
|
437
|
+
*
|
|
438
|
+
* @minItems 1
|
|
439
|
+
*/
|
|
440
|
+
oauthAllowedDomains?: [string, ...string[]];
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
444
|
+
* via the `definition` "AppConfig".
|
|
445
|
+
*/
|
|
446
|
+
interface AppConfig {
|
|
447
|
+
features?: {
|
|
448
|
+
enableAnalytics?: boolean;
|
|
449
|
+
enableMaintenanceMode?: boolean;
|
|
450
|
+
enableDebugLogging?: boolean;
|
|
451
|
+
};
|
|
452
|
+
security?: {
|
|
453
|
+
/**
|
|
454
|
+
* Session timeout in seconds
|
|
455
|
+
*/
|
|
456
|
+
sessionTimeout?: number;
|
|
457
|
+
/**
|
|
458
|
+
* Maximum failed login attempts before lockout
|
|
459
|
+
*/
|
|
460
|
+
maxLoginAttempts?: number;
|
|
461
|
+
corsAllowedOrigins?: string[];
|
|
462
|
+
/**
|
|
463
|
+
* Enable local username/password authentication
|
|
464
|
+
*/
|
|
465
|
+
enableLocalAuth?: boolean;
|
|
466
|
+
/**
|
|
467
|
+
* JWT signing secret (base64 encoded, 32+ bytes)
|
|
468
|
+
*/
|
|
469
|
+
jwtSecret?: string;
|
|
470
|
+
};
|
|
471
|
+
performance?: {
|
|
472
|
+
enableCaching?: boolean;
|
|
473
|
+
/**
|
|
474
|
+
* Cache timeout in seconds
|
|
475
|
+
*/
|
|
476
|
+
cacheTimeout?: number;
|
|
477
|
+
/**
|
|
478
|
+
* Maximum request size (e.g., '10mb')
|
|
479
|
+
*/
|
|
480
|
+
maxRequestSize?: string;
|
|
481
|
+
};
|
|
482
|
+
}
|
|
483
|
+
/**
|
|
484
|
+
* This interface was referenced by `HttpsSemiontOrgSchemasConfigJson`'s JSON-Schema
|
|
485
|
+
* via the `definition` "EnvironmentConfig".
|
|
486
|
+
*/
|
|
487
|
+
interface EnvironmentConfig {
|
|
488
|
+
/**
|
|
489
|
+
* Optional comment for documentation
|
|
490
|
+
*/
|
|
491
|
+
_comment?: string;
|
|
492
|
+
_metadata?: {
|
|
493
|
+
environment: string;
|
|
494
|
+
projectRoot: string | null;
|
|
495
|
+
[k: string]: unknown;
|
|
496
|
+
};
|
|
497
|
+
/**
|
|
498
|
+
* Environment name
|
|
499
|
+
*/
|
|
500
|
+
name?: string;
|
|
501
|
+
platform?: {
|
|
502
|
+
default?: PlatformType;
|
|
503
|
+
[k: string]: unknown;
|
|
504
|
+
};
|
|
505
|
+
services: ServicesConfig;
|
|
506
|
+
inference?: InferenceProvidersConfig;
|
|
507
|
+
workers?: {
|
|
508
|
+
[k: string]: {
|
|
509
|
+
inference?: {
|
|
510
|
+
type?: string;
|
|
511
|
+
model?: string;
|
|
512
|
+
[k: string]: unknown;
|
|
513
|
+
};
|
|
514
|
+
[k: string]: unknown;
|
|
515
|
+
};
|
|
516
|
+
};
|
|
517
|
+
actors?: {
|
|
518
|
+
[k: string]: {
|
|
519
|
+
inference?: {
|
|
520
|
+
type?: string;
|
|
521
|
+
model?: string;
|
|
522
|
+
[k: string]: unknown;
|
|
523
|
+
};
|
|
524
|
+
[k: string]: unknown;
|
|
525
|
+
};
|
|
526
|
+
};
|
|
527
|
+
site?: SiteConfig;
|
|
528
|
+
app?: AppConfig;
|
|
529
|
+
env?: {
|
|
530
|
+
NODE_ENV?: 'development' | 'production' | 'test';
|
|
531
|
+
[k: string]: unknown;
|
|
532
|
+
};
|
|
533
|
+
/**
|
|
534
|
+
* Logging verbosity level
|
|
535
|
+
*/
|
|
536
|
+
logLevel?: 'error' | 'warn' | 'info' | 'http' | 'debug';
|
|
537
|
+
deployment?: {
|
|
538
|
+
imageTagStrategy?: 'mutable' | 'immutable' | 'git-hash';
|
|
539
|
+
[k: string]: unknown;
|
|
540
|
+
};
|
|
541
|
+
[k: string]: unknown;
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
/**
|
|
545
|
+
* Represents a Semiont project rooted at a given directory.
|
|
546
|
+
*
|
|
547
|
+
* Computes all paths — durable and ephemeral — once at construction time.
|
|
548
|
+
* XDG environment variables are read here and nowhere else.
|
|
549
|
+
*
|
|
550
|
+
* Durable paths (inside the project root, committed or repo-local):
|
|
551
|
+
* eventsDir — .semiont/events/ (system of record, committed)
|
|
552
|
+
* representationsDir — representations/ (content store, committed)
|
|
553
|
+
*
|
|
554
|
+
* Ephemeral paths (outside the project root, never committed):
|
|
555
|
+
* configDir — $XDG_CONFIG_HOME/semiont/{name}/ (generated config for managed processes)
|
|
556
|
+
* dataHome — $XDG_DATA_HOME/semiont/{name}/ (persistent user data, e.g. database files)
|
|
557
|
+
* stateDir — $XDG_STATE_HOME/semiont/{name}/
|
|
558
|
+
* embeddingsDir — stateDir/embeddings/
|
|
559
|
+
* projectionsDir — stateDir/projections/
|
|
560
|
+
* jobsDir — stateDir/jobs/
|
|
561
|
+
* backendLogsDir — stateDir/backend/
|
|
562
|
+
* backendAppLogFile — backendLogsDir/app.log
|
|
563
|
+
* backendErrorLogFile — backendLogsDir/error.log
|
|
564
|
+
* runtimeDir — $XDG_RUNTIME_DIR/semiont/{name}/ (or $TMPDIR fallback)
|
|
565
|
+
* backendPidFile — runtimeDir/backend.pid
|
|
566
|
+
*
|
|
567
|
+
* Note: frontend paths are NOT project-scoped. The frontend service is bundled
|
|
568
|
+
* with the CLI and uses fixed XDG paths keyed by "frontend", not project name.
|
|
569
|
+
* See apps/cli/src/platforms/posix/handlers/frontend-paths.ts.
|
|
570
|
+
*/
|
|
571
|
+
declare class SemiontProject {
|
|
572
|
+
readonly root: string;
|
|
573
|
+
readonly name: string;
|
|
574
|
+
/** True if [git] sync = true in .semiont/config. When true, semiont stages
|
|
575
|
+
* working-tree and event-log changes in the git index automatically. */
|
|
576
|
+
readonly gitSync: boolean;
|
|
577
|
+
readonly eventsDir: string;
|
|
578
|
+
readonly representationsDir: string;
|
|
579
|
+
readonly configDir: string;
|
|
580
|
+
readonly dataHome: string;
|
|
581
|
+
readonly stateDir: string;
|
|
582
|
+
readonly embeddingsDir: string;
|
|
583
|
+
readonly projectionsDir: string;
|
|
584
|
+
readonly jobsDir: string;
|
|
585
|
+
readonly backendLogsDir: string;
|
|
586
|
+
readonly backendAppLogFile: string;
|
|
587
|
+
readonly backendErrorLogFile: string;
|
|
588
|
+
readonly runtimeDir: string;
|
|
589
|
+
readonly backendPidFile: string;
|
|
590
|
+
constructor(projectRoot: string, name?: string);
|
|
591
|
+
/**
|
|
592
|
+
* Read the current git branch for the project root.
|
|
593
|
+
* Returns null if the project is not a git repo or git is not available.
|
|
594
|
+
*/
|
|
595
|
+
gitBranch(): string | null;
|
|
596
|
+
/**
|
|
597
|
+
* Delete all ephemeral state for this project (stateDir + runtimeDir).
|
|
598
|
+
* Does not touch eventsDir or dataDir.
|
|
599
|
+
*/
|
|
600
|
+
destroy(): Promise<void>;
|
|
601
|
+
/**
|
|
602
|
+
* Read [git] sync from .semiont/config.
|
|
603
|
+
* Defaults to false if the section or key is absent.
|
|
604
|
+
*/
|
|
605
|
+
private static readGitSync;
|
|
606
|
+
/**
|
|
607
|
+
* Read the project name from .semiont/config [project] name = "..."
|
|
608
|
+
* Falls back to the directory basename if the config is absent or has no name.
|
|
609
|
+
*/
|
|
610
|
+
private static readName;
|
|
611
|
+
}
|
|
612
|
+
|
|
3
613
|
/**
|
|
4
614
|
* Load semiont environment config for a Node.js process.
|
|
5
615
|
*
|
|
@@ -9,5 +619,6 @@ export { SemiontProject } from '../project.js';
|
|
|
9
619
|
* This is the canonical config loader for any Node.js process. SEMIONT_ENV
|
|
10
620
|
* should be read once at the process entry point and passed as `environment`.
|
|
11
621
|
*/
|
|
12
|
-
|
|
13
|
-
|
|
622
|
+
declare function loadEnvironmentConfig(projectRoot: string, environment: string): EnvironmentConfig;
|
|
623
|
+
|
|
624
|
+
export { SemiontProject, loadEnvironmentConfig };
|