@twin.org/node 0.9.1-next.7 → 0.9.1-next.9

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.
@@ -424,12 +424,46 @@
424
424
  "invalidUrl": "The JSON-LD processing failed to retrieve from the following url \"{url}\"",
425
425
  "jsonLdError": "The JSON-LD processing failed due to the following error: \"{code}\""
426
426
  },
427
- "dataspaceProtocolHelper": {
428
- "schemaNotRegistered": "JSON Schema \"{schemaId}\" is not registered in DataTypeHandlerFactory"
427
+ "odrlPolicyHelper": {
428
+ "policyMissingAssignee": "The {policyType} with id \"{policyId}\" is missing an assignee.",
429
+ "policyMissingAssigner": "The {policyType} with id \"{policyId}\" is missing an assigner."
430
+ },
431
+ "verificationHelper": {
432
+ "jwtDecodeFailed": "Decoding the JWT failed",
433
+ "proofMissingVerificationMethod": "The proof is missing the verification method"
434
+ },
435
+ "documentHelper": {
436
+ "verificationMethodNotFound": "The verification method \"{methodName}\" of type \"{methodType}\" could not be found",
437
+ "verificationMethodJwkNotFound": "The verification method \"{methodName}\" of type \"{methodType}\" is missing the JWK"
438
+ },
439
+ "proofHelper": {
440
+ "unsupportedProofType": "Proof type \"{proofType}\" not supported."
441
+ },
442
+ "jsonWebSignature2020SignerVerifier": {
443
+ "missingJws": "JWS is missing from proof."
444
+ },
445
+ "dataIntegrityProofSignerVerifier": {
446
+ "cryptosuiteNotSupported": "Cryptosuite \"{cryptoSuite}\" is not supported.",
447
+ "missingPrivateKey": "Private key is missing.",
448
+ "missingPublicKey": "Public key is missing."
449
+ },
450
+ "multikeyHelper": {
451
+ "invalidPublicKeyMultibase": "Public key multibase \"{publicKeyMultibase}\" is invalid.",
452
+ "invalidSecretKeyMultibase": "Secret key multibase \"{secretKeyMultibase}\" is invalid.",
453
+ "unsupportedCrv": "Curve \"{crv}\" is not supported.",
454
+ "unsupportedKty": "Key type \"{kty}\" is not supported.",
455
+ "publicKeyMultibaseMissingHeader": "Public key multibase \"{publicKeyMultibase}\" is missing the multi codec header",
456
+ "secretKeyMultibaseMissingHeader": "Secret key multibase \"{secretKeyMultibase}\" is missing the multi codec header"
429
457
  },
430
458
  "silentTelemetryConnector": {
431
459
  "notSupported": "The method \"{methodName}\" is not supported on silent telemetry connector."
432
460
  },
461
+ "dataspaceProtocolHelper": {
462
+ "schemaNotRegistered": "JSON Schema \"{schemaId}\" is not registered in DataTypeHandlerFactory"
463
+ },
464
+ "trustHelper": {
465
+ "trustVerifyFailed": "Trust verification failed for action \"{action}\""
466
+ },
433
467
  "engineCore": {
434
468
  "componentUnknownType": "Unknown component type \"{type}\" specified for \"{componentType}\"",
435
469
  "bootstrapFailed": "Failed to bootstrap component type \"{className}\" with instance type \"{instanceType}\"",
@@ -463,33 +497,6 @@
463
497
  "destroyFailed": "Destroying the attestation failed",
464
498
  "namespaceMismatch": "The namespace in the urn \"{id}\" does not match the namespace of the NFT Attestation connector \"{namespace}\""
465
499
  },
466
- "proofHelper": {
467
- "unsupportedProofType": "Proof type \"{proofType}\" not supported."
468
- },
469
- "jsonWebSignature2020SignerVerifier": {
470
- "missingJws": "JWS is missing from proof."
471
- },
472
- "dataIntegrityProofSignerVerifier": {
473
- "cryptosuiteNotSupported": "Cryptosuite \"{cryptoSuite}\" is not supported.",
474
- "missingPrivateKey": "Private key is missing.",
475
- "missingPublicKey": "Public key is missing."
476
- },
477
- "multikeyHelper": {
478
- "invalidPublicKeyMultibase": "Public key multibase \"{publicKeyMultibase}\" is invalid.",
479
- "invalidSecretKeyMultibase": "Secret key multibase \"{secretKeyMultibase}\" is invalid.",
480
- "unsupportedCrv": "Curve \"{crv}\" is not supported.",
481
- "unsupportedKty": "Key type \"{kty}\" is not supported.",
482
- "publicKeyMultibaseMissingHeader": "Public key multibase \"{publicKeyMultibase}\" is missing the multi codec header",
483
- "secretKeyMultibaseMissingHeader": "Secret key multibase \"{secretKeyMultibase}\" is missing the multi codec header"
484
- },
485
- "verificationHelper": {
486
- "jwtDecodeFailed": "Decoding the JWT failed",
487
- "proofMissingVerificationMethod": "The proof is missing the verification method"
488
- },
489
- "documentHelper": {
490
- "verificationMethodNotFound": "The verification method \"{methodName}\" of type \"{methodType}\" could not be found",
491
- "verificationMethodJwkNotFound": "The verification method \"{methodName}\" of type \"{methodType}\" is missing the JWK"
492
- },
493
500
  "attestationService": {
494
501
  "noConnectors": "There are no connectors registered with the attestation factory",
495
502
  "attestFailed": "The attestation of the data failed",
@@ -708,13 +715,6 @@
708
715
  "pushTransferDataPathNotConfigured": "POST transfer cannot start: dataPlanePath is not configured (consumerPid: {consumerPid})",
709
716
  "providerIdentityMissing": "Provider identity (DID) is required to sign data access tokens but was not set on the Transfer Process"
710
717
  },
711
- "trustHelper": {
712
- "trustVerifyFailed": "Trust verification failed for action \"{action}\""
713
- },
714
- "odrlPolicyHelper": {
715
- "policyMissingAssignee": "The {policyType} with id \"{policyId}\" is missing an assignee.",
716
- "policyMissingAssigner": "The {policyType} with id \"{policyId}\" is missing an assigner."
717
- },
718
718
  "dataspaceDataPlaneRestClient": {
719
719
  "notSupportedOnClient": "The method \"{methodName}\" is not supported on the REST client, it can only be used on a server side component"
720
720
  },
@@ -741,6 +741,7 @@
741
741
  "pushSubscriptionNotFound": "Push subscription not found for consumerPid \"{notFoundId}\"",
742
742
  "activityLogEntryNotAuthorized": "Unauthorised access to activity log entry — the verified identity is not the entry generator",
743
743
  "pushActivityNotAuthorized": "Unauthorized push activity — no matching STARTED transfer found for the activity generator",
744
+ "dataReadNotAuthorized": "Unauthorized data read: the verified identity is not a party to the transfer (consumerPid: {consumerPid})",
744
745
  "pushActivityNotPermittedByPolicy": "Push activity rejected — the transfer's agreement (\"{agreementId}\") does not permit the activity for consumerPid \"{consumerPid}\"",
745
746
  "processOutboxActivityMultipleTo": "processOutboxActivity does not support multiple recipients — activity.to contains {count} values, expected exactly one consumerPid",
746
747
  "pushSubscriptionCompensationFailed": "Compensating unsubscribeToData failed after push-subscription storage write failed (consumerPid: {consumerPid}, providerPid: {providerPid}) — app may be left with a dangling Follow until orphan cleanup runs",
@@ -1100,6 +1101,9 @@
1100
1101
  "proofNotFound": "The proof with the Id \"{notFoundId}\" was not found",
1101
1102
  "createProofFailed": "Creating the immutable proof failed"
1102
1103
  },
1104
+ "fileLoggingConnector": {
1105
+ "maxFileSizeTooSmall": "The maximum file size of {maxFileSizeBytes} bytes is below the minimum of {minimum} bytes, use 0 to disable rotation"
1106
+ },
1103
1107
  "openTelemetryLoggingConnector": {
1104
1108
  "unknownExporterType": "The exporter type \"{type}\" is not supported, valid values are: otlp"
1105
1109
  },
@@ -1480,7 +1484,8 @@
1480
1484
  "optional": "optional",
1481
1485
  "required": "required",
1482
1486
  "default": "default",
1483
- "options": "options"
1487
+ "options": "options",
1488
+ "singleTenantOnly": "single-tenant only"
1484
1489
  }
1485
1490
  },
1486
1491
  "bootstrap-legacy": {
@@ -2235,12 +2240,14 @@
2235
2240
  },
2236
2241
  "load-env": {
2237
2242
  "description": "Comma separated list of paths to .env files to read input parameters from."
2243
+ },
2244
+ "output-json": {
2245
+ "description": "Path to a .json file to store the resolved DID document."
2238
2246
  }
2239
2247
  },
2240
2248
  "labels": {
2241
2249
  "resolving": "Resolving identity",
2242
- "did": "DID",
2243
- "verificationMethods": "Verification Methods"
2250
+ "did": "DID"
2244
2251
  }
2245
2252
  },
2246
2253
  "org-users-list": {
package/docs/changelog.md CHANGED
@@ -1,5 +1,35 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.9.1-next.9](https://github.com/iotaledger/twin-node/compare/node-v0.9.1-next.8...node-v0.9.1-next.9) (2026-07-21)
4
+
5
+
6
+ ### Features
7
+
8
+ * enhanced cli commands ([#288](https://github.com/iotaledger/twin-node/issues/288)) ([479fb34](https://github.com/iotaledger/twin-node/commit/479fb3448c493a134aee35b69ae39458e493a4ad))
9
+ * 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))
10
+ * file logging config ([#287](https://github.com/iotaledger/twin-node/issues/287)) ([a567b25](https://github.com/iotaledger/twin-node/commit/a567b253cbb8b9af872bb0e494c013212f4f55a2))
11
+
12
+
13
+ ### Dependencies
14
+
15
+ * The following workspace dependencies were updated
16
+ * dependencies
17
+ * @twin.org/node-core bumped from 0.9.1-next.8 to 0.9.1-next.9
18
+
19
+ ## [0.9.1-next.8](https://github.com/iotaledger/twin-node/compare/node-v0.9.1-next.7...node-v0.9.1-next.8) (2026-07-10)
20
+
21
+
22
+ ### Bug Fixes
23
+
24
+ * update dependencies ([#283](https://github.com/iotaledger/twin-node/issues/283)) ([053c53d](https://github.com/iotaledger/twin-node/commit/053c53d45ec233e6936e56f8de8d5a5346ad2242))
25
+
26
+
27
+ ### Dependencies
28
+
29
+ * The following workspace dependencies were updated
30
+ * dependencies
31
+ * @twin.org/node-core bumped from 0.9.1-next.7 to 0.9.1-next.8
32
+
3
33
  ## [0.9.1-next.7](https://github.com/iotaledger/twin-node/compare/node-v0.9.1-next.6...node-v0.9.1-next.7) (2026-07-08)
4
34
 
5
35
 
@@ -15689,7 +15689,7 @@
15689
15689
  "parameters": [
15690
15690
  {
15691
15691
  "name": "conditions",
15692
- "description": "The conditions to filter the stream, JSON stringified `EntityCondition<IAuditableItemStream>.",
15692
+ "description": "The conditions to filter the stream, JSON stringified `EntityCondition<IAuditableItemStreamEntry>`.",
15693
15693
  "in": "query",
15694
15694
  "required": false,
15695
15695
  "schema": {
package/docs/usage.md CHANGED
@@ -37,8 +37,8 @@ node-identity-get: Get the identity currently assigned to the node
37
37
  node-identity-set: Set the node identity
38
38
  org-users-list: List all users belonging to an organization DID
39
39
  remove-tenant-org-alias: Remove an alias from the tenant organization ID legacy list
40
- node-org-id-get: Get the organization ID currently assigned to the node
41
- node-org-id-set: Set the node organization ID
40
+ node-org-id-get: Get the organization ID currently assigned to the node (single-tenant only)
41
+ node-org-id-set: Set the node organization ID (single-tenant only)
42
42
  tenant-org-id-set: Set the organization ID for a tenant
43
43
  tenant-create: Create a tenant with associated api key
44
44
  tenant-get: Get the full configuration record for a single tenant
@@ -164,6 +164,9 @@ The DID to resolve.
164
164
  load-env: (string, optional)
165
165
  Comma separated list of paths to .env files to read input parameters from.
166
166
 
167
+ output-json: (string, optional)
168
+ Path to a .json file to store the resolved DID document.
169
+
167
170
  Example: identity-resolve --identity="did:iota:..."
168
171
  ```
169
172
 
@@ -185,6 +188,7 @@ Example: node-identity-get
185
188
 
186
189
  ```text
187
190
  node-org-id-get: Get the organization ID currently assigned to the node
191
+ single-tenant only
188
192
 
189
193
  env-prefix: (string, optional)
190
194
  Prefix to use for standard .env files e.g. TWIN_.
@@ -195,6 +199,26 @@ Comma separated list of paths to .env files to read input parameters from.
195
199
  Example: node-org-id-get
196
200
  ```
197
201
 
202
+ ## node-org-id-set --help
203
+
204
+ ```text
205
+ node-org-id-set: Set the node organization ID
206
+ single-tenant only
207
+
208
+ env-prefix: (string, optional)
209
+ Prefix to use for standard .env files e.g. TWIN_.
210
+
211
+ organization-id: (string, did, required)
212
+ The organization DID to set as the node organization ID.
213
+
214
+ load-env: (string, optional)
215
+ Comma separated list of paths to .env files to read input parameters from.
216
+
217
+ Deprecated aliases: set-node-org-id
218
+
219
+ Example: node-org-id-set --organization-id="did:iota:..."
220
+ ```
221
+
198
222
  ## org-users-list --help
199
223
 
200
224
  ```text
@@ -436,10 +460,11 @@ twin-node node-org-id-get
436
460
 
437
461
  ### Resolve an identity
438
462
 
439
- Resolve any DID to its full document, including its verification methods:
463
+ Resolve any DID to its full document. Pass `--output-json` to save the document to a file:
440
464
 
441
465
  ```shell
442
466
  twin-node identity-resolve --identity="did:iota:..."
467
+ twin-node identity-resolve --identity="did:iota:..." --output-json="did-document.json"
443
468
  ```
444
469
 
445
470
  ### List all identities
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twin.org/node",
3
- "version": "0.9.1-next.7",
3
+ "version": "0.9.1-next.9",
4
4
  "description": "TWIN Node serving APIs using the specified configuration",
5
5
  "repository": {
6
6
  "type": "git",
@@ -14,7 +14,7 @@
14
14
  "node": ">=20.0.0"
15
15
  },
16
16
  "dependencies": {
17
- "@twin.org/node-core": "0.9.1-next.7"
17
+ "@twin.org/node-core": "0.9.1-next.9"
18
18
  },
19
19
  "bugs": {
20
20
  "url": "git+https://github.com/iotaledger/twin-node/issues"