@run402/sdk 4.94.0 → 4.96.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 (261) hide show
  1. package/README.md +44 -44
  2. package/core-dist/keystore.d.ts +1 -1
  3. package/core-dist/keystore.js +1 -1
  4. package/dist/actions.d.ts +3 -3
  5. package/dist/actions.d.ts.map +1 -1
  6. package/dist/app-up.d.ts +2 -2
  7. package/dist/app-up.d.ts.map +1 -1
  8. package/dist/config.d.ts +1 -2
  9. package/dist/config.d.ts.map +1 -1
  10. package/dist/config.js.map +1 -1
  11. package/dist/credentials.d.ts +1 -1
  12. package/dist/errors.d.ts +6 -6
  13. package/dist/errors.d.ts.map +1 -1
  14. package/dist/errors.js +1 -1
  15. package/dist/errors.js.map +1 -1
  16. package/dist/index.d.ts +9 -9
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +9 -9
  19. package/dist/index.js.map +1 -1
  20. package/dist/namespaces/admin.d.ts +1 -1
  21. package/dist/namespaces/admin.d.ts.map +1 -1
  22. package/dist/namespaces/ai.d.ts +1 -1
  23. package/dist/namespaces/ai.js +2 -2
  24. package/dist/namespaces/ai.js.map +1 -1
  25. package/dist/namespaces/assets.js +1 -1
  26. package/dist/namespaces/assets.js.map +1 -1
  27. package/dist/namespaces/ci.js +3 -3
  28. package/dist/namespaces/ci.js.map +1 -1
  29. package/dist/namespaces/deploy.d.ts +5 -5
  30. package/dist/namespaces/deploy.d.ts.map +1 -1
  31. package/dist/namespaces/deploy.js +45 -46
  32. package/dist/namespaces/deploy.js.map +1 -1
  33. package/dist/namespaces/deploy.types.d.ts +19 -19
  34. package/dist/namespaces/deploy.types.d.ts.map +1 -1
  35. package/dist/namespaces/domains.d.ts +10 -2
  36. package/dist/namespaces/domains.d.ts.map +1 -1
  37. package/dist/namespaces/domains.js +10 -5
  38. package/dist/namespaces/domains.js.map +1 -1
  39. package/dist/namespaces/errors.js +1 -1
  40. package/dist/namespaces/functions.js +1 -1
  41. package/dist/namespaces/functions.js.map +1 -1
  42. package/dist/namespaces/org.d.ts +2 -2
  43. package/dist/namespaces/org.js +2 -2
  44. package/dist/namespaces/org.types.d.ts +3 -3
  45. package/dist/namespaces/pay.js +1 -1
  46. package/dist/namespaces/{gitvault.d.ts → repos.d.ts} +438 -451
  47. package/dist/namespaces/repos.d.ts.map +1 -0
  48. package/dist/namespaces/{gitvault.js → repos.js} +454 -462
  49. package/dist/namespaces/repos.js.map +1 -0
  50. package/dist/namespaces/rooms.js +2 -2
  51. package/dist/namespaces/rooms.js.map +1 -1
  52. package/dist/namespaces/session.d.ts +2 -2
  53. package/dist/namespaces/session.d.ts.map +1 -1
  54. package/dist/namespaces/session.js +2 -2
  55. package/dist/namespaces/session.js.map +1 -1
  56. package/dist/namespaces/tier.d.ts +4 -4
  57. package/dist/namespaces/tier.d.ts.map +1 -1
  58. package/dist/namespaces/transfers.d.ts +46 -15
  59. package/dist/namespaces/transfers.d.ts.map +1 -1
  60. package/dist/namespaces/transfers.js.map +1 -1
  61. package/dist/namespaces/{gitvault.crypto.d.ts → vault.crypto.d.ts} +141 -141
  62. package/dist/namespaces/vault.crypto.d.ts.map +1 -0
  63. package/dist/namespaces/{gitvault.crypto.js → vault.crypto.js} +173 -173
  64. package/dist/namespaces/vault.crypto.js.map +1 -0
  65. package/dist/namespaces/{gitvault.types.d.ts → vault.types.d.ts} +136 -136
  66. package/dist/namespaces/vault.types.d.ts.map +1 -0
  67. package/dist/namespaces/{gitvault.types.js → vault.types.js} +4 -4
  68. package/dist/namespaces/vault.types.js.map +1 -0
  69. package/dist/node/actions-node.js +8 -8
  70. package/dist/node/actions-node.js.map +1 -1
  71. package/dist/node/assets-node.js +6 -6
  72. package/dist/node/assets-node.js.map +1 -1
  73. package/dist/node/bearer-redeem-key.d.ts +1 -1
  74. package/dist/node/bearer-redeem-key.js +5 -5
  75. package/dist/node/bearer-redeem-key.js.map +1 -1
  76. package/dist/node/ci.js +1 -1
  77. package/dist/node/ci.js.map +1 -1
  78. package/dist/node/credentials.d.ts +1 -1
  79. package/dist/node/credentials.js +1 -1
  80. package/dist/node/deploy-manifest.d.ts +3 -5
  81. package/dist/node/deploy-manifest.d.ts.map +1 -1
  82. package/dist/node/deploy-manifest.js +3 -12
  83. package/dist/node/deploy-manifest.js.map +1 -1
  84. package/dist/node/http-dispatcher.js +5 -5
  85. package/dist/node/http-dispatcher.js.map +1 -1
  86. package/dist/node/index.d.ts +29 -29
  87. package/dist/node/index.d.ts.map +1 -1
  88. package/dist/node/index.js +39 -39
  89. package/dist/node/index.js.map +1 -1
  90. package/dist/node/manifest-export.js +2 -2
  91. package/dist/node/manifest-export.js.map +1 -1
  92. package/dist/node/org-adopt.js +1 -1
  93. package/dist/node/org-adopt.js.map +1 -1
  94. package/dist/node/sites-node.js +1 -1
  95. package/dist/node/sites-node.js.map +1 -1
  96. package/dist/node/{gitvault-address.d.ts → vault-address.d.ts} +42 -42
  97. package/dist/node/vault-address.d.ts.map +1 -0
  98. package/dist/node/{gitvault-address.js → vault-address.js} +43 -43
  99. package/dist/node/vault-address.js.map +1 -0
  100. package/dist/node/{gitvault-apply.d.ts → vault-apply.d.ts} +27 -27
  101. package/dist/node/vault-apply.d.ts.map +1 -0
  102. package/dist/node/{gitvault-apply.js → vault-apply.js} +38 -38
  103. package/dist/node/vault-apply.js.map +1 -0
  104. package/dist/node/vault-byo-config.d.ts +29 -0
  105. package/dist/node/vault-byo-config.d.ts.map +1 -0
  106. package/dist/node/{gitvault-byo-config.js → vault-byo-config.js} +18 -18
  107. package/dist/node/vault-byo-config.js.map +1 -0
  108. package/dist/node/vault-byo-probe.d.ts +20 -0
  109. package/dist/node/vault-byo-probe.d.ts.map +1 -0
  110. package/dist/node/vault-byo-probe.js +57 -0
  111. package/dist/node/vault-byo-probe.js.map +1 -0
  112. package/dist/node/{gitvault-creation-journal.d.ts → vault-creation-journal.d.ts} +69 -69
  113. package/dist/node/vault-creation-journal.d.ts.map +1 -0
  114. package/dist/node/{gitvault-creation-journal.js → vault-creation-journal.js} +54 -54
  115. package/dist/node/vault-creation-journal.js.map +1 -0
  116. package/dist/node/{gitvault-degraded-read.d.ts → vault-degraded-read.d.ts} +34 -34
  117. package/dist/node/vault-degraded-read.d.ts.map +1 -0
  118. package/dist/node/{gitvault-degraded-read.js → vault-degraded-read.js} +24 -24
  119. package/dist/node/vault-degraded-read.js.map +1 -0
  120. package/dist/node/{gitvault-deploy.d.ts → vault-deploy.d.ts} +67 -67
  121. package/dist/node/vault-deploy.d.ts.map +1 -0
  122. package/dist/node/{gitvault-deploy.js → vault-deploy.js} +27 -27
  123. package/dist/node/vault-deploy.js.map +1 -0
  124. package/dist/node/{gitvault-edge-fetch.d.ts → vault-edge-fetch.d.ts} +9 -9
  125. package/dist/node/vault-edge-fetch.d.ts.map +1 -0
  126. package/dist/node/{gitvault-edge-fetch.js → vault-edge-fetch.js} +11 -11
  127. package/dist/node/vault-edge-fetch.js.map +1 -0
  128. package/dist/node/{gitvault-handoff.d.ts → vault-handoff.d.ts} +9 -9
  129. package/dist/node/vault-handoff.d.ts.map +1 -0
  130. package/dist/node/{gitvault-handoff.js → vault-handoff.js} +24 -24
  131. package/dist/node/vault-handoff.js.map +1 -0
  132. package/dist/node/{gitvault-keystore.d.ts → vault-keystore.d.ts} +87 -77
  133. package/dist/node/vault-keystore.d.ts.map +1 -0
  134. package/dist/node/{gitvault-keystore.js → vault-keystore.js} +105 -68
  135. package/dist/node/vault-keystore.js.map +1 -0
  136. package/dist/node/{gitvault-member-bundle.d.ts → vault-member-bundle.d.ts} +17 -17
  137. package/dist/node/vault-member-bundle.d.ts.map +1 -0
  138. package/dist/node/{gitvault-member-bundle.js → vault-member-bundle.js} +11 -11
  139. package/dist/node/vault-member-bundle.js.map +1 -0
  140. package/dist/node/{gitvault-mirror-backend.d.ts → vault-mirror-backend.d.ts} +26 -26
  141. package/dist/node/vault-mirror-backend.d.ts.map +1 -0
  142. package/dist/node/{gitvault-mirror-backend.js → vault-mirror-backend.js} +25 -25
  143. package/dist/node/vault-mirror-backend.js.map +1 -0
  144. package/dist/node/{gitvault-mirror-config.d.ts → vault-mirror-config.d.ts} +23 -23
  145. package/dist/node/vault-mirror-config.d.ts.map +1 -0
  146. package/dist/node/{gitvault-mirror-config.js → vault-mirror-config.js} +16 -16
  147. package/dist/node/vault-mirror-config.js.map +1 -0
  148. package/dist/node/{gitvault-mirror.d.ts → vault-mirror.d.ts} +36 -36
  149. package/dist/node/vault-mirror.d.ts.map +1 -0
  150. package/dist/node/{gitvault-mirror.js → vault-mirror.js} +75 -75
  151. package/dist/node/vault-mirror.js.map +1 -0
  152. package/dist/node/{gitvault-native-crypto.d.ts → vault-native-crypto.d.ts} +10 -10
  153. package/dist/node/vault-native-crypto.d.ts.map +1 -0
  154. package/dist/node/{gitvault-native-crypto.js → vault-native-crypto.js} +16 -16
  155. package/dist/node/vault-native-crypto.js.map +1 -0
  156. package/dist/node/{gitvault-open-or-create.d.ts → vault-open-or-create.d.ts} +16 -16
  157. package/dist/node/vault-open-or-create.d.ts.map +1 -0
  158. package/dist/node/{gitvault-open-or-create.js → vault-open-or-create.js} +10 -10
  159. package/dist/node/vault-open-or-create.js.map +1 -0
  160. package/dist/node/{gitvault-prewarm.d.ts → vault-prewarm.d.ts} +13 -13
  161. package/dist/node/vault-prewarm.d.ts.map +1 -0
  162. package/dist/node/{gitvault-prewarm.js → vault-prewarm.js} +25 -25
  163. package/dist/node/vault-prewarm.js.map +1 -0
  164. package/dist/node/{gitvault-profile-scan.d.ts → vault-profile-scan.d.ts} +3 -3
  165. package/dist/node/vault-profile-scan.d.ts.map +1 -0
  166. package/dist/node/{gitvault-profile-scan.js → vault-profile-scan.js} +12 -12
  167. package/dist/node/vault-profile-scan.js.map +1 -0
  168. package/dist/node/{gitvault-prune.d.ts → vault-prune.d.ts} +61 -61
  169. package/dist/node/vault-prune.d.ts.map +1 -0
  170. package/dist/node/{gitvault-prune.js → vault-prune.js} +34 -34
  171. package/dist/node/vault-prune.js.map +1 -0
  172. package/dist/node/{gitvault-publication.d.ts → vault-publication.d.ts} +399 -399
  173. package/dist/node/vault-publication.d.ts.map +1 -0
  174. package/dist/node/{gitvault-publication.js → vault-publication.js} +584 -584
  175. package/dist/node/vault-publication.js.map +1 -0
  176. package/dist/node/{gitvault-push-to-create.d.ts → vault-push-to-create.d.ts} +16 -16
  177. package/dist/node/vault-push-to-create.d.ts.map +1 -0
  178. package/dist/node/{gitvault-push-to-create.js → vault-push-to-create.js} +9 -9
  179. package/dist/node/vault-push-to-create.js.map +1 -0
  180. package/dist/node/{gitvault-recover.d.ts → vault-recover.d.ts} +50 -50
  181. package/dist/node/vault-recover.d.ts.map +1 -0
  182. package/dist/node/{gitvault-recover.js → vault-recover.js} +84 -84
  183. package/dist/node/vault-recover.js.map +1 -0
  184. package/dist/node/{gitvault-restore.d.ts → vault-restore.d.ts} +8 -8
  185. package/dist/node/vault-restore.d.ts.map +1 -0
  186. package/dist/node/{gitvault-restore.js → vault-restore.js} +11 -11
  187. package/dist/node/vault-restore.js.map +1 -0
  188. package/dist/node/{gitvault-snapshot.d.ts → vault-snapshot.d.ts} +48 -48
  189. package/dist/node/vault-snapshot.d.ts.map +1 -0
  190. package/dist/node/{gitvault-snapshot.js → vault-snapshot.js} +61 -61
  191. package/dist/node/vault-snapshot.js.map +1 -0
  192. package/dist/node/{gitvault-writer-state.d.ts → vault-writer-state.d.ts} +8 -8
  193. package/dist/node/vault-writer-state.d.ts.map +1 -0
  194. package/dist/node/{gitvault-writer-state.js → vault-writer-state.js} +15 -15
  195. package/dist/node/vault-writer-state.js.map +1 -0
  196. package/dist/node/workflow-output.js +4 -4
  197. package/dist/node/workflow-output.js.map +1 -1
  198. package/dist/scoped.d.ts +8 -8
  199. package/dist/scoped.d.ts.map +1 -1
  200. package/dist/scoped.js +3 -3
  201. package/dist/scoped.js.map +1 -1
  202. package/package.json +1 -1
  203. package/dist/namespaces/gitvault.crypto.d.ts.map +0 -1
  204. package/dist/namespaces/gitvault.crypto.js.map +0 -1
  205. package/dist/namespaces/gitvault.d.ts.map +0 -1
  206. package/dist/namespaces/gitvault.js.map +0 -1
  207. package/dist/namespaces/gitvault.types.d.ts.map +0 -1
  208. package/dist/namespaces/gitvault.types.js.map +0 -1
  209. package/dist/node/gitvault-address.d.ts.map +0 -1
  210. package/dist/node/gitvault-address.js.map +0 -1
  211. package/dist/node/gitvault-apply.d.ts.map +0 -1
  212. package/dist/node/gitvault-apply.js.map +0 -1
  213. package/dist/node/gitvault-byo-config.d.ts +0 -29
  214. package/dist/node/gitvault-byo-config.d.ts.map +0 -1
  215. package/dist/node/gitvault-byo-config.js.map +0 -1
  216. package/dist/node/gitvault-byo-probe.d.ts +0 -20
  217. package/dist/node/gitvault-byo-probe.d.ts.map +0 -1
  218. package/dist/node/gitvault-byo-probe.js +0 -57
  219. package/dist/node/gitvault-byo-probe.js.map +0 -1
  220. package/dist/node/gitvault-creation-journal.d.ts.map +0 -1
  221. package/dist/node/gitvault-creation-journal.js.map +0 -1
  222. package/dist/node/gitvault-degraded-read.d.ts.map +0 -1
  223. package/dist/node/gitvault-degraded-read.js.map +0 -1
  224. package/dist/node/gitvault-deploy.d.ts.map +0 -1
  225. package/dist/node/gitvault-deploy.js.map +0 -1
  226. package/dist/node/gitvault-edge-fetch.d.ts.map +0 -1
  227. package/dist/node/gitvault-edge-fetch.js.map +0 -1
  228. package/dist/node/gitvault-handoff.d.ts.map +0 -1
  229. package/dist/node/gitvault-handoff.js.map +0 -1
  230. package/dist/node/gitvault-keystore.d.ts.map +0 -1
  231. package/dist/node/gitvault-keystore.js.map +0 -1
  232. package/dist/node/gitvault-member-bundle.d.ts.map +0 -1
  233. package/dist/node/gitvault-member-bundle.js.map +0 -1
  234. package/dist/node/gitvault-mirror-backend.d.ts.map +0 -1
  235. package/dist/node/gitvault-mirror-backend.js.map +0 -1
  236. package/dist/node/gitvault-mirror-config.d.ts.map +0 -1
  237. package/dist/node/gitvault-mirror-config.js.map +0 -1
  238. package/dist/node/gitvault-mirror.d.ts.map +0 -1
  239. package/dist/node/gitvault-mirror.js.map +0 -1
  240. package/dist/node/gitvault-native-crypto.d.ts.map +0 -1
  241. package/dist/node/gitvault-native-crypto.js.map +0 -1
  242. package/dist/node/gitvault-open-or-create.d.ts.map +0 -1
  243. package/dist/node/gitvault-open-or-create.js.map +0 -1
  244. package/dist/node/gitvault-prewarm.d.ts.map +0 -1
  245. package/dist/node/gitvault-prewarm.js.map +0 -1
  246. package/dist/node/gitvault-profile-scan.d.ts.map +0 -1
  247. package/dist/node/gitvault-profile-scan.js.map +0 -1
  248. package/dist/node/gitvault-prune.d.ts.map +0 -1
  249. package/dist/node/gitvault-prune.js.map +0 -1
  250. package/dist/node/gitvault-publication.d.ts.map +0 -1
  251. package/dist/node/gitvault-publication.js.map +0 -1
  252. package/dist/node/gitvault-push-to-create.d.ts.map +0 -1
  253. package/dist/node/gitvault-push-to-create.js.map +0 -1
  254. package/dist/node/gitvault-recover.d.ts.map +0 -1
  255. package/dist/node/gitvault-recover.js.map +0 -1
  256. package/dist/node/gitvault-restore.d.ts.map +0 -1
  257. package/dist/node/gitvault-restore.js.map +0 -1
  258. package/dist/node/gitvault-snapshot.d.ts.map +0 -1
  259. package/dist/node/gitvault-snapshot.js.map +0 -1
  260. package/dist/node/gitvault-writer-state.d.ts.map +0 -1
  261. package/dist/node/gitvault-writer-state.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * gitvault — prune (protocol rev 40 §7.3; task 5.12a).
2
+ * vault — prune (protocol rev 40 §7.3; task 5.12a).
3
3
  *
4
4
  * The two-phase, ACYCLIC prune the client half owns:
5
5
  *
@@ -33,15 +33,15 @@
33
33
  * `result: "failed"` (and both booleans as observed) whenever the chain
34
34
  * cannot prove the property, rather than a convenient `true`.
35
35
  */
36
- import { GITVAULT_FORMAT, GITVAULT_SUITE } from "../namespaces/gitvault.crypto.js";
37
- import type { GitvaultCheckpointClaimSet, GitvaultCheckpointManifestReceipt, GitvaultCheckpointPackReceipt, GitvaultCheckpointClaimSetReceipt, GitvaultHead, GitvaultRefStateReceipt, GitvaultRetentionRootsReceipt, GitvaultWalPackReceipt } from "../namespaces/gitvault.types.js";
36
+ import { VAULT_FORMAT, VAULT_SUITE } from "../namespaces/vault.crypto.js";
37
+ import type { VaultCheckpointClaimSet, VaultCheckpointManifestReceipt, VaultCheckpointPackReceipt, VaultCheckpointClaimSetReceipt, VaultHead, VaultRefStateReceipt, VaultRetentionRootsReceipt, VaultWalPackReceipt } from "../namespaces/vault.types.js";
38
38
  /** §7.3: at most 10 000 candidates per intent; larger prunes chunk into successive intents. */
39
- export declare const GITVAULT_MAX_PRUNE_CANDIDATES = 10000;
39
+ export declare const VAULT_MAX_PRUNE_CANDIDATES = 10000;
40
40
  /** The CLOSED V0 verifier identity set (`common.json#/$defs/implementation_id`). */
41
- export declare const GITVAULT_VERIFIER_IMPLEMENTATIONS: readonly ["run402-cli", "r402s-verify"];
42
- export type GitvaultVerifierImplementation = (typeof GITVAULT_VERIFIER_IMPLEMENTATIONS)[number];
41
+ export declare const VAULT_VERIFIER_IMPLEMENTATIONS: readonly ["run402-cli", "r402s-verify"];
42
+ export type VaultVerifierImplementation = (typeof VAULT_VERIFIER_IMPLEMENTATIONS)[number];
43
43
  /** This SDK's identity when it attests. The other half of the pair is never ours to produce. */
44
- export declare const GITVAULT_SDK_VERIFIER_IMPLEMENTATION: GitvaultVerifierImplementation;
44
+ export declare const VAULT_SDK_VERIFIER_IMPLEMENTATION: VaultVerifierImplementation;
45
45
  /**
46
46
  * What this lineage calls itself in a receipt's `implementation_version`.
47
47
  *
@@ -50,28 +50,28 @@ export declare const GITVAULT_SDK_VERIFIER_IMPLEMENTATION: GitvaultVerifierImple
50
50
  * moves for reasons that have nothing to do with either. Bump this when the
51
51
  * verification logic or the revision it verifies changes.
52
52
  */
53
- export declare const GITVAULT_SDK_VERIFIER_VERSION = "run402-sdk/r402s-v0-rev40";
53
+ export declare const VAULT_SDK_VERIFIER_VERSION = "run402-sdk/r402s-v0-rev40";
54
54
  /** `common.json#/$defs/receipt_pruneable` — the CLOSED union a delete set may name. */
55
- export type GitvaultPruneableReceipt = GitvaultWalPackReceipt | GitvaultRefStateReceipt | GitvaultRetentionRootsReceipt | GitvaultCheckpointManifestReceipt | GitvaultCheckpointPackReceipt | GitvaultCheckpointClaimSetReceipt;
55
+ export type VaultPruneableReceipt = VaultWalPackReceipt | VaultRefStateReceipt | VaultRetentionRootsReceipt | VaultCheckpointManifestReceipt | VaultCheckpointPackReceipt | VaultCheckpointClaimSetReceipt;
56
56
  /** One verified chain link plus its resolved checkpoint claim set (null when the head bears no checkpoint). */
57
- export interface GitvaultChainEntry {
58
- head: GitvaultHead;
57
+ export interface VaultChainEntry {
58
+ head: VaultHead;
59
59
  head_sha256: string;
60
- claim_set: GitvaultCheckpointClaimSet | null;
60
+ claim_set: VaultCheckpointClaimSet | null;
61
61
  }
62
62
  /** `common.json#/$defs/verifier_receipt_ref` — what the intent carries, not the receipt itself. */
63
- export interface GitvaultVerifierReceiptRef {
63
+ export interface VaultVerifierReceiptRef {
64
64
  object_id: string;
65
65
  object_kind: "verifier_receipt";
66
66
  stored_bytes_sha256: string;
67
67
  size_bytes: string;
68
- implementation_id: GitvaultVerifierImplementation;
68
+ implementation_id: VaultVerifierImplementation;
69
69
  }
70
70
  /** `verifier_receipt.json` — owner-signed, uploaded, then claimed at the intent's fence. */
71
- export interface GitvaultVerifierReceipt {
72
- format: typeof GITVAULT_FORMAT;
71
+ export interface VaultVerifierReceipt {
72
+ format: typeof VAULT_FORMAT;
73
73
  object_kind: "verifier_receipt";
74
- suite: typeof GITVAULT_SUITE;
74
+ suite: typeof VAULT_SUITE;
75
75
  repo_id: string;
76
76
  object_id: string;
77
77
  intent_core_sha256: string;
@@ -80,16 +80,16 @@ export interface GitvaultVerifierReceipt {
80
80
  restored_object_set_hmac: string;
81
81
  retention_evolution_ok: boolean;
82
82
  candidates_outside_roots_ok: boolean;
83
- implementation_id: GitvaultVerifierImplementation;
83
+ implementation_id: VaultVerifierImplementation;
84
84
  implementation_version: string;
85
85
  result: "restored_and_verified" | "failed";
86
86
  signature: string;
87
87
  }
88
88
  /** `prune_intent_core.json` — owner-signed; the acyclic base BOTH receipts sign. */
89
- export interface GitvaultPruneIntentCore {
90
- format: typeof GITVAULT_FORMAT;
89
+ export interface VaultPruneIntentCore {
90
+ format: typeof VAULT_FORMAT;
91
91
  object_kind: "prune_intent_core";
92
- suite: typeof GITVAULT_SUITE;
92
+ suite: typeof VAULT_SUITE;
93
93
  repo_id: string;
94
94
  object_id: string;
95
95
  gc_epoch: string;
@@ -102,29 +102,29 @@ export interface GitvaultPruneIntentCore {
102
102
  checkpoint_claim_set_sha256: string;
103
103
  gc_root_set_hmac: string;
104
104
  retention_state_hmac: string;
105
- delete_set: GitvaultPruneableReceipt[];
105
+ delete_set: VaultPruneableReceipt[];
106
106
  nonce: string;
107
107
  signature: string;
108
108
  }
109
109
  /** `prune_intent.json` — the wrapper the gateway publishes create-only under `prune/`. */
110
- export interface GitvaultPruneIntent {
111
- format: typeof GITVAULT_FORMAT;
110
+ export interface VaultPruneIntent {
111
+ format: typeof VAULT_FORMAT;
112
112
  object_kind: "prune_intent";
113
- suite: typeof GITVAULT_SUITE;
113
+ suite: typeof VAULT_SUITE;
114
114
  repo_id: string;
115
115
  object_id: string;
116
- core: GitvaultPruneIntentCore;
116
+ core: VaultPruneIntentCore;
117
117
  intent_core_sha256: string;
118
- verifier_receipts: GitvaultVerifierReceiptRef[];
118
+ verifier_receipts: VaultVerifierReceiptRef[];
119
119
  signature: string;
120
120
  }
121
121
  /** One entry of the completion's three-valued vector. */
122
- export interface GitvaultPruneOutcome {
122
+ export interface VaultPruneOutcome {
123
123
  object_id: string;
124
124
  result: "deleted" | "present_not_attempted" | "present_after_attempt";
125
125
  }
126
126
  /** `GET …/prune-intents/:id` — the gateway's secret-free public view (`toPublicIntent`). */
127
- export interface GitvaultPruneIntentRecord {
127
+ export interface VaultPruneIntentRecord {
128
128
  object_id: string;
129
129
  repo_id: string;
130
130
  state: string;
@@ -141,7 +141,7 @@ export interface GitvaultPruneIntentRecord {
141
141
  completion: {
142
142
  object_id: string | null;
143
143
  sha256: string | null;
144
- per_object: GitvaultPruneOutcome[] | null;
144
+ per_object: VaultPruneOutcome[] | null;
145
145
  deleted_count: number;
146
146
  present_after_attempt_count: number;
147
147
  present_not_attempted_count: number;
@@ -160,18 +160,18 @@ export interface GitvaultPruneIntentRecord {
160
160
  * A bundle missing its carriers is not a recovery path, so the carriers are
161
161
  * part of the protection, not adjacent to it.
162
162
  */
163
- export declare function checkpointRecoveryBundle(entry: GitvaultChainEntry): GitvaultPruneableReceipt[];
163
+ export declare function checkpointRecoveryBundle(entry: VaultChainEntry): VaultPruneableReceipt[];
164
164
  /** Every pruneable object the chain has ever named, sorted by `object_id`, deduplicated. */
165
- export declare function collectPruneUniverse(entries: readonly GitvaultChainEntry[]): GitvaultPruneableReceipt[];
165
+ export declare function collectPruneUniverse(entries: readonly VaultChainEntry[]): VaultPruneableReceipt[];
166
166
  /** Pairwise-distinct, sorted by `object_id` — the schema's canonical order, not an incidental one. */
167
- export declare function sortPruneReceipts(receipts: readonly GitvaultPruneableReceipt[]): GitvaultPruneableReceipt[];
168
- export interface GitvaultGcRootSet {
167
+ export declare function sortPruneReceipts(receipts: readonly VaultPruneableReceipt[]): VaultPruneableReceipt[];
168
+ export interface VaultGcRootSet {
169
169
  /** The protected receipts, sorted — the `gcrootset` commitment's preimage content. */
170
- receipts: GitvaultPruneableReceipt[];
170
+ receipts: VaultPruneableReceipt[];
171
171
  /** The newest checkpoint-bearing entry, or `null` when the chain has none. */
172
- latest_checkpoint: GitvaultChainEntry | null;
172
+ latest_checkpoint: VaultChainEntry | null;
173
173
  /** The one before it, or `null`. */
174
- prior_checkpoint: GitvaultChainEntry | null;
174
+ prior_checkpoint: VaultChainEntry | null;
175
175
  /**
176
176
  * Why nothing may be pruned yet, or `null` when a prune is structurally
177
177
  * possible. Stated rather than left to be inferred from an empty candidate
@@ -196,18 +196,18 @@ export interface GitvaultGcRootSet {
196
196
  * expiry is measured against a server-signed ticket this client cannot
197
197
  * evaluate, so it never guesses a carrier is dead.
198
198
  */
199
- export declare function computeGcRootSet(entries: readonly GitvaultChainEntry[]): GitvaultGcRootSet;
200
- export interface GitvaultPrunePlan {
201
- /** Candidates in canonical order, capped at {@link GITVAULT_MAX_PRUNE_CANDIDATES}. */
202
- candidates: GitvaultPruneableReceipt[];
199
+ export declare function computeGcRootSet(entries: readonly VaultChainEntry[]): VaultGcRootSet;
200
+ export interface VaultPrunePlan {
201
+ /** Candidates in canonical order, capped at {@link VAULT_MAX_PRUNE_CANDIDATES}. */
202
+ candidates: VaultPruneableReceipt[];
203
203
  /** How many pruneable objects were left out by the per-intent cap (chunk into a later intent). */
204
204
  deferred_count: number;
205
- root_set: GitvaultGcRootSet;
205
+ root_set: VaultGcRootSet;
206
206
  universe_count: number;
207
207
  }
208
208
  /** universe − GC root set, canonical order, capped. Never mutates its inputs. */
209
- export declare function planPruneCandidates(entries: readonly GitvaultChainEntry[]): GitvaultPrunePlan;
210
- export interface GitvaultRetentionEvolutionCheck {
209
+ export declare function planPruneCandidates(entries: readonly VaultChainEntry[]): VaultPrunePlan;
210
+ export interface VaultRetentionEvolutionCheck {
211
211
  ok: boolean;
212
212
  /** Every departure this client could not justify from the chain alone. */
213
213
  unproven: Array<{
@@ -226,19 +226,19 @@ export interface GitvaultRetentionEvolutionCheck {
226
226
  * a failure of THIS CLIENT to prove the departure, and the check reports `ok:
227
227
  * false` so the receipt attests `false` rather than a convenient `true`.
228
228
  */
229
- export declare function checkRetentionEvolution(entries: readonly GitvaultChainEntry[], roots: (entry: GitvaultChainEntry) => Array<{
229
+ export declare function checkRetentionEvolution(entries: readonly VaultChainEntry[], roots: (entry: VaultChainEntry) => Array<{
230
230
  ref: string;
231
231
  oid: string;
232
232
  dropped_at_generation: string;
233
- }>, effectiveAdmittedAt: (droppedAtGeneration: string) => string | null, isEligible: (effectiveAdmittedAtIso: string, cutoffAtIso: string) => boolean): GitvaultRetentionEvolutionCheck;
234
- export interface GitvaultBuildPruneCoreInput {
233
+ }>, effectiveAdmittedAt: (droppedAtGeneration: string) => string | null, isEligible: (effectiveAdmittedAtIso: string, cutoffAtIso: string) => boolean): VaultRetentionEvolutionCheck;
234
+ export interface VaultBuildPruneCoreInput {
235
235
  repo_id: string;
236
236
  gc_epoch: string;
237
237
  authorizing_head_sha256: string;
238
238
  checkpoint_claim_set_sha256: string;
239
239
  gc_root_set_hmac: string;
240
240
  retention_state_hmac: string;
241
- delete_set: readonly GitvaultPruneableReceipt[];
241
+ delete_set: readonly VaultPruneableReceipt[];
242
242
  /** All five cycle fields are non-null together iff the prune advances a maintenance cycle (§7.2). */
243
243
  cycle?: {
244
244
  maintenance_cycle_id: string;
@@ -256,10 +256,10 @@ export interface GitvaultBuildPruneCoreInput {
256
256
  * the stored-bytes hash of the COMPLETE signed core, which is why the core must
257
257
  * be finished before either verifier can attest anything about it.
258
258
  */
259
- export declare function buildPruneIntentCore(input: GitvaultBuildPruneCoreInput, signingSeed: Uint8Array): GitvaultPruneIntentCore;
259
+ export declare function buildPruneIntentCore(input: VaultBuildPruneCoreInput, signingSeed: Uint8Array): VaultPruneIntentCore;
260
260
  /** The stored-bytes hash of the complete signed core — what BOTH verifier receipts sign. */
261
- export declare function pruneIntentCoreSha256(core: GitvaultPruneIntentCore): string;
262
- export interface GitvaultBuildVerifierReceiptInput {
261
+ export declare function pruneIntentCoreSha256(core: VaultPruneIntentCore): string;
262
+ export interface VaultBuildVerifierReceiptInput {
263
263
  repo_id: string;
264
264
  intent_core_sha256: string;
265
265
  checkpoint_head_sha256: string;
@@ -267,7 +267,7 @@ export interface GitvaultBuildVerifierReceiptInput {
267
267
  restored_object_set_hmac: string;
268
268
  retention_evolution_ok: boolean;
269
269
  candidates_outside_roots_ok: boolean;
270
- implementation_id: GitvaultVerifierImplementation;
270
+ implementation_id: VaultVerifierImplementation;
271
271
  implementation_version: string;
272
272
  object_id?: string;
273
273
  }
@@ -278,9 +278,9 @@ export interface GitvaultBuildVerifierReceiptInput {
278
278
  * exactly when both attestation booleans are true, and `failed` otherwise. A
279
279
  * caller cannot hand this function `failed` booleans and a passing result.
280
280
  */
281
- export declare function buildVerifierReceipt(input: GitvaultBuildVerifierReceiptInput, signingSeed: Uint8Array): GitvaultVerifierReceipt;
281
+ export declare function buildVerifierReceipt(input: VaultBuildVerifierReceiptInput, signingSeed: Uint8Array): VaultVerifierReceipt;
282
282
  /** The `verifier_receipt_ref` an intent carries for an uploaded receipt. */
283
- export declare function verifierReceiptRef(receipt: GitvaultVerifierReceipt): GitvaultVerifierReceiptRef;
283
+ export declare function verifierReceiptRef(receipt: VaultVerifierReceipt): VaultVerifierReceiptRef;
284
284
  /**
285
285
  * Wrap + sign the intent.
286
286
  *
@@ -290,7 +290,7 @@ export declare function verifierReceiptRef(receipt: GitvaultVerifierReceipt): Gi
290
290
  * hashes, each attesting `restored_and_verified` with both booleans true, and
291
291
  * each signing THIS core.
292
292
  */
293
- export declare function buildPruneIntent(core: GitvaultPruneIntentCore, receipts: readonly GitvaultVerifierReceipt[], signingSeed: Uint8Array): GitvaultPruneIntent;
293
+ export declare function buildPruneIntent(core: VaultPruneIntentCore, receipts: readonly VaultVerifierReceipt[], signingSeed: Uint8Array): VaultPruneIntent;
294
294
  /**
295
295
  * Refuse a supplied core that the chain has moved past — BEFORE the receipts
296
296
  * are uploaded.
@@ -302,7 +302,7 @@ export declare function buildPruneIntent(core: GitvaultPruneIntentCore, receipts
302
302
  * submission burns evidence for nothing. Same registry codes the gateway uses,
303
303
  * raised one step earlier.
304
304
  */
305
- export declare function assertPruneCoreStillCurrent(core: GitvaultPruneIntentCore, current: {
305
+ export declare function assertPruneCoreStillCurrent(core: VaultPruneIntentCore, current: {
306
306
  repo_id: string;
307
307
  gc_epoch: string;
308
308
  checkpoint_claim_set_sha256: string;
@@ -315,14 +315,14 @@ export declare function assertPruneCoreStillCurrent(core: GitvaultPruneIntentCor
315
315
  * re-serializes the object between here and the socket — a JSON body helper, a
316
316
  * proxy that reformats — changes what was signed. Send exactly this.
317
317
  */
318
- export declare function pruneIntentBytes(intent: GitvaultPruneIntent): Uint8Array;
319
- export interface GitvaultPruneConfirmation {
318
+ export declare function pruneIntentBytes(intent: VaultPruneIntent): Uint8Array;
319
+ export interface VaultPruneConfirmation {
320
320
  /** `null` until the control-plane-signed completion exists. */
321
321
  outcome: "completed" | "superseded_no_delete" | "superseded_partial_delete" | null;
322
322
  /** Object ids the completion confirms are GONE. Only `deleted` qualifies. */
323
323
  deleted: string[];
324
324
  /** Still present — attempted or not. Never reported as removed. */
325
- present: GitvaultPruneOutcome[];
325
+ present: VaultPruneOutcome[];
326
326
  /** Candidates the completion did not adjudicate at all (a defect; reported, never assumed deleted). */
327
327
  unadjudicated: string[];
328
328
  }
@@ -335,7 +335,7 @@ export interface GitvaultPruneConfirmation {
335
335
  * treating it as one is how a client reports history removed that is still
336
336
  * there. A candidate with no entry is `unadjudicated`, never inferred.
337
337
  */
338
- export declare function summarizePruneCompletion(candidateIds: readonly string[], record: GitvaultPruneIntentRecord | null): GitvaultPruneConfirmation;
338
+ export declare function summarizePruneCompletion(candidateIds: readonly string[], record: VaultPruneIntentRecord | null): VaultPruneConfirmation;
339
339
  /** Run `fn` in a fresh temp directory and always remove it, even on refusal. */
340
340
  export declare function withScratchDir<T>(prefix: string, fn: (dir: string) => Promise<T>): Promise<T>;
341
- //# sourceMappingURL=gitvault-prune.d.ts.map
341
+ //# sourceMappingURL=vault-prune.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault-prune.d.ts","sourceRoot":"","sources":["../../src/node/vault-prune.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAMH,OAAO,EACL,YAAY,EACZ,WAAW,EAMZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,uBAAuB,EACvB,8BAA8B,EAC9B,0BAA0B,EAC1B,8BAA8B,EAC9B,SAAS,EACT,oBAAoB,EACpB,0BAA0B,EAE1B,mBAAmB,EACpB,MAAM,8BAA8B,CAAC;AAMtC,+FAA+F;AAC/F,eAAO,MAAM,0BAA0B,QAAS,CAAC;AAEjD,oFAAoF;AACpF,eAAO,MAAM,8BAA8B,yCAA0C,CAAC;AACtF,MAAM,MAAM,2BAA2B,GAAG,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1F,gGAAgG;AAChG,eAAO,MAAM,iCAAiC,EAAE,2BAA0C,CAAC;AAE3F;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AAEtE,uFAAuF;AACvF,MAAM,MAAM,qBAAqB,GAC7B,mBAAmB,GACnB,oBAAoB,GACpB,0BAA0B,GAC1B,8BAA8B,GAC9B,0BAA0B,GAC1B,8BAA8B,CAAC;AAEnC,+GAA+G;AAC/G,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,uBAAuB,GAAG,IAAI,CAAC;CAC3C;AAED,mGAAmG;AACnG,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,kBAAkB,CAAC;IAChC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,2BAA2B,CAAC;CAChD;AAED,4FAA4F;AAC5F,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC;IAChC,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,wBAAwB,EAAE,MAAM,CAAC;IACjC,sBAAsB,EAAE,OAAO,CAAC;IAChC,2BAA2B,EAAE,OAAO,CAAC;IACrC,iBAAiB,EAAE,2BAA2B,CAAC;IAC/C,sBAAsB,EAAE,MAAM,CAAC;IAC/B,MAAM,EAAE,uBAAuB,GAAG,QAAQ,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,oFAAoF;AACpF,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,sBAAsB,EAAE,cAAc,GAAG,OAAO,GAAG,IAAI,CAAC;IACxD,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,uBAAuB,EAAE,MAAM,CAAC;IAChC,2BAA2B,EAAE,MAAM,CAAC;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,EAAE,qBAAqB,EAAE,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,0FAA0F;AAC1F,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,WAAW,EAAE,cAAc,CAAC;IAC5B,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;IAC7C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,yDAAyD;AACzD,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;CACvE;AAED,4FAA4F;AAC5F,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE;QACV,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,UAAU,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC;QACvC,aAAa,EAAE,MAAM,CAAC;QACtB,2BAA2B,EAAE,MAAM,CAAC;QACpC,2BAA2B,EAAE,MAAM,CAAC;QACpC,sBAAsB,EAAE,MAAM,CAAC;QAC/B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;KAC7B,GAAG,IAAI,CAAC;IACT,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAQD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,GAAG,qBAAqB,EAAE,CAMxF;AAED,4FAA4F;AAC5F,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,qBAAqB,EAAE,CAOjG;AAED,sGAAsG;AACtG,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,SAAS,qBAAqB,EAAE,GAAG,qBAAqB,EAAE,CAErG;AAED,MAAM,WAAW,cAAc;IAC7B,sFAAsF;IACtF,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,8EAA8E;IAC9E,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAC;IAC1C,oCAAoC;IACpC,gBAAgB,EAAE,eAAe,GAAG,IAAI,CAAC;IACzC;;;;OAIG;IACH,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,cAAc,CA6BpF;AAED,MAAM,WAAW,cAAc;IAC7B,mFAAmF;IACnF,UAAU,EAAE,qBAAqB,EAAE,CAAC;IACpC,kGAAkG;IAClG,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,cAAc,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,iFAAiF;AACjF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,cAAc,CAWvF;AAID,MAAM,WAAW,4BAA4B;IAC3C,EAAE,EAAE,OAAO,CAAC;IACZ,0EAA0E;IAC1E,QAAQ,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnF;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,SAAS,eAAe,EAAE,EACnC,KAAK,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,KAAK,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,qBAAqB,EAAE,MAAM,CAAA;CAAE,CAAC,EACrG,mBAAmB,EAAE,CAAC,mBAAmB,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,EACnE,UAAU,EAAE,CAAC,sBAAsB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,GAC3E,4BAA4B,CA8B9B;AAID,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB,EAAE,MAAM,CAAC;IAChC,2BAA2B,EAAE,MAAM,CAAC;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC7C,qGAAqG;IACrG,KAAK,CAAC,EAAE;QAAE,oBAAoB,EAAE,MAAM,CAAC;QAAC,sBAAsB,EAAE,cAAc,GAAG,OAAO,CAAC;QAAC,sBAAsB,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC5K,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,wBAAwB,EAAE,WAAW,EAAE,UAAU,GAAG,oBAAoB,CAgCnH;AAED,4FAA4F;AAC5F,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAExE;AAED,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,wBAAwB,EAAE,MAAM,CAAC;IACjC,sBAAsB,EAAE,OAAO,CAAC;IAChC,2BAA2B,EAAE,OAAO,CAAC;IACrC,iBAAiB,EAAE,2BAA2B,CAAC;IAC/C,sBAAsB,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,8BAA8B,EAAE,WAAW,EAAE,UAAU,GAAG,oBAAoB,CAkBzH;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,GAAG,uBAAuB,CASzF;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,SAAS,oBAAoB,EAAE,EAAE,WAAW,EAAE,UAAU,GAAG,gBAAgB,CAiDjJ;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,2BAA2B,EAAE,MAAM,CAAA;CAAE,GAClF,IAAI,CAsBN;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU,CAErE;AAID,MAAM,WAAW,sBAAsB;IACrC,+DAA+D;IAC/D,OAAO,EAAE,WAAW,GAAG,sBAAsB,GAAG,2BAA2B,GAAG,IAAI,CAAC;IACnF,6EAA6E;IAC7E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,mEAAmE;IACnE,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,uGAAuG;IACvG,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,sBAAsB,GAAG,IAAI,GAAG,sBAAsB,CAwBvI;AAID,gFAAgF;AAChF,wBAAsB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAOnG"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * gitvault — prune (protocol rev 40 §7.3; task 5.12a).
2
+ * vault — prune (protocol rev 40 §7.3; task 5.12a).
3
3
  *
4
4
  * The two-phase, ACYCLIC prune the client half owns:
5
5
  *
@@ -37,16 +37,16 @@ import { mkdtempSync, rmSync } from "node:fs";
37
37
  import { tmpdir } from "node:os";
38
38
  import { join } from "node:path";
39
39
  import { LocalError } from "../errors.js";
40
- import { GITVAULT_FORMAT, GITVAULT_SUITE, newGitvaultId, newHex32, signGitvaultObject, storedBytes, storedBytesSha256, } from "../namespaces/gitvault.crypto.js";
40
+ import { VAULT_FORMAT, VAULT_SUITE, newVaultId, newHex32, signVaultObject, storedBytes, storedBytesSha256, } from "../namespaces/vault.crypto.js";
41
41
  function fail(code, message, context, details, nextActions) {
42
42
  throw new LocalError(message, context, { code, details, ...(nextActions ? { next_actions: nextActions } : {}) });
43
43
  }
44
44
  /** §7.3: at most 10 000 candidates per intent; larger prunes chunk into successive intents. */
45
- export const GITVAULT_MAX_PRUNE_CANDIDATES = 10_000;
45
+ export const VAULT_MAX_PRUNE_CANDIDATES = 10_000;
46
46
  /** The CLOSED V0 verifier identity set (`common.json#/$defs/implementation_id`). */
47
- export const GITVAULT_VERIFIER_IMPLEMENTATIONS = ["run402-cli", "r402s-verify"];
47
+ export const VAULT_VERIFIER_IMPLEMENTATIONS = ["run402-cli", "r402s-verify"];
48
48
  /** This SDK's identity when it attests. The other half of the pair is never ours to produce. */
49
- export const GITVAULT_SDK_VERIFIER_IMPLEMENTATION = "run402-cli";
49
+ export const VAULT_SDK_VERIFIER_IMPLEMENTATION = "run402-cli";
50
50
  /**
51
51
  * What this lineage calls itself in a receipt's `implementation_version`.
52
52
  *
@@ -55,7 +55,7 @@ export const GITVAULT_SDK_VERIFIER_IMPLEMENTATION = "run402-cli";
55
55
  * moves for reasons that have nothing to do with either. Bump this when the
56
56
  * verification logic or the revision it verifies changes.
57
57
  */
58
- export const GITVAULT_SDK_VERIFIER_VERSION = "run402-sdk/r402s-v0-rev40";
58
+ export const VAULT_SDK_VERIFIER_VERSION = "run402-sdk/r402s-v0-rev40";
59
59
  // ─── The GC root set + the pruneable universe (§7.3 step 1) ──────────────────
60
60
  function receiptsOfHead(head) {
61
61
  return [...head.wal_entries, head.ref_state, head.retention_roots];
@@ -145,8 +145,8 @@ export function planPruneCandidates(entries) {
145
145
  const universe = collectPruneUniverse(entries);
146
146
  const eligible = universe.filter((r) => !protectedIds.has(r.object_id));
147
147
  return {
148
- candidates: eligible.slice(0, GITVAULT_MAX_PRUNE_CANDIDATES),
149
- deferred_count: Math.max(0, eligible.length - GITVAULT_MAX_PRUNE_CANDIDATES),
148
+ candidates: eligible.slice(0, VAULT_MAX_PRUNE_CANDIDATES),
149
+ deferred_count: Math.max(0, eligible.length - VAULT_MAX_PRUNE_CANDIDATES),
150
150
  root_set: rootSet,
151
151
  universe_count: universe.length,
152
152
  };
@@ -201,22 +201,22 @@ export function checkRetentionEvolution(entries, roots, effectiveAdmittedAt, isE
201
201
  export function buildPruneIntentCore(input, signingSeed) {
202
202
  const deleteSet = sortPruneReceipts(input.delete_set);
203
203
  if (deleteSet.length === 0)
204
- fail("UPGRADE_REQUIRED", "a prune intent must name at least one candidate", "building the gitvault prune intent");
205
- if (deleteSet.length > GITVAULT_MAX_PRUNE_CANDIDATES) {
206
- fail("UPGRADE_REQUIRED", `${deleteSet.length} candidates exceed the ${GITVAULT_MAX_PRUNE_CANDIDATES} per-intent maximum; chunk into successive intents`, "building the gitvault prune intent", { candidates: deleteSet.length });
204
+ fail("UPGRADE_REQUIRED", "a prune intent must name at least one candidate", "building the vault prune intent");
205
+ if (deleteSet.length > VAULT_MAX_PRUNE_CANDIDATES) {
206
+ fail("UPGRADE_REQUIRED", `${deleteSet.length} candidates exceed the ${VAULT_MAX_PRUNE_CANDIDATES} per-intent maximum; chunk into successive intents`, "building the vault prune intent", { candidates: deleteSet.length });
207
207
  }
208
208
  for (let i = 1; i < deleteSet.length; i++) {
209
209
  if (!(deleteSet[i - 1].object_id < deleteSet[i].object_id)) {
210
- fail("UPGRADE_REQUIRED", `delete_set is not sorted and pairwise-distinct at index ${i}`, "building the gitvault prune intent", { object_id: deleteSet[i].object_id });
210
+ fail("UPGRADE_REQUIRED", `delete_set is not sorted and pairwise-distinct at index ${i}`, "building the vault prune intent", { object_id: deleteSet[i].object_id });
211
211
  }
212
212
  }
213
213
  const cycle = input.cycle ?? null;
214
214
  const unsigned = {
215
- format: GITVAULT_FORMAT,
215
+ format: VAULT_FORMAT,
216
216
  object_kind: "prune_intent_core",
217
- suite: GITVAULT_SUITE,
217
+ suite: VAULT_SUITE,
218
218
  repo_id: input.repo_id,
219
- object_id: input.object_id ?? newGitvaultId("pi"),
219
+ object_id: input.object_id ?? newVaultId("pi"),
220
220
  gc_epoch: input.gc_epoch,
221
221
  maintenance_cycle_id: cycle ? cycle.maintenance_cycle_id : null,
222
222
  maintenance_prune_role: cycle ? cycle.maintenance_prune_role : null,
@@ -230,7 +230,7 @@ export function buildPruneIntentCore(input, signingSeed) {
230
230
  delete_set: deleteSet,
231
231
  nonce: input.nonce ?? newHex32(),
232
232
  };
233
- return signGitvaultObject(unsigned, signingSeed);
233
+ return signVaultObject(unsigned, signingSeed);
234
234
  }
235
235
  /** The stored-bytes hash of the complete signed core — what BOTH verifier receipts sign. */
236
236
  export function pruneIntentCoreSha256(core) {
@@ -245,11 +245,11 @@ export function pruneIntentCoreSha256(core) {
245
245
  */
246
246
  export function buildVerifierReceipt(input, signingSeed) {
247
247
  const unsigned = {
248
- format: GITVAULT_FORMAT,
248
+ format: VAULT_FORMAT,
249
249
  object_kind: "verifier_receipt",
250
- suite: GITVAULT_SUITE,
250
+ suite: VAULT_SUITE,
251
251
  repo_id: input.repo_id,
252
- object_id: input.object_id ?? newGitvaultId("vr"),
252
+ object_id: input.object_id ?? newVaultId("vr"),
253
253
  intent_core_sha256: input.intent_core_sha256,
254
254
  checkpoint_head_sha256: input.checkpoint_head_sha256,
255
255
  cutoff_ticket_sha256: input.cutoff_ticket_sha256,
@@ -260,7 +260,7 @@ export function buildVerifierReceipt(input, signingSeed) {
260
260
  implementation_version: input.implementation_version,
261
261
  result: (input.retention_evolution_ok && input.candidates_outside_roots_ok ? "restored_and_verified" : "failed"),
262
262
  };
263
- return signGitvaultObject(unsigned, signingSeed);
263
+ return signVaultObject(unsigned, signingSeed);
264
264
  }
265
265
  /** The `verifier_receipt_ref` an intent carries for an uploaded receipt. */
266
266
  export function verifierReceiptRef(receipt) {
@@ -285,27 +285,27 @@ export function verifierReceiptRef(receipt) {
285
285
  export function buildPruneIntent(core, receipts, signingSeed) {
286
286
  const coreSha = pruneIntentCoreSha256(core);
287
287
  if (receipts.length !== 2) {
288
- fail("UPGRADE_REQUIRED", `a prune intent carries exactly two verifier receipts, one per implementation (${GITVAULT_VERIFIER_IMPLEMENTATIONS.join(", ")}); got ${receipts.length}`, "building the gitvault prune intent", { supplied: receipts.map((r) => r.implementation_id) }, [{ action: "run r402s-verify against this intent core and pass its receipt alongside the SDK's own" }]);
288
+ fail("UPGRADE_REQUIRED", `a prune intent carries exactly two verifier receipts, one per implementation (${VAULT_VERIFIER_IMPLEMENTATIONS.join(", ")}); got ${receipts.length}`, "building the vault prune intent", { supplied: receipts.map((r) => r.implementation_id) }, [{ action: "run r402s-verify against this intent core and pass its receipt alongside the SDK's own" }]);
289
289
  }
290
- for (const id of GITVAULT_VERIFIER_IMPLEMENTATIONS) {
290
+ for (const id of VAULT_VERIFIER_IMPLEMENTATIONS) {
291
291
  const matching = receipts.filter((r) => r.implementation_id === id);
292
292
  if (matching.length !== 1) {
293
- fail("UPGRADE_REQUIRED", `exactly one verifier receipt per implementation is required; ${id} has ${matching.length}`, "building the gitvault prune intent", { implementation_id: id });
293
+ fail("UPGRADE_REQUIRED", `exactly one verifier receipt per implementation is required; ${id} has ${matching.length}`, "building the vault prune intent", { implementation_id: id });
294
294
  }
295
295
  }
296
296
  const [a, b] = receipts;
297
297
  const refs = receipts.map(verifierReceiptRef);
298
298
  if (a.object_id === b.object_id || refs[0].stored_bytes_sha256 === refs[1].stored_bytes_sha256) {
299
- fail("UPGRADE_REQUIRED", "the two verifier receipts must be distinct objects with distinct hashes", "building the gitvault prune intent");
299
+ fail("UPGRADE_REQUIRED", "the two verifier receipts must be distinct objects with distinct hashes", "building the vault prune intent");
300
300
  }
301
301
  for (const r of receipts) {
302
302
  if (r.repo_id !== core.repo_id)
303
- fail("GITVAULT_ACCESS_DENIED", `verifier receipt ${r.object_id} attests a different vault`, "building the gitvault prune intent", { repo_id: r.repo_id });
303
+ fail("VAULT_ACCESS_DENIED", `verifier receipt ${r.object_id} attests a different vault`, "building the vault prune intent", { repo_id: r.repo_id });
304
304
  if (r.intent_core_sha256 !== coreSha) {
305
- fail("UPGRADE_REQUIRED", `verifier receipt ${r.object_id} signs a different intent core (${r.intent_core_sha256} ≠ ${coreSha})`, "building the gitvault prune intent", { object_id: r.object_id });
305
+ fail("UPGRADE_REQUIRED", `verifier receipt ${r.object_id} signs a different intent core (${r.intent_core_sha256} ≠ ${coreSha})`, "building the vault prune intent", { object_id: r.object_id });
306
306
  }
307
307
  if (r.result !== "restored_and_verified" || r.retention_evolution_ok !== true || r.candidates_outside_roots_ok !== true) {
308
- fail("UPGRADE_REQUIRED", `verifier receipt ${r.object_id} does not attest restored_and_verified with both attestations true`, "building the gitvault prune intent", {
308
+ fail("UPGRADE_REQUIRED", `verifier receipt ${r.object_id} does not attest restored_and_verified with both attestations true`, "building the vault prune intent", {
309
309
  object_id: r.object_id,
310
310
  result: r.result,
311
311
  retention_evolution_ok: r.retention_evolution_ok,
@@ -316,16 +316,16 @@ export function buildPruneIntent(core, receipts, signingSeed) {
316
316
  // The two refs ride in the receipts' given order; the schema's `uniqueItems`
317
317
  // is satisfied by the distinctness gate above, not by sorting.
318
318
  const unsigned = {
319
- format: GITVAULT_FORMAT,
319
+ format: VAULT_FORMAT,
320
320
  object_kind: "prune_intent",
321
- suite: GITVAULT_SUITE,
321
+ suite: VAULT_SUITE,
322
322
  repo_id: core.repo_id,
323
323
  object_id: core.object_id,
324
324
  core,
325
325
  intent_core_sha256: coreSha,
326
326
  verifier_receipts: refs,
327
327
  };
328
- return signGitvaultObject(unsigned, signingSeed);
328
+ return signVaultObject(unsigned, signingSeed);
329
329
  }
330
330
  /**
331
331
  * Refuse a supplied core that the chain has moved past — BEFORE the receipts
@@ -340,13 +340,13 @@ export function buildPruneIntent(core, receipts, signingSeed) {
340
340
  */
341
341
  export function assertPruneCoreStillCurrent(core, current) {
342
342
  if (core.repo_id !== current.repo_id) {
343
- fail("GITVAULT_ACCESS_DENIED", `the supplied intent core belongs to ${core.repo_id}, not ${current.repo_id}`, "submitting the gitvault prune intent", { repo_id: core.repo_id });
343
+ fail("VAULT_ACCESS_DENIED", `the supplied intent core belongs to ${core.repo_id}, not ${current.repo_id}`, "submitting the vault prune intent", { repo_id: core.repo_id });
344
344
  }
345
345
  if (core.gc_epoch !== current.gc_epoch) {
346
- fail("GC_EPOCH_STALE", `the supplied intent core was planned at gc_epoch ${core.gc_epoch}; the vault is at ${current.gc_epoch}`, "submitting the gitvault prune intent", { planned: core.gc_epoch, current: current.gc_epoch }, [{ action: "refetch the vault state and rebuild the intent at the current epoch" }]);
346
+ fail("GC_EPOCH_STALE", `the supplied intent core was planned at gc_epoch ${core.gc_epoch}; the vault is at ${current.gc_epoch}`, "submitting the vault prune intent", { planned: core.gc_epoch, current: current.gc_epoch }, [{ action: "refetch the vault state and rebuild the intent at the current epoch" }]);
347
347
  }
348
348
  if (core.checkpoint_claim_set_sha256 !== current.checkpoint_claim_set_sha256) {
349
- fail("GC_EPOCH_STALE", "the supplied intent core names a checkpoint that is no longer the latest; a fresh checkpoint landed after the plan", "submitting the gitvault prune intent", { planned: core.checkpoint_claim_set_sha256, current: current.checkpoint_claim_set_sha256 }, [{ action: "refetch the vault state and rebuild the intent at the current epoch" }]);
349
+ fail("GC_EPOCH_STALE", "the supplied intent core names a checkpoint that is no longer the latest; a fresh checkpoint landed after the plan", "submitting the vault prune intent", { planned: core.checkpoint_claim_set_sha256, current: current.checkpoint_claim_set_sha256 }, [{ action: "refetch the vault state and rebuild the intent at the current epoch" }]);
350
350
  }
351
351
  }
352
352
  /**
@@ -407,4 +407,4 @@ export async function withScratchDir(prefix, fn) {
407
407
  rmSync(dir, { recursive: true, force: true });
408
408
  }
409
409
  }
410
- //# sourceMappingURL=gitvault-prune.js.map
410
+ //# sourceMappingURL=vault-prune.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault-prune.js","sourceRoot":"","sources":["../../src/node/vault-prune.ts"],"names":[],"mappings":"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"}