@twin.org/dataspace-control-plane-service 0.9.0 → 0.9.1-next.10
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/README.md +1 -1
- package/dist/es/dataspaceControlPlaneRoutes.js +79 -7
- package/dist/es/dataspaceControlPlaneRoutes.js.map +1 -1
- package/dist/es/dataspaceControlPlaneService.js +121 -356
- package/dist/es/dataspaceControlPlaneService.js.map +1 -1
- package/dist/es/factories/transferHandlerFactory.js +11 -0
- package/dist/es/factories/transferHandlerFactory.js.map +1 -0
- package/dist/es/handlers/httpDataPostTransferHandler.js +111 -0
- package/dist/es/handlers/httpDataPostTransferHandler.js.map +1 -0
- package/dist/es/handlers/httpDataPullTransferHandler.js +108 -0
- package/dist/es/handlers/httpDataPullTransferHandler.js.map +1 -0
- package/dist/es/handlers/httpDataPushTransferHandler.js +114 -0
- package/dist/es/handlers/httpDataPushTransferHandler.js.map +1 -0
- package/dist/es/index.js +7 -0
- package/dist/es/index.js.map +1 -1
- package/dist/es/models/IDataspaceControlPlaneServiceConfig.js.map +1 -1
- package/dist/es/models/ITransferHandler.js +2 -0
- package/dist/es/models/ITransferHandler.js.map +1 -0
- package/dist/es/models/ITransferHandlerPrepareContext.js +4 -0
- package/dist/es/models/ITransferHandlerPrepareContext.js.map +1 -0
- package/dist/es/models/ITransferHandlerStartContext.js +2 -0
- package/dist/es/models/ITransferHandlerStartContext.js.map +1 -0
- package/dist/types/dataspaceControlPlaneRoutes.d.ts +1 -1
- package/dist/types/dataspaceControlPlaneService.d.ts +6 -1
- package/dist/types/factories/transferHandlerFactory.d.ts +8 -0
- package/dist/types/handlers/httpDataPostTransferHandler.d.ts +63 -0
- package/dist/types/handlers/httpDataPullTransferHandler.d.ts +63 -0
- package/dist/types/handlers/httpDataPushTransferHandler.d.ts +68 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/models/IDataspaceControlPlaneServiceConfig.d.ts +10 -5
- package/dist/types/models/ITransferHandler.d.ts +62 -0
- package/dist/types/models/ITransferHandlerPrepareContext.d.ts +21 -0
- package/dist/types/models/ITransferHandlerStartContext.d.ts +31 -0
- package/docs/changelog.md +190 -0
- package/docs/reference/classes/DataspaceControlPlaneService.md +18 -0
- package/docs/reference/classes/HttpDataPostTransferHandler.md +235 -0
- package/docs/reference/classes/HttpDataPullTransferHandler.md +235 -0
- package/docs/reference/classes/HttpDataPushTransferHandler.md +242 -0
- package/docs/reference/index.md +7 -0
- package/docs/reference/interfaces/IDataspaceControlPlaneServiceConfig.md +10 -5
- package/docs/reference/interfaces/ITransferHandler.md +180 -0
- package/docs/reference/interfaces/ITransferHandlerPrepareContext.md +35 -0
- package/docs/reference/interfaces/ITransferHandlerStartContext.md +51 -0
- package/docs/reference/variables/TransferHandlerFactory.md +7 -0
- package/locales/en.json +14 -11
- package/package.json +18 -18
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { IDataspaceDataPlaneComponent } from "@twin.org/dataspace-models";
|
|
2
|
+
import type { DataspaceProtocolTransferProcessStateType, IDataspaceProtocolDataAddress } from "@twin.org/standards-dataspace-protocol";
|
|
3
|
+
import type { ITransferHandler } from "../models/ITransferHandler.js";
|
|
4
|
+
import type { ITransferHandlerPrepareContext } from "../models/ITransferHandlerPrepareContext.js";
|
|
5
|
+
import type { ITransferHandlerStartContext } from "../models/ITransferHandlerStartContext.js";
|
|
6
|
+
/**
|
|
7
|
+
* Transfer handler for HttpData-PULL format.
|
|
8
|
+
* Consumer queries the provider's data endpoint using a bearer token supplied in the
|
|
9
|
+
* TransferStartMessage dataAddress. No data-plane push subscription is involved.
|
|
10
|
+
*/
|
|
11
|
+
export declare class HttpDataPullTransferHandler implements ITransferHandler {
|
|
12
|
+
/**
|
|
13
|
+
* Runtime name for the class.
|
|
14
|
+
*/
|
|
15
|
+
static readonly CLASS_NAME: string;
|
|
16
|
+
/**
|
|
17
|
+
* Returns the class name of the component.
|
|
18
|
+
* @returns The class name of the component.
|
|
19
|
+
*/
|
|
20
|
+
className(): string;
|
|
21
|
+
/**
|
|
22
|
+
* PULL consumers do not supply a dataAddress — the provider generates one on start.
|
|
23
|
+
* @param ctx Prepare context (unused for PULL).
|
|
24
|
+
* @returns undefined.
|
|
25
|
+
*/
|
|
26
|
+
buildConsumerDataAddress(ctx: ITransferHandlerPrepareContext): IDataspaceProtocolDataAddress | undefined;
|
|
27
|
+
/**
|
|
28
|
+
* Build the provider's data endpoint and bearer token for the TransferStartMessage.
|
|
29
|
+
* @param ctx Start context containing entity, trust component, and path configuration.
|
|
30
|
+
* @returns The dataAddress carrying the query endpoint and bearer token.
|
|
31
|
+
* @throws GeneralError When dataPlanePath is not configured or providerIdentity is missing.
|
|
32
|
+
*/
|
|
33
|
+
buildProviderStartDataAddress(ctx: ITransferHandlerStartContext): Promise<IDataspaceProtocolDataAddress | undefined>;
|
|
34
|
+
/**
|
|
35
|
+
* No-op: PULL transfers require no push subscription.
|
|
36
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
37
|
+
* @param consumerPid The consumer process ID.
|
|
38
|
+
* @param previousState The state before the STARTED transition.
|
|
39
|
+
* @returns A promise that resolves immediately.
|
|
40
|
+
*/
|
|
41
|
+
onProviderStart(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string, previousState: DataspaceProtocolTransferProcessStateType): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* No-op: PULL transfers have no push subscription to tear down.
|
|
44
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
45
|
+
* @param consumerPid The consumer process ID.
|
|
46
|
+
* @returns A promise that resolves immediately.
|
|
47
|
+
*/
|
|
48
|
+
onComplete(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* No-op: PULL transfers have no push subscription to suspend.
|
|
51
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
52
|
+
* @param consumerPid The consumer process ID.
|
|
53
|
+
* @returns A promise that resolves immediately.
|
|
54
|
+
*/
|
|
55
|
+
onSuspend(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* No-op: PULL transfers have no push subscription to tear down.
|
|
58
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
59
|
+
* @param consumerPid The consumer process ID.
|
|
60
|
+
* @returns A promise that resolves immediately.
|
|
61
|
+
*/
|
|
62
|
+
onTerminate(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
63
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { IDataspaceDataPlaneComponent } from "@twin.org/dataspace-models";
|
|
2
|
+
import { DataspaceProtocolTransferProcessStateType } from "@twin.org/standards-dataspace-protocol";
|
|
3
|
+
import type { IDataspaceProtocolDataAddress } from "@twin.org/standards-dataspace-protocol";
|
|
4
|
+
import type { ITransferHandler } from "../models/ITransferHandler.js";
|
|
5
|
+
import type { ITransferHandlerPrepareContext } from "../models/ITransferHandlerPrepareContext.js";
|
|
6
|
+
import type { ITransferHandlerStartContext } from "../models/ITransferHandlerStartContext.js";
|
|
7
|
+
/**
|
|
8
|
+
* Transfer handler for HttpData-PUSH format (consumer-initiated push).
|
|
9
|
+
* The consumer supplies its /inbox endpoint in the TransferRequestMessage dataAddress.
|
|
10
|
+
* The provider pushes ActivityStreams objects to that endpoint, and returns its own
|
|
11
|
+
* /inbox in the TransferStartMessage so the consumer can route data notifications.
|
|
12
|
+
*/
|
|
13
|
+
export declare class HttpDataPushTransferHandler implements ITransferHandler {
|
|
14
|
+
/**
|
|
15
|
+
* Runtime name for the class.
|
|
16
|
+
*/
|
|
17
|
+
static readonly CLASS_NAME: string;
|
|
18
|
+
/**
|
|
19
|
+
* Returns the class name of the component.
|
|
20
|
+
* @returns The class name of the component.
|
|
21
|
+
*/
|
|
22
|
+
className(): string;
|
|
23
|
+
/**
|
|
24
|
+
* Build the consumer's /inbox dataAddress for the TransferRequestMessage.
|
|
25
|
+
* @param ctx Prepare context containing path and organization identity.
|
|
26
|
+
* @returns The consumer's ActivityStream inbox dataAddress.
|
|
27
|
+
* @throws GeneralError When dataPlanePath is not configured.
|
|
28
|
+
*/
|
|
29
|
+
buildConsumerDataAddress(ctx: ITransferHandlerPrepareContext): IDataspaceProtocolDataAddress | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* Validate the consumer's dataAddress and build the provider's /inbox endpoint
|
|
32
|
+
* for the TransferStartMessage. No bearer token is included — the consumer authenticates
|
|
33
|
+
* via the DSP protocol trust payload on the push POST.
|
|
34
|
+
* @param ctx Start context containing entity and path configuration.
|
|
35
|
+
* @returns The provider's ActivityStream inbox dataAddress.
|
|
36
|
+
* @throws GeneralError When the consumer dataAddress is invalid or dataPlanePath is not configured.
|
|
37
|
+
*/
|
|
38
|
+
buildProviderStartDataAddress(ctx: ITransferHandlerStartContext): Promise<IDataspaceProtocolDataAddress | undefined>;
|
|
39
|
+
/**
|
|
40
|
+
* Set up (or resume) the data-plane push subscription after state is persisted to STARTED.
|
|
41
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
42
|
+
* @param consumerPid The consumer process ID.
|
|
43
|
+
* @param previousState The state before the STARTED transition.
|
|
44
|
+
* @returns A promise that resolves when the subscription is established.
|
|
45
|
+
*/
|
|
46
|
+
onProviderStart(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string, previousState: DataspaceProtocolTransferProcessStateType): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Tear down the push subscription when the transfer completes.
|
|
49
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
50
|
+
* @param consumerPid The consumer process ID.
|
|
51
|
+
* @returns A promise that resolves when the subscription is torn down.
|
|
52
|
+
*/
|
|
53
|
+
onComplete(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* Suspend the push subscription when the transfer is suspended.
|
|
56
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
57
|
+
* @param consumerPid The consumer process ID.
|
|
58
|
+
* @returns A promise that resolves when the subscription is suspended.
|
|
59
|
+
*/
|
|
60
|
+
onSuspend(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
61
|
+
/**
|
|
62
|
+
* Tear down the push subscription when the transfer terminates.
|
|
63
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
64
|
+
* @param consumerPid The consumer process ID.
|
|
65
|
+
* @returns A promise that resolves when the subscription is torn down.
|
|
66
|
+
*/
|
|
67
|
+
onTerminate(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
68
|
+
}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
export * from "./dataspaceControlPlanePolicyRequester.js";
|
|
2
2
|
export * from "./dataspaceControlPlaneRoutes.js";
|
|
3
3
|
export * from "./dataspaceControlPlaneService.js";
|
|
4
|
+
export * from "./factories/transferHandlerFactory.js";
|
|
5
|
+
export * from "./handlers/httpDataPostTransferHandler.js";
|
|
6
|
+
export * from "./handlers/httpDataPullTransferHandler.js";
|
|
7
|
+
export * from "./handlers/httpDataPushTransferHandler.js";
|
|
4
8
|
export * from "./models/endpointProperties.js";
|
|
5
9
|
export * from "./models/IDataspaceControlPlaneServiceConfig.js";
|
|
6
10
|
export * from "./models/IDataspaceControlPlaneServiceConstructorOptions.js";
|
|
7
11
|
export * from "./models/INegotiationState.js";
|
|
12
|
+
export * from "./models/ITransferHandler.js";
|
|
13
|
+
export * from "./models/ITransferHandlerPrepareContext.js";
|
|
14
|
+
export * from "./models/ITransferHandlerStartContext.js";
|
|
8
15
|
export * from "./restEntryPoints.js";
|
|
9
16
|
export * from "./schema.js";
|
|
@@ -8,13 +8,18 @@ export interface IDataspaceControlPlaneServiceConfig {
|
|
|
8
8
|
*/
|
|
9
9
|
overrideTrustGeneratorType?: string;
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
11
|
+
* Base route path for the data plane service (path only, not full URL).
|
|
12
|
+
* Combined with the public origin to form the `dataAddress.endpoint` sent to PULL consumers
|
|
13
|
+
* and the inbox URL sent to PUSH providers.
|
|
13
14
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
15
|
+
* This must be the mount-point prefix of the data plane routes, NOT a specific route path.
|
|
16
|
+
* Do NOT append sub-paths such as `/entities` or `/inbox` — those are appended automatically
|
|
17
|
+
* by each transfer handler and by the data plane REST client.
|
|
16
18
|
*
|
|
17
|
-
*
|
|
19
|
+
* REQUIRED if PULL or PUSH transfers are supported.
|
|
20
|
+
* If not specified, PULL and PUSH transfers will not be available.
|
|
21
|
+
*
|
|
22
|
+
* Example: "dataspace"
|
|
18
23
|
*/
|
|
19
24
|
dataPlanePath?: string;
|
|
20
25
|
/**
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { IComponent } from "@twin.org/core";
|
|
2
|
+
import type { IDataspaceDataPlaneComponent } from "@twin.org/dataspace-models";
|
|
3
|
+
import type { DataspaceProtocolTransferProcessStateType, IDataspaceProtocolDataAddress } from "@twin.org/standards-dataspace-protocol";
|
|
4
|
+
import type { ITransferHandlerPrepareContext } from "./ITransferHandlerPrepareContext.js";
|
|
5
|
+
import type { ITransferHandlerStartContext } from "./ITransferHandlerStartContext.js";
|
|
6
|
+
/**
|
|
7
|
+
* Format-specific handler for transfer process operations.
|
|
8
|
+
* One implementation exists per DataspaceTransferFormat value; the TransferHandlerFactory
|
|
9
|
+
* returns the correct instance keyed on the format string.
|
|
10
|
+
*/
|
|
11
|
+
export interface ITransferHandler extends IComponent {
|
|
12
|
+
/**
|
|
13
|
+
* Optionally build a consumer dataAddress for the TransferRequestMessage.
|
|
14
|
+
* Called during prepareTransfer. Returns undefined for formats that do not
|
|
15
|
+
* require a consumer-supplied dataAddress (PULL and POST).
|
|
16
|
+
* @param ctx The prepare context.
|
|
17
|
+
* @returns The consumer dataAddress, or undefined if not required for this format.
|
|
18
|
+
*/
|
|
19
|
+
buildConsumerDataAddress(ctx: ITransferHandlerPrepareContext): IDataspaceProtocolDataAddress | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* Build the provider dataAddress for the TransferStartMessage.
|
|
22
|
+
* Called during startTransfer (provider role). Throws a GeneralError when
|
|
23
|
+
* required configuration (e.g. dataPlanePath) is absent.
|
|
24
|
+
* @param ctx The start context.
|
|
25
|
+
* @returns The provider dataAddress, or undefined if not applicable.
|
|
26
|
+
*/
|
|
27
|
+
buildProviderStartDataAddress(ctx: ITransferHandlerStartContext): Promise<IDataspaceProtocolDataAddress | undefined>;
|
|
28
|
+
/**
|
|
29
|
+
* Post-start hook for the provider role. Called after state has been persisted
|
|
30
|
+
* to STARTED. PUSH transfers set up (or resume) the data-plane push subscription
|
|
31
|
+
* here; all other formats are no-ops.
|
|
32
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
33
|
+
* @param consumerPid The consumer process ID.
|
|
34
|
+
* @param previousState The state before the STARTED transition.
|
|
35
|
+
* @returns A promise that resolves when the hook completes.
|
|
36
|
+
*/
|
|
37
|
+
onProviderStart(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string, previousState: DataspaceProtocolTransferProcessStateType): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Called after a transfer transitions to COMPLETED.
|
|
40
|
+
* PUSH and POST tear down the push subscription; PULL is a no-op.
|
|
41
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
42
|
+
* @param consumerPid The consumer process ID.
|
|
43
|
+
* @returns A promise that resolves when the hook completes.
|
|
44
|
+
*/
|
|
45
|
+
onComplete(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* Called after a transfer transitions to SUSPENDED.
|
|
48
|
+
* PUSH and POST suspend the push subscription; PULL is a no-op.
|
|
49
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
50
|
+
* @param consumerPid The consumer process ID.
|
|
51
|
+
* @returns A promise that resolves when the hook completes.
|
|
52
|
+
*/
|
|
53
|
+
onSuspend(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* Called after a transfer transitions to TERMINATED.
|
|
56
|
+
* PUSH and POST tear down the push subscription; PULL is a no-op.
|
|
57
|
+
* @param dataPlaneComponent The data plane component instance.
|
|
58
|
+
* @param consumerPid The consumer process ID.
|
|
59
|
+
* @returns A promise that resolves when the hook completes.
|
|
60
|
+
*/
|
|
61
|
+
onTerminate(dataPlaneComponent: IDataspaceDataPlaneComponent, consumerPid: string): Promise<void>;
|
|
62
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context supplied to buildConsumerDataAddress during prepareTransfer.
|
|
3
|
+
*/
|
|
4
|
+
export interface ITransferHandlerPrepareContext {
|
|
5
|
+
/**
|
|
6
|
+
* The consumer process ID.
|
|
7
|
+
*/
|
|
8
|
+
consumerPid: string;
|
|
9
|
+
/**
|
|
10
|
+
* The consumer's base origin URL.
|
|
11
|
+
*/
|
|
12
|
+
origin: string;
|
|
13
|
+
/**
|
|
14
|
+
* The data plane path segment, if configured.
|
|
15
|
+
*/
|
|
16
|
+
dataPlanePath: string | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* The organization identity resolved from the current context.
|
|
19
|
+
*/
|
|
20
|
+
organizationIdentity: string;
|
|
21
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ITransferProcess } from "@twin.org/dataspace-models";
|
|
2
|
+
import type { ITrustComponent } from "@twin.org/trust-models";
|
|
3
|
+
/**
|
|
4
|
+
* Context supplied to buildProviderStartDataAddress during startTransfer (provider role).
|
|
5
|
+
*/
|
|
6
|
+
export interface ITransferHandlerStartContext {
|
|
7
|
+
/**
|
|
8
|
+
* The transfer process entity.
|
|
9
|
+
*/
|
|
10
|
+
entity: ITransferProcess;
|
|
11
|
+
/**
|
|
12
|
+
* The provider's public origin URL.
|
|
13
|
+
*/
|
|
14
|
+
publicOrigin: string;
|
|
15
|
+
/**
|
|
16
|
+
* The data plane path segment, if configured.
|
|
17
|
+
*/
|
|
18
|
+
dataPlanePath: string | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* The organization identity resolved from the current context.
|
|
21
|
+
*/
|
|
22
|
+
organizationIdentity: string;
|
|
23
|
+
/**
|
|
24
|
+
* The trust component for generating access tokens.
|
|
25
|
+
*/
|
|
26
|
+
trustComponent: ITrustComponent;
|
|
27
|
+
/**
|
|
28
|
+
* The override trust generator type, if configured.
|
|
29
|
+
*/
|
|
30
|
+
overrideTrustGeneratorType: string | undefined;
|
|
31
|
+
}
|
package/docs/changelog.md
CHANGED
|
@@ -1,5 +1,195 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.9.1-next.10](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.9...dataspace-control-plane-service-v0.9.1-next.10) (2026-07-20)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Miscellaneous Chores
|
|
7
|
+
|
|
8
|
+
* **dataspace-control-plane-service:** Synchronize repo versions
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Dependencies
|
|
12
|
+
|
|
13
|
+
* The following workspace dependencies were updated
|
|
14
|
+
* dependencies
|
|
15
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.9 to 0.9.1-next.10
|
|
16
|
+
|
|
17
|
+
## [0.9.1-next.9](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.8...dataspace-control-plane-service-v0.9.1-next.9) (2026-07-06)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Miscellaneous Chores
|
|
21
|
+
|
|
22
|
+
* **dataspace-control-plane-service:** Synchronize repo versions
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Dependencies
|
|
26
|
+
|
|
27
|
+
* The following workspace dependencies were updated
|
|
28
|
+
* dependencies
|
|
29
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.8 to 0.9.1-next.9
|
|
30
|
+
|
|
31
|
+
## [0.9.1-next.8](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.7...dataspace-control-plane-service-v0.9.1-next.8) (2026-07-02)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
### Bug Fixes
|
|
35
|
+
|
|
36
|
+
* defer catalogue reconciliation to background on startup ([#260](https://github.com/iotaledger/twin-dataspace/issues/260)) ([0824e46](https://github.com/iotaledger/twin-dataspace/commit/0824e465f5cedc9557abad90fb4d18a524210ddd))
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
### Dependencies
|
|
40
|
+
|
|
41
|
+
* The following workspace dependencies were updated
|
|
42
|
+
* dependencies
|
|
43
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.7 to 0.9.1-next.8
|
|
44
|
+
|
|
45
|
+
## [0.9.1-next.7](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.6...dataspace-control-plane-service-v0.9.1-next.7) (2026-07-02)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
### Features
|
|
49
|
+
|
|
50
|
+
* simplify url construction ([49986d1](https://github.com/iotaledger/twin-dataspace/commit/49986d1b67b58c0918a5744794d06baf6b6c6461))
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
### Bug Fixes
|
|
54
|
+
|
|
55
|
+
* data plane path is base not full url for pull ([68092ac](https://github.com/iotaledger/twin-dataspace/commit/68092acf707b6ba6679f5b75d4dc355c6629396c))
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
### Dependencies
|
|
59
|
+
|
|
60
|
+
* The following workspace dependencies were updated
|
|
61
|
+
* dependencies
|
|
62
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.6 to 0.9.1-next.7
|
|
63
|
+
|
|
64
|
+
## [0.9.1-next.6](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.5...dataspace-control-plane-service-v0.9.1-next.6) (2026-07-02)
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
### Features
|
|
68
|
+
|
|
69
|
+
* add transfer handlers ([#259](https://github.com/iotaledger/twin-dataspace/issues/259)) ([06e21b1](https://github.com/iotaledger/twin-dataspace/commit/06e21b179f548f3d93d81192b68ea710e5b9aafb))
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
### Dependencies
|
|
73
|
+
|
|
74
|
+
* The following workspace dependencies were updated
|
|
75
|
+
* dependencies
|
|
76
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.5 to 0.9.1-next.6
|
|
77
|
+
|
|
78
|
+
## [0.9.1-next.5](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.4...dataspace-control-plane-service-v0.9.1-next.5) (2026-06-30)
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
### Features
|
|
82
|
+
|
|
83
|
+
* rest enhancements ([f6dbd24](https://github.com/iotaledger/twin-dataspace/commit/f6dbd24c186a382769c97e697e54f0b6e28488a9))
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
### Dependencies
|
|
87
|
+
|
|
88
|
+
* The following workspace dependencies were updated
|
|
89
|
+
* dependencies
|
|
90
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.4 to 0.9.1-next.5
|
|
91
|
+
|
|
92
|
+
## [0.9.1-next.4](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.3...dataspace-control-plane-service-v0.9.1-next.4) (2026-06-29)
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
### Features
|
|
96
|
+
|
|
97
|
+
* enhanced rest testing ([#255](https://github.com/iotaledger/twin-dataspace/issues/255)) ([264f91e](https://github.com/iotaledger/twin-dataspace/commit/264f91ea3a6501a13da51e7accbe9035e5ac4cef))
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
### Dependencies
|
|
101
|
+
|
|
102
|
+
* The following workspace dependencies were updated
|
|
103
|
+
* dependencies
|
|
104
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.3 to 0.9.1-next.4
|
|
105
|
+
|
|
106
|
+
## [0.9.1-next.3](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.2...dataspace-control-plane-service-v0.9.1-next.3) (2026-06-26)
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
### Features
|
|
110
|
+
|
|
111
|
+
* well-known endpoint ([9ff2607](https://github.com/iotaledger/twin-dataspace/commit/9ff2607a345ee9e038a2915179a926353251e59c))
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
### Dependencies
|
|
115
|
+
|
|
116
|
+
* The following workspace dependencies were updated
|
|
117
|
+
* dependencies
|
|
118
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.2 to 0.9.1-next.3
|
|
119
|
+
|
|
120
|
+
## [0.9.1-next.2](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.1...dataspace-control-plane-service-v0.9.1-next.2) (2026-06-26)
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
### Features
|
|
124
|
+
|
|
125
|
+
* add well known versions endpoint ([#251](https://github.com/iotaledger/twin-dataspace/issues/251)) ([4b4cbe9](https://github.com/iotaledger/twin-dataspace/commit/4b4cbe91a40980481dad6e0650c1ee73c53ae360))
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
### Dependencies
|
|
129
|
+
|
|
130
|
+
* The following workspace dependencies were updated
|
|
131
|
+
* dependencies
|
|
132
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.1 to 0.9.1-next.2
|
|
133
|
+
|
|
134
|
+
## [0.9.1-next.1](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.1-next.0...dataspace-control-plane-service-v0.9.1-next.1) (2026-06-26)
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
### Features
|
|
138
|
+
|
|
139
|
+
* add consumer transfer callbacks and startDataTransfer convenience method ([#151](https://github.com/iotaledger/twin-dataspace/issues/151)) ([0ab66c3](https://github.com/iotaledger/twin-dataspace/commit/0ab66c3636fd1f98f89baca1e99764d77c6f91d9))
|
|
140
|
+
* add support for the new federated catalogue trust model ([#179](https://github.com/iotaledger/twin-dataspace/issues/179)) ([0d99a93](https://github.com/iotaledger/twin-dataspace/commit/0d99a9331e259e3efe5250e390fdfb1a2f0983b1))
|
|
141
|
+
* add telemetry metrics to dataspace control and data plane services ([#212](https://github.com/iotaledger/twin-dataspace/issues/212)) ([b5b0248](https://github.com/iotaledger/twin-dataspace/commit/b5b024899ed12c0f639c5d51aefa3e509753eac6))
|
|
142
|
+
* add transferStarted provider method to start a data transfer ([#206](https://github.com/iotaledger/twin-dataspace/issues/206)) ([3ec2dc8](https://github.com/iotaledger/twin-dataspace/commit/3ec2dc8943c8531cd8d8e4ab07cb970ef7b11090))
|
|
143
|
+
* align all config times to ms ([40238d5](https://github.com/iotaledger/twin-dataspace/commit/40238d59a2b45caedc01792b682ce7206815dfd1))
|
|
144
|
+
* cross-node transfer callbacks and DataTransferManager auto-start ([#199](https://github.com/iotaledger/twin-dataspace/issues/199)) ([1089aa3](https://github.com/iotaledger/twin-dataspace/commit/1089aa344e3598e382f37a82ca03230c5cf6cacd))
|
|
145
|
+
* docs update ([8b44c7a](https://github.com/iotaledger/twin-dataspace/commit/8b44c7a75afb8d377a6f606616f8a78d58439ab4))
|
|
146
|
+
* endpoint encryption + getDatasetTargets multi-target fix ([#112](https://github.com/iotaledger/twin-dataspace/issues/112)) ([3288941](https://github.com/iotaledger/twin-dataspace/commit/328894113c19c7402f7d00dfa77b6a97ae40ca91))
|
|
147
|
+
* implement DSP push transfer mode ([#109](https://github.com/iotaledger/twin-dataspace/issues/109)) ([71f5fee](https://github.com/iotaledger/twin-dataspace/commit/71f5feec1d92dfec8ed6899c951809818e1bf2a3))
|
|
148
|
+
* improve open-api examples ([1368dbe](https://github.com/iotaledger/twin-dataspace/commit/1368dbed5c36e074b4854942304a19b9ce51e088))
|
|
149
|
+
* improve open-api examples ([44f7350](https://github.com/iotaledger/twin-dataspace/commit/44f7350c625d8d6afdca88b292dd48ef03253412))
|
|
150
|
+
* improve open-api examples ([f065f4b](https://github.com/iotaledger/twin-dataspace/commit/f065f4bd55540041a653ef141c4be29a83c5055e))
|
|
151
|
+
* improve validation ([#82](https://github.com/iotaledger/twin-dataspace/issues/82)) ([8bfaf7b](https://github.com/iotaledger/twin-dataspace/commit/8bfaf7b830f89b63575f8a51ee96bd8ac4da02f4))
|
|
152
|
+
* internalise constant ([9b9b293](https://github.com/iotaledger/twin-dataspace/commit/9b9b2933588ee70811a601bc485b5abaa12bed41))
|
|
153
|
+
* local optimization ([#218](https://github.com/iotaledger/twin-dataspace/issues/218)) ([1daae6b](https://github.com/iotaledger/twin-dataspace/commit/1daae6be8be44abdbe2b4c883c35938506cdd34a))
|
|
154
|
+
* organization identifiers ([#188](https://github.com/iotaledger/twin-dataspace/issues/188)) ([af643d3](https://github.com/iotaledger/twin-dataspace/commit/af643d3bb7f212d6cbb672e362a9e1bbe886d1a5))
|
|
155
|
+
* provider-side transfer auto-start and negotiation/transfer timeout callbacks ([#227](https://github.com/iotaledger/twin-dataspace/issues/227)) ([619d858](https://github.com/iotaledger/twin-dataspace/commit/619d858e8d44e59744dc8a0f73e06be976932b53))
|
|
156
|
+
* remove datasetsHandled method from apps ([9fdc950](https://github.com/iotaledger/twin-dataspace/commit/9fdc95018d38ab49c4a1094642be2ee83ee0e4cd))
|
|
157
|
+
* remove hosting component ([#209](https://github.com/iotaledger/twin-dataspace/issues/209)) ([5e19328](https://github.com/iotaledger/twin-dataspace/commit/5e1932823aa8a0f88f559f096610b9df1f3b8615))
|
|
158
|
+
* rename completed callback ([#147](https://github.com/iotaledger/twin-dataspace/issues/147)) ([f62baad](https://github.com/iotaledger/twin-dataspace/commit/f62baad0ff444e2913439b12dcd06d20c9a4f6a4))
|
|
159
|
+
* resolve DSP transfer flow bugs for cross-node communication ([#76](https://github.com/iotaledger/twin-dataspace/issues/76)) ([506a45c](https://github.com/iotaledger/twin-dataspace/commit/506a45c94e63d5f958b1fc7131adfe452c3e2974))
|
|
160
|
+
* shortcut implicit trust ([#215](https://github.com/iotaledger/twin-dataspace/issues/215)) ([f9bcfea](https://github.com/iotaledger/twin-dataspace/commit/f9bcfeab8f069b62017502833c108b4ee3791414))
|
|
161
|
+
* skip tenant dsp transfer routes ([#97](https://github.com/iotaledger/twin-dataspace/issues/97)) ([2f1ad97](https://github.com/iotaledger/twin-dataspace/commit/2f1ad971bc50ad24bb9f68759fbd4d44527d3d02))
|
|
162
|
+
* types update ([77c338e](https://github.com/iotaledger/twin-dataspace/commit/77c338e9244dcc7e3d597fdb06229513b1f13eac))
|
|
163
|
+
* typescript 6 update ([340f10e](https://github.com/iotaledger/twin-dataspace/commit/340f10e4767f6285c694938944f7e044474f9aaa))
|
|
164
|
+
* unification of the data exchange and the data space connector ([#57](https://github.com/iotaledger/twin-dataspace/issues/57)) ([df2644d](https://github.com/iotaledger/twin-dataspace/commit/df2644d989471e07dadd83d27bef736179e31bf4))
|
|
165
|
+
* update DataspaceTransferFormat names ([2c9d424](https://github.com/iotaledger/twin-dataspace/commit/2c9d424a07b97346faa2124048c4675514d58109))
|
|
166
|
+
* use inbuilt constants ([256bc03](https://github.com/iotaledger/twin-dataspace/commit/256bc0332bf439fcc16022e0b984b9035e9b0100))
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
### Bug Fixes
|
|
170
|
+
|
|
171
|
+
* avoid compaction of incoming activities ([#77](https://github.com/iotaledger/twin-dataspace/issues/77)) ([ff43d6a](https://github.com/iotaledger/twin-dataspace/commit/ff43d6a3e1563eb9cb185501134b2a53ae88787c))
|
|
172
|
+
* defer startTransfer state mutation until dispatch succeeds ([#162](https://github.com/iotaledger/twin-dataspace/issues/162)) ([6704bbd](https://github.com/iotaledger/twin-dataspace/commit/6704bbd88c10c8b5b37b621b56cf9d8704e00a15))
|
|
173
|
+
* dependency update ([fbff0dd](https://github.com/iotaledger/twin-dataspace/commit/fbff0ddae93d82bd2899001368d7a03b482ce05c))
|
|
174
|
+
* docs and component init ([8557233](https://github.com/iotaledger/twin-dataspace/commit/8557233fb3b8273c5c9a5b580fb43061f8efe47c))
|
|
175
|
+
* gate implicit-trust shortcut on local provider endpoint ([#221](https://github.com/iotaledger/twin-dataspace/issues/221)) ([1167c53](https://github.com/iotaledger/twin-dataspace/commit/1167c53d2a94d4672191d278fed69b4f2d607a3c))
|
|
176
|
+
* handle missing target in catalogue offers during policy derivation check ([#89](https://github.com/iotaledger/twin-dataspace/issues/89)) ([a0e0dbc](https://github.com/iotaledger/twin-dataspace/commit/a0e0dbc8d9111d5d1c43e905249825e5d8d62816))
|
|
177
|
+
* implement missing trust check on negotiateAgreement ([#136](https://github.com/iotaledger/twin-dataspace/issues/136)) ([a3589c2](https://github.com/iotaledger/twin-dataspace/commit/a3589c279476d5450b68ea7c2790be7e3125bfe2))
|
|
178
|
+
* incorrect docs ([754aa8d](https://github.com/iotaledger/twin-dataspace/commit/754aa8d032a5dfefa69072aa460106badfa41ac9))
|
|
179
|
+
* mock pnap ([35f21f8](https://github.com/iotaledger/twin-dataspace/commit/35f21f847d3fb9d2ffcb9191a18835093cd259b9))
|
|
180
|
+
* persist STARTED before setupPushSubscription so data-plane read-back sees the right state ([#168](https://github.com/iotaledger/twin-dataspace/issues/168)) ([6a7c81a](https://github.com/iotaledger/twin-dataspace/commit/6a7c81a1247dcbfbec5d64958328e8b77798be0c))
|
|
181
|
+
* remove inline i18n ([edde37e](https://github.com/iotaledger/twin-dataspace/commit/edde37e90ac397f253f57bc0d306b4bd0c797920))
|
|
182
|
+
* return 409 Conflict on duplicate dataset creation ([#165](https://github.com/iotaledger/twin-dataspace/issues/165)) ([890a2f5](https://github.com/iotaledger/twin-dataspace/commit/890a2f59d881aed4c50f63f57cdec3a4ccfb572d))
|
|
183
|
+
* use async getStore in tests ([739531e](https://github.com/iotaledger/twin-dataspace/commit/739531e1a159f728301835cd39cf06eab7a7bf4a))
|
|
184
|
+
* validate dataset-id ([#138](https://github.com/iotaledger/twin-dataspace/issues/138)) ([92a6a9b](https://github.com/iotaledger/twin-dataspace/commit/92a6a9b7b82c3dd5c652a3685892f7e9156d458b))
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
### Dependencies
|
|
188
|
+
|
|
189
|
+
* The following workspace dependencies were updated
|
|
190
|
+
* dependencies
|
|
191
|
+
* @twin.org/dataspace-models bumped from 0.9.1-next.0 to 0.9.1-next.1
|
|
192
|
+
|
|
3
193
|
## [0.9.0](https://github.com/iotaledger/twin-dataspace/compare/dataspace-control-plane-service-v0.9.0...dataspace-control-plane-service-v0.9.0) (2026-06-25)
|
|
4
194
|
|
|
5
195
|
|
|
@@ -851,3 +851,21 @@ A promise that resolves when the dataset has been removed from storage and the c
|
|
|
851
851
|
#### Implementation of
|
|
852
852
|
|
|
853
853
|
`IDataspaceControlPlaneComponent.deleteAppDataset`
|
|
854
|
+
|
|
855
|
+
***
|
|
856
|
+
|
|
857
|
+
### getProtocolVersions() {#getprotocolversions}
|
|
858
|
+
|
|
859
|
+
> **getProtocolVersions**(): `Promise`\<`IDataspaceProtocolVersionResponse`\>
|
|
860
|
+
|
|
861
|
+
Return the Dataspace Protocol versions supported by this connector.
|
|
862
|
+
|
|
863
|
+
#### Returns
|
|
864
|
+
|
|
865
|
+
`Promise`\<`IDataspaceProtocolVersionResponse`\>
|
|
866
|
+
|
|
867
|
+
The protocol version response listing all supported DSP versions.
|
|
868
|
+
|
|
869
|
+
#### Implementation of
|
|
870
|
+
|
|
871
|
+
`IDataspaceControlPlaneComponent.getProtocolVersions`
|