@serve.zone/interfaces 31.8.0 → 32.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.
Files changed (215) hide show
  1. package/.smartconfig.json +1 -0
  2. package/changelog.md +512 -0
  3. package/dist_ts/00_commitinfo_data.js +3 -3
  4. package/dist_ts/appstore/types.d.ts +4 -6
  5. package/dist_ts/appstore/types.js +5 -5
  6. package/dist_ts/data/backup.d.ts +3 -26
  7. package/dist_ts/data/cluster.d.ts +36 -11
  8. package/dist_ts/data/cluster.js +33 -22
  9. package/dist_ts/data/clusteringress.d.ts +8 -0
  10. package/dist_ts/data/clusteringress.js +13 -8
  11. package/dist_ts/data/clusternode.d.ts +121 -74
  12. package/dist_ts/data/clusternode.js +109 -132
  13. package/dist_ts/data/clusterruntime.d.ts +39 -0
  14. package/dist_ts/data/clusterruntime.js +11 -0
  15. package/dist_ts/data/coremail.d.ts +3 -7
  16. package/dist_ts/data/coremail.js +2 -2
  17. package/dist_ts/data/coremail.runtime.d.ts +0 -1
  18. package/dist_ts/data/coremail.runtime.js +5 -22
  19. package/dist_ts/data/deploymentadoption.d.ts +0 -2
  20. package/dist_ts/data/deploymentadoption.js +40 -6
  21. package/dist_ts/data/deploymentoperation.js +16 -3
  22. package/dist_ts/data/deploymentpreflight.d.ts +0 -2
  23. package/dist_ts/data/deploymentpreflight.js +1 -1
  24. package/dist_ts/data/immutableimage.d.ts +38 -21
  25. package/dist_ts/data/immutableimage.js +45 -5
  26. package/dist_ts/data/index.d.ts +5 -1
  27. package/dist_ts/data/index.js +5 -1
  28. package/dist_ts/data/isolatedrestore.d.ts +139 -21
  29. package/dist_ts/data/isolatedrestore.golden.d.ts +0 -1
  30. package/dist_ts/data/isolatedrestore.golden.js +6 -9
  31. package/dist_ts/data/isolatedrestore.js +176 -40
  32. package/dist_ts/data/mail.d.ts +1 -1
  33. package/dist_ts/data/networkaddressplan.d.ts +78 -0
  34. package/dist_ts/data/networkaddressplan.js +114 -0
  35. package/dist_ts/data/networkauthority.d.ts +20 -22
  36. package/dist_ts/data/networkauthority.js +29 -43
  37. package/dist_ts/data/networkcredential.d.ts +10 -10
  38. package/dist_ts/data/networkcredential.js +16 -16
  39. package/dist_ts/data/networkdelivery.d.ts +18 -18
  40. package/dist_ts/data/networkdelivery.js +16 -16
  41. package/dist_ts/data/networklease.d.ts +18 -7
  42. package/dist_ts/data/networklease.js +29 -7
  43. package/dist_ts/data/networknode.d.ts +37 -0
  44. package/dist_ts/data/networknode.js +6 -0
  45. package/dist_ts/data/networkprojection.d.ts +59 -60
  46. package/dist_ts/data/networkprojection.js +53 -57
  47. package/dist_ts/data/networkprotection.d.ts +27 -28
  48. package/dist_ts/data/networkprotection.js +36 -36
  49. package/dist_ts/data/networkrouter.d.ts +11 -11
  50. package/dist_ts/data/networkrouter.js +1 -1
  51. package/dist_ts/data/networksigning.d.ts +16 -18
  52. package/dist_ts/data/networksigning.js +20 -21
  53. package/dist_ts/data/nodecredential.d.ts +4 -6
  54. package/dist_ts/data/nodeenrollment.d.ts +35 -40
  55. package/dist_ts/data/nodeenrollment.js +57 -72
  56. package/dist_ts/data/privatenetwork.d.ts +21 -24
  57. package/dist_ts/data/privatenetwork.js +39 -54
  58. package/dist_ts/data/runtimeassignment.d.ts +50 -34
  59. package/dist_ts/data/runtimeassignment.js +79 -45
  60. package/dist_ts/data/runtimeconfig.d.ts +21 -22
  61. package/dist_ts/data/runtimeconfig.js +37 -100
  62. package/dist_ts/data/runtimesession.d.ts +100 -62
  63. package/dist_ts/data/runtimesession.js +98 -79
  64. package/dist_ts/data/runtimeterminalreceipt.d.ts +28 -29
  65. package/dist_ts/data/runtimeterminalreceipt.js +42 -42
  66. package/dist_ts/data/secret.d.ts +18 -25
  67. package/dist_ts/data/secret.js +12 -52
  68. package/dist_ts/data/servicecredential.d.ts +14 -16
  69. package/dist_ts/data/servicecredential.js +17 -28
  70. package/dist_ts/data/serviceruntime.d.ts +128 -0
  71. package/dist_ts/data/serviceruntime.js +92 -0
  72. package/dist_ts/data/sparknodereport.d.ts +27 -14
  73. package/dist_ts/data/sparknodereport.js +35 -28
  74. package/dist_ts/data/webpush.d.ts +0 -1
  75. package/dist_ts/index.d.ts +2 -1
  76. package/dist_ts/index.js +3 -2
  77. package/dist_ts/platform/objectstorageretention.d.ts +21 -24
  78. package/dist_ts/platform/objectstorageretention.js +6 -18
  79. package/dist_ts/platform/storage.d.ts +1 -3
  80. package/dist_ts/platform/storagemigration.d.ts +0 -7
  81. package/dist_ts/platform/storagemigration.golden.d.ts +0 -1
  82. package/dist_ts/platform/storagemigration.golden.js +8 -12
  83. package/dist_ts/platform/storagemigration.js +6 -51
  84. package/dist_ts/platform/types.d.ts +2 -2
  85. package/dist_ts/private/canonicaljson.d.ts +9 -1
  86. package/dist_ts/private/canonicaljson.js +14 -2
  87. package/dist_ts/private/dataproperties.d.ts +62 -0
  88. package/dist_ts/private/dataproperties.js +117 -0
  89. package/dist_ts/private/networkcontract.d.ts +14 -10
  90. package/dist_ts/private/networkcontract.js +15 -1
  91. package/dist_ts/private/producercontract.d.ts +11 -0
  92. package/dist_ts/private/producercontract.js +21 -0
  93. package/dist_ts/private/releaseversion.d.ts +37 -0
  94. package/dist_ts/private/releaseversion.js +48 -0
  95. package/dist_ts/private/runtimepolicy.d.ts +31 -0
  96. package/dist_ts/private/runtimepolicy.js +90 -0
  97. package/dist_ts/private/tokenlist.d.ts +9 -0
  98. package/dist_ts/private/tokenlist.js +23 -0
  99. package/dist_ts/protocol.d.ts +137 -0
  100. package/dist_ts/protocol.js +255 -0
  101. package/dist_ts/requests/admin.d.ts +8 -8
  102. package/dist_ts/requests/backup.d.ts +102 -112
  103. package/dist_ts/requests/cluster.d.ts +47 -10
  104. package/dist_ts/requests/cluster.js +1 -1
  105. package/dist_ts/requests/clusteringress.d.ts +9 -0
  106. package/dist_ts/requests/clusteringress.js +1 -1
  107. package/dist_ts/requests/config.d.ts +3 -3
  108. package/dist_ts/requests/corestore.d.ts +0 -3
  109. package/dist_ts/requests/corestore.js +5 -9
  110. package/dist_ts/requests/network.d.ts +87 -31
  111. package/dist_ts/requests/node.d.ts +15 -28
  112. package/dist_ts/requests/pallet.d.ts +13 -13
  113. package/dist_ts/requests/runtimesession.d.ts +53 -41
  114. package/dist_ts/requests/secret.d.ts +4 -5
  115. package/dist_ts/requests/secret.js +1 -5
  116. package/dist_ts/requests/service.d.ts +60 -0
  117. package/dist_ts/runtime.corestore.d.ts +56 -74
  118. package/dist_ts/runtime.corestore.databaseexportpackage.d.ts +30 -36
  119. package/dist_ts/runtime.corestore.databaseexportpackage.golden.d.ts +11 -12
  120. package/dist_ts/runtime.corestore.databaseexportpackage.golden.js +54 -71
  121. package/dist_ts/runtime.corestore.databaseexportpackage.js +9 -25
  122. package/dist_ts/runtime.corestore.js +35 -135
  123. package/dist_ts/runtime.corestore.relay.js +2 -7
  124. package/dist_ts/runtime.d.ts +38 -48
  125. package/dist_ts/runtime.js +20 -77
  126. package/dist_ts/runtime.networkprojection.d.ts +4 -4
  127. package/dist_ts/runtime.networkprojection.js +18 -18
  128. package/dist_ts/runtime.workloadinit.d.ts +23 -24
  129. package/dist_ts/runtime.workloadinit.js +6 -13
  130. package/package.json +2 -2
  131. package/readme.md +540 -269
  132. package/ts/00_commitinfo_data.ts +3 -3
  133. package/ts/appstore/types.ts +4 -6
  134. package/ts/data/backup.ts +3 -38
  135. package/ts/data/cluster.ts +51 -34
  136. package/ts/data/clusteringress.ts +12 -12
  137. package/ts/data/clusternode.ts +204 -232
  138. package/ts/data/clusterruntime.ts +45 -0
  139. package/ts/data/coremail.runtime.ts +4 -21
  140. package/ts/data/coremail.ts +3 -7
  141. package/ts/data/deploymentadoption.ts +46 -4
  142. package/ts/data/deploymentoperation.ts +16 -1
  143. package/ts/data/deploymentpreflight.ts +0 -2
  144. package/ts/data/immutableimage.ts +71 -24
  145. package/ts/data/index.ts +5 -1
  146. package/ts/data/isolatedrestore.golden.ts +5 -9
  147. package/ts/data/isolatedrestore.ts +339 -54
  148. package/ts/data/mail.ts +1 -1
  149. package/ts/data/networkaddressplan.ts +175 -0
  150. package/ts/data/networkauthority.ts +45 -61
  151. package/ts/data/networkcredential.ts +24 -24
  152. package/ts/data/networkdelivery.ts +27 -27
  153. package/ts/data/networklease.ts +40 -13
  154. package/ts/data/networknode.ts +37 -0
  155. package/ts/data/networkprojection.ts +119 -124
  156. package/ts/data/networkprotection.ts +54 -55
  157. package/ts/data/networkrouter.ts +14 -14
  158. package/ts/data/networksigning.ts +29 -32
  159. package/ts/data/nodecredential.ts +4 -6
  160. package/ts/data/nodeenrollment.ts +96 -114
  161. package/ts/data/privatenetwork.ts +58 -74
  162. package/ts/data/runtimeassignment.ts +143 -94
  163. package/ts/data/runtimeconfig.ts +62 -122
  164. package/ts/data/runtimesession.ts +185 -138
  165. package/ts/data/runtimeterminalreceipt.ts +72 -73
  166. package/ts/data/secret.ts +28 -76
  167. package/ts/data/servicecredential.ts +33 -43
  168. package/ts/data/serviceruntime.ts +208 -0
  169. package/ts/data/sparknodereport.ts +48 -36
  170. package/ts/data/webpush.ts +0 -1
  171. package/ts/index.ts +2 -0
  172. package/ts/platform/objectstorageretention.ts +36 -55
  173. package/ts/platform/storage.ts +1 -3
  174. package/ts/platform/storagemigration.golden.ts +7 -11
  175. package/ts/platform/storagemigration.ts +5 -55
  176. package/ts/platform/types.ts +2 -2
  177. package/ts/private/canonicaljson.ts +13 -1
  178. package/ts/private/dataproperties.ts +139 -0
  179. package/ts/private/networkcontract.ts +23 -9
  180. package/ts/private/producercontract.ts +19 -0
  181. package/ts/private/releaseversion.ts +70 -0
  182. package/ts/private/runtimepolicy.ts +105 -0
  183. package/ts/private/tokenlist.ts +30 -0
  184. package/ts/protocol.ts +364 -0
  185. package/ts/requests/admin.ts +11 -11
  186. package/ts/requests/backup.ts +112 -117
  187. package/ts/requests/cluster.ts +58 -13
  188. package/ts/requests/clusteringress.ts +9 -0
  189. package/ts/requests/config.ts +3 -3
  190. package/ts/requests/corestore.ts +4 -16
  191. package/ts/requests/network.ts +90 -41
  192. package/ts/requests/node.ts +21 -38
  193. package/ts/requests/pallet.ts +17 -17
  194. package/ts/requests/runtimesession.ts +63 -51
  195. package/ts/requests/secret.ts +5 -10
  196. package/ts/requests/service.ts +81 -0
  197. package/ts/runtime.corestore.databaseexportpackage.golden.ts +77 -95
  198. package/ts/runtime.corestore.databaseexportpackage.ts +51 -73
  199. package/ts/runtime.corestore.relay.ts +1 -10
  200. package/ts/runtime.corestore.ts +118 -268
  201. package/ts/runtime.networkprojection.ts +30 -30
  202. package/ts/runtime.ts +83 -158
  203. package/ts/runtime.workloadinit.ts +36 -48
  204. package/dist_ts/runtime.cloudlylegacydeploymentsettlement.d.ts +0 -902
  205. package/dist_ts/runtime.cloudlylegacydeploymentsettlement.golden.d.ts +0 -35
  206. package/dist_ts/runtime.cloudlylegacydeploymentsettlement.golden.js +0 -315
  207. package/dist_ts/runtime.cloudlylegacydeploymentsettlement.js +0 -3315
  208. package/dist_ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.d.ts +0 -291
  209. package/dist_ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.golden.d.ts +0 -30
  210. package/dist_ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.golden.js +0 -408
  211. package/dist_ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.js +0 -1126
  212. package/ts/runtime.cloudlylegacydeploymentsettlement.golden.ts +0 -421
  213. package/ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.golden.ts +0 -510
  214. package/ts/runtime.cloudlylegacydeploymentsettlement.offlineexport.ts +0 -2470
  215. package/ts/runtime.cloudlylegacydeploymentsettlement.ts +0 -6630
@@ -1,10 +1,10 @@
1
1
  import { isPlausibleUnicastIpv4 } from '../private/ipv4.js';
2
- import { snapshotRuntimeNetworkNodeScopeV1 } from './networkprojection.js';
3
- import { computeRuntimeNetworkProtectedAuthorityV1Digest, snapshotRuntimeNetworkProtectedAuthorityV1 } from './networkauthority.js';
4
- import { snapshotRuntimeSessionBindingV1 } from './runtimesession.js';
2
+ import { snapshotRuntimeNetworkNodeScope } from './networkprojection.js';
3
+ import { computeRuntimeNetworkProtectedAuthorityDigest, snapshotRuntimeNetworkProtectedAuthority } from './networkauthority.js';
4
+ import { snapshotRuntimeSessionBinding } from './runtimesession.js';
5
5
  import { captureNetwork, failNetwork, networkCanonical, networkDigest, networkEqual, networkHash, networkId, networkList, networkRecord, networkReference, networkReferenceOf, networkRevision, networkSafe, networkSorted, requireNetwork } from '../private/networkcontract.js';
6
- export const runtimeNetworkProtectionV1Contract = Object.freeze({
7
- digestDomain: 'serve.zone/runtime-network-protection-receipt-v1',
6
+ export const runtimeNetworkProtectionContract = Object.freeze({
7
+ digestDomain: 'serve.zone/runtime-network-protection-receipt',
8
8
  maximumAuthorities: 256,
9
9
  allocation: 'all-current-affected-egress-receipts-before-reserving-any-lease',
10
10
  receiptSource: 'joined-complete-native-protection-journal',
@@ -14,36 +14,36 @@ export const runtimeNetworkProtectionV1Contract = Object.freeze({
14
14
  });
15
15
  const scopeOf = (value) => ({ controller: value.controller, nodeId: value.nodeId, runtimeNamespace: value.runtimeNamespace });
16
16
  const scopeKey = (value) => networkCanonical([value.nodeId, value.runtimeNamespace]);
17
- export const snapshotRuntimeNetworkProtectionReceiptV1 = (value) => networkSafe(() => {
18
- const item = networkRecord(captureNetwork(value), ['schemaVersion', 'id', 'generation', 'previous',
17
+ export const snapshotRuntimeNetworkProtectionReceipt = (value) => networkSafe(() => {
18
+ const item = networkRecord(captureNetwork(value), ['id', 'generation', 'previous',
19
19
  'controller', 'nodeId', 'runtimeNamespace', 'protectedAuthority', 'reporterSessionId', 'bootId', 'nativeBarrier', 'digest']);
20
- requireNetwork(item.schemaVersion === 1 && typeof item.bootId === 'string'
20
+ requireNetwork(typeof item.bootId === 'string'
21
21
  && /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/.test(item.bootId)
22
22
  && item.bootId !== '00000000-0000-0000-0000-000000000000');
23
- const scope = snapshotRuntimeNetworkNodeScopeV1({ controller: item.controller, nodeId: item.nodeId, runtimeNamespace: item.runtimeNamespace });
24
- return { schemaVersion: 1, ...networkRevision(item), ...scope,
23
+ const scope = snapshotRuntimeNetworkNodeScope({ controller: item.controller, nodeId: item.nodeId, runtimeNamespace: item.runtimeNamespace });
24
+ return { ...networkRevision(item), ...scope,
25
25
  protectedAuthority: networkReference(item.protectedAuthority), reporterSessionId: networkId(item.reporterSessionId),
26
26
  bootId: item.bootId, nativeBarrier: item.nativeBarrier === null ? null : networkReference(item.nativeBarrier),
27
27
  digest: networkDigest(item.digest) };
28
28
  });
29
- export const computeRuntimeNetworkProtectionReceiptV1Digest = (value) => networkHash(runtimeNetworkProtectionV1Contract.digestDomain, snapshotRuntimeNetworkProtectionReceiptV1(value));
29
+ export const computeRuntimeNetworkProtectionReceiptDigest = (value) => networkHash(runtimeNetworkProtectionContract.digestDomain, snapshotRuntimeNetworkProtectionReceipt(value));
30
30
  /** Pure revision binding. The owner must authenticate the reporter and fence all DB writes. */
31
- export const admitRuntimeNetworkProtectionReceiptV1 = async (value, previousValue, trustedScopeValue, knownProtectionValue) => {
31
+ export const admitRuntimeNetworkProtectionReceipt = async (value, previousValue, trustedScopeValue, knownProtectionValue) => {
32
32
  try {
33
- const receipt = snapshotRuntimeNetworkProtectionReceiptV1(value);
34
- const previous = previousValue === null ? null : snapshotRuntimeNetworkProtectionReceiptV1(previousValue);
35
- const scope = snapshotRuntimeNetworkNodeScopeV1(captureNetwork(trustedScopeValue));
36
- const protection = snapshotRuntimeNetworkProtectedAuthorityV1(captureNetwork(knownProtectionValue));
33
+ const receipt = snapshotRuntimeNetworkProtectionReceipt(value);
34
+ const previous = previousValue === null ? null : snapshotRuntimeNetworkProtectionReceipt(previousValue);
35
+ const scope = snapshotRuntimeNetworkNodeScope(captureNetwork(trustedScopeValue));
36
+ const protection = snapshotRuntimeNetworkProtectedAuthority(captureNetwork(knownProtectionValue));
37
37
  requireNetwork(networkEqual(scopeOf(receipt), scope) && networkEqual(receipt.controller, protection.controller)
38
38
  && networkEqual(receipt.protectedAuthority, networkReferenceOf(protection))
39
39
  && protection.egressAuthorities.some(owner => scopeKey(owner) === scopeKey(receipt)));
40
- requireNetwork(receipt.digest === await computeRuntimeNetworkProtectionReceiptV1Digest(receipt)
41
- && protection.digest === await computeRuntimeNetworkProtectedAuthorityV1Digest(protection));
40
+ requireNetwork(receipt.digest === await computeRuntimeNetworkProtectionReceiptDigest(receipt)
41
+ && protection.digest === await computeRuntimeNetworkProtectedAuthorityDigest(protection));
42
42
  if (!previous)
43
43
  requireNetwork(receipt.generation === 1 && receipt.previous === null);
44
44
  else {
45
45
  requireNetwork(networkEqual(scopeOf(previous), scope)
46
- && previous.digest === await computeRuntimeNetworkProtectionReceiptV1Digest(previous));
46
+ && previous.digest === await computeRuntimeNetworkProtectionReceiptDigest(previous));
47
47
  if (networkEqual(receipt, previous))
48
48
  return { status: 'replay', receipt };
49
49
  requireNetwork(receipt.id === previous.id && receipt.generation === previous.generation + 1
@@ -71,11 +71,11 @@ export const admitRuntimeNetworkProtectionReceiptV1 = async (value, previousValu
71
71
  return failNetwork();
72
72
  }
73
73
  };
74
- export const snapshotReportRuntimeNetworkProtectionRequestV1 = (value) => networkSafe(() => {
74
+ export const snapshotReportRuntimeNetworkProtectionRequest = (value) => networkSafe(() => {
75
75
  const item = networkRecord(captureNetwork(value), ['session', 'receipt'], ['uplinkAddress']);
76
76
  const request = {
77
- session: snapshotRuntimeSessionBindingV1(item.session),
78
- receipt: snapshotRuntimeNetworkProtectionReceiptV1(item.receipt),
77
+ session: snapshotRuntimeSessionBinding(item.session),
78
+ receipt: snapshotRuntimeNetworkProtectionReceipt(item.receipt),
79
79
  };
80
80
  if (Object.hasOwn(item, 'uplinkAddress')) {
81
81
  request.uplinkAddress = runtimeNodeUplinkAddress(item.uplinkAddress);
@@ -96,10 +96,10 @@ export const runtimeNodeUplinkAddress = (value) => {
96
96
  return value;
97
97
  };
98
98
  /** Both trusted bindings come from the receiver's fenced physical-session/history owner. */
99
- export const bindReportRuntimeNetworkProtectionRequestV1 = (value, trustedCurrentSessionValue, trustedReporterSessionValue) => networkSafe(() => {
100
- const request = snapshotReportRuntimeNetworkProtectionRequestV1(value);
101
- const current = snapshotRuntimeSessionBindingV1(captureNetwork(trustedCurrentSessionValue));
102
- const reporter = snapshotRuntimeSessionBindingV1(captureNetwork(trustedReporterSessionValue));
99
+ export const bindReportRuntimeNetworkProtectionRequest = (value, trustedCurrentSessionValue, trustedReporterSessionValue) => networkSafe(() => {
100
+ const request = snapshotReportRuntimeNetworkProtectionRequest(value);
101
+ const current = snapshotRuntimeSessionBinding(captureNetwork(trustedCurrentSessionValue));
102
+ const reporter = snapshotRuntimeSessionBinding(captureNetwork(trustedReporterSessionValue));
103
103
  requireNetwork(networkEqual(request.session, current) && networkEqual(scopeOf(request.receipt), scopeOf(current))
104
104
  && networkEqual(scopeOf(reporter), scopeOf(current)) && reporter.reporterSessionId === request.receipt.reporterSessionId);
105
105
  const authorityUse = reporter.reporterSessionId === current.reporterSessionId ? 'current' : 'historical';
@@ -107,14 +107,14 @@ export const bindReportRuntimeNetworkProtectionRequestV1 = (value, trustedCurren
107
107
  : reporter.sessionEpoch < current.sessionEpoch && reporter.credentialGeneration <= current.credentialGeneration);
108
108
  return { request, authorityUse };
109
109
  });
110
- export const snapshotReportRuntimeNetworkProtectionResponseV1 = (value) => networkSafe(() => {
110
+ export const snapshotReportRuntimeNetworkProtectionResponse = (value) => networkSafe(() => {
111
111
  const item = networkRecord(captureNetwork(value), ['status', 'receipt', 'authorityUse']);
112
112
  requireNetwork((item.status === 'accepted' || item.status === 'replay')
113
113
  && (item.authorityUse === 'current' || item.authorityUse === 'historical'));
114
114
  return { status: item.status, receipt: networkReference(item.receipt), authorityUse: item.authorityUse };
115
115
  });
116
- export const bindReportRuntimeNetworkProtectionResponseV1 = (value, sentReceiptValue) => networkSafe(() => {
117
- const response = snapshotReportRuntimeNetworkProtectionResponseV1(value);
116
+ export const bindReportRuntimeNetworkProtectionResponse = (value, sentReceiptValue) => networkSafe(() => {
117
+ const response = snapshotReportRuntimeNetworkProtectionResponse(value);
118
118
  requireNetwork(networkEqual(response.receipt, networkReference(captureNetwork(sentReceiptValue))));
119
119
  return response;
120
120
  });
@@ -126,12 +126,12 @@ export const bindReportRuntimeNetworkProtectionResponseV1 = (value, sentReceiptV
126
126
  * cannot be omitted. Independent fences need their own verified owning contract;
127
127
  * this helper supplies no generic override, expiry or quorum escape hatch.
128
128
  */
129
- export const bindRuntimeNetworkAllocationProtectionV1 = async (protectionValue, receiptsValue, currentSessionsValue) => {
129
+ export const bindRuntimeNetworkAllocationProtection = async (protectionValue, receiptsValue, currentSessionsValue) => {
130
130
  try {
131
- const protection = snapshotRuntimeNetworkProtectedAuthorityV1(captureNetwork(protectionValue));
132
- const receipts = networkSorted(networkList(captureNetwork(receiptsValue), 256, snapshotRuntimeNetworkProtectionReceiptV1), scopeKey);
133
- const sessions = networkSorted(networkList(captureNetwork(currentSessionsValue), 256, snapshotRuntimeSessionBindingV1), scopeKey);
134
- requireNetwork(protection.digest === await computeRuntimeNetworkProtectedAuthorityV1Digest(protection)
131
+ const protection = snapshotRuntimeNetworkProtectedAuthority(captureNetwork(protectionValue));
132
+ const receipts = networkSorted(networkList(captureNetwork(receiptsValue), 256, snapshotRuntimeNetworkProtectionReceipt), scopeKey);
133
+ const sessions = networkSorted(networkList(captureNetwork(currentSessionsValue), 256, snapshotRuntimeSessionBinding), scopeKey);
134
+ requireNetwork(protection.digest === await computeRuntimeNetworkProtectedAuthorityDigest(protection)
135
135
  && receipts.length === protection.egressAuthorities.length && sessions.length === receipts.length);
136
136
  for (const [index, owner] of protection.egressAuthorities.entries()) {
137
137
  const receipt = receipts[index], session = sessions[index];
@@ -139,7 +139,7 @@ export const bindRuntimeNetworkAllocationProtectionV1 = async (protectionValue,
139
139
  && networkEqual(receipt.controller, protection.controller) && networkEqual(session.controller, protection.controller)
140
140
  && receipt.reporterSessionId === session.reporterSessionId && receipt.nativeBarrier !== null
141
141
  && networkEqual(receipt.protectedAuthority, networkReferenceOf(protection))
142
- && receipt.digest === await computeRuntimeNetworkProtectionReceiptV1Digest(receipt));
142
+ && receipt.digest === await computeRuntimeNetworkProtectionReceiptDigest(receipt));
143
143
  }
144
144
  return { protection, receipts };
145
145
  }
@@ -147,4 +147,4 @@ export const bindRuntimeNetworkAllocationProtectionV1 = async (protectionValue,
147
147
  return failNetwork();
148
148
  }
149
149
  };
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya3Byb3RlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9kYXRhL25ldHdvcmtwcm90ZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTVELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTNFLE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXBJLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUM5RixTQUFTLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQzVGLFdBQVcsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUF5Q3BGLE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDOUQsWUFBWSxFQUFFLGtEQUFrRDtJQUNoRSxrQkFBa0IsRUFBRSxHQUFHO0lBQ3ZCLFVBQVUsRUFBRSxpRUFBaUU7SUFDN0UsYUFBYSxFQUFFLDJDQUEyQztJQUMxRCxXQUFXLEVBQUUsb0RBQW9EO0lBQ2pFLFVBQVUsRUFBRSwrREFBK0Q7SUFDM0UsVUFBVSxFQUFFLHNCQUFzQjtDQUMxQixDQUFDLENBQUM7QUFFWixNQUFNLE9BQU8sR0FBRyxDQUFDLEtBQWlDLEVBQThCLEVBQUUsQ0FDaEYsQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFD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
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya3Byb3RlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9kYXRhL25ldHdvcmtwcm90ZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTVELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpFLE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWhJLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUM5RixTQUFTLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQzVGLFdBQVcsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUF3Q3BGLE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDNUQsWUFBWSxFQUFFLCtDQUErQztJQUM3RCxrQkFBa0IsRUFBRSxHQUFHO0lBQ3ZCLFVBQVUsRUFBRSxpRUFBaUU7SUFDN0UsYUFBYSxFQUFFLDJDQUEyQztJQUMxRCxXQUFXLEVBQUUsb0RBQW9EO0lBQ2pFLFVBQVUsRUFBRSwrREFBK0Q7SUFDM0UsVUFBVSxFQUFFLHNCQUFzQjtDQUMxQixDQUFDLENBQUM7QUFFWixNQUFNLE9BQU8sR0FBRyxDQUFDLEtBQStCLEVBQTRCLEVBQUUsQ0FDNUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFD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
@@ -1,9 +1,9 @@
1
- import type { IRuntimeAuthorityReferenceV1 } from './runtimeassignment.js';
2
- import type { IRuntimeNetworkHandoffLeaseV1, IRuntimeNetworkProtectedAuthorityV1 } from './networkauthority.js';
1
+ import type { IRuntimeAuthorityReference } from './runtimeassignment.js';
2
+ import type { IRuntimeNetworkHandoffLease, IRuntimeNetworkProtectedAuthority } from './networkauthority.js';
3
3
  /** Exact router-origin flow authority; unrelated to workload connectivity or DNS names. */
4
- export interface IRuntimeNetworkRouterPacketGrantV1 {
4
+ export interface IRuntimeNetworkRouterPacketGrant {
5
5
  source: {
6
- handoff: IRuntimeAuthorityReferenceV1;
6
+ handoff: IRuntimeAuthorityReference;
7
7
  address: string;
8
8
  };
9
9
  destination: {
@@ -15,17 +15,17 @@ export interface IRuntimeNetworkRouterPacketGrantV1 {
15
15
  };
16
16
  }
17
17
  /** Explicit selections from the current protected inventory plus retained denials. */
18
- export interface IRuntimeNetworkRouterProjectionV1 {
18
+ export interface IRuntimeNetworkRouterProjection {
19
19
  /** Each selected resolver authorizes its exact TCP and UDP endpoint. */
20
20
  resolverIds: string[];
21
21
  platformEndpointIds: string[];
22
- withdrawals: IRuntimeNetworkRouterPacketGrantV1[];
22
+ withdrawals: IRuntimeNetworkRouterPacketGrant[];
23
23
  }
24
24
  /** Internal parser: the enclosing projection has already captured caller input. */
25
- export declare const snapshotRouterProjection: (value: unknown) => IRuntimeNetworkRouterProjectionV1;
25
+ export declare const snapshotRouterProjection: (value: unknown) => IRuntimeNetworkRouterProjection;
26
26
  /** Internal composition after capture. The public helper validates the whole projection. */
27
27
  export declare const routerPacketGrantsOf: (projection: {
28
- router?: IRuntimeNetworkRouterProjectionV1;
29
- handoff: IRuntimeNetworkHandoffLeaseV1 | null;
30
- protectedAuthority: IRuntimeNetworkProtectedAuthorityV1;
31
- }) => IRuntimeNetworkRouterPacketGrantV1[];
28
+ router?: IRuntimeNetworkRouterProjection;
29
+ handoff: IRuntimeNetworkHandoffLease | null;
30
+ protectedAuthority: IRuntimeNetworkProtectedAuthority;
31
+ }) => IRuntimeNetworkRouterPacketGrant[];
@@ -44,4 +44,4 @@ export const routerPacketGrantsOf = (projection) => {
44
44
  }
45
45
  return result.sort((left, right) => networkCanonical(left) < networkCanonical(right) ? -1 : 1);
46
46
  };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya3JvdXRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL2RhdGEvbmV0d29ya3JvdXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUM1RSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBZ0I1SCxNQUFNLEtBQUssR0FBRyxDQUFDLEtBQWMsRUFBc0MsRUFBRTtJQUNuRSxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDN0QsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNsRSxNQUFNLFdBQVcsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ25HLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLFVBQVUsSUFBSSxXQUFXLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDO0lBQ25GLGNBQWMsQ0FBQyxXQUFXLENBQUMsUUFBUSxLQUFLLEtBQUssSUFBSSxXQUFXLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ2xHLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztZQUM3RyxRQUFRLEVBQUUsV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsY0FBYyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDO0FBQ3hGLENBQUMsQ0FBQztBQUVGLG1GQUFtRjtBQUNuRixNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLEtBQWMsRUFBcUMsRUFBRTtJQUM1RixNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxFQUFFLHFCQUFxQixFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDekYsT0FBTztRQUNMLFdBQVcsRUFBRSxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFLFNBQVMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ3hGLG1CQUFtQixFQUFFLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsRUFBRSxTQUFTLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUN4RyxXQUFXLEVBQUUsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQztLQUN6RixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsNEZBQTRGO0FBQzVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQUMsVUFJcEMsRUFBd0MsRUFBRTtJQUN6QyxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO0lBQ25DLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sS0FBSyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDcEcsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztJQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1RCxNQUFNLE1BQU0sR0FBRyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoRyxNQUFNLE1BQU0sR0FBeUMsRUFBRSxDQUFDO0lBQ3hELE1BQU0sTUFBTSxHQUFHLENBQUMsV0FBOEQsRUFBRSxFQUFFO1FBQ2hGLGNBQWMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsS0FBSyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUNoRyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3BHLENBQUMsQ0FBQztJQUNGLEtBQUssTUFBTSxFQUFFLElBQUksUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3RDLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsSCxLQUFLLE1BQU0sUUFBUSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBVTtZQUFFLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsR0FBRyxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN0RyxDQUFDO0lBQ0QsS0FBSyxNQUFNLEVBQUUsSUFBSSxRQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUM5QyxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxSCxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNqRyxDQUFDLENBQUMifQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya3JvdXRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL2RhdGEvbmV0d29ya3JvdXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUM1RSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBZ0I1SCxNQUFNLEtBQUssR0FBRyxDQUFDLEtBQWMsRUFBb0MsRUFBRTtJQUNqRSxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDN0QsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNsRSxNQUFNLFdBQVcsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ25HLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLFVBQVUsSUFBSSxXQUFXLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDO0lBQ25GLGNBQWMsQ0FBQyxXQUFXLENBQUMsUUFBUSxLQUFLLEtBQUssSUFBSSxXQUFXLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ2xHLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxX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QUMsQ0FBQztJQUN0RyxDQUFDO0lBQ0QsS0FBSyxNQUFNLEVBQUUsSUFBSSxRQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUM5QyxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxSCxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNqRyxDQUFDLENBQUMifQ==
@@ -1,46 +1,44 @@
1
1
  import type { TSha256Digest } from './immutableimage.js';
2
- import type { IRuntimeAuthorityReferenceV1, IRuntimeControllerV1 } from './runtimeassignment.js';
3
- import type { IRuntimeNetworkProjectionV1 } from './networkprojection.js';
4
- export interface ISignedRuntimeNetworkProjectionV1 {
5
- schemaVersion: 1;
6
- authority: IRuntimeAuthorityReferenceV1;
7
- projection: IRuntimeNetworkProjectionV1;
2
+ import type { IRuntimeAuthorityReference, IRuntimeController } from './runtimeassignment.js';
3
+ import type { IRuntimeNetworkProjection } from './networkprojection.js';
4
+ export interface ISignedRuntimeNetworkProjection {
5
+ authority: IRuntimeAuthorityReference;
6
+ projection: IRuntimeNetworkProjection;
8
7
  /** Ed25519 signature of the complete domain-separated envelope, lowercase hex. */
9
8
  signature: string;
10
9
  }
11
- export declare const snapshotSignedRuntimeNetworkProjectionV1: (value: unknown) => ISignedRuntimeNetworkProjectionV1;
10
+ export declare const snapshotSignedRuntimeNetworkProjection: (value: unknown) => ISignedRuntimeNetworkProjection;
12
11
  /**
13
12
  * Dedicated controller signing authority, installed through the CURRENT authenticated
14
13
  * physical session. Never obtain trusted authority from an envelope being verified.
15
14
  * null revokes signing; rotation requires a new complete signed projection for DNS.
16
15
  * Existing packet grants still require applied denial or independent fencing.
17
16
  */
18
- export interface IRuntimeNetworkSigningAuthorityV1 {
19
- schemaVersion: 1;
17
+ export interface IRuntimeNetworkSigningAuthority {
20
18
  id: string;
21
19
  generation: number;
22
- previous: IRuntimeAuthorityReferenceV1 | null;
23
- controller: IRuntimeControllerV1;
20
+ previous: IRuntimeAuthorityReference | null;
21
+ controller: IRuntimeController;
24
22
  algorithm: 'Ed25519';
25
23
  /** Canonical 32-byte raw public key, lowercase hex. No private material. */
26
24
  publicKey: string | null;
27
25
  digest: TSha256Digest;
28
26
  }
29
- export declare const runtimeNetworkSigningV1Contract: Readonly<{
30
- readonly authorityDigestDomain: "serve.zone/runtime-network-signing-authority-v1";
31
- readonly signatureDomain: "serve.zone/runtime-network-projection-signature-v1";
27
+ export declare const runtimeNetworkSigningContract: Readonly<{
28
+ readonly authorityDigestDomain: "serve.zone/runtime-network-signing-authority";
29
+ readonly signatureDomain: "serve.zone/runtime-network-projection-signature";
32
30
  readonly trust: "current-authenticated-physical-session-and-durable-revision-fence";
33
31
  readonly rotation: "replace-dns-authority-with-new-signed-projection";
34
32
  readonly revocation: "no-implicit-packet-denial-or-allocation-reuse";
35
33
  }>;
36
- export declare const snapshotRuntimeNetworkSigningAuthorityV1: (value: unknown) => IRuntimeNetworkSigningAuthorityV1;
37
- export declare const computeRuntimeNetworkSigningAuthorityV1Digest: (value: IRuntimeNetworkSigningAuthorityV1) => Promise<TSha256Digest>;
34
+ export declare const snapshotRuntimeNetworkSigningAuthority: (value: unknown) => IRuntimeNetworkSigningAuthority;
35
+ export declare const computeRuntimeNetworkSigningAuthorityDigest: (value: IRuntimeNetworkSigningAuthority) => Promise<TSha256Digest>;
38
36
  /**
39
37
  * Detached content/CAS check. Caller must fence the live peer and commit atomically.
40
38
  * A newly enrolled node bootstraps the controller's CURRENT authority at any generation;
41
39
  * it must not fabricate local history or use this bootstrap path to erase existing trust.
42
40
  */
43
- export declare const admitRuntimeNetworkSigningAuthorityV1: (value: unknown, previousValue: unknown | null, trustedSessionValue: unknown) => Promise<{
41
+ export declare const admitRuntimeNetworkSigningAuthority: (value: unknown, previousValue: unknown | null, trustedSessionValue: unknown) => Promise<{
44
42
  status: "accepted" | "replay";
45
- authority: IRuntimeNetworkSigningAuthorityV1;
43
+ authority: IRuntimeNetworkSigningAuthority;
46
44
  }>;
@@ -1,43 +1,42 @@
1
- import { snapshotRuntimeNetworkProjectionV1 } from './networkprojection.js';
2
- import { snapshotRuntimeSessionBindingV1 } from './runtimesession.js';
1
+ import { snapshotRuntimeNetworkProjection } from './networkprojection.js';
2
+ import { snapshotRuntimeSessionBinding } from './runtimesession.js';
3
3
  import { captureNetwork, failNetwork, networkController, networkDigest, networkEqual, networkHash, networkRecord, networkReference, networkReferenceOf, networkRevision, networkSafe, networkSignature, requireNetwork } from '../private/networkcontract.js';
4
- export const snapshotSignedRuntimeNetworkProjectionV1 = (value) => networkSafe(() => {
5
- const item = networkRecord(captureNetwork(value), ['schemaVersion', 'authority', 'projection', 'signature']);
6
- requireNetwork(item.schemaVersion === 1);
7
- return { schemaVersion: 1, authority: networkReference(item.authority), projection: snapshotRuntimeNetworkProjectionV1(item.projection),
4
+ export const snapshotSignedRuntimeNetworkProjection = (value) => networkSafe(() => {
5
+ const item = networkRecord(captureNetwork(value), ['authority', 'projection', 'signature']);
6
+ return { authority: networkReference(item.authority), projection: snapshotRuntimeNetworkProjection(item.projection),
8
7
  signature: networkSignature(item.signature) };
9
8
  });
10
- export const runtimeNetworkSigningV1Contract = Object.freeze({
11
- authorityDigestDomain: 'serve.zone/runtime-network-signing-authority-v1',
12
- signatureDomain: 'serve.zone/runtime-network-projection-signature-v1',
9
+ export const runtimeNetworkSigningContract = Object.freeze({
10
+ authorityDigestDomain: 'serve.zone/runtime-network-signing-authority',
11
+ signatureDomain: 'serve.zone/runtime-network-projection-signature',
13
12
  trust: 'current-authenticated-physical-session-and-durable-revision-fence',
14
13
  rotation: 'replace-dns-authority-with-new-signed-projection',
15
14
  revocation: 'no-implicit-packet-denial-or-allocation-reuse',
16
15
  });
17
- export const snapshotRuntimeNetworkSigningAuthorityV1 = (value) => networkSafe(() => {
18
- const item = networkRecord(captureNetwork(value), ['schemaVersion', 'id', 'generation', 'previous', 'controller', 'algorithm', 'publicKey', 'digest']);
19
- requireNetwork(item.schemaVersion === 1 && item.algorithm === 'Ed25519');
16
+ export const snapshotRuntimeNetworkSigningAuthority = (value) => networkSafe(() => {
17
+ const item = networkRecord(captureNetwork(value), ['id', 'generation', 'previous', 'controller', 'algorithm', 'publicKey', 'digest']);
18
+ requireNetwork(item.algorithm === 'Ed25519');
20
19
  requireNetwork(item.publicKey === null || (typeof item.publicKey === 'string'
21
20
  && /^[a-f0-9]{64}$/.test(item.publicKey) && item.publicKey !== '0'.repeat(64)));
22
- return { schemaVersion: 1, ...networkRevision(item), controller: networkController(item.controller),
21
+ return { ...networkRevision(item), controller: networkController(item.controller),
23
22
  algorithm: 'Ed25519', publicKey: item.publicKey, digest: networkDigest(item.digest) };
24
23
  });
25
- export const computeRuntimeNetworkSigningAuthorityV1Digest = (value) => networkHash(runtimeNetworkSigningV1Contract.authorityDigestDomain, snapshotRuntimeNetworkSigningAuthorityV1(value));
24
+ export const computeRuntimeNetworkSigningAuthorityDigest = (value) => networkHash(runtimeNetworkSigningContract.authorityDigestDomain, snapshotRuntimeNetworkSigningAuthority(value));
26
25
  /**
27
26
  * Detached content/CAS check. Caller must fence the live peer and commit atomically.
28
27
  * A newly enrolled node bootstraps the controller's CURRENT authority at any generation;
29
28
  * it must not fabricate local history or use this bootstrap path to erase existing trust.
30
29
  */
31
- export const admitRuntimeNetworkSigningAuthorityV1 = async (value, previousValue, trustedSessionValue) => {
30
+ export const admitRuntimeNetworkSigningAuthority = async (value, previousValue, trustedSessionValue) => {
32
31
  try {
33
- const authority = snapshotRuntimeNetworkSigningAuthorityV1(value);
34
- const previous = previousValue === null ? null : snapshotRuntimeNetworkSigningAuthorityV1(previousValue);
35
- const session = snapshotRuntimeSessionBindingV1(trustedSessionValue);
32
+ const authority = snapshotRuntimeNetworkSigningAuthority(value);
33
+ const previous = previousValue === null ? null : snapshotRuntimeNetworkSigningAuthority(previousValue);
34
+ const session = snapshotRuntimeSessionBinding(trustedSessionValue);
36
35
  requireNetwork(networkEqual(authority.controller, session.controller));
37
- requireNetwork(authority.digest === await computeRuntimeNetworkSigningAuthorityV1Digest(authority));
36
+ requireNetwork(authority.digest === await computeRuntimeNetworkSigningAuthorityDigest(authority));
38
37
  if (previous === null)
39
38
  return { status: 'accepted', authority };
40
- requireNetwork(previous.digest === await computeRuntimeNetworkSigningAuthorityV1Digest(previous)
39
+ requireNetwork(previous.digest === await computeRuntimeNetworkSigningAuthorityDigest(previous)
41
40
  && authority.id === previous.id && networkEqual(previous.controller, authority.controller));
42
41
  if (authority.generation === previous.generation) {
43
42
  requireNetwork(networkEqual(authority, previous));
@@ -50,4 +49,4 @@ export const admitRuntimeNetworkSigningAuthorityV1 = async (value, previousValue
50
49
  return failNetwork();
51
50
  }
52
51
  };
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya3NpZ25pbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9kYXRhL25ldHdvcmtzaWduaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFDOUcsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQVU5SSxNQUFNLENBQUMsTUFBTSx3Q0FBd0MsR0FBRyxDQUFDLEtBQWMsRUFBcUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUU7SUFDOUgsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLGVBQWUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDN0csY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxVQUFVLEVBQUUsa0NBQWtDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNySSxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7QUFDbEQsQ0FBQyxDQUFDLENBQUM7QUFvQkgsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUMzRCxxQkFBcUIsRUFB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
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya3NpZ25pbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9kYXRhL25ldHdvcmtzaWduaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFDOUcsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQVM5SSxNQUFNLENBQUMsTUFBTSxzQ0FBc0MsR0FBRyxDQUFDLEtBQWMsRUFBbUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUU7SUFDMUgsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUM1RixPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxVQUFVLEVBQUUsZ0NBQWdDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNqSCxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7QUFDbEQsQ0FBQyxDQUFDLENBQUM7QUFtQkgsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUN6RCxxQkFBcUIsRUFBRSw4Q0FBOEM7SUFDckUsZUFBZSxFQUFFLGlEQUFpRDtJQUNsRSxLQUFLLEVBQUUsbUVBQW1FO0lBQzFFLFFBQVEsRUFBRSxrREFBa0Q7SUFD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
@@ -5,8 +5,7 @@ export type TNodeCredentialPurpose = 'spark' | 'pallet';
5
5
  * hashes, socket peer IDs or controller process IDs. On replay this is historical
6
6
  * evidence, not an assertion that a credential or reporter session is still live.
7
7
  */
8
- export interface INodeCredentialMetadataV1 {
9
- schemaVersion: 1;
8
+ export interface INodeCredentialMetadata {
10
9
  nodeId: string;
11
10
  purpose: TNodeCredentialPurpose;
12
11
  state: 'active' | 'revoked';
@@ -23,16 +22,15 @@ export interface INodeCredentialMetadataV1 {
23
22
  * preconditions, not minimums. Retrying must retain this complete input and the
24
23
  * original mutationId; a changed request with the same ID must fail closed.
25
24
  */
26
- export interface INodeCredentialMutationPreconditionsV1 {
27
- schemaVersion: 1;
25
+ export interface INodeCredentialMutationPreconditions {
28
26
  nodeId: string;
29
27
  purpose: TNodeCredentialPurpose;
30
28
  mutationId: string;
31
29
  expectedGeneration: number;
32
30
  expectedSessionEpoch: number;
33
31
  }
34
- export interface INodeCredentialMutationResultV1 {
35
- metadata: INodeCredentialMetadataV1;
32
+ export interface INodeCredentialMutationResult {
33
+ metadata: INodeCredentialMetadata;
36
34
  /** A replay returns the original result without restoring its authority. */
37
35
  replayed: boolean;
38
36
  }