@serve.zone/interfaces 29.0.0 → 30.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/changelog.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## 2026-09-09 - 30.0.0
4
+
5
+ ### Breaking Changes
6
+
7
+ - align image transfer contracts with directional virtual streams (requests/image)
8
+ - Change push image upload streams to requester send endpoints and pull image download streams to requester receive endpoints.
9
+ - Bump @api.global/typedrequest-interfaces to ^7.1.0 for directional VirtualStream support.
10
+ - Document TypedRequest stream direction semantics and add compile-time type assertions for stream chunk types.
11
+
3
12
  ## 2026-09-09 - 29.0.0
4
13
 
5
14
  ### Breaking Changes
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@serve.zone/interfaces',
6
- version: '29.0.0',
6
+ version: '30.0.0',
7
7
  description: 'Shared TypeScript interfaces and TypedRequest contracts for the serve.zone ecosystem.'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSx3QkFBd0I7SUFDOUIsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLHVGQUF1RjtDQUNyRyxDQUFBIn0=
@@ -41,7 +41,8 @@ export interface IRequest_PushImageVersion extends plugins.typedrequestInterface
41
41
  identity: userInterfaces.IIdentity;
42
42
  imageId: string;
43
43
  versionString: string;
44
- imageStream: plugins.typedrequestInterfaces.IVirtualStream;
44
+ /** Requester sends archive bytes; TypedHandler receives the opposite endpoint. */
45
+ imageStream: plugins.typedrequestInterfaces.TVirtualStream<'send'>;
45
46
  };
46
47
  response: {
47
48
  allowed: boolean;
@@ -55,7 +56,8 @@ export interface IRequest_PullImageVersion extends plugins.typedrequestInterface
55
56
  versionString: string;
56
57
  };
57
58
  response: {
58
- imageStream: plugins.typedrequestInterfaces.IVirtualStream;
59
+ /** Requester receives archive bytes; TypedHandler returns a sender endpoint. */
60
+ imageStream: plugins.typedrequestInterfaces.TVirtualStream<'receive'>;
59
61
  };
60
62
  }
61
63
  export interface IRequest_DeleteImage extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IRequest_DeleteImage> {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@serve.zone/interfaces",
3
- "version": "29.0.0",
3
+ "version": "30.0.0",
4
4
  "private": false,
5
5
  "description": "Shared TypeScript interfaces and TypedRequest contracts for the serve.zone ecosystem.",
6
6
  "exports": {
@@ -21,7 +21,7 @@
21
21
  "author": "Task Venture Capital GmbH",
22
22
  "license": "MIT",
23
23
  "dependencies": {
24
- "@api.global/typedrequest-interfaces": "^4.0.0",
24
+ "@api.global/typedrequest-interfaces": "^7.1.0",
25
25
  "@push.rocks/smartcrypto": "^2.2.0",
26
26
  "@push.rocks/smartlog-interfaces": "^3.0.2",
27
27
  "@tsclass/tsclass": "^9.5.1"
package/readme.md CHANGED
@@ -47,6 +47,30 @@ validator; unlike `@serve.zone/interfaces/runtime`, it does not load the general
47
47
  runtime graph, `plugins.js`, SmartCrypto, TypedRequest, Corestore, or settlement
48
48
  runtime modules.
49
49
 
50
+ ### Directional Image Streams
51
+
52
+ Image transfer contracts use `@api.global/typedrequest-interfaces` 7.1.0 and the
53
+ directional VirtualStream protocol used by TypedRequest 8 and TypedSocket 8.
54
+ Directions in shared DTOs describe the requesting peer:
55
+
56
+ | Contract field | Requester endpoint | TypedHandler endpoint |
57
+ | --- | --- | --- |
58
+ | `requests.image.IRequest_PushImageVersion.request.imageStream` | `TVirtualStream<'send'>` | `TVirtualStream<'receive'>` |
59
+ | `requests.image.IRequest_PullImageVersion.response.imageStream` | `TVirtualStream<'receive'>` | `TVirtualStream<'send'>` |
60
+
61
+ The method names remain `pushImageVersion` and `pullImageVersion`. Each stream
62
+ carries ordered `Uint8Array` chunks. TypedRequest reverses stream directions for
63
+ the handler automatically; do not reverse the shared declaration yourself.
64
+
65
+ Consumers must replace the removed undirected `IVirtualStream` API with explicit
66
+ transport-created endpoints. Senders use `send()` or `writable`, then close;
67
+ receivers use `receive()` or `readable`, then explicitly `accept()` after draining
68
+ EOF and completing application storage or delivery. `completion` confirms the
69
+ receiver's accepted receipt, while `closed` confirms transport cleanup. The
70
+ upload response's `allowed` flag permits sending; it does not confirm storage.
71
+ Receiver rejection, aborts and failed completion must reach the caller. Existing
72
+ deployment log and shell push-message contracts retain their message shapes.
73
+
50
74
  ### Human Credential Administration
51
75
 
52
76
  `requests.admin.getHumanCredential` and `mutateHumanCredential` describe human
@@ -3,6 +3,6 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@serve.zone/interfaces',
6
- version: '29.0.0',
6
+ version: '30.0.0',
7
7
  description: 'Shared TypeScript interfaces and TypedRequest contracts for the serve.zone ecosystem.'
8
8
  }
@@ -59,7 +59,8 @@ export interface IRequest_PushImageVersion extends plugins.typedrequestInterface
59
59
  identity: userInterfaces.IIdentity;
60
60
  imageId: string;
61
61
  versionString: string;
62
- imageStream: plugins.typedrequestInterfaces.IVirtualStream;
62
+ /** Requester sends archive bytes; TypedHandler receives the opposite endpoint. */
63
+ imageStream: plugins.typedrequestInterfaces.TVirtualStream<'send'>;
63
64
  };
64
65
  response: {
65
66
  allowed: boolean;
@@ -77,7 +78,8 @@ export interface IRequest_PullImageVersion extends plugins.typedrequestInterface
77
78
  versionString: string;
78
79
  };
79
80
  response: {
80
- imageStream: plugins.typedrequestInterfaces.IVirtualStream;
81
+ /** Requester receives archive bytes; TypedHandler returns a sender endpoint. */
82
+ imageStream: plugins.typedrequestInterfaces.TVirtualStream<'receive'>;
81
83
  };
82
84
  }
83
85