@ibgib/core-gib 0.1.54 → 0.1.55

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 (189) hide show
  1. package/CHANGELOG.md +10 -3
  2. package/README.md +12 -15
  3. package/dist/keystone/aggregate-details.respec.d.mts +2 -0
  4. package/dist/keystone/aggregate-details.respec.d.mts.map +1 -0
  5. package/dist/keystone/aggregate-details.respec.mjs +118 -0
  6. package/dist/keystone/aggregate-details.respec.mjs.map +1 -0
  7. package/dist/keystone/keystone-constants.d.mts +5 -0
  8. package/dist/keystone/keystone-constants.d.mts.map +1 -1
  9. package/dist/keystone/keystone-constants.mjs +6 -1
  10. package/dist/keystone/keystone-constants.mjs.map +1 -1
  11. package/dist/keystone/keystone-helpers.d.mts +7 -1
  12. package/dist/keystone/keystone-helpers.d.mts.map +1 -1
  13. package/dist/keystone/keystone-helpers.mjs +5 -2
  14. package/dist/keystone/keystone-helpers.mjs.map +1 -1
  15. package/dist/keystone/keystone-service-v1.d.mts +51 -0
  16. package/dist/keystone/keystone-service-v1.d.mts.map +1 -1
  17. package/dist/keystone/keystone-service-v1.mjs +176 -9
  18. package/dist/keystone/keystone-service-v1.mjs.map +1 -1
  19. package/dist/keystone/keystone-service-v1.respec.mjs +40 -98
  20. package/dist/keystone/keystone-service-v1.respec.mjs.map +1 -1
  21. package/dist/keystone/keystone-types.d.mts +5 -0
  22. package/dist/keystone/keystone-types.d.mts.map +1 -1
  23. package/dist/sync/graft-info/graft-info-helpers.respec.mjs +8 -8
  24. package/dist/sync/graft-info/graft-info-helpers.respec.mjs.map +1 -1
  25. package/dist/sync/sync-conflict-adv-multitimelines.respec.mjs +26 -30
  26. package/dist/sync/sync-conflict-adv-multitimelines.respec.mjs.map +1 -1
  27. package/dist/sync/sync-conflict-basic-divergence.respec.mjs +7 -8
  28. package/dist/sync/sync-conflict-basic-divergence.respec.mjs.map +1 -1
  29. package/dist/sync/sync-conflict-basic-multitimelines.respec.mjs +10 -11
  30. package/dist/sync/sync-conflict-basic-multitimelines.respec.mjs.map +1 -1
  31. package/dist/sync/sync-conflict-text-merge.respec.mjs +30 -33
  32. package/dist/sync/sync-conflict-text-merge.respec.mjs.map +1 -1
  33. package/dist/sync/sync-constants.d.mts +1 -56
  34. package/dist/sync/sync-constants.d.mts.map +1 -1
  35. package/dist/sync/sync-constants.mjs +2 -59
  36. package/dist/sync/sync-constants.mjs.map +1 -1
  37. package/dist/sync/sync-helpers.d.mts +0 -1
  38. package/dist/sync/sync-helpers.d.mts.map +1 -1
  39. package/dist/sync/sync-helpers.mjs +1 -6
  40. package/dist/sync/sync-helpers.mjs.map +1 -1
  41. package/dist/sync/sync-innerspace-constants.respec.mjs +5 -9
  42. package/dist/sync/sync-innerspace-constants.respec.mjs.map +1 -1
  43. package/dist/sync/sync-innerspace-deep-updates.respec.mjs +6 -7
  44. package/dist/sync/sync-innerspace-deep-updates.respec.mjs.map +1 -1
  45. package/dist/sync/sync-innerspace-dest-ahead-withid.respec.mjs +22 -22
  46. package/dist/sync/sync-innerspace-dest-ahead-withid.respec.mjs.map +1 -1
  47. package/dist/sync/sync-innerspace-dest-ahead.respec.mjs +8 -9
  48. package/dist/sync/sync-innerspace-dest-ahead.respec.mjs.map +1 -1
  49. package/dist/sync/sync-innerspace-multiple-timelines.respec.mjs +6 -7
  50. package/dist/sync/sync-innerspace-multiple-timelines.respec.mjs.map +1 -1
  51. package/dist/sync/sync-innerspace-partial-update.respec.mjs +7 -8
  52. package/dist/sync/sync-innerspace-partial-update.respec.mjs.map +1 -1
  53. package/dist/sync/sync-innerspace.respec.mjs +8 -11
  54. package/dist/sync/sync-innerspace.respec.mjs.map +1 -1
  55. package/dist/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mjs +10 -5
  56. package/dist/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mjs.map +1 -1
  57. package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.d.mts +3 -1
  58. package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.d.mts.map +1 -1
  59. package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.d.mts +4 -2
  60. package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.d.mts.map +1 -1
  61. package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mjs +37 -6
  62. package/dist/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mjs.map +1 -1
  63. package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.d.mts +3 -1
  64. package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.d.mts.map +1 -1
  65. package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.d.mts +4 -2
  66. package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.d.mts.map +1 -1
  67. package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mjs +37 -0
  68. package/dist/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mjs.map +1 -1
  69. package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-types.d.mts +7 -1
  70. package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-types.d.mts.map +1 -1
  71. package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.d.mts +10 -2
  72. package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.d.mts.map +1 -1
  73. package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs +50 -38
  74. package/dist/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mjs.map +1 -1
  75. package/dist/sync/sync-peer/sync-peer-types.d.mts +21 -5
  76. package/dist/sync/sync-peer/sync-peer-types.d.mts.map +1 -1
  77. package/dist/sync/sync-peer/sync-peer-v1.d.mts +30 -5
  78. package/dist/sync/sync-peer/sync-peer-v1.d.mts.map +1 -1
  79. package/dist/sync/sync-peer/sync-peer-v1.mjs +41 -25
  80. package/dist/sync/sync-peer/sync-peer-v1.mjs.map +1 -1
  81. package/dist/sync/sync-saga-context/sync-saga-context-helpers.d.mts +2 -11
  82. package/dist/sync/sync-saga-context/sync-saga-context-helpers.d.mts.map +1 -1
  83. package/dist/sync/sync-saga-context/sync-saga-context-helpers.mjs +7 -51
  84. package/dist/sync/sync-saga-context/sync-saga-context-helpers.mjs.map +1 -1
  85. package/dist/sync/sync-saga-context/sync-saga-context-types.d.mts +1 -47
  86. package/dist/sync/sync-saga-context/sync-saga-context-types.d.mts.map +1 -1
  87. package/dist/sync/sync-saga-coordinator.d.mts +6 -58
  88. package/dist/sync/sync-saga-coordinator.d.mts.map +1 -1
  89. package/dist/sync/sync-saga-coordinator.mjs +23 -425
  90. package/dist/sync/sync-saga-coordinator.mjs.map +1 -1
  91. package/dist/sync/sync-saga-message/sync-saga-message-types.d.mts +2 -2
  92. package/dist/sync/sync-saga-message/sync-saga-message-types.d.mts.map +1 -1
  93. package/dist/sync/sync-types.d.mts +2 -19
  94. package/dist/sync/sync-types.d.mts.map +1 -1
  95. package/dist/sync/sync-types.mjs.map +1 -1
  96. package/dist/test/mock-space.mjs +1 -1
  97. package/dist/test/mock-space.mjs.map +1 -1
  98. package/dist/test-helpers.d.mts +0 -6
  99. package/dist/test-helpers.d.mts.map +1 -1
  100. package/dist/test-helpers.mjs +2 -25
  101. package/dist/test-helpers.mjs.map +1 -1
  102. package/package.json +7 -31
  103. package/src/keystone/aggregate-details.respec.mts +137 -0
  104. package/src/keystone/docs/architecture.md +16 -0
  105. package/src/keystone/keystone-constants.mts +6 -1
  106. package/src/keystone/keystone-helpers.mts +9 -1
  107. package/src/keystone/keystone-service-v1.mts +216 -8
  108. package/src/keystone/keystone-service-v1.respec.mts +39 -103
  109. package/src/keystone/keystone-types.mts +6 -0
  110. package/src/sync/README.md +18 -0
  111. package/src/sync/docs/architecture.md +21 -0
  112. package/src/sync/graft-info/graft-info-helpers.respec.mts +7 -7
  113. package/src/sync/sync-conflict-adv-multitimelines.respec.mts +25 -29
  114. package/src/sync/sync-conflict-basic-divergence.respec.mts +6 -7
  115. package/src/sync/sync-conflict-basic-multitimelines.respec.mts +9 -10
  116. package/src/sync/sync-conflict-text-merge.respec.mts +29 -32
  117. package/src/sync/sync-constants.mts +2 -62
  118. package/src/sync/sync-helpers.mts +1 -8
  119. package/src/sync/sync-id-testlog.txt +421 -0
  120. package/src/sync/sync-innerspace-constants.respec.mts +4 -8
  121. package/src/sync/sync-innerspace-deep-updates.respec.mts +5 -6
  122. package/src/sync/sync-innerspace-dest-ahead-withid.respec.mts +23 -25
  123. package/src/sync/sync-innerspace-dest-ahead.respec.mts +7 -8
  124. package/src/sync/sync-innerspace-multiple-timelines.respec.mts +5 -6
  125. package/src/sync/sync-innerspace-partial-update.respec.mts +6 -7
  126. package/src/sync/sync-innerspace.respec.mts +7 -10
  127. package/src/sync/sync-peer/sync-peer-http-receiver/sync-http-node-adapter.mts +5 -5
  128. package/src/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-types.mts +5 -1
  129. package/src/sync/sync-peer/sync-peer-http-receiver/sync-peer-http-receiver-v1.mts +30 -9
  130. package/src/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-types.mts +3 -1
  131. package/src/sync/sync-peer/sync-peer-http-sender/sync-peer-http-sender-v1.mts +29 -2
  132. package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-types.mts +7 -1
  133. package/src/sync/sync-peer/sync-peer-innerspace/sync-peer-innerspace-v1.mts +51 -38
  134. package/src/sync/sync-peer/sync-peer-types.mts +23 -6
  135. package/src/sync/sync-peer/sync-peer-v1.mts +68 -28
  136. package/src/sync/sync-saga-context/sync-saga-context-helpers.mts +6 -66
  137. package/src/sync/sync-saga-context/sync-saga-context-types.mts +1 -48
  138. package/src/sync/sync-saga-coordinator.mts +12 -552
  139. package/src/sync/sync-saga-message/sync-saga-message-types.mts +2 -3
  140. package/src/sync/sync-types.mts +2 -22
  141. package/src/sync/unused-identity-backup.mts.md +311 -0
  142. package/src/test/mock-space.mts +1 -1
  143. package/src/test-helpers.mts +1 -26
  144. package/test_output.log +0 -0
  145. package/test_output_utf8.txt +398 -0
  146. package/.vscode/core-gib-snippets.code-snippets +0 -293
  147. package/.vscode/launch.json +0 -40
  148. package/.vscode/settings.json +0 -58
  149. package/.vscode/tasks.json +0 -37
  150. package/dist/sync/sync-peer/sync-peer-http.respec.d.mts +0 -2
  151. package/dist/sync/sync-peer/sync-peer-http.respec.d.mts.map +0 -1
  152. package/dist/sync/sync-peer/sync-peer-http.respec.mjs +0 -340
  153. package/dist/sync/sync-peer/sync-peer-http.respec.mjs.map +0 -1
  154. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.d.mts +0 -42
  155. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.d.mts.map +0 -1
  156. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.mjs +0 -312
  157. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.mjs.map +0 -1
  158. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.d.mts +0 -84
  159. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.d.mts.map +0 -1
  160. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.mjs +0 -65
  161. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.mjs.map +0 -1
  162. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.d.mts +0 -73
  163. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.d.mts.map +0 -1
  164. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.mjs +0 -667
  165. package/dist/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.mjs.map +0 -1
  166. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.d.mts +0 -2
  167. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.d.mts.map +0 -1
  168. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.mjs +0 -67
  169. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.mjs.map +0 -1
  170. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.d.mts +0 -2
  171. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.d.mts.map +0 -1
  172. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.mjs +0 -67
  173. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.mjs.map +0 -1
  174. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.d.mts +0 -2
  175. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.d.mts.map +0 -1
  176. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.mjs +0 -68
  177. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.mjs.map +0 -1
  178. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.d.mts +0 -2
  179. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.d.mts.map +0 -1
  180. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.mjs +0 -69
  181. package/dist/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.mjs.map +0 -1
  182. package/src/sync/sync-peer/sync-peer-http.respec.mts +0 -396
  183. package/src/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-helper.mts +0 -298
  184. package/src/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-types.mts +0 -150
  185. package/src/witness/space/filesystem-space/node-filesystem-space/node-filesystem-space-v1.mts +0 -666
  186. package/src/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.mts +0 -87
  187. package/src/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.mts +0 -88
  188. package/src/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.mts +0 -88
  189. package/src/witness/space/filesystem-space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.mts +0 -90
package/CHANGELOG.md CHANGED
@@ -3,7 +3,14 @@
3
3
  _note: as you implement features/fixes/etc., please document them here under the "Working Version" section. These will be moved to a concrete version number during the next publish._
4
4
 
5
5
  ## Working Version
6
- (none)
6
+
7
+ ## 0.1.55
8
+ * chore: centralized build orchestration
9
+ * migrated build, clean, and test logic to the root `@ibgib/build-gib` orchestrator.
10
+ * pruned legacy `package.json` scripts and archived them in `docs/ARCHIVE_SCRIPTS.md`.
11
+ * updated `prepare:publish` to use the centralized build engine.
12
+ * documented the new **Monorepo Build Policy** in the README.
13
+ * progress: removed all identity-related code from sync
7
14
 
8
15
  ## 0.1.17
9
16
 
@@ -14,7 +21,7 @@ _note: as you implement features/fixes/etc., please document them here under the
14
21
 
15
22
  * innerspace and metaspace innerspace seem to be working now.
16
23
  * several issues with innerspace implementation.
17
- * key insight was that spaces always have singular, punctiliar hash gibs and
24
+ * key insight was that spaces always have singular, punctiliar hash gibs and
18
25
  have NO `tjpGib`.
19
26
  * had to index in memory via the spaceId instead.
20
27
  * sync coordinator sketching begun
@@ -24,7 +31,7 @@ _note: as you implement features/fixes/etc., please document them here under the
24
31
  * other changes in older code
25
32
  * initialization of metaspace now creates root ibgibs with nCounter: true
26
33
  * there may have been other changes as well
27
- * I thought I had updated this with previous minor version bump. weird.
34
+ * I thought I had updated this with previous minor version bump. weird.
28
35
  * I do not remember all the changes obviously since then.
29
36
  * Some were driven strictly by updates to helper-gib/ts-gib/encrypt-gib
30
37
 
package/README.md CHANGED
@@ -1,22 +1,19 @@
1
- # 🚧 wip.
1
+ # core-gib - distributed computation metaversal functions
2
2
 
3
- I am working towards creating the fundamental es module package structure before
4
- pulling out behavior from the [ionic-gib](https://github.com/wraiford/ibgib/tree/v0.2.729/ionic-gib) project into this lib. so this is just a
5
- shell right now.
3
+ `core-gib` provides the intermediate ibgib substrate for basic ibgib interactions, including witnesses, spaces, and apps.
6
4
 
7
- # forward
5
+ ## Build (Monorepo Policy)
8
6
 
9
- I have created a working MVP for ibgib that shows some of the potential for the
10
- architecture:
7
+ > [!IMPORTANT]
8
+ > This project is part of a monorepo. Build and development tasks are centralized in the monorepo root via the `@ibgib/build-gib` orchestrator.
11
9
 
12
- * try it out
13
- * https://ibgib.space
14
- * pre-refactored MVP codebase on GitHub
15
- * `ionic-gib`: https://github.com/wraiford/ibgib/tree/v0.2.729/ionic-gib
16
- * "pre-refactored" = doesn't use this core-gib lib, but rather is the
17
- springboard/"carcass" for it.
18
- * base ibgib protocol graphing substrate lib on GitLab
19
- * `ts-gib`: https://gitlab.com/ibgib/ts-gib/-/tree/master
10
+ ### Development & Build
11
+ Run these from the monorepo root:
12
+ * `npm run build:core-gib` - Performs a full clean and build.
13
+ * `npm run test:core-gib` - Runs the full respec-gib test suite for this library.
14
+
15
+ ### Legacy Scripts
16
+ Individual package scripts have been streamlined to avoid redundancy. Previous scripts are archived in `docs/ARCHIVE_SCRIPTS.md` at the monorepo root.
20
17
 
21
18
  # Development & Cross-Platform Support
22
19
 
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=aggregate-details.respec.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregate-details.respec.d.mts","sourceRoot":"","sources":["../../src/keystone/aggregate-details.respec.mts"],"names":[],"mappings":""}
@@ -0,0 +1,118 @@
1
+ import { respecfully, iReckon, ifWe } from '@ibgib/helper-gib/dist/respec-gib/respec-gib.mjs';
2
+ import { KeystoneService_V1 } from './keystone-service-v1.mjs';
3
+ import { createStandardPoolConfig } from './keystone-config-builder.mjs';
4
+ import { POOL_ID_DEFAULT, KEYSTONE_CHECKPOINT_FREQUENCY } from './keystone-constants.mjs';
5
+ const sir = `[${import.meta.url}]`;
6
+ class MockMetaspace {
7
+ storage = new Map();
8
+ async get(args) {
9
+ const ibGib = this.storage.get(args.addr);
10
+ return { success: !!ibGib, ibGibs: ibGib ? [ibGib] : [] };
11
+ }
12
+ async put(args) {
13
+ this.storage.set(`${args.ibGib.ib}^${args.ibGib.gib}`, args.ibGib);
14
+ }
15
+ async registerNewIbGib(args) {
16
+ await this.put(args);
17
+ }
18
+ async getLocalUserSpace() { return new MockSpace(); }
19
+ }
20
+ class MockSpace {
21
+ async put() { }
22
+ async witness() { return { data: { success: true } }; }
23
+ }
24
+ await respecfully(sir, 'Keystone State Aggregation', async () => {
25
+ const service = new KeystoneService_V1();
26
+ const metaspace = new MockMetaspace();
27
+ const space = new MockSpace();
28
+ const masterSecret = "AliceSecret";
29
+ const config = createStandardPoolConfig({ id: POOL_ID_DEFAULT, salt: POOL_ID_DEFAULT, size: 1000 });
30
+ await ifWe(sir, 'aggregates frameDetails correctly across multiple evolutions', async () => {
31
+ // 1. Genesis with some details
32
+ const genesis = await service.genesis({
33
+ masterSecret,
34
+ configs: [config],
35
+ metaspace,
36
+ space,
37
+ frameDetails: { profile: { name: 'Alice' } }
38
+ });
39
+ // 2. Evolve with more details
40
+ const claim = { target: "comment 1^gib", verb: "post" };
41
+ const frame2 = await service.sign({
42
+ latestKeystone: genesis,
43
+ masterSecret,
44
+ claim,
45
+ metaspace,
46
+ space,
47
+ frameDetails: { profile: { email: 'alice@example.com' }, lastLogin: '2026-05-01' }
48
+ });
49
+ // 3. Evolve again (no new details)
50
+ const frame3 = await service.sign({
51
+ latestKeystone: frame2,
52
+ masterSecret,
53
+ claim: { ...claim, target: "comment 2^gib" },
54
+ metaspace,
55
+ space
56
+ });
57
+ // 4. Verify aggregation
58
+ const aggregated = await service.getAggregateDetails({
59
+ latestKeystone: frame3,
60
+ metaspace,
61
+ space
62
+ });
63
+ iReckon(sir, aggregated.profile.name).willEqual('Alice');
64
+ iReckon(sir, aggregated.profile.email).willEqual('alice@example.com');
65
+ iReckon(sir, aggregated.lastLogin).willEqual('2026-05-01');
66
+ });
67
+ await ifWe(sir, 'generates a checkpoint and uses it for aggregation', async () => {
68
+ // We will force a checkpoint by evolving KEYSTONE_CHECKPOINT_FREQUENCY times.
69
+ // For testing, we might want to lower the frequency, but let's stick to the constant
70
+ // and just do a loop if it's not too large. 50 is fine for a test.
71
+ let current = await service.genesis({
72
+ masterSecret,
73
+ configs: [config],
74
+ metaspace,
75
+ space,
76
+ frameDetails: { initial: true }
77
+ });
78
+ const totalEvolutions = KEYSTONE_CHECKPOINT_FREQUENCY;
79
+ console.log(`[test] Performing ${totalEvolutions} evolutions to trigger checkpoint...`);
80
+ for (let i = 1; i <= totalEvolutions; i++) {
81
+ current = await service.sign({
82
+ latestKeystone: current,
83
+ masterSecret,
84
+ claim: { target: `item_${i}^gib`, verb: "update" },
85
+ metaspace,
86
+ space,
87
+ frameDetails: { [`step_${i}`]: true }
88
+ });
89
+ }
90
+ // The latest frame should now have a checkpointDetails
91
+ iReckon(sir, current.data.checkpointDetails).asTo('checkpoint exists').isGonnaBeTruthy();
92
+ iReckon(sir, current.data.n).willEqual(totalEvolutions);
93
+ // Aggregation should work and be fast (it stops at the checkpoint)
94
+ // We can verify it has all the steps
95
+ const aggregated = await service.getAggregateDetails({
96
+ latestKeystone: current,
97
+ metaspace,
98
+ space
99
+ });
100
+ iReckon(sir, aggregated.initial).isGonnaBeTrue();
101
+ iReckon(sir, aggregated[`step_${totalEvolutions}`]).isGonnaBeTrue();
102
+ iReckon(sir, aggregated[`step_1`]).isGonnaBeTrue();
103
+ // Verify that it actually used the checkpoint (white-box-ish)
104
+ // If we clear the previous frames from storage, getAggregateDetails should still work
105
+ // if it only goes back to the checkpoint.
106
+ // Wait, current IS the checkpoint. So it should stop immediately.
107
+ metaspace.storage.clear();
108
+ // Re-put ONLY the latest (which has the checkpoint)
109
+ await metaspace.put({ ibGib: current });
110
+ const aggregatedFromCheckpoint = await service.getAggregateDetails({
111
+ latestKeystone: current,
112
+ metaspace,
113
+ space
114
+ });
115
+ iReckon(sir, aggregatedFromCheckpoint.initial).isGonnaBeTrue();
116
+ });
117
+ });
118
+ //# sourceMappingURL=aggregate-details.respec.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregate-details.respec.mjs","sourceRoot":"","sources":["../../src/keystone/aggregate-details.respec.mts"],"names":[],"mappings":"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"}
@@ -80,4 +80,9 @@ export declare const KEYSTONE_CONFIG_DEFAULT_BINDING_HIGHSECURITY = 16;
80
80
  export declare const KEYSTONE_CONFIG_DEFAULT_REPLENISH_STRATEGY_HIGHSECURITY: "replace-all";
81
81
  export declare const KEYSTONE_CONFIG_DEFAULT_HASH_ALGORITHM_HIGHSECURITY: HashAlgorithm;
82
82
  export declare const KEYSTONE_CONFIG_DEFAULT_HASH_ROUNDS_HIGHSECURITY = 10;
83
+ /**
84
+ * the checkpointing mechanism will do a checkpoint every [this number] of
85
+ * keystone frame evolutions.
86
+ */
87
+ export declare const KEYSTONE_CHECKPOINT_FREQUENCY = 50;
83
88
  //# sourceMappingURL=keystone-constants.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-constants.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-constants.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAGhF,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,uBAAuB,QAAiB,CAAC;AACtD;;GAEG;AACH,eAAO,MAAM,oBAAoB,QAAwB,CAAC;AAC1D;;GAEG;AACH,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAG9C;;GAEG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C;;GAEG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C;;GAEG;AACH,eAAO,MAAM,kBAAkB,SAAS,CAAC;AACzC,MAAM,MAAM,YAAY,GAClB,OAAO,oBAAoB,GAC3B,OAAO,oBAAoB,GAC3B,OAAO,kBAAkB,CAAC;AAEhC;;GAEG;AACH,eAAO,MAAM,YAAY;IACrB;;;OAGG;;IAEH;;;;;;;;;;OAUG;;IAEH;;OAEG;;CAEoC,CAAC;AAC5C,eAAO,MAAM,0BAA0B,kCAA8B,CAAC;AACtE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,YAAY,CAEnE;AAGD;;;GAGG;AACH,eAAO,MAAM,cAAc,WAAuB,CAAC;AACnD,eAAO,MAAM,cAAc,WAAuB,CAAC;AACnD,eAAO,MAAM,eAAe,YAAY,CAAC;AACzC,eAAO,MAAM,gBAAgB,aAAa,CAAC;AAC3C;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAE/C,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,eAAO,MAAM,kCAAkC,IAAI,CAAC;AACpD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAChD,eAAO,MAAM,+BAA+B,IAAI,CAAC;AACjD,eAAO,MAAM,0CAA0C,UAAkC,CAAC;AAC1F,eAAO,MAAM,sCAAsC,eAAwB,CAAC;AAC5E,eAAO,MAAM,mCAAmC,IAAI,CAAC;AAErD,eAAO,MAAM,yCAAyC,OAAO,CAAC;AAC9D,eAAO,MAAM,+CAA+C,IAAI,CAAC;AACjE,eAAO,MAAM,2CAA2C,IAAI,CAAC;AAC7D,eAAO,MAAM,4CAA4C,KAAK,CAAC;AAC/D,eAAO,MAAM,uDAAuD,eAAuC,CAAC;AAC5G,eAAO,MAAM,mDAAmD,eAAwB,CAAC;AACzF,eAAO,MAAM,gDAAgD,KAAK,CAAC"}
1
+ {"version":3,"file":"keystone-constants.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-constants.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAGhF,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,uBAAuB,QAAiB,CAAC;AACtD;;GAEG;AACH,eAAO,MAAM,oBAAoB,QAAwB,CAAC;AAC1D;;GAEG;AACH,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAG9C;;GAEG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C;;GAEG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C;;GAEG;AACH,eAAO,MAAM,kBAAkB,SAAS,CAAC;AACzC,MAAM,MAAM,YAAY,GAClB,OAAO,oBAAoB,GAC3B,OAAO,oBAAoB,GAC3B,OAAO,kBAAkB,CAAC;AAEhC;;GAEG;AACH,eAAO,MAAM,YAAY;IACrB;;;OAGG;;IAEH;;;;;;;;;;OAUG;;IAEH;;OAEG;;CAEoC,CAAC;AAC5C,eAAO,MAAM,0BAA0B,kCAA8B,CAAC;AACtE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,YAAY,CAEnE;AAGD;;;GAGG;AACH,eAAO,MAAM,cAAc,WAAuB,CAAC;AACnD,eAAO,MAAM,cAAc,WAAuB,CAAC;AACnD,eAAO,MAAM,eAAe,YAAY,CAAC;AACzC,eAAO,MAAM,gBAAgB,aAAa,CAAC;AAC3C;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAE/C,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,eAAO,MAAM,kCAAkC,IAAI,CAAC;AACpD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAChD,eAAO,MAAM,+BAA+B,IAAI,CAAC;AACjD,eAAO,MAAM,0CAA0C,UAAkC,CAAC;AAC1F,eAAO,MAAM,sCAAsC,eAAwB,CAAC;AAC5E,eAAO,MAAM,mCAAmC,IAAI,CAAC;AAErD,eAAO,MAAM,yCAAyC,OAAO,CAAC;AAC9D,eAAO,MAAM,+CAA+C,IAAI,CAAC;AACjE,eAAO,MAAM,2CAA2C,IAAI,CAAC;AAC7D,eAAO,MAAM,4CAA4C,KAAK,CAAC;AAC/D,eAAO,MAAM,uDAAuD,eAAuC,CAAC;AAC5G,eAAO,MAAM,mDAAmD,eAAwB,CAAC;AACzF,eAAO,MAAM,gDAAgD,KAAK,CAAC;AACnE;;;GAGG;AACH,eAAO,MAAM,6BAA6B,KAAK,CAAC"}
@@ -82,6 +82,11 @@ export const KEYSTONE_CONFIG_DEFAULT_SEQUENTIAL_HIGHSECURITY = 5;
82
82
  export const KEYSTONE_CONFIG_DEFAULT_RANDOM_HIGHSECURITY = 5;
83
83
  export const KEYSTONE_CONFIG_DEFAULT_BINDING_HIGHSECURITY = 16;
84
84
  export const KEYSTONE_CONFIG_DEFAULT_REPLENISH_STRATEGY_HIGHSECURITY = KeystoneReplenishStrategy.replaceAll;
85
- export const KEYSTONE_CONFIG_DEFAULT_HASH_ALGORITHM_HIGHSECURITY = HashAlgorithm.sha_256;
85
+ export const KEYSTONE_CONFIG_DEFAULT_HASH_ALGORITHM_HIGHSECURITY = HashAlgorithm.sha_512;
86
86
  export const KEYSTONE_CONFIG_DEFAULT_HASH_ROUNDS_HIGHSECURITY = 10;
87
+ /**
88
+ * the checkpointing mechanism will do a checkpoint every [this number] of
89
+ * keystone frame evolutions.
90
+ */
91
+ export const KEYSTONE_CHECKPOINT_FREQUENCY = 50;
87
92
  //# sourceMappingURL=keystone-constants.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-constants.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-constants.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEjE,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC;AACxC,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAC;AACtD;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAC1D;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C,4BAA4B;AAC5B;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAC7C;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAC7C;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAMzC;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB;;;OAGG;IACH,MAAM,EAAE,oBAAoB;IAC5B;;;;;;;;;;OAUG;IACH,MAAM,EAAE,oBAAoB;IAC5B;;OAEG;IACH,IAAI,EAAE,kBAAkB;CACe,CAAC;AAC5C,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACtE,MAAM,UAAU,cAAc,CAAC,KAAa;IACxC,OAAO,0BAA0B,CAAC,QAAQ,CAAC,KAAqB,CAAC,CAAC;AACtE,CAAC;AACD,+BAA+B;AAE/B;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AACnD,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC;AACzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;AAC3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAE/C,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAChD,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AACjD,MAAM,CAAC,MAAM,0CAA0C,GAAG,yBAAyB,CAAC,KAAK,CAAC;AAC1F,MAAM,CAAC,MAAM,sCAAsC,GAAG,aAAa,CAAC,OAAO,CAAC;AAC5E,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC;AAErD,MAAM,CAAC,MAAM,yCAAyC,GAAG,IAAI,CAAC;AAC9D,MAAM,CAAC,MAAM,+CAA+C,GAAG,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,2CAA2C,GAAG,CAAC,CAAC;AAC7D,MAAM,CAAC,MAAM,4CAA4C,GAAG,EAAE,CAAC;AAC/D,MAAM,CAAC,MAAM,uDAAuD,GAAG,yBAAyB,CAAC,UAAU,CAAC;AAC5G,MAAM,CAAC,MAAM,mDAAmD,GAAG,aAAa,CAAC,OAAO,CAAC;AACzF,MAAM,CAAC,MAAM,gDAAgD,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"keystone-constants.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-constants.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEjE,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC;AACxC,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAC;AACtD;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAC1D;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C,4BAA4B;AAC5B;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAC7C;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAC7C;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAMzC;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB;;;OAGG;IACH,MAAM,EAAE,oBAAoB;IAC5B;;;;;;;;;;OAUG;IACH,MAAM,EAAE,oBAAoB;IAC5B;;OAEG;IACH,IAAI,EAAE,kBAAkB;CACe,CAAC;AAC5C,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACtE,MAAM,UAAU,cAAc,CAAC,KAAa;IACxC,OAAO,0BAA0B,CAAC,QAAQ,CAAC,KAAqB,CAAC,CAAC;AACtE,CAAC;AACD,+BAA+B;AAE/B;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AACnD,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC;AACzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;AAC3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAE/C,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAChD,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AACjD,MAAM,CAAC,MAAM,0CAA0C,GAAG,yBAAyB,CAAC,KAAK,CAAC;AAC1F,MAAM,CAAC,MAAM,sCAAsC,GAAG,aAAa,CAAC,OAAO,CAAC;AAC5E,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC;AAErD,MAAM,CAAC,MAAM,yCAAyC,GAAG,IAAI,CAAC;AAC9D,MAAM,CAAC,MAAM,+CAA+C,GAAG,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,2CAA2C,GAAG,CAAC,CAAC;AAC7D,MAAM,CAAC,MAAM,4CAA4C,GAAG,EAAE,CAAC;AAC/D,MAAM,CAAC,MAAM,uDAAuD,GAAG,yBAAyB,CAAC,UAAU,CAAC;AAC5G,MAAM,CAAC,MAAM,mDAAmD,GAAG,aAAa,CAAC,OAAO,CAAC;AACzF,MAAM,CAAC,MAAM,gDAAgD,GAAG,EAAE,CAAC;AACnE;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC"}
@@ -2,6 +2,7 @@ import { Ib } from "@ibgib/ts-gib/dist/types.mjs";
2
2
  import { KeystoneData_V1, KeystoneIbGib_V1, KeystoneIb_V1, KeystoneChallengePool, DeterministicResult, KeystoneProof, KeystonePoolConfig, KeystoneClaim } from "./keystone-types.mjs";
3
3
  import { MetaspaceService } from "../witness/space/metaspace/metaspace-types.mjs";
4
4
  import { IbGibSpaceAny } from "../witness/space/space-base-v1.mjs";
5
+ import { FlatIbGibGraph } from "../common/other/graph-types.mjs";
5
6
  /**
6
7
  * space-delimited keystone ib containing select keystone metadata.
7
8
  *
@@ -176,8 +177,13 @@ export declare function createKeystoneIbGibImpl({ data, metaspace, space, }: {
176
177
  metaspace: MetaspaceService;
177
178
  space?: IbGibSpaceAny;
178
179
  }): Promise<KeystoneIbGib_V1>;
179
- export declare function validateKeystoneGraph({ keystoneIbGib, getLatest, invalidIfMoreRecentKeystoneFoundInSpace, space, }: {
180
+ export declare function validateKeystoneGraph({ keystoneIbGib, dependencyGraph, getLatest, invalidIfMoreRecentKeystoneFoundInSpace, space, }: {
180
181
  keystoneIbGib: KeystoneIbGib_V1;
182
+ /**
183
+ * set this if you already have a reference to the graph. It is the caller's
184
+ * responsibility to enforce {@link getLatest}.
185
+ */
186
+ dependencyGraph?: FlatIbGibGraph;
181
187
  /**
182
188
  * if true, then this will get the latest keystone known in the incoming
183
189
  * {@link keystoneIbGib} timeline, as found in {@link space}.
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-helpers.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-helpers.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keystone-helpers.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-helpers.mts"],"names":[],"mappings":"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"}
@@ -706,6 +706,9 @@ export async function evolvePersistAndRegisterKeystone({ prevIbGib, newData, met
706
706
  if (prevData.frameDetails) {
707
707
  dataToRemove.frameDetails = {};
708
708
  }
709
+ if (prevData.checkpointDetails) {
710
+ dataToRemove.checkpointDetails = {};
711
+ }
709
712
  if (Object.keys(dataToRemove).length === 0) {
710
713
  dataToRemove = undefined;
711
714
  }
@@ -806,7 +809,7 @@ export async function createKeystoneIbGibImpl({ data, metaspace, space, }) {
806
809
  }
807
810
  }
808
811
  }
809
- export async function validateKeystoneGraph({ keystoneIbGib, getLatest, invalidIfMoreRecentKeystoneFoundInSpace, space, }) {
812
+ export async function validateKeystoneGraph({ keystoneIbGib, dependencyGraph, getLatest, invalidIfMoreRecentKeystoneFoundInSpace, space, }) {
810
813
  const lc = `[${validateKeystoneGraph.name}]`;
811
814
  try {
812
815
  if (logalot) {
@@ -861,7 +864,7 @@ export async function validateKeystoneGraph({ keystoneIbGib, getLatest, invalidI
861
864
  console.warn(`${lc} keystoneIbGib (${keystoneAddr}) not found in space (${space.ib}). I don't know what the implications of this are. (W: 258c88742448db34a585669484771826)`);
862
865
  }
863
866
  }
864
- const dependencyGraph = await getDependencyGraph({
867
+ dependencyGraph ??= await getDependencyGraph({
865
868
  ibGib: keystoneIbGib,
866
869
  space,
867
870
  });
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-helpers.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-helpers.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keystone-helpers.mjs","sourceRoot":"","sources":["../../src/keystone/keystone-helpers.mts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { KeystoneIbGib_V1, KeystonePoolConfig, KeystoneClaim, KeystoneChallengePool } from './keystone-types.mjs';
2
2
  import { IbGibSpaceAny } from '../witness/space/space-base-v1.mjs';
3
3
  import { MetaspaceService } from '../witness/space/metaspace/metaspace-types.mjs';
4
+ import { FlatIbGibGraph } from '../common/other/graph-types.mjs';
4
5
  /**
5
6
  * Facade for managing Keystone Identities.
6
7
  *
@@ -66,6 +67,47 @@ export declare class KeystoneService_V1 {
66
67
  currentIbGib: KeystoneIbGib_V1;
67
68
  prevIbGib: KeystoneIbGib_V1;
68
69
  }): Promise<string[]>;
70
+ /**
71
+ * Validates a genesis keystone.
72
+ *
73
+ * @returns Array of validation error strings. Empty array means Valid.
74
+ */
75
+ validateGenesisKeystone({ keystoneIbGib, }: {
76
+ keystoneIbGib: KeystoneIbGib_V1;
77
+ }): Promise<string[]>;
78
+ /**
79
+ * Retrieves the latest keystone frame for the given address.
80
+ *
81
+ * Uses `metaspace.getLatestAddr` to find the actual tip instead of trusting
82
+ * an incoming payload's `past` rel8n.
83
+ *
84
+ * @see `ibgib-get-pattern` SKILL.md
85
+ */
86
+ getLatestKeystone({ addr, metaspace, space, }: {
87
+ addr: string;
88
+ metaspace: MetaspaceService;
89
+ space: IbGibSpaceAny;
90
+ }): Promise<KeystoneIbGib_V1>;
91
+ /**
92
+ * Validates an entire keystone graph from tip to genesis.
93
+ *
94
+ * @returns Array of validation error strings. Empty array means Valid.
95
+ */
96
+ validateKeystoneGraph({ keystoneIbGib, dependencyGraph, getLatest, invalidIfMoreRecentKeystoneFoundInSpace, space, }: {
97
+ keystoneIbGib: KeystoneIbGib_V1;
98
+ /**
99
+ * set this if you already have a reference to the graph. It is the caller's
100
+ * responsibility to enforce {@link getLatest}.
101
+ */
102
+ dependencyGraph?: FlatIbGibGraph;
103
+ /**
104
+ * if true, then this will get the latest keystone known in the incoming
105
+ * {@link keystoneIbGib} timeline, as found in {@link space}.
106
+ */
107
+ getLatest: boolean;
108
+ invalidIfMoreRecentKeystoneFoundInSpace: boolean;
109
+ space: IbGibSpaceAny;
110
+ }): Promise<string[]>;
69
111
  /**
70
112
  * Permanently revokes the Identity.
71
113
  *
@@ -109,5 +151,14 @@ export declare class KeystoneService_V1 {
109
151
  metaspace: MetaspaceService;
110
152
  space: IbGibSpaceAny;
111
153
  }): Promise<KeystoneIbGib_V1>;
154
+ /**
155
+ * Consolidates the state of a Keystone identity across its history.
156
+ * Walks back until it hits a checkpoint or genesis.
157
+ */
158
+ getAggregateDetails({ latestKeystone, metaspace, space, }: {
159
+ latestKeystone: KeystoneIbGib_V1;
160
+ metaspace: MetaspaceService;
161
+ space?: IbGibSpaceAny;
162
+ }): Promise<any>;
112
163
  }
113
164
  //# sourceMappingURL=keystone-service-v1.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keystone-service-v1.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-service-v1.mts"],"names":[],"mappings":"AAIA,OAAO,EACc,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EACpE,qBAAqB,EACxB,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AAIlF;;;;GAIG;AACH,qBAAa,kBAAkB;IAC3B,SAAS,CAAC,EAAE,EAAE,MAAM,CAAkC;IAEtD;;OAEG;IACG,OAAO,CAAC,EACV,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,SAAS,EACT,KAAK,GACR,EAAE;QACC,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,OAAO,EAAE,kBAAkB,EAAE,CAAC;QAC9B,SAAS,EAAE,gBAAgB,CAAC;QAC5B,KAAK,EAAE,aAAa,CAAC;KACxB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAqD7B;;;;;;;;OAQG;IACG,IAAI,CAAC,EACP,cAAc,EACd,YAAY,EACZ,KAAK,EACL,MAAM,EACN,UAAU,EACV,oBAAyB,EACzB,YAAY,EACZ,SAAS,EACT,KAAK,GACR,EAAE;QACC,cAAc,EAAE,gBAAgB,CAAC;QACjC;;;;WAIG;QACH,YAAY,EAAE,MAAM,CAAC;QACrB,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;QAC9B;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;;;WAIG;QACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,OAAO,CAAC;QACtD,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;QAChC,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,SAAS,EAAE,gBAAgB,CAAC;QAC5B,KAAK,EAAE,aAAa,CAAC;KACxB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA+D7B;;;;;;;;;;OAUG;IACG,QAAQ,CAAC,EACX,YAAY,EACZ,SAAS,GACZ,EAAE;QACC,YAAY,EAAE,gBAAgB,CAAC;QAC/B,SAAS,EAAE,gBAAgB,CAAC;KAC/B,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAOrB;;;;;;;;OAQG;IACG,MAAM,CAAC,EACT,cAAc,EACd,YAAY,EACZ,MAAoC,EACpC,YAAY,EACZ,SAAS,EACT,KAAK,GACR,EAAE;QACC,cAAc,EAAE,gBAAgB,CAAC;QACjC,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,SAAS,EAAE,gBAAgB,CAAC;QAC5B,KAAK,EAAE,aAAa,CAAC;KACxB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA0E7B;;;;;;;;OAQG;IACG,QAAQ,CAAC,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,KAAK,GACR,EAAE;QACC,cAAc,EAAE,gBAAgB,CAAC;QACjC;;;WAGG;QACH,YAAY,EAAE,MAAM,CAAC;QACrB;;;;;WAKG;QACH,QAAQ,EAAE,qBAAqB,EAAE,CAAC;QAClC,SAAS,EAAE,gBAAgB,CAAC;QAC5B,KAAK,EAAE,aAAa,CAAC;KACxB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CA+EhC"}
1
+ {"version":3,"file":"keystone-service-v1.d.mts","sourceRoot":"","sources":["../../src/keystone/keystone-service-v1.mts"],"names":[],"mappings":"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"}