@serve.zone/interfaces 32.3.0 → 32.5.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.
Files changed (61) hide show
  1. package/changelog.md +88 -0
  2. package/dist_ts/00_commitinfo_data.js +1 -1
  3. package/dist_ts/data/cluster.d.ts +30 -0
  4. package/dist_ts/data/cluster.js +48 -3
  5. package/dist_ts/data/clusteringress.js +9 -8
  6. package/dist_ts/data/clusternode.d.ts +6 -1
  7. package/dist_ts/data/clusternode.js +32 -5
  8. package/dist_ts/data/clustervpn.d.ts +135 -0
  9. package/dist_ts/data/clustervpn.js +147 -0
  10. package/dist_ts/data/index.d.ts +1 -0
  11. package/dist_ts/data/index.js +2 -1
  12. package/dist_ts/data/isolatedrestore.js +12 -4
  13. package/dist_ts/data/networkaddressplan.d.ts +54 -11
  14. package/dist_ts/data/networkaddressplan.js +67 -23
  15. package/dist_ts/data/networkauthority.js +9 -3
  16. package/dist_ts/data/networkcredential.d.ts +13 -4
  17. package/dist_ts/data/networkcredential.js +41 -23
  18. package/dist_ts/data/networklease.js +3 -3
  19. package/dist_ts/data/networknode.js +3 -3
  20. package/dist_ts/data/networkprojection.js +8 -3
  21. package/dist_ts/data/nodeenrollment.js +4 -2
  22. package/dist_ts/data/noderetirement.js +3 -3
  23. package/dist_ts/data/runtimeassignment.d.ts +35 -0
  24. package/dist_ts/data/runtimeassignment.js +70 -10
  25. package/dist_ts/data/runtimesession.js +3 -2
  26. package/dist_ts/data/serviceruntime.js +6 -5
  27. package/dist_ts/data/sparknodereport.js +6 -3
  28. package/dist_ts/private/networkcontract.d.ts +8 -0
  29. package/dist_ts/private/networkcontract.js +19 -2
  30. package/dist_ts/private/nodeidentifier.d.ts +22 -0
  31. package/dist_ts/private/nodeidentifier.js +23 -0
  32. package/dist_ts/requests/cluster.d.ts +27 -0
  33. package/dist_ts/requests/cluster.js +1 -1
  34. package/dist_ts/requests/corestore.js +4 -4
  35. package/dist_ts/runtime.js +7 -4
  36. package/package.json +1 -1
  37. package/readme.md +132 -21
  38. package/ts/00_commitinfo_data.ts +1 -1
  39. package/ts/data/cluster.ts +78 -2
  40. package/ts/data/clusteringress.ts +8 -7
  41. package/ts/data/clusternode.ts +32 -4
  42. package/ts/data/clustervpn.ts +248 -0
  43. package/ts/data/index.ts +1 -0
  44. package/ts/data/isolatedrestore.ts +12 -3
  45. package/ts/data/networkaddressplan.ts +103 -27
  46. package/ts/data/networkauthority.ts +8 -2
  47. package/ts/data/networkcredential.ts +52 -24
  48. package/ts/data/networklease.ts +2 -2
  49. package/ts/data/networknode.ts +2 -2
  50. package/ts/data/networkprojection.ts +6 -2
  51. package/ts/data/nodeenrollment.ts +4 -2
  52. package/ts/data/noderetirement.ts +2 -2
  53. package/ts/data/runtimeassignment.ts +84 -8
  54. package/ts/data/runtimesession.ts +3 -2
  55. package/ts/data/serviceruntime.ts +6 -5
  56. package/ts/data/sparknodereport.ts +7 -2
  57. package/ts/private/networkcontract.ts +17 -1
  58. package/ts/private/nodeidentifier.ts +25 -0
  59. package/ts/requests/cluster.ts +35 -0
  60. package/ts/requests/corestore.ts +3 -3
  61. package/ts/runtime.ts +6 -3
@@ -1,5 +1,6 @@
1
1
  import { canonicalizeStrictJson, createCanonicalJsonSha256Hex, createSha256Hex, deepFreezeValue, strictCanonicalJsonRules, } from '../private/canonicaljson.js';
2
2
  import { hasExactKeys } from '../private/dataproperties.js';
3
+ import { isClusterNodeId } from '../private/nodeidentifier.js';
3
4
  /** Operations carried by a short-lived, single-operation restore grant. */
4
5
  export const isolatedRestoreGrantOperations = Object.freeze([
5
6
  'prepare',
@@ -189,6 +190,13 @@ const readIdentifier = (valueArg, fieldNameArg) => {
189
190
  }
190
191
  return valueArg;
191
192
  };
193
+ /** A node of the cluster, read in the node vocabulary the controller named it in. */
194
+ const readNodeId = (valueArg, fieldNameArg) => {
195
+ if (!isClusterNodeId(valueArg)) {
196
+ return fail(`${fieldNameArg} must be a node id`);
197
+ }
198
+ return valueArg;
199
+ };
192
200
  const readScopedId = (valueArg, fieldNameArg) => {
193
201
  if (typeof valueArg !== 'string' || !canonicalScopedIdPattern.test(valueArg)) {
194
202
  return fail(`${fieldNameArg} must be a canonical scoped identifier`);
@@ -760,7 +768,7 @@ export const normalizeIsolatedRestoreNodeControl = (valueArg, normalizeControlAr
760
768
  const request = readRecord(valueArg, 'node control request');
761
769
  assertExactKeys(request, ['nodeId', 'control'], 'node control request');
762
770
  return Object.freeze({
763
- nodeId: readIdentifier(request.nodeId, 'node control request.nodeId'),
771
+ nodeId: readNodeId(request.nodeId, 'node control request.nodeId'),
764
772
  control: normalizeControlArg(request.control),
765
773
  });
766
774
  };
@@ -852,7 +860,7 @@ export const normalizeIsolatedRestoreProgress = (valueArg) => {
852
860
  const totalMappings = readSafeInteger(progress.totalMappings, 'restore progress.totalMappings', 1, isolatedRestoreContractLimits.maximumResourceMappings);
853
861
  const preparedAt = readSafeInteger(progress.preparedAt, 'restore progress.preparedAt', 1);
854
862
  const normalized = {
855
- nodeId: readIdentifier(progress.nodeId, 'restore progress.nodeId'),
863
+ nodeId: readNodeId(progress.nodeId, 'restore progress.nodeId'),
856
864
  restoreId: readScopedId(progress.restoreId, 'restore progress.restoreId'),
857
865
  stagingArchiveId: readScopedId(progress.stagingArchiveId, 'restore progress.stagingArchiveId'),
858
866
  status: progress.status,
@@ -902,7 +910,7 @@ export const normalizeIsolatedRestoreProgress = (valueArg) => {
902
910
  export const bindIsolatedRestoreProgressToNode = (progressArg, expectationArg) => {
903
911
  const expectation = readRecord(expectationArg, 'restore progress expectation');
904
912
  assertExactKeys(expectation, ['nodeId', 'restoreId'], 'restore progress expectation');
905
- const nodeId = readIdentifier(expectation.nodeId, 'restore progress expectation.nodeId');
913
+ const nodeId = readNodeId(expectation.nodeId, 'restore progress expectation.nodeId');
906
914
  const restoreId = readScopedId(expectation.restoreId, 'restore progress expectation.restoreId');
907
915
  const progress = normalizeIsolatedRestoreProgress(progressArg);
908
916
  if (progress.nodeId !== nodeId) {
@@ -1423,4 +1431,4 @@ export const assertIsolatedRestoreCompletedObject = (completedArg) => {
1423
1431
  }
1424
1432
  return completedArg;
1425
1433
  };
1426
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvbGF0ZWRyZXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvZGF0YS9pc29sYXRlZHJlc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qiw0QkFBNEIsRUFDNUIsZUFBZSxFQUNmLGVBQWUsRUFDZix3QkFBd0IsR0FDekIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFNUQsMkVBQTJFO0FBQzNFLE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDMUQsU0FBUztJQUNULGNBQWM7SUFDZCxTQUFTO0lBQ1QsU0FBUztJQUNULFFBQVE7Q0FDQSxDQUFDLENBQUM7QUFLWjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDekQsdUJBQXVCLEVBQUUsSUFBSSxHQUFHLElBQUk7SUFDcEMsd0JBQXdCLEVBQUUsRUFBRSxHQUFHLElBQUk7SUFDbkMsNEJBQTRCLEVBQUUsSUFBSTtJQUNsQyxnQkFBZ0IsRUFBRSxJQUFJO0lBQ3RCLHVCQUF1QixFQUFFLEdBQUc7SUFDNUIscUJBQXFCLEVBQUUsSUFBSTtJQUMzQiw4QkFBOEIsRUFBRSxHQUFHO0lBQ25DLHNDQUFzQyxFQUFFLENBQUMsR0FBRyxJQUFJLEdBQUcsSUFBSTtJQUN2RCx5QkFBeUIsRUFBRSxFQUFFLEdBQUcsSUFBSSxHQUFHLElBQUk7SUFDM0Msd0JBQXdCLEVBQUUsRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJLEdBQUcsSUFBSTtJQUNqRCxzQkFBc0IsRUFBRSxHQUFHLEdBQUcsSUFBSTtJQUNsQyxpQ0FBaUMsRUFBRSxPQUFPO0lBQzFDLG1CQUFtQixFQUFFLElBQUk7Q0FDMUIsQ0FBQyxDQUFDO0FBRUgseUZBQXlGO0FBQ3pGLE1BQU0s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
1434
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvbGF0ZWRyZXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvZGF0YS9pc29sYXRlZHJlc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qiw0QkFBNEIsRUFDNUIsZUFBZSxFQUNmLGVBQWUsRUFDZix3QkFBd0IsR0FDekIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRS9ELDJFQUEyRTtBQUMzRSxNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQzFELFNBQVM7SUFDVCxjQUFjO0lBQ2QsU0FBUztJQUNULFNBQVM7SUFDVCxRQUFRO0NBQ0EsQ0FBQyxDQUFDO0FBS1o7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQ3pELHVCQUF1QixFQUFFLElBQUksR0FBRyxJQUFJO0lBQ3BDLHdCQUF3QixFQUFFLEVBQUUsR0FBRyxJQUFJO0lBQ25DLDRCQUE0QixFQUFFLElBQUk7SUFDbEMsZ0JBQWdCLEVBQUUsSUFBSTtJQUN0Qix1QkFBdUIsRUFBRSxHQUFHO0lBQzVCLHFCQUFxQixFQUFFLElBQUk7SUFDM0IsOEJBQThCLEVBQUUsR0FBRztJQUNuQyxzQ0FBc0MsRUFBRSxDQUFDLEdBQUcsSUFBSSxHQUFHLElBQUk7SUFDdkQseUJBQXlCLEVBQUUsRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJO0lBQzNDLHdCQUF3QixFQUFFLEVBQUUsR0FBRyxJQUFJLEdBQUcsSUFBSSxHQUFHLElBQUk7SUFDakQsc0JBQXNCLEVBQUUsR0FBRyxHQUFHLElBQUk7SUFDbEMsaUNBQWlDLEVBQUUsT0FBTztJQUMxQyxtQkFBbUIsRUFBRSxJ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
@@ -1,5 +1,4 @@
1
1
  import type { IRuntimeNetworkProtectedAuthority } from './networkauthority.js';
2
- import type { IGetRuntimeManagedVpnCredentialResponse } from './networkcredential.js';
3
2
  /**
4
3
  * The address space an administrator gives the runtime network, and the one input the protected
5
4
  * authority is composed from. Cloudly keeps a single plan; pools and prefixes only grow, and the
@@ -13,15 +12,34 @@ export interface IRuntimeNetworkAddressPlan {
13
12
  prefixes: string[];
14
13
  pools: IRuntimeNetworkProtectedAuthority['pools'];
15
14
  resolvers: IRuntimeNetworkProtectedAuthority['resolvers'];
16
- /** Without the VPN relay, which the composed authority adds as a UDP platform endpoint. */
15
+ /** Without the cluster hubs, which the composed authority adds from the hubs it is given. */
17
16
  platformEndpoints: IRuntimeNetworkProtectedAuthority['platformEndpoints'];
18
17
  vpn: {
19
18
  /** The private prefix VPN control addresses are allocated from. */
20
19
  controlPrefix: string;
21
- /** The endpoint every node dials for the managed VPN. */
22
- relay: IGetRuntimeManagedVpnCredentialResponse['relay'];
20
+ /**
21
+ * The protected prefix every cluster hub binds inside.
22
+ *
23
+ * The endpoints themselves are no administrator's input: a cluster's relay reports the one it
24
+ * bound and the composition turns it into platform endpoints, so this prefix is what an
25
+ * administrator reserves for them.
26
+ */
27
+ hubPrefix: string;
23
28
  };
24
29
  }
30
+ /**
31
+ * One cluster's managed VPN hub, as the cluster's relay bound it.
32
+ *
33
+ * The hub is its cluster's own packet relay, so `clusterId` names both the hub and the authority
34
+ * that may select it, and `address` is an underlay address inside the plan's `vpn.hubPrefix`. A hub
35
+ * offers at least one transport; the port of a transport it did not bind is `null`.
36
+ */
37
+ export interface IRuntimeNetworkVpnHub {
38
+ clusterId: string;
39
+ address: string;
40
+ quicPort: number | null;
41
+ websocketPort: number | null;
42
+ }
25
43
  /** What an administrator writes; Cloudly supplies the id and the revision. */
26
44
  export type TRuntimeNetworkAddressPlanWritableData = Omit<IRuntimeNetworkAddressPlan, 'id' | 'revision'>;
27
45
  /** What a protection producer fixes around a plan: the authority's identity, revision chain and egress. */
@@ -54,20 +72,45 @@ export declare const runtimeNetworkAddressPlanContract: Readonly<{
54
72
  * is stated: the private-range rule already keeps the control prefix at /8 or longer.
55
73
  */
56
74
  readonly maximumControlPrefixLength: 30;
57
- readonly relayProtocol: "udp";
75
+ /**
76
+ * Every transport a hub may offer, in the order a node prefers them.
77
+ *
78
+ * One row states all three facts that belong together: the transport a credential names, the
79
+ * suffix its platform endpoint id carries, and the protocol the endpoint is composed with. A hub
80
+ * that bound both transports therefore contributes exactly two endpoints of one address.
81
+ */
82
+ readonly hubTransports: readonly (Readonly<{
83
+ transport: "quic";
84
+ endpointSuffix: "quic";
85
+ protocol: "udp";
86
+ }> | Readonly<{
87
+ transport: "websocket";
88
+ endpointSuffix: "ws";
89
+ protocol: "tcp";
90
+ }>)[];
58
91
  }>;
92
+ /** How a node reaches its cluster's hub, read off the one table that states the transports. */
93
+ export type TRuntimeNetworkVpnTransport = typeof runtimeNetworkAddressPlanContract.hubTransports[number]['transport'];
94
+ /**
95
+ * The platform endpoints one hub contributes to a protected authority: one per transport it bound,
96
+ * in id order. Every reader derives the same ids from this one function — the composition that seals
97
+ * the authority, and the router selection that names which of them a node may dial.
98
+ */
99
+ export declare const runtimeNetworkVpnHubEndpoints: (hubValue: unknown) => IRuntimeNetworkProtectedAuthority["platformEndpoints"];
59
100
  /**
60
- * Structural snapshot for exact persistence and for a plan write. A plan passes only when both
61
- * authorities it can describe pass the protected authority's own validator: its sets alone, and
62
- * its sets with the relay added, so no plan can compose an authority that contract refuses.
101
+ * Structural snapshot for exact persistence and for a plan write. The plan's own sets pass the
102
+ * protected authority's own validator, so no plan can describe an authority that contract refuses,
103
+ * and both VPN prefixes are reserved inside the protected space the plan states.
63
104
  */
64
105
  export declare const snapshotRuntimeNetworkAddressPlan: (value: unknown) => IRuntimeNetworkAddressPlan;
65
106
  /**
66
107
  * The protected authority a plan describes inside a producer's frame, digest included: the plan's
67
- * sets with the VPN relay as the UDP platform endpoint every node dials. Both inputs are read before
68
- * the digest is computed.
108
+ * sets plus the endpoints of every cluster hub it is given, each bound inside `vpn.hubPrefix`. One
109
+ * cluster contributes one hub, so `hubs` never names a cluster twice. All inputs are read before the
110
+ * digest is computed; an empty `hubs` composes the authority of a runtime network whose clusters
111
+ * have not registered a hub yet.
69
112
  */
70
- export declare const composeRuntimeNetworkProtectedAuthority: (planValue: unknown, frameValue: unknown) => Promise<IRuntimeNetworkProtectedAuthority>;
113
+ export declare const composeRuntimeNetworkProtectedAuthority: (planValue: unknown, frameValue: unknown, hubsValue: unknown) => Promise<IRuntimeNetworkProtectedAuthority>;
71
114
  /**
72
115
  * The pure decision for replacing `previousValue`, the stored plan or null, with `nextValue` at the
73
116
  * following revision. Leases and the managed VPN outlive a plan revision, so every pool stays exactly