@xyo-network/chain-sdk 5.0.4 → 5.1.1

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 (305) hide show
  1. package/dist/browser/index.d.ts +1 -0
  2. package/dist/browser/index.d.ts.map +1 -1
  3. package/dist/browser/index.mjs +1 -0
  4. package/dist/browser/index.mjs.map +2 -2
  5. package/dist/browser/modules/analyze/ChainHeadSelector.d.ts +40 -0
  6. package/dist/browser/modules/analyze/ChainHeadSelector.d.ts.map +1 -1
  7. package/dist/browser/modules/analyze/admission.d.ts +65 -0
  8. package/dist/browser/modules/analyze/admission.d.ts.map +1 -0
  9. package/dist/browser/modules/analyze/index.d.ts +1 -0
  10. package/dist/browser/modules/analyze/index.d.ts.map +1 -1
  11. package/dist/browser/modules/protocol/block/BuildBlockOptions.d.ts +8 -0
  12. package/dist/browser/modules/protocol/block/BuildBlockOptions.d.ts.map +1 -1
  13. package/dist/browser/modules/protocol/block/buildBlock.d.ts.map +1 -1
  14. package/dist/browser/modules/protocol/block/buildNextBlock.d.ts +2 -1
  15. package/dist/browser/modules/protocol/block/buildNextBlock.d.ts.map +1 -1
  16. package/dist/browser/modules/services/implementation/processPendingBlocks.d.ts +9 -1
  17. package/dist/browser/modules/services/implementation/processPendingBlocks.d.ts.map +1 -1
  18. package/dist/browser/modules/services/simple/block/runner/SimpleBlockRunner.d.ts +34 -1
  19. package/dist/browser/modules/services/simple/block/runner/SimpleBlockRunner.d.ts.map +1 -1
  20. package/dist/browser/modules/services/simple/block/runner/index.d.ts +1 -0
  21. package/dist/browser/modules/services/simple/block/runner/index.d.ts.map +1 -1
  22. package/dist/browser/modules/services/simple/block/runner/selectSupersededCandidate.d.ts +22 -0
  23. package/dist/browser/modules/services/simple/block/runner/selectSupersededCandidate.d.ts.map +1 -0
  24. package/dist/browser/modules/slashing/detect/DetectedOffense.d.ts +27 -0
  25. package/dist/browser/modules/slashing/detect/DetectedOffense.d.ts.map +1 -0
  26. package/dist/browser/modules/slashing/detect/candidatePairs.d.ts +44 -0
  27. package/dist/browser/modules/slashing/detect/candidatePairs.d.ts.map +1 -0
  28. package/dist/browser/modules/slashing/detect/index.d.ts +5 -0
  29. package/dist/browser/modules/slashing/detect/index.d.ts.map +1 -0
  30. package/dist/browser/modules/slashing/detect/offenseGate.d.ts +18 -0
  31. package/dist/browser/modules/slashing/detect/offenseGate.d.ts.map +1 -0
  32. package/dist/browser/modules/slashing/detect/suppression.d.ts +23 -0
  33. package/dist/browser/modules/slashing/detect/suppression.d.ts.map +1 -0
  34. package/dist/browser/modules/slashing/eligibility/evaluateProducerEligibility.d.ts +71 -0
  35. package/dist/browser/modules/slashing/eligibility/evaluateProducerEligibility.d.ts.map +1 -0
  36. package/dist/browser/modules/slashing/eligibility/index.d.ts +2 -0
  37. package/dist/browser/modules/slashing/eligibility/index.d.ts.map +1 -0
  38. package/dist/browser/modules/slashing/index/SlashIndexStore.d.ts +22 -0
  39. package/dist/browser/modules/slashing/index/SlashIndexStore.d.ts.map +1 -0
  40. package/dist/browser/modules/slashing/index/foldSlashIndex.d.ts +56 -0
  41. package/dist/browser/modules/slashing/index/foldSlashIndex.d.ts.map +1 -0
  42. package/dist/browser/modules/slashing/index/index.d.ts +3 -0
  43. package/dist/browser/modules/slashing/index/index.d.ts.map +1 -0
  44. package/dist/browser/modules/slashing/index.d.ts +6 -0
  45. package/dist/browser/modules/slashing/index.d.ts.map +1 -0
  46. package/dist/browser/modules/slashing/model/OffenseProcedure.d.ts +28 -0
  47. package/dist/browser/modules/slashing/model/OffenseProcedure.d.ts.map +1 -0
  48. package/dist/browser/modules/slashing/model/OffenseVerificationContext.d.ts +88 -0
  49. package/dist/browser/modules/slashing/model/OffenseVerificationContext.d.ts.map +1 -0
  50. package/dist/browser/modules/slashing/model/SlashHistoryReader.d.ts +34 -0
  51. package/dist/browser/modules/slashing/model/SlashHistoryReader.d.ts.map +1 -0
  52. package/dist/browser/modules/slashing/model/VerificationOutcome.d.ts +39 -0
  53. package/dist/browser/modules/slashing/model/VerificationOutcome.d.ts.map +1 -0
  54. package/dist/browser/modules/slashing/model/index.d.ts +6 -0
  55. package/dist/browser/modules/slashing/model/index.d.ts.map +1 -0
  56. package/dist/browser/modules/slashing/model/offenseKey.d.ts +42 -0
  57. package/dist/browser/modules/slashing/model/offenseKey.d.ts.map +1 -0
  58. package/dist/browser/modules/slashing/verify/index.d.ts +10 -0
  59. package/dist/browser/modules/slashing/verify/index.d.ts.map +1 -0
  60. package/dist/browser/modules/slashing/verify/preamble.d.ts +63 -0
  61. package/dist/browser/modules/slashing/verify/preamble.d.ts.map +1 -0
  62. package/dist/browser/modules/slashing/verify/verifyEquivocation.d.ts +19 -0
  63. package/dist/browser/modules/slashing/verify/verifyEquivocation.d.ts.map +1 -0
  64. package/dist/browser/modules/slashing/verify/verifyFalseAnchor.d.ts +15 -0
  65. package/dist/browser/modules/slashing/verify/verifyFalseAnchor.d.ts.map +1 -0
  66. package/dist/browser/modules/slashing/verify/verifyFalseAttestation.d.ts +22 -0
  67. package/dist/browser/modules/slashing/verify/verifyFalseAttestation.d.ts.map +1 -0
  68. package/dist/browser/modules/slashing/verify/verifyIneligibleProduction.d.ts +18 -0
  69. package/dist/browser/modules/slashing/verify/verifyIneligibleProduction.d.ts.map +1 -0
  70. package/dist/browser/modules/slashing/verify/verifyInvalidBlock.d.ts +18 -0
  71. package/dist/browser/modules/slashing/verify/verifyInvalidBlock.d.ts.map +1 -0
  72. package/dist/browser/modules/slashing/verify/verifyInvalidSlashRequest.d.ts +11 -0
  73. package/dist/browser/modules/slashing/verify/verifyInvalidSlashRequest.d.ts.map +1 -0
  74. package/dist/browser/modules/slashing/verify/verifyOffense.d.ts +29 -0
  75. package/dist/browser/modules/slashing/verify/verifyOffense.d.ts.map +1 -0
  76. package/dist/browser/modules/slashing/verify/verifyRewardOvermint.d.ts +23 -0
  77. package/dist/browser/modules/slashing/verify/verifyRewardOvermint.d.ts.map +1 -0
  78. package/dist/browser/modules/validation/elevatedPayload/lib/findElevatingTransaction.d.ts +14 -0
  79. package/dist/browser/modules/validation/elevatedPayload/lib/findElevatingTransaction.d.ts.map +1 -0
  80. package/dist/browser/modules/validation/elevatedPayload/lib/index.d.ts +2 -0
  81. package/dist/browser/modules/validation/elevatedPayload/lib/index.d.ts.map +1 -1
  82. package/dist/browser/modules/validation/elevatedPayload/lib/validateSlashPayloadInBlock.d.ts +33 -0
  83. package/dist/browser/modules/validation/elevatedPayload/lib/validateSlashPayloadInBlock.d.ts.map +1 -0
  84. package/dist/browser/modules/validation/elevatedPayload/payloads/index.d.ts +5 -0
  85. package/dist/browser/modules/validation/elevatedPayload/payloads/index.d.ts.map +1 -1
  86. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashAdjudicationInBlock.d.ts +14 -0
  87. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashAdjudicationInBlock.d.ts.map +1 -0
  88. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashChallengeInBlock.d.ts +10 -0
  89. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashChallengeInBlock.d.ts.map +1 -0
  90. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashCommitInBlock.d.ts +10 -0
  91. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashCommitInBlock.d.ts.map +1 -0
  92. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashEvidenceInBlock.d.ts +10 -0
  93. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashEvidenceInBlock.d.ts.map +1 -0
  94. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashRequestInBlock.d.ts +14 -0
  95. package/dist/browser/modules/validation/elevatedPayload/payloads/validateSlashRequestInBlock.d.ts.map +1 -0
  96. package/dist/browser/modules/validation/elevatedPayload/validatePayloadInBlock.d.ts.map +1 -1
  97. package/dist/browser/slashing.d.ts +2 -0
  98. package/dist/browser/slashing.d.ts.map +1 -0
  99. package/dist/neutral/analyze.mjs +85 -3
  100. package/dist/neutral/analyze.mjs.map +3 -3
  101. package/dist/neutral/index.d.ts +1 -0
  102. package/dist/neutral/index.d.ts.map +1 -1
  103. package/dist/neutral/index.mjs +1 -0
  104. package/dist/neutral/index.mjs.map +2 -2
  105. package/dist/neutral/modules/analyze/ChainHeadSelector.d.ts +40 -0
  106. package/dist/neutral/modules/analyze/ChainHeadSelector.d.ts.map +1 -1
  107. package/dist/neutral/modules/analyze/admission.d.ts +65 -0
  108. package/dist/neutral/modules/analyze/admission.d.ts.map +1 -0
  109. package/dist/neutral/modules/analyze/index.d.ts +1 -0
  110. package/dist/neutral/modules/analyze/index.d.ts.map +1 -1
  111. package/dist/neutral/modules/protocol/block/BuildBlockOptions.d.ts +8 -0
  112. package/dist/neutral/modules/protocol/block/BuildBlockOptions.d.ts.map +1 -1
  113. package/dist/neutral/modules/protocol/block/buildBlock.d.ts.map +1 -1
  114. package/dist/neutral/modules/protocol/block/buildNextBlock.d.ts +2 -1
  115. package/dist/neutral/modules/protocol/block/buildNextBlock.d.ts.map +1 -1
  116. package/dist/neutral/modules/services/implementation/processPendingBlocks.d.ts +9 -1
  117. package/dist/neutral/modules/services/implementation/processPendingBlocks.d.ts.map +1 -1
  118. package/dist/neutral/modules/services/simple/block/runner/SimpleBlockRunner.d.ts +34 -1
  119. package/dist/neutral/modules/services/simple/block/runner/SimpleBlockRunner.d.ts.map +1 -1
  120. package/dist/neutral/modules/services/simple/block/runner/index.d.ts +1 -0
  121. package/dist/neutral/modules/services/simple/block/runner/index.d.ts.map +1 -1
  122. package/dist/neutral/modules/services/simple/block/runner/selectSupersededCandidate.d.ts +22 -0
  123. package/dist/neutral/modules/services/simple/block/runner/selectSupersededCandidate.d.ts.map +1 -0
  124. package/dist/neutral/modules/slashing/detect/DetectedOffense.d.ts +27 -0
  125. package/dist/neutral/modules/slashing/detect/DetectedOffense.d.ts.map +1 -0
  126. package/dist/neutral/modules/slashing/detect/candidatePairs.d.ts +44 -0
  127. package/dist/neutral/modules/slashing/detect/candidatePairs.d.ts.map +1 -0
  128. package/dist/neutral/modules/slashing/detect/index.d.ts +5 -0
  129. package/dist/neutral/modules/slashing/detect/index.d.ts.map +1 -0
  130. package/dist/neutral/modules/slashing/detect/offenseGate.d.ts +18 -0
  131. package/dist/neutral/modules/slashing/detect/offenseGate.d.ts.map +1 -0
  132. package/dist/neutral/modules/slashing/detect/suppression.d.ts +23 -0
  133. package/dist/neutral/modules/slashing/detect/suppression.d.ts.map +1 -0
  134. package/dist/neutral/modules/slashing/eligibility/evaluateProducerEligibility.d.ts +71 -0
  135. package/dist/neutral/modules/slashing/eligibility/evaluateProducerEligibility.d.ts.map +1 -0
  136. package/dist/neutral/modules/slashing/eligibility/index.d.ts +2 -0
  137. package/dist/neutral/modules/slashing/eligibility/index.d.ts.map +1 -0
  138. package/dist/neutral/modules/slashing/index/SlashIndexStore.d.ts +22 -0
  139. package/dist/neutral/modules/slashing/index/SlashIndexStore.d.ts.map +1 -0
  140. package/dist/neutral/modules/slashing/index/foldSlashIndex.d.ts +56 -0
  141. package/dist/neutral/modules/slashing/index/foldSlashIndex.d.ts.map +1 -0
  142. package/dist/neutral/modules/slashing/index/index.d.ts +3 -0
  143. package/dist/neutral/modules/slashing/index/index.d.ts.map +1 -0
  144. package/dist/neutral/modules/slashing/index.d.ts +6 -0
  145. package/dist/neutral/modules/slashing/index.d.ts.map +1 -0
  146. package/dist/neutral/modules/slashing/model/OffenseProcedure.d.ts +28 -0
  147. package/dist/neutral/modules/slashing/model/OffenseProcedure.d.ts.map +1 -0
  148. package/dist/neutral/modules/slashing/model/OffenseVerificationContext.d.ts +88 -0
  149. package/dist/neutral/modules/slashing/model/OffenseVerificationContext.d.ts.map +1 -0
  150. package/dist/neutral/modules/slashing/model/SlashHistoryReader.d.ts +34 -0
  151. package/dist/neutral/modules/slashing/model/SlashHistoryReader.d.ts.map +1 -0
  152. package/dist/neutral/modules/slashing/model/VerificationOutcome.d.ts +39 -0
  153. package/dist/neutral/modules/slashing/model/VerificationOutcome.d.ts.map +1 -0
  154. package/dist/neutral/modules/slashing/model/index.d.ts +6 -0
  155. package/dist/neutral/modules/slashing/model/index.d.ts.map +1 -0
  156. package/dist/neutral/modules/slashing/model/offenseKey.d.ts +42 -0
  157. package/dist/neutral/modules/slashing/model/offenseKey.d.ts.map +1 -0
  158. package/dist/neutral/modules/slashing/verify/index.d.ts +10 -0
  159. package/dist/neutral/modules/slashing/verify/index.d.ts.map +1 -0
  160. package/dist/neutral/modules/slashing/verify/preamble.d.ts +63 -0
  161. package/dist/neutral/modules/slashing/verify/preamble.d.ts.map +1 -0
  162. package/dist/neutral/modules/slashing/verify/verifyEquivocation.d.ts +19 -0
  163. package/dist/neutral/modules/slashing/verify/verifyEquivocation.d.ts.map +1 -0
  164. package/dist/neutral/modules/slashing/verify/verifyFalseAnchor.d.ts +15 -0
  165. package/dist/neutral/modules/slashing/verify/verifyFalseAnchor.d.ts.map +1 -0
  166. package/dist/neutral/modules/slashing/verify/verifyFalseAttestation.d.ts +22 -0
  167. package/dist/neutral/modules/slashing/verify/verifyFalseAttestation.d.ts.map +1 -0
  168. package/dist/neutral/modules/slashing/verify/verifyIneligibleProduction.d.ts +18 -0
  169. package/dist/neutral/modules/slashing/verify/verifyIneligibleProduction.d.ts.map +1 -0
  170. package/dist/neutral/modules/slashing/verify/verifyInvalidBlock.d.ts +18 -0
  171. package/dist/neutral/modules/slashing/verify/verifyInvalidBlock.d.ts.map +1 -0
  172. package/dist/neutral/modules/slashing/verify/verifyInvalidSlashRequest.d.ts +11 -0
  173. package/dist/neutral/modules/slashing/verify/verifyInvalidSlashRequest.d.ts.map +1 -0
  174. package/dist/neutral/modules/slashing/verify/verifyOffense.d.ts +29 -0
  175. package/dist/neutral/modules/slashing/verify/verifyOffense.d.ts.map +1 -0
  176. package/dist/neutral/modules/slashing/verify/verifyRewardOvermint.d.ts +23 -0
  177. package/dist/neutral/modules/slashing/verify/verifyRewardOvermint.d.ts.map +1 -0
  178. package/dist/neutral/modules/validation/elevatedPayload/lib/findElevatingTransaction.d.ts +14 -0
  179. package/dist/neutral/modules/validation/elevatedPayload/lib/findElevatingTransaction.d.ts.map +1 -0
  180. package/dist/neutral/modules/validation/elevatedPayload/lib/index.d.ts +2 -0
  181. package/dist/neutral/modules/validation/elevatedPayload/lib/index.d.ts.map +1 -1
  182. package/dist/neutral/modules/validation/elevatedPayload/lib/validateSlashPayloadInBlock.d.ts +33 -0
  183. package/dist/neutral/modules/validation/elevatedPayload/lib/validateSlashPayloadInBlock.d.ts.map +1 -0
  184. package/dist/neutral/modules/validation/elevatedPayload/payloads/index.d.ts +5 -0
  185. package/dist/neutral/modules/validation/elevatedPayload/payloads/index.d.ts.map +1 -1
  186. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashAdjudicationInBlock.d.ts +14 -0
  187. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashAdjudicationInBlock.d.ts.map +1 -0
  188. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashChallengeInBlock.d.ts +10 -0
  189. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashChallengeInBlock.d.ts.map +1 -0
  190. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashCommitInBlock.d.ts +10 -0
  191. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashCommitInBlock.d.ts.map +1 -0
  192. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashEvidenceInBlock.d.ts +10 -0
  193. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashEvidenceInBlock.d.ts.map +1 -0
  194. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashRequestInBlock.d.ts +14 -0
  195. package/dist/neutral/modules/validation/elevatedPayload/payloads/validateSlashRequestInBlock.d.ts.map +1 -0
  196. package/dist/neutral/modules/validation/elevatedPayload/validatePayloadInBlock.d.ts.map +1 -1
  197. package/dist/neutral/protocol.mjs +8 -3
  198. package/dist/neutral/protocol.mjs.map +2 -2
  199. package/dist/neutral/services.mjs +77 -7
  200. package/dist/neutral/services.mjs.map +4 -4
  201. package/dist/neutral/slashing.d.ts +2 -0
  202. package/dist/neutral/slashing.d.ts.map +1 -0
  203. package/dist/neutral/slashing.mjs +824 -0
  204. package/dist/neutral/slashing.mjs.map +7 -0
  205. package/dist/neutral/validation.mjs +274 -43
  206. package/dist/neutral/validation.mjs.map +4 -4
  207. package/dist/node/index.d.ts +1 -0
  208. package/dist/node/index.d.ts.map +1 -1
  209. package/dist/node/index.mjs +1 -0
  210. package/dist/node/index.mjs.map +2 -2
  211. package/dist/node/modules/analyze/ChainHeadSelector.d.ts +40 -0
  212. package/dist/node/modules/analyze/ChainHeadSelector.d.ts.map +1 -1
  213. package/dist/node/modules/analyze/admission.d.ts +65 -0
  214. package/dist/node/modules/analyze/admission.d.ts.map +1 -0
  215. package/dist/node/modules/analyze/index.d.ts +1 -0
  216. package/dist/node/modules/analyze/index.d.ts.map +1 -1
  217. package/dist/node/modules/protocol/block/BuildBlockOptions.d.ts +8 -0
  218. package/dist/node/modules/protocol/block/BuildBlockOptions.d.ts.map +1 -1
  219. package/dist/node/modules/protocol/block/buildBlock.d.ts.map +1 -1
  220. package/dist/node/modules/protocol/block/buildNextBlock.d.ts +2 -1
  221. package/dist/node/modules/protocol/block/buildNextBlock.d.ts.map +1 -1
  222. package/dist/node/modules/services/implementation/processPendingBlocks.d.ts +9 -1
  223. package/dist/node/modules/services/implementation/processPendingBlocks.d.ts.map +1 -1
  224. package/dist/node/modules/services/simple/block/runner/SimpleBlockRunner.d.ts +34 -1
  225. package/dist/node/modules/services/simple/block/runner/SimpleBlockRunner.d.ts.map +1 -1
  226. package/dist/node/modules/services/simple/block/runner/index.d.ts +1 -0
  227. package/dist/node/modules/services/simple/block/runner/index.d.ts.map +1 -1
  228. package/dist/node/modules/services/simple/block/runner/selectSupersededCandidate.d.ts +22 -0
  229. package/dist/node/modules/services/simple/block/runner/selectSupersededCandidate.d.ts.map +1 -0
  230. package/dist/node/modules/slashing/detect/DetectedOffense.d.ts +27 -0
  231. package/dist/node/modules/slashing/detect/DetectedOffense.d.ts.map +1 -0
  232. package/dist/node/modules/slashing/detect/candidatePairs.d.ts +44 -0
  233. package/dist/node/modules/slashing/detect/candidatePairs.d.ts.map +1 -0
  234. package/dist/node/modules/slashing/detect/index.d.ts +5 -0
  235. package/dist/node/modules/slashing/detect/index.d.ts.map +1 -0
  236. package/dist/node/modules/slashing/detect/offenseGate.d.ts +18 -0
  237. package/dist/node/modules/slashing/detect/offenseGate.d.ts.map +1 -0
  238. package/dist/node/modules/slashing/detect/suppression.d.ts +23 -0
  239. package/dist/node/modules/slashing/detect/suppression.d.ts.map +1 -0
  240. package/dist/node/modules/slashing/eligibility/evaluateProducerEligibility.d.ts +71 -0
  241. package/dist/node/modules/slashing/eligibility/evaluateProducerEligibility.d.ts.map +1 -0
  242. package/dist/node/modules/slashing/eligibility/index.d.ts +2 -0
  243. package/dist/node/modules/slashing/eligibility/index.d.ts.map +1 -0
  244. package/dist/node/modules/slashing/index/SlashIndexStore.d.ts +22 -0
  245. package/dist/node/modules/slashing/index/SlashIndexStore.d.ts.map +1 -0
  246. package/dist/node/modules/slashing/index/foldSlashIndex.d.ts +56 -0
  247. package/dist/node/modules/slashing/index/foldSlashIndex.d.ts.map +1 -0
  248. package/dist/node/modules/slashing/index/index.d.ts +3 -0
  249. package/dist/node/modules/slashing/index/index.d.ts.map +1 -0
  250. package/dist/node/modules/slashing/index.d.ts +6 -0
  251. package/dist/node/modules/slashing/index.d.ts.map +1 -0
  252. package/dist/node/modules/slashing/model/OffenseProcedure.d.ts +28 -0
  253. package/dist/node/modules/slashing/model/OffenseProcedure.d.ts.map +1 -0
  254. package/dist/node/modules/slashing/model/OffenseVerificationContext.d.ts +88 -0
  255. package/dist/node/modules/slashing/model/OffenseVerificationContext.d.ts.map +1 -0
  256. package/dist/node/modules/slashing/model/SlashHistoryReader.d.ts +34 -0
  257. package/dist/node/modules/slashing/model/SlashHistoryReader.d.ts.map +1 -0
  258. package/dist/node/modules/slashing/model/VerificationOutcome.d.ts +39 -0
  259. package/dist/node/modules/slashing/model/VerificationOutcome.d.ts.map +1 -0
  260. package/dist/node/modules/slashing/model/index.d.ts +6 -0
  261. package/dist/node/modules/slashing/model/index.d.ts.map +1 -0
  262. package/dist/node/modules/slashing/model/offenseKey.d.ts +42 -0
  263. package/dist/node/modules/slashing/model/offenseKey.d.ts.map +1 -0
  264. package/dist/node/modules/slashing/verify/index.d.ts +10 -0
  265. package/dist/node/modules/slashing/verify/index.d.ts.map +1 -0
  266. package/dist/node/modules/slashing/verify/preamble.d.ts +63 -0
  267. package/dist/node/modules/slashing/verify/preamble.d.ts.map +1 -0
  268. package/dist/node/modules/slashing/verify/verifyEquivocation.d.ts +19 -0
  269. package/dist/node/modules/slashing/verify/verifyEquivocation.d.ts.map +1 -0
  270. package/dist/node/modules/slashing/verify/verifyFalseAnchor.d.ts +15 -0
  271. package/dist/node/modules/slashing/verify/verifyFalseAnchor.d.ts.map +1 -0
  272. package/dist/node/modules/slashing/verify/verifyFalseAttestation.d.ts +22 -0
  273. package/dist/node/modules/slashing/verify/verifyFalseAttestation.d.ts.map +1 -0
  274. package/dist/node/modules/slashing/verify/verifyIneligibleProduction.d.ts +18 -0
  275. package/dist/node/modules/slashing/verify/verifyIneligibleProduction.d.ts.map +1 -0
  276. package/dist/node/modules/slashing/verify/verifyInvalidBlock.d.ts +18 -0
  277. package/dist/node/modules/slashing/verify/verifyInvalidBlock.d.ts.map +1 -0
  278. package/dist/node/modules/slashing/verify/verifyInvalidSlashRequest.d.ts +11 -0
  279. package/dist/node/modules/slashing/verify/verifyInvalidSlashRequest.d.ts.map +1 -0
  280. package/dist/node/modules/slashing/verify/verifyOffense.d.ts +29 -0
  281. package/dist/node/modules/slashing/verify/verifyOffense.d.ts.map +1 -0
  282. package/dist/node/modules/slashing/verify/verifyRewardOvermint.d.ts +23 -0
  283. package/dist/node/modules/slashing/verify/verifyRewardOvermint.d.ts.map +1 -0
  284. package/dist/node/modules/validation/elevatedPayload/lib/findElevatingTransaction.d.ts +14 -0
  285. package/dist/node/modules/validation/elevatedPayload/lib/findElevatingTransaction.d.ts.map +1 -0
  286. package/dist/node/modules/validation/elevatedPayload/lib/index.d.ts +2 -0
  287. package/dist/node/modules/validation/elevatedPayload/lib/index.d.ts.map +1 -1
  288. package/dist/node/modules/validation/elevatedPayload/lib/validateSlashPayloadInBlock.d.ts +33 -0
  289. package/dist/node/modules/validation/elevatedPayload/lib/validateSlashPayloadInBlock.d.ts.map +1 -0
  290. package/dist/node/modules/validation/elevatedPayload/payloads/index.d.ts +5 -0
  291. package/dist/node/modules/validation/elevatedPayload/payloads/index.d.ts.map +1 -1
  292. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashAdjudicationInBlock.d.ts +14 -0
  293. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashAdjudicationInBlock.d.ts.map +1 -0
  294. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashChallengeInBlock.d.ts +10 -0
  295. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashChallengeInBlock.d.ts.map +1 -0
  296. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashCommitInBlock.d.ts +10 -0
  297. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashCommitInBlock.d.ts.map +1 -0
  298. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashEvidenceInBlock.d.ts +10 -0
  299. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashEvidenceInBlock.d.ts.map +1 -0
  300. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashRequestInBlock.d.ts +14 -0
  301. package/dist/node/modules/validation/elevatedPayload/payloads/validateSlashRequestInBlock.d.ts.map +1 -0
  302. package/dist/node/modules/validation/elevatedPayload/validatePayloadInBlock.d.ts.map +1 -1
  303. package/dist/node/slashing.d.ts +2 -0
  304. package/dist/node/slashing.d.ts.map +1 -0
  305. package/package.json +16 -10
@@ -174,15 +174,15 @@ var validateBlock = async (context, block, chainId, additionalValidators = []) =
174
174
  };
175
175
 
176
176
  // src/modules/validation/hydratedBlock/validateHydratedBlock.ts
177
- import { ZERO_HASH as ZERO_HASH19 } from "@ariestools/sdk";
177
+ import { ZERO_HASH as ZERO_HASH24 } from "@ariestools/sdk";
178
178
  import { BoundWitnessReferencesValidator, HydratedBlockValidationError as HydratedBlockValidationError3 } from "@xyo-network/xl1-sdk";
179
179
 
180
180
  // src/modules/validation/hydratedBlock/validators/Payloads.ts
181
- import { ZERO_HASH as ZERO_HASH17 } from "@ariestools/sdk";
181
+ import { ZERO_HASH as ZERO_HASH22 } from "@ariestools/sdk";
182
182
  import { HydratedBlockValidationError } from "@xyo-network/xl1-sdk";
183
183
 
184
184
  // src/modules/validation/elevatedPayload/validatePayloadInBlock.ts
185
- import { ZERO_HASH as ZERO_HASH16 } from "@ariestools/sdk";
185
+ import { ZERO_HASH as ZERO_HASH21 } from "@ariestools/sdk";
186
186
  import { BoundWitnessSchema as BoundWitnessSchema2, SchemaSchema } from "@xyo-network/sdk";
187
187
  import {
188
188
  BridgeDestinationObservationSchema,
@@ -190,11 +190,22 @@ import {
190
190
  BridgeSourceObservationSchema,
191
191
  ChainStakeIntentSchema,
192
192
  HashSchema,
193
- InBlockPayloadValidationError as InBlockPayloadValidationError12,
193
+ InBlockPayloadValidationError as InBlockPayloadValidationError17,
194
+ SlashAdjudicationSchema,
195
+ SlashChallengeSchema,
196
+ SlashCommitSchema,
197
+ SlashEvidenceSchema,
198
+ SlashRequestSchema,
194
199
  TimeSchema,
195
200
  TransferSchema
196
201
  } from "@xyo-network/xl1-sdk";
197
202
 
203
+ // src/modules/validation/elevatedPayload/lib/findElevatingTransaction.ts
204
+ import { isTransactionBoundWitnessWithHashMeta } from "@xyo-network/xl1-sdk";
205
+ function findElevatingTransaction(payload, [, payloads]) {
206
+ return payloads.filter((candidate) => isTransactionBoundWitnessWithHashMeta(candidate)).find((tx) => tx.payload_hashes.includes(payload._hash));
207
+ }
208
+
198
209
  // src/modules/validation/elevatedPayload/lib/isElevatedFromBlock.ts
199
210
  import { isTransactionBoundWitness } from "@xyo-network/xl1-sdk";
200
211
  var isElevatedFromBlock = (payload, [, payloads]) => {
@@ -254,9 +265,34 @@ var validateElevatedFromTransaction = (context, payload, block) => {
254
265
  return errors;
255
266
  };
256
267
 
268
+ // src/modules/validation/elevatedPayload/lib/validateSlashPayloadInBlock.ts
269
+ import { isHashMeta } from "@xyo-network/sdk";
270
+ import { requireRuleActive, resolveRuleParams } from "@xyo-network/xl1-sdk";
271
+ async function validateSlashPayloadInBlock(context, payload, block, identityFunction, fromOf, subject) {
272
+ const height = block[0].block;
273
+ const params = await resolveRuleParams(context, height);
274
+ const gateError = requireRuleActive(params, "slash-payloads", height, subject);
275
+ if (gateError !== void 0) return { errors: [new Error(gateError)], params };
276
+ if (!identityFunction(payload) || !isHashMeta(payload)) {
277
+ return { errors: [new Error(`${subject} failed its identity check`)], params };
278
+ }
279
+ const transaction = findElevatingTransaction(payload, block);
280
+ if (transaction === void 0) {
281
+ return { errors: [new Error(`${subject} must be elevated from a transaction`)], params };
282
+ }
283
+ if (fromOf(payload) !== transaction.from) {
284
+ return { errors: [new Error(`${subject} from must equal elevating transaction from`)], params };
285
+ }
286
+ return {
287
+ errors: [],
288
+ params,
289
+ transaction
290
+ };
291
+ }
292
+
257
293
  // src/modules/validation/elevatedPayload/lib/validateTransactionInBlock.ts
258
294
  import { ZERO_HASH as ZERO_HASH7 } from "@ariestools/sdk";
259
- import { isHashMeta } from "@xyo-network/sdk";
295
+ import { isHashMeta as isHashMeta2 } from "@xyo-network/sdk";
260
296
  import {
261
297
  BoundWitnessSignaturesValidator,
262
298
  InBlockPayloadValidationError as InBlockPayloadValidationError3,
@@ -266,7 +302,7 @@ import {
266
302
  var validateTransactionInBlock = async (context, payload, block) => {
267
303
  const errors = [];
268
304
  try {
269
- if (isTransactionBoundWitness2(payload) && isHashMeta(payload)) {
305
+ if (isTransactionBoundWitness2(payload) && isHashMeta2(payload)) {
270
306
  const txErrors = await validateTransaction({ ...context, chainId: block[0].chain }, [payload, block[1]]);
271
307
  for (const txError of txErrors) {
272
308
  errors.push(new InBlockPayloadValidationError3(
@@ -297,11 +333,11 @@ var validateTransactionInBlock = async (context, payload, block) => {
297
333
  };
298
334
 
299
335
  // src/modules/validation/elevatedPayload/lib/validateTypedPayloadInBlock.ts
300
- import { isHashMeta as isHashMeta2 } from "@xyo-network/sdk";
336
+ import { isHashMeta as isHashMeta3 } from "@xyo-network/sdk";
301
337
  var validateTypedPayloadInBlock = async (context, payload, block, identityFunction) => {
302
338
  const errors = [];
303
339
  try {
304
- if (identityFunction(payload) && isHashMeta2(payload)) {
340
+ if (identityFunction(payload) && isHashMeta3(payload)) {
305
341
  if (isElevatedFromBlock(payload, block)) {
306
342
  errors.push(...await validateElevatedFromBlock(context, payload, block));
307
343
  } else {
@@ -449,19 +485,209 @@ var validateSchemaInBlock = async (context, payload, block) => {
449
485
  return errors;
450
486
  };
451
487
 
452
- // src/modules/validation/elevatedPayload/payloads/validateTimeInBlock.ts
488
+ // src/modules/validation/elevatedPayload/payloads/validateSlashAdjudicationInBlock.ts
453
489
  import { ZERO_HASH as ZERO_HASH14 } from "@ariestools/sdk";
454
- import { InBlockPayloadValidationError as InBlockPayloadValidationError10, isTimePayload } from "@xyo-network/xl1-sdk";
490
+ import { InBlockPayloadValidationError as InBlockPayloadValidationError10, isSlashAdjudication } from "@xyo-network/xl1-sdk";
491
+ var validateSlashAdjudicationInBlock = async (context, payload, block) => {
492
+ const errors = [];
493
+ try {
494
+ const { errors: sharedErrors, params } = await validateSlashPayloadInBlock(context, payload, block, isSlashAdjudication, (adjudication) => adjudication.from, "slash adjudication");
495
+ for (const sharedError of sharedErrors) {
496
+ errors.push(new InBlockPayloadValidationError10(payload._hash, block, payload, sharedError.message, sharedError));
497
+ }
498
+ if (sharedErrors.length === 0 && isSlashAdjudication(payload) && (params?.arbiter === void 0 || payload.from !== params.arbiter)) {
499
+ errors.push(new InBlockPayloadValidationError10(payload._hash, block, payload, "slash adjudication from must equal the register arbiter"));
500
+ }
501
+ } catch (ex) {
502
+ errors.push(new InBlockPayloadValidationError10(
503
+ block[0]?._hash ?? ZERO_HASH14,
504
+ block,
505
+ payload,
506
+ `validation excepted: ${String(ex)}`,
507
+ ex
508
+ ));
509
+ }
510
+ return errors;
511
+ };
512
+
513
+ // src/modules/validation/elevatedPayload/payloads/validateSlashChallengeInBlock.ts
514
+ import { ZERO_HASH as ZERO_HASH15 } from "@ariestools/sdk";
515
+ import { InBlockPayloadValidationError as InBlockPayloadValidationError11, isSlashChallenge } from "@xyo-network/xl1-sdk";
516
+ var validateSlashChallengeInBlock = async (context, payload, block) => {
517
+ const errors = [];
518
+ try {
519
+ const { errors: sharedErrors } = await validateSlashPayloadInBlock(context, payload, block, isSlashChallenge, (subject) => subject.from, "slash challenge");
520
+ for (const sharedError of sharedErrors) {
521
+ errors.push(new InBlockPayloadValidationError11(payload._hash, block, payload, sharedError.message, sharedError));
522
+ }
523
+ } catch (ex) {
524
+ errors.push(new InBlockPayloadValidationError11(
525
+ block[0]?._hash ?? ZERO_HASH15,
526
+ block,
527
+ payload,
528
+ `validation excepted: ${String(ex)}`,
529
+ ex
530
+ ));
531
+ }
532
+ return errors;
533
+ };
534
+
535
+ // src/modules/validation/elevatedPayload/payloads/validateSlashCommitInBlock.ts
536
+ import { ZERO_HASH as ZERO_HASH16 } from "@ariestools/sdk";
537
+ import {
538
+ derivedReceiveAddress,
539
+ InBlockPayloadValidationError as InBlockPayloadValidationError12,
540
+ isRuleActiveAt,
541
+ isSlashCommit,
542
+ isTransferPayload
543
+ } from "@xyo-network/xl1-sdk";
544
+ function toAmount(value) {
545
+ return BigInt(value.startsWith("0x") ? value : `0x${value}`);
546
+ }
547
+ function isDepositRequired(params, height) {
548
+ return isRuleActiveAt(params, "eligibility-admission", height) && !isRuleActiveAt(params, "invalid-slash-request.adjudicable", height);
549
+ }
550
+ function depositedInTransaction(commit, transaction, payloads) {
551
+ const target = derivedReceiveAddress(commit.from, "slash-deposit");
552
+ const inTransaction = new Set(transaction.payload_hashes);
553
+ return payloads.filter((candidate) => inTransaction.has(candidate._hash)).filter((candidate) => isTransferPayload(candidate)).reduce((total, transfer) => total + toAmount(transfer.transfers[target] ?? "0x0"), 0n);
554
+ }
555
+ var validateSlashCommitInBlock = async (context, payload, block) => {
556
+ const errors = [];
557
+ try {
558
+ const {
559
+ errors: sharedErrors,
560
+ params,
561
+ transaction
562
+ } = await validateSlashPayloadInBlock(context, payload, block, isSlashCommit, (commit) => commit.from, "slash commit");
563
+ for (const sharedError of sharedErrors) {
564
+ errors.push(new InBlockPayloadValidationError12(payload._hash, block, payload, sharedError.message, sharedError));
565
+ }
566
+ if (sharedErrors.length > 0 || params === void 0 || transaction === void 0 || !isSlashCommit(payload)) {
567
+ return errors;
568
+ }
569
+ const height = block[0].block;
570
+ if (isDepositRequired(params, height)) {
571
+ const required = toAmount(params.reporterDepositAtto ?? "0x0");
572
+ const deposited = depositedInTransaction(payload, transaction, block[1]);
573
+ if (deposited < required) {
574
+ errors.push(new InBlockPayloadValidationError12(
575
+ payload._hash,
576
+ block,
577
+ payload,
578
+ `slash commit escrows ${deposited} but the register requires ${required}`
579
+ ));
580
+ }
581
+ }
582
+ } catch (ex) {
583
+ errors.push(new InBlockPayloadValidationError12(
584
+ block[0]?._hash ?? ZERO_HASH16,
585
+ block,
586
+ payload,
587
+ `validation excepted: ${String(ex)}`,
588
+ ex
589
+ ));
590
+ }
591
+ return errors;
592
+ };
593
+
594
+ // src/modules/validation/elevatedPayload/payloads/validateSlashEvidenceInBlock.ts
595
+ import { ZERO_HASH as ZERO_HASH17 } from "@ariestools/sdk";
596
+ import { InBlockPayloadValidationError as InBlockPayloadValidationError13, isSlashEvidence } from "@xyo-network/xl1-sdk";
597
+ var validateSlashEvidenceInBlock = async (context, payload, block) => {
598
+ const errors = [];
599
+ try {
600
+ const { errors: sharedErrors } = await validateSlashPayloadInBlock(context, payload, block, isSlashEvidence, (subject) => subject.from, "slash evidence");
601
+ for (const sharedError of sharedErrors) {
602
+ errors.push(new InBlockPayloadValidationError13(payload._hash, block, payload, sharedError.message, sharedError));
603
+ }
604
+ } catch (ex) {
605
+ errors.push(new InBlockPayloadValidationError13(
606
+ block[0]?._hash ?? ZERO_HASH17,
607
+ block,
608
+ payload,
609
+ `validation excepted: ${String(ex)}`,
610
+ ex
611
+ ));
612
+ }
613
+ return errors;
614
+ };
615
+
616
+ // src/modules/validation/elevatedPayload/payloads/validateSlashRequestInBlock.ts
617
+ import { ZERO_HASH as ZERO_HASH18 } from "@ariestools/sdk";
618
+ import { PayloadBuilder } from "@xyo-network/sdk";
619
+ import {
620
+ InBlockPayloadValidationError as InBlockPayloadValidationError14,
621
+ isRuleObservedAt,
622
+ isSlashEvidence as isSlashEvidence2,
623
+ isSlashRequest,
624
+ reportableRuleId
625
+ } from "@xyo-network/xl1-sdk";
626
+ async function carriedArtifactHashes(transaction, payloads) {
627
+ const inTransaction = new Set(transaction.payload_hashes);
628
+ const artifacts = payloads.filter((candidate) => inTransaction.has(candidate._hash)).filter((candidate) => isSlashEvidence2(candidate)).flatMap((container) => container.artifacts);
629
+ return new Set(await Promise.all(artifacts.map((artifact) => PayloadBuilder.dataHash(artifact))));
630
+ }
631
+ async function evidenceResolutionErrors(context, request, carried, height) {
632
+ const missing = request.evidence.filter((hash) => !carried.has(hash));
633
+ if (missing.length === 0) return [];
634
+ const resolver = context.hasFinalizedEvidenceArtifact;
635
+ if (resolver === void 0) {
636
+ return ["evidence resolver unavailable: cannot certify a block whose evidence it cannot check"];
637
+ }
638
+ const resolved = await Promise.all(missing.map(async (hash) => ({ found: await resolver(hash, height), hash })));
639
+ return resolved.filter(({ found }) => !found).map(({ hash }) => `unresolvable evidence artifact ${hash}`);
640
+ }
641
+ function isOffenseReportable(params, request) {
642
+ return isRuleObservedAt(params, reportableRuleId(request.offense), request.block);
643
+ }
644
+ var validateSlashRequestInBlock = async (context, payload, block) => {
645
+ const errors = [];
646
+ const fail = (message) => errors.push(new InBlockPayloadValidationError14(payload._hash, block, payload, message));
647
+ try {
648
+ const {
649
+ errors: sharedErrors,
650
+ params,
651
+ transaction
652
+ } = await validateSlashPayloadInBlock(context, payload, block, isSlashRequest, (request) => request.from, "slash request");
653
+ for (const sharedError of sharedErrors) {
654
+ errors.push(new InBlockPayloadValidationError14(payload._hash, block, payload, sharedError.message, sharedError));
655
+ }
656
+ if (sharedErrors.length > 0 || params === void 0 || transaction === void 0 || !isSlashRequest(payload)) {
657
+ return errors;
658
+ }
659
+ if (!isOffenseReportable(params, payload)) {
660
+ fail(`offense '${payload.offense}' was not reportable at block ${payload.block}`);
661
+ }
662
+ const carried = await carriedArtifactHashes(transaction, block[1]);
663
+ for (const problem of await evidenceResolutionErrors(context, payload, carried, block[0].block)) {
664
+ fail(problem);
665
+ }
666
+ } catch (ex) {
667
+ errors.push(new InBlockPayloadValidationError14(
668
+ block[0]?._hash ?? ZERO_HASH18,
669
+ block,
670
+ payload,
671
+ `validation excepted: ${String(ex)}`,
672
+ ex
673
+ ));
674
+ }
675
+ return errors;
676
+ };
677
+
678
+ // src/modules/validation/elevatedPayload/payloads/validateTimeInBlock.ts
679
+ import { ZERO_HASH as ZERO_HASH19 } from "@ariestools/sdk";
680
+ import { InBlockPayloadValidationError as InBlockPayloadValidationError15, isTimePayload } from "@xyo-network/xl1-sdk";
455
681
  var validateTimeInBlock = async (context, payload, block) => {
456
682
  const errors = [];
457
683
  try {
458
684
  const typedErrors = await validateTypedPayloadInBlock(context, payload, block, isTimePayload);
459
685
  for (const typedError of typedErrors) {
460
- errors.push(new InBlockPayloadValidationError10(payload._hash, block, payload, `validateTypedPayloadInBlock error: ${typedError}`, typedError));
686
+ errors.push(new InBlockPayloadValidationError15(payload._hash, block, payload, `validateTypedPayloadInBlock error: ${typedError}`, typedError));
461
687
  }
462
688
  } catch (ex) {
463
- errors.push(new InBlockPayloadValidationError10(
464
- block?.[0]?._hash ?? ZERO_HASH14,
689
+ errors.push(new InBlockPayloadValidationError15(
690
+ block?.[0]?._hash ?? ZERO_HASH19,
465
691
  block,
466
692
  payload,
467
693
  `Failed validateTimeInBlock: ${String(ex)}`,
@@ -472,18 +698,18 @@ var validateTimeInBlock = async (context, payload, block) => {
472
698
  };
473
699
 
474
700
  // src/modules/validation/elevatedPayload/payloads/validateTransferInBlock.ts
475
- import { ZERO_HASH as ZERO_HASH15 } from "@ariestools/sdk";
476
- import { InBlockPayloadValidationError as InBlockPayloadValidationError11, isTransferPayload } from "@xyo-network/xl1-sdk";
701
+ import { ZERO_HASH as ZERO_HASH20 } from "@ariestools/sdk";
702
+ import { InBlockPayloadValidationError as InBlockPayloadValidationError16, isTransferPayload as isTransferPayload2 } from "@xyo-network/xl1-sdk";
477
703
  var validateTransferInBlock = async (context, payload, block) => {
478
704
  const errors = [];
479
705
  try {
480
- const typedErrors = await validateTypedPayloadInBlock(context, payload, block, isTransferPayload);
706
+ const typedErrors = await validateTypedPayloadInBlock(context, payload, block, isTransferPayload2);
481
707
  for (const typedError of typedErrors) {
482
- errors.push(new InBlockPayloadValidationError11(payload._hash, block, payload, `validateTypedPayloadInBlock error: ${typedError}`, typedError));
708
+ errors.push(new InBlockPayloadValidationError16(payload._hash, block, payload, `validateTypedPayloadInBlock error: ${typedError}`, typedError));
483
709
  }
484
710
  } catch (ex) {
485
- errors.push(new InBlockPayloadValidationError11(
486
- block?.[0]?._hash ?? ZERO_HASH15,
711
+ errors.push(new InBlockPayloadValidationError16(
712
+ block?.[0]?._hash ?? ZERO_HASH20,
487
713
  block,
488
714
  payload,
489
715
  `Failed validateTransferInBlock: ${String(ex)}`,
@@ -502,6 +728,11 @@ var payloadValidators = {
502
728
  [ChainStakeIntentSchema]: validateChainStakeIntentInBlock,
503
729
  [HashSchema]: validateHashInBlock,
504
730
  [SchemaSchema]: validateSchemaInBlock,
731
+ [SlashAdjudicationSchema]: validateSlashAdjudicationInBlock,
732
+ [SlashChallengeSchema]: validateSlashChallengeInBlock,
733
+ [SlashCommitSchema]: validateSlashCommitInBlock,
734
+ [SlashEvidenceSchema]: validateSlashEvidenceInBlock,
735
+ [SlashRequestSchema]: validateSlashRequestInBlock,
505
736
  [TimeSchema]: validateTimeInBlock,
506
737
  [TransferSchema]: validateTransferInBlock
507
738
  };
@@ -512,11 +743,11 @@ var validatePayloadInBlock = async (context, payload, block) => {
512
743
  if (validator) {
513
744
  errors.push(...await validator(context, payload, block));
514
745
  } else {
515
- errors.push(new InBlockPayloadValidationError12(block?.[0]?._hash ?? ZERO_HASH16, block, payload, `Unsupported payload schema: ${payload.schema}`));
746
+ errors.push(new InBlockPayloadValidationError17(block?.[0]?._hash ?? ZERO_HASH21, block, payload, `Unsupported payload schema: ${payload.schema}`));
516
747
  }
517
748
  } catch (ex) {
518
- const error2 = new InBlockPayloadValidationError12(
519
- block?.[0]?._hash ?? ZERO_HASH16,
749
+ const error2 = new InBlockPayloadValidationError17(
750
+ block?.[0]?._hash ?? ZERO_HASH21,
520
751
  block,
521
752
  payload,
522
753
  `validation excepted: ${String(ex)}`,
@@ -545,7 +776,7 @@ var PayloadsInBlockValidator = async (context, [block, payloads]) => {
545
776
  const payloadInBlockErrors = await validatePayloadInBlock(context, payload, [block, payloads]);
546
777
  for (const payloadInBlockError of payloadInBlockErrors) {
547
778
  errors.push(new HydratedBlockValidationError(
548
- block?._hash ?? ZERO_HASH17,
779
+ block?._hash ?? ZERO_HASH22,
549
780
  [block, payloads],
550
781
  `validatePayloadInBlock error: ${payloadInBlockError}`,
551
782
  payloadInBlockError
@@ -553,15 +784,15 @@ var PayloadsInBlockValidator = async (context, [block, payloads]) => {
553
784
  }
554
785
  delete remainingPayloads[propertyKey];
555
786
  } else {
556
- errors.push(new HydratedBlockValidationError(block?._hash ?? ZERO_HASH17, [block, payloads], `missing payload ${propertyKey} ${schema}`));
787
+ errors.push(new HydratedBlockValidationError(block?._hash ?? ZERO_HASH22, [block, payloads], `missing payload ${propertyKey} ${schema}`));
557
788
  }
558
789
  }
559
790
  if (Object.keys(remainingPayloads).length > 0) {
560
- errors.push(new HydratedBlockValidationError(block?._hash ?? ZERO_HASH17, [block, payloads], `extra payloads ${Object.keys(payloadMap).join(", ")}`));
791
+ errors.push(new HydratedBlockValidationError(block?._hash ?? ZERO_HASH22, [block, payloads], `extra payloads ${Object.keys(payloadMap).join(", ")}`));
561
792
  }
562
793
  } catch (ex) {
563
794
  errors.push(new HydratedBlockValidationError(
564
- block?._hash ?? ZERO_HASH17,
795
+ block?._hash ?? ZERO_HASH22,
565
796
  [block, payloads],
566
797
  `Failed PayloadsInBlockValidator: ${String(ex)}`,
567
798
  ex
@@ -571,8 +802,8 @@ var PayloadsInBlockValidator = async (context, [block, payloads]) => {
571
802
  };
572
803
 
573
804
  // src/modules/validation/hydratedBlock/validators/TransactionTransfersInBlock.ts
574
- import { ZERO_HASH as ZERO_HASH18 } from "@ariestools/sdk";
575
- import { isHashMeta as isHashMeta3 } from "@xyo-network/sdk";
805
+ import { ZERO_HASH as ZERO_HASH23 } from "@ariestools/sdk";
806
+ import { isHashMeta as isHashMeta4 } from "@xyo-network/sdk";
576
807
  import { HydratedBlockValidationError as HydratedBlockValidationError2, isTransactionBoundWitness as isTransactionBoundWitness3 } from "@xyo-network/xl1-sdk";
577
808
  function TransactionTransfersInBlockValidatorFactory(transfersValidator) {
578
809
  return async (context, hydratedBlock) => {
@@ -580,7 +811,7 @@ function TransactionTransfersInBlockValidatorFactory(transfersValidator) {
580
811
  const errors = [];
581
812
  try {
582
813
  for (const payload of payloads) {
583
- if (isTransactionBoundWitness3(payload) && isHashMeta3(payload)) {
814
+ if (isTransactionBoundWitness3(payload) && isHashMeta4(payload)) {
584
815
  const txErrors = await transfersValidator({ ...context, chainId: block.chain }, [payload, payloads]);
585
816
  for (const txError of txErrors) {
586
817
  errors.push(new HydratedBlockValidationError2(payload._hash, hydratedBlock, `transfer authorization error: ${txError}`, txError));
@@ -589,7 +820,7 @@ function TransactionTransfersInBlockValidatorFactory(transfersValidator) {
589
820
  }
590
821
  } catch (ex) {
591
822
  errors.push(new HydratedBlockValidationError2(
592
- block?._hash ?? ZERO_HASH18,
823
+ block?._hash ?? ZERO_HASH23,
593
824
  hydratedBlock,
594
825
  `Failed TransactionTransfersInBlockValidator: ${String(ex)}`,
595
826
  ex
@@ -625,7 +856,7 @@ var validateHydratedBlock = async (context, hydratedBlock, chainIdAtBlockNumber,
625
856
  }
626
857
  } catch (ex) {
627
858
  errors.push(new HydratedBlockValidationError3(
628
- hydratedBlock?.[0]?._hash ?? ZERO_HASH19,
859
+ hydratedBlock?.[0]?._hash ?? ZERO_HASH24,
629
860
  hydratedBlock,
630
861
  `Failed validateHydratedBlock: ${String(ex)}`,
631
862
  ex
@@ -635,11 +866,11 @@ var validateHydratedBlock = async (context, hydratedBlock, chainIdAtBlockNumber,
635
866
  };
636
867
 
637
868
  // src/modules/validation/hydratedBlockState/validateHydratedBlockState.ts
638
- import { spanRootAsync as spanRootAsync2, ZERO_HASH as ZERO_HASH21 } from "@ariestools/sdk";
869
+ import { spanRootAsync as spanRootAsync2, ZERO_HASH as ZERO_HASH26 } from "@ariestools/sdk";
639
870
  import { HydratedBlockStateValidationError as HydratedBlockStateValidationError2 } from "@xyo-network/xl1-sdk";
640
871
 
641
872
  // src/modules/validation/hydratedBlockState/validators/RequiredBalance.ts
642
- import { spanRootAsync, ZERO_HASH as ZERO_HASH20 } from "@ariestools/sdk";
873
+ import { spanRootAsync, ZERO_HASH as ZERO_HASH25 } from "@ariestools/sdk";
643
874
  import {
644
875
  AttoXL1,
645
876
  HydratedBlockStateValidationError,
@@ -673,7 +904,7 @@ var RequiredBalanceBlockStateValidator = async (context, block) => {
673
904
  }
674
905
  const previous = block[0].previous;
675
906
  if (previous === null) return [new HydratedBlockStateValidationError(
676
- block?.[0]?._hash ?? ZERO_HASH20,
907
+ block?.[0]?._hash ?? ZERO_HASH25,
677
908
  "00",
678
909
  block,
679
910
  "Insufficient funds because first block"
@@ -687,7 +918,7 @@ var RequiredBalanceBlockStateValidator = async (context, block) => {
687
918
  if (address !== XYO_ZERO_ADDRESS && reqBalance > balance) {
688
919
  const offendingTransactionHashes = offendingTransactionHashesForAddress(block, address);
689
920
  errors.push(new HydratedBlockStateValidationError(
690
- block?.[0]?._hash ?? ZERO_HASH20,
921
+ block?.[0]?._hash ?? ZERO_HASH25,
691
922
  chainId,
692
923
  block,
693
924
  `insufficient balance for ${address} ${balance} < ${reqBalance}`,
@@ -699,7 +930,7 @@ var RequiredBalanceBlockStateValidator = async (context, block) => {
699
930
  }, context);
700
931
  } catch (ex) {
701
932
  errors.push(new HydratedBlockStateValidationError(
702
- block?.[0]?._hash ?? ZERO_HASH20,
933
+ block?.[0]?._hash ?? ZERO_HASH25,
703
934
  chainId,
704
935
  block,
705
936
  `Failed RequiredBalanceBlockStateValidator: ${String(ex)}`,
@@ -736,7 +967,7 @@ var validateHydratedBlockState = async (context, hydratedBlock, additionalValida
736
967
  }
737
968
  } catch (ex) {
738
969
  errors.push(new HydratedBlockStateValidationError2(
739
- hydratedBlock?.[0]?._hash ?? ZERO_HASH21,
970
+ hydratedBlock?.[0]?._hash ?? ZERO_HASH26,
740
971
  chainId ?? "00",
741
972
  hydratedBlock,
742
973
  `Failed validateHydratedBlockState: ${String(ex)}`,
@@ -748,11 +979,11 @@ var validateHydratedBlockState = async (context, hydratedBlock, additionalValida
748
979
  };
749
980
 
750
981
  // src/modules/validation/hydratedTransactionState/validateHydratedTransactionState.ts
751
- import { spanRootAsync as spanRootAsync4, ZERO_HASH as ZERO_HASH23 } from "@ariestools/sdk";
982
+ import { spanRootAsync as spanRootAsync4, ZERO_HASH as ZERO_HASH28 } from "@ariestools/sdk";
752
983
  import { HydratedTransactionValidationError as HydratedTransactionValidationError2 } from "@xyo-network/xl1-sdk";
753
984
 
754
985
  // src/modules/validation/hydratedTransactionState/validators/RequiredBalance.ts
755
- import { spanRootAsync as spanRootAsync3, ZERO_HASH as ZERO_HASH22 } from "@ariestools/sdk";
986
+ import { spanRootAsync as spanRootAsync3, ZERO_HASH as ZERO_HASH27 } from "@ariestools/sdk";
756
987
  import {
757
988
  AttoXL1 as AttoXL12,
758
989
  HydratedTransactionValidationError,
@@ -777,7 +1008,7 @@ async function balanceShortfallErrors(context, tx, requiredBalances) {
777
1008
  const balance = balancesByKey[propertyKey] ?? AttoXL12(0n);
778
1009
  if (address !== XYO_ZERO_ADDRESS2 && reqBalance > balance) {
779
1010
  errors.push(new HydratedTransactionValidationError(
780
- tx?.[0]?._hash ?? ZERO_HASH22,
1011
+ tx?.[0]?._hash ?? ZERO_HASH27,
781
1012
  tx,
782
1013
  `insufficient balance for ${address} ${balance} < ${reqBalance}`
783
1014
  ));
@@ -795,7 +1026,7 @@ var RequiredBalanceTransactionStateValidator = async (context, tx) => {
795
1026
  const gasRequired = transactionRequiredGas(tx);
796
1027
  if (wrapper.fees.gasLimit < gasRequired) {
797
1028
  errors.push(new HydratedTransactionValidationError(
798
- tx?.[0]?._hash ?? ZERO_HASH22,
1029
+ tx?.[0]?._hash ?? ZERO_HASH27,
799
1030
  tx,
800
1031
  `fees.gasLimit ${wrapper.fees.gasLimit} < required gas ${gasRequired}`
801
1032
  ));
@@ -813,7 +1044,7 @@ var RequiredBalanceTransactionStateValidator = async (context, tx) => {
813
1044
  errors.push(...await balanceShortfallErrors(context, tx, requiredBalances));
814
1045
  } catch (ex) {
815
1046
  errors.push(new HydratedTransactionValidationError(
816
- tx?.[0]?._hash ?? ZERO_HASH22,
1047
+ tx?.[0]?._hash ?? ZERO_HASH27,
817
1048
  tx,
818
1049
  `Failed RequiredBalanceTransactionStateValidator: ${String(ex)}`,
819
1050
  ex
@@ -836,7 +1067,7 @@ var validateHydratedTransactionState = async (context, tx) => {
836
1067
  }
837
1068
  } catch (ex) {
838
1069
  errors.push(new HydratedTransactionValidationError2(
839
- tx?.[0]?._hash ?? ZERO_HASH23,
1070
+ tx?.[0]?._hash ?? ZERO_HASH28,
840
1071
  tx,
841
1072
  `Failed validateHydratedTransactionState: ${String(ex)}`,
842
1073
  ex