@oakagentkit/core 0.2.7 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. package/build/dist/api/addresses.d.ts +9 -0
  2. package/build/dist/api/addresses.js +1 -1
  3. package/build/dist/api/chain.d.ts +4 -0
  4. package/build/dist/api/chain.js +1 -1
  5. package/build/dist/api/history.js +1 -1
  6. package/build/dist/api/identity-link.js +1 -1
  7. package/build/dist/api/metadata.js +1 -1
  8. package/build/dist/api/modules/beefy/boosts.js +1 -1
  9. package/build/dist/api/modules/beefy/clm.js +1 -1
  10. package/build/dist/api/modules/beefy/guard.js +1 -1
  11. package/build/dist/api/modules/beefy/index.js +1 -1
  12. package/build/dist/api/modules/beefy/liquidity.js +1 -1
  13. package/build/dist/api/modules/beefy/management.js +1 -1
  14. package/build/dist/api/modules/beefy/vaults.js +1 -1
  15. package/build/dist/api/modules/borro/abi.d.ts +54 -0
  16. package/build/dist/api/modules/borro/abi.js +1 -1
  17. package/build/dist/api/modules/borro/actions.d.ts +14 -1
  18. package/build/dist/api/modules/borro/actions.js +1 -1
  19. package/build/dist/api/modules/borro/checks.js +1 -1
  20. package/build/dist/api/modules/borro/copy.d.ts +10 -2
  21. package/build/dist/api/modules/borro/copy.js +1 -1
  22. package/build/dist/api/modules/borro/index.js +1 -1
  23. package/build/dist/api/modules/borro/liquidity.js +1 -1
  24. package/build/dist/api/modules/borro/pins.d.ts +30 -14
  25. package/build/dist/api/modules/borro/pins.js +1 -1
  26. package/build/dist/api/modules/borro/positions.js +1 -1
  27. package/build/dist/api/modules/borro/reader.js +1 -1
  28. package/build/dist/api/modules/borro/types.d.ts +1 -0
  29. package/build/dist/api/modules/chop/guard.js +1 -1
  30. package/build/dist/api/modules/chop/index.js +1 -1
  31. package/build/dist/api/modules/clanker/extensions.js +1 -1
  32. package/build/dist/api/modules/clanker/index.js +1 -1
  33. package/build/dist/api/modules/clanker/manage.js +1 -1
  34. package/build/dist/api/modules/clanker/pool-config.js +1 -1
  35. package/build/dist/api/modules/clanker/protocol.js +1 -1
  36. package/build/dist/api/modules/clanker/state.js +1 -1
  37. package/build/dist/api/modules/earn/copy.d.ts +6 -6
  38. package/build/dist/api/modules/earn/copy.js +1 -1
  39. package/build/dist/api/modules/earn/cost.d.ts +1 -1
  40. package/build/dist/api/modules/earn/cost.js +1 -1
  41. package/build/dist/api/modules/earn/index.js +1 -1
  42. package/build/dist/api/modules/earn/lp.js +1 -1
  43. package/build/dist/api/modules/earn/options.js +1 -1
  44. package/build/dist/api/modules/erc8004/common.js +1 -1
  45. package/build/dist/api/modules/erc8004/domain.js +1 -1
  46. package/build/dist/api/modules/erc8004/index.js +1 -1
  47. package/build/dist/api/modules/erc8004/management.js +1 -1
  48. package/build/dist/api/modules/erc8004/reputation.js +1 -1
  49. package/build/dist/api/modules/erc8004/services.js +1 -1
  50. package/build/dist/api/modules/erc8004/thesis.d.ts +61 -0
  51. package/build/dist/api/modules/erc8004/thesis.js +1 -0
  52. package/build/dist/api/modules/erc8004/validation.js +1 -1
  53. package/build/dist/api/modules/gloam/index.js +1 -1
  54. package/build/dist/api/modules/grove/index.js +1 -1
  55. package/build/dist/api/modules/heyresearch/builder-feed.js +1 -1
  56. package/build/dist/api/modules/heyresearch/index.js +1 -1
  57. package/build/dist/api/modules/heyresearch/public-reads.js +1 -1
  58. package/build/dist/api/modules/heyresearch/token-facts.js +1 -1
  59. package/build/dist/api/modules/hoodag/chain-reads.js +1 -1
  60. package/build/dist/api/modules/hoodag/index.d.ts +12 -1
  61. package/build/dist/api/modules/hoodag/index.js +1 -1
  62. package/build/dist/api/modules/hoodag/management.js +1 -1
  63. package/build/dist/api/modules/hoodag/public-reads.js +1 -1
  64. package/build/dist/api/modules/hoodag/reconstruct.d.ts +14 -0
  65. package/build/dist/api/modules/hoodag/reconstruct.js +1 -1
  66. package/build/dist/api/modules/hoodlock/airdrop.js +1 -1
  67. package/build/dist/api/modules/hoodlock/buyback.js +1 -1
  68. package/build/dist/api/modules/hoodlock/commerce.js +1 -1
  69. package/build/dist/api/modules/hoodlock/fee.js +1 -1
  70. package/build/dist/api/modules/hoodlock/guard.js +1 -1
  71. package/build/dist/api/modules/hoodlock/index.js +1 -1
  72. package/build/dist/api/modules/hoodlock/lifecycle.js +1 -1
  73. package/build/dist/api/modules/hoodlock/locks-burn.js +1 -1
  74. package/build/dist/api/modules/hoodlock/public.js +1 -1
  75. package/build/dist/api/modules/hookr/actions.js +1 -1
  76. package/build/dist/api/modules/hookr/addons.js +1 -1
  77. package/build/dist/api/modules/hookr/agent-gate.js +1 -1
  78. package/build/dist/api/modules/hookr/contracts.js +1 -1
  79. package/build/dist/api/modules/hookr/create-cancel.js +1 -1
  80. package/build/dist/api/modules/hookr/discovery.js +1 -1
  81. package/build/dist/api/modules/hookr/fill-bounty.js +1 -1
  82. package/build/dist/api/modules/hookr/index.js +1 -1
  83. package/build/dist/api/modules/hookr/launch-options.js +1 -1
  84. package/build/dist/api/modules/hookr/launch-receipt.js +1 -1
  85. package/build/dist/api/modules/hookr/launch.js +1 -1
  86. package/build/dist/api/modules/hookr/liquidity.js +1 -1
  87. package/build/dist/api/modules/hookr/lp-positions.js +1 -1
  88. package/build/dist/api/modules/hookr/lp-reads.js +1 -1
  89. package/build/dist/api/modules/hookr/lp-receipt.js +1 -1
  90. package/build/dist/api/modules/hookr/lp-state.js +1 -1
  91. package/build/dist/api/modules/hookr/public-reads.js +1 -1
  92. package/build/dist/api/modules/hookr/read-utils.js +1 -1
  93. package/build/dist/api/modules/hookr/relay.js +1 -1
  94. package/build/dist/api/modules/hookr/revenue.js +1 -1
  95. package/build/dist/api/modules/kyberswap/index.d.ts +2 -1
  96. package/build/dist/api/modules/kyberswap/index.js +1 -1
  97. package/build/dist/api/modules/kyberswap/source-pools.js +1 -1
  98. package/build/dist/api/modules/layerbank/abi.js +1 -1
  99. package/build/dist/api/modules/layerbank/actions.js +1 -1
  100. package/build/dist/api/modules/layerbank/checks.js +1 -1
  101. package/build/dist/api/modules/layerbank/index.js +1 -1
  102. package/build/dist/api/modules/layerbank/merkl.js +1 -1
  103. package/build/dist/api/modules/layerbank/reader.js +1 -1
  104. package/build/dist/api/modules/layerbank/reserve.js +1 -1
  105. package/build/dist/api/modules/lighter/index.js +1 -1
  106. package/build/dist/api/modules/longbow/administration.js +1 -1
  107. package/build/dist/api/modules/longbow/analytics.js +1 -1
  108. package/build/dist/api/modules/longbow/fixed.js +1 -1
  109. package/build/dist/api/modules/longbow/index.js +1 -1
  110. package/build/dist/api/modules/longbow/nft.js +1 -1
  111. package/build/dist/api/modules/longbow/rebates.js +1 -1
  112. package/build/dist/api/modules/longbow/staking.js +1 -1
  113. package/build/dist/api/modules/meridian/index.js +1 -1
  114. package/build/dist/api/modules/meridian/markets.js +1 -1
  115. package/build/dist/api/modules/meridian/predict-read.js +1 -1
  116. package/build/dist/api/modules/meridian/rfq.js +1 -1
  117. package/build/dist/api/modules/merkl/discovery.js +1 -1
  118. package/build/dist/api/modules/merkl/index.js +1 -1
  119. package/build/dist/api/modules/merkl/manage.js +1 -1
  120. package/build/dist/api/modules/merkl/protocol.js +1 -1
  121. package/build/dist/api/modules/morpho/allocator.js +1 -1
  122. package/build/dist/api/modules/morpho/bundles.js +1 -1
  123. package/build/dist/api/modules/morpho/in-kind.js +1 -1
  124. package/build/dist/api/modules/morpho/index.js +1 -1
  125. package/build/dist/api/modules/morpho/local-guard.js +1 -1
  126. package/build/dist/api/modules/morpho/midnight.js +1 -1
  127. package/build/dist/api/modules/morpho/protocol.js +1 -1
  128. package/build/dist/api/modules/morpho/vault-management.js +1 -1
  129. package/build/dist/api/modules/morpho/vault-tools.js +1 -1
  130. package/build/dist/api/modules/morpho/vault-v2.js +1 -1
  131. package/build/dist/api/modules/netnet/card-plan.js +1 -1
  132. package/build/dist/api/modules/netnet/card-policy.d.ts +1 -0
  133. package/build/dist/api/modules/netnet/card-policy.js +1 -1
  134. package/build/dist/api/modules/netnet/card-read.js +1 -1
  135. package/build/dist/api/modules/netnet/card-recovery.js +1 -1
  136. package/build/dist/api/modules/netnet/desk-action.js +1 -1
  137. package/build/dist/api/modules/netnet/desk-read.js +1 -1
  138. package/build/dist/api/modules/netnet/financial.js +1 -1
  139. package/build/dist/api/modules/netnet/index.js +1 -1
  140. package/build/dist/api/modules/netnet/staking.js +1 -1
  141. package/build/dist/api/modules/orbio/index.d.ts +6 -0
  142. package/build/dist/api/modules/orbio/index.js +1 -1
  143. package/build/dist/api/modules/orbio/positions.js +1 -1
  144. package/build/dist/api/modules/pendle/costs.js +1 -1
  145. package/build/dist/api/modules/pendle/index.js +1 -1
  146. package/build/dist/api/modules/pendle/markets.js +1 -1
  147. package/build/dist/api/modules/pendle/positions.js +1 -1
  148. package/build/dist/api/modules/pendle/pricecheck.js +1 -1
  149. package/build/dist/api/modules/pendle/reader.js +1 -1
  150. package/build/dist/api/modules/pendle/redeem.js +1 -1
  151. package/build/dist/api/modules/pendle/trade.js +1 -1
  152. package/build/dist/api/modules/pendle/validate.js +1 -1
  153. package/build/dist/api/modules/pendle/verify.js +1 -1
  154. package/build/dist/api/modules/pons/claim.js +1 -1
  155. package/build/dist/api/modules/pons/index.js +1 -1
  156. package/build/dist/api/modules/pons/launch-status.js +1 -1
  157. package/build/dist/api/modules/pons/prices.js +1 -1
  158. package/build/dist/api/modules/pons/reads.js +1 -1
  159. package/build/dist/api/modules/pons/swap-terms.js +1 -1
  160. package/build/dist/api/modules/pons/trade.js +1 -1
  161. package/build/dist/api/modules/poolstrade/index.js +1 -1
  162. package/build/dist/api/modules/priors/coverage.js +1 -1
  163. package/build/dist/api/modules/priors/discovery.js +1 -1
  164. package/build/dist/api/modules/priors/features.js +1 -1
  165. package/build/dist/api/modules/priors/holdings.js +1 -1
  166. package/build/dist/api/modules/priors/index.js +1 -1
  167. package/build/dist/api/modules/priors/integration.js +1 -1
  168. package/build/dist/api/modules/priors/market.js +1 -1
  169. package/build/dist/api/modules/priors/pt.js +1 -1
  170. package/build/dist/api/modules/priors/savings-exit.js +1 -1
  171. package/build/dist/api/modules/priors/starter-line.js +1 -1
  172. package/build/dist/api/modules/priors/stock-swap.js +1 -1
  173. package/build/dist/api/modules/raeto/index.js +1 -1
  174. package/build/dist/api/modules/relay/api.js +1 -1
  175. package/build/dist/api/modules/relay/bootstrap.js +1 -1
  176. package/build/dist/api/modules/relay/discovery.js +1 -1
  177. package/build/dist/api/modules/relay/inbound.js +1 -1
  178. package/build/dist/api/modules/relay/index.js +1 -1
  179. package/build/dist/api/modules/relay/order.js +1 -1
  180. package/build/dist/api/modules/relay/outbound-status.js +1 -1
  181. package/build/dist/api/modules/relay/readiness.js +1 -1
  182. package/build/dist/api/modules/relay/reads.js +1 -1
  183. package/build/dist/api/modules/relay/vaults.js +1 -1
  184. package/build/dist/api/modules/spark/actions.js +1 -1
  185. package/build/dist/api/modules/spark/details.js +1 -1
  186. package/build/dist/api/modules/spark/index.js +1 -1
  187. package/build/dist/api/modules/spark/management.js +1 -1
  188. package/build/dist/api/modules/steakhouse/analytics.js +1 -1
  189. package/build/dist/api/modules/steakhouse/erc4626.js +1 -1
  190. package/build/dist/api/modules/steakhouse/index.js +1 -1
  191. package/build/dist/api/modules/steakhouse/local-guard.js +1 -1
  192. package/build/dist/api/modules/steakhouse/management.js +1 -1
  193. package/build/dist/api/modules/steakhouse/v2-exit.js +1 -1
  194. package/build/dist/api/modules/tickerspring/basket-routes.js +1 -1
  195. package/build/dist/api/modules/tickerspring/contract-reads.js +1 -1
  196. package/build/dist/api/modules/tickerspring/discovery.js +1 -1
  197. package/build/dist/api/modules/tickerspring/exit-preview.js +1 -1
  198. package/build/dist/api/modules/tickerspring/guards.js +1 -1
  199. package/build/dist/api/modules/tickerspring/index.js +1 -1
  200. package/build/dist/api/modules/tickerspring/journeys.js +1 -1
  201. package/build/dist/api/modules/tickerspring/ladder.js +1 -1
  202. package/build/dist/api/modules/tickerspring/maker.js +1 -1
  203. package/build/dist/api/modules/tickerspring/order-accounting.js +1 -1
  204. package/build/dist/api/modules/tickerspring/research.js +1 -1
  205. package/build/dist/api/modules/tickerspring/strategies.js +1 -1
  206. package/build/dist/api/modules/uniswap/auction-create.js +1 -1
  207. package/build/dist/api/modules/uniswap/auction.js +1 -1
  208. package/build/dist/api/modules/uniswap/batch.js +1 -1
  209. package/build/dist/api/modules/uniswap/common.js +1 -1
  210. package/build/dist/api/modules/uniswap/fees.js +1 -1
  211. package/build/dist/api/modules/uniswap/index.js +1 -1
  212. package/build/dist/api/modules/uniswap/local-guard.js +1 -1
  213. package/build/dist/api/modules/uniswap/oracle.js +1 -1
  214. package/build/dist/api/modules/uniswap/pool-math.js +1 -1
  215. package/build/dist/api/modules/uniswap/pools.js +1 -1
  216. package/build/dist/api/modules/uniswap/position.js +1 -1
  217. package/build/dist/api/modules/uniswap/protocol.js +1 -1
  218. package/build/dist/api/modules/uniswap/quote-guard.js +1 -1
  219. package/build/dist/api/modules/uniswap/token-jar.js +1 -1
  220. package/build/dist/api/modules/uniswap/trade-batch.js +1 -1
  221. package/build/dist/api/modules/uniswap/trade.js +1 -1
  222. package/build/dist/api/modules/uniswap/v2.js +1 -1
  223. package/build/dist/api/modules/uniswap/v3.js +1 -1
  224. package/build/dist/api/modules/uniswap/v4.js +1 -1
  225. package/build/dist/api/modules/uniswap/wrap.js +1 -1
  226. package/build/dist/api/modules/upoch/copy.d.ts +5 -0
  227. package/build/dist/api/modules/upoch/copy.js +1 -0
  228. package/build/dist/api/modules/upoch/index.d.ts +8 -0
  229. package/build/dist/api/modules/upoch/index.js +1 -0
  230. package/build/dist/api/modules/upoch/pins.d.ts +8 -0
  231. package/build/dist/api/modules/upoch/pins.js +1 -0
  232. package/build/dist/api/modules/upoch/reads.d.ts +509 -0
  233. package/build/dist/api/modules/upoch/reads.js +1 -0
  234. package/build/dist/api/modules/velora/claims.js +1 -1
  235. package/build/dist/api/modules/velora/delta-reads.js +1 -1
  236. package/build/dist/api/modules/velora/index.js +1 -1
  237. package/build/dist/api/modules/wormhole/index.js +1 -1
  238. package/build/dist/api/modules/wormhole/x402-client.d.ts +17 -1
  239. package/build/dist/api/modules/wormhole/x402-client.js +1 -1
  240. package/build/dist/api/positions.js +1 -1
  241. package/build/dist/api/pricenote.js +1 -1
  242. package/build/dist/api/prices.js +1 -1
  243. package/build/dist/api/pricing.js +1 -1
  244. package/build/dist/api/rpc.js +1 -1
  245. package/build/dist/api/secret-fields.d.ts +2 -0
  246. package/build/dist/api/secret-fields.js +1 -1
  247. package/build/dist/api/send.js +1 -1
  248. package/build/dist/api/signing-registry.js +1 -1
  249. package/build/dist/api/signing.js +1 -1
  250. package/build/dist/api/simulate.js +1 -1
  251. package/build/dist/api/swap.js +1 -1
  252. package/build/dist/api/tokens.js +1 -1
  253. package/build/dist/api/tool-policy.d.ts +1 -0
  254. package/build/dist/api/tool-policy.js +1 -1
  255. package/build/dist/api/usd-estimate.js +1 -1
  256. package/build/dist/chunks/23HNDJ76.js +2 -0
  257. package/build/dist/chunks/{JS53DQVT.js → 24Q3FNGX.js} +1 -1
  258. package/build/dist/chunks/{N245WC5R.js → 25C4DTVA.js} +1 -1
  259. package/build/dist/chunks/{PV4AK32X.js → 2HN3U6OG.js} +1 -1
  260. package/build/dist/chunks/{GQYV4TFO.js → 2OVJ2BTJ.js} +1 -1
  261. package/build/dist/chunks/{DYYEA5HB.js → 2QGLPY2D.js} +1 -1
  262. package/build/dist/chunks/{ZFU65MB4.js → 2WRXH6BL.js} +1 -1
  263. package/build/dist/chunks/{EZZM2GQT.js → 2ZBSE2LD.js} +1 -1
  264. package/build/dist/chunks/{HIX5N25Z.js → 2ZQ7X223.js} +1 -1
  265. package/build/dist/chunks/{V37L4DU4.js → 3A2IKFTV.js} +1 -1
  266. package/build/dist/chunks/{FWIFTPSE.js → 3PU2SD3U.js} +1 -1
  267. package/build/dist/chunks/{SBY4RJ7I.js → 3ZH5SOC2.js} +1 -1
  268. package/build/dist/chunks/4NBXBKOX.js +2 -0
  269. package/build/dist/chunks/{FOKEFXGP.js → 4PLLS6CT.js} +1 -1
  270. package/build/dist/chunks/{KREBNL2D.js → 4R3G3H42.js} +1 -1
  271. package/build/dist/chunks/{XHYFISVV.js → 4Z3IGMU6.js} +1 -1
  272. package/build/dist/chunks/{CSDN4MYP.js → 5GQJVKVY.js} +1 -1
  273. package/build/dist/chunks/{JOKL5L6X.js → 5R576SDB.js} +1 -1
  274. package/build/dist/chunks/{UUID2E22.js → 5W74Z4WZ.js} +1 -1
  275. package/build/dist/chunks/{EH5G4O3U.js → 65356YKW.js} +1 -1
  276. package/build/dist/chunks/{QFSBDPLN.js → 65OITTDL.js} +1 -1
  277. package/build/dist/chunks/{DSTMEY5F.js → 6F527FLN.js} +1 -1
  278. package/build/dist/chunks/{CO4GCF4L.js → 6MDYKE2O.js} +1 -1
  279. package/build/dist/chunks/{IEG6GLFR.js → 6OCLWSMZ.js} +1 -1
  280. package/build/dist/chunks/75SULXNT.js +1 -0
  281. package/build/dist/chunks/{WU7XIAXB.js → 7EACRKFV.js} +1 -1
  282. package/build/dist/chunks/{AMTRDPVO.js → 7U62MMUQ.js} +1 -1
  283. package/build/dist/chunks/{DW4V5PUY.js → 7VH6JQ2H.js} +1 -1
  284. package/build/dist/chunks/{XVJ7ILKK.js → A2V4NFVA.js} +1 -1
  285. package/build/dist/chunks/A3BJSQ23.js +1 -0
  286. package/build/dist/chunks/{YSMWCKIX.js → ADIPEGNN.js} +1 -1
  287. package/build/dist/chunks/ANIF3JMV.js +4 -0
  288. package/build/dist/chunks/{RLI4JDOL.js → ATEVAJ5Y.js} +1 -1
  289. package/build/dist/chunks/{F3VDVTMS.js → B2HSLY5F.js} +1 -1
  290. package/build/dist/chunks/{N4XNNXOJ.js → B7BNDW35.js} +1 -1
  291. package/build/dist/chunks/{GLF7WEY2.js → C6VJAL5B.js} +1 -1
  292. package/build/dist/chunks/{5PI57UC2.js → C76D54YG.js} +1 -1
  293. package/build/dist/chunks/{GRSXWQWD.js → CD2JQ32C.js} +1 -1
  294. package/build/dist/chunks/{4GNUXN4K.js → CI5ENLYA.js} +1 -1
  295. package/build/dist/chunks/{F4UQEPJT.js → CZQ2CGYV.js} +1 -1
  296. package/build/dist/chunks/{APHNOGNS.js → D2IYA4LP.js} +1 -1
  297. package/build/dist/chunks/{4RQAOOO2.js → D7QXZM3S.js} +1 -1
  298. package/build/dist/chunks/{TDZTC5WR.js → DBOGRUPS.js} +1 -1
  299. package/build/dist/chunks/{Y77EVVT4.js → DGDMRATN.js} +1 -1
  300. package/build/dist/chunks/{3DNJTJ2X.js → DMB64UIN.js} +1 -1
  301. package/build/dist/chunks/{TM7Z5SA4.js → DMDOSHV7.js} +1 -1
  302. package/build/dist/chunks/{WHVZ372B.js → DRLBTB4E.js} +1 -1
  303. package/build/dist/chunks/{FZ6IJZZM.js → E76Z2TT4.js} +1 -1
  304. package/build/dist/chunks/{C75MT5SD.js → EHK7CDTU.js} +1 -1
  305. package/build/dist/chunks/{KKPMOAVI.js → ELHRXA5U.js} +1 -1
  306. package/build/dist/chunks/{XCKTE4ON.js → F7MGYRPU.js} +1 -1
  307. package/build/dist/chunks/{MRMR4QHA.js → FAH7FKUT.js} +1 -1
  308. package/build/dist/chunks/{M7ZXDLKM.js → FGEGJOAA.js} +1 -1
  309. package/build/dist/chunks/{N6GIC7HJ.js → FN6GNTPR.js} +1 -1
  310. package/build/dist/chunks/{ZF2VPDRQ.js → FTMA24EC.js} +1 -1
  311. package/build/dist/chunks/FXOFR432.js +1 -0
  312. package/build/dist/chunks/{VHV6WQ5F.js → G2AA73ZE.js} +1 -1
  313. package/build/dist/chunks/{JWR5XVP2.js → GBIBRYOV.js} +1 -1
  314. package/build/dist/chunks/{FNGIJKMZ.js → GDOHHXNH.js} +1 -1
  315. package/build/dist/chunks/{LR4XTZ37.js → GP6YO24Z.js} +1 -1
  316. package/build/dist/chunks/{2OKYXT25.js → GQITAJVF.js} +1 -1
  317. package/build/dist/chunks/H3E7UD2X.js +1 -0
  318. package/build/dist/chunks/HFVXNKA5.js +1 -0
  319. package/build/dist/chunks/HHYE42JG.js +21 -0
  320. package/build/dist/chunks/{UOCRYXAB.js → HRAHGYNK.js} +1 -1
  321. package/build/dist/chunks/{U363GQTF.js → HS5HWBMU.js} +1 -1
  322. package/build/dist/chunks/{ARI72OYT.js → HVFMIURK.js} +1 -1
  323. package/build/dist/chunks/IBL6TL2Q.js +1 -0
  324. package/build/dist/chunks/{HCBX4NFM.js → IT2JLILU.js} +1 -1
  325. package/build/dist/chunks/{REWXG6X6.js → JDSSYT6R.js} +1 -1
  326. package/build/dist/chunks/{XRDXFHIK.js → JFWJBZ7M.js} +1 -1
  327. package/build/dist/chunks/{523ZIR3J.js → JI5DXDMY.js} +1 -1
  328. package/build/dist/chunks/{7QKYDNF6.js → JPPQDELB.js} +1 -1
  329. package/build/dist/chunks/{ZP36DSOD.js → K4P5VYDP.js} +1 -1
  330. package/build/dist/chunks/{32RXFUOH.js → KBU3PYP7.js} +1 -1
  331. package/build/dist/chunks/{BB765L75.js → KH4QFN72.js} +1 -1
  332. package/build/dist/chunks/{YTLH4M4Y.js → KMSAUFYV.js} +1 -1
  333. package/build/dist/chunks/{6UVGQYZ3.js → KOTGFD2V.js} +1 -1
  334. package/build/dist/chunks/{4JTTA3BX.js → KZA5GYZR.js} +1 -1
  335. package/build/dist/chunks/{WUT7TZYM.js → LCH6F5HT.js} +1 -1
  336. package/build/dist/chunks/{ARLGF5MU.js → LDJI2JAL.js} +1 -1
  337. package/build/dist/chunks/LEV5SNNC.js +3 -0
  338. package/build/dist/chunks/{SPRVVJXI.js → LFSJDFMY.js} +1 -1
  339. package/build/dist/chunks/{J73ATSEQ.js → LJJYYUEG.js} +1 -1
  340. package/build/dist/chunks/{CAWTAR5V.js → LKX5WDOQ.js} +1 -1
  341. package/build/dist/chunks/M7BUKZW2.js +1 -0
  342. package/build/dist/chunks/{C5ZZAYXD.js → MI5HZDMH.js} +1 -1
  343. package/build/dist/chunks/{YWZQJJYY.js → MMCM3GSM.js} +1 -1
  344. package/build/dist/chunks/MQ5F2VOK.js +1 -0
  345. package/build/dist/chunks/{TE6D3OIX.js → MSMHS456.js} +1 -1
  346. package/build/dist/chunks/{JKD2B6OX.js → MSRCJ2BS.js} +1 -1
  347. package/build/dist/chunks/{YMV5TL5C.js → N64JJN37.js} +1 -1
  348. package/build/dist/chunks/{JKRBGAX2.js → NAO7VWZF.js} +1 -1
  349. package/build/dist/chunks/ND32LJWI.js +1 -0
  350. package/build/dist/chunks/{RT7IU6TI.js → NMJVQX5M.js} +1 -1
  351. package/build/dist/chunks/{67BWOVET.js → NMQBOBWJ.js} +1 -1
  352. package/build/dist/chunks/NQ4MTIU3.js +1 -0
  353. package/build/dist/chunks/{XWKK75TO.js → NWPAQER2.js} +1 -1
  354. package/build/dist/chunks/O2J5I4VA.js +1 -0
  355. package/build/dist/chunks/{2SUHQWND.js → O4S6XAYV.js} +1 -1
  356. package/build/dist/chunks/{TAEZTP4L.js → O5QTITN6.js} +1 -1
  357. package/build/dist/chunks/{NA424YAL.js → OB7BFDOV.js} +1 -1
  358. package/build/dist/chunks/{GW5IXLKU.js → OI3N4EW4.js} +1 -1
  359. package/build/dist/chunks/{FL5SSHUL.js → OIQTZOBN.js} +1 -1
  360. package/build/dist/chunks/{XPEDQBLI.js → OODSXDIH.js} +1 -1
  361. package/build/dist/chunks/OOPMZIG7.js +1 -0
  362. package/build/dist/chunks/{GG24LO2R.js → OQFNUDMQ.js} +1 -1
  363. package/build/dist/chunks/{Q2ACLVWR.js → ORG6LVKJ.js} +1 -1
  364. package/build/dist/chunks/{XYPGLG6A.js → OSMOBKRQ.js} +1 -1
  365. package/build/dist/chunks/{EGZREEG2.js → OTLUQWLF.js} +1 -1
  366. package/build/dist/chunks/{OYJFXEDU.js → OTYB6BHK.js} +1 -1
  367. package/build/dist/chunks/{OZ5MDUD2.js → OVM4QIET.js} +1 -1
  368. package/build/dist/chunks/{OYPAVXGQ.js → OYDKAIS2.js} +1 -1
  369. package/build/dist/chunks/P6OB2AFW.js +1 -0
  370. package/build/dist/chunks/{UQEEF5W5.js → PDPTJMTJ.js} +1 -1
  371. package/build/dist/chunks/PEHXHQVA.js +1 -0
  372. package/build/dist/chunks/PMFR47H3.js +1 -0
  373. package/build/dist/chunks/{HHO5ISMM.js → PQXYTOV5.js} +1 -1
  374. package/build/dist/chunks/{HKVQ646Q.js → PSGRZWES.js} +1 -1
  375. package/build/dist/chunks/Q7L3BX6U.js +1 -0
  376. package/build/dist/chunks/{753HZZTY.js → QBYV7NXH.js} +1 -1
  377. package/build/dist/chunks/{2LWBN35N.js → QIB6OMQV.js} +1 -1
  378. package/build/dist/chunks/{TPEKCXVE.js → QLAOBULN.js} +1 -1
  379. package/build/dist/chunks/{DNNFKDZR.js → QLFPAN6S.js} +1 -1
  380. package/build/dist/chunks/QMEGAKLI.js +1 -0
  381. package/build/dist/chunks/{TK55VASJ.js → QMNUB2GM.js} +1 -1
  382. package/build/dist/chunks/{YUHNPUNK.js → R73R4KN3.js} +1 -1
  383. package/build/dist/chunks/{VR344DAZ.js → RN3WUJIO.js} +1 -1
  384. package/build/dist/chunks/{5HIHUYA4.js → RNCMXKKS.js} +1 -1
  385. package/build/dist/chunks/{ZOMFHTB2.js → ROQQ62LP.js} +1 -1
  386. package/build/dist/chunks/{D742AYEV.js → RUTSEGGD.js} +1 -1
  387. package/build/dist/chunks/{TFDPEAVZ.js → S4JUFCT4.js} +1 -1
  388. package/build/dist/chunks/{KDGSYNOP.js → S4UJDZGN.js} +1 -1
  389. package/build/dist/chunks/{AI3VAPA3.js → SMSXZ3FN.js} +1 -1
  390. package/build/dist/chunks/{JLRHM2DQ.js → SUNTJ6IU.js} +1 -1
  391. package/build/dist/chunks/{2FHELZ7Y.js → TGFQQCRY.js} +1 -1
  392. package/build/dist/chunks/{4JRXEN7C.js → THL4TMQW.js} +2 -2
  393. package/build/dist/chunks/TI727O2H.js +1 -0
  394. package/build/dist/chunks/{RLMVA575.js → TMRAF2L2.js} +1 -1
  395. package/build/dist/chunks/{PV5FDT6O.js → TXGZ6NWN.js} +1 -1
  396. package/build/dist/chunks/U243AWCH.js +1 -0
  397. package/build/dist/chunks/U762746N.js +1 -0
  398. package/build/dist/chunks/{GDRQ2ANN.js → U7UPLF4F.js} +1 -1
  399. package/build/dist/chunks/{4Q2ZBZXM.js → UPKVD7WG.js} +1 -1
  400. package/build/dist/chunks/{ZQAFFWDK.js → URBEK2VV.js} +1 -1
  401. package/build/dist/chunks/{VTPT5544.js → USEF3QKG.js} +1 -1
  402. package/build/dist/chunks/{U2YCQWZK.js → UVAR6BHU.js} +1 -1
  403. package/build/dist/chunks/{7VC53B5X.js → V5YSJKRH.js} +13 -13
  404. package/build/dist/chunks/{7D73A6KS.js → VB36EHIR.js} +1 -1
  405. package/build/dist/chunks/VMZYFO6I.js +1 -0
  406. package/build/dist/chunks/{UEDGYZOC.js → VVAM3EAK.js} +1 -1
  407. package/build/dist/chunks/VVJO6OYK.js +1 -0
  408. package/build/dist/chunks/{JESMX2UC.js → VXCGMALF.js} +1 -1
  409. package/build/dist/chunks/{ZKZUS3QU.js → VZVW5J7J.js} +1 -1
  410. package/build/dist/chunks/{NUFZUKYS.js → W32UECOL.js} +1 -1
  411. package/build/dist/chunks/{O3JWCJIF.js → W4RYRLL5.js} +1 -1
  412. package/build/dist/chunks/{2MZXTOZU.js → WAKZWSHB.js} +1 -1
  413. package/build/dist/chunks/{BAIY32AV.js → WBNFRPAT.js} +1 -1
  414. package/build/dist/chunks/{HM72DH4V.js → WRUTW6CG.js} +1 -1
  415. package/build/dist/chunks/{VYYSL557.js → WSILNJS2.js} +1 -1
  416. package/build/dist/chunks/{L646YWDP.js → X24YTJST.js} +1 -1
  417. package/build/dist/chunks/{4FPV4CRC.js → X5AL3DUK.js} +1 -1
  418. package/build/dist/chunks/{SOTYQGPT.js → XBNZ7GTY.js} +1 -1
  419. package/build/dist/chunks/{BZ34ZR65.js → XEBMS5KU.js} +1 -1
  420. package/build/dist/chunks/{FOD34G2H.js → XL3W7DAQ.js} +1 -1
  421. package/build/dist/chunks/{GSFHM5L3.js → XPWGPZ2C.js} +1 -1
  422. package/build/dist/chunks/{2E4I7CJ7.js → XRDLMTBJ.js} +1 -1
  423. package/build/dist/chunks/{SKEKXEUU.js → XV3YJ4P6.js} +1 -1
  424. package/build/dist/chunks/XW3VGWXK.js +1 -0
  425. package/build/dist/chunks/{6WD4HHID.js → Y2QADJOB.js} +1 -1
  426. package/build/dist/chunks/Y64GFBTA.js +1 -0
  427. package/build/dist/chunks/{FJLJ7ZQ5.js → YARZE7SJ.js} +1 -1
  428. package/build/dist/chunks/{OARVU3RC.js → YBLJ75U5.js} +1 -1
  429. package/build/dist/chunks/YRSAZTTC.js +7 -0
  430. package/build/dist/chunks/{3VBIRLU3.js → YXXK6EPI.js} +1 -1
  431. package/build/dist/chunks/Z3IBPCY4.js +2 -0
  432. package/build/dist/chunks/{H5DY7CNB.js → Z7FGEWO2.js} +1 -1
  433. package/build/dist/chunks/{INOYMBWE.js → ZNPVBNC5.js} +1 -1
  434. package/build/dist/chunks/{EVBHQQQG.js → ZTKT3ZQK.js} +1 -1
  435. package/build/dist/chunks/{4BVP652W.js → ZZ6FZGHF.js} +1 -1
  436. package/package.json +1 -1
  437. package/build/dist/chunks/3K2N5VFH.js +0 -1
  438. package/build/dist/chunks/3ZABD6ZF.js +0 -2
  439. package/build/dist/chunks/44MB6SA6.js +0 -1
  440. package/build/dist/chunks/4D4ZRZUW.js +0 -1
  441. package/build/dist/chunks/4OVIMYNH.js +0 -2
  442. package/build/dist/chunks/6NUNCD5J.js +0 -1
  443. package/build/dist/chunks/6PZGDVHV.js +0 -1
  444. package/build/dist/chunks/7MBVTNLU.js +0 -1
  445. package/build/dist/chunks/7VNO46LV.js +0 -1
  446. package/build/dist/chunks/DPE7SPW7.js +0 -1
  447. package/build/dist/chunks/E3RACZUY.js +0 -1
  448. package/build/dist/chunks/EI6GGPDS.js +0 -20
  449. package/build/dist/chunks/FV4WZOTD.js +0 -1
  450. package/build/dist/chunks/FWD4L3CJ.js +0 -1
  451. package/build/dist/chunks/JBTOZ6IH.js +0 -1
  452. package/build/dist/chunks/MVD3KWPP.js +0 -1
  453. package/build/dist/chunks/P6OMKZMR.js +0 -3
  454. package/build/dist/chunks/PXVREXCS.js +0 -1
  455. package/build/dist/chunks/QJNLLI6N.js +0 -1
  456. package/build/dist/chunks/RPB46QAC.js +0 -1
  457. package/build/dist/chunks/TID4C2KC.js +0 -1
  458. package/build/dist/chunks/UWBKAWX3.js +0 -7
  459. package/build/dist/chunks/WHTRPRRD.js +0 -1
  460. package/build/dist/chunks/WLMWWEP7.js +0 -2
  461. package/build/dist/chunks/XQ24RSEI.js +0 -1
  462. package/build/dist/chunks/YDNTY67T.js +0 -1
@@ -1 +1 @@
1
- import{a,b}from"../../../chunks/OYPAVXGQ.js";import"../../../chunks/2GXHYI23.js";import"../../../chunks/AI3VAPA3.js";import"../../../chunks/JKD2B6OX.js";import"../../../chunks/TFDPEAVZ.js";import"../../../chunks/2MZXTOZU.js";import"../../../chunks/V74F6IDY.js";import"../../../chunks/REWXG6X6.js";import"../../../chunks/XQ24RSEI.js";import"../../../chunks/E3RACZUY.js";import"../../../chunks/EI6GGPDS.js";import"../../../chunks/7VC53B5X.js";import"../../../chunks/U2YCQWZK.js";import"../../../chunks/VYYSL557.js";import"../../../chunks/WU7XIAXB.js";import"../../../chunks/6WD4HHID.js";import"../../../chunks/DNNFKDZR.js";import"../../../chunks/BB765L75.js";import"../../../chunks/HHO5ISMM.js";import"../../../chunks/GSFHM5L3.js";import"../../../chunks/PV4AK32X.js";import"../../../chunks/CAWTAR5V.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/ZQAFFWDK.js";import"../../../chunks/FL5SSHUL.js";import"../../../chunks/H5DY7CNB.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/KKPMOAVI.js";import"../../../chunks/Y77EVVT4.js";import"../../../chunks/XHYFISVV.js";import"../../../chunks/5PI57UC2.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/UEDGYZOC.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/6NUNCD5J.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as readPositions,a as shareBalances};
1
+ import{a,b}from"../../../chunks/OYDKAIS2.js";import"../../../chunks/2GXHYI23.js";import"../../../chunks/SMSXZ3FN.js";import"../../../chunks/MSRCJ2BS.js";import"../../../chunks/S4JUFCT4.js";import"../../../chunks/WAKZWSHB.js";import"../../../chunks/V74F6IDY.js";import"../../../chunks/JDSSYT6R.js";import"../../../chunks/VVJO6OYK.js";import"../../../chunks/IBL6TL2Q.js";import"../../../chunks/G2AA73ZE.js";import"../../../chunks/HHYE42JG.js";import"../../../chunks/V5YSJKRH.js";import"../../../chunks/UVAR6BHU.js";import"../../../chunks/7EACRKFV.js";import"../../../chunks/WSILNJS2.js";import"../../../chunks/Y2QADJOB.js";import"../../../chunks/QLFPAN6S.js";import"../../../chunks/KH4QFN72.js";import"../../../chunks/PQXYTOV5.js";import"../../../chunks/XPWGPZ2C.js";import"../../../chunks/2HN3U6OG.js";import"../../../chunks/LKX5WDOQ.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/URBEK2VV.js";import"../../../chunks/OIQTZOBN.js";import"../../../chunks/Z7FGEWO2.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/ELHRXA5U.js";import"../../../chunks/DGDMRATN.js";import"../../../chunks/4Z3IGMU6.js";import"../../../chunks/C76D54YG.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/VVAM3EAK.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/MQ5F2VOK.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as readPositions,a as shareBalances};
@@ -1 +1 @@
1
- import{a,b,c,d,e,f}from"../../../chunks/AI3VAPA3.js";import"../../../chunks/JKD2B6OX.js";import"../../../chunks/TFDPEAVZ.js";import"../../../chunks/2MZXTOZU.js";import"../../../chunks/V74F6IDY.js";import"../../../chunks/REWXG6X6.js";import"../../../chunks/XQ24RSEI.js";import"../../../chunks/E3RACZUY.js";import"../../../chunks/EI6GGPDS.js";import"../../../chunks/7VC53B5X.js";import"../../../chunks/U2YCQWZK.js";import"../../../chunks/VYYSL557.js";import"../../../chunks/WU7XIAXB.js";import"../../../chunks/6WD4HHID.js";import"../../../chunks/DNNFKDZR.js";import"../../../chunks/BB765L75.js";import"../../../chunks/HHO5ISMM.js";import"../../../chunks/GSFHM5L3.js";import"../../../chunks/PV4AK32X.js";import"../../../chunks/CAWTAR5V.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/ZQAFFWDK.js";import"../../../chunks/FL5SSHUL.js";import"../../../chunks/H5DY7CNB.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/KKPMOAVI.js";import"../../../chunks/Y77EVVT4.js";import"../../../chunks/XHYFISVV.js";import"../../../chunks/5PI57UC2.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/UEDGYZOC.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/6NUNCD5J.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as candidates,c as createDiscovery,f as listVaults,e as readVault,b as sortVaults,d as tokenAmount};
1
+ import{a,b,c,d,e,f}from"../../../chunks/SMSXZ3FN.js";import"../../../chunks/MSRCJ2BS.js";import"../../../chunks/S4JUFCT4.js";import"../../../chunks/WAKZWSHB.js";import"../../../chunks/V74F6IDY.js";import"../../../chunks/JDSSYT6R.js";import"../../../chunks/VVJO6OYK.js";import"../../../chunks/IBL6TL2Q.js";import"../../../chunks/G2AA73ZE.js";import"../../../chunks/HHYE42JG.js";import"../../../chunks/V5YSJKRH.js";import"../../../chunks/UVAR6BHU.js";import"../../../chunks/7EACRKFV.js";import"../../../chunks/WSILNJS2.js";import"../../../chunks/Y2QADJOB.js";import"../../../chunks/QLFPAN6S.js";import"../../../chunks/KH4QFN72.js";import"../../../chunks/PQXYTOV5.js";import"../../../chunks/XPWGPZ2C.js";import"../../../chunks/2HN3U6OG.js";import"../../../chunks/LKX5WDOQ.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/URBEK2VV.js";import"../../../chunks/OIQTZOBN.js";import"../../../chunks/Z7FGEWO2.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/ELHRXA5U.js";import"../../../chunks/DGDMRATN.js";import"../../../chunks/4Z3IGMU6.js";import"../../../chunks/C76D54YG.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/VVAM3EAK.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/MQ5F2VOK.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as candidates,c as createDiscovery,f as listVaults,e as readVault,b as sortVaults,d as tokenAmount};
@@ -29,6 +29,7 @@ export interface LiquidityReading {
29
29
  export interface VerifiedVault extends Omit<BorroPin, 'deployedAt' | 'owner' | 'curator' | 'adapters'> {
30
30
  chainId: 4663;
31
31
  shareDecimals: 18;
32
+ builderEligible?: boolean;
32
33
  owner?: Address;
33
34
  curator?: Address;
34
35
  adapters?: readonly Address[];
@@ -1 +1 @@
1
- import{a,b}from"../../../chunks/O3JWCJIF.js";import"../../../chunks/WOGWLFAL.js";import"../../../chunks/ACH4BSME.js";import"../../../chunks/PZEF5LBL.js";import"../../../chunks/CSOO4SW7.js";import"../../../chunks/I6PQW2JI.js";import"../../../chunks/K6D6SDIG.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as createChopGuard,a as rebuildChopAction};
1
+ import{a,b}from"../../../chunks/W4RYRLL5.js";import"../../../chunks/WOGWLFAL.js";import"../../../chunks/ACH4BSME.js";import"../../../chunks/PZEF5LBL.js";import"../../../chunks/CSOO4SW7.js";import"../../../chunks/I6PQW2JI.js";import"../../../chunks/K6D6SDIG.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as createChopGuard,a as rebuildChopAction};
@@ -1 +1 @@
1
- import{a as O}from"../../../chunks/KREBNL2D.js";import{a as j,b as q,c as D,d as $,e as I,f as N}from"../../../chunks/OEZ7FCLF.js";import{a as i}from"../../../chunks/G2LAO23N.js";import{a as E}from"../../../chunks/C3WBHFLX.js";import{a as R,b as u,d as T}from"../../../chunks/WOGWLFAL.js";import{c as A,f as _,g as b,h as S,i as L,j as v,n as C,o as F}from"../../../chunks/ACH4BSME.js";import{l as w}from"../../../chunks/PZEF5LBL.js";import{a as p}from"../../../chunks/CSOO4SW7.js";import{a as y}from"../../../chunks/I6PQW2JI.js";import"../../../chunks/K6D6SDIG.js";import"../../../chunks/2GXHYI23.js";import"../../../chunks/U2YCQWZK.js";import"../../../chunks/VYYSL557.js";import"../../../chunks/WU7XIAXB.js";import"../../../chunks/6WD4HHID.js";import"../../../chunks/DNNFKDZR.js";import"../../../chunks/BB765L75.js";import"../../../chunks/HHO5ISMM.js";import"../../../chunks/GSFHM5L3.js";import"../../../chunks/PV4AK32X.js";import"../../../chunks/CAWTAR5V.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/ZQAFFWDK.js";import"../../../chunks/FL5SSHUL.js";import"../../../chunks/H5DY7CNB.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/KKPMOAVI.js";import"../../../chunks/Y77EVVT4.js";import"../../../chunks/XHYFISVV.js";import"../../../chunks/5PI57UC2.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/UEDGYZOC.js";import"../../../chunks/P4UQGWCP.js";import{b as M}from"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/6NUNCD5J.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";var U={type:"string"};function c(t,r){let g=r==="chop_wrap"?"underlying token":r==="chop_unfarm"?"staked LP token":"log token",e={log:i.address("verified Chop log on Robinhood Chain"),underlying:i.address("underlying token matching the verified log"),amount:i.amount(g),minLogOut:`Minimum log output. ${i.amount("log token")}`,quotedNet:`Net output from chop_quote_unwrap; checked again before unwrapping. ${i.amount("underlying token")}`,pairedAmount:i.amount("paired token"),minPaired:`Minimum paired input checked in the preview. ${i.amount("paired token")}`,minStakedLp:`Minimum staked LP output checked in the preview. ${i.amount("staked LP token")}`,minPairedOut:`Minimum paired output enforced on chain. ${i.amount("paired token")}`,slippageBps:`${i.bps()} From 0 to 1000 in multiples of 10.`,deadline:`${i.unixSeconds()} Must be in the next 20 minutes.`};return{type:"object",additionalProperties:!1,properties:Object.fromEntries(t.map(o=>[o,{...o==="slippageBps"?{type:"integer",minimum:0,maximum:1e3,multipleOf:10}:U,description:e[o]}])),required:t}}var x=["detail","fields","limit","offset"],B={type:"object",additionalProperties:!1,properties:{detail:j,fields:q,limit:D,offset:$},required:[]};function z(t){let r=A();return{tools:[{name:"chop_logs",inputSchema:B,execute:async e=>{u(e,Object.keys(e).filter(n=>x.includes(n)));let o=I(e),s=await _(t,r),a=await S(t,s.logs),h=await O({clientFor:t.clientFor,oakTokenAddress:p(y.oak)},a.flatMap(n=>[n.rewardPot,...n.reserves]),{budgetMs:3e3,chopShareTokens:a.map(n=>n.log.address)}),f={...s,logs:a.map(({reserves:n,...m},d)=>{let k=h[d*3],l=L(h.slice(d*3+1,d*3+1+n.length)),P=v(l.reserves,m.paired);return{...m,rewardPot:k,poolDepth:l,priceMovePer100Usd:P,plainSummary:w(m,k,l,P)}})};return o.detail==="full"||o.fields.length?N(f,{...o,keep:["warnings"]}).shaped:b(t,f,o)}},{name:"chop_position",inputSchema:c(["log"],"chop_position"),execute:async(e,o)=>(u(e,["log"]),C(t,p(e.log),o,r))},{name:"chop_quote_unwrap",inputSchema:c(["log","amount"],"chop_quote_unwrap"),execute:async(e,o)=>(u(e,["log","amount"]),F(t,p(e.log),o,e.amount))},...Object.entries(R).map(([e,o])=>({name:e,inputSchema:c(o,e),execute:(s,a)=>T(t,e,s,a)}))],positions:(e,o)=>E(t,e,o,r)}}var ee=t=>M("chop",t.network==="testnet"?[]:[z(t)]);export{ee as createModule,z as createModulePart};
1
+ import{a as O}from"../../../chunks/4R3G3H42.js";import{a as i}from"../../../chunks/G2LAO23N.js";import{a as j,b as q,c as D,d as $,e as I,f as N}from"../../../chunks/OEZ7FCLF.js";import{a as E}from"../../../chunks/C3WBHFLX.js";import{a as R,b as u,d as T}from"../../../chunks/WOGWLFAL.js";import{c as A,f as _,g as b,h as S,i as L,j as v,n as C,o as F}from"../../../chunks/ACH4BSME.js";import{l as w}from"../../../chunks/PZEF5LBL.js";import{a as p}from"../../../chunks/CSOO4SW7.js";import{a as y}from"../../../chunks/I6PQW2JI.js";import"../../../chunks/K6D6SDIG.js";import"../../../chunks/2GXHYI23.js";import"../../../chunks/UVAR6BHU.js";import"../../../chunks/7EACRKFV.js";import"../../../chunks/WSILNJS2.js";import"../../../chunks/Y2QADJOB.js";import"../../../chunks/QLFPAN6S.js";import"../../../chunks/KH4QFN72.js";import"../../../chunks/PQXYTOV5.js";import"../../../chunks/XPWGPZ2C.js";import"../../../chunks/2HN3U6OG.js";import"../../../chunks/LKX5WDOQ.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/URBEK2VV.js";import"../../../chunks/OIQTZOBN.js";import"../../../chunks/Z7FGEWO2.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/ELHRXA5U.js";import"../../../chunks/DGDMRATN.js";import"../../../chunks/4Z3IGMU6.js";import"../../../chunks/C76D54YG.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/VVAM3EAK.js";import"../../../chunks/P4UQGWCP.js";import{b as M}from"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/MQ5F2VOK.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";var U={type:"string"};function c(t,r){let g=r==="chop_wrap"?"underlying token":r==="chop_unfarm"?"staked LP token":"log token",e={log:i.address("verified Chop log on Robinhood Chain"),underlying:i.address("underlying token matching the verified log"),amount:i.amount(g),minLogOut:`Minimum log output. ${i.amount("log token")}`,quotedNet:`Net output from chop_quote_unwrap; checked again before unwrapping. ${i.amount("underlying token")}`,pairedAmount:i.amount("paired token"),minPaired:`Minimum paired input checked in the preview. ${i.amount("paired token")}`,minStakedLp:`Minimum staked LP output checked in the preview. ${i.amount("staked LP token")}`,minPairedOut:`Minimum paired output enforced on chain. ${i.amount("paired token")}`,slippageBps:`${i.bps()} From 0 to 1000 in multiples of 10.`,deadline:`${i.unixSeconds()} Must be in the next 20 minutes.`};return{type:"object",additionalProperties:!1,properties:Object.fromEntries(t.map(o=>[o,{...o==="slippageBps"?{type:"integer",minimum:0,maximum:1e3,multipleOf:10}:U,description:e[o]}])),required:t}}var x=["detail","fields","limit","offset"],B={type:"object",additionalProperties:!1,properties:{detail:j,fields:q,limit:D,offset:$},required:[]};function z(t){let r=A();return{tools:[{name:"chop_logs",inputSchema:B,execute:async e=>{u(e,Object.keys(e).filter(n=>x.includes(n)));let o=I(e),s=await _(t,r),a=await S(t,s.logs),h=await O({clientFor:t.clientFor,oakTokenAddress:p(y.oak)},a.flatMap(n=>[n.rewardPot,...n.reserves]),{budgetMs:3e3,chopShareTokens:a.map(n=>n.log.address)}),f={...s,logs:a.map(({reserves:n,...m},d)=>{let k=h[d*3],l=L(h.slice(d*3+1,d*3+1+n.length)),P=v(l.reserves,m.paired);return{...m,rewardPot:k,poolDepth:l,priceMovePer100Usd:P,plainSummary:w(m,k,l,P)}})};return o.detail==="full"||o.fields.length?N(f,{...o,keep:["warnings"]}).shaped:b(t,f,o)}},{name:"chop_position",inputSchema:c(["log"],"chop_position"),execute:async(e,o)=>(u(e,["log"]),C(t,p(e.log),o,r))},{name:"chop_quote_unwrap",inputSchema:c(["log","amount"],"chop_quote_unwrap"),execute:async(e,o)=>(u(e,["log","amount"]),F(t,p(e.log),o,e.amount))},...Object.entries(R).map(([e,o])=>({name:e,inputSchema:c(o,e),execute:(s,a)=>T(t,e,s,a)}))],positions:(e,o)=>E(t,e,o,r)}}var ee=t=>M("chop",t.network==="testnet"?[]:[z(t)]);export{ee as createModule,z as createModulePart};
@@ -1 +1 @@
1
- import{a,b,c}from"../../../chunks/5PI57UC2.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{c as createExtensionsPart,a as extensionSchemas,b as launchExtensions};
1
+ import{a,b,c}from"../../../chunks/C76D54YG.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{c as createExtensionsPart,a as extensionSchemas,b as launchExtensions};
@@ -1 +1 @@
1
- import{a,b,c}from"../../../chunks/PV4AK32X.js";import"../../../chunks/CAWTAR5V.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/ZQAFFWDK.js";import"../../../chunks/FL5SSHUL.js";import"../../../chunks/H5DY7CNB.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/KKPMOAVI.js";import"../../../chunks/Y77EVVT4.js";import"../../../chunks/XHYFISVV.js";import"../../../chunks/5PI57UC2.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/UEDGYZOC.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/6NUNCD5J.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{c as createModule,b as createModulePart,a as readClankerTokens};
1
+ import{a,b,c}from"../../../chunks/2HN3U6OG.js";import"../../../chunks/LKX5WDOQ.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/URBEK2VV.js";import"../../../chunks/OIQTZOBN.js";import"../../../chunks/Z7FGEWO2.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/ELHRXA5U.js";import"../../../chunks/DGDMRATN.js";import"../../../chunks/4Z3IGMU6.js";import"../../../chunks/C76D54YG.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/VVAM3EAK.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/MQ5F2VOK.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{c as createModule,b as createModulePart,a as readClankerTokens};
@@ -1 +1 @@
1
- import{a}from"../../../chunks/KKPMOAVI.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as createManagementPart};
1
+ import{a}from"../../../chunks/ELHRXA5U.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as createManagementPart};
@@ -1 +1 @@
1
- import{a,b}from"../../../chunks/Y77EVVT4.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as poolConfiguration,a as poolSchema};
1
+ import{a,b}from"../../../chunks/DGDMRATN.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as poolConfiguration,a as poolSchema};
@@ -1 +1 @@
1
- import{a}from"../../../chunks/XHYFISVV.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as createProtocolPart};
1
+ import{a}from"../../../chunks/4Z3IGMU6.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as createProtocolPart};
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h,i,j,k,l,m}from"../../../chunks/PV5FDT6O.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{e as NONZERO_ADDRESS_ERROR,f as address,c as bytes32Schema,l as deployment,j as hex32,h as integer,b as integerSchema,d as lockerAbi,a as pins,m as poolState,k as readUnits,i as supported,g as units};
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l,m}from"../../../chunks/TXGZ6NWN.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{e as NONZERO_ADDRESS_ERROR,f as address,c as bytes32Schema,l as deployment,j as hex32,h as integer,b as integerSchema,d as lockerAbi,a as pins,m as poolState,k as readUnits,i as supported,g as units};
@@ -26,7 +26,7 @@ export declare const CARD_FOOTER_ASK: Template<"Nobody guarantees either one. Wh
26
26
  export declare const CARD_FOOTER_NO_ASK: Template<"Nobody guarantees either one.">;
27
27
  export declare const ETH_HINT: Template<"You hold ETH but no USDG. I can swap some ETH to USDG first with Oak's swap tool and show you the price before anything happens.">;
28
28
  export declare const NOTHING_TO_EARN: Template<"This wallet holds no USDG and no ETH to put to work, so there is nothing to compare yet.">;
29
- export declare const ACCESS_NO_PLAN: Template<"Putting money in or taking it out through Oak needs an active Oak plan ({plan_price}). Taking it out on {project_site} always works too, with this same wallet.">;
29
+ export declare const ACCESS_NO_PLAN: Template<"Oak is free.">;
30
30
  export declare const LB_DEPOSIT_SCREEN: Template<"Put {amount_usd} into LayerBank?\n\nWhat you get: about {lb_total_rate}% a year at today's rate. The rate changes.\nWhat happens: {amount_usd} of USDG leaves your wallet and becomes {amount_usd} of \"lRobUSDG\", your receipt for money lent through LayerBank. Your receipt grows as interest arrives. Oak's preview checks the amount, but the contract doesn't enforce a minimum, so it can differ slightly.\nThe risk: LayerBank is a lending app. If its code fails, or almost everything is lent out, you could lose money or have to wait to get it back.\nTaking it out: any time LayerBank has cash on hand. Right now that is {lb_cash_usd}. You can also take it out on layerbank.finance with this wallet.\nCost: about {gas_usd} in network fees now and about {gas_out_usd} to take it out.\n\nPut in {amount_usd}? [Yes] [No]">;
31
31
  export declare const LB_WITHDRAW_SCREEN: Template<"Take {amount_or_all} out of LayerBank?\n\nYou get back {usdg_out} USDG (your {amount_deposited_clause} plus interest so far{bonus_note}). Oak's preview checks the amount, but the contract doesn't enforce a minimum, so it can differ slightly.\n{cash_note}\nCost: about {gas_usd} in network fees.\n\nTake it out? [Yes] [No]">;
32
32
  export declare const LB_BONUS_NOTE: Template<". Your bonus is paid separately; ask me to claim it">;
@@ -46,8 +46,8 @@ export declare const STOCK_SHORT_TERM: Template<"ends in {days_left} days, usual
46
46
  export declare const STOCK_SHORT_TERM_DAYS = 7;
47
47
  export declare const TOO_SMALL: Template<"At {amount_usd}, this is too small to be worth it. You would earn about {gross_usd} over {horizon}, and fees would take about {costs_usd}, leaving about {net_usd}. Putting in {suggest_usd} or more would be worth it, and I can still do it if you want.">;
48
48
  export declare const TOO_SMALL_NO_SIZE: Template<"At {amount_usd}, this is too small to be worth it. You would earn about {gross_usd} over {horizon}, and fees would take about {costs_usd}, leaving about {net_usd}. At today's rate no amount would make up for the fees, and I can still do it if you want.">;
49
- export declare const ACCESS_FEE_LINE: Template<"Also: Oak access costs {plan_price} per 30 days, which you pay whether or not you earn. At this size that is more than you would earn in a month.">;
50
- export declare const ACCESS_FREE_UNTIL_LINE: Template<"Oak access is free for you until {free_until}. After that it costs {plan_price} per 30 days, which you pay whether or not you earn, and at this size that is more than you would earn in a month.">;
49
+ export declare const ACCESS_FEE_LINE: Template<"Oak is free.">;
50
+ export declare const ACCESS_FREE_UNTIL_LINE: Template<"Oak is free.">;
51
51
  export declare const FEES_ESTIMATED_HIGH: Template<"Fees estimated high because the live price was unavailable.">;
52
52
  export declare const MATURED_NOTICE: Template<"Your fixed term on Pendle ended on {pendle_end_date}. Your {pt_amount} tokens are worth {usdg_out} USDG now.\nWant me to cash out to USDG, or start a new term? One \"yes\" is enough; say \"cash out\" or \"new term\".">;
53
53
  export declare const MATURED_STOCK_NOTICE: Template<"Your fixed term on Pendle ended on {pendle_end_date}. Your {pt_amount} tokens pay out about {unit_out} {stock_symbol} now, worth about {value_usd}. Want me to cash out and swap that to USDG, or start a new term? One \"yes\" is enough.">;
@@ -89,7 +89,7 @@ export declare const TEMPLATES: {
89
89
  readonly CARD_FOOTER_NO_ASK: Template<"Nobody guarantees either one.">;
90
90
  readonly ETH_HINT: Template<"You hold ETH but no USDG. I can swap some ETH to USDG first with Oak's swap tool and show you the price before anything happens.">;
91
91
  readonly NOTHING_TO_EARN: Template<"This wallet holds no USDG and no ETH to put to work, so there is nothing to compare yet.">;
92
- readonly ACCESS_NO_PLAN: Template<"Putting money in or taking it out through Oak needs an active Oak plan ({plan_price}). Taking it out on {project_site} always works too, with this same wallet.">;
92
+ readonly ACCESS_NO_PLAN: Template<"Oak is free.">;
93
93
  readonly LB_DEPOSIT_SCREEN: Template<"Put {amount_usd} into LayerBank?\n\nWhat you get: about {lb_total_rate}% a year at today's rate. The rate changes.\nWhat happens: {amount_usd} of USDG leaves your wallet and becomes {amount_usd} of \"lRobUSDG\", your receipt for money lent through LayerBank. Your receipt grows as interest arrives. Oak's preview checks the amount, but the contract doesn't enforce a minimum, so it can differ slightly.\nThe risk: LayerBank is a lending app. If its code fails, or almost everything is lent out, you could lose money or have to wait to get it back.\nTaking it out: any time LayerBank has cash on hand. Right now that is {lb_cash_usd}. You can also take it out on layerbank.finance with this wallet.\nCost: about {gas_usd} in network fees now and about {gas_out_usd} to take it out.\n\nPut in {amount_usd}? [Yes] [No]">;
94
94
  readonly LB_WITHDRAW_SCREEN: Template<"Take {amount_or_all} out of LayerBank?\n\nYou get back {usdg_out} USDG (your {amount_deposited_clause} plus interest so far{bonus_note}). Oak's preview checks the amount, but the contract doesn't enforce a minimum, so it can differ slightly.\n{cash_note}\nCost: about {gas_usd} in network fees.\n\nTake it out? [Yes] [No]">;
95
95
  readonly LB_BONUS_NOTE: Template<". Your bonus is paid separately; ask me to claim it">;
@@ -107,8 +107,8 @@ export declare const TEMPLATES: {
107
107
  readonly STOCK_SHORT_TERM: Template<"ends in {days_left} days, usually too short to be worth the fees">;
108
108
  readonly TOO_SMALL: Template<"At {amount_usd}, this is too small to be worth it. You would earn about {gross_usd} over {horizon}, and fees would take about {costs_usd}, leaving about {net_usd}. Putting in {suggest_usd} or more would be worth it, and I can still do it if you want.">;
109
109
  readonly TOO_SMALL_NO_SIZE: Template<"At {amount_usd}, this is too small to be worth it. You would earn about {gross_usd} over {horizon}, and fees would take about {costs_usd}, leaving about {net_usd}. At today's rate no amount would make up for the fees, and I can still do it if you want.">;
110
- readonly ACCESS_FEE_LINE: Template<"Also: Oak access costs {plan_price} per 30 days, which you pay whether or not you earn. At this size that is more than you would earn in a month.">;
111
- readonly ACCESS_FREE_UNTIL_LINE: Template<"Oak access is free for you until {free_until}. After that it costs {plan_price} per 30 days, which you pay whether or not you earn, and at this size that is more than you would earn in a month.">;
110
+ readonly ACCESS_FEE_LINE: Template<"Oak is free.">;
111
+ readonly ACCESS_FREE_UNTIL_LINE: Template<"Oak is free.">;
112
112
  readonly FEES_ESTIMATED_HIGH: Template<"Fees estimated high because the live price was unavailable.">;
113
113
  readonly MATURED_NOTICE: Template<"Your fixed term on Pendle ended on {pendle_end_date}. Your {pt_amount} tokens are worth {usdg_out} USDG now.\nWant me to cash out to USDG, or start a new term? One \"yes\" is enough; say \"cash out\" or \"new term\".">;
114
114
  readonly MATURED_STOCK_NOTICE: Template<"Your fixed term on Pendle ended on {pendle_end_date}. Your {pt_amount} tokens pay out about {unit_out} {stock_symbol} now, worth about {value_usd}. Want me to cash out and swap that to USDG, or start a new term? One \"yes\" is enough.">;
@@ -1 +1 @@
1
- import{$,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,_,a,aa,b,ba,c,ca,d,da,e,ea,f,fa,g,ga,h,ha,i,ia,j,ja,k,ka,l,la,m,ma,n,na,o,oa,p,pa,q,qa,r,ra,s,sa,t,u,v,w,x,y,z}from"../../../chunks/7VC53B5X.js";import"../../../chunks/63YRSLDK.js";export{S as ACCESS_FEE_LINE,T as ACCESS_FREE_UNTIL_LINE,y as ACCESS_NO_PLAN,sa as BANNED_COPY,n as BONUS_CLAUSE,u as CARD_FOOTER_ASK,v as CARD_FOOTER_NO_ASK,e as CARD_HEADER,f as CARD_HEADER_AMOUNT,g as CARD_HEADER_AMOUNT_NOT_HELD,w as ETH_HINT,U as FEES_ESTIMATED_HIGH,h as LAYERBANK_RISK_SUMMARY,pa as LAYERBANK_SETUP_MISMATCH,c as LAYERBANK_SITE,B as LB_BONUS_NOTE,C as LB_CASH_NOTE,z as LB_DEPOSIT_SCREEN,A as LB_WITHDRAW_SCREEN,ha as LP_ADD_BUTTON,Z as LP_BLOCK,ga as LP_BLOCK_UNREADABLE,ia as LP_DECLINE_BUTTON,aa as LP_FEE_CLAUSE,ea as LP_FUNDER_LINE,ca as LP_GAS_LINE,da as LP_NOT_A_PROMISE,fa as LP_NOT_WORTH_CLAUSE,$ as LP_RANGE_CLAUSE,_ as LP_RATE_LINE,ba as LP_SHARE_LINE,V as MATURED_NOTICE,W as MATURED_STOCK_NOTICE,X as MATURED_STOCK_NOTICE_NO_AMOUNT,ja as MERKL_AFTER_DEPOSIT,la as MERKL_EARNING_EMPTY,ka as MERKL_LAST_UPDATE_CLAUSE,x as NOTHING_TO_EARN,Y as NO_NEW_TERM,m as OPTION_A,q as OPTION_A_CANT_CHECK,s as OPTION_A_CLOSED,t as OPTION_A_NO_ROOM,o as OPTION_B,r as OPTION_B_CANT_CHECK,p as OPTION_B_NONE,M as PAYOUT_APPROX,L as PAYOUT_EXACT,D as PENDLE_BUY_STABLE_SCREEN,E as PENDLE_BUY_STOCK_SCREEN,l as PENDLE_CONTRACT_CHANGE,j as PENDLE_EARLY_EXIT,k as PENDLE_FIXED_RATE,J as PENDLE_REDEEM_SCREEN,K as PENDLE_REDEEM_STOCK_SCREEN,i as PENDLE_RISK_SUMMARY,I as PENDLE_SELL_DEFAULT_BUTTON,G as PENDLE_SELL_GAP_LINE,H as PENDLE_SELL_NO_GAP_LINE,F as PENDLE_SELL_SCREEN,qa as PENDLE_SERVICE_DOWN,d as PENDLE_SITE,oa as PRICE_MISMATCH_REFUSAL,ma as SLIPPAGE_CAP_REFUSAL,N as STOCK_PAID_IN,O as STOCK_SHORT_TERM,P as STOCK_SHORT_TERM_DAYS,ra as TEMPLATES,na as THIN_MARKET_REFUSAL,Q as TOO_SMALL,R as TOO_SMALL_NO_SIZE,b as fill,a as placeholdersOf};
1
+ import{$,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,_,a,aa,b,ba,c,ca,d,da,e,ea,f,fa,g,ga,h,ha,i,ia,j,ja,k,ka,l,la,m,ma,n,na,o,oa,p,pa,q,qa,r,ra,s,sa,t,u,v,w,x,y,z}from"../../../chunks/V5YSJKRH.js";import"../../../chunks/63YRSLDK.js";export{S as ACCESS_FEE_LINE,T as ACCESS_FREE_UNTIL_LINE,y as ACCESS_NO_PLAN,sa as BANNED_COPY,n as BONUS_CLAUSE,u as CARD_FOOTER_ASK,v as CARD_FOOTER_NO_ASK,e as CARD_HEADER,f as CARD_HEADER_AMOUNT,g as CARD_HEADER_AMOUNT_NOT_HELD,w as ETH_HINT,U as FEES_ESTIMATED_HIGH,h as LAYERBANK_RISK_SUMMARY,pa as LAYERBANK_SETUP_MISMATCH,c as LAYERBANK_SITE,B as LB_BONUS_NOTE,C as LB_CASH_NOTE,z as LB_DEPOSIT_SCREEN,A as LB_WITHDRAW_SCREEN,ha as LP_ADD_BUTTON,Z as LP_BLOCK,ga as LP_BLOCK_UNREADABLE,ia as LP_DECLINE_BUTTON,aa as LP_FEE_CLAUSE,ea as LP_FUNDER_LINE,ca as LP_GAS_LINE,da as LP_NOT_A_PROMISE,fa as LP_NOT_WORTH_CLAUSE,$ as LP_RANGE_CLAUSE,_ as LP_RATE_LINE,ba as LP_SHARE_LINE,V as MATURED_NOTICE,W as MATURED_STOCK_NOTICE,X as MATURED_STOCK_NOTICE_NO_AMOUNT,ja as MERKL_AFTER_DEPOSIT,la as MERKL_EARNING_EMPTY,ka as MERKL_LAST_UPDATE_CLAUSE,x as NOTHING_TO_EARN,Y as NO_NEW_TERM,m as OPTION_A,q as OPTION_A_CANT_CHECK,s as OPTION_A_CLOSED,t as OPTION_A_NO_ROOM,o as OPTION_B,r as OPTION_B_CANT_CHECK,p as OPTION_B_NONE,M as PAYOUT_APPROX,L as PAYOUT_EXACT,D as PENDLE_BUY_STABLE_SCREEN,E as PENDLE_BUY_STOCK_SCREEN,l as PENDLE_CONTRACT_CHANGE,j as PENDLE_EARLY_EXIT,k as PENDLE_FIXED_RATE,J as PENDLE_REDEEM_SCREEN,K as PENDLE_REDEEM_STOCK_SCREEN,i as PENDLE_RISK_SUMMARY,I as PENDLE_SELL_DEFAULT_BUTTON,G as PENDLE_SELL_GAP_LINE,H as PENDLE_SELL_NO_GAP_LINE,F as PENDLE_SELL_SCREEN,qa as PENDLE_SERVICE_DOWN,d as PENDLE_SITE,oa as PRICE_MISMATCH_REFUSAL,ma as SLIPPAGE_CAP_REFUSAL,N as STOCK_PAID_IN,O as STOCK_SHORT_TERM,P as STOCK_SHORT_TERM_DAYS,ra as TEMPLATES,na as THIN_MARKET_REFUSAL,Q as TOO_SMALL,R as TOO_SMALL_NO_SIZE,b as fill,a as placeholdersOf};
@@ -39,7 +39,7 @@ export declare function pendleGross(input: {
39
39
  amountBase: bigint;
40
40
  decimals: number;
41
41
  }): number;
42
- export type AccessLine = 'none' | 'free_until' | 'fee';
42
+ export type AccessLine = 'none';
43
43
  export declare function accessFeeApplies(input: {
44
44
  gross30d: number;
45
45
  planPriceUsd: number | undefined;
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s}from"../../../chunks/RPB46QAC.js";import"../../../chunks/63YRSLDK.js";export{d as CONSERVATIVE_GAS_USD,a as COST_SHARE_LIMIT,b as LAYERBANK_HORIZON_DAYS,c as PLAN_PERIOD_DAYS,e as SUGGEST_CAP_USD,l as accessFeeApplies,p as dateLabel,m as daysBetween,r as daysLabel,f as gasOrBound,i as lendingGross,j as lendingGrossSplit,o as pct,k as pendleGross,q as shortDateLabel,h as suggestUsd,g as tooSmall,s as unitsLabel,n as usd};
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s}from"../../../chunks/H3E7UD2X.js";import"../../../chunks/63YRSLDK.js";export{d as CONSERVATIVE_GAS_USD,a as COST_SHARE_LIMIT,b as LAYERBANK_HORIZON_DAYS,c as PLAN_PERIOD_DAYS,e as SUGGEST_CAP_USD,l as accessFeeApplies,p as dateLabel,m as daysBetween,r as daysLabel,f as gasOrBound,i as lendingGross,j as lendingGrossSplit,o as pct,k as pendleGross,q as shortDateLabel,h as suggestUsd,g as tooSmall,s as unitsLabel,n as usd};
@@ -1 +1 @@
1
- import{a as d}from"../../../chunks/FOD34G2H.js";import{c as l}from"../../../chunks/YMV5TL5C.js";import"../../../chunks/TK55VASJ.js";import"../../../chunks/MRMR4QHA.js";import"../../../chunks/RT7IU6TI.js";import"../../../chunks/SK2VBNAU.js";import"../../../chunks/GQYV4TFO.js";import"../../../chunks/2OKYXT25.js";import"../../../chunks/OUROA7XR.js";import{h as s}from"../../../chunks/7D73A6KS.js";import"../../../chunks/OZ5MDUD2.js";import{a as f,b as y}from"../../../chunks/FWIFTPSE.js";import{a as o}from"../../../chunks/UWBKAWX3.js";import"../../../chunks/RPB46QAC.js";import"../../../chunks/2GXHYI23.js";import"../../../chunks/JKD2B6OX.js";import"../../../chunks/TFDPEAVZ.js";import"../../../chunks/2MZXTOZU.js";import{ta as c}from"../../../chunks/7VC53B5X.js";import"../../../chunks/U2YCQWZK.js";import"../../../chunks/VYYSL557.js";import"../../../chunks/WU7XIAXB.js";import"../../../chunks/6WD4HHID.js";import"../../../chunks/DNNFKDZR.js";import"../../../chunks/BB765L75.js";import"../../../chunks/HHO5ISMM.js";import"../../../chunks/GSFHM5L3.js";import"../../../chunks/PV4AK32X.js";import"../../../chunks/CAWTAR5V.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/ZQAFFWDK.js";import"../../../chunks/FL5SSHUL.js";import"../../../chunks/H5DY7CNB.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/KKPMOAVI.js";import"../../../chunks/Y77EVVT4.js";import"../../../chunks/XHYFISVV.js";import"../../../chunks/5PI57UC2.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/UEDGYZOC.js";import"../../../chunks/P4UQGWCP.js";import{b as m}from"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import{b as i}from"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/6NUNCD5J.js";import"../../../chunks/5RXALTDT.js";import{a,j as p}from"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";import{erc20Abi as E}from"viem";function b(e){return{nowSec:()=>Math.floor(Date.now()/1e3),usdgBalance:async t=>e.clientFor(a).readContract({address:p,abi:E,functionName:"balanceOf",args:[t]}),ethBalance:async t=>e.clientFor(a).getBalance({address:t})}}var C='Optional USDG amount in base units (6 decimals): "1000000" = 1 USDG; defaults to the wallet USDG balance.';function x(e,t={layerbank:s(e),pendleTerms:r=>l(e,r),pendleQuoteCosts:(r,n)=>d(e,r,n)},u={}){return m("earn",[{tools:[{name:"earn_options",inputSchema:{type:"object",properties:{amount:i(C)},additionalProperties:!1},execute:async(r,n)=>o(t,{...b(e),...u},n,typeof r.amount=="string"?{amount:r.amount}:{})}]}])}export{x as createModule,c as earnCopy,o as earnOptions,y as lpWarning,f as lpWarningParts};
1
+ import{a as d}from"../../../chunks/XL3W7DAQ.js";import{c as l}from"../../../chunks/N64JJN37.js";import"../../../chunks/2OVJ2BTJ.js";import"../../../chunks/GQITAJVF.js";import"../../../chunks/OUROA7XR.js";import"../../../chunks/QMNUB2GM.js";import"../../../chunks/FAH7FKUT.js";import"../../../chunks/NMJVQX5M.js";import"../../../chunks/SK2VBNAU.js";import{h as s}from"../../../chunks/VB36EHIR.js";import"../../../chunks/OVM4QIET.js";import{a as f,b as y}from"../../../chunks/3PU2SD3U.js";import{a as o}from"../../../chunks/YRSAZTTC.js";import"../../../chunks/H3E7UD2X.js";import"../../../chunks/2GXHYI23.js";import"../../../chunks/MSRCJ2BS.js";import"../../../chunks/S4JUFCT4.js";import"../../../chunks/WAKZWSHB.js";import{ta as c}from"../../../chunks/V5YSJKRH.js";import"../../../chunks/UVAR6BHU.js";import"../../../chunks/7EACRKFV.js";import"../../../chunks/WSILNJS2.js";import"../../../chunks/Y2QADJOB.js";import"../../../chunks/QLFPAN6S.js";import"../../../chunks/KH4QFN72.js";import"../../../chunks/PQXYTOV5.js";import"../../../chunks/XPWGPZ2C.js";import"../../../chunks/2HN3U6OG.js";import"../../../chunks/LKX5WDOQ.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/URBEK2VV.js";import"../../../chunks/OIQTZOBN.js";import"../../../chunks/Z7FGEWO2.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/ELHRXA5U.js";import"../../../chunks/DGDMRATN.js";import"../../../chunks/4Z3IGMU6.js";import"../../../chunks/C76D54YG.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/VVAM3EAK.js";import"../../../chunks/P4UQGWCP.js";import{b as m}from"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import{b as i}from"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/MQ5F2VOK.js";import"../../../chunks/5RXALTDT.js";import{b as a,k as p}from"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";import{erc20Abi as E}from"viem";function b(e){return{nowSec:()=>Math.floor(Date.now()/1e3),usdgBalance:async t=>e.clientFor(a).readContract({address:p,abi:E,functionName:"balanceOf",args:[t]}),ethBalance:async t=>e.clientFor(a).getBalance({address:t})}}var C='Optional USDG amount in base units (6 decimals): "1000000" = 1 USDG; defaults to the wallet USDG balance.';function x(e,t={layerbank:s(e),pendleTerms:r=>l(e,r),pendleQuoteCosts:(r,n)=>d(e,r,n)},u={}){return m("earn",[{tools:[{name:"earn_options",inputSchema:{type:"object",properties:{amount:i(C)},additionalProperties:!1},execute:async(r,n)=>o(t,{...b(e),...u},n,typeof r.amount=="string"?{amount:r.amount}:{})}]}])}export{x as createModule,c as earnCopy,o as earnOptions,y as lpWarning,f as lpWarningParts};
@@ -1 +1 @@
1
- import{a,b,c,d}from"../../../chunks/FWIFTPSE.js";import"../../../chunks/RPB46QAC.js";import"../../../chunks/7VC53B5X.js";import"../../../chunks/63YRSLDK.js";export{b as lpWarning,a as lpWarningParts,c as merklAfterDeposit,d as merklCampaignTerms};
1
+ import{a,b,c,d}from"../../../chunks/3PU2SD3U.js";import"../../../chunks/H3E7UD2X.js";import"../../../chunks/V5YSJKRH.js";import"../../../chunks/63YRSLDK.js";export{b as lpWarning,a as lpWarningParts,c as merklAfterDeposit,d as merklCampaignTerms};
@@ -1 +1 @@
1
- import{a}from"../../../chunks/UWBKAWX3.js";import"../../../chunks/RPB46QAC.js";import"../../../chunks/7VC53B5X.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as earnOptions};
1
+ import{a}from"../../../chunks/YRSAZTTC.js";import"../../../chunks/H3E7UD2X.js";import"../../../chunks/V5YSJKRH.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as earnOptions};
@@ -1 +1 @@
1
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"../../../chunks/V37L4DU4.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{z as act,m as address,l as agentId,o as bytes32,f as bytes32Schema,n as chainGuard,h as coordinates,r as dataProfile,a as disclosure,e as hashSchema,g as hexSchema,d as idSchema,k as isZero,b as marker,c as markerValue,v as matchingReceipt,x as metadataKeyOf,y as metadataValueOf,s as previewAction,q as referenceURI,i as reputationRegistry,t as requireAuthority,u as requireOwnerOrOperator,p as shortText,w as singleEvent,j as validationRegistry};
1
+ import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"../../../chunks/3A2IKFTV.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{z as act,m as address,l as agentId,o as bytes32,f as bytes32Schema,n as chainGuard,h as coordinates,r as dataProfile,a as disclosure,e as hashSchema,g as hexSchema,d as idSchema,k as isZero,b as marker,c as markerValue,v as matchingReceipt,x as metadataKeyOf,y as metadataValueOf,s as previewAction,q as referenceURI,i as reputationRegistry,t as requireAuthority,u as requireOwnerOrOperator,p as shortText,w as singleEvent,j as validationRegistry};
@@ -1 +1 @@
1
- import{a,b}from"../../../chunks/JWR5XVP2.js";import"../../../chunks/V37L4DU4.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as createDomainPart,a as publicAddress};
1
+ import{a,b}from"../../../chunks/GBIBRYOV.js";import"../../../chunks/3A2IKFTV.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as createDomainPart,a as publicAddress};
@@ -1 +1 @@
1
- import{a as b,b as c,c as d,d as e,e as f}from"../../../chunks/WHTRPRRD.js";import"../../../chunks/YSMWCKIX.js";import"../../../chunks/NA424YAL.js";import"../../../chunks/FZ6IJZZM.js";import"../../../chunks/JWR5XVP2.js";import"../../../chunks/JLRHM2DQ.js";import"../../../chunks/V37L4DU4.js";import{a}from"../../../chunks/X5V2Z2NM.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as CLI_ALIASES,f as createModule,e as createModulePart,a as identityAbi,c as readAgentIdentity,d as selfRegistration};
1
+ import{a as b,b as c,c as d,d as e,e as f}from"../../../chunks/75SULXNT.js";import"../../../chunks/ADIPEGNN.js";import"../../../chunks/OB7BFDOV.js";import"../../../chunks/ANIF3JMV.js";import"../../../chunks/E76Z2TT4.js";import"../../../chunks/GBIBRYOV.js";import"../../../chunks/SUNTJ6IU.js";import"../../../chunks/3A2IKFTV.js";import{a}from"../../../chunks/X5V2Z2NM.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/HFVXNKA5.js";import"../../../chunks/TRCP7X5P.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as CLI_ALIASES,f as createModule,e as createModulePart,a as identityAbi,c as readAgentIdentity,d as selfRegistration};
@@ -1 +1 @@
1
- import{a,b,c}from"../../../chunks/JLRHM2DQ.js";import"../../../chunks/V37L4DU4.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as WALLET_MAX_DELAY,c as createManagementPart,b as walletRequest};
1
+ import{a,b,c}from"../../../chunks/SUNTJ6IU.js";import"../../../chunks/3A2IKFTV.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as WALLET_MAX_DELAY,c as createManagementPart,b as walletRequest};
@@ -1 +1 @@
1
- import{a,b}from"../../../chunks/YSMWCKIX.js";import"../../../chunks/V37L4DU4.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as createReputationPart,a as decimalText};
1
+ import{a,b}from"../../../chunks/ADIPEGNN.js";import"../../../chunks/3A2IKFTV.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as createReputationPart,a as decimalText};
@@ -1 +1 @@
1
- import{a,b}from"../../../chunks/NA424YAL.js";import"../../../chunks/V37L4DU4.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as SERVICE_KINDS,b as validateService};
1
+ import{a,b}from"../../../chunks/OB7BFDOV.js";import"../../../chunks/3A2IKFTV.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as SERVICE_KINDS,b as validateService};
@@ -0,0 +1,61 @@
1
+ import type { Address, CreateModulePart, Hex, ModuleContext, UnsignedTx } from '../../types.js';
2
+ export declare const THESIS_TOOL = "erc8004_stamp_thesis";
3
+ export declare const THESIS_RECORD_PATH = "/v1/agents/thesis";
4
+ export interface ThesisFacts {
5
+ text: string;
6
+ position: string;
7
+ key: string;
8
+ hash: Hex;
9
+ }
10
+ export interface PreparedThesis extends ThesisFacts {
11
+ agentId: string;
12
+ writtenAfterEntry: boolean;
13
+ }
14
+ export interface ThesisRecord extends PreparedThesis {
15
+ txHash: Hex;
16
+ }
17
+ export declare const THESIS_INPUT_SCHEMA: {
18
+ readonly type: "object";
19
+ readonly additionalProperties: false;
20
+ readonly required: readonly ["text", "position"];
21
+ readonly properties: {
22
+ readonly text: {
23
+ readonly type: "string";
24
+ readonly minLength: 1;
25
+ readonly maxLength: 16384;
26
+ readonly description: "Exact thesis text to hash and publish in the tracker record; up to 16 KiB UTF-8. Only the hash is written on chain.";
27
+ };
28
+ readonly position: {
29
+ readonly type: "string";
30
+ readonly minLength: 1;
31
+ readonly maxLength: 256;
32
+ readonly description: "Canonical position ID, up to 256 UTF-8 bytes. Use oak_plan_run steps [trade, stamp] to approve both together.";
33
+ };
34
+ };
35
+ };
36
+ export declare function thesisFacts(text: unknown, position: unknown): ThesisFacts;
37
+ export declare function assertThesisStampTransactions(txs: readonly UnsignedTx[], thesis: PreparedThesis): void;
38
+ export declare function assertThesisPlanSteps(steps: readonly {
39
+ txs: readonly UnsignedTx[];
40
+ action?: {
41
+ name: string;
42
+ oakThesis?: PreparedThesis;
43
+ };
44
+ }[]): void;
45
+ export declare function prepareThesisStamp(context: ModuleContext, wallet: Address, savedIdentity: unknown, args: unknown, options?: {
46
+ writtenAfterEntry?: boolean;
47
+ now?: () => number;
48
+ }): Promise<{
49
+ thesis: PreparedThesis;
50
+ txs: UnsignedTx[];
51
+ summary: string;
52
+ hashes?: string[];
53
+ status?: "mined";
54
+ }>;
55
+ export declare function recordMinedThesis(context: ModuleContext, wallet: Address, thesis: PreparedThesis, txHash: Hex, post: (record: ThesisRecord) => Promise<unknown>): Promise<{
56
+ txHash: Hex;
57
+ stampMined?: true;
58
+ recorded: boolean;
59
+ summary: string;
60
+ }>;
61
+ export declare const createThesisPart: CreateModulePart;
@@ -0,0 +1 @@
1
+ import{a,b,c,d,e,f,g,h,i}from"../../../chunks/ANIF3JMV.js";import"../../../chunks/3A2IKFTV.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/HFVXNKA5.js";import"../../../chunks/TRCP7X5P.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{c as THESIS_INPUT_SCHEMA,b as THESIS_RECORD_PATH,a as THESIS_TOOL,f as assertThesisPlanSteps,e as assertThesisStampTransactions,i as createThesisPart,g as prepareThesisStamp,h as recordMinedThesis,d as thesisFacts};
@@ -1 +1 @@
1
- import{a}from"../../../chunks/FZ6IJZZM.js";import"../../../chunks/V37L4DU4.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as createValidationPart};
1
+ import{a}from"../../../chunks/E76Z2TT4.js";import"../../../chunks/3A2IKFTV.js";import"../../../chunks/X5V2Z2NM.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as createValidationPart};
@@ -1 +1 @@
1
- import{f as i}from"../../../chunks/FIO6VC2J.js";import{a as d}from"../../../chunks/APQYLJGS.js";import{b as a}from"../../../chunks/HS4DZPYT.js";import"../../../chunks/77CLMPM7.js";import"../../../chunks/3VWVW7PX.js";import{b as o}from"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";var u="Gloam runs on your computer; the Oak server never handles Gloam notes. Nothing was sent.",n={type:"string",pattern:"^[0-9]+$",description:'USDG amount in base units (6 decimals): "1000000" = 1 USDG.'},l={gloam_status:{type:"object",additionalProperties:!1,properties:{},required:[]},gloam_shield:{type:"object",additionalProperties:!1,properties:{amount:n},required:["amount"]},gloam_pay:{type:"object",additionalProperties:!1,properties:{to:{type:"string",pattern:"^gloamr1\\.",description:"Recipient\u2019s Gloam receiving code, beginning gloamr1."},amount:n},required:["to","amount"]},gloam_claim:{type:"object",additionalProperties:!1,properties:{ticket:{type:"string",pattern:"^gloam2t\\.",description:"Optional Gloam payment ticket beginning gloam2t.; omit to scan for payments."}},required:[]},gloam_cash_out:{type:"object",additionalProperties:!1,properties:{note:{type:"string",pattern:"^(note_[0-9]+|all)$",description:"Local note identifier (note_ followed by digits), or all to cash out every eligible note."}},required:["note"]}},g=Object.keys(l);function b(s,t){if(s.network==="testnet")return o("gloam",[]);let p=g.map(e=>({name:e,inputSchema:l[e],...e==="gloam_claim"?{free:!0}:{},execute:async(m,c)=>{if(!t)throw new Error(u);let r=await t.plan(e,a(e,m),c);return i(r),r}}));return o("gloam",[{tools:p}])}export{d as GLOAM_ENGINE_API,u as GLOAM_LOCAL_REFUSAL,b as createModule};
1
+ import{b as a}from"../../../chunks/HS4DZPYT.js";import{f as i}from"../../../chunks/FIO6VC2J.js";import"../../../chunks/77CLMPM7.js";import{a as d}from"../../../chunks/APQYLJGS.js";import"../../../chunks/3VWVW7PX.js";import{b as o}from"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";var u="Gloam runs on your computer; the Oak server never handles Gloam notes. Nothing was sent.",n={type:"string",pattern:"^[0-9]+$",description:'USDG amount in base units (6 decimals): "1000000" = 1 USDG.'},l={gloam_status:{type:"object",additionalProperties:!1,properties:{},required:[]},gloam_shield:{type:"object",additionalProperties:!1,properties:{amount:n},required:["amount"]},gloam_pay:{type:"object",additionalProperties:!1,properties:{to:{type:"string",pattern:"^gloamr1\\.",description:"Recipient\u2019s Gloam receiving code, beginning gloamr1."},amount:n},required:["to","amount"]},gloam_claim:{type:"object",additionalProperties:!1,properties:{ticket:{type:"string",pattern:"^gloam2t\\.",description:"Optional Gloam payment ticket beginning gloam2t.; omit to scan for payments."}},required:[]},gloam_cash_out:{type:"object",additionalProperties:!1,properties:{note:{type:"string",pattern:"^(note_[0-9]+|all)$",description:"Local note identifier (note_ followed by digits), or all to cash out every eligible note."}},required:["note"]}},g=Object.keys(l);function b(s,t){if(s.network==="testnet")return o("gloam",[]);let p=g.map(e=>({name:e,inputSchema:l[e],...e==="gloam_claim"?{free:!0}:{},execute:async(m,c)=>{if(!t)throw new Error(u);let r=await t.plan(e,a(e,m),c);return i(r),r}}));return o("gloam",[{tools:p}])}export{d as GLOAM_ENGINE_API,u as GLOAM_LOCAL_REFUSAL,b as createModule};
@@ -1 +1 @@
1
- import{a,b}from"../../../chunks/4JTTA3BX.js";import"../../../chunks/M7ZXDLKM.js";import"../../../chunks/DSTMEY5F.js";import"../../../chunks/FV4WZOTD.js";import"../../../chunks/OARVU3RC.js";import"../../../chunks/WUT7TZYM.js";import"../../../chunks/A3PN3PK3.js";import"../../../chunks/L646YWDP.js";import"../../../chunks/DNNFKDZR.js";import"../../../chunks/BB765L75.js";import"../../../chunks/HHO5ISMM.js";import"../../../chunks/GSFHM5L3.js";import"../../../chunks/PV4AK32X.js";import"../../../chunks/CAWTAR5V.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/ZQAFFWDK.js";import"../../../chunks/FL5SSHUL.js";import"../../../chunks/H5DY7CNB.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/KKPMOAVI.js";import"../../../chunks/Y77EVVT4.js";import"../../../chunks/XHYFISVV.js";import"../../../chunks/5PI57UC2.js";import"../../../chunks/PV5FDT6O.js";import"../../../chunks/UEDGYZOC.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/6NUNCD5J.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as createModule,a as createModulePart};
1
+ import{a,b}from"../../../chunks/KZA5GYZR.js";import"../../../chunks/FGEGJOAA.js";import"../../../chunks/6F527FLN.js";import"../../../chunks/ND32LJWI.js";import"../../../chunks/YBLJ75U5.js";import"../../../chunks/LCH6F5HT.js";import"../../../chunks/X24YTJST.js";import"../../../chunks/A3PN3PK3.js";import"../../../chunks/QLFPAN6S.js";import"../../../chunks/KH4QFN72.js";import"../../../chunks/PQXYTOV5.js";import"../../../chunks/XPWGPZ2C.js";import"../../../chunks/2HN3U6OG.js";import"../../../chunks/LKX5WDOQ.js";import"../../../chunks/CQ5WRWV4.js";import"../../../chunks/IV4K7FMD.js";import"../../../chunks/URBEK2VV.js";import"../../../chunks/OIQTZOBN.js";import"../../../chunks/Z7FGEWO2.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/ELHRXA5U.js";import"../../../chunks/DGDMRATN.js";import"../../../chunks/4Z3IGMU6.js";import"../../../chunks/C76D54YG.js";import"../../../chunks/TXGZ6NWN.js";import"../../../chunks/VVAM3EAK.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import"../../../chunks/IOYRL6AY.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/MQ5F2VOK.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{b as createModule,a as createModulePart};
@@ -1 +1 @@
1
- import{b as O}from"../../../chunks/CNLL4NCR.js";import{a as H}from"../../../chunks/CSDN4MYP.js";import{b as U}from"../../../chunks/WNWRF4HE.js";import{c as D,g as I}from"../../../chunks/GQ3XZFRL.js";import"../../../chunks/HOEQVPY7.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import{b as w,e as u}from"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5RXALTDT.js";import{a as A}from"../../../chunks/FWD4L3CJ.js";import{a as L}from"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";var Ee=["release","contract","commit","docs","correction","other"],x=20,$=4,M=48,N=12,B=4,J=3,P=6,V=3e5,z=600,G=512,v=/^[a-z0-9][a-z0-9-]{0,79}$/,q=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?Z$/,S=/[\p{Cc}\p{Cf}\p{Zl}\p{Zp}]/u,Q=/\.(?:localhost|local|localdomain|internal|intranet|lan|home|corp|private|home\.arpa)$/,Y=Object.freeze({FEATURE_RELEASE:"release",PRODUCT_LAUNCH:"release",APP_RELEASE:"release",GITHUB_RELEASE:"release",API_RELEASE:"release",SDK_RELEASE:"release",DEMO_RELEASE:"release",DESIGN_RELEASE:"release",CONTRACT_DEPLOY:"contract",CONTRACT_UPGRADE:"contract",CONTRACT_DEPLOY_FOLLOWUP:"contract",CODE_ACTIVITY:"commit",DOCS_UPDATE:"docs",CORRECTION:"correction",RETRACTION:"correction"}),ee=new Set(["listProjects","getProjectTimeline","getPartnerScanCard","listChanges"]),te=new Set(["pons_launch_info","pons_holders"]);function ne(e){return{async hey(t,n){if(!ee.has(t))throw new Error(`Blocked HEY read ${t}`);let o=await e("heyresearch_read",{operation:t,parameters:n,detail:"full"});if(!u(o)||o.operation!==t||!u(o.data))throw new Error("Unexpected HEY response");return o.data},async oak(t,n){if(!te.has(t))throw new Error(`Blocked read ${t}`);return e(t,n)}}}function T(e){return typeof e=="string"&&e.trim().length>0}function R(e){if(typeof e!="string"||!q.test(e))return;let t=Date.parse(e);return Number.isFinite(t)&&new Date(t).toISOString().slice(0,19)===e.slice(0,19)?t:void 0}function W(e){if(!(typeof e!="string"||e.length>2048||/[\s<>\\]/.test(e)||S.test(e)))try{let t=new URL(e),n=t.hostname.toLowerCase().replace(/\.$/,"");return t.protocol!=="https:"||t.username||t.password||!n||n.startsWith("[")||/^[\d.]+$/.test(n)||!n.includes(".")||n==="localhost"||Q.test(n)||!/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/.test(n)||!/[a-z]/.test(n.slice(n.lastIndexOf(".")+1))?void 0:t}catch{return}}function b(e){throw new L(e)}function se(e){return Array.isArray(e)||b("Provide the follow list as an array."),e.map(t=>((!u(t)||t.chainId!==A)&&b("Only Robinhood Chain mainnet (4663) follows can be checked."),(typeof t.token!="string"||!w.test(t.token))&&b("Each follow needs a full token address."),(typeof t.projectSlug!="string"||!v.test(t.projectSlug))&&b("Each follow needs a valid HEY project slug."),t.lastCheckedAt!==null&&R(t.lastCheckedAt)===void 0&&b("lastCheckedAt must be null or a UTC time such as 2026-11-02T12:00:00.000Z."),t.after!==void 0&&t.after!==null&&!F(t.after)&&b("Each follow cursor must be null or a cursor HEY returned."),t))}function F(e){return typeof e=="string"&&e.length>0&&e.length<=G&&!S.test(e)}function oe(e){return e===void 0?{}:((!u(e)||Object.values(e).some(t=>!F(t)))&&b("Continuation cursors must be the strings a previous page returned."),Object.fromEntries(Object.entries(e).map(([t,n])=>[t.toLowerCase(),n])))}function X(e,t,n){let o=i=>{n.push({code:"item_omitted",detail:i,slug:t.slug})};if(!u(e))return o("A row was not an object.");if(!T(e.id)||e.id.length>240)return o("A row had no usable receipt id.");let r=R(e.at);if(r===void 0)return o(`Receipt ${e.id} has no valid UTC publication time.`);if(r>t.reference+V)return o(`Receipt ${e.id} is dated in the future.`);if(!T(e.title)||e.title.length>z||S.test(e.title))return o(`Receipt ${e.id} has unusable text.`);let d=W(e.source);if(!d)return o(`Receipt ${e.id} has no public HTTPS source.`);let a=typeof e.eventType=="string"?e.eventType:void 0,g=e.withdrawn===!0?"correction":a!==void 0&&Object.hasOwn(Y,a)?Y[a]:"other";return{at:r,recorded:R(e.recordedAt),key:`${t.slug}|${g==="correction"?"correction:":""}${e.id}`,item:{project_slug:t.slug,project_name:t.name,hey_status:t.status,update_type:g,update_text:e.title,published_at:e.at,source_host:d.hostname,source_url:e.source}}}function Z(e){return e.map((t,n)=>({candidate:t,index:n})).sort((t,n)=>n.candidate.at-t.candidate.at||t.index-n.index).map(({candidate:t})=>t.item)}function re(e,t){let n=e.nextCursor;if(!u(e.project)||e.project.slug!==t||!Array.isArray(e.items)||!(n==null||typeof n=="string"&&n.length>0&&n.length<=G))throw new Error("Unexpected timeline");return{items:e.items,next:n??null}}async function ie(e,t,n){let o=e.offset??0;(!Number.isSafeInteger(o)||o<0)&&b("offset must be a whole number from zero.");let r=new Date(n()).toISOString(),d=[],a=[],l=new Set,g=!0,i=o,E,k=0;for(O(0,void 0,"Reading HEY Research Lab projects");i!==void 0&&k<B&&E===void 0&&a.length<N;){let p;try{p=await t.hey("listProjects",{has:["token"],sort:"newest",limit:M,offset:i})}catch{return d.push({code:"unavailable",detail:"The HEY project list could not be read."}),{mode:"browse",items:[],oak:{},coverage:d,complete:!1,continuation:{offset:i},checkedThrough:r}}if(!Array.isArray(p.items)||!(p.nextOffset===void 0||Number.isSafeInteger(p.nextOffset)&&p.nextOffset>i))return d.push({code:"bad_pagination",detail:"HEY returned a project list whose paging could not be followed."}),{mode:"browse",items:[],oak:{},coverage:d,complete:!1,continuation:{offset:i},checkedThrough:r};k++;let _=i;for(let[f,s]of p.items.entries()){let c=u(s)&&u(s.token)?s.token:void 0;if(!u(s)||typeof s.slug!="string"||!v.test(s.slug)||!T(s.name)||s.name.length>z||S.test(s.name)||!c||c.chainId!==A||typeof c.contractAddress!="string"||!w.test(c.contractAddress)){d.push({code:"project_skipped",detail:"A listed project has no Robinhood Chain mainnet token HEY can bind to it.",...u(s)&&typeof s.slug=="string"&&v.test(s.slug)?{slug:s.slug}:{}});continue}if(!l.has(s.slug)){if(a.length>=N){E=_+f;break}l.add(s.slug),a.push({slug:s.slug,name:s.name,token:c.contractAddress})}}i=p.nextOffset}let y=[];for(let p=0;p<a.length;p+=P){let _=a.slice(p,p+P),f=await Promise.all(_.map(async s=>{let c=await K(t,{chainId:A,token:s.token,projectSlug:s.slug,lastCheckedAt:null}),C={...s,status:c.status==="tied"?c.line:c.status==="untied"&&c.statusLine?c.statusLine:"HEY Research Lab context unavailable"};try{let m=await t.hey("getProjectTimeline",{slug:C.slug,lens:"build",limit:J});return{project:C,...re(m,C.slug)}}catch{return{project:C,failed:!0}}}));for(let s of f){if("failed"in s){g=!1,d.push({code:"unavailable",detail:"This project's updates could not be read.",slug:s.project.slug});continue}let c={slug:s.project.slug,name:s.project.name,status:s.project.status,reference:n()};for(let C of s.items){let m=X(C,c,d);m&&!l.has(m.key)&&(l.add(m.key),y.push(m))}}O(Math.min(p+P,a.length),a.length,"Read HEY Research Lab project updates")}let h=E??i;return h!==void 0&&(g=!1),{mode:"browse",items:Z(y),oak:{},coverage:d,complete:g,continuation:h===void 0?null:{offset:h},checkedThrough:r}}async function K(e,t){let n;try{n=await e.hey("getPartnerScanCard",{chain:A,token:t.token})}catch{return{status:"unavailable"}}let o=n.found===!1&&n.contractAddress===void 0?{...n,contractAddress:t.token}:n,r=U(o,A,t.token);if(!r)return{status:"unavailable"};if(!r.found)return{status:"untied",detail:"HEY has no published project for this token. An empty feed proves nothing.",statusLine:D};let d=u(n.project)?n.project:void 0,a="";try{a=new URL(r.project_link).pathname.split("/")[2]??""}catch{}let l=d?.slug===t.projectSlug&&a===t.projectSlug,g=I(r.status_label,r.status_help);return r.token_verification!=="VERIFIED"||!r.activity_applies_to_token||!l?{status:"untied",detail:"HEY does not tie this token to the followed project, so no builder history is shown for it.",...l?{statusLine:g}:{}}:{status:"tied",line:g,name:T(d?.name)?String(d?.name):t.projectSlug}}function ae(e,t,n){if(!u(e.query)||e.query.project!==t||e.query.mode!=="sync"||!Array.isArray(e.items)||typeof e.hasMore!="boolean"||!(F(e.nextCursor)||e.nextCursor===null&&e.hasMore===!1&&e.items.length===0)||e.ignoredParameters!==void 0&&(!Array.isArray(e.ignoredParameters)||e.ignoredParameters.length>0))throw new Error("Unexpected change ledger page");if(e.items.some(o=>u(o)&&(o.op!=="retract"||o.project!==void 0)&&(!u(o.project)||o.project.slug!==t)))throw new Error("Change belongs to another project");return{items:e.items,next:e.nextCursor===null?n:e.nextCursor,more:e.hasMore}}function ce(e,t,n){if(u(e)&&e.op==="retract"&&T(e.id)&&e.id.length<=240&&!S.test(e.id))return n.push({code:"retraction",slug:t.slug,detail:`HEY retracted ${e.id}. Empty fields were not supplied by the tombstone.`}),{at:R(e.recordedAt)??0,recorded:R(e.recordedAt),key:`${t.slug}|${e.id}|${String(e.revision)}|retract`,item:{project_slug:t.slug,project_name:t.name,hey_status:t.status,update_type:"correction",update_text:"",published_at:R(e.recordedAt)===void 0?"":e.recordedAt,source_host:"",source_url:""}};if(!u(e)||e.op!=="upsert"){n.push({code:"item_omitted",slug:t.slug,detail:"A change had no supported ledger operation."});return}let o=Array.isArray(e.evidence)?e.evidence.find(l=>u(l)&&W(l.url)):void 0,r=u(e.facts)?e.facts:{},d=typeof r.eventType=="string"?r.eventType:typeof e.type=="string"&&e.type.startsWith("build.")?e.type.slice(6).toUpperCase():void 0,a=X({id:e.id,at:e.occurredAt??e.detectedAt??e.recordedAt,recordedAt:e.recordedAt,title:e.summary,eventType:d,source:u(o)?o.url:void 0},t,n);return a&&(a.key=`${t.slug}|${String(e.id)}|${String(e.revision)}|upsert`),a}async function de(e,t,n,o){let r=[],d=[],a={},l={},g=!0,i=e.token.toLowerCase(),E={launch_info:null,addresses:null};for(let[_,f,s]of[["launch_info","pons_launch_info",{token:e.token}],["addresses","pons_holders",{token:e.token,limit:1}]])try{let c=await t.oak(f,s);if(_==="addresses"){let C=H(c,e.token);E.addresses=C?.addresses??null,C||r.push({code:"oak_unavailable",detail:"Address figures were not read for this token.",token:i})}else E.launch_info=c}catch{r.push({code:"oak_unavailable",detail:`${f} could not be read for this token; it is unknown, not empty.`,token:i})}let k=await K(t,e);if(k.status==="unavailable")return g=!1,r.push({code:"unavailable",detail:"HEY's scan for this token could not be read.",slug:e.projectSlug,token:i}),o[i]&&(a[i]=o[i]),{key:i,facts:E,coverage:r,candidates:d,nextCursors:a,after:l,complete:g};if(k.status==="untied")return r.push({code:"tie_not_verified",detail:k.detail,slug:e.projectSlug,token:i,...k.statusLine?{statusLine:k.statusLine,statusNote:"show exactly"}:{}}),{key:i,facts:E,coverage:r,candidates:d,nextCursors:a,after:l,complete:g};let y={slug:e.projectSlug,name:k.name,status:k.line,reference:n},h=o[i]??e.after??"c1.0",p=new Set([h]);for(let _=0;;_++){if(_>=B){g=!1,a[i]=h;break}let f;try{f=ae(await t.hey("listChanges",{project:e.projectSlug,after:h,limit:M}),e.projectSlug,h)}catch{g=!1,r.push({code:"unavailable",detail:"This project's change ledger could not be read.",slug:e.projectSlug,token:i}),a[i]=h;break}if(p.has(f.next)&&(f.more||f.items.length>0)){g=!1,r.push({code:"bad_pagination",detail:"HEY repeated a continuation cursor.",slug:e.projectSlug,token:i}),a[i]=h;break}for(let s of f.items){let c=ce(s,y,r);c&&d.push(c)}if(!f.more){l[i]=f.next;break}p.add(f.next),h=f.next}return{key:i,facts:E,coverage:r,candidates:d,nextCursors:a,after:l,complete:g}}async function ue(e,t,n){let o=se(e.entries),r=R(e.until);r===void 0&&b("until must be a UTC time such as 2026-11-02T12:00:00.000Z.");let d=oe(e.cursors),a=Object.keys(d).length>0,l=[],g={},i=[],E=new Set,k={},y={},h=!0,p=o.filter(c=>!a||Object.hasOwn(d,c.token.toLowerCase())),_=p.slice(0,x),f=p.slice(x);f.length&&(h=!1,l.push({code:"follow_limit",detail:`At most ${x} followed tokens are read at once; ${f.length} remain.`})),o.length||l.push({code:"no_follows",detail:"The follow list is empty. An empty feed proves nothing."});for(let c=0;c<_.length;c+=$){let C=await Promise.all(_.slice(c,c+$).map(m=>de(m,t,Math.max(r,n()),d)));for(let m of C){g[m.key]=m.facts,l.push(...m.coverage),Object.assign(k,m.nextCursors),Object.assign(y,m.after),m.complete||(h=!1);for(let j of m.candidates)E.has(j.key)||(E.add(j.key),i.push(j))}}let s={};return Object.keys(k).length&&(s.cursors=k),f.length&&(s.remainingTokens=f.map(c=>c.token)),{mode:"updates",items:Z(i),oak:g,coverage:l,complete:h,after:y,continuation:Object.keys(s).length?s:null,checkedThrough:e.until}}async function _e(e,t,n={}){let o=ne(t);return u(e)&&e.mode==="browse"?ie(e,o,n.now??Date.now):u(e)&&e.mode==="updates"?ue(e,o,n.now??Date.now):b("Choose browse or updates.")}export{Ee as UPDATE_TYPES,_e as readBuilderFeed};
1
+ import{b as O}from"../../../chunks/CNLL4NCR.js";import{a as H}from"../../../chunks/5GQJVKVY.js";import{b as U}from"../../../chunks/WNWRF4HE.js";import{c as D,g as I}from"../../../chunks/GQ3XZFRL.js";import"../../../chunks/HOEQVPY7.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import{b as w,e as u}from"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5RXALTDT.js";import{b as A}from"../../../chunks/TI727O2H.js";import{a as L}from"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";var Ee=["release","contract","commit","docs","correction","other"],x=20,$=4,M=48,N=12,B=4,J=3,P=6,V=3e5,z=600,G=512,v=/^[a-z0-9][a-z0-9-]{0,79}$/,q=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?Z$/,S=/[\p{Cc}\p{Cf}\p{Zl}\p{Zp}]/u,Q=/\.(?:localhost|local|localdomain|internal|intranet|lan|home|corp|private|home\.arpa)$/,Y=Object.freeze({FEATURE_RELEASE:"release",PRODUCT_LAUNCH:"release",APP_RELEASE:"release",GITHUB_RELEASE:"release",API_RELEASE:"release",SDK_RELEASE:"release",DEMO_RELEASE:"release",DESIGN_RELEASE:"release",CONTRACT_DEPLOY:"contract",CONTRACT_UPGRADE:"contract",CONTRACT_DEPLOY_FOLLOWUP:"contract",CODE_ACTIVITY:"commit",DOCS_UPDATE:"docs",CORRECTION:"correction",RETRACTION:"correction"}),ee=new Set(["listProjects","getProjectTimeline","getPartnerScanCard","listChanges"]),te=new Set(["pons_launch_info","pons_holders"]);function ne(e){return{async hey(t,n){if(!ee.has(t))throw new Error(`Blocked HEY read ${t}`);let o=await e("heyresearch_read",{operation:t,parameters:n,detail:"full"});if(!u(o)||o.operation!==t||!u(o.data))throw new Error("Unexpected HEY response");return o.data},async oak(t,n){if(!te.has(t))throw new Error(`Blocked read ${t}`);return e(t,n)}}}function T(e){return typeof e=="string"&&e.trim().length>0}function R(e){if(typeof e!="string"||!q.test(e))return;let t=Date.parse(e);return Number.isFinite(t)&&new Date(t).toISOString().slice(0,19)===e.slice(0,19)?t:void 0}function W(e){if(!(typeof e!="string"||e.length>2048||/[\s<>\\]/.test(e)||S.test(e)))try{let t=new URL(e),n=t.hostname.toLowerCase().replace(/\.$/,"");return t.protocol!=="https:"||t.username||t.password||!n||n.startsWith("[")||/^[\d.]+$/.test(n)||!n.includes(".")||n==="localhost"||Q.test(n)||!/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/.test(n)||!/[a-z]/.test(n.slice(n.lastIndexOf(".")+1))?void 0:t}catch{return}}function b(e){throw new L(e)}function se(e){return Array.isArray(e)||b("Provide the follow list as an array."),e.map(t=>((!u(t)||t.chainId!==A)&&b("Only Robinhood Chain mainnet (4663) follows can be checked."),(typeof t.token!="string"||!w.test(t.token))&&b("Each follow needs a full token address."),(typeof t.projectSlug!="string"||!v.test(t.projectSlug))&&b("Each follow needs a valid HEY project slug."),t.lastCheckedAt!==null&&R(t.lastCheckedAt)===void 0&&b("lastCheckedAt must be null or a UTC time such as 2026-11-02T12:00:00.000Z."),t.after!==void 0&&t.after!==null&&!F(t.after)&&b("Each follow cursor must be null or a cursor HEY returned."),t))}function F(e){return typeof e=="string"&&e.length>0&&e.length<=G&&!S.test(e)}function oe(e){return e===void 0?{}:((!u(e)||Object.values(e).some(t=>!F(t)))&&b("Continuation cursors must be the strings a previous page returned."),Object.fromEntries(Object.entries(e).map(([t,n])=>[t.toLowerCase(),n])))}function X(e,t,n){let o=i=>{n.push({code:"item_omitted",detail:i,slug:t.slug})};if(!u(e))return o("A row was not an object.");if(!T(e.id)||e.id.length>240)return o("A row had no usable receipt id.");let r=R(e.at);if(r===void 0)return o(`Receipt ${e.id} has no valid UTC publication time.`);if(r>t.reference+V)return o(`Receipt ${e.id} is dated in the future.`);if(!T(e.title)||e.title.length>z||S.test(e.title))return o(`Receipt ${e.id} has unusable text.`);let d=W(e.source);if(!d)return o(`Receipt ${e.id} has no public HTTPS source.`);let a=typeof e.eventType=="string"?e.eventType:void 0,g=e.withdrawn===!0?"correction":a!==void 0&&Object.hasOwn(Y,a)?Y[a]:"other";return{at:r,recorded:R(e.recordedAt),key:`${t.slug}|${g==="correction"?"correction:":""}${e.id}`,item:{project_slug:t.slug,project_name:t.name,hey_status:t.status,update_type:g,update_text:e.title,published_at:e.at,source_host:d.hostname,source_url:e.source}}}function Z(e){return e.map((t,n)=>({candidate:t,index:n})).sort((t,n)=>n.candidate.at-t.candidate.at||t.index-n.index).map(({candidate:t})=>t.item)}function re(e,t){let n=e.nextCursor;if(!u(e.project)||e.project.slug!==t||!Array.isArray(e.items)||!(n==null||typeof n=="string"&&n.length>0&&n.length<=G))throw new Error("Unexpected timeline");return{items:e.items,next:n??null}}async function ie(e,t,n){let o=e.offset??0;(!Number.isSafeInteger(o)||o<0)&&b("offset must be a whole number from zero.");let r=new Date(n()).toISOString(),d=[],a=[],l=new Set,g=!0,i=o,E,k=0;for(O(0,void 0,"Reading HEY Research Lab projects");i!==void 0&&k<B&&E===void 0&&a.length<N;){let p;try{p=await t.hey("listProjects",{has:["token"],sort:"newest",limit:M,offset:i})}catch{return d.push({code:"unavailable",detail:"The HEY project list could not be read."}),{mode:"browse",items:[],oak:{},coverage:d,complete:!1,continuation:{offset:i},checkedThrough:r}}if(!Array.isArray(p.items)||!(p.nextOffset===void 0||Number.isSafeInteger(p.nextOffset)&&p.nextOffset>i))return d.push({code:"bad_pagination",detail:"HEY returned a project list whose paging could not be followed."}),{mode:"browse",items:[],oak:{},coverage:d,complete:!1,continuation:{offset:i},checkedThrough:r};k++;let _=i;for(let[f,s]of p.items.entries()){let c=u(s)&&u(s.token)?s.token:void 0;if(!u(s)||typeof s.slug!="string"||!v.test(s.slug)||!T(s.name)||s.name.length>z||S.test(s.name)||!c||c.chainId!==A||typeof c.contractAddress!="string"||!w.test(c.contractAddress)){d.push({code:"project_skipped",detail:"A listed project has no Robinhood Chain mainnet token HEY can bind to it.",...u(s)&&typeof s.slug=="string"&&v.test(s.slug)?{slug:s.slug}:{}});continue}if(!l.has(s.slug)){if(a.length>=N){E=_+f;break}l.add(s.slug),a.push({slug:s.slug,name:s.name,token:c.contractAddress})}}i=p.nextOffset}let y=[];for(let p=0;p<a.length;p+=P){let _=a.slice(p,p+P),f=await Promise.all(_.map(async s=>{let c=await K(t,{chainId:A,token:s.token,projectSlug:s.slug,lastCheckedAt:null}),C={...s,status:c.status==="tied"?c.line:c.status==="untied"&&c.statusLine?c.statusLine:"HEY Research Lab context unavailable"};try{let m=await t.hey("getProjectTimeline",{slug:C.slug,lens:"build",limit:J});return{project:C,...re(m,C.slug)}}catch{return{project:C,failed:!0}}}));for(let s of f){if("failed"in s){g=!1,d.push({code:"unavailable",detail:"This project's updates could not be read.",slug:s.project.slug});continue}let c={slug:s.project.slug,name:s.project.name,status:s.project.status,reference:n()};for(let C of s.items){let m=X(C,c,d);m&&!l.has(m.key)&&(l.add(m.key),y.push(m))}}O(Math.min(p+P,a.length),a.length,"Read HEY Research Lab project updates")}let h=E??i;return h!==void 0&&(g=!1),{mode:"browse",items:Z(y),oak:{},coverage:d,complete:g,continuation:h===void 0?null:{offset:h},checkedThrough:r}}async function K(e,t){let n;try{n=await e.hey("getPartnerScanCard",{chain:A,token:t.token})}catch{return{status:"unavailable"}}let o=n.found===!1&&n.contractAddress===void 0?{...n,contractAddress:t.token}:n,r=U(o,A,t.token);if(!r)return{status:"unavailable"};if(!r.found)return{status:"untied",detail:"HEY has no published project for this token. An empty feed proves nothing.",statusLine:D};let d=u(n.project)?n.project:void 0,a="";try{a=new URL(r.project_link).pathname.split("/")[2]??""}catch{}let l=d?.slug===t.projectSlug&&a===t.projectSlug,g=I(r.status_label,r.status_help);return r.token_verification!=="VERIFIED"||!r.activity_applies_to_token||!l?{status:"untied",detail:"HEY does not tie this token to the followed project, so no builder history is shown for it.",...l?{statusLine:g}:{}}:{status:"tied",line:g,name:T(d?.name)?String(d?.name):t.projectSlug}}function ae(e,t,n){if(!u(e.query)||e.query.project!==t||e.query.mode!=="sync"||!Array.isArray(e.items)||typeof e.hasMore!="boolean"||!(F(e.nextCursor)||e.nextCursor===null&&e.hasMore===!1&&e.items.length===0)||e.ignoredParameters!==void 0&&(!Array.isArray(e.ignoredParameters)||e.ignoredParameters.length>0))throw new Error("Unexpected change ledger page");if(e.items.some(o=>u(o)&&(o.op!=="retract"||o.project!==void 0)&&(!u(o.project)||o.project.slug!==t)))throw new Error("Change belongs to another project");return{items:e.items,next:e.nextCursor===null?n:e.nextCursor,more:e.hasMore}}function ce(e,t,n){if(u(e)&&e.op==="retract"&&T(e.id)&&e.id.length<=240&&!S.test(e.id))return n.push({code:"retraction",slug:t.slug,detail:`HEY retracted ${e.id}. Empty fields were not supplied by the tombstone.`}),{at:R(e.recordedAt)??0,recorded:R(e.recordedAt),key:`${t.slug}|${e.id}|${String(e.revision)}|retract`,item:{project_slug:t.slug,project_name:t.name,hey_status:t.status,update_type:"correction",update_text:"",published_at:R(e.recordedAt)===void 0?"":e.recordedAt,source_host:"",source_url:""}};if(!u(e)||e.op!=="upsert"){n.push({code:"item_omitted",slug:t.slug,detail:"A change had no supported ledger operation."});return}let o=Array.isArray(e.evidence)?e.evidence.find(l=>u(l)&&W(l.url)):void 0,r=u(e.facts)?e.facts:{},d=typeof r.eventType=="string"?r.eventType:typeof e.type=="string"&&e.type.startsWith("build.")?e.type.slice(6).toUpperCase():void 0,a=X({id:e.id,at:e.occurredAt??e.detectedAt??e.recordedAt,recordedAt:e.recordedAt,title:e.summary,eventType:d,source:u(o)?o.url:void 0},t,n);return a&&(a.key=`${t.slug}|${String(e.id)}|${String(e.revision)}|upsert`),a}async function de(e,t,n,o){let r=[],d=[],a={},l={},g=!0,i=e.token.toLowerCase(),E={launch_info:null,addresses:null};for(let[_,f,s]of[["launch_info","pons_launch_info",{token:e.token}],["addresses","pons_holders",{token:e.token,limit:1}]])try{let c=await t.oak(f,s);if(_==="addresses"){let C=H(c,e.token);E.addresses=C?.addresses??null,C||r.push({code:"oak_unavailable",detail:"Address figures were not read for this token.",token:i})}else E.launch_info=c}catch{r.push({code:"oak_unavailable",detail:`${f} could not be read for this token; it is unknown, not empty.`,token:i})}let k=await K(t,e);if(k.status==="unavailable")return g=!1,r.push({code:"unavailable",detail:"HEY's scan for this token could not be read.",slug:e.projectSlug,token:i}),o[i]&&(a[i]=o[i]),{key:i,facts:E,coverage:r,candidates:d,nextCursors:a,after:l,complete:g};if(k.status==="untied")return r.push({code:"tie_not_verified",detail:k.detail,slug:e.projectSlug,token:i,...k.statusLine?{statusLine:k.statusLine,statusNote:"show exactly"}:{}}),{key:i,facts:E,coverage:r,candidates:d,nextCursors:a,after:l,complete:g};let y={slug:e.projectSlug,name:k.name,status:k.line,reference:n},h=o[i]??e.after??"c1.0",p=new Set([h]);for(let _=0;;_++){if(_>=B){g=!1,a[i]=h;break}let f;try{f=ae(await t.hey("listChanges",{project:e.projectSlug,after:h,limit:M}),e.projectSlug,h)}catch{g=!1,r.push({code:"unavailable",detail:"This project's change ledger could not be read.",slug:e.projectSlug,token:i}),a[i]=h;break}if(p.has(f.next)&&(f.more||f.items.length>0)){g=!1,r.push({code:"bad_pagination",detail:"HEY repeated a continuation cursor.",slug:e.projectSlug,token:i}),a[i]=h;break}for(let s of f.items){let c=ce(s,y,r);c&&d.push(c)}if(!f.more){l[i]=f.next;break}p.add(f.next),h=f.next}return{key:i,facts:E,coverage:r,candidates:d,nextCursors:a,after:l,complete:g}}async function ue(e,t,n){let o=se(e.entries),r=R(e.until);r===void 0&&b("until must be a UTC time such as 2026-11-02T12:00:00.000Z.");let d=oe(e.cursors),a=Object.keys(d).length>0,l=[],g={},i=[],E=new Set,k={},y={},h=!0,p=o.filter(c=>!a||Object.hasOwn(d,c.token.toLowerCase())),_=p.slice(0,x),f=p.slice(x);f.length&&(h=!1,l.push({code:"follow_limit",detail:`At most ${x} followed tokens are read at once; ${f.length} remain.`})),o.length||l.push({code:"no_follows",detail:"The follow list is empty. An empty feed proves nothing."});for(let c=0;c<_.length;c+=$){let C=await Promise.all(_.slice(c,c+$).map(m=>de(m,t,Math.max(r,n()),d)));for(let m of C){g[m.key]=m.facts,l.push(...m.coverage),Object.assign(k,m.nextCursors),Object.assign(y,m.after),m.complete||(h=!1);for(let j of m.candidates)E.has(j.key)||(E.add(j.key),i.push(j))}}let s={};return Object.keys(k).length&&(s.cursors=k),f.length&&(s.remainingTokens=f.map(c=>c.token)),{mode:"updates",items:Z(i),oak:g,coverage:l,complete:h,after:y,continuation:Object.keys(s).length?s:null,checkedThrough:e.until}}async function _e(e,t,n={}){let o=ne(t);return u(e)&&e.mode==="browse"?ie(e,o,n.now??Date.now):u(e)&&e.mode==="updates"?ue(e,o,n.now??Date.now):b("Choose browse or updates.")}export{Ee as UPDATE_TYPES,_e as readBuilderFeed};
@@ -1 +1 @@
1
- import{c as D,d as P,e as O,f as J}from"../../../chunks/3DNJTJ2X.js";import{a as x}from"../../../chunks/TWR7BF72.js";import"../../../chunks/TMVO2DAK.js";import{a as F}from"../../../chunks/WNWRF4HE.js";import{b as C}from"../../../chunks/GQ3XZFRL.js";import{a as K}from"../../../chunks/HOEQVPY7.js";import{f as B}from"../../../chunks/OEZ7FCLF.js";import{b as N}from"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import{a as U}from"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import{b as R,e as o,g as L}from"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5RXALTDT.js";import{a as w}from"../../../chunks/FWD4L3CJ.js";import{a as d,e as q}from"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";var I="https://heyresearch.xyz",z=6e4,Q=120,Y=/^[a-z0-9][a-z0-9-]{0,79}$/,G=`${C} HEY Research Lab records public activity. These records are not investment advice, a buy or sell signal, or a safety verdict. Null means not measured.`,X=`${C} Keyed research, not advice. Preserve per-item found/error states and input order. The server key is not returned. Private responses are not cached.`,Z=`${C} Stateless receipt validation. HEY stores nothing and does not endorse the conclusion. Oak does not cache this receipt.`,V=new WeakMap;function g(e){return typeof e=="string"&&e.trim().length>0}function A(e){return g(e)&&Number.isFinite(Date.parse(e))}function S(e){return e===null||typeof e=="number"&&Number.isSafeInteger(e)&&e>=0}function $(e){if(!g(e))return!1;try{let r=new URL(e);return r.origin===I&&!r.username&&!r.password}catch{return!1}}function v(){throw new d("HEY returned an unexpected response. Please try again.")}function M(e,r){if((e.schema!=="hey.agent-intelligence-response"||e.schemaVersion!=="1"||e.capability!==r||e.status!=="ok"||!o(e.chain)||e.chain.chainId!==w||!o(e.data)||!o(e.links)||!$(e.links.page)||!o(e.citation)||!g(e.citation.text)||!A(e.citation.asOf)||!A(e.asOf))&&v(),r==="research_project"){(!o(e.subject)||!o(e.subject.project)||!g(e.subject.project.slug)||!o(e.data.builderState)||!g(e.data.builderState.activityStatus)||typeof e.data.builderState.activityMeasured!="boolean"||!S(e.data.builderState.meaningfulEvents30d))&&v();let t=e.subject.project.token;t!=null&&(!o(t)||t.chainId!==w||typeof t.address!="string"||!R.test(t.address))&&v()}else r==="chain_brief"&&(!o(e.data.window)||!A(e.data.window.from)||!A(e.data.window.to)||!o(e.data.shipped)||!S(e.data.shipped.ships)||!S(e.data.shipped.projects))&&v()}function ee(e,r){(e.chain_id!==w||typeof e.contract_address!="string"||e.contract_address.toLowerCase()!==r||!$(e.project_link)||!g(e.hey_status_label)||!g(e.token_verification)||typeof e.activity_applies_to_token!="boolean"||typeof e.activity_measured!="boolean"||!S(e.meaningful_ships_30d)||!A(e.as_of)||!g(e.disclaimer)||e.token_verification==="MISMATCH"&&e.activity_applies_to_token!==!1)&&v()}function te(e){(e.chainId!==w||!Array.isArray(e.days)||e.days.length===0||!e.days.every(r=>o(r)&&typeof r.day=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(r.day)&&S(r.ships)&&S(r.transactions)&&(r.chainObservedAt===null||A(r.chainObservedAt))))&&v()}function ne(e,r){let t=n=>{throw new d(`HEY scan_cards returned an unexpected ${n}. Please try again.`)};(!Array.isArray(e.items)||e.items.length!==r.length)&&t("items"),e.requested!==r.length&&t("requested count"),(typeof e.found_count!="number"||!Number.isSafeInteger(e.found_count)||e.found_count<0)&&t("found_count"),g(e.disclaimer)||t("disclaimer");for(let[n,i]of e.items.entries()){(!o(i)||i.input!==r[n])&&t(`items[${n}].input`);let s=i;typeof s.found!="boolean"&&t(`items[${n}].found`),s.chainId!==w&&t(`items[${n}].chainId`),(typeof s.contractAddress!="string"||!L(s.contractAddress,r[n]))&&t(`items[${n}].contractAddress`),g(s.disclaimer)||t(`items[${n}].disclaimer`),s.found&&(!o(s.project)||!o(s.activity)||!$(s.project_link)||!g(s.status)||!g(s.status_label)||!g(s.status_help)||!g(s.research_level)||typeof s.verified_builder!="boolean"||typeof s.activity_measured!="boolean"||!["VERIFIED","UNVERIFIED","MISMATCH"].includes(String(s.token_verification))||typeof s.activity_applies_to_token!="boolean"||s.token_verification==="MISMATCH"&&s.activity_applies_to_token!==!1||!["measured","no_source","not_researched"].includes(String(s.coverage)))&&t(`items[${n}] scan card`)}}var E=class extends d{constructor(t,n,i){super(i);this.status=t;this.code=n}status;code};function T(e,r,t=""){let n=o(r)?r.error:void 0,i=o(n)?n.code:n;if(e===400&&i==="ambiguous"){let f=(o(n)&&Array.isArray(n.candidates)?n.candidates:[]).flatMap(u=>o(u)&&typeof u.slug=="string"&&Y.test(u.slug)?[u.slug]:[]);return new E(e,i,`The HEY query is ambiguous. Choose a project slug${f.length?`: ${f.join(", ")}`:" or use a contract address"}.`)}if(e===404&&(i==="not_found"||i==="not_published")){if(t.startsWith("/api/evidence/"))return new E(e,i,"The cited HEY evidence receipt is unavailable. Check the exact typed id; missing evidence is not a finding.");let s=o(r)&&$(r.scan_url)?` See ${r.scan_url}.`:"";return new E(e,i,`HEY has not published a matching project. This describes its index, not the token.${s}`)}return new E(e,i,e>=400&&e<500&&e!==429?F(e,t).message:`HEY returned HTTP ${e}. Please try again.`)}async function re(e){let r=e.body?.getReader();if(!r)return"";let t=[],n=0;try{for(;;){let{done:f,value:u}=await r.read();if(f)break;if(n+=u.byteLength,n>2e6)throw await r.cancel(),new d("HEY response exceeds the two-megabyte read limit. Narrow the query.");t.push(u)}}finally{r.releaseLock()}let i=new Uint8Array(n),s=0;for(let f of t)i.set(f,s),s+=f.byteLength;return new TextDecoder().decode(i)}function se(e){let r=V.get(e.http);r||(r={cache:new Map,pending:new Map,requests:[],backoff:K()},V.set(e.http,r));let t=r;return async(n,i,s="json",f,u=!1,p=1)=>{let h=u?e.heyApiKey:void 0;if(u&&!h)throw new d("HEY bulk reads require an operator-configured server API key. Never provide a key in tool arguments.");if(h&&(typeof h!="string"||h.length>4096||[...h].some(a=>a.charCodeAt(0)<33||a.charCodeAt(0)>126)))throw new d("The server HEY API key configuration is invalid. Ask the Oak operator to correct it.");let c=f===void 0&&!u;if(t.backoff.blocked())throw new d(t.backoff.limited()?"HEY received too many requests. Please try again later.":"HEY Research Lab is temporarily unavailable. Please try again later.");let m=Date.now();for(let[a,k]of t.cache)k.expires<=m&&t.cache.delete(a);let _=c?t.cache.get(n):void 0;if(_)return i(_.body),structuredClone(_.body);let b=c?t.pending.get(n):void 0;if(b){let a=await b;return i(a),structuredClone(a)}if(t.requests=t.requests.filter(a=>a>m-z),t.requests.length+p>Q)throw new d("HEY received too many requests. Please try again later.");for(let a=0;a<p;a++)t.requests.push(m);let H=(async()=>{try{let a=await e.http(`${I}${n}`,{method:f===void 0?"GET":"POST",credentials:"omit",redirect:"error",headers:{accept:s==="csv"?"text/csv":"application/json","x-hey-integration":"oak/1.0.0","user-agent":"oak/1.0.0",...f===void 0?{}:{"content-type":"application/json"},...h?{authorization:`Bearer ${h}`}:{}},...f===void 0?{}:{body:JSON.stringify(f)},signal:AbortSignal.timeout(1e4)}).catch(y=>{if(y instanceof U)return y.response;throw t.backoff.defer(null),y});if(a.status===429)throw t.backoff.defer(a.headers.get("retry-after"),!0),await a.body?.cancel(),new d("HEY received too many requests. Please try again later.");if(a.status>=500)throw t.backoff.defer(a.headers.get("retry-after")),await a.body?.cancel(),T(a.status,null,n);let k;try{let y=await re(a);k=s==="csv"&&a.ok?{format:"csv",value:y}:JSON.parse(y)}catch(y){throw y instanceof d?y:a.ok?new d("HEY returned malformed JSON. Please try again."):T(a.status,null,n)}if(u&&[401,403].includes(a.status))throw new d("HEY refused keyed access. Ask the Oak operator to check the server key and allowance.");if(!a.ok)throw T(a.status,k,n);return o(k)||v(),i(k),c&&t.cache.set(n,{body:k,expires:Date.now()+z}),k}catch(a){throw a instanceof d?a:new d(q(a))}})();c&&t.pending.set(n,H);try{return structuredClone(await H)}finally{c&&t.pending.delete(n)}}}function ie(e,r){if(!o(e)||Object.keys(e).some(t=>t!==r))throw new d(`Provide only ${r}; HEY reads are fixed to Robinhood Chain 4663.`)}var ae=e=>{let r=se(e);return{tools:[{name:"heyresearch_research_project",inputSchema:{type:"object",additionalProperties:!1,required:["project"],properties:{...D,project:{type:"string",minLength:1,maxLength:200,description:"A project slug, project name, ticker search, or token contract address on chain 4663."}}},async execute(t){let n=P(t,["project"]);if(!g(t.project)||t.project.trim().length>200)throw new d("Provide a project slug, name, ticker, or token contract address.");let i=t.project.trim();if(/^0x/i.test(i)&&!R.test(i))throw new d("Provide a full token contract address on Robinhood Chain 4663.");let s=R.test(i)?"address":Y.test(i)?"project":"q",f=s==="address"?i.toLowerCase():i,u=l=>r(`/api/agent/research_project?${l}=${encodeURIComponent(f)}`,j=>M(j,"research_project")),p;try{p=await u(s)}catch(l){if(s!=="project"||!(l instanceof E)||l.status!==404||l.code!=="not_found")throw l;p=await u("q")}let h=p.subject.project,c=o(h.token)?h.token.address:void 0,m=s==="address"?f:c?.toLowerCase(),_=m?await r(`/api/v1/builder?chain=${w}&token=${m}&integration=oak/1.0.0`,l=>ee(l,m)):null,b=_?.activity_applies_to_token===!1;s==="address"&&c&&c.toLowerCase()!==m&&!b&&v();let H=p.links,a={chainId:w,research:p,builder:_,freshnessAssessment:x(p),attribution:{page:H.page,citation:p.citation,..._&&!b?{project_link:_.project_link}:{}},warnings:b?["This activity belongs to the project, not this token. The project names a different contract; do not link this token to the project."]:[],notAdvice:!0,disclaimer:G},k=p.data,y={subject:p.subject,answer:p.answer,asOf:p.asOf,boundaries:p.boundaries,data:Object.fromEntries(["identity","builderState","contractIdentity","marketContext","usageContext","unknowns"].filter(l=>Object.hasOwn(k,l)).map(l=>[l,k[l]]))},W=[...Object.entries(k).filter(([l])=>!Object.hasOwn(y.data,l)).map(([l,j])=>[`data.${l}`,j]),...Object.entries(p).filter(([l])=>!Object.hasOwn(y,l))].map(([l,j])=>({name:l,chars:JSON.stringify(j).length,...Array.isArray(j)?{items:j.length}:{}}));return O(a,n,[],{...a,research:{...y,omittedSections:W}})}},{name:"heyresearch_chain_activity",inputSchema:{type:"object",additionalProperties:!1,properties:{...D,days:{type:"integer",minimum:1,maximum:30,default:7,description:"UTC days of chain activity alongside the seven-day builder brief."}}},async execute(t){let n=P(t,["days"]),i=t.days===void 0?7:t.days;if(typeof i!="number"||!Number.isInteger(i)||i<1||i>30)throw new d("Provide a whole number of days from 1 to 30.");let s=await r("/api/agent/chain_brief",h=>M(h,"chain_brief")),f=await r(`/api/chain?days=${i}`,te),u={chainId:w,brief:s,activity:f,freshnessAssessment:x({brief:s,activity:f}),attribution:{page:s.links.page,citation:s.citation,activity:`${I}/api/chain?days=${i}`},notAdvice:!0,disclaimer:G},p=n.detail==="summary"&&!n.fields.length&&JSON.stringify(s).length>3e3?B(s,{maxChars:3e3,keep:["disclaimer"]}).shaped:s;return O(u,n,["brief"],{...u,brief:p})}},J(r,M),{name:"heyresearch_bulk",inputSchema:{type:"object",additionalProperties:!1,required:["operation","items"],properties:{operation:{type:"string",enum:["snapshots","tokens","scan_cards"],description:"Keyed GET reads. Requires an Oak operator-configured server key; one upstream allowance unit per input. Results are not cached."},items:{type:"array",minItems:1,maxItems:30,items:{type:"string"},description:"Up to 10 project slugs for snapshots; up to 30 token addresses for tokens or scan_cards. Repeated inputs and their order are preserved."}}},async execute(t){if(!o(t)||Object.keys(t).some(c=>!["operation","items"].includes(c)))throw new d("Provide only the bulk operation and items; configure credentials on the Oak server.");let n=t.operation;if(!["snapshots","tokens","scan_cards"].includes(String(n))||!Array.isArray(t.items)||!t.items.length||t.items.length>(n==="snapshots"?10:30)||t.items.some(c=>typeof c!="string"||!(n==="snapshots"?Y:R).test(c)))throw new d("Provide up to 10 valid project slugs or up to 30 full token addresses for the chosen bulk operation.");let i=t.items,s=new URLSearchParams(n==="snapshots"?{slugs:i.join(",")}:n==="tokens"?{addresses:i.join(",")}:{chain:String(w),tokens:i.join(",")}),f=`${n==="snapshots"?"/api/snapshots":n==="tokens"?`/api/token/${w}`:"/api/v1/scan"}?${s}`,u=await r(f,c=>{if(n==="scan_cards")return ne(c,i);(!Array.isArray(c.items)||c.items.length!==i.length||c.requested!==i.length||typeof c.found!="number"||!Number.isSafeInteger(c.found)||c.found<0||typeof c.disclaimer!="string"||c.items.some((m,_)=>!o(m)||m.input!==i[_]||typeof m.found!="boolean"||o(m.data)&&m.data.chainId!==void 0&&m.data.chainId!==w))&&v()},"json",void 0,!0,i.length),p=u.items.filter(c=>c.found===!0).length,h=n==="scan_cards"?u.found_count:u.found;return{consistency:{reportedFound:h,countedFound:p,consistent:h===p},warnings:h===p?[]:[`HEY reports ${n==="scan_cards"?"found_count":"found"}=${h}, but ${p} returned items have found=true. Provider data is preserved; check the per-item states.`],chainId:w,operation:n,data:u,attribution:{source:`${I}${f}`,provider:"HEY Research Lab"},notAdvice:!0,untrusted:!0,disclaimer:X}}},{name:"heyresearch_validate_receipt",inputSchema:{type:"object",additionalProperties:!1,required:["receipt"],properties:{receipt:{type:"object",description:"AgentResearchReceipt v1. Sent to HEY for stateless validation; no reasoning trace, wallet credential or API key. Maximum 64 KiB."}}},async execute(t){if(ie(t,"receipt"),!o(t.receipt))throw new d("Provide an AgentResearchReceipt object.");let n=JSON.stringify(t.receipt);if(new TextEncoder().encode(n).length>65536)throw new d("The research receipt exceeds 64 KiB.");if(/"(?:private_key|secret_key|wallet_key|mnemonic|seed|seed_phrase|recovery_phrase)"\s*:/i.test(n))throw new d("Do not include wallet credentials in a research receipt.");let i=await r("/api/receipts/validate",s=>{(!Object.keys(s).length||s.error)&&v()},"json",t.receipt);return{chainId:w,data:i,attribution:{source:`${I}/api/receipts/validate`,provider:"HEY Research Lab"},notAdvice:!0,disclaimer:Z}}}]}},ke=e=>N("heyresearch",[ae(e)]);export{X as HEY_KEYED_DISCLAIMER,Z as HEY_RECEIPT_DISCLAIMER,G as HEY_RECORDS_DISCLAIMER,ke as createModule,ae as createModulePart};
1
+ import{c as D,d as P,e as O,f as J}from"../../../chunks/DMB64UIN.js";import{a as x}from"../../../chunks/TWR7BF72.js";import"../../../chunks/TMVO2DAK.js";import{a as F}from"../../../chunks/WNWRF4HE.js";import{b as C}from"../../../chunks/GQ3XZFRL.js";import{a as K}from"../../../chunks/HOEQVPY7.js";import{f as B}from"../../../chunks/OEZ7FCLF.js";import{b as N}from"../../../chunks/SPJCSEKP.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/43LI5NKJ.js";import{a as U}from"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/66F5ZH34.js";import{b as R,e as o,g as L}from"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5RXALTDT.js";import{b as w}from"../../../chunks/TI727O2H.js";import{a as d,e as q}from"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";var I="https://heyresearch.xyz",z=6e4,Q=120,Y=/^[a-z0-9][a-z0-9-]{0,79}$/,G=`${C} HEY Research Lab records public activity. These records are not investment advice, a buy or sell signal, or a safety verdict. Null means not measured.`,X=`${C} Keyed research, not advice. Preserve per-item found/error states and input order. The server key is not returned. Private responses are not cached.`,Z=`${C} Stateless receipt validation. HEY stores nothing and does not endorse the conclusion. Oak does not cache this receipt.`,V=new WeakMap;function g(e){return typeof e=="string"&&e.trim().length>0}function A(e){return g(e)&&Number.isFinite(Date.parse(e))}function S(e){return e===null||typeof e=="number"&&Number.isSafeInteger(e)&&e>=0}function $(e){if(!g(e))return!1;try{let r=new URL(e);return r.origin===I&&!r.username&&!r.password}catch{return!1}}function v(){throw new d("HEY returned an unexpected response. Please try again.")}function M(e,r){if((e.schema!=="hey.agent-intelligence-response"||e.schemaVersion!=="1"||e.capability!==r||e.status!=="ok"||!o(e.chain)||e.chain.chainId!==w||!o(e.data)||!o(e.links)||!$(e.links.page)||!o(e.citation)||!g(e.citation.text)||!A(e.citation.asOf)||!A(e.asOf))&&v(),r==="research_project"){(!o(e.subject)||!o(e.subject.project)||!g(e.subject.project.slug)||!o(e.data.builderState)||!g(e.data.builderState.activityStatus)||typeof e.data.builderState.activityMeasured!="boolean"||!S(e.data.builderState.meaningfulEvents30d))&&v();let t=e.subject.project.token;t!=null&&(!o(t)||t.chainId!==w||typeof t.address!="string"||!R.test(t.address))&&v()}else r==="chain_brief"&&(!o(e.data.window)||!A(e.data.window.from)||!A(e.data.window.to)||!o(e.data.shipped)||!S(e.data.shipped.ships)||!S(e.data.shipped.projects))&&v()}function ee(e,r){(e.chain_id!==w||typeof e.contract_address!="string"||e.contract_address.toLowerCase()!==r||!$(e.project_link)||!g(e.hey_status_label)||!g(e.token_verification)||typeof e.activity_applies_to_token!="boolean"||typeof e.activity_measured!="boolean"||!S(e.meaningful_ships_30d)||!A(e.as_of)||!g(e.disclaimer)||e.token_verification==="MISMATCH"&&e.activity_applies_to_token!==!1)&&v()}function te(e){(e.chainId!==w||!Array.isArray(e.days)||e.days.length===0||!e.days.every(r=>o(r)&&typeof r.day=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(r.day)&&S(r.ships)&&S(r.transactions)&&(r.chainObservedAt===null||A(r.chainObservedAt))))&&v()}function ne(e,r){let t=n=>{throw new d(`HEY scan_cards returned an unexpected ${n}. Please try again.`)};(!Array.isArray(e.items)||e.items.length!==r.length)&&t("items"),e.requested!==r.length&&t("requested count"),(typeof e.found_count!="number"||!Number.isSafeInteger(e.found_count)||e.found_count<0)&&t("found_count"),g(e.disclaimer)||t("disclaimer");for(let[n,i]of e.items.entries()){(!o(i)||i.input!==r[n])&&t(`items[${n}].input`);let s=i;typeof s.found!="boolean"&&t(`items[${n}].found`),s.chainId!==w&&t(`items[${n}].chainId`),(typeof s.contractAddress!="string"||!L(s.contractAddress,r[n]))&&t(`items[${n}].contractAddress`),g(s.disclaimer)||t(`items[${n}].disclaimer`),s.found&&(!o(s.project)||!o(s.activity)||!$(s.project_link)||!g(s.status)||!g(s.status_label)||!g(s.status_help)||!g(s.research_level)||typeof s.verified_builder!="boolean"||typeof s.activity_measured!="boolean"||!["VERIFIED","UNVERIFIED","MISMATCH"].includes(String(s.token_verification))||typeof s.activity_applies_to_token!="boolean"||s.token_verification==="MISMATCH"&&s.activity_applies_to_token!==!1||!["measured","no_source","not_researched"].includes(String(s.coverage)))&&t(`items[${n}] scan card`)}}var E=class extends d{constructor(t,n,i){super(i);this.status=t;this.code=n}status;code};function T(e,r,t=""){let n=o(r)?r.error:void 0,i=o(n)?n.code:n;if(e===400&&i==="ambiguous"){let f=(o(n)&&Array.isArray(n.candidates)?n.candidates:[]).flatMap(u=>o(u)&&typeof u.slug=="string"&&Y.test(u.slug)?[u.slug]:[]);return new E(e,i,`The HEY query is ambiguous. Choose a project slug${f.length?`: ${f.join(", ")}`:" or use a contract address"}.`)}if(e===404&&(i==="not_found"||i==="not_published")){if(t.startsWith("/api/evidence/"))return new E(e,i,"The cited HEY evidence receipt is unavailable. Check the exact typed id; missing evidence is not a finding.");let s=o(r)&&$(r.scan_url)?` See ${r.scan_url}.`:"";return new E(e,i,`HEY has not published a matching project. This describes its index, not the token.${s}`)}return new E(e,i,e>=400&&e<500&&e!==429?F(e,t).message:`HEY returned HTTP ${e}. Please try again.`)}async function re(e){let r=e.body?.getReader();if(!r)return"";let t=[],n=0;try{for(;;){let{done:f,value:u}=await r.read();if(f)break;if(n+=u.byteLength,n>2e6)throw await r.cancel(),new d("HEY response exceeds the two-megabyte read limit. Narrow the query.");t.push(u)}}finally{r.releaseLock()}let i=new Uint8Array(n),s=0;for(let f of t)i.set(f,s),s+=f.byteLength;return new TextDecoder().decode(i)}function se(e){let r=V.get(e.http);r||(r={cache:new Map,pending:new Map,requests:[],backoff:K()},V.set(e.http,r));let t=r;return async(n,i,s="json",f,u=!1,p=1)=>{let h=u?e.heyApiKey:void 0;if(u&&!h)throw new d("HEY bulk reads require an operator-configured server API key. Never provide a key in tool arguments.");if(h&&(typeof h!="string"||h.length>4096||[...h].some(a=>a.charCodeAt(0)<33||a.charCodeAt(0)>126)))throw new d("The server HEY API key configuration is invalid. Ask the Oak operator to correct it.");let c=f===void 0&&!u;if(t.backoff.blocked())throw new d(t.backoff.limited()?"HEY received too many requests. Please try again later.":"HEY Research Lab is temporarily unavailable. Please try again later.");let m=Date.now();for(let[a,k]of t.cache)k.expires<=m&&t.cache.delete(a);let _=c?t.cache.get(n):void 0;if(_)return i(_.body),structuredClone(_.body);let b=c?t.pending.get(n):void 0;if(b){let a=await b;return i(a),structuredClone(a)}if(t.requests=t.requests.filter(a=>a>m-z),t.requests.length+p>Q)throw new d("HEY received too many requests. Please try again later.");for(let a=0;a<p;a++)t.requests.push(m);let H=(async()=>{try{let a=await e.http(`${I}${n}`,{method:f===void 0?"GET":"POST",credentials:"omit",redirect:"error",headers:{accept:s==="csv"?"text/csv":"application/json","x-hey-integration":"oak/1.0.0","user-agent":"oak/1.0.0",...f===void 0?{}:{"content-type":"application/json"},...h?{authorization:`Bearer ${h}`}:{}},...f===void 0?{}:{body:JSON.stringify(f)},signal:AbortSignal.timeout(1e4)}).catch(y=>{if(y instanceof U)return y.response;throw t.backoff.defer(null),y});if(a.status===429)throw t.backoff.defer(a.headers.get("retry-after"),!0),await a.body?.cancel(),new d("HEY received too many requests. Please try again later.");if(a.status>=500)throw t.backoff.defer(a.headers.get("retry-after")),await a.body?.cancel(),T(a.status,null,n);let k;try{let y=await re(a);k=s==="csv"&&a.ok?{format:"csv",value:y}:JSON.parse(y)}catch(y){throw y instanceof d?y:a.ok?new d("HEY returned malformed JSON. Please try again."):T(a.status,null,n)}if(u&&[401,403].includes(a.status))throw new d("HEY refused keyed access. Ask the Oak operator to check the server key and allowance.");if(!a.ok)throw T(a.status,k,n);return o(k)||v(),i(k),c&&t.cache.set(n,{body:k,expires:Date.now()+z}),k}catch(a){throw a instanceof d?a:new d(q(a))}})();c&&t.pending.set(n,H);try{return structuredClone(await H)}finally{c&&t.pending.delete(n)}}}function ie(e,r){if(!o(e)||Object.keys(e).some(t=>t!==r))throw new d(`Provide only ${r}; HEY reads are fixed to Robinhood Chain 4663.`)}var ae=e=>{let r=se(e);return{tools:[{name:"heyresearch_research_project",inputSchema:{type:"object",additionalProperties:!1,required:["project"],properties:{...D,project:{type:"string",minLength:1,maxLength:200,description:"A project slug, project name, ticker search, or token contract address on chain 4663."}}},async execute(t){let n=P(t,["project"]);if(!g(t.project)||t.project.trim().length>200)throw new d("Provide a project slug, name, ticker, or token contract address.");let i=t.project.trim();if(/^0x/i.test(i)&&!R.test(i))throw new d("Provide a full token contract address on Robinhood Chain 4663.");let s=R.test(i)?"address":Y.test(i)?"project":"q",f=s==="address"?i.toLowerCase():i,u=l=>r(`/api/agent/research_project?${l}=${encodeURIComponent(f)}`,j=>M(j,"research_project")),p;try{p=await u(s)}catch(l){if(s!=="project"||!(l instanceof E)||l.status!==404||l.code!=="not_found")throw l;p=await u("q")}let h=p.subject.project,c=o(h.token)?h.token.address:void 0,m=s==="address"?f:c?.toLowerCase(),_=m?await r(`/api/v1/builder?chain=${w}&token=${m}&integration=oak/1.0.0`,l=>ee(l,m)):null,b=_?.activity_applies_to_token===!1;s==="address"&&c&&c.toLowerCase()!==m&&!b&&v();let H=p.links,a={chainId:w,research:p,builder:_,freshnessAssessment:x(p),attribution:{page:H.page,citation:p.citation,..._&&!b?{project_link:_.project_link}:{}},warnings:b?["This activity belongs to the project, not this token. The project names a different contract; do not link this token to the project."]:[],notAdvice:!0,disclaimer:G},k=p.data,y={subject:p.subject,answer:p.answer,asOf:p.asOf,boundaries:p.boundaries,data:Object.fromEntries(["identity","builderState","contractIdentity","marketContext","usageContext","unknowns"].filter(l=>Object.hasOwn(k,l)).map(l=>[l,k[l]]))},W=[...Object.entries(k).filter(([l])=>!Object.hasOwn(y.data,l)).map(([l,j])=>[`data.${l}`,j]),...Object.entries(p).filter(([l])=>!Object.hasOwn(y,l))].map(([l,j])=>({name:l,chars:JSON.stringify(j).length,...Array.isArray(j)?{items:j.length}:{}}));return O(a,n,[],{...a,research:{...y,omittedSections:W}})}},{name:"heyresearch_chain_activity",inputSchema:{type:"object",additionalProperties:!1,properties:{...D,days:{type:"integer",minimum:1,maximum:30,default:7,description:"UTC days of chain activity alongside the seven-day builder brief."}}},async execute(t){let n=P(t,["days"]),i=t.days===void 0?7:t.days;if(typeof i!="number"||!Number.isInteger(i)||i<1||i>30)throw new d("Provide a whole number of days from 1 to 30.");let s=await r("/api/agent/chain_brief",h=>M(h,"chain_brief")),f=await r(`/api/chain?days=${i}`,te),u={chainId:w,brief:s,activity:f,freshnessAssessment:x({brief:s,activity:f}),attribution:{page:s.links.page,citation:s.citation,activity:`${I}/api/chain?days=${i}`},notAdvice:!0,disclaimer:G},p=n.detail==="summary"&&!n.fields.length&&JSON.stringify(s).length>3e3?B(s,{maxChars:3e3,keep:["disclaimer"]}).shaped:s;return O(u,n,["brief"],{...u,brief:p})}},J(r,M),{name:"heyresearch_bulk",inputSchema:{type:"object",additionalProperties:!1,required:["operation","items"],properties:{operation:{type:"string",enum:["snapshots","tokens","scan_cards"],description:"Keyed GET reads. Requires an Oak operator-configured server key; one upstream allowance unit per input. Results are not cached."},items:{type:"array",minItems:1,maxItems:30,items:{type:"string"},description:"Up to 10 project slugs for snapshots; up to 30 token addresses for tokens or scan_cards. Repeated inputs and their order are preserved."}}},async execute(t){if(!o(t)||Object.keys(t).some(c=>!["operation","items"].includes(c)))throw new d("Provide only the bulk operation and items; configure credentials on the Oak server.");let n=t.operation;if(!["snapshots","tokens","scan_cards"].includes(String(n))||!Array.isArray(t.items)||!t.items.length||t.items.length>(n==="snapshots"?10:30)||t.items.some(c=>typeof c!="string"||!(n==="snapshots"?Y:R).test(c)))throw new d("Provide up to 10 valid project slugs or up to 30 full token addresses for the chosen bulk operation.");let i=t.items,s=new URLSearchParams(n==="snapshots"?{slugs:i.join(",")}:n==="tokens"?{addresses:i.join(",")}:{chain:String(w),tokens:i.join(",")}),f=`${n==="snapshots"?"/api/snapshots":n==="tokens"?`/api/token/${w}`:"/api/v1/scan"}?${s}`,u=await r(f,c=>{if(n==="scan_cards")return ne(c,i);(!Array.isArray(c.items)||c.items.length!==i.length||c.requested!==i.length||typeof c.found!="number"||!Number.isSafeInteger(c.found)||c.found<0||typeof c.disclaimer!="string"||c.items.some((m,_)=>!o(m)||m.input!==i[_]||typeof m.found!="boolean"||o(m.data)&&m.data.chainId!==void 0&&m.data.chainId!==w))&&v()},"json",void 0,!0,i.length),p=u.items.filter(c=>c.found===!0).length,h=n==="scan_cards"?u.found_count:u.found;return{consistency:{reportedFound:h,countedFound:p,consistent:h===p},warnings:h===p?[]:[`HEY reports ${n==="scan_cards"?"found_count":"found"}=${h}, but ${p} returned items have found=true. Provider data is preserved; check the per-item states.`],chainId:w,operation:n,data:u,attribution:{source:`${I}${f}`,provider:"HEY Research Lab"},notAdvice:!0,untrusted:!0,disclaimer:X}}},{name:"heyresearch_validate_receipt",inputSchema:{type:"object",additionalProperties:!1,required:["receipt"],properties:{receipt:{type:"object",description:"AgentResearchReceipt v1. Sent to HEY for stateless validation; no reasoning trace, wallet credential or API key. Maximum 64 KiB."}}},async execute(t){if(ie(t,"receipt"),!o(t.receipt))throw new d("Provide an AgentResearchReceipt object.");let n=JSON.stringify(t.receipt);if(new TextEncoder().encode(n).length>65536)throw new d("The research receipt exceeds 64 KiB.");if(/"(?:private_key|secret_key|wallet_key|mnemonic|seed|seed_phrase|recovery_phrase)"\s*:/i.test(n))throw new d("Do not include wallet credentials in a research receipt.");let i=await r("/api/receipts/validate",s=>{(!Object.keys(s).length||s.error)&&v()},"json",t.receipt);return{chainId:w,data:i,attribution:{source:`${I}/api/receipts/validate`,provider:"HEY Research Lab"},notAdvice:!0,disclaimer:Z}}}]}},ke=e=>N("heyresearch",[ae(e)]);export{X as HEY_KEYED_DISCLAIMER,Z as HEY_RECEIPT_DISCLAIMER,G as HEY_RECORDS_DISCLAIMER,ke as createModule,ae as createModulePart};
@@ -1 +1 @@
1
- import{a,b,c,d,e,f}from"../../../chunks/3DNJTJ2X.js";import"../../../chunks/TWR7BF72.js";import"../../../chunks/TMVO2DAK.js";import"../../../chunks/WNWRF4HE.js";import"../../../chunks/GQ3XZFRL.js";import"../../../chunks/HOEQVPY7.js";import"../../../chunks/OEZ7FCLF.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/FWD4L3CJ.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as HEY_PUBLIC_READ_DISCLAIMER,b as HEY_READ_DEFAULT,c as HEY_READ_PARAMS,d as heyReadArgs,f as publicReadTool,e as shapeHeyRead};
1
+ import{a,b,c,d,e,f}from"../../../chunks/DMB64UIN.js";import"../../../chunks/TWR7BF72.js";import"../../../chunks/TMVO2DAK.js";import"../../../chunks/WNWRF4HE.js";import"../../../chunks/GQ3XZFRL.js";import"../../../chunks/HOEQVPY7.js";import"../../../chunks/OEZ7FCLF.js";import"../../../chunks/SCG5HWMN.js";import"../../../chunks/5TUXSOMI.js";import"../../../chunks/NWNYJ26T.js";import"../../../chunks/IX3GZMTM.js";import"../../../chunks/5RXALTDT.js";import"../../../chunks/TI727O2H.js";import"../../../chunks/XSD5NL7J.js";import"../../../chunks/JXOEJPJ4.js";import"../../../chunks/63YRSLDK.js";export{a as HEY_PUBLIC_READ_DISCLAIMER,b as HEY_READ_DEFAULT,c as HEY_READ_PARAMS,d as heyReadArgs,f as publicReadTool,e as shapeHeyRead};