@agentsgot/agent-kit 0.0.0-stage → 1.0.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 (411) hide show
  1. package/ARCHITECTURE.md +5 -0
  2. package/README.md +13 -2
  3. package/dist/a2a.d.ts +35 -0
  4. package/dist/a2a.d.ts.map +1 -0
  5. package/dist/a2a.js +109 -0
  6. package/dist/a2a.js.map +1 -0
  7. package/dist/cli/binding.d.ts +24 -0
  8. package/dist/cli/binding.d.ts.map +1 -0
  9. package/dist/cli/binding.js +52 -0
  10. package/dist/cli/binding.js.map +1 -0
  11. package/dist/cli/commands.d.ts +18 -0
  12. package/dist/cli/commands.d.ts.map +1 -0
  13. package/dist/cli/commands.js +191 -0
  14. package/dist/cli/commands.js.map +1 -0
  15. package/dist/cli/context.d.ts +61 -0
  16. package/dist/cli/context.d.ts.map +1 -0
  17. package/dist/cli/context.js +147 -0
  18. package/dist/cli/context.js.map +1 -0
  19. package/dist/cli/doctor.d.ts +34 -0
  20. package/dist/cli/doctor.d.ts.map +1 -0
  21. package/dist/cli/doctor.js +109 -0
  22. package/dist/cli/doctor.js.map +1 -0
  23. package/dist/cli/home.d.ts +37 -0
  24. package/dist/cli/home.d.ts.map +1 -0
  25. package/dist/cli/home.js +77 -0
  26. package/dist/cli/home.js.map +1 -0
  27. package/dist/cli/index.d.ts +5 -0
  28. package/dist/cli/index.d.ts.map +1 -0
  29. package/dist/cli/index.js +120 -0
  30. package/dist/cli/index.js.map +1 -0
  31. package/dist/cli/install.d.ts +19 -0
  32. package/dist/cli/install.d.ts.map +1 -0
  33. package/dist/cli/install.js +64 -0
  34. package/dist/cli/install.js.map +1 -0
  35. package/dist/cli/keystore.d.ts +25 -0
  36. package/dist/cli/keystore.d.ts.map +1 -0
  37. package/dist/cli/keystore.js +57 -0
  38. package/dist/cli/keystore.js.map +1 -0
  39. package/dist/cli/mcp.d.ts +7 -0
  40. package/dist/cli/mcp.d.ts.map +1 -0
  41. package/dist/cli/mcp.js +28 -0
  42. package/dist/cli/mcp.js.map +1 -0
  43. package/dist/cli/prompt.d.ts +10 -0
  44. package/dist/cli/prompt.d.ts.map +1 -0
  45. package/dist/cli/prompt.js +71 -0
  46. package/dist/cli/prompt.js.map +1 -0
  47. package/dist/cli/reports.d.ts +42 -0
  48. package/dist/cli/reports.d.ts.map +1 -0
  49. package/dist/cli/reports.js +121 -0
  50. package/dist/cli/reports.js.map +1 -0
  51. package/dist/cli/run.d.ts +21 -0
  52. package/dist/cli/run.d.ts.map +1 -0
  53. package/dist/cli/run.js +125 -0
  54. package/dist/cli/run.js.map +1 -0
  55. package/dist/cli/wallet.d.ts +19 -0
  56. package/dist/cli/wallet.d.ts.map +1 -0
  57. package/dist/cli/wallet.js +58 -0
  58. package/dist/cli/wallet.js.map +1 -0
  59. package/dist/guides.d.ts +7 -0
  60. package/dist/guides.d.ts.map +1 -0
  61. package/dist/guides.js +94 -0
  62. package/dist/guides.js.map +1 -0
  63. package/dist/index.d.ts +20 -0
  64. package/dist/index.d.ts.map +1 -0
  65. package/dist/index.js +23 -0
  66. package/dist/index.js.map +1 -0
  67. package/dist/llm.d.ts +16 -0
  68. package/dist/llm.d.ts.map +1 -0
  69. package/dist/llm.js +30 -0
  70. package/dist/llm.js.map +1 -0
  71. package/dist/mcp/cli.d.ts +3 -0
  72. package/dist/mcp/cli.d.ts.map +1 -0
  73. package/dist/mcp/cli.js +6 -0
  74. package/dist/mcp/cli.js.map +1 -0
  75. package/dist/mcp/server.d.ts +38 -0
  76. package/dist/mcp/server.d.ts.map +1 -0
  77. package/dist/mcp/server.js +693 -0
  78. package/dist/mcp/server.js.map +1 -0
  79. package/dist/ports.d.ts +123 -0
  80. package/dist/ports.d.ts.map +1 -0
  81. package/dist/ports.js +134 -0
  82. package/dist/ports.js.map +1 -0
  83. package/dist/roles.d.ts +16 -0
  84. package/dist/roles.d.ts.map +1 -0
  85. package/dist/roles.js +49 -0
  86. package/dist/roles.js.map +1 -0
  87. package/dist/runner.d.ts +126 -0
  88. package/dist/runner.d.ts.map +1 -0
  89. package/dist/runner.js +292 -0
  90. package/dist/runner.js.map +1 -0
  91. package/dist/schedules.d.ts +34 -0
  92. package/dist/schedules.d.ts.map +1 -0
  93. package/dist/schedules.js +116 -0
  94. package/dist/schedules.js.map +1 -0
  95. package/dist/sdk/base64.d.ts +4 -0
  96. package/dist/sdk/base64.d.ts.map +1 -0
  97. package/dist/sdk/base64.js +15 -0
  98. package/dist/sdk/base64.js.map +1 -0
  99. package/dist/sdk/client.d.ts +198 -0
  100. package/dist/sdk/client.d.ts.map +1 -0
  101. package/dist/sdk/client.js +413 -0
  102. package/dist/sdk/client.js.map +1 -0
  103. package/dist/security.d.ts +10 -0
  104. package/dist/security.d.ts.map +1 -0
  105. package/dist/security.js +24 -0
  106. package/dist/security.js.map +1 -0
  107. package/dist/skills.d.ts +21 -0
  108. package/dist/skills.d.ts.map +1 -0
  109. package/dist/skills.js +93 -0
  110. package/dist/skills.js.map +1 -0
  111. package/dist/workers.d.ts +64 -0
  112. package/dist/workers.d.ts.map +1 -0
  113. package/dist/workers.js +127 -0
  114. package/dist/workers.js.map +1 -0
  115. package/dist/zip.d.ts +8 -0
  116. package/dist/zip.d.ts.map +1 -0
  117. package/dist/zip.js +80 -0
  118. package/dist/zip.js.map +1 -0
  119. package/docs/README.md +25 -0
  120. package/docs/architecture.md +18 -0
  121. package/docs/deployment.md +35 -0
  122. package/docs/reference/01-RULES.md +822 -0
  123. package/docs/reference/02-INTERFACES.md +487 -0
  124. package/docs/reference/03-STAKING-PENALTY-SPEC.md +739 -0
  125. package/docs/updates.md +65 -0
  126. package/docs/verification.md +72 -0
  127. package/package.json +88 -4
  128. package/skills/dist/agent-skills.json +68 -0
  129. package/skills/dist/arbitrator/SKILL.md +186 -0
  130. package/skills/dist/executor/SKILL.md +219 -0
  131. package/skills/dist/publisher/SKILL.md +172 -0
  132. package/skills/dist/tester/SKILL.md +198 -0
  133. package/vendor/shared/ARCHITECTURE.md +97 -0
  134. package/vendor/shared/README.md +5 -0
  135. package/vendor/shared/abi/index.js +2 -0
  136. package/vendor/shared/abi/index.ts +2 -0
  137. package/vendor/shared/abi/protocol/AgentRegistry.js +1623 -0
  138. package/vendor/shared/abi/protocol/AgentRegistry.json +1623 -0
  139. package/vendor/shared/abi/protocol/AgentRegistry.ts +1623 -0
  140. package/vendor/shared/abi/protocol/ArbitrationCaseProofVerifier.js +154 -0
  141. package/vendor/shared/abi/protocol/ArbitrationCaseProofVerifier.json +154 -0
  142. package/vendor/shared/abi/protocol/ArbitrationCaseProofVerifier.ts +154 -0
  143. package/vendor/shared/abi/protocol/ArbitrationCourt.js +1550 -0
  144. package/vendor/shared/abi/protocol/ArbitrationCourt.json +1550 -0
  145. package/vendor/shared/abi/protocol/ArbitrationCourt.ts +1550 -0
  146. package/vendor/shared/abi/protocol/ArbitrationPool.js +509 -0
  147. package/vendor/shared/abi/protocol/ArbitrationPool.json +509 -0
  148. package/vendor/shared/abi/protocol/ArbitrationPool.ts +509 -0
  149. package/vendor/shared/abi/protocol/ArbitrationProgressor.js +44 -0
  150. package/vendor/shared/abi/protocol/ArbitrationProgressor.json +44 -0
  151. package/vendor/shared/abi/protocol/ArbitrationProgressor.ts +44 -0
  152. package/vendor/shared/abi/protocol/ArbitrationSelection.js +1153 -0
  153. package/vendor/shared/abi/protocol/ArbitrationSelection.json +1153 -0
  154. package/vendor/shared/abi/protocol/ArbitrationSelection.ts +1153 -0
  155. package/vendor/shared/abi/protocol/ArbitrationSettlement.js +956 -0
  156. package/vendor/shared/abi/protocol/ArbitrationSettlement.json +956 -0
  157. package/vendor/shared/abi/protocol/ArbitrationSettlement.ts +956 -0
  158. package/vendor/shared/abi/protocol/ArbitrationStream.js +964 -0
  159. package/vendor/shared/abi/protocol/ArbitrationStream.json +964 -0
  160. package/vendor/shared/abi/protocol/ArbitrationStream.ts +964 -0
  161. package/vendor/shared/abi/protocol/EmissionController.js +1436 -0
  162. package/vendor/shared/abi/protocol/EmissionController.json +1436 -0
  163. package/vendor/shared/abi/protocol/EmissionController.ts +1436 -0
  164. package/vendor/shared/abi/protocol/HourlyAnchor.js +611 -0
  165. package/vendor/shared/abi/protocol/HourlyAnchor.json +611 -0
  166. package/vendor/shared/abi/protocol/HourlyAnchor.ts +611 -0
  167. package/vendor/shared/abi/protocol/IncentiveVault.js +480 -0
  168. package/vendor/shared/abi/protocol/IncentiveVault.json +480 -0
  169. package/vendor/shared/abi/protocol/IncentiveVault.ts +480 -0
  170. package/vendor/shared/abi/protocol/ParamRegistry.js +814 -0
  171. package/vendor/shared/abi/protocol/ParamRegistry.json +814 -0
  172. package/vendor/shared/abi/protocol/ParamRegistry.ts +814 -0
  173. package/vendor/shared/abi/protocol/PlatformTreasury.js +553 -0
  174. package/vendor/shared/abi/protocol/PlatformTreasury.json +553 -0
  175. package/vendor/shared/abi/protocol/PlatformTreasury.ts +553 -0
  176. package/vendor/shared/abi/protocol/ProtocolProof.js +1171 -0
  177. package/vendor/shared/abi/protocol/ProtocolProof.json +1171 -0
  178. package/vendor/shared/abi/protocol/ProtocolProof.ts +1171 -0
  179. package/vendor/shared/abi/protocol/PublisherStaking.js +1227 -0
  180. package/vendor/shared/abi/protocol/PublisherStaking.json +1227 -0
  181. package/vendor/shared/abi/protocol/PublisherStaking.ts +1227 -0
  182. package/vendor/shared/abi/protocol/RewardVesting.js +1027 -0
  183. package/vendor/shared/abi/protocol/RewardVesting.json +1027 -0
  184. package/vendor/shared/abi/protocol/RewardVesting.ts +1027 -0
  185. package/vendor/shared/abi/protocol/TaskEscrow.js +2219 -0
  186. package/vendor/shared/abi/protocol/TaskEscrow.json +2219 -0
  187. package/vendor/shared/abi/protocol/TaskEscrow.ts +2219 -0
  188. package/vendor/shared/abi/protocol/TesterAssignment.js +1375 -0
  189. package/vendor/shared/abi/protocol/TesterAssignment.json +1375 -0
  190. package/vendor/shared/abi/protocol/TesterAssignment.ts +1375 -0
  191. package/vendor/shared/abi/protocol/ValidatorStaking.js +1614 -0
  192. package/vendor/shared/abi/protocol/ValidatorStaking.json +1614 -0
  193. package/vendor/shared/abi/protocol/ValidatorStaking.ts +1614 -0
  194. package/vendor/shared/abi/protocol/index.js +19 -0
  195. package/vendor/shared/abi/protocol/index.ts +19 -0
  196. package/vendor/shared/abi/token/AGTToken.js +1018 -0
  197. package/vendor/shared/abi/token/AGTToken.json +1018 -0
  198. package/vendor/shared/abi/token/AGTToken.ts +1018 -0
  199. package/vendor/shared/abi/token/GenesisDistributor.js +242 -0
  200. package/vendor/shared/abi/token/GenesisDistributor.json +242 -0
  201. package/vendor/shared/abi/token/GenesisDistributor.ts +242 -0
  202. package/vendor/shared/abi/token/LPLocker.js +21 -0
  203. package/vendor/shared/abi/token/LPLocker.json +21 -0
  204. package/vendor/shared/abi/token/LPLocker.ts +21 -0
  205. package/vendor/shared/abi/token/LaunchLiquidity.js +335 -0
  206. package/vendor/shared/abi/token/LaunchLiquidity.json +335 -0
  207. package/vendor/shared/abi/token/LaunchLiquidity.ts +335 -0
  208. package/vendor/shared/abi/token/LiquidityAdder.js +228 -0
  209. package/vendor/shared/abi/token/LiquidityAdder.json +228 -0
  210. package/vendor/shared/abi/token/LiquidityAdder.ts +228 -0
  211. package/vendor/shared/abi/token/TaxDistributor.js +235 -0
  212. package/vendor/shared/abi/token/TaxDistributor.json +235 -0
  213. package/vendor/shared/abi/token/TaxDistributor.ts +235 -0
  214. package/vendor/shared/abi/token/TestFaucet.js +214 -0
  215. package/vendor/shared/abi/token/TestFaucet.json +214 -0
  216. package/vendor/shared/abi/token/TestFaucet.ts +214 -0
  217. package/vendor/shared/abi/token/index.js +7 -0
  218. package/vendor/shared/abi/token/index.ts +7 -0
  219. package/vendor/shared/dist/abi/index.d.ts +3 -0
  220. package/vendor/shared/dist/abi/index.d.ts.map +1 -0
  221. package/vendor/shared/dist/abi/index.js +3 -0
  222. package/vendor/shared/dist/abi/index.js.map +1 -0
  223. package/vendor/shared/dist/abi/protocol/AgentRegistry.d.ts +1249 -0
  224. package/vendor/shared/dist/abi/protocol/AgentRegistry.d.ts.map +1 -0
  225. package/vendor/shared/dist/abi/protocol/AgentRegistry.js +1624 -0
  226. package/vendor/shared/dist/abi/protocol/AgentRegistry.js.map +1 -0
  227. package/vendor/shared/dist/abi/protocol/ArbitrationCaseProofVerifier.d.ts +119 -0
  228. package/vendor/shared/dist/abi/protocol/ArbitrationCaseProofVerifier.d.ts.map +1 -0
  229. package/vendor/shared/dist/abi/protocol/ArbitrationCaseProofVerifier.js +155 -0
  230. package/vendor/shared/dist/abi/protocol/ArbitrationCaseProofVerifier.js.map +1 -0
  231. package/vendor/shared/dist/abi/protocol/ArbitrationCourt.d.ts +1205 -0
  232. package/vendor/shared/dist/abi/protocol/ArbitrationCourt.d.ts.map +1 -0
  233. package/vendor/shared/dist/abi/protocol/ArbitrationCourt.js +1551 -0
  234. package/vendor/shared/dist/abi/protocol/ArbitrationCourt.js.map +1 -0
  235. package/vendor/shared/dist/abi/protocol/ArbitrationPool.d.ts +391 -0
  236. package/vendor/shared/dist/abi/protocol/ArbitrationPool.d.ts.map +1 -0
  237. package/vendor/shared/dist/abi/protocol/ArbitrationPool.js +510 -0
  238. package/vendor/shared/dist/abi/protocol/ArbitrationPool.js.map +1 -0
  239. package/vendor/shared/dist/abi/protocol/ArbitrationProgressor.d.ts +34 -0
  240. package/vendor/shared/dist/abi/protocol/ArbitrationProgressor.d.ts.map +1 -0
  241. package/vendor/shared/dist/abi/protocol/ArbitrationProgressor.js +45 -0
  242. package/vendor/shared/dist/abi/protocol/ArbitrationProgressor.js.map +1 -0
  243. package/vendor/shared/dist/abi/protocol/ArbitrationSelection.d.ts +885 -0
  244. package/vendor/shared/dist/abi/protocol/ArbitrationSelection.d.ts.map +1 -0
  245. package/vendor/shared/dist/abi/protocol/ArbitrationSelection.js +1154 -0
  246. package/vendor/shared/dist/abi/protocol/ArbitrationSelection.js.map +1 -0
  247. package/vendor/shared/dist/abi/protocol/ArbitrationSettlement.d.ts +742 -0
  248. package/vendor/shared/dist/abi/protocol/ArbitrationSettlement.d.ts.map +1 -0
  249. package/vendor/shared/dist/abi/protocol/ArbitrationSettlement.js +957 -0
  250. package/vendor/shared/dist/abi/protocol/ArbitrationSettlement.js.map +1 -0
  251. package/vendor/shared/dist/abi/protocol/ArbitrationStream.d.ts +741 -0
  252. package/vendor/shared/dist/abi/protocol/ArbitrationStream.d.ts.map +1 -0
  253. package/vendor/shared/dist/abi/protocol/ArbitrationStream.js +965 -0
  254. package/vendor/shared/dist/abi/protocol/ArbitrationStream.js.map +1 -0
  255. package/vendor/shared/dist/abi/protocol/EmissionController.d.ts +1110 -0
  256. package/vendor/shared/dist/abi/protocol/EmissionController.d.ts.map +1 -0
  257. package/vendor/shared/dist/abi/protocol/EmissionController.js +1437 -0
  258. package/vendor/shared/dist/abi/protocol/EmissionController.js.map +1 -0
  259. package/vendor/shared/dist/abi/protocol/HourlyAnchor.d.ts +467 -0
  260. package/vendor/shared/dist/abi/protocol/HourlyAnchor.d.ts.map +1 -0
  261. package/vendor/shared/dist/abi/protocol/HourlyAnchor.js +612 -0
  262. package/vendor/shared/dist/abi/protocol/HourlyAnchor.js.map +1 -0
  263. package/vendor/shared/dist/abi/protocol/IncentiveVault.d.ts +369 -0
  264. package/vendor/shared/dist/abi/protocol/IncentiveVault.d.ts.map +1 -0
  265. package/vendor/shared/dist/abi/protocol/IncentiveVault.js +481 -0
  266. package/vendor/shared/dist/abi/protocol/IncentiveVault.js.map +1 -0
  267. package/vendor/shared/dist/abi/protocol/ParamRegistry.d.ts +628 -0
  268. package/vendor/shared/dist/abi/protocol/ParamRegistry.d.ts.map +1 -0
  269. package/vendor/shared/dist/abi/protocol/ParamRegistry.js +815 -0
  270. package/vendor/shared/dist/abi/protocol/ParamRegistry.js.map +1 -0
  271. package/vendor/shared/dist/abi/protocol/PlatformTreasury.d.ts +426 -0
  272. package/vendor/shared/dist/abi/protocol/PlatformTreasury.d.ts.map +1 -0
  273. package/vendor/shared/dist/abi/protocol/PlatformTreasury.js +554 -0
  274. package/vendor/shared/dist/abi/protocol/PlatformTreasury.js.map +1 -0
  275. package/vendor/shared/dist/abi/protocol/ProtocolProof.d.ts +903 -0
  276. package/vendor/shared/dist/abi/protocol/ProtocolProof.d.ts.map +1 -0
  277. package/vendor/shared/dist/abi/protocol/ProtocolProof.js +1172 -0
  278. package/vendor/shared/dist/abi/protocol/ProtocolProof.js.map +1 -0
  279. package/vendor/shared/dist/abi/protocol/PublisherStaking.d.ts +947 -0
  280. package/vendor/shared/dist/abi/protocol/PublisherStaking.d.ts.map +1 -0
  281. package/vendor/shared/dist/abi/protocol/PublisherStaking.js +1228 -0
  282. package/vendor/shared/dist/abi/protocol/PublisherStaking.js.map +1 -0
  283. package/vendor/shared/dist/abi/protocol/RewardVesting.d.ts +793 -0
  284. package/vendor/shared/dist/abi/protocol/RewardVesting.d.ts.map +1 -0
  285. package/vendor/shared/dist/abi/protocol/RewardVesting.js +1028 -0
  286. package/vendor/shared/dist/abi/protocol/RewardVesting.js.map +1 -0
  287. package/vendor/shared/dist/abi/protocol/TaskEscrow.d.ts +1725 -0
  288. package/vendor/shared/dist/abi/protocol/TaskEscrow.d.ts.map +1 -0
  289. package/vendor/shared/dist/abi/protocol/TaskEscrow.js +2220 -0
  290. package/vendor/shared/dist/abi/protocol/TaskEscrow.js.map +1 -0
  291. package/vendor/shared/dist/abi/protocol/TesterAssignment.d.ts +1058 -0
  292. package/vendor/shared/dist/abi/protocol/TesterAssignment.d.ts.map +1 -0
  293. package/vendor/shared/dist/abi/protocol/TesterAssignment.js +1376 -0
  294. package/vendor/shared/dist/abi/protocol/TesterAssignment.js.map +1 -0
  295. package/vendor/shared/dist/abi/protocol/ValidatorStaking.d.ts +1236 -0
  296. package/vendor/shared/dist/abi/protocol/ValidatorStaking.d.ts.map +1 -0
  297. package/vendor/shared/dist/abi/protocol/ValidatorStaking.js +1615 -0
  298. package/vendor/shared/dist/abi/protocol/ValidatorStaking.js.map +1 -0
  299. package/vendor/shared/dist/abi/protocol/index.d.ts +20 -0
  300. package/vendor/shared/dist/abi/protocol/index.d.ts.map +1 -0
  301. package/vendor/shared/dist/abi/protocol/index.js +20 -0
  302. package/vendor/shared/dist/abi/protocol/index.js.map +1 -0
  303. package/vendor/shared/dist/abi/token/AGTToken.d.ts +786 -0
  304. package/vendor/shared/dist/abi/token/AGTToken.d.ts.map +1 -0
  305. package/vendor/shared/dist/abi/token/AGTToken.js +1019 -0
  306. package/vendor/shared/dist/abi/token/AGTToken.js.map +1 -0
  307. package/vendor/shared/dist/abi/token/GenesisDistributor.d.ts +187 -0
  308. package/vendor/shared/dist/abi/token/GenesisDistributor.d.ts.map +1 -0
  309. package/vendor/shared/dist/abi/token/GenesisDistributor.js +243 -0
  310. package/vendor/shared/dist/abi/token/GenesisDistributor.js.map +1 -0
  311. package/vendor/shared/dist/abi/token/LPLocker.d.ts +16 -0
  312. package/vendor/shared/dist/abi/token/LPLocker.d.ts.map +1 -0
  313. package/vendor/shared/dist/abi/token/LPLocker.js +22 -0
  314. package/vendor/shared/dist/abi/token/LPLocker.js.map +1 -0
  315. package/vendor/shared/dist/abi/token/LaunchLiquidity.d.ts +260 -0
  316. package/vendor/shared/dist/abi/token/LaunchLiquidity.d.ts.map +1 -0
  317. package/vendor/shared/dist/abi/token/LaunchLiquidity.js +336 -0
  318. package/vendor/shared/dist/abi/token/LaunchLiquidity.js.map +1 -0
  319. package/vendor/shared/dist/abi/token/LiquidityAdder.d.ts +176 -0
  320. package/vendor/shared/dist/abi/token/LiquidityAdder.d.ts.map +1 -0
  321. package/vendor/shared/dist/abi/token/LiquidityAdder.js +229 -0
  322. package/vendor/shared/dist/abi/token/LiquidityAdder.js.map +1 -0
  323. package/vendor/shared/dist/abi/token/TaxDistributor.d.ts +182 -0
  324. package/vendor/shared/dist/abi/token/TaxDistributor.d.ts.map +1 -0
  325. package/vendor/shared/dist/abi/token/TaxDistributor.js +236 -0
  326. package/vendor/shared/dist/abi/token/TaxDistributor.js.map +1 -0
  327. package/vendor/shared/dist/abi/token/TestFaucet.d.ts +164 -0
  328. package/vendor/shared/dist/abi/token/TestFaucet.d.ts.map +1 -0
  329. package/vendor/shared/dist/abi/token/TestFaucet.js +215 -0
  330. package/vendor/shared/dist/abi/token/TestFaucet.js.map +1 -0
  331. package/vendor/shared/dist/abi/token/index.d.ts +8 -0
  332. package/vendor/shared/dist/abi/token/index.d.ts.map +1 -0
  333. package/vendor/shared/dist/abi/token/index.js +8 -0
  334. package/vendor/shared/dist/abi/token/index.js.map +1 -0
  335. package/vendor/shared/dist/emission-schedule.d.ts +51 -0
  336. package/vendor/shared/dist/emission-schedule.d.ts.map +1 -0
  337. package/vendor/shared/dist/emission-schedule.js +116 -0
  338. package/vendor/shared/dist/emission-schedule.js.map +1 -0
  339. package/vendor/shared/dist/index.d.ts +7 -0
  340. package/vendor/shared/dist/index.d.ts.map +1 -0
  341. package/vendor/shared/dist/index.js +7 -0
  342. package/vendor/shared/dist/index.js.map +1 -0
  343. package/vendor/shared/dist/params/index.d.ts +6 -0
  344. package/vendor/shared/dist/params/index.d.ts.map +1 -0
  345. package/vendor/shared/dist/params/index.js +84 -0
  346. package/vendor/shared/dist/params/index.js.map +1 -0
  347. package/vendor/shared/dist/protocol-proofs.d.ts +267 -0
  348. package/vendor/shared/dist/protocol-proofs.d.ts.map +1 -0
  349. package/vendor/shared/dist/protocol-proofs.js +205 -0
  350. package/vendor/shared/dist/protocol-proofs.js.map +1 -0
  351. package/vendor/shared/dist/rules/index.d.ts +204 -0
  352. package/vendor/shared/dist/rules/index.d.ts.map +1 -0
  353. package/vendor/shared/dist/rules/index.js +802 -0
  354. package/vendor/shared/dist/rules/index.js.map +1 -0
  355. package/vendor/shared/dist/rules/spec-content.d.ts +21 -0
  356. package/vendor/shared/dist/rules/spec-content.d.ts.map +1 -0
  357. package/vendor/shared/dist/rules/spec-content.js +90 -0
  358. package/vendor/shared/dist/rules/spec-content.js.map +1 -0
  359. package/vendor/shared/dist/rules/task-risk.d.ts +35 -0
  360. package/vendor/shared/dist/rules/task-risk.d.ts.map +1 -0
  361. package/vendor/shared/dist/rules/task-risk.js +438 -0
  362. package/vendor/shared/dist/rules/task-risk.js.map +1 -0
  363. package/vendor/shared/dist/schemas/domain.d.ts +195 -0
  364. package/vendor/shared/dist/schemas/domain.d.ts.map +1 -0
  365. package/vendor/shared/dist/schemas/domain.js +158 -0
  366. package/vendor/shared/dist/schemas/domain.js.map +1 -0
  367. package/vendor/shared/dist/schemas/draft.d.ts +730 -0
  368. package/vendor/shared/dist/schemas/draft.d.ts.map +1 -0
  369. package/vendor/shared/dist/schemas/draft.js +110 -0
  370. package/vendor/shared/dist/schemas/draft.js.map +1 -0
  371. package/vendor/shared/dist/schemas/enums.d.ts +130 -0
  372. package/vendor/shared/dist/schemas/enums.d.ts.map +1 -0
  373. package/vendor/shared/dist/schemas/enums.js +63 -0
  374. package/vendor/shared/dist/schemas/enums.js.map +1 -0
  375. package/vendor/shared/dist/schemas/index.d.ts +4 -0
  376. package/vendor/shared/dist/schemas/index.d.ts.map +1 -0
  377. package/vendor/shared/dist/schemas/index.js +4 -0
  378. package/vendor/shared/dist/schemas/index.js.map +1 -0
  379. package/vendor/shared/dist/units.d.ts +10 -0
  380. package/vendor/shared/dist/units.d.ts.map +1 -0
  381. package/vendor/shared/dist/units.js +44 -0
  382. package/vendor/shared/dist/units.js.map +1 -0
  383. package/vendor/shared/openapi.json +78754 -0
  384. package/vendor/shared/package.json +43 -0
  385. package/vendor/shared/params/params.json +152 -0
  386. package/vendor/shared/params/ranges.json +574 -0
  387. package/vendor/shared/src/emission-schedule.ts +151 -0
  388. package/vendor/shared/src/index.ts +6 -0
  389. package/vendor/shared/src/params/index.ts +139 -0
  390. package/vendor/shared/src/protocol-proofs.ts +235 -0
  391. package/vendor/shared/src/rules/index.ts +1081 -0
  392. package/vendor/shared/src/rules/spec-content.ts +120 -0
  393. package/vendor/shared/src/rules/task-risk.ts +550 -0
  394. package/vendor/shared/src/schemas/domain.ts +187 -0
  395. package/vendor/shared/src/schemas/draft.ts +141 -0
  396. package/vendor/shared/src/schemas/enums.ts +73 -0
  397. package/vendor/shared/src/schemas/index.ts +3 -0
  398. package/vendor/shared/src/units.ts +43 -0
  399. package/vendor/shared/test/emission-schedule.test.ts +115 -0
  400. package/vendor/shared/test/fixtures/emission-vectors.json +1055 -0
  401. package/vendor/shared/test/fixtures.ts +65 -0
  402. package/vendor/shared/test/params.test.ts +48 -0
  403. package/vendor/shared/test/properties.test.ts +136 -0
  404. package/vendor/shared/test/protocol-proofs.test.ts +88 -0
  405. package/vendor/shared/test/rules.test.ts +474 -0
  406. package/vendor/shared/test/schemas.test.ts +130 -0
  407. package/vendor/shared/test/task-risk.test.ts +489 -0
  408. package/vendor/shared/tsconfig.abi.json +11 -0
  409. package/vendor/shared/tsconfig.json +23 -0
  410. package/vendor/shared/types/api/index.d.ts +303 -0
  411. package/vendor/shared/vitest.config.ts +8 -0
@@ -0,0 +1,574 @@
1
+ {
2
+ "tokenTotalAgt": {
3
+ "fixed": true
4
+ },
5
+ "treasuryGenesisAgt": {
6
+ "fixed": true
7
+ },
8
+ "liquidityGenesisAgt": {
9
+ "fixed": true
10
+ },
11
+ "teamGenesisAgt": {
12
+ "fixed": true
13
+ },
14
+ "tierDailyFee.T1": {
15
+ "min": 100,
16
+ "max": 1000
17
+ },
18
+ "tierDailyFee.T2": {
19
+ "min": 500,
20
+ "max": 5000
21
+ },
22
+ "tierDailyFee.T3": {
23
+ "min": 5000,
24
+ "max": 50000
25
+ },
26
+ "tierDailyFee.T4": {
27
+ "min": 20000,
28
+ "max": 150000
29
+ },
30
+ "tierDailyFee.T5": {
31
+ "min": 50000,
32
+ "max": 500000
33
+ },
34
+ "tierDaysMin.T1": {
35
+ "min": 1,
36
+ "max": 3
37
+ },
38
+ "tierDaysMin.T2": {
39
+ "min": 1,
40
+ "max": 3
41
+ },
42
+ "tierDaysMin.T3": {
43
+ "min": 1,
44
+ "max": 7
45
+ },
46
+ "tierDaysMin.T4": {
47
+ "min": 1,
48
+ "max": 7
49
+ },
50
+ "tierDaysMin.T5": {
51
+ "min": 1,
52
+ "max": 7
53
+ },
54
+ "tierDaysMax.T1": {
55
+ "min": 3,
56
+ "max": 14
57
+ },
58
+ "tierDaysMax.T2": {
59
+ "min": 7,
60
+ "max": 30
61
+ },
62
+ "tierDaysMax.T3": {
63
+ "min": 14,
64
+ "max": 60
65
+ },
66
+ "tierDaysMax.T4": {
67
+ "min": 30,
68
+ "max": 90
69
+ },
70
+ "tierDaysMax.T5": {
71
+ "min": 14,
72
+ "max": 120
73
+ },
74
+ "tierBaseQuota.T1": {
75
+ "min": 1,
76
+ "max": 5
77
+ },
78
+ "tierBaseQuota.T2": {
79
+ "min": 3,
80
+ "max": 10
81
+ },
82
+ "tierBaseQuota.T3": {
83
+ "min": 5,
84
+ "max": 15
85
+ },
86
+ "submissionMultiplier": {
87
+ "min": 2,
88
+ "max": 5
89
+ },
90
+ "tierRangeOffset": {
91
+ "min": 1,
92
+ "max": 3
93
+ },
94
+ "participantsDefault": {
95
+ "fixed": true
96
+ },
97
+ "participantsMin": {
98
+ "fixed": true
99
+ },
100
+ "participantsWarning": {
101
+ "fixed": true
102
+ },
103
+ "participantsMax": {
104
+ "fixed": true
105
+ },
106
+ "deductionExecBps": {
107
+ "min": 5000,
108
+ "max": 8000
109
+ },
110
+ "deductionTestBps": {
111
+ "min": 1000,
112
+ "max": 2000
113
+ },
114
+ "deductionRevBps": {
115
+ "min": 500,
116
+ "max": 1500
117
+ },
118
+ "deductionPlatBps": {
119
+ "min": 300,
120
+ "max": 1000
121
+ },
122
+ "assessmentFeeBaseBps": {
123
+ "min": 200,
124
+ "max": 1000
125
+ },
126
+ "passingThresholdDefault": {
127
+ "min": 50,
128
+ "max": 90
129
+ },
130
+ "passingThresholdMin": {
131
+ "fixed": true
132
+ },
133
+ "passingThresholdMax": {
134
+ "fixed": true
135
+ },
136
+ "junkThreshold": {
137
+ "min": 10,
138
+ "max": 30
139
+ },
140
+ "emissionHalfLifeDays": {
141
+ "min": 365,
142
+ "max": 1825
143
+ },
144
+ "unrecoverableCostBps": {
145
+ "min": 300,
146
+ "max": 1500
147
+ },
148
+ "emissionPlatformBps": {
149
+ "min": 500,
150
+ "max": 2000
151
+ },
152
+ "emissionExecBps": {
153
+ "min": 5000,
154
+ "max": 8000
155
+ },
156
+ "emissionTestBps": {
157
+ "min": 500,
158
+ "max": 3000
159
+ },
160
+ "emissionArbBps": {
161
+ "min": 500,
162
+ "max": 2000
163
+ },
164
+ "arbCaseBonusBps.T1": {
165
+ "min": 0,
166
+ "max": 2000
167
+ },
168
+ "arbCaseBonusBps.T2": {
169
+ "min": 0,
170
+ "max": 2000
171
+ },
172
+ "arbCaseBonusBps.T3": {
173
+ "min": 0,
174
+ "max": 3000
175
+ },
176
+ "arbCaseBonusBps.T4": {
177
+ "min": 0,
178
+ "max": 3000
179
+ },
180
+ "arbCaseBonusBps.T5": {
181
+ "min": 0,
182
+ "max": 5000
183
+ },
184
+ "anchorIntervalHours": {
185
+ "min": 1,
186
+ "max": 6
187
+ },
188
+ "executorAppealWindowMinutes": {
189
+ "min": 5,
190
+ "max": 2880
191
+ },
192
+ "appealRetestHours": {
193
+ "min": 12,
194
+ "max": 72
195
+ },
196
+ "appealFeeBps": {
197
+ "min": 100,
198
+ "max": 1000
199
+ },
200
+ "appealFeeCapAgt": {
201
+ "min": 100,
202
+ "max": 10000
203
+ },
204
+ "appealRetestCount": {
205
+ "fixed": true
206
+ },
207
+ "openClaimPeriodDays": {
208
+ "min": 3,
209
+ "max": 14
210
+ },
211
+ "escalationStepMinHours": {
212
+ "min": 2,
213
+ "max": 12
214
+ },
215
+ "escalationStepPctBps": {
216
+ "min": 500,
217
+ "max": 2000
218
+ },
219
+ "earliestSubmitPctBps": {
220
+ "min": 500,
221
+ "max": 2000
222
+ },
223
+ "earliestSubmitMinHours": {
224
+ "min": 1,
225
+ "max": 6
226
+ },
227
+ "earliestSubmitMaxHours": {
228
+ "min": 24,
229
+ "max": 168
230
+ },
231
+ "graceHours": {
232
+ "min": 12,
233
+ "max": 48
234
+ },
235
+ "publisherReviewHours": {
236
+ "min": 24,
237
+ "max": 72
238
+ },
239
+ "noSubmissionFallbackDays": {
240
+ "min": 3,
241
+ "max": 30
242
+ },
243
+ "testerCount": {
244
+ "fixed": true
245
+ },
246
+ "testerReportWindowHours": {
247
+ "min": 12,
248
+ "max": 72
249
+ },
250
+ "testerReportExtendedWindowHours": {
251
+ "min": 24,
252
+ "max": 96
253
+ },
254
+ "testerRedrawRoundsMax": {
255
+ "min": 1,
256
+ "max": 4
257
+ },
258
+ "testerPairDecayBps.1": {
259
+ "fixed": true
260
+ },
261
+ "testerPairDecayBps.2": {
262
+ "min": 5000,
263
+ "max": 9000
264
+ },
265
+ "testerPairDecayBps.3": {
266
+ "min": 2000,
267
+ "max": 7000
268
+ },
269
+ "testerPairDecayBps.4": {
270
+ "min": 1000,
271
+ "max": 5000
272
+ },
273
+ "testerPairDecayBps.5": {
274
+ "min": 0,
275
+ "max": 3000
276
+ },
277
+ "reviewerCount.T1": {
278
+ "fixed": true
279
+ },
280
+ "reviewerCount.T2": {
281
+ "fixed": true
282
+ },
283
+ "reviewerCount.T3": {
284
+ "fixed": true
285
+ },
286
+ "vestingT0Bps": {
287
+ "min": 5000,
288
+ "max": 8000
289
+ },
290
+ "vestingT1Bps": {
291
+ "min": 1000,
292
+ "max": 3000
293
+ },
294
+ "vestingT1Days": {
295
+ "min": 3,
296
+ "max": 14
297
+ },
298
+ "vestingT2Days": {
299
+ "min": 14,
300
+ "max": 60
301
+ },
302
+ "maintenanceDays": {
303
+ "min": 14,
304
+ "max": 60
305
+ },
306
+ "publisherExposureBps": {
307
+ "min": 500,
308
+ "max": 2000
309
+ },
310
+ "publisherBaseStakeAgt": {
311
+ "min": 5,
312
+ "max": 50
313
+ },
314
+ "arbitratorMinStakeAgt": {
315
+ "min": 100000,
316
+ "max": 5000000
317
+ },
318
+ "testerMinStakeAgt": {
319
+ "min": 1000,
320
+ "max": 200000
321
+ },
322
+ "validatorStakeAgt.voluntaryMax": {
323
+ "min": 20000,
324
+ "max": 10000000
325
+ },
326
+ "arbitratorWeightCapAgt": {
327
+ "min": 1000000,
328
+ "max": 10000000
329
+ },
330
+ "testerWeightCapAgt": {
331
+ "min": 20000,
332
+ "max": 1000000
333
+ },
334
+ "validatorInitialLockHours": {
335
+ "min": 168,
336
+ "max": 720
337
+ },
338
+ "validatorExitCooldownHours": {
339
+ "min": 72,
340
+ "max": 336
341
+ },
342
+ "executorPenaltyCooldownHours": {
343
+ "min": 0,
344
+ "max": 720
345
+ },
346
+ "arbPoolBootstrapMin": {
347
+ "min": 5,
348
+ "max": 20
349
+ },
350
+ "randomBlockOffset": {
351
+ "min": 3,
352
+ "max": 10
353
+ },
354
+ "signatureUploadToleranceHours": {
355
+ "min": 1,
356
+ "max": 3
357
+ },
358
+ "caseLockBps": {
359
+ "min": 200,
360
+ "max": 1000
361
+ },
362
+ "caseLockMinAgt": {
363
+ "min": 0.5,
364
+ "max": 500
365
+ },
366
+ "caseLockStakeCapBps": {
367
+ "min": 1000,
368
+ "max": 3000
369
+ },
370
+ "arbitratorConcurrentCasesMax": {
371
+ "min": 1,
372
+ "max": 5
373
+ },
374
+ "arbExposureMultiplierBps.Full": {
375
+ "min": 10000,
376
+ "max": 60000
377
+ },
378
+ "arbExposureMultiplierBps.Degraded": {
379
+ "min": 5000,
380
+ "max": 30000
381
+ },
382
+ "arbFallbackMaxDisputeValueAgt": {
383
+ "min": 1000,
384
+ "max": 100000
385
+ },
386
+ "arbPendingMaxHours": {
387
+ "min": 72,
388
+ "max": 720
389
+ },
390
+ "arbSourceWeightCapBps": {
391
+ "min": 500,
392
+ "max": 2000
393
+ },
394
+ "arbConflictLookbackHours": {
395
+ "min": 168,
396
+ "max": 2160
397
+ },
398
+ "arbMinRevealBps": {
399
+ "fixed": true
400
+ },
401
+ "arbResponseWindowHours": {
402
+ "min": 168,
403
+ "max": 2160
404
+ },
405
+ "arbPanelSize.FullFirst": {
406
+ "fixed": true
407
+ },
408
+ "arbPanelSize.FullFinal": {
409
+ "fixed": true
410
+ },
411
+ "arbPanelSize.DegradedFirst": {
412
+ "fixed": true
413
+ },
414
+ "arbPanelSize.DegradedFinal": {
415
+ "fixed": true
416
+ },
417
+ "arbFallbackTesterCount": {
418
+ "fixed": true
419
+ },
420
+ "arbFallbackApprovalCount": {
421
+ "fixed": true
422
+ },
423
+ "arbFallbackReportWindowHours": {
424
+ "min": 6,
425
+ "max": 72
426
+ },
427
+ "arbMinimumPoolSize": {
428
+ "min": 14,
429
+ "max": 30
430
+ },
431
+ "arbFullPanelThreshold": {
432
+ "min": 30,
433
+ "max": 80
434
+ },
435
+ "arbFullPanelRecoveryHours": {
436
+ "min": 72,
437
+ "max": 336
438
+ },
439
+ "arbAcceptWindowHours": {
440
+ "min": 1,
441
+ "max": 6
442
+ },
443
+ "arbRedrawRoundsMax": {
444
+ "min": 1,
445
+ "max": 4
446
+ },
447
+ "arbStatementMaxChars": {
448
+ "min": 500,
449
+ "max": 5000
450
+ },
451
+ "arbCommitWindowHours": {
452
+ "min": 12,
453
+ "max": 48
454
+ },
455
+ "arbRevealWindowHours": {
456
+ "min": 6,
457
+ "max": 24
458
+ },
459
+ "attendanceFeeMaxAgt": {
460
+ "min": 0.1,
461
+ "max": 2
462
+ },
463
+ "attendanceForecastHours": {
464
+ "min": 168,
465
+ "max": 2160
466
+ },
467
+ "arbPoolSweepIntervalHours": {
468
+ "min": 72,
469
+ "max": 336
470
+ },
471
+ "arbPoolReserveHorizonHours": {
472
+ "min": 720,
473
+ "max": 4320
474
+ },
475
+ "caseFeeBps": {
476
+ "min": 200,
477
+ "max": 1000
478
+ },
479
+ "caseFeeMinAgt": {
480
+ "min": 2,
481
+ "max": 20
482
+ },
483
+ "caseFeeMajorityShareBps": {
484
+ "fixed": true
485
+ },
486
+ "caseFeeWinnerShareBps": {
487
+ "fixed": true
488
+ },
489
+ "caseFeePlatformShareBps": {
490
+ "fixed": true
491
+ },
492
+ "appealBondMultiplierBps": {
493
+ "min": 15000,
494
+ "max": 30000
495
+ },
496
+ "missedCommitSlashBps": {
497
+ "min": 0,
498
+ "max": 5000
499
+ },
500
+ "missedRevealSlashBps": {
501
+ "min": 0,
502
+ "max": 10000
503
+ },
504
+ "finalMinoritySlashBps": {
505
+ "min": 0,
506
+ "max": 3000
507
+ },
508
+ "challengerRewardMultiple": {
509
+ "min": 1,
510
+ "max": 20
511
+ },
512
+ "overturnPlatformShareBps": {
513
+ "fixed": true
514
+ },
515
+ "overturnRighteousShareBps": {
516
+ "fixed": true
517
+ },
518
+ "collusionReporterRewardBps": {
519
+ "min": 500,
520
+ "max": 2000
521
+ },
522
+ "collusionArbPoolShareBps": {
523
+ "min": 8000,
524
+ "max": 9500
525
+ },
526
+ "arbResponseRateMinBps": {
527
+ "min": 3000,
528
+ "max": 8000
529
+ },
530
+ "arbOverturnPauseCount": {
531
+ "min": 2,
532
+ "max": 4
533
+ },
534
+ "arbOverturnDisqualifyCount": {
535
+ "min": 3,
536
+ "max": 6
537
+ },
538
+ "arbDisqualifyHours": {
539
+ "min": 2160,
540
+ "max": 17520
541
+ },
542
+ "arbSuspensionHours": {
543
+ "min": 168,
544
+ "max": 2160
545
+ },
546
+ "arbMinorityStreakPenaltyCount": {
547
+ "min": 3,
548
+ "max": 10
549
+ },
550
+ "testerMissReportSlashMultiple": {
551
+ "min": 1,
552
+ "max": 10
553
+ },
554
+ "testerSlashStakeCapBps": {
555
+ "min": 500,
556
+ "max": 2000
557
+ },
558
+ "voucherClaimWindowHours": {
559
+ "min": 24,
560
+ "max": 168
561
+ },
562
+ "tradeTaxBurnShareBps": {
563
+ "min": 0,
564
+ "max": 10000
565
+ },
566
+ "tradeTaxPlatformShareBps": {
567
+ "min": 0,
568
+ "max": 10000
569
+ },
570
+ "tradeTaxLiquidityShareBps": {
571
+ "min": 0,
572
+ "max": 10000
573
+ }
574
+ }
@@ -0,0 +1,151 @@
1
+ /** Bit-exact continuous emission schedule matching EmissionController fixed-point math. */
2
+
3
+ export const WAD = 10n ** 18n;
4
+ export const HOUR = 3600n;
5
+ export const BPS = 10_000n;
6
+ const LN2_18 = 693_147_180_559_945_309n;
7
+
8
+ export type Schedule = {
9
+ startTime: bigint;
10
+ initialBalance: bigint;
11
+ hourDecay18: bigint;
12
+ platformBps: bigint;
13
+ execBps: bigint;
14
+ testBps: bigint;
15
+ };
16
+
17
+ export type CumulativeShares = {
18
+ released: bigint;
19
+ platform: bigint;
20
+ exec: bigint;
21
+ test: bigint;
22
+ arb: bigint;
23
+ };
24
+
25
+ export type HourShares = {
26
+ emission: bigint;
27
+ platform: bigint;
28
+ exec: bigint;
29
+ test: bigint;
30
+ arb: bigint;
31
+ };
32
+
33
+ /** Floor(a * b / d), matching OpenZeppelin Math.mulDiv for non-overflowing inputs. */
34
+ export function mulDiv(a: bigint, b: bigint, d: bigint): bigint {
35
+ if (d === 0n) throw new Error("mulDiv: division by zero");
36
+ return (a * b) / d;
37
+ }
38
+
39
+ /** 2^(-1/n) via bounded Taylor expansion — matches EmissionController._pow2Neg. */
40
+ export function pow2Neg(n: bigint): bigint {
41
+ if (n === 0n) throw new Error("pow2Neg: n must be > 0");
42
+ const x = mulDiv(LN2_18, WAD, n * WAD);
43
+ let term = WAD;
44
+ let sum = WAD;
45
+ for (let i = 1n; i <= 24n; i++) {
46
+ term = mulDiv(term, x, WAD) / i;
47
+ if ((i & 1n) === 1n) sum -= term;
48
+ else sum += term;
49
+ }
50
+ return sum;
51
+ }
52
+
53
+ /** Hourly decay factor q = 2^(-1/(24H)). */
54
+ export function hourDecay18(halfLifeDays: bigint): bigint {
55
+ return pow2Neg(halfLifeDays * 24n);
56
+ }
57
+
58
+ /** Exponentiation by squaring in WAD: x^k with floor after each multiply. */
59
+ export function powWad(x: bigint, k: bigint): bigint {
60
+ if (k === 0n) return WAD;
61
+ let base = x;
62
+ let exp = k;
63
+ let result = WAD;
64
+ while (exp > 0n) {
65
+ if ((exp & 1n) === 1n) result = mulDiv(result, base, WAD);
66
+ base = mulDiv(base, base, WAD);
67
+ exp >>= 1n;
68
+ }
69
+ return result;
70
+ }
71
+
72
+ export function firstHour(schedule: Schedule): bigint {
73
+ return schedule.startTime / HOUR;
74
+ }
75
+
76
+ function remain(schedule: Schedule, k: bigint): bigint {
77
+ return mulDiv(schedule.initialBalance, powWad(schedule.hourDecay18, k), WAD);
78
+ }
79
+
80
+ function rk(schedule: Schedule, k: bigint): bigint {
81
+ return schedule.initialBalance - remain(schedule, k);
82
+ }
83
+
84
+ /** Cumulative released amount R(t) at absolute unix time t. */
85
+ export function cumulativeReleased(schedule: Schedule, t: bigint): bigint {
86
+ if (t <= schedule.startTime) return 0n;
87
+ const s = t - schedule.startTime;
88
+ const k = s / HOUR;
89
+ const r = s % HOUR;
90
+ const rk0 = rk(schedule, k);
91
+ if (r === 0n) return rk0;
92
+ const rk1 = rk(schedule, k + 1n);
93
+ return rk0 + ((rk1 - rk0) * r) / HOUR;
94
+ }
95
+
96
+ export function cumulativeShares(schedule: Schedule, t: bigint): CumulativeShares {
97
+ const released = cumulativeReleased(schedule, t);
98
+ const platform = mulDiv(released, schedule.platformBps, BPS);
99
+ const exec = mulDiv(released, schedule.execBps, BPS);
100
+ const test = mulDiv(released, schedule.testBps, BPS);
101
+ const arb = released - platform - exec - test;
102
+ return { released, platform, exec, test, arb };
103
+ }
104
+
105
+ function sharesDelta(a: CumulativeShares, b: CumulativeShares): HourShares {
106
+ return {
107
+ emission: b.released - a.released,
108
+ platform: b.platform - a.platform,
109
+ exec: b.exec - a.exec,
110
+ test: b.test - a.test,
111
+ arb: b.arb - a.arb,
112
+ };
113
+ }
114
+
115
+ /** Shares released during absolute hour `hourId` (activation hour is partial). */
116
+ export function hourShares(schedule: Schedule, hourId: bigint): HourShares {
117
+ const hourStart = hourId * HOUR;
118
+ const hourEnd = hourStart + HOUR;
119
+ const a = hourStart < schedule.startTime ? schedule.startTime : hourStart;
120
+ if (a >= hourEnd) {
121
+ return { emission: 0n, platform: 0n, exec: 0n, test: 0n, arb: 0n };
122
+ }
123
+ return sharesDelta(cumulativeShares(schedule, a), cumulativeShares(schedule, hourEnd));
124
+ }
125
+
126
+ /** Arbitration share emitted in [from, to) clipped to [startTime, …). */
127
+ export function arbitrationEmitted(schedule: Schedule, from: bigint, to: bigint): bigint {
128
+ if (to <= from) return 0n;
129
+ const t1 = from < schedule.startTime ? schedule.startTime : from;
130
+ const t2 = to;
131
+ if (t2 <= t1) return 0n;
132
+ return cumulativeShares(schedule, t2).arb - cumulativeShares(schedule, t1).arb;
133
+ }
134
+
135
+ export function buildSchedule(input: {
136
+ startTime: bigint;
137
+ initialBalance: bigint;
138
+ halfLifeDays: bigint;
139
+ platformBps: bigint;
140
+ execBps: bigint;
141
+ testBps: bigint;
142
+ }): Schedule {
143
+ return {
144
+ startTime: input.startTime,
145
+ initialBalance: input.initialBalance,
146
+ hourDecay18: hourDecay18(input.halfLifeDays),
147
+ platformBps: input.platformBps,
148
+ execBps: input.execBps,
149
+ testBps: input.testBps,
150
+ };
151
+ }
@@ -0,0 +1,6 @@
1
+ export * from "./emission-schedule.js";
2
+ export * from "./params/index.js";
3
+ export * from "./protocol-proofs.js";
4
+ export * from "./rules/index.js";
5
+ export * from "./schemas/index.js";
6
+ export * from "./units.js";