@ottochain/sdk 2.3.0 → 2.4.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 (209) hide show
  1. package/dist/cjs/apps/contracts/index.js +15 -8
  2. package/dist/cjs/apps/contracts/state-machines/contract-agreement.js +35 -40
  3. package/dist/cjs/apps/contracts/state-machines/contract-escrow.js +80 -37
  4. package/dist/cjs/apps/contracts/state-machines/contract-universal.js +4 -4
  5. package/dist/cjs/apps/corporate/index.js +2 -2
  6. package/dist/cjs/apps/corporate/state-machines/corp-board.js +169 -59
  7. package/dist/cjs/apps/corporate/state-machines/corp-entity.js +245 -47
  8. package/dist/cjs/apps/corporate/state-machines/corp-securities.js +407 -99
  9. package/dist/cjs/apps/corporate/state-machines/corp-shareholders.js +151 -37
  10. package/dist/cjs/apps/governance/index.js +14 -14
  11. package/dist/cjs/apps/governance/state-machines/dao-multisig.js +58 -40
  12. package/dist/cjs/apps/governance/state-machines/dao-reputation.js +46 -40
  13. package/dist/cjs/apps/governance/state-machines/dao-single.js +28 -11
  14. package/dist/cjs/apps/governance/state-machines/dao-token.js +67 -41
  15. package/dist/cjs/apps/governance/state-machines/governance-simple.js +93 -61
  16. package/dist/cjs/apps/governance/state-machines/governance-universal.js +2 -2
  17. package/dist/cjs/apps/identity/constants.js +55 -14
  18. package/dist/cjs/apps/identity/index.js +27 -11
  19. package/dist/cjs/apps/identity/state-machines/identity-agent.js +3 -3
  20. package/dist/cjs/apps/identity/state-machines/identity-oracle.js +25 -22
  21. package/dist/cjs/apps/identity/state-machines/identity-registry.js +288 -0
  22. package/dist/cjs/apps/identity/state-machines/identity-universal.js +3 -3
  23. package/dist/cjs/apps/identity/state-machines/index.js +3 -1
  24. package/dist/cjs/apps/index.js +19 -8
  25. package/dist/cjs/apps/lending/assets.js +223 -0
  26. package/dist/cjs/apps/lending/credit-scoring.js +87 -0
  27. package/dist/cjs/apps/lending/eligibility.js +121 -0
  28. package/dist/cjs/apps/lending/index.js +91 -0
  29. package/dist/cjs/apps/lending/state-machines/index.js +9 -0
  30. package/dist/cjs/apps/lending/state-machines/lending-zk-loan.js +412 -0
  31. package/dist/cjs/apps/markets/index.js +21 -11
  32. package/dist/cjs/apps/markets/state-machines/market-auction.js +14 -13
  33. package/dist/cjs/apps/markets/state-machines/market-crowdfund.js +29 -24
  34. package/dist/cjs/apps/markets/state-machines/market-group-buy.js +24 -26
  35. package/dist/cjs/apps/markets/state-machines/market-prediction.js +80 -53
  36. package/dist/cjs/apps/markets/state-machines/market-universal.js +5 -5
  37. package/dist/cjs/apps/oracles/index.js +2 -2
  38. package/dist/cjs/errors.js +3 -3
  39. package/dist/cjs/generated/google/protobuf/struct.js +4 -4
  40. package/dist/cjs/generated/index.js +11 -7
  41. package/dist/cjs/generated/openapi.js +6 -0
  42. package/dist/cjs/generated/ottochain/apps/contracts/v1/contract.js +50 -50
  43. package/dist/cjs/generated/ottochain/apps/corporate/v1/corporate.js +19 -20
  44. package/dist/cjs/generated/ottochain/apps/governance/v1/governance.js +13 -13
  45. package/dist/cjs/generated/ottochain/apps/identity/v1/attestation.js +4 -4
  46. package/dist/cjs/generated/ottochain/apps/identity/v1/identity.js +124 -130
  47. package/dist/cjs/generated/ottochain/apps/markets/v1/market.js +107 -107
  48. package/dist/cjs/generated/ottochain/v1/common.js +4 -4
  49. package/dist/cjs/generated/ottochain/v1/fiber.js +4 -4
  50. package/dist/cjs/index.js +41 -7
  51. package/dist/cjs/openapi.js +2 -0
  52. package/dist/cjs/ottochain/drop-nulls.js +1 -2
  53. package/dist/cjs/ottochain/genesis-manifest.js +11 -11
  54. package/dist/cjs/ottochain/index.js +23 -13
  55. package/dist/cjs/ottochain/metagraph-client.js +65 -8
  56. package/dist/cjs/ottochain/snapshot.js +11 -12
  57. package/dist/cjs/ottochain/transaction.js +57 -14
  58. package/dist/cjs/ottochain/types.js +16 -2
  59. package/dist/cjs/privacy/index.js +14 -0
  60. package/dist/cjs/privacy/sealed-bid.js +210 -0
  61. package/dist/cjs/privacy/shield-app.js +131 -0
  62. package/dist/cjs/schema/effects.js +40 -0
  63. package/dist/cjs/schema/fiber-app.js +19 -13
  64. package/dist/cjs/schema/guard-lint.js +352 -0
  65. package/dist/cjs/schema/guards.js +246 -0
  66. package/dist/cjs/signing.js +80 -0
  67. package/dist/cjs/types.js +2 -3
  68. package/dist/cjs/validation.js +8 -8
  69. package/dist/cjs/verify.js +9 -4
  70. package/dist/cjs/zk/commit.js +53 -0
  71. package/dist/cjs/zk/guard.js +107 -0
  72. package/dist/cjs/zk/index.js +48 -0
  73. package/dist/cjs/zk/preimage.js +37 -0
  74. package/dist/cjs/zk/prover.js +87 -0
  75. package/dist/cjs/zk/registry.js +62 -0
  76. package/dist/cjs/zk/types.js +28 -0
  77. package/dist/cjs/zk/witness.js +19 -0
  78. package/dist/esm/apps/contracts/index.js +7 -3
  79. package/dist/esm/apps/contracts/state-machines/contract-agreement.js +35 -40
  80. package/dist/esm/apps/contracts/state-machines/contract-escrow.js +80 -37
  81. package/dist/esm/apps/contracts/state-machines/contract-universal.js +4 -4
  82. package/dist/esm/apps/corporate/state-machines/corp-board.js +169 -59
  83. package/dist/esm/apps/corporate/state-machines/corp-entity.js +245 -47
  84. package/dist/esm/apps/corporate/state-machines/corp-securities.js +407 -99
  85. package/dist/esm/apps/corporate/state-machines/corp-shareholders.js +151 -37
  86. package/dist/esm/apps/governance/state-machines/dao-multisig.js +58 -40
  87. package/dist/esm/apps/governance/state-machines/dao-reputation.js +46 -40
  88. package/dist/esm/apps/governance/state-machines/dao-single.js +28 -11
  89. package/dist/esm/apps/governance/state-machines/dao-token.js +67 -41
  90. package/dist/esm/apps/governance/state-machines/governance-simple.js +93 -61
  91. package/dist/esm/apps/governance/state-machines/governance-universal.js +2 -2
  92. package/dist/esm/apps/identity/constants.js +51 -12
  93. package/dist/esm/apps/identity/index.js +12 -7
  94. package/dist/esm/apps/identity/state-machines/identity-agent.js +3 -3
  95. package/dist/esm/apps/identity/state-machines/identity-oracle.js +25 -22
  96. package/dist/esm/apps/identity/state-machines/identity-registry.js +285 -0
  97. package/dist/esm/apps/identity/state-machines/identity-universal.js +3 -3
  98. package/dist/esm/apps/identity/state-machines/index.js +1 -0
  99. package/dist/esm/apps/index.js +1 -0
  100. package/dist/esm/apps/lending/assets.js +207 -0
  101. package/dist/esm/apps/lending/credit-scoring.js +81 -0
  102. package/dist/esm/apps/lending/eligibility.js +115 -0
  103. package/dist/esm/apps/lending/index.js +69 -0
  104. package/dist/esm/apps/lending/state-machines/index.js +5 -0
  105. package/dist/esm/apps/lending/state-machines/lending-zk-loan.js +409 -0
  106. package/dist/esm/apps/markets/index.js +8 -4
  107. package/dist/esm/apps/markets/state-machines/market-auction.js +14 -13
  108. package/dist/esm/apps/markets/state-machines/market-crowdfund.js +29 -24
  109. package/dist/esm/apps/markets/state-machines/market-group-buy.js +24 -26
  110. package/dist/esm/apps/markets/state-machines/market-prediction.js +80 -53
  111. package/dist/esm/apps/markets/state-machines/market-universal.js +5 -5
  112. package/dist/esm/generated/index.js +9 -5
  113. package/dist/esm/generated/openapi.js +5 -0
  114. package/dist/esm/generated/ottochain/apps/contracts/v1/contract.js +46 -46
  115. package/dist/esm/generated/ottochain/apps/identity/v1/identity.js +114 -120
  116. package/dist/esm/generated/ottochain/apps/markets/v1/market.js +100 -100
  117. package/dist/esm/index.js +21 -2
  118. package/dist/esm/openapi.js +1 -0
  119. package/dist/esm/ottochain/genesis-manifest.js +9 -9
  120. package/dist/esm/ottochain/index.js +2 -3
  121. package/dist/esm/ottochain/metagraph-client.js +65 -8
  122. package/dist/esm/ottochain/snapshot.js +4 -4
  123. package/dist/esm/ottochain/transaction.js +43 -3
  124. package/dist/esm/ottochain/types.js +15 -1
  125. package/dist/esm/privacy/index.js +6 -0
  126. package/dist/esm/privacy/sealed-bid.js +206 -0
  127. package/dist/esm/privacy/shield-app.js +127 -0
  128. package/dist/esm/schema/effects.js +35 -0
  129. package/dist/esm/schema/fiber-app.js +13 -6
  130. package/dist/esm/schema/guard-lint.js +346 -0
  131. package/dist/esm/schema/guards.js +229 -0
  132. package/dist/esm/signing.js +74 -0
  133. package/dist/esm/verify.js +8 -2
  134. package/dist/esm/zk/commit.js +44 -0
  135. package/dist/esm/zk/guard.js +99 -0
  136. package/dist/esm/zk/index.js +19 -0
  137. package/dist/esm/zk/preimage.js +30 -0
  138. package/dist/esm/zk/prover.js +82 -0
  139. package/dist/esm/zk/registry.js +55 -0
  140. package/dist/esm/zk/types.js +25 -0
  141. package/dist/esm/zk/witness.js +15 -0
  142. package/dist/types/apps/contracts/index.d.ts +69 -209
  143. package/dist/types/apps/contracts/state-machines/contract-agreement.d.ts +20 -95
  144. package/dist/types/apps/contracts/state-machines/contract-escrow.d.ts +46 -112
  145. package/dist/types/apps/corporate/index.d.ts +1040 -304
  146. package/dist/types/apps/corporate/state-machines/corp-board.d.ts +188 -52
  147. package/dist/types/apps/corporate/state-machines/corp-entity.d.ts +267 -62
  148. package/dist/types/apps/corporate/state-machines/corp-securities.d.ts +355 -131
  149. package/dist/types/apps/corporate/state-machines/corp-shareholders.d.ts +225 -53
  150. package/dist/types/apps/governance/index.d.ts +296 -398
  151. package/dist/types/apps/governance/state-machines/dao-multisig.d.ts +77 -92
  152. package/dist/types/apps/governance/state-machines/dao-reputation.d.ts +42 -66
  153. package/dist/types/apps/governance/state-machines/dao-single.d.ts +25 -47
  154. package/dist/types/apps/governance/state-machines/dao-token.d.ts +60 -49
  155. package/dist/types/apps/governance/state-machines/governance-simple.d.ts +87 -117
  156. package/dist/types/apps/governance/state-machines/governance-universal.d.ts +2 -2
  157. package/dist/types/apps/identity/constants.d.ts +32 -4
  158. package/dist/types/apps/identity/index.d.ts +378 -94
  159. package/dist/types/apps/identity/state-machines/identity-oracle.d.ts +16 -87
  160. package/dist/types/apps/identity/state-machines/identity-registry.d.ts +379 -0
  161. package/dist/types/apps/identity/state-machines/index.d.ts +1 -0
  162. package/dist/types/apps/index.d.ts +1 -0
  163. package/dist/types/apps/lending/assets.d.ts +258 -0
  164. package/dist/types/apps/lending/credit-scoring.d.ts +80 -0
  165. package/dist/types/apps/lending/eligibility.d.ts +83 -0
  166. package/dist/types/apps/lending/index.d.ts +548 -0
  167. package/dist/types/apps/lending/state-machines/index.d.ts +5 -0
  168. package/dist/types/apps/lending/state-machines/lending-zk-loan.d.ts +528 -0
  169. package/dist/types/apps/markets/index.d.ts +108 -203
  170. package/dist/types/apps/markets/state-machines/market-auction.d.ts +13 -37
  171. package/dist/types/apps/markets/state-machines/market-crowdfund.d.ts +16 -34
  172. package/dist/types/apps/markets/state-machines/market-group-buy.d.ts +17 -43
  173. package/dist/types/apps/markets/state-machines/market-prediction.d.ts +51 -72
  174. package/dist/types/apps/markets/state-machines/market-universal.d.ts +5 -5
  175. package/dist/types/generated/index.d.ts +5 -5
  176. package/dist/types/generated/openapi.d.ts +1257 -0
  177. package/dist/types/generated/ottochain/apps/contracts/v1/contract.d.ts +5 -5
  178. package/dist/types/generated/ottochain/apps/identity/v1/identity.d.ts +12 -12
  179. package/dist/types/generated/ottochain/apps/markets/v1/market.d.ts +11 -11
  180. package/dist/types/index.d.ts +6 -2
  181. package/dist/types/openapi.d.ts +22 -0
  182. package/dist/types/ottochain/genesis-manifest.d.ts +5 -5
  183. package/dist/types/ottochain/index.d.ts +5 -6
  184. package/dist/types/ottochain/metagraph-client.d.ts +49 -7
  185. package/dist/types/ottochain/snapshot.d.ts +6 -6
  186. package/dist/types/ottochain/transaction.d.ts +33 -1
  187. package/dist/types/ottochain/types.d.ts +335 -30
  188. package/dist/types/privacy/index.d.ts +6 -0
  189. package/dist/types/privacy/sealed-bid.d.ts +348 -0
  190. package/dist/types/privacy/shield-app.d.ts +48 -0
  191. package/dist/types/schema/effects.d.ts +34 -0
  192. package/dist/types/schema/fiber-app.d.ts +1 -2
  193. package/dist/types/schema/guard-lint.d.ts +111 -0
  194. package/dist/types/schema/guards.d.ts +134 -0
  195. package/dist/types/signing.d.ts +45 -0
  196. package/dist/types/validation.d.ts +22 -217
  197. package/dist/types/verify.d.ts +4 -0
  198. package/dist/types/zk/commit.d.ts +28 -0
  199. package/dist/types/zk/guard.d.ts +46 -0
  200. package/dist/types/zk/index.d.ts +19 -0
  201. package/dist/types/zk/preimage.d.ts +10 -0
  202. package/dist/types/zk/prover.d.ts +34 -0
  203. package/dist/types/zk/registry.d.ts +34 -0
  204. package/dist/types/zk/types.d.ts +33 -0
  205. package/dist/types/zk/witness.d.ts +40 -0
  206. package/package.json +27 -13
  207. package/dist/cjs/ottochain/normalize.js +0 -186
  208. package/dist/esm/ottochain/normalize.js +0 -179
  209. package/dist/types/ottochain/normalize.d.ts +0 -79
@@ -132,13 +132,8 @@ export declare const govSimpleDef: {
132
132
  };
133
133
  };
134
134
  readonly finalize: {
135
- readonly description: "Finalize the voting period";
136
- readonly required: readonly ["forCount"];
137
- readonly properties: {
138
- readonly forCount: {
139
- readonly type: "number";
140
- };
141
- };
135
+ readonly description: "Finalize the voting period (for-count derived from recorded ballots)";
136
+ readonly properties: {};
142
137
  };
143
138
  readonly file_dispute: {
144
139
  readonly description: "File a dispute against a member";
@@ -183,13 +178,8 @@ export declare const govSimpleDef: {
183
178
  };
184
179
  };
185
180
  readonly dissolve: {
186
- readonly description: "Dissolve the organization (requires 90% approval)";
187
- readonly required: readonly ["approvalCount"];
188
- readonly properties: {
189
- readonly approvalCount: {
190
- readonly type: "number";
191
- };
192
- };
181
+ readonly description: "Dissolve the organization (requires every member to sign this op — verified unanimity)";
182
+ readonly properties: {};
193
183
  };
194
184
  };
195
185
  readonly states: {
@@ -235,19 +225,13 @@ export declare const govSimpleDef: {
235
225
  readonly from: "ACTIVE";
236
226
  readonly to: "ACTIVE";
237
227
  readonly eventName: "add_member";
238
- readonly guard: {
239
- readonly in: readonly [{
240
- readonly var: "event.agent";
241
- }, {
242
- readonly var: "state.admins";
243
- }];
244
- };
228
+ readonly guard: import("../../../schema/guards.js").GuardRule;
245
229
  readonly effect: {
246
230
  readonly merge: readonly [{
247
231
  readonly var: "state";
248
232
  }, {
249
233
  readonly members: {
250
- readonly setKey: readonly [{
234
+ readonly set: readonly [{
251
235
  readonly var: "state.members";
252
236
  }, {
253
237
  readonly var: "event.member";
@@ -256,7 +240,7 @@ export declare const govSimpleDef: {
256
240
  readonly var: "event.role";
257
241
  };
258
242
  readonly addedAt: {
259
- readonly var: "$timestamp";
243
+ readonly var: "$ordinal";
260
244
  };
261
245
  }];
262
246
  };
@@ -267,19 +251,13 @@ export declare const govSimpleDef: {
267
251
  readonly from: "ACTIVE";
268
252
  readonly to: "ACTIVE";
269
253
  readonly eventName: "remove_member";
270
- readonly guard: {
271
- readonly in: readonly [{
272
- readonly var: "event.agent";
273
- }, {
274
- readonly var: "state.admins";
275
- }];
276
- };
254
+ readonly guard: import("../../../schema/guards.js").GuardRule;
277
255
  readonly effect: {
278
256
  readonly merge: readonly [{
279
257
  readonly var: "state";
280
258
  }, {
281
259
  readonly members: {
282
- readonly deleteKey: readonly [{
260
+ readonly unset: readonly [{
283
261
  readonly var: "state.members";
284
262
  }, {
285
263
  readonly var: "event.member";
@@ -292,13 +270,7 @@ export declare const govSimpleDef: {
292
270
  readonly from: "ACTIVE";
293
271
  readonly to: "VOTING";
294
272
  readonly eventName: "propose";
295
- readonly guard: {
296
- readonly getKey: readonly [{
297
- readonly var: "state.members";
298
- }, {
299
- readonly var: "event.agent";
300
- }];
301
- };
273
+ readonly guard: import("../../../schema/guards.js").GuardRule;
302
274
  readonly effect: {
303
275
  readonly merge: readonly [{
304
276
  readonly var: "state";
@@ -317,11 +289,11 @@ export declare const govSimpleDef: {
317
289
  readonly var: "event.agent";
318
290
  };
319
291
  readonly proposedAt: {
320
- readonly var: "$timestamp";
292
+ readonly var: "$ordinal";
321
293
  };
322
294
  readonly deadline: {
323
295
  readonly "+": readonly [{
324
- readonly var: "$timestamp";
296
+ readonly var: "$ordinal";
325
297
  }, {
326
298
  readonly var: "state.votingPeriodMs";
327
299
  }];
@@ -336,15 +308,9 @@ export declare const govSimpleDef: {
336
308
  readonly to: "VOTING";
337
309
  readonly eventName: "vote";
338
310
  readonly guard: {
339
- readonly and: readonly [{
340
- readonly getKey: readonly [{
341
- readonly var: "state.members";
342
- }, {
343
- readonly var: "event.agent";
344
- }];
345
- }, {
311
+ readonly and: readonly [import("../../../schema/guards.js").GuardRule, {
346
312
  readonly "!": readonly [{
347
- readonly getKey: readonly [{
313
+ readonly has: readonly [{
348
314
  readonly var: "state.votes";
349
315
  }, {
350
316
  readonly var: "event.agent";
@@ -357,7 +323,7 @@ export declare const govSimpleDef: {
357
323
  readonly var: "state";
358
324
  }, {
359
325
  readonly votes: {
360
- readonly setKey: readonly [{
326
+ readonly set: readonly [{
361
327
  readonly var: "state.votes";
362
328
  }, {
363
329
  readonly var: "event.agent";
@@ -366,7 +332,7 @@ export declare const govSimpleDef: {
366
332
  readonly var: "event.vote";
367
333
  };
368
334
  readonly votedAt: {
369
- readonly var: "$timestamp";
335
+ readonly var: "$ordinal";
370
336
  };
371
337
  }];
372
338
  };
@@ -379,12 +345,24 @@ export declare const govSimpleDef: {
379
345
  readonly eventName: "finalize";
380
346
  readonly guard: {
381
347
  readonly ">=": readonly [{
382
- readonly var: "event.forCount";
348
+ readonly length: readonly [{
349
+ readonly filter: readonly [{
350
+ readonly values: readonly [{
351
+ readonly var: "state.votes";
352
+ }];
353
+ }, {
354
+ readonly "===": readonly [{
355
+ readonly var: "vote";
356
+ }, "for"];
357
+ }];
358
+ }];
383
359
  }, {
384
360
  readonly "*": readonly [{
385
- readonly size: {
386
- readonly var: "state.members";
387
- };
361
+ readonly length: readonly [{
362
+ readonly keys: readonly [{
363
+ readonly var: "state.members";
364
+ }];
365
+ }];
388
366
  }, {
389
367
  readonly var: "state.passingThreshold";
390
368
  }];
@@ -411,7 +389,7 @@ export declare const govSimpleDef: {
411
389
  };
412
390
  readonly outcome: "passed";
413
391
  readonly finalizedAt: {
414
- readonly var: "$timestamp";
392
+ readonly var: "$ordinal";
415
393
  };
416
394
  }]];
417
395
  };
@@ -426,12 +404,24 @@ export declare const govSimpleDef: {
426
404
  readonly eventName: "finalize";
427
405
  readonly guard: {
428
406
  readonly "<": readonly [{
429
- readonly var: "event.forCount";
407
+ readonly length: readonly [{
408
+ readonly filter: readonly [{
409
+ readonly values: readonly [{
410
+ readonly var: "state.votes";
411
+ }];
412
+ }, {
413
+ readonly "===": readonly [{
414
+ readonly var: "vote";
415
+ }, "for"];
416
+ }];
417
+ }];
430
418
  }, {
431
419
  readonly "*": readonly [{
432
- readonly size: {
433
- readonly var: "state.members";
434
- };
420
+ readonly length: readonly [{
421
+ readonly keys: readonly [{
422
+ readonly var: "state.members";
423
+ }];
424
+ }];
435
425
  }, {
436
426
  readonly var: "state.passingThreshold";
437
427
  }];
@@ -451,7 +441,7 @@ export declare const govSimpleDef: {
451
441
  };
452
442
  readonly outcome: "failed";
453
443
  readonly finalizedAt: {
454
- readonly var: "$timestamp";
444
+ readonly var: "$ordinal";
455
445
  };
456
446
  }]];
457
447
  };
@@ -464,13 +454,7 @@ export declare const govSimpleDef: {
464
454
  readonly from: "ACTIVE";
465
455
  readonly to: "DISPUTE";
466
456
  readonly eventName: "file_dispute";
467
- readonly guard: {
468
- readonly getKey: readonly [{
469
- readonly var: "state.members";
470
- }, {
471
- readonly var: "event.agent";
472
- }];
473
- };
457
+ readonly guard: import("../../../schema/guards.js").GuardRule;
474
458
  readonly effect: {
475
459
  readonly merge: readonly [{
476
460
  readonly var: "state";
@@ -489,7 +473,7 @@ export declare const govSimpleDef: {
489
473
  readonly var: "event.claim";
490
474
  };
491
475
  readonly filedAt: {
492
- readonly var: "$timestamp";
476
+ readonly var: "$ordinal";
493
477
  };
494
478
  readonly evidence: readonly [];
495
479
  };
@@ -501,21 +485,7 @@ export declare const govSimpleDef: {
501
485
  readonly from: "DISPUTE";
502
486
  readonly to: "DISPUTE";
503
487
  readonly eventName: "submit_evidence";
504
- readonly guard: {
505
- readonly or: readonly [{
506
- readonly "===": readonly [{
507
- readonly var: "event.agent";
508
- }, {
509
- readonly var: "state.dispute.plaintiff";
510
- }];
511
- }, {
512
- readonly "===": readonly [{
513
- readonly var: "event.agent";
514
- }, {
515
- readonly var: "state.dispute.defendant";
516
- }];
517
- }];
518
- };
488
+ readonly guard: import("../../../schema/guards.js").GuardRule;
519
489
  readonly effect: {
520
490
  readonly merge: readonly [{
521
491
  readonly var: "state";
@@ -535,7 +505,7 @@ export declare const govSimpleDef: {
535
505
  readonly var: "event.content";
536
506
  };
537
507
  readonly at: {
538
- readonly var: "$timestamp";
508
+ readonly var: "$ordinal";
539
509
  };
540
510
  }]];
541
511
  };
@@ -549,27 +519,9 @@ export declare const govSimpleDef: {
549
519
  readonly to: "DISPUTE";
550
520
  readonly eventName: "vote";
551
521
  readonly guard: {
552
- readonly and: readonly [{
553
- readonly getKey: readonly [{
554
- readonly var: "state.members";
555
- }, {
556
- readonly var: "event.agent";
557
- }];
558
- }, {
559
- readonly "!==": readonly [{
560
- readonly var: "event.agent";
561
- }, {
562
- readonly var: "state.dispute.plaintiff";
563
- }];
564
- }, {
565
- readonly "!==": readonly [{
566
- readonly var: "event.agent";
567
- }, {
568
- readonly var: "state.dispute.defendant";
569
- }];
570
- }, {
522
+ readonly and: readonly [import("../../../schema/guards.js").GuardRule, import("../../../schema/guards.js").GuardRule, import("../../../schema/guards.js").GuardRule, {
571
523
  readonly "!": readonly [{
572
- readonly getKey: readonly [{
524
+ readonly has: readonly [{
573
525
  readonly var: "state.votes";
574
526
  }, {
575
527
  readonly var: "event.agent";
@@ -582,7 +534,7 @@ export declare const govSimpleDef: {
582
534
  readonly var: "state";
583
535
  }, {
584
536
  readonly votes: {
585
- readonly setKey: readonly [{
537
+ readonly set: readonly [{
586
538
  readonly var: "state.votes";
587
539
  }, {
588
540
  readonly var: "event.agent";
@@ -591,7 +543,7 @@ export declare const govSimpleDef: {
591
543
  readonly var: "event.ruling";
592
544
  };
593
545
  readonly votedAt: {
594
- readonly var: "$timestamp";
546
+ readonly var: "$ordinal";
595
547
  };
596
548
  }];
597
549
  };
@@ -604,9 +556,11 @@ export declare const govSimpleDef: {
604
556
  readonly eventName: "resolve";
605
557
  readonly guard: {
606
558
  readonly ">=": readonly [{
607
- readonly size: {
608
- readonly var: "state.votes";
609
- };
559
+ readonly length: readonly [{
560
+ readonly keys: readonly [{
561
+ readonly var: "state.votes";
562
+ }];
563
+ }];
610
564
  }, {
611
565
  readonly var: "state.disputeQuorum";
612
566
  }];
@@ -630,7 +584,7 @@ export declare const govSimpleDef: {
630
584
  readonly var: "event.remedy";
631
585
  };
632
586
  readonly resolvedAt: {
633
- readonly var: "$timestamp";
587
+ readonly var: "$ordinal";
634
588
  };
635
589
  }]];
636
590
  };
@@ -644,14 +598,30 @@ export declare const govSimpleDef: {
644
598
  readonly to: "DISSOLVED";
645
599
  readonly eventName: "dissolve";
646
600
  readonly guard: {
647
- readonly ">=": readonly [{
648
- readonly var: "event.approvalCount";
601
+ readonly and: readonly [{
602
+ readonly ">": readonly [{
603
+ readonly length: readonly [{
604
+ readonly keys: readonly [{
605
+ readonly var: "state.members";
606
+ }];
607
+ }];
608
+ }, 0];
649
609
  }, {
650
- readonly "*": readonly [{
651
- readonly size: {
610
+ readonly all: readonly [{
611
+ readonly keys: readonly [{
652
612
  readonly var: "state.members";
653
- };
654
- }, 0.9];
613
+ }];
614
+ }, {
615
+ readonly in: readonly [{
616
+ readonly var: "";
617
+ }, {
618
+ readonly map: readonly [{
619
+ readonly var: "proofs";
620
+ }, {
621
+ readonly var: "address";
622
+ }];
623
+ }];
624
+ }];
655
625
  }];
656
626
  };
657
627
  readonly effect: {
@@ -659,7 +629,7 @@ export declare const govSimpleDef: {
659
629
  readonly var: "state";
660
630
  }, {
661
631
  readonly dissolvedAt: {
662
- readonly var: "$timestamp";
632
+ readonly var: "$ordinal";
663
633
  };
664
634
  }];
665
635
  };
@@ -116,7 +116,7 @@ export declare const govUniversalDef: {
116
116
  readonly var: "event.proposal";
117
117
  };
118
118
  readonly proposedAt: {
119
- readonly var: "$timestamp";
119
+ readonly var: "$ordinal";
120
120
  };
121
121
  readonly votes: {};
122
122
  }];
@@ -184,7 +184,7 @@ export declare const govUniversalDef: {
184
184
  }, {
185
185
  readonly status: "DISSOLVED";
186
186
  readonly dissolvedAt: {
187
- readonly var: "$timestamp";
187
+ readonly var: "$ordinal";
188
188
  };
189
189
  }];
190
190
  };
@@ -5,24 +5,52 @@
5
5
  *
6
6
  * @packageDocumentation
7
7
  */
8
- import { IdentityState } from "../../generated/ottochain/apps/identity/v1/identity.js";
8
+ import { State } from "../../generated/ottochain/apps/identity/v1/identity.js";
9
9
  import { AttestationType } from "../../generated/ottochain/apps/identity/v1/attestation.js";
10
10
  /**
11
11
  * Valid transitions for each identity state.
12
12
  * Maps current state to allowed event names.
13
13
  * Note: Some transitions are type-specific (agent vs oracle)
14
14
  */
15
- export declare const IDENTITY_TRANSITIONS: Record<IdentityState, readonly string[]>;
16
- export declare const AGENT_TRANSITIONS: Record<IdentityState, readonly string[]>;
15
+ export declare const IDENTITY_TRANSITIONS: Record<State, readonly string[]>;
16
+ export declare const AGENT_TRANSITIONS: Record<State, readonly string[]>;
17
17
  /**
18
18
  * Reputation delta by attestation type.
19
19
  * These values match the metagraph state machine defaults.
20
20
  */
21
21
  export declare const ATTESTATION_DELTAS: Record<AttestationType, number>;
22
+ /**
23
+ * Role-attestation types issued by the identity registry (identity-registry fiber).
24
+ * These are the ecosystem-wide authority roles consumer apps gate on via the registry
25
+ * dependency + `signerHasRole` (see docs/design/app-hardening-identity-integration.md §4.2).
26
+ */
27
+ export declare const REGISTRY_ROLES: {
28
+ readonly ARBITER: "ARBITER";
29
+ readonly SLASHER: "SLASHER";
30
+ readonly ISSUER: "ISSUER";
31
+ readonly BOARD_MEMBER: "BOARD_MEMBER";
32
+ };
33
+ export type RegistryRole = keyof typeof REGISTRY_ROLES;
34
+ /**
35
+ * Maps each role to the registry's flat per-role state-map field. A consumer app reads
36
+ * `machines.<registryDep>.state.<field>` (a `{ <address>: true }` map) and binds membership to a
37
+ * verified signer with `signerHasRole`. Kept in lock-step with the identity-registry stateSchema.
38
+ */
39
+ export declare const REGISTRY_ROLE_MAP: Record<RegistryRole, string>;
40
+ /**
41
+ * Build the `machines.<registryDep>.state.<roleMap>` var path a consumer guard reads to check a role,
42
+ * e.g. `registryRolePath("reg-uuid", "ARBITER")` → `"machines.reg-uuid.state.arbiters"`.
43
+ */
44
+ export declare function registryRolePath(registryDep: string, role: RegistryRole): string;
45
+ /**
46
+ * Build the `machines.<registryDep>.state.reputations` var path a consumer guard reads for a
47
+ * reputation gate (`signerHasReputation`).
48
+ */
49
+ export declare function registryReputationPath(registryDep: string): string;
22
50
  /**
23
51
  * Check if a transition is valid for the given state.
24
52
  */
25
- export declare function canTransition(state: IdentityState, event: string): boolean;
53
+ export declare function canTransition(state: State, event: string): boolean;
26
54
  /**
27
55
  * Get reputation delta for an attestation type.
28
56
  */