@twin.org/node-core 0.9.1-next.1 → 0.9.1-next.11
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/es/builders/engineEnvBuilder.js +52 -7
- package/dist/es/builders/engineEnvBuilder.js.map +1 -1
- package/dist/es/cli.js +41 -12
- package/dist/es/cli.js.map +1 -1
- package/dist/es/commands/bootstrapLegacy.js +1 -1
- package/dist/es/commands/bootstrapLegacy.js.map +1 -1
- package/dist/es/commands/help.js +10 -1
- package/dist/es/commands/help.js.map +1 -1
- package/dist/es/commands/identityCreate.js +3 -3
- package/dist/es/commands/identityCreate.js.map +1 -1
- package/dist/es/commands/identityList.js +65 -0
- package/dist/es/commands/identityList.js.map +1 -0
- package/dist/es/commands/identityResolve.js +83 -0
- package/dist/es/commands/identityResolve.js.map +1 -0
- package/dist/es/commands/nodeIdentityGet.js +68 -0
- package/dist/es/commands/nodeIdentityGet.js.map +1 -0
- package/dist/es/commands/{nodeSetIdentity.js → nodeIdentitySet.js} +16 -15
- package/dist/es/commands/nodeIdentitySet.js.map +1 -0
- package/dist/es/commands/nodeOrgIdGet.js +55 -0
- package/dist/es/commands/nodeOrgIdGet.js.map +1 -0
- package/dist/es/commands/{setNodeOrgId.js → nodeOrgIdSet.js} +15 -13
- package/dist/es/commands/nodeOrgIdSet.js.map +1 -0
- package/dist/es/commands/orgUsersList.js +94 -0
- package/dist/es/commands/orgUsersList.js.map +1 -0
- package/dist/es/commands/tenantGet.js +68 -0
- package/dist/es/commands/tenantGet.js.map +1 -0
- package/dist/es/commands/tenantList.js +69 -0
- package/dist/es/commands/tenantList.js.map +1 -0
- package/dist/es/commands/tenantListByOrg.js +80 -0
- package/dist/es/commands/tenantListByOrg.js.map +1 -0
- package/dist/es/commands/{setTenantOrgId.js → tenantOrgIdSet.js} +16 -15
- package/dist/es/commands/tenantOrgIdSet.js.map +1 -0
- package/dist/es/commands/userGet.js +77 -0
- package/dist/es/commands/userGet.js.map +1 -0
- package/dist/es/models/ICliCommandDefinition.js.map +1 -1
- package/dist/es/models/IEngineEnvironmentVariables.js.map +1 -1
- package/dist/es/models/engineEnvironmentVariableKeys.js +13 -0
- package/dist/es/models/engineEnvironmentVariableKeys.js.map +1 -1
- package/dist/es/node.js +4 -35
- package/dist/es/node.js.map +1 -1
- package/dist/types/commands/identityList.d.ts +17 -0
- package/dist/types/commands/identityResolve.d.ts +24 -0
- package/dist/types/commands/nodeIdentityGet.d.ts +20 -0
- package/dist/types/commands/{nodeSetIdentity.d.ts → nodeIdentitySet.d.ts} +2 -2
- package/dist/types/commands/nodeOrgIdGet.d.ts +19 -0
- package/dist/types/commands/{setNodeOrgId.d.ts → nodeOrgIdSet.d.ts} +2 -2
- package/dist/types/commands/orgUsersList.d.ts +27 -0
- package/dist/types/commands/tenantGet.d.ts +22 -0
- package/dist/types/commands/tenantList.d.ts +22 -0
- package/dist/types/commands/tenantListByOrg.d.ts +22 -0
- package/dist/types/commands/{setTenantOrgId.d.ts → tenantOrgIdSet.d.ts} +2 -2
- package/dist/types/commands/userGet.d.ts +24 -0
- package/dist/types/models/ICliCommandDefinition.d.ts +8 -0
- package/dist/types/models/IEngineEnvironmentVariables.d.ts +73 -5
- package/docs/changelog.md +72 -0
- package/docs/reference/interfaces/ICliCommandDefinition.md +16 -0
- package/docs/reference/interfaces/IEngineEnvironmentVariables.md +145 -5
- package/locales/en.json +229 -14
- package/package.json +2 -3
- package/dist/es/commands/nodeSetIdentity.js.map +0 -1
- package/dist/es/commands/setNodeOrgId.js.map +0 -1
- package/dist/es/commands/setTenantOrgId.js.map +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { IEngineCore } from "@twin.org/engine-models";
|
|
2
|
+
import type { IDidDocument } from "@twin.org/standards-w3c-did";
|
|
3
|
+
import type { ICliCommandDefinition } from "../models/ICliCommandDefinition.js";
|
|
4
|
+
import type { IEnvironmentVariables } from "../models/IEnvironmentVariables.js";
|
|
5
|
+
import type { INodeEngineConfig } from "../models/INodeEngineConfig.js";
|
|
6
|
+
import type { INodeEngineState } from "../models/INodeEngineState.js";
|
|
7
|
+
/**
|
|
8
|
+
* Get the command definition parameters.
|
|
9
|
+
* @param commandDefinitions The registered command definitions.
|
|
10
|
+
*/
|
|
11
|
+
export declare function getCommandDefinitionNodeIdentityGet(commandDefinitions: {
|
|
12
|
+
[id: string]: ICliCommandDefinition;
|
|
13
|
+
}): void;
|
|
14
|
+
/**
|
|
15
|
+
* Command for retrieving the identity currently assigned to the node.
|
|
16
|
+
* @param engineCore The engine core.
|
|
17
|
+
* @param envVars The environment variables for the node.
|
|
18
|
+
* @returns The node identity document.
|
|
19
|
+
*/
|
|
20
|
+
export declare function nodeIdentityGet(engineCore: IEngineCore<INodeEngineConfig, INodeEngineState>, envVars: IEnvironmentVariables): Promise<IDidDocument>;
|
|
@@ -7,7 +7,7 @@ import type { INodeEngineState } from "../models/INodeEngineState.js";
|
|
|
7
7
|
* Get the command definition parameters.
|
|
8
8
|
* @param commandDefinitions The registered command definitions.
|
|
9
9
|
*/
|
|
10
|
-
export declare function
|
|
10
|
+
export declare function getCommandDefinitionNodeIdentitySet(commandDefinitions: {
|
|
11
11
|
[id: string]: ICliCommandDefinition;
|
|
12
12
|
}): void;
|
|
13
13
|
/**
|
|
@@ -18,6 +18,6 @@ export declare function getCommandDefinitionNodeSetIdentity(commandDefinitions:
|
|
|
18
18
|
* @param params.identity The DID to set for the node.
|
|
19
19
|
* @returns A promise that resolves when the node identity has been persisted.
|
|
20
20
|
*/
|
|
21
|
-
export declare function
|
|
21
|
+
export declare function nodeIdentitySet(engineCore: IEngineCore<INodeEngineConfig, INodeEngineState>, envVars: IEnvironmentVariables, params: {
|
|
22
22
|
identity?: string;
|
|
23
23
|
}): Promise<void>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IEngineCore } from "@twin.org/engine-models";
|
|
2
|
+
import type { ICliCommandDefinition } from "../models/ICliCommandDefinition.js";
|
|
3
|
+
import type { IEnvironmentVariables } from "../models/IEnvironmentVariables.js";
|
|
4
|
+
import type { INodeEngineConfig } from "../models/INodeEngineConfig.js";
|
|
5
|
+
import type { INodeEngineState } from "../models/INodeEngineState.js";
|
|
6
|
+
/**
|
|
7
|
+
* Get the command definition parameters.
|
|
8
|
+
* @param commandDefinitions The registered command definitions.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getCommandDefinitionNodeOrgIdGet(commandDefinitions: {
|
|
11
|
+
[id: string]: ICliCommandDefinition;
|
|
12
|
+
}): void;
|
|
13
|
+
/**
|
|
14
|
+
* Command for retrieving the organization ID currently assigned to the node.
|
|
15
|
+
* @param engineCore The engine core.
|
|
16
|
+
* @param envVars The environment variables for the node.
|
|
17
|
+
* @returns The node organization DID.
|
|
18
|
+
*/
|
|
19
|
+
export declare function nodeOrgIdGet(engineCore: IEngineCore<INodeEngineConfig, INodeEngineState>, envVars: IEnvironmentVariables): Promise<string>;
|
|
@@ -7,7 +7,7 @@ import type { INodeEngineState } from "../models/INodeEngineState.js";
|
|
|
7
7
|
* Get the command definition parameters.
|
|
8
8
|
* @param commandDefinitions The registered command definitions.
|
|
9
9
|
*/
|
|
10
|
-
export declare function
|
|
10
|
+
export declare function getCommandDefinitionNodeOrgIdSet(commandDefinitions: {
|
|
11
11
|
[id: string]: ICliCommandDefinition;
|
|
12
12
|
}): void;
|
|
13
13
|
/**
|
|
@@ -19,6 +19,6 @@ export declare function getCommandDefinitionSetNodeOrgId(commandDefinitions: {
|
|
|
19
19
|
* @returns A promise that resolves when the node organization ID has been persisted.
|
|
20
20
|
* @throws GeneralError if called while multi-tenant mode is enabled.
|
|
21
21
|
*/
|
|
22
|
-
export declare function
|
|
22
|
+
export declare function nodeOrgIdSet(engineCore: IEngineCore<INodeEngineConfig, INodeEngineState>, envVars: IEnvironmentVariables, params: {
|
|
23
23
|
organizationId?: string;
|
|
24
24
|
}): Promise<void>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { IEngineCore } from "@twin.org/engine-models";
|
|
2
|
+
import type { ICliCommandDefinition } from "../models/ICliCommandDefinition.js";
|
|
3
|
+
import type { IEnvironmentVariables } from "../models/IEnvironmentVariables.js";
|
|
4
|
+
import type { INodeEngineConfig } from "../models/INodeEngineConfig.js";
|
|
5
|
+
import type { INodeEngineState } from "../models/INodeEngineState.js";
|
|
6
|
+
/**
|
|
7
|
+
* Get the command definition parameters.
|
|
8
|
+
* @param commandDefinitions The registered command definitions.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getCommandDefinitionOrgUsersList(commandDefinitions: {
|
|
11
|
+
[id: string]: ICliCommandDefinition;
|
|
12
|
+
}): void;
|
|
13
|
+
/**
|
|
14
|
+
* Command for listing all users belonging to a given organization DID.
|
|
15
|
+
* @param engineCore The engine core.
|
|
16
|
+
* @param envVars The environment variables for the node.
|
|
17
|
+
* @param params The parameters for the command.
|
|
18
|
+
* @param params.orgDid The organization DID to filter by. Defaults to the node organization ID in single-tenant mode.
|
|
19
|
+
* @returns The list of users for the organization.
|
|
20
|
+
*/
|
|
21
|
+
export declare function orgUsersList(engineCore: IEngineCore<INodeEngineConfig, INodeEngineState>, envVars: IEnvironmentVariables, params: {
|
|
22
|
+
orgDid?: string;
|
|
23
|
+
}): Promise<{
|
|
24
|
+
email: string;
|
|
25
|
+
identity: string;
|
|
26
|
+
scope: string;
|
|
27
|
+
}[]>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ITenant } from "@twin.org/api-models";
|
|
2
|
+
import type { IEngineCore } from "@twin.org/engine-models";
|
|
3
|
+
import type { ICliCommandDefinition } from "../models/ICliCommandDefinition.js";
|
|
4
|
+
import type { IEnvironmentVariables } from "../models/IEnvironmentVariables.js";
|
|
5
|
+
/**
|
|
6
|
+
* Get the command definition parameters.
|
|
7
|
+
* @param commandDefinitions The registered command definitions.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getCommandDefinitionTenantGet(commandDefinitions: {
|
|
10
|
+
[id: string]: ICliCommandDefinition;
|
|
11
|
+
}): void;
|
|
12
|
+
/**
|
|
13
|
+
* Command for retrieving a single tenant by ID.
|
|
14
|
+
* @param engineCore The engine core.
|
|
15
|
+
* @param envVars The environment variables for the node.
|
|
16
|
+
* @param params The parameters for the command.
|
|
17
|
+
* @param params.tenantId The ID of the tenant to retrieve.
|
|
18
|
+
* @returns The tenant record.
|
|
19
|
+
*/
|
|
20
|
+
export declare function tenantGet(engineCore: IEngineCore, envVars: IEnvironmentVariables, params: {
|
|
21
|
+
tenantId?: string;
|
|
22
|
+
}): Promise<ITenant>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { IEngineCore } from "@twin.org/engine-models";
|
|
2
|
+
import type { ICliCommandDefinition } from "../models/ICliCommandDefinition.js";
|
|
3
|
+
import type { IEnvironmentVariables } from "../models/IEnvironmentVariables.js";
|
|
4
|
+
/**
|
|
5
|
+
* Get the command definition parameters.
|
|
6
|
+
* @param commandDefinitions The registered command definitions.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getCommandDefinitionTenantList(commandDefinitions: {
|
|
9
|
+
[id: string]: ICliCommandDefinition;
|
|
10
|
+
}): void;
|
|
11
|
+
/**
|
|
12
|
+
* Command for listing all tenants.
|
|
13
|
+
* @param engineCore The engine core.
|
|
14
|
+
* @param envVars The environment variables for the node.
|
|
15
|
+
* @returns The list of tenants.
|
|
16
|
+
*/
|
|
17
|
+
export declare function tenantList(engineCore: IEngineCore, envVars: IEnvironmentVariables): Promise<{
|
|
18
|
+
id: string;
|
|
19
|
+
apiKey: string;
|
|
20
|
+
organizationId: string;
|
|
21
|
+
label: string;
|
|
22
|
+
}[]>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ITenant } from "@twin.org/api-models";
|
|
2
|
+
import type { IEngineCore } from "@twin.org/engine-models";
|
|
3
|
+
import type { ICliCommandDefinition } from "../models/ICliCommandDefinition.js";
|
|
4
|
+
import type { IEnvironmentVariables } from "../models/IEnvironmentVariables.js";
|
|
5
|
+
/**
|
|
6
|
+
* Get the command definition parameters.
|
|
7
|
+
* @param commandDefinitions The registered command definitions.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getCommandDefinitionTenantListByOrg(commandDefinitions: {
|
|
10
|
+
[id: string]: ICliCommandDefinition;
|
|
11
|
+
}): void;
|
|
12
|
+
/**
|
|
13
|
+
* Command for listing all tenants associated with an organization DID.
|
|
14
|
+
* @param engineCore The engine core.
|
|
15
|
+
* @param envVars The environment variables for the node.
|
|
16
|
+
* @param params The parameters for the command.
|
|
17
|
+
* @param params.orgId The organization DID to filter by.
|
|
18
|
+
* @returns The matching tenants.
|
|
19
|
+
*/
|
|
20
|
+
export declare function tenantListByOrg(engineCore: IEngineCore, envVars: IEnvironmentVariables, params: {
|
|
21
|
+
orgId?: string;
|
|
22
|
+
}): Promise<ITenant[]>;
|
|
@@ -5,7 +5,7 @@ import type { IEnvironmentVariables } from "../models/IEnvironmentVariables.js";
|
|
|
5
5
|
* Get the command definition parameters.
|
|
6
6
|
* @param commandDefinitions The registered command definitions.
|
|
7
7
|
*/
|
|
8
|
-
export declare function
|
|
8
|
+
export declare function getCommandDefinitionTenantOrgIdSet(commandDefinitions: {
|
|
9
9
|
[id: string]: ICliCommandDefinition;
|
|
10
10
|
}): void;
|
|
11
11
|
/**
|
|
@@ -17,7 +17,7 @@ export declare function getCommandDefinitionSetTenantOrgId(commandDefinitions: {
|
|
|
17
17
|
* @param params.organizationId The organization ID to set.
|
|
18
18
|
* @returns A promise that resolves when the tenant organization ID has been stored.
|
|
19
19
|
*/
|
|
20
|
-
export declare function
|
|
20
|
+
export declare function tenantOrgIdSet(engineCore: IEngineCore, envVars: IEnvironmentVariables, params: {
|
|
21
21
|
tenantId?: string;
|
|
22
22
|
organizationId?: string;
|
|
23
23
|
}): Promise<void>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { IAuthenticationUser } from "@twin.org/api-auth-entity-storage-models";
|
|
2
|
+
import type { IEngineCore } from "@twin.org/engine-models";
|
|
3
|
+
import type { ICliCommandDefinition } from "../models/ICliCommandDefinition.js";
|
|
4
|
+
import type { IEnvironmentVariables } from "../models/IEnvironmentVariables.js";
|
|
5
|
+
/**
|
|
6
|
+
* Get the command definition parameters.
|
|
7
|
+
* @param commandDefinitions The registered command definitions.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getCommandDefinitionUserGet(commandDefinitions: {
|
|
10
|
+
[id: string]: ICliCommandDefinition;
|
|
11
|
+
}): void;
|
|
12
|
+
/**
|
|
13
|
+
* Command for retrieving a single user by email address.
|
|
14
|
+
* @param engineCore The engine core.
|
|
15
|
+
* @param envVars The environment variables for the node.
|
|
16
|
+
* @param params The parameters for the command.
|
|
17
|
+
* @param params.email The email address of the user to retrieve.
|
|
18
|
+
* @param params.tenantId The tenant ID (multi-tenant mode only).
|
|
19
|
+
* @returns The user record.
|
|
20
|
+
*/
|
|
21
|
+
export declare function userGet(engineCore: IEngineCore, envVars: IEnvironmentVariables, params: {
|
|
22
|
+
email?: string;
|
|
23
|
+
tenantId?: string;
|
|
24
|
+
}): Promise<IAuthenticationUser>;
|
|
@@ -22,6 +22,10 @@ export interface ICliCommandDefinition {
|
|
|
22
22
|
* The params available for the command.
|
|
23
23
|
*/
|
|
24
24
|
params: ICliCommandDefinitionParam[];
|
|
25
|
+
/**
|
|
26
|
+
* Deprecated names that resolve to this command with a warning.
|
|
27
|
+
*/
|
|
28
|
+
aliases?: string[];
|
|
25
29
|
/**
|
|
26
30
|
* The method to execute for the command.
|
|
27
31
|
*/
|
|
@@ -43,4 +47,8 @@ export interface ICliCommandDefinition {
|
|
|
43
47
|
* @default true
|
|
44
48
|
*/
|
|
45
49
|
requiresOrgIdentity?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Indicates whether this command is only available in single-tenant mode.
|
|
52
|
+
*/
|
|
53
|
+
singleTenantOnly?: boolean;
|
|
46
54
|
}
|
|
@@ -38,6 +38,10 @@ export interface IEngineEnvironmentVariables {
|
|
|
38
38
|
* Is multi-tenant support enabled, defaults to false.
|
|
39
39
|
*/
|
|
40
40
|
tenantEnabled?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Enable schema migration, defaults to true.
|
|
43
|
+
*/
|
|
44
|
+
schemaMigrationEnabled?: string;
|
|
41
45
|
/**
|
|
42
46
|
* The type of the entity storage to create, comma separate for more than one connector.
|
|
43
47
|
* values: file, memory, aws-dynamodb, azure-cosmosdb, gcp-firestoredb, scylladb, mysql, mongodb, postgresql
|
|
@@ -289,7 +293,7 @@ export interface IEngineEnvironmentVariables {
|
|
|
289
293
|
*/
|
|
290
294
|
hashicorpVaultEndpoint?: string;
|
|
291
295
|
/**
|
|
292
|
-
* The type of logging task connector, can be a comma separated list: console, entity-storage.
|
|
296
|
+
* The type of logging task connector, can be a comma separated list: console, entity-storage, otel, file.
|
|
293
297
|
*/
|
|
294
298
|
loggingConnector?: string;
|
|
295
299
|
/**
|
|
@@ -300,10 +304,50 @@ export interface IEngineEnvironmentVariables {
|
|
|
300
304
|
* The batch flush interval in seconds for the logging task, how often to flush the logs when using batching, defaults to 5 seconds.
|
|
301
305
|
*/
|
|
302
306
|
loggingBatchFlushInterval?: string;
|
|
307
|
+
/**
|
|
308
|
+
* Delete log entries older than this many milliseconds for the entity-storage logging connector.
|
|
309
|
+
* Set to 0 to disable age-based retention.
|
|
310
|
+
* @default 172800000 (2 days)
|
|
311
|
+
*/
|
|
312
|
+
loggingRetainForMs?: string;
|
|
313
|
+
/**
|
|
314
|
+
* Keep at most this many log entries for the entity-storage logging connector.
|
|
315
|
+
* Set to 0 to disable count-based retention.
|
|
316
|
+
* @default 10000
|
|
317
|
+
*/
|
|
318
|
+
loggingMaxEntries?: string;
|
|
319
|
+
/**
|
|
320
|
+
* How often the retention cleanup task runs in milliseconds for the entity-storage logging connector.
|
|
321
|
+
* Set to 0 to disable periodic cleanup.
|
|
322
|
+
* @default 300000 (5 minutes)
|
|
323
|
+
*/
|
|
324
|
+
loggingRetentionIntervalMs?: string;
|
|
325
|
+
/**
|
|
326
|
+
* Maximum number of entries deleted per cleanup batch for the entity-storage logging connector.
|
|
327
|
+
* Keeping this value smaller helps avoid spikes in database load.
|
|
328
|
+
* @default 1000
|
|
329
|
+
*/
|
|
330
|
+
loggingRetentionBatchSize?: string;
|
|
303
331
|
/**
|
|
304
332
|
* A list of components to exclude from logging, can be a comma separated list of component Class names e.g. "ComponentA,ComponentB".
|
|
305
333
|
*/
|
|
306
334
|
loggingSilentComponents?: string;
|
|
335
|
+
/**
|
|
336
|
+
* The directory to write log files into when using the file logging connector. Required when TWIN_LOGGING_CONNECTOR includes "file".
|
|
337
|
+
*/
|
|
338
|
+
loggingFileDirectory?: string;
|
|
339
|
+
/**
|
|
340
|
+
* The log filename when using the file logging connector, defaults to "app.log".
|
|
341
|
+
*/
|
|
342
|
+
loggingFileFilename?: string;
|
|
343
|
+
/**
|
|
344
|
+
* The maximum log file size in bytes before rotation when using the file logging connector, defaults to 10485760 (10 MB). Set to 0 or negative to disable rotation.
|
|
345
|
+
*/
|
|
346
|
+
loggingFileMaxFileSizeBytes?: string;
|
|
347
|
+
/**
|
|
348
|
+
* The number of rotated log files to retain when using the file logging connector, defaults to 5. Set to 0 or negative to keep all rotated files.
|
|
349
|
+
*/
|
|
350
|
+
loggingFileMaxRetainedFiles?: string;
|
|
307
351
|
/**
|
|
308
352
|
* The name of the OpenTelemetry logger, only required if using open-telemetry as logging connector, defaults to twin-logging.
|
|
309
353
|
*/
|
|
@@ -428,6 +472,10 @@ export interface IEngineEnvironmentVariables {
|
|
|
428
472
|
* The index of the wallet address to use, defaults to 0.
|
|
429
473
|
*/
|
|
430
474
|
identityWalletAddressIndex?: string;
|
|
475
|
+
/**
|
|
476
|
+
* The TTL in milliseconds for caching resolved DIDs when using the IOTA identity connector. Omit to use the connector default.
|
|
477
|
+
*/
|
|
478
|
+
identityDidResolutionCacheTtlMs?: string;
|
|
431
479
|
/**
|
|
432
480
|
* The type of identity resolver connector: entity-storage, iota.
|
|
433
481
|
*/
|
|
@@ -448,6 +496,14 @@ export interface IEngineEnvironmentVariables {
|
|
|
448
496
|
* IOTA coin type.
|
|
449
497
|
*/
|
|
450
498
|
iotaCoinType?: string;
|
|
499
|
+
/**
|
|
500
|
+
* IOTA gas budget, in nanos.
|
|
501
|
+
*/
|
|
502
|
+
iotaGasBudget?: string;
|
|
503
|
+
/**
|
|
504
|
+
* IOTA gas reservation duration, in seconds.
|
|
505
|
+
*/
|
|
506
|
+
iotaGasReservationDuration?: string;
|
|
451
507
|
/**
|
|
452
508
|
* IOTA Explorer Endpoint.
|
|
453
509
|
*/
|
|
@@ -524,6 +580,10 @@ export interface IEngineEnvironmentVariables {
|
|
|
524
580
|
* Federated catalog remote endpoint, if set will use a REST client instead of local service.
|
|
525
581
|
*/
|
|
526
582
|
federatedCatalogueRemoteEndpoint?: string;
|
|
583
|
+
/**
|
|
584
|
+
* The path prefix used by the federated catalogue REST client when forwarding requests to the remote endpoint, defaults to "federated-catalogue".
|
|
585
|
+
*/
|
|
586
|
+
federatedCatalogueRestClientPathPrefix?: string;
|
|
527
587
|
/**
|
|
528
588
|
* The trust generators to add to the factory, comma separated list.
|
|
529
589
|
*/
|
|
@@ -604,10 +664,18 @@ export interface IEngineEnvironmentVariables {
|
|
|
604
664
|
*/
|
|
605
665
|
dataspaceActivityLogsCleanupInterval?: string;
|
|
606
666
|
/**
|
|
607
|
-
*
|
|
608
|
-
*
|
|
609
|
-
*
|
|
610
|
-
*
|
|
667
|
+
* Base route path for the data plane service (path only, not full URL).
|
|
668
|
+
* Combined with the public origin to form the `dataAddress.endpoint` sent to PULL consumers
|
|
669
|
+
* and the inbox URL sent to PUSH providers.
|
|
670
|
+
*
|
|
671
|
+
* This must be the mount-point prefix of the data plane routes, NOT a specific route path.
|
|
672
|
+
* Do NOT append sub-paths such as `/entities` or `/inbox` — those are appended automatically
|
|
673
|
+
* by each transfer handler and by the data plane REST client.
|
|
674
|
+
*
|
|
675
|
+
* REQUIRED if PULL or PUSH transfers are supported.
|
|
676
|
+
* If not specified, PULL and PUSH transfers will not be available.
|
|
677
|
+
*
|
|
678
|
+
* Example: "dataspace"
|
|
611
679
|
*/
|
|
612
680
|
dataspaceDataPlanePath?: string;
|
|
613
681
|
/**
|
package/docs/changelog.md
CHANGED
|
@@ -1,5 +1,77 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.9.1-next.11](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.10...node-core-v0.9.1-next.11) (2026-07-24)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* migration options ([#293](https://github.com/iotaledger/twin-node/issues/293)) ([91acc88](https://github.com/iotaledger/twin-node/commit/91acc881f665be0177b2e895e2810dd4d6145105))
|
|
9
|
+
|
|
10
|
+
## [0.9.1-next.10](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.9...node-core-v0.9.1-next.10) (2026-07-21)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* update dependencies ([64c8ea8](https://github.com/iotaledger/twin-node/commit/64c8ea8c8b5e918f7ad419c4e3b8d08faf5e3fdd))
|
|
16
|
+
|
|
17
|
+
## [0.9.1-next.9](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.8...node-core-v0.9.1-next.9) (2026-07-21)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* enhanced cli commands ([#288](https://github.com/iotaledger/twin-node/issues/288)) ([479fb34](https://github.com/iotaledger/twin-node/commit/479fb3448c493a134aee35b69ae39458e493a4ad))
|
|
23
|
+
* expose gasBudget and gasReservationDuration as configurable env vars ([#286](https://github.com/iotaledger/twin-node/issues/286)) ([d678b27](https://github.com/iotaledger/twin-node/commit/d678b27d629930a6ce85eeab9caf89d1187c3461))
|
|
24
|
+
* file logging config ([#287](https://github.com/iotaledger/twin-node/issues/287)) ([a567b25](https://github.com/iotaledger/twin-node/commit/a567b253cbb8b9af872bb0e494c013212f4f55a2))
|
|
25
|
+
|
|
26
|
+
## [0.9.1-next.8](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.7...node-core-v0.9.1-next.8) (2026-07-10)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
### Miscellaneous Chores
|
|
30
|
+
|
|
31
|
+
* **node-core:** Synchronize repo versions
|
|
32
|
+
|
|
33
|
+
## [0.9.1-next.7](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.6...node-core-v0.9.1-next.7) (2026-07-08)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
### Bug Fixes
|
|
37
|
+
|
|
38
|
+
* update dependencies ([#279](https://github.com/iotaledger/twin-node/issues/279)) ([2c0de07](https://github.com/iotaledger/twin-node/commit/2c0de07a15541e73612ba5bd62f4f566e4efca34))
|
|
39
|
+
|
|
40
|
+
## [0.9.1-next.6](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.5...node-core-v0.9.1-next.6) (2026-07-03)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
### Features
|
|
44
|
+
|
|
45
|
+
* use core env helpers ([568fbc5](https://github.com/iotaledger/twin-node/commit/568fbc53906b022bc8465ffb941a160075d88e96))
|
|
46
|
+
|
|
47
|
+
## [0.9.1-next.5](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.4...node-core-v0.9.1-next.5) (2026-07-02)
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
### Features
|
|
51
|
+
|
|
52
|
+
* dataspace plane path ([#272](https://github.com/iotaledger/twin-node/issues/272)) ([5998eeb](https://github.com/iotaledger/twin-node/commit/5998eeb6fa1392ae753eb6bafeccefa1fb690573))
|
|
53
|
+
|
|
54
|
+
## [0.9.1-next.4](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.3...node-core-v0.9.1-next.4) (2026-07-01)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
### Features
|
|
58
|
+
|
|
59
|
+
* additional cli commands ([#269](https://github.com/iotaledger/twin-node/issues/269)) ([c9e7c93](https://github.com/iotaledger/twin-node/commit/c9e7c939aedfceed9cbe501f2dc936e84289ed62))
|
|
60
|
+
|
|
61
|
+
## [0.9.1-next.3](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.2...node-core-v0.9.1-next.3) (2026-06-30)
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
### Features
|
|
65
|
+
|
|
66
|
+
* add new endpoints ([cc6e30d](https://github.com/iotaledger/twin-node/commit/cc6e30d85f7ed8018697462a7100e5c2f4e8f407))
|
|
67
|
+
|
|
68
|
+
## [0.9.1-next.2](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.1...node-core-v0.9.1-next.2) (2026-06-29)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
### Features
|
|
72
|
+
|
|
73
|
+
* update components ([35cdfdc](https://github.com/iotaledger/twin-node/commit/35cdfdcba2b52599b4db3afd8c9e6dd17468b21e))
|
|
74
|
+
|
|
3
75
|
## [0.9.1-next.1](https://github.com/iotaledger/twin-node/compare/node-core-v0.9.1-next.0...node-core-v0.9.1-next.1) (2026-06-26)
|
|
4
76
|
|
|
5
77
|
|
|
@@ -36,6 +36,14 @@ The params available for the command.
|
|
|
36
36
|
|
|
37
37
|
***
|
|
38
38
|
|
|
39
|
+
### aliases? {#aliases}
|
|
40
|
+
|
|
41
|
+
> `optional` **aliases?**: `string`[]
|
|
42
|
+
|
|
43
|
+
Deprecated names that resolve to this command with a warning.
|
|
44
|
+
|
|
45
|
+
***
|
|
46
|
+
|
|
39
47
|
### action {#action}
|
|
40
48
|
|
|
41
49
|
> **action**: (`engineCore`, `envVars`, `params`) => `Promise`\<`unknown`\>
|
|
@@ -99,3 +107,11 @@ Indicates whether the engine needs the organization identity to be set.
|
|
|
99
107
|
```ts
|
|
100
108
|
true
|
|
101
109
|
```
|
|
110
|
+
|
|
111
|
+
***
|
|
112
|
+
|
|
113
|
+
### singleTenantOnly? {#singletenantonly}
|
|
114
|
+
|
|
115
|
+
> `optional` **singleTenantOnly?**: `boolean`
|
|
116
|
+
|
|
117
|
+
Indicates whether this command is only available in single-tenant mode.
|
|
@@ -73,6 +73,14 @@ Is multi-tenant support enabled, defaults to false.
|
|
|
73
73
|
|
|
74
74
|
***
|
|
75
75
|
|
|
76
|
+
### schemaMigrationEnabled? {#schemamigrationenabled}
|
|
77
|
+
|
|
78
|
+
> `optional` **schemaMigrationEnabled?**: `string`
|
|
79
|
+
|
|
80
|
+
Enable schema migration, defaults to true.
|
|
81
|
+
|
|
82
|
+
***
|
|
83
|
+
|
|
76
84
|
### entityStorageConnectorType? {#entitystorageconnectortype}
|
|
77
85
|
|
|
78
86
|
> `optional` **entityStorageConnectorType?**: `string`
|
|
@@ -575,7 +583,7 @@ Hashicorp Vault endpoint.
|
|
|
575
583
|
|
|
576
584
|
> `optional` **loggingConnector?**: `string`
|
|
577
585
|
|
|
578
|
-
The type of logging task connector, can be a comma separated list: console, entity-storage.
|
|
586
|
+
The type of logging task connector, can be a comma separated list: console, entity-storage, otel, file.
|
|
579
587
|
|
|
580
588
|
***
|
|
581
589
|
|
|
@@ -595,6 +603,66 @@ The batch flush interval in seconds for the logging task, how often to flush the
|
|
|
595
603
|
|
|
596
604
|
***
|
|
597
605
|
|
|
606
|
+
### loggingRetainForMs? {#loggingretainforms}
|
|
607
|
+
|
|
608
|
+
> `optional` **loggingRetainForMs?**: `string`
|
|
609
|
+
|
|
610
|
+
Delete log entries older than this many milliseconds for the entity-storage logging connector.
|
|
611
|
+
Set to 0 to disable age-based retention.
|
|
612
|
+
|
|
613
|
+
#### Default
|
|
614
|
+
|
|
615
|
+
```ts
|
|
616
|
+
172800000 (2 days)
|
|
617
|
+
```
|
|
618
|
+
|
|
619
|
+
***
|
|
620
|
+
|
|
621
|
+
### loggingMaxEntries? {#loggingmaxentries}
|
|
622
|
+
|
|
623
|
+
> `optional` **loggingMaxEntries?**: `string`
|
|
624
|
+
|
|
625
|
+
Keep at most this many log entries for the entity-storage logging connector.
|
|
626
|
+
Set to 0 to disable count-based retention.
|
|
627
|
+
|
|
628
|
+
#### Default
|
|
629
|
+
|
|
630
|
+
```ts
|
|
631
|
+
10000
|
|
632
|
+
```
|
|
633
|
+
|
|
634
|
+
***
|
|
635
|
+
|
|
636
|
+
### loggingRetentionIntervalMs? {#loggingretentionintervalms}
|
|
637
|
+
|
|
638
|
+
> `optional` **loggingRetentionIntervalMs?**: `string`
|
|
639
|
+
|
|
640
|
+
How often the retention cleanup task runs in milliseconds for the entity-storage logging connector.
|
|
641
|
+
Set to 0 to disable periodic cleanup.
|
|
642
|
+
|
|
643
|
+
#### Default
|
|
644
|
+
|
|
645
|
+
```ts
|
|
646
|
+
300000 (5 minutes)
|
|
647
|
+
```
|
|
648
|
+
|
|
649
|
+
***
|
|
650
|
+
|
|
651
|
+
### loggingRetentionBatchSize? {#loggingretentionbatchsize}
|
|
652
|
+
|
|
653
|
+
> `optional` **loggingRetentionBatchSize?**: `string`
|
|
654
|
+
|
|
655
|
+
Maximum number of entries deleted per cleanup batch for the entity-storage logging connector.
|
|
656
|
+
Keeping this value smaller helps avoid spikes in database load.
|
|
657
|
+
|
|
658
|
+
#### Default
|
|
659
|
+
|
|
660
|
+
```ts
|
|
661
|
+
1000
|
|
662
|
+
```
|
|
663
|
+
|
|
664
|
+
***
|
|
665
|
+
|
|
598
666
|
### loggingSilentComponents? {#loggingsilentcomponents}
|
|
599
667
|
|
|
600
668
|
> `optional` **loggingSilentComponents?**: `string`
|
|
@@ -603,6 +671,38 @@ A list of components to exclude from logging, can be a comma separated list of c
|
|
|
603
671
|
|
|
604
672
|
***
|
|
605
673
|
|
|
674
|
+
### loggingFileDirectory? {#loggingfiledirectory}
|
|
675
|
+
|
|
676
|
+
> `optional` **loggingFileDirectory?**: `string`
|
|
677
|
+
|
|
678
|
+
The directory to write log files into when using the file logging connector. Required when TWIN_LOGGING_CONNECTOR includes "file".
|
|
679
|
+
|
|
680
|
+
***
|
|
681
|
+
|
|
682
|
+
### loggingFileFilename? {#loggingfilefilename}
|
|
683
|
+
|
|
684
|
+
> `optional` **loggingFileFilename?**: `string`
|
|
685
|
+
|
|
686
|
+
The log filename when using the file logging connector, defaults to "app.log".
|
|
687
|
+
|
|
688
|
+
***
|
|
689
|
+
|
|
690
|
+
### loggingFileMaxFileSizeBytes? {#loggingfilemaxfilesizebytes}
|
|
691
|
+
|
|
692
|
+
> `optional` **loggingFileMaxFileSizeBytes?**: `string`
|
|
693
|
+
|
|
694
|
+
The maximum log file size in bytes before rotation when using the file logging connector, defaults to 10485760 (10 MB). Set to 0 or negative to disable rotation.
|
|
695
|
+
|
|
696
|
+
***
|
|
697
|
+
|
|
698
|
+
### loggingFileMaxRetainedFiles? {#loggingfilemaxretainedfiles}
|
|
699
|
+
|
|
700
|
+
> `optional` **loggingFileMaxRetainedFiles?**: `string`
|
|
701
|
+
|
|
702
|
+
The number of rotated log files to retain when using the file logging connector, defaults to 5. Set to 0 or negative to keep all rotated files.
|
|
703
|
+
|
|
704
|
+
***
|
|
705
|
+
|
|
606
706
|
### openTelemetryLoggingLoggerName? {#opentelemetryloggingloggername}
|
|
607
707
|
|
|
608
708
|
> `optional` **openTelemetryLoggingLoggerName?**: `string`
|
|
@@ -851,6 +951,14 @@ The index of the wallet address to use, defaults to 0.
|
|
|
851
951
|
|
|
852
952
|
***
|
|
853
953
|
|
|
954
|
+
### identityDidResolutionCacheTtlMs? {#identitydidresolutioncachettlms}
|
|
955
|
+
|
|
956
|
+
> `optional` **identityDidResolutionCacheTtlMs?**: `string`
|
|
957
|
+
|
|
958
|
+
The TTL in milliseconds for caching resolved DIDs when using the IOTA identity connector. Omit to use the connector default.
|
|
959
|
+
|
|
960
|
+
***
|
|
961
|
+
|
|
854
962
|
### identityResolverConnector? {#identityresolverconnector}
|
|
855
963
|
|
|
856
964
|
> `optional` **identityResolverConnector?**: `string`
|
|
@@ -891,6 +999,22 @@ IOTA coin type.
|
|
|
891
999
|
|
|
892
1000
|
***
|
|
893
1001
|
|
|
1002
|
+
### iotaGasBudget? {#iotagasbudget}
|
|
1003
|
+
|
|
1004
|
+
> `optional` **iotaGasBudget?**: `string`
|
|
1005
|
+
|
|
1006
|
+
IOTA gas budget, in nanos.
|
|
1007
|
+
|
|
1008
|
+
***
|
|
1009
|
+
|
|
1010
|
+
### iotaGasReservationDuration? {#iotagasreservationduration}
|
|
1011
|
+
|
|
1012
|
+
> `optional` **iotaGasReservationDuration?**: `string`
|
|
1013
|
+
|
|
1014
|
+
IOTA gas reservation duration, in seconds.
|
|
1015
|
+
|
|
1016
|
+
***
|
|
1017
|
+
|
|
894
1018
|
### iotaExplorerEndpoint? {#iotaexplorerendpoint}
|
|
895
1019
|
|
|
896
1020
|
> `optional` **iotaExplorerEndpoint?**: `string`
|
|
@@ -1043,6 +1167,14 @@ Federated catalog remote endpoint, if set will use a REST client instead of loca
|
|
|
1043
1167
|
|
|
1044
1168
|
***
|
|
1045
1169
|
|
|
1170
|
+
### federatedCatalogueRestClientPathPrefix? {#federatedcataloguerestclientpathprefix}
|
|
1171
|
+
|
|
1172
|
+
> `optional` **federatedCatalogueRestClientPathPrefix?**: `string`
|
|
1173
|
+
|
|
1174
|
+
The path prefix used by the federated catalogue REST client when forwarding requests to the remote endpoint, defaults to "federated-catalogue".
|
|
1175
|
+
|
|
1176
|
+
***
|
|
1177
|
+
|
|
1046
1178
|
### trustGenerators? {#trustgenerators}
|
|
1047
1179
|
|
|
1048
1180
|
> `optional` **trustGenerators?**: `string`
|
|
@@ -1204,10 +1336,18 @@ The interval in seconds for cleaning up the activity logs.
|
|
|
1204
1336
|
|
|
1205
1337
|
> `optional` **dataspaceDataPlanePath?**: `string`
|
|
1206
1338
|
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1339
|
+
Base route path for the data plane service (path only, not full URL).
|
|
1340
|
+
Combined with the public origin to form the `dataAddress.endpoint` sent to PULL consumers
|
|
1341
|
+
and the inbox URL sent to PUSH providers.
|
|
1342
|
+
|
|
1343
|
+
This must be the mount-point prefix of the data plane routes, NOT a specific route path.
|
|
1344
|
+
Do NOT append sub-paths such as `/entities` or `/inbox` — those are appended automatically
|
|
1345
|
+
by each transfer handler and by the data plane REST client.
|
|
1346
|
+
|
|
1347
|
+
REQUIRED if PULL or PUSH transfers are supported.
|
|
1348
|
+
If not specified, PULL and PUSH transfers will not be available.
|
|
1349
|
+
|
|
1350
|
+
Example: "dataspace"
|
|
1211
1351
|
|
|
1212
1352
|
***
|
|
1213
1353
|
|