@ottochain/sdk 2.4.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/dist/cjs/apps/compute/index.js +33 -0
  2. package/dist/cjs/apps/compute/state-machines/compute-rule110.js +164 -0
  3. package/dist/cjs/apps/compute/state-machines/index.js +9 -0
  4. package/dist/cjs/apps/contracts/index.js +1 -1
  5. package/dist/cjs/apps/contracts/state-machines/contract-agreement.js +126 -148
  6. package/dist/cjs/apps/contracts/state-machines/contract-escrow.js +153 -174
  7. package/dist/cjs/apps/contracts/state-machines/contract-universal.js +46 -58
  8. package/dist/cjs/apps/corporate/state-machines/corp-board.js +415 -481
  9. package/dist/cjs/apps/corporate/state-machines/corp-entity.js +368 -440
  10. package/dist/cjs/apps/corporate/state-machines/corp-securities.js +532 -647
  11. package/dist/cjs/apps/corporate/state-machines/corp-shareholders.js +499 -603
  12. package/dist/cjs/apps/governance/index.js +7 -7
  13. package/dist/cjs/apps/governance/state-machines/dao-multisig.js +170 -209
  14. package/dist/cjs/apps/governance/state-machines/dao-reputation.js +161 -214
  15. package/dist/cjs/apps/governance/state-machines/dao-single.js +92 -92
  16. package/dist/cjs/apps/governance/state-machines/dao-token.js +169 -223
  17. package/dist/cjs/apps/governance/state-machines/governance-simple.js +185 -217
  18. package/dist/cjs/apps/governance/state-machines/governance-universal.js +64 -64
  19. package/dist/cjs/apps/identity/constants.js +16 -24
  20. package/dist/cjs/apps/identity/index.js +1 -1
  21. package/dist/cjs/apps/identity/state-machines/identity-agent.js +124 -158
  22. package/dist/cjs/apps/identity/state-machines/identity-oracle.js +151 -169
  23. package/dist/cjs/apps/identity/state-machines/identity-registry.js +89 -115
  24. package/dist/cjs/apps/identity/state-machines/identity-universal.js +51 -57
  25. package/dist/cjs/apps/index.js +4 -1
  26. package/dist/cjs/apps/lending/assets.js +41 -17
  27. package/dist/cjs/apps/lending/credit-scoring.js +4 -4
  28. package/dist/cjs/apps/lending/eligibility.js +9 -25
  29. package/dist/cjs/apps/lending/index.js +1 -1
  30. package/dist/cjs/apps/lending/state-machines/lending-zk-loan.js +177 -156
  31. package/dist/cjs/apps/markets/index.js +1 -1
  32. package/dist/cjs/apps/markets/state-machines/market-auction.js +115 -134
  33. package/dist/cjs/apps/markets/state-machines/market-crowdfund.js +122 -137
  34. package/dist/cjs/apps/markets/state-machines/market-group-buy.js +158 -177
  35. package/dist/cjs/apps/markets/state-machines/market-prediction.js +193 -227
  36. package/dist/cjs/apps/markets/state-machines/market-universal.js +65 -80
  37. package/dist/cjs/apps/oracles/index.js +1 -1
  38. package/dist/cjs/apps/privacy/index.js +67 -0
  39. package/dist/cjs/apps/privacy/state-machines/index.js +17 -0
  40. package/dist/cjs/apps/privacy/state-machines/mixer-ddhRing.js +286 -0
  41. package/dist/cjs/apps/privacy/state-machines/note-pool.js +476 -0
  42. package/dist/cjs/apps/staked-pool/assets.js +103 -0
  43. package/dist/cjs/apps/staked-pool/base.js +498 -0
  44. package/dist/cjs/apps/staked-pool/consumer.js +55 -0
  45. package/dist/cjs/apps/staked-pool/index.js +83 -0
  46. package/dist/cjs/apps/staked-pool/state-machines/index.js +12 -0
  47. package/dist/cjs/apps/staked-pool/state-machines/staked-pool-base.js +49 -0
  48. package/dist/cjs/apps/staked-pool/state-machines/staked-pool-oracle.js +131 -0
  49. package/dist/cjs/generated/google/protobuf/struct.js +1 -1
  50. package/dist/cjs/generated/google/protobuf/timestamp.js +1 -1
  51. package/dist/cjs/generated/ottochain/apps/contracts/v1/contract.js +1 -1
  52. package/dist/cjs/generated/ottochain/apps/corporate/v1/corporate.js +1 -1
  53. package/dist/cjs/generated/ottochain/apps/governance/v1/governance.js +1 -1
  54. package/dist/cjs/generated/ottochain/apps/identity/v1/attestation.js +1 -1
  55. package/dist/cjs/generated/ottochain/apps/identity/v1/identity.js +1 -1
  56. package/dist/cjs/generated/ottochain/apps/markets/v1/market.js +1 -1
  57. package/dist/cjs/generated/ottochain/v1/common.js +1 -1
  58. package/dist/cjs/generated/ottochain/v1/fiber.js +40 -2
  59. package/dist/cjs/generated/ottochain/v1/messages.js +1 -1
  60. package/dist/cjs/generated/ottochain/v1/records.js +1 -1
  61. package/dist/cjs/index.js +20 -3
  62. package/dist/cjs/ottochain/genesis-manifest.js +6 -0
  63. package/dist/cjs/ottochain/metagraph-client.js +16 -8
  64. package/dist/cjs/ottochain/snapshot.js +2 -4
  65. package/dist/cjs/ottochain/transaction.js +10 -0
  66. package/dist/cjs/privacy/sealed-bid.js +85 -82
  67. package/dist/cjs/privacy/shield-app.js +32 -32
  68. package/dist/cjs/schema/effects.js +117 -1
  69. package/dist/cjs/schema/fiber-app.js +132 -3
  70. package/dist/cjs/schema/guard-lint.js +3 -12
  71. package/dist/cjs/schema/guards.js +38 -38
  72. package/dist/cjs/templates/asset-policy.js +190 -0
  73. package/dist/cjs/templates/index.js +86 -0
  74. package/dist/cjs/templates/machine.js +130 -0
  75. package/dist/cjs/templates/migration.js +39 -0
  76. package/dist/cjs/templates/state-shape.js +38 -0
  77. package/dist/cjs/validation.js +1 -3
  78. package/dist/esm/apps/compute/index.js +29 -0
  79. package/dist/esm/apps/compute/state-machines/compute-rule110.js +161 -0
  80. package/dist/esm/apps/compute/state-machines/index.js +5 -0
  81. package/dist/esm/apps/contracts/index.js +4 -4
  82. package/dist/esm/apps/contracts/state-machines/contract-agreement.js +128 -150
  83. package/dist/esm/apps/contracts/state-machines/contract-escrow.js +155 -176
  84. package/dist/esm/apps/contracts/state-machines/contract-universal.js +47 -59
  85. package/dist/esm/apps/corporate/index.js +2 -2
  86. package/dist/esm/apps/corporate/state-machines/corp-board.js +418 -484
  87. package/dist/esm/apps/corporate/state-machines/corp-entity.js +371 -443
  88. package/dist/esm/apps/corporate/state-machines/corp-securities.js +535 -650
  89. package/dist/esm/apps/corporate/state-machines/corp-shareholders.js +502 -606
  90. package/dist/esm/apps/governance/index.js +10 -10
  91. package/dist/esm/apps/governance/state-machines/dao-multisig.js +172 -211
  92. package/dist/esm/apps/governance/state-machines/dao-reputation.js +163 -216
  93. package/dist/esm/apps/governance/state-machines/dao-single.js +94 -94
  94. package/dist/esm/apps/governance/state-machines/dao-token.js +171 -225
  95. package/dist/esm/apps/governance/state-machines/governance-simple.js +187 -219
  96. package/dist/esm/apps/governance/state-machines/governance-universal.js +65 -65
  97. package/dist/esm/apps/identity/constants.js +18 -26
  98. package/dist/esm/apps/identity/index.js +8 -8
  99. package/dist/esm/apps/identity/state-machines/identity-agent.js +125 -159
  100. package/dist/esm/apps/identity/state-machines/identity-oracle.js +153 -171
  101. package/dist/esm/apps/identity/state-machines/identity-registry.js +91 -117
  102. package/dist/esm/apps/identity/state-machines/identity-universal.js +52 -58
  103. package/dist/esm/apps/index.js +9 -6
  104. package/dist/esm/apps/lending/assets.js +41 -17
  105. package/dist/esm/apps/lending/credit-scoring.js +6 -6
  106. package/dist/esm/apps/lending/eligibility.js +10 -26
  107. package/dist/esm/apps/lending/index.js +5 -5
  108. package/dist/esm/apps/lending/state-machines/lending-zk-loan.js +178 -157
  109. package/dist/esm/apps/markets/index.js +5 -5
  110. package/dist/esm/apps/markets/state-machines/market-auction.js +117 -136
  111. package/dist/esm/apps/markets/state-machines/market-crowdfund.js +124 -139
  112. package/dist/esm/apps/markets/state-machines/market-group-buy.js +160 -179
  113. package/dist/esm/apps/markets/state-machines/market-prediction.js +195 -229
  114. package/dist/esm/apps/markets/state-machines/market-universal.js +66 -81
  115. package/dist/esm/apps/oracles/index.js +3 -3
  116. package/dist/esm/apps/privacy/index.js +56 -0
  117. package/dist/esm/apps/privacy/state-machines/index.js +6 -0
  118. package/dist/esm/apps/privacy/state-machines/mixer-ddhRing.js +282 -0
  119. package/dist/esm/apps/privacy/state-machines/note-pool.js +470 -0
  120. package/dist/esm/apps/staked-pool/assets.js +91 -0
  121. package/dist/esm/apps/staked-pool/base.js +493 -0
  122. package/dist/esm/apps/staked-pool/consumer.js +49 -0
  123. package/dist/esm/apps/staked-pool/index.js +60 -0
  124. package/dist/esm/apps/staked-pool/state-machines/index.js +6 -0
  125. package/dist/esm/apps/staked-pool/state-machines/staked-pool-base.js +46 -0
  126. package/dist/esm/apps/staked-pool/state-machines/staked-pool-oracle.js +127 -0
  127. package/dist/esm/generated/google/protobuf/struct.js +1 -1
  128. package/dist/esm/generated/google/protobuf/timestamp.js +1 -1
  129. package/dist/esm/generated/ottochain/apps/contracts/v1/contract.js +1 -1
  130. package/dist/esm/generated/ottochain/apps/corporate/v1/corporate.js +1 -1
  131. package/dist/esm/generated/ottochain/apps/governance/v1/governance.js +1 -1
  132. package/dist/esm/generated/ottochain/apps/identity/v1/attestation.js +1 -1
  133. package/dist/esm/generated/ottochain/apps/identity/v1/identity.js +1 -1
  134. package/dist/esm/generated/ottochain/apps/markets/v1/market.js +1 -1
  135. package/dist/esm/generated/ottochain/v1/common.js +1 -1
  136. package/dist/esm/generated/ottochain/v1/fiber.js +40 -2
  137. package/dist/esm/generated/ottochain/v1/messages.js +1 -1
  138. package/dist/esm/generated/ottochain/v1/records.js +1 -1
  139. package/dist/esm/index.js +10 -4
  140. package/dist/esm/ottochain/genesis-manifest.js +6 -0
  141. package/dist/esm/ottochain/metagraph-client.js +16 -8
  142. package/dist/esm/ottochain/snapshot.js +2 -4
  143. package/dist/esm/ottochain/transaction.js +8 -0
  144. package/dist/esm/privacy/index.js +2 -2
  145. package/dist/esm/privacy/sealed-bid.js +87 -84
  146. package/dist/esm/privacy/shield-app.js +33 -33
  147. package/dist/esm/schema/effects.js +110 -0
  148. package/dist/esm/schema/fiber-app.js +127 -3
  149. package/dist/esm/schema/guard-lint.js +3 -12
  150. package/dist/esm/schema/guards.js +36 -37
  151. package/dist/esm/templates/asset-policy.js +182 -0
  152. package/dist/esm/templates/index.js +41 -0
  153. package/dist/esm/templates/machine.js +125 -0
  154. package/dist/esm/templates/migration.js +34 -0
  155. package/dist/esm/templates/state-shape.js +34 -0
  156. package/dist/esm/validation.js +1 -3
  157. package/dist/esm/zk/index.js +4 -4
  158. package/dist/types/apps/compute/index.d.ts +176 -0
  159. package/dist/types/apps/compute/state-machines/compute-rule110.d.ts +157 -0
  160. package/dist/types/apps/compute/state-machines/index.d.ts +5 -0
  161. package/dist/types/apps/contracts/index.d.ts +14 -14
  162. package/dist/types/apps/contracts/state-machines/contract-agreement.d.ts +3 -3
  163. package/dist/types/apps/contracts/state-machines/contract-escrow.d.ts +3 -3
  164. package/dist/types/apps/contracts/state-machines/contract-universal.d.ts +4 -4
  165. package/dist/types/apps/corporate/index.d.ts +162 -162
  166. package/dist/types/apps/corporate/state-machines/corp-board.d.ts +88 -88
  167. package/dist/types/apps/corporate/state-machines/corp-entity.d.ts +14 -14
  168. package/dist/types/apps/corporate/state-machines/corp-securities.d.ts +18 -18
  169. package/dist/types/apps/corporate/state-machines/corp-shareholders.d.ts +43 -43
  170. package/dist/types/apps/governance/index.d.ts +81 -81
  171. package/dist/types/apps/governance/state-machines/dao-multisig.d.ts +16 -16
  172. package/dist/types/apps/governance/state-machines/dao-reputation.d.ts +22 -22
  173. package/dist/types/apps/governance/state-machines/dao-token.d.ts +21 -21
  174. package/dist/types/apps/governance/state-machines/governance-simple.d.ts +11 -11
  175. package/dist/types/apps/governance/state-machines/governance-universal.d.ts +4 -4
  176. package/dist/types/apps/identity/constants.d.ts +2 -2
  177. package/dist/types/apps/identity/index.d.ts +70 -70
  178. package/dist/types/apps/identity/state-machines/identity-agent.d.ts +23 -23
  179. package/dist/types/apps/identity/state-machines/identity-oracle.d.ts +11 -11
  180. package/dist/types/apps/identity/state-machines/identity-registry.d.ts +27 -27
  181. package/dist/types/apps/identity/state-machines/identity-universal.d.ts +4 -4
  182. package/dist/types/apps/index.d.ts +9 -6
  183. package/dist/types/apps/lending/assets.d.ts +2 -2
  184. package/dist/types/apps/lending/credit-scoring.d.ts +5 -5
  185. package/dist/types/apps/lending/eligibility.d.ts +2 -2
  186. package/dist/types/apps/lending/index.d.ts +20 -12
  187. package/dist/types/apps/lending/state-machines/lending-zk-loan.d.ts +15 -7
  188. package/dist/types/apps/markets/index.d.ts +76 -76
  189. package/dist/types/apps/markets/state-machines/market-auction.d.ts +12 -12
  190. package/dist/types/apps/markets/state-machines/market-crowdfund.d.ts +19 -19
  191. package/dist/types/apps/markets/state-machines/market-group-buy.d.ts +18 -18
  192. package/dist/types/apps/markets/state-machines/market-prediction.d.ts +15 -15
  193. package/dist/types/apps/markets/state-machines/market-universal.d.ts +7 -7
  194. package/dist/types/apps/oracles/index.d.ts +1 -1
  195. package/dist/types/apps/privacy/index.d.ts +328 -0
  196. package/dist/types/apps/privacy/state-machines/index.d.ts +6 -0
  197. package/dist/types/apps/privacy/state-machines/mixer-ddhRing.d.ts +337 -0
  198. package/dist/types/apps/privacy/state-machines/note-pool.d.ts +196 -0
  199. package/dist/types/apps/staked-pool/assets.d.ts +53 -0
  200. package/dist/types/apps/staked-pool/base.d.ts +80 -0
  201. package/dist/types/apps/staked-pool/consumer.d.ts +29 -0
  202. package/dist/types/apps/staked-pool/index.d.ts +51 -0
  203. package/dist/types/apps/staked-pool/state-machines/index.d.ts +6 -0
  204. package/dist/types/apps/staked-pool/state-machines/staked-pool-base.d.ts +8 -0
  205. package/dist/types/apps/staked-pool/state-machines/staked-pool-oracle.d.ts +34 -0
  206. package/dist/types/generated/openapi.d.ts +13 -0
  207. package/dist/types/generated/ottochain/v1/fiber.d.ts +7 -0
  208. package/dist/types/index.d.ts +3 -3
  209. package/dist/types/openapi.d.ts +4 -2
  210. package/dist/types/ottochain/genesis-manifest.d.ts +6 -0
  211. package/dist/types/ottochain/transaction.d.ts +9 -1
  212. package/dist/types/ottochain/types.d.ts +1 -1
  213. package/dist/types/privacy/index.d.ts +2 -2
  214. package/dist/types/privacy/sealed-bid.d.ts +9 -9
  215. package/dist/types/privacy/shield-app.d.ts +1 -1
  216. package/dist/types/schema/effects.d.ts +107 -0
  217. package/dist/types/schema/fiber-app.d.ts +281 -0
  218. package/dist/types/schema/guards.d.ts +12 -0
  219. package/dist/types/templates/asset-policy.d.ts +119 -0
  220. package/dist/types/templates/index.d.ts +26 -0
  221. package/dist/types/templates/machine.d.ts +139 -0
  222. package/dist/types/templates/migration.d.ts +34 -0
  223. package/dist/types/templates/state-shape.d.ts +30 -0
  224. package/dist/types/zk/index.d.ts +4 -4
  225. package/package.json +31 -13
@@ -47,13 +47,37 @@ function behaviorBits(b) {
47
47
  /** Common behavior presets (asset-model.md §2). */
48
48
  exports.TokenBehaviors = {
49
49
  /** Non-transferable, non-divisible (bits 0). */
50
- Soulbound: { transferable: false, splittable: false, combinable: false, expirable: false, governable: false },
50
+ Soulbound: {
51
+ transferable: false,
52
+ splittable: false,
53
+ combinable: false,
54
+ expirable: false,
55
+ governable: false,
56
+ },
51
57
  /** Transferable only (bits 16). */
52
- NFT: { transferable: true, splittable: false, combinable: false, expirable: false, governable: false },
58
+ NFT: {
59
+ transferable: true,
60
+ splittable: false,
61
+ combinable: false,
62
+ expirable: false,
63
+ governable: false,
64
+ },
53
65
  /** Transferable + splittable + combinable (bits 28 = TSC). */
54
- Fungible: { transferable: true, splittable: true, combinable: true, expirable: false, governable: false },
66
+ Fungible: {
67
+ transferable: true,
68
+ splittable: true,
69
+ combinable: true,
70
+ expirable: false,
71
+ governable: false,
72
+ },
55
73
  /** Fungible + governable (bits 29 = TSCG) — the default for a gated debt token. */
56
- GovernedFungible: { transferable: true, splittable: true, combinable: true, expirable: false, governable: true },
74
+ GovernedFungible: {
75
+ transferable: true,
76
+ splittable: true,
77
+ combinable: true,
78
+ expirable: false,
79
+ governable: true,
80
+ },
57
81
  };
58
82
  /** Publish an asset policy package version. asset-model.md §7. */
59
83
  function createAssetPolicyPayload(params) {
@@ -125,19 +149,19 @@ function createAuthorizeComposePayload(params) {
125
149
  * a custody Transfer into `AssetHolder.Fiber(escrow)`; release/liquidation is a Transfer out
126
150
  * driven by the loan fiber's REPAID / LIQUIDATED transition (`_transferAsset`).
127
151
  */
128
- function collateralPolicy(name = "collateral-vault-v1.asset", version = "1.0.0") {
152
+ function collateralPolicy(name = 'collateral-vault-v1.asset', version = '1.0.0') {
129
153
  return {
130
154
  name,
131
155
  version,
132
156
  behavior: { transferable: true, splittable: false, combinable: false, expirable: false, governable: true },
133
157
  supply: { maxSupply: null, mintPolicy: null, burnPolicy: null, decimals: 0 },
134
158
  morphisms: {
135
- Transfer: { visibility: "Governed" },
136
- Burn: { visibility: "Disabled" },
137
- Compose: { visibility: "Disabled" },
159
+ Transfer: { visibility: 'Governed' },
160
+ Burn: { visibility: 'Disabled' },
161
+ Compose: { visibility: 'Disabled' },
138
162
  },
139
163
  stateShape: {},
140
- metadata: { family: "lending", role: "collateral" },
164
+ metadata: { family: 'lending', role: 'collateral' },
141
165
  };
142
166
  }
143
167
  /**
@@ -148,7 +172,7 @@ function collateralPolicy(name = "collateral-vault-v1.asset", version = "1.0.0")
148
172
  * @param mintGuard the origination guard (see `buildOriginationGuard`) — a `groth16_verify`
149
173
  * expression bound to the pinned public lending rule.
150
174
  */
151
- function debtPolicy(mintGuard, name = "loan-debt-v1.asset", version = "1.0.0") {
175
+ function debtPolicy(mintGuard, name = 'loan-debt-v1.asset', version = '1.0.0') {
152
176
  return {
153
177
  name,
154
178
  version,
@@ -159,15 +183,15 @@ function debtPolicy(mintGuard, name = "loan-debt-v1.asset", version = "1.0.0") {
159
183
  mintPolicy: mintGuard,
160
184
  // Repayment burns the debt; only the holder (borrower) may burn theirs. The asset context has
161
185
  // no `event` key — bind to the verified `signers` (chain-derived from the op's proofs).
162
- burnPolicy: { in: [{ var: "holder.Wallet.address" }, { var: "signers" }] },
186
+ burnPolicy: { in: [{ var: 'holder.Wallet.address' }, { var: 'signers' }] },
163
187
  decimals: 2,
164
188
  },
165
189
  morphisms: {
166
- Transfer: { visibility: "Public" },
167
- Burn: { visibility: "Public" },
190
+ Transfer: { visibility: 'Public' },
191
+ Burn: { visibility: 'Public' },
168
192
  },
169
193
  stateShape: {},
170
- metadata: { family: "lending", role: "debt" },
194
+ metadata: { family: 'lending', role: 'debt' },
171
195
  };
172
196
  }
173
197
  // ---------------------------------------------------------------------------
@@ -181,7 +205,7 @@ function debtPolicy(mintGuard, name = "loan-debt-v1.asset", version = "1.0.0") {
181
205
  function lockCollateralOp(args) {
182
206
  return createApplyMorphismPayload({
183
207
  assetId: args.collateralAssetId,
184
- kind: "Transfer",
208
+ kind: 'Transfer',
185
209
  recipient: (0, exports.fiberHolder)(args.escrowFiberId),
186
210
  targetSequenceNumber: args.targetSequenceNumber,
187
211
  });
@@ -203,7 +227,7 @@ function mintPrincipalOp(args) {
203
227
  function repayBurnOp(args) {
204
228
  return createApplyMorphismPayload({
205
229
  assetId: args.debtAssetId,
206
- kind: "Burn",
230
+ kind: 'Burn',
207
231
  targetSequenceNumber: args.targetSequenceNumber,
208
232
  });
209
233
  }
@@ -216,7 +240,7 @@ function repayBurnOp(args) {
216
240
  function settleCollateralOp(args) {
217
241
  return createApplyMorphismPayload({
218
242
  assetId: args.collateralAssetId,
219
- kind: "Transfer",
243
+ kind: 'Transfer',
220
244
  recipient: (0, exports.walletHolder)(args.recipient),
221
245
  targetSequenceNumber: args.targetSequenceNumber,
222
246
  });
@@ -45,8 +45,8 @@ function reputationScore(attestations, config = index_js_1.DEFAULT_REPUTATION_CO
45
45
  */
46
46
  function reputationCreditRule(params) {
47
47
  const base = (0, eligibility_js_1.lendingRule)(params); // coverage, or {and:[coverage, creditScore floor]}
48
- const subjectBound = { "===": [{ var: "subject" }, params.borrowerId] };
49
- const clauses = "and" in base ? base.and : [base];
48
+ const subjectBound = { '===': [{ var: 'subject' }, params.borrowerId] };
49
+ const clauses = 'and' in base ? base.and : [base];
50
50
  return { and: [...clauses, subjectBound] };
51
51
  }
52
52
  /**
@@ -80,8 +80,8 @@ function reputationAuthorityClause(authorityPubKey) {
80
80
  return {
81
81
  schnorr_verify: [
82
82
  authorityPubKey, // the reputation authority's public key — PINNED literal, not witness-supplied
83
- { var: "scoreCommit" }, // the signed message: a commitment over (subject, creditScore)
84
- { var: "repSig" }, // the authority's signature over scoreCommit
83
+ { var: 'scoreCommit' }, // the signed message: a commitment over (subject, creditScore)
84
+ { var: 'repSig' }, // the authority's signature over scoreCommit
85
85
  ],
86
86
  };
87
87
  }
@@ -29,19 +29,13 @@ const index_js_1 = require("../../zk/index.js");
29
29
  */
30
30
  function lendingRule(params) {
31
31
  const coverage = {
32
- ">=": [
33
- { "*": [{ var: "collateralValue" }, 100] },
34
- params.loanAmount * params.collateralRatioPct,
35
- ],
32
+ '>=': [{ '*': [{ var: 'collateralValue' }, 100] }, params.loanAmount * params.collateralRatioPct],
36
33
  };
37
34
  if (params.minCreditScore === undefined) {
38
35
  return coverage;
39
36
  }
40
37
  return {
41
- and: [
42
- coverage,
43
- { ">=": [{ var: "creditScore" }, params.minCreditScore] },
44
- ],
38
+ and: [coverage, { '>=': [{ var: 'creditScore' }, params.minCreditScore] }],
45
39
  };
46
40
  }
47
41
  /**
@@ -76,32 +70,22 @@ function pinLendingRule(params, vkey) {
76
70
  * policy uses it directly as the proof-gated `mintPolicy`.
77
71
  */
78
72
  function buildOriginationGuard(refs = {}) {
79
- const vkeyVar = refs.vkeyVar ?? "state.lendingRuleVKey";
80
- const logicHashVar = refs.logicHashVar ?? "state.lendingRuleLogicHash";
81
- const keccakTrueVar = refs.keccakTrueVar ?? "state.keccakTrue";
73
+ const vkeyVar = refs.vkeyVar ?? 'state.lendingRuleVKey';
74
+ const logicHashVar = refs.logicHashVar ?? 'state.lendingRuleLogicHash';
75
+ const keccakTrueVar = refs.keccakTrueVar ?? 'state.keccakTrue';
82
76
  return {
83
77
  and: [
84
78
  {
85
- groth16_verify: [
86
- { var: vkeyVar },
87
- { var: "witness.publicValues" },
88
- { var: "witness.proof" },
89
- ],
79
+ groth16_verify: [{ var: vkeyVar }, { var: 'witness.publicValues' }, { var: 'witness.proof' }],
90
80
  },
91
81
  {
92
- "===": [
93
- { cat: ["0x", { substr: [{ var: "witness.publicValues" }, 2, 64] }] },
94
- { var: logicHashVar },
95
- ],
82
+ '===': [{ cat: ['0x', { substr: [{ var: 'witness.publicValues' }, 2, 64] }] }, { var: logicHashVar }],
96
83
  },
97
84
  {
98
- "===": [
99
- { cat: ["0x", { substr: [{ var: "witness.publicValues" }, 130, 64] }] },
100
- { var: keccakTrueVar },
101
- ],
85
+ '===': [{ cat: ['0x', { substr: [{ var: 'witness.publicValues' }, 130, 64] }] }, { var: keccakTrueVar }],
102
86
  },
103
87
  {
104
- "===": [{ substr: [{ var: "witness.publicValues" }, 256, 2] }, "01"],
88
+ '===': [{ substr: [{ var: 'witness.publicValues' }, 256, 2] }, '01'],
105
89
  },
106
90
  ],
107
91
  };
@@ -48,7 +48,7 @@ exports.LENDING_DEFINITIONS = {
48
48
  * Get a lending state machine definition by type.
49
49
  * @param type - 'zkLoan' (default: 'zkLoan')
50
50
  */
51
- function getLendingDefinition(type = "zkLoan") {
51
+ function getLendingDefinition(type = 'zkLoan') {
52
52
  return exports.LENDING_DEFINITIONS[type];
53
53
  }
54
54
  // ---------------------------------------------------------------------------