@wowok/agent-mcp 3.3.9 → 3.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/README.md +8 -0
  2. package/dist/chain-semantics/composition-truth.d.ts +102 -0
  3. package/dist/chain-semantics/composition-truth.js +1 -0
  4. package/dist/chain-semantics/eval-order.js +1 -1
  5. package/dist/chain-semantics/field-capability.js +1 -1
  6. package/dist/chain-semantics/freeze-map.js +1 -1
  7. package/dist/chain-semantics/fund-flow.js +1 -1
  8. package/dist/chain-semantics/guard-verbs.js +1 -1
  9. package/dist/chain-semantics/index.d.ts +1 -0
  10. package/dist/chain-semantics/index.js +1 -1
  11. package/dist/chain-semantics/object-graph.js +1 -1
  12. package/dist/composition/audit.js +1 -1
  13. package/dist/composition/blueprint-view.d.ts +3 -3
  14. package/dist/composition/blueprint-view.js +1 -1
  15. package/dist/composition/compile.d.ts +26 -4
  16. package/dist/composition/compile.js +1 -1
  17. package/dist/composition/emit-phases.d.ts +206 -0
  18. package/dist/composition/emit-phases.js +1 -0
  19. package/dist/composition/generate.d.ts +40 -0
  20. package/dist/composition/generate.js +1 -0
  21. package/dist/composition/guard-fill.d.ts +44 -0
  22. package/dist/composition/guard-fill.js +1 -0
  23. package/dist/composition/inflight.d.ts +26 -2
  24. package/dist/composition/inflight.js +1 -1
  25. package/dist/composition/input-normalize.d.ts +15 -0
  26. package/dist/composition/input-normalize.js +1 -0
  27. package/dist/composition/materialize.d.ts +22 -13
  28. package/dist/composition/materialize.js +1 -1
  29. package/dist/composition/mode-gates.d.ts +35 -0
  30. package/dist/composition/mode-gates.js +1 -0
  31. package/dist/composition/param-disclosure.d.ts +61 -0
  32. package/dist/composition/param-disclosure.js +1 -0
  33. package/dist/composition/plan-retry-ledger.d.ts +21 -0
  34. package/dist/composition/plan-retry-ledger.js +1 -0
  35. package/dist/composition/plan.d.ts +17 -2
  36. package/dist/composition/plan.js +1 -1
  37. package/dist/composition/product-card.d.ts +94 -0
  38. package/dist/composition/product-card.js +1 -0
  39. package/dist/composition/supply-chain-emit.d.ts +46 -0
  40. package/dist/composition/supply-chain-emit.js +1 -0
  41. package/dist/config/config-audit.spec.js +1 -1
  42. package/dist/config/config-warnings.d.ts +2 -0
  43. package/dist/config/config-warnings.js +1 -0
  44. package/dist/config/exposure.d.ts +2 -2
  45. package/dist/config/judgment.d.ts +31 -5
  46. package/dist/config/judgment.js +1 -1
  47. package/dist/config/judgment.spec.js +1 -1
  48. package/dist/config/match-policy-file.d.ts +34 -0
  49. package/dist/config/match-policy-file.js +1 -0
  50. package/dist/config/match-policy-file.spec.d.ts +1 -0
  51. package/dist/config/match-policy-file.spec.js +1 -0
  52. package/dist/config/rule-engine.d.ts +5 -5
  53. package/dist/config/rule-engine.js +1 -1
  54. package/dist/config/runtime.d.ts +0 -1
  55. package/dist/config/runtime.js +1 -1
  56. package/dist/config/severity.d.ts +0 -2
  57. package/dist/config/severity.js +1 -1
  58. package/dist/config/store-policy.spec.js +1 -1
  59. package/dist/config/template-params.d.ts +42 -0
  60. package/dist/config/template-params.js +1 -0
  61. package/dist/config/template-params.spec.d.ts +1 -0
  62. package/dist/config/template-params.spec.js +1 -0
  63. package/dist/customer/account-events.js +1 -1
  64. package/dist/data/api/api.spec.js +1 -1
  65. package/dist/data/api/cli.js +1 -1
  66. package/dist/data/api/server.d.ts +1 -0
  67. package/dist/data/api/server.js +1 -1
  68. package/dist/data/projection/store.d.ts +3 -1
  69. package/dist/data/projection/store.js +1 -1
  70. package/dist/data/projection/types.d.ts +32 -0
  71. package/dist/data/sync/cdc.d.ts +1 -2
  72. package/dist/data/sync/cdc.js +1 -1
  73. package/dist/data/sync/cdc.spec.js +1 -1
  74. package/dist/data/sync/store.d.ts +5 -0
  75. package/dist/data/sync/store.js +1 -1
  76. package/dist/data/sync/types.d.ts +2 -0
  77. package/dist/evaluation/acceptance.d.ts +8 -0
  78. package/dist/evaluation/acceptance.js +1 -1
  79. package/dist/evaluation/builtins/demand-match.js +1 -1
  80. package/dist/evaluation/builtins/graph-service.spec.js +1 -1
  81. package/dist/evaluation/capability.d.ts +2 -0
  82. package/dist/evaluation/category-match-rules.d.ts +0 -1
  83. package/dist/evaluation/category-match-rules.js +1 -1
  84. package/dist/evaluation/composer.d.ts +25 -0
  85. package/dist/evaluation/composer.js +1 -1
  86. package/dist/evaluation/engine.js +1 -1
  87. package/dist/evaluation/extract.d.ts +7 -0
  88. package/dist/evaluation/extract.js +1 -1
  89. package/dist/evaluation/game-strategy.d.ts +0 -3
  90. package/dist/evaluation/game-strategy.js +1 -1
  91. package/dist/evaluation/guard-scan.js +1 -1
  92. package/dist/evaluation/match-operation.d.ts +9 -0
  93. package/dist/evaluation/match-operation.js +1 -1
  94. package/dist/evaluation/match-policy-resolver.d.ts +9 -0
  95. package/dist/evaluation/match-policy-resolver.js +1 -0
  96. package/dist/evaluation/match-policy.d.ts +3 -1
  97. package/dist/evaluation/match-policy.js +1 -1
  98. package/dist/evaluation/region.d.ts +0 -6
  99. package/dist/evaluation/region.js +1 -1
  100. package/dist/evaluation/standards.d.ts +2 -1
  101. package/dist/evaluation/standards.js +1 -1
  102. package/dist/evaluation/structured-lines.d.ts +8 -0
  103. package/dist/evaluation/structured-lines.js +1 -0
  104. package/dist/evaluation/types.d.ts +6 -0
  105. package/dist/experience/realtime-feedback.js +1 -1
  106. package/dist/extensions/capability-manifest.d.ts +1 -0
  107. package/dist/extensions/capability-manifest.js +1 -1
  108. package/dist/extensions/capability.d.ts +91 -0
  109. package/dist/extensions/capability.js +1 -0
  110. package/dist/extensions/industry-audit.spec.js +1 -1
  111. package/dist/extensions/industry-pack.d.ts +13 -0
  112. package/dist/extensions/industry-pack.js +1 -1
  113. package/dist/extensions/modes.js +1 -1
  114. package/dist/extensions/registry.d.ts +0 -2
  115. package/dist/extensions/registry.js +1 -1
  116. package/dist/goal/GoalEngine.js +1 -1
  117. package/dist/graph/onchain/analyze.js +1 -1
  118. package/dist/graph/onchain/expand.js +1 -1
  119. package/dist/graph/onchain/exposure.js +1 -1
  120. package/dist/graph/onchain/facts.js +1 -1
  121. package/dist/graph/onchain/order-status.d.ts +0 -1
  122. package/dist/graph/onchain/order-status.js +1 -1
  123. package/dist/harness/recover.js +1 -1
  124. package/dist/harness/verify.d.ts +0 -3
  125. package/dist/harness/verify.js +1 -1
  126. package/dist/index.js +1 -1
  127. package/dist/intent/types.d.ts +0 -1
  128. package/dist/intent/types.js +1 -1
  129. package/dist/keeper/detectors.js +1 -1
  130. package/dist/keeper/types.d.ts +0 -1
  131. package/dist/keeper/types.js +1 -1
  132. package/dist/knowledge/allocation-risk.d.ts +1 -0
  133. package/dist/knowledge/allocation-risk.js +1 -1
  134. package/dist/knowledge/allocation-templates.js +1 -1
  135. package/dist/knowledge/allocator-rail-verifier.d.ts +6 -1
  136. package/dist/knowledge/allocator-rail-verifier.js +1 -1
  137. package/dist/knowledge/arb-fund-facts.d.ts +1 -0
  138. package/dist/knowledge/arb-fund-facts.js +1 -1
  139. package/dist/knowledge/arbitration-ledger.js +1 -1
  140. package/dist/knowledge/arbitration-puzzle.js +1 -1
  141. package/dist/knowledge/arbitration-risk.d.ts +1 -0
  142. package/dist/knowledge/arbitration-risk.js +1 -1
  143. package/dist/knowledge/audit-rules.d.ts +2 -2
  144. package/dist/knowledge/audit-rules.js +1 -1
  145. package/dist/knowledge/baselines/judgment-baselines.json +21 -2
  146. package/dist/knowledge/baselines/rules/allocation.json +6 -6
  147. package/dist/knowledge/baselines/rules/arb.json +2 -2
  148. package/dist/knowledge/baselines/rules/guard.json +11 -11
  149. package/dist/knowledge/baselines/rules/oracle.json +120 -0
  150. package/dist/knowledge/baselines/rules/order.json +1 -1
  151. package/dist/knowledge/baselines/rules/plan.json +385 -18
  152. package/dist/knowledge/baselines/rules/progress.json +20 -2
  153. package/dist/knowledge/baselines/semantic-facts.js +1 -1
  154. package/dist/knowledge/builtin-templates.d.ts +25 -1
  155. package/dist/knowledge/builtin-templates.js +1 -1
  156. package/dist/knowledge/catalog-facts.d.ts +4 -0
  157. package/dist/knowledge/catalog-facts.js +1 -0
  158. package/dist/knowledge/commission-landing.js +1 -1
  159. package/dist/knowledge/component-schema.d.ts +64 -0
  160. package/dist/knowledge/component-schema.js +1 -0
  161. package/dist/knowledge/contact-templates.d.ts +0 -1
  162. package/dist/knowledge/contact-templates.js +1 -1
  163. package/dist/knowledge/dynamic-pricing.js +1 -1
  164. package/dist/knowledge/entity-recipient-guard.js +1 -1
  165. package/dist/knowledge/event-semantics.js +1 -1
  166. package/dist/knowledge/fee-param-bindings.d.ts +26 -0
  167. package/dist/knowledge/fee-param-bindings.js +1 -0
  168. package/dist/knowledge/fund-layer.d.ts +1 -0
  169. package/dist/knowledge/fund-layer.js +1 -1
  170. package/dist/knowledge/game-scenarios.js +1 -1
  171. package/dist/knowledge/getting-started.d.ts +2 -2
  172. package/dist/knowledge/getting-started.js +1 -1
  173. package/dist/knowledge/guard-anchor-reach.js +1 -1
  174. package/dist/knowledge/guard-binding-table.d.ts +52 -0
  175. package/dist/knowledge/guard-binding-table.js +1 -0
  176. package/dist/knowledge/guard-binding-verifier.d.ts +30 -0
  177. package/dist/knowledge/guard-binding-verifier.js +1 -0
  178. package/dist/knowledge/guard-bindings.js +1 -1
  179. package/dist/knowledge/guard-blueprint.d.ts +68 -0
  180. package/dist/knowledge/guard-blueprint.js +1 -0
  181. package/dist/knowledge/guard-design-patterns.d.ts +1 -1
  182. package/dist/knowledge/guard-design-patterns.js +1 -1
  183. package/dist/knowledge/guard-field-cognition.js +1 -1
  184. package/dist/knowledge/guard-host-context.d.ts +24 -0
  185. package/dist/knowledge/guard-host-context.js +1 -0
  186. package/dist/knowledge/guard-ledger.js +1 -1
  187. package/dist/knowledge/guard-lint.d.ts +1 -0
  188. package/dist/knowledge/guard-lint.js +1 -1
  189. package/dist/knowledge/guard-node-gates.d.ts +3 -0
  190. package/dist/knowledge/guard-node-gates.js +1 -1
  191. package/dist/knowledge/guard-puzzle.js +1 -1
  192. package/dist/knowledge/guard-render.js +1 -1
  193. package/dist/knowledge/guard-risk.js +1 -1
  194. package/dist/knowledge/guard-submission-prompt.d.ts +11 -0
  195. package/dist/knowledge/guard-submission-prompt.js +1 -1
  196. package/dist/knowledge/guard-templates.d.ts +1 -1
  197. package/dist/knowledge/guard-templates.js +1 -1
  198. package/dist/knowledge/guard-translation.js +1 -1
  199. package/dist/knowledge/index.d.ts +1 -1
  200. package/dist/knowledge/index.js +1 -1
  201. package/dist/knowledge/industry-generalizer.d.ts +6 -1
  202. package/dist/knowledge/industry-generalizer.js +1 -1
  203. package/dist/knowledge/industry-registry.js +1 -1
  204. package/dist/knowledge/industry-strategy.js +1 -1
  205. package/dist/knowledge/jsonrpc-enum.d.ts +52 -3
  206. package/dist/knowledge/jsonrpc-enum.js +1 -1
  207. package/dist/knowledge/knob-docs.d.ts +5 -0
  208. package/dist/knowledge/knob-docs.js +1 -0
  209. package/dist/knowledge/machine-templates.js +1 -1
  210. package/dist/knowledge/machine-topology.js +1 -1
  211. package/dist/knowledge/machine-translation.js +1 -1
  212. package/dist/knowledge/object-dependency.d.ts +31 -0
  213. package/dist/knowledge/object-dependency.js +1 -0
  214. package/dist/knowledge/onchain-constants.d.ts +4 -0
  215. package/dist/knowledge/onchain-constants.js +1 -1
  216. package/dist/knowledge/order-ledger.js +1 -1
  217. package/dist/knowledge/param-schema.d.ts +93 -0
  218. package/dist/knowledge/param-schema.js +1 -0
  219. package/dist/knowledge/param-tiers.d.ts +25 -0
  220. package/dist/knowledge/param-tiers.js +1 -0
  221. package/dist/knowledge/passport-ledger.d.ts +1 -1
  222. package/dist/knowledge/passport-ledger.js +1 -1
  223. package/dist/knowledge/path-oracle/coverage.d.ts +16 -0
  224. package/dist/knowledge/path-oracle/coverage.js +1 -0
  225. package/dist/knowledge/path-oracle/index.d.ts +5 -0
  226. package/dist/knowledge/path-oracle/index.js +1 -0
  227. package/dist/knowledge/path-oracle/products/food-delivery.d.ts +2 -0
  228. package/dist/knowledge/path-oracle/products/food-delivery.js +1 -0
  229. package/dist/knowledge/path-oracle/schema.d.ts +188 -0
  230. package/dist/knowledge/path-oracle/schema.js +1 -0
  231. package/dist/knowledge/pattern-resolutions.d.ts +108 -0
  232. package/dist/knowledge/pattern-resolutions.js +1 -0
  233. package/dist/knowledge/progress-ledger.js +1 -1
  234. package/dist/knowledge/progress-risk.js +1 -1
  235. package/dist/knowledge/projection.spec.js +1 -1
  236. package/dist/knowledge/protocol-facts.js +1 -1
  237. package/dist/knowledge/requirement-families.d.ts +13 -0
  238. package/dist/knowledge/requirement-families.js +1 -0
  239. package/dist/knowledge/reward-ledger.js +1 -1
  240. package/dist/knowledge/safety-rules.js +1 -1
  241. package/dist/knowledge/scenario-modes.d.ts +2 -0
  242. package/dist/knowledge/scenario-modes.js +1 -1
  243. package/dist/knowledge/scenario-topology.js +1 -1
  244. package/dist/knowledge/semantic-ir.d.ts +4 -0
  245. package/dist/knowledge/semantic-ir.js +1 -1
  246. package/dist/knowledge/service-allocation-semantics.js +1 -1
  247. package/dist/knowledge/service-ledger.d.ts +1 -1
  248. package/dist/knowledge/service-ledger.js +1 -1
  249. package/dist/knowledge/service-templates.js +1 -1
  250. package/dist/knowledge/sku-name-gate.d.ts +17 -0
  251. package/dist/knowledge/sku-name-gate.js +1 -0
  252. package/dist/knowledge/strategy-manuals.d.ts +1 -1
  253. package/dist/knowledge/strategy-manuals.js +1 -1
  254. package/dist/knowledge/supply-chain.d.ts +9 -0
  255. package/dist/knowledge/supply-chain.js +1 -1
  256. package/dist/knowledge/template-loader.d.ts +114 -6
  257. package/dist/knowledge/template-loader.js +1 -1
  258. package/dist/knowledge/template-nav.d.ts +9 -0
  259. package/dist/knowledge/template-nav.js +1 -0
  260. package/dist/knowledge/template-prose.d.ts +1 -1
  261. package/dist/knowledge/template-registry.js +1 -1
  262. package/dist/knowledge/template-scanner.d.ts +95 -0
  263. package/dist/knowledge/template-scanner.js +1 -1
  264. package/dist/knowledge/template-test-profiles.d.ts +17 -0
  265. package/dist/knowledge/template-test-profiles.js +1 -0
  266. package/dist/knowledge/template-validation.d.ts +1 -0
  267. package/dist/knowledge/template-validation.js +1 -1
  268. package/dist/knowledge/tools-reference.js +1 -1
  269. package/dist/knowledge/treasury-templates.js +1 -1
  270. package/dist/knowledge/workflow-guidance.d.ts +5 -0
  271. package/dist/knowledge/workflow-guidance.js +1 -1
  272. package/dist/monitor/MonitorLoop.js +1 -1
  273. package/dist/participation/radar-core.js +1 -1
  274. package/dist/participation/time-window.d.ts +37 -0
  275. package/dist/participation/time-window.js +1 -0
  276. package/dist/persona/address-format.d.ts +0 -1
  277. package/dist/persona/address-format.js +1 -1
  278. package/dist/persona/bridge.js +1 -1
  279. package/dist/persona/index.d.ts +0 -2
  280. package/dist/persona/index.js +1 -1
  281. package/dist/persona/model.js +1 -1
  282. package/dist/persona/persona-audit.spec.js +1 -1
  283. package/dist/persona/types.d.ts +6 -0
  284. package/dist/playbooks/service-build/business-puzzle.js +1 -1
  285. package/dist/playbooks/service-build/game-theory.d.ts +2 -2
  286. package/dist/playbooks/service-build/intent-analyzer.js +1 -1
  287. package/dist/playbooks/service-build/machine-panorama.d.ts +1 -0
  288. package/dist/playbooks/service-build/machine-panorama.js +1 -1
  289. package/dist/playbooks/service-build/merchant-guide.d.ts +52 -22
  290. package/dist/playbooks/service-build/merchant-guide.js +1 -1
  291. package/dist/playbooks/service-build/migration-planner.d.ts +2 -0
  292. package/dist/playbooks/service-build/migration-planner.js +1 -1
  293. package/dist/playbooks/service-build/mode-actions.js +1 -1
  294. package/dist/playbooks/service-build/object-panorama.d.ts +8 -0
  295. package/dist/playbooks/service-build/object-panorama.js +1 -1
  296. package/dist/playbooks/service-build/participation-radar.d.ts +1 -0
  297. package/dist/playbooks/service-build/participation-radar.js +1 -1
  298. package/dist/playbooks/service-build/relationship-profile.js +1 -1
  299. package/dist/playbooks/service-build/reverse-mapping.d.ts +6 -0
  300. package/dist/playbooks/service-build/reverse-mapping.js +1 -1
  301. package/dist/playbooks/service-build/service-panorama.d.ts +2 -0
  302. package/dist/playbooks/service-build/service-panorama.js +1 -1
  303. package/dist/playbooks/service-build/service-quote.js +1 -1
  304. package/dist/playbooks/service-build/service-quote.spec.js +1 -1
  305. package/dist/playbooks/service-build/workflow-design-assessment.d.ts +10 -1
  306. package/dist/playbooks/service-build/workflow-design-assessment.js +1 -1
  307. package/dist/relationship/registry.js +1 -1
  308. package/dist/review/index.js +1 -1
  309. package/dist/review/repository.js +1 -1
  310. package/dist/runtime/instance-registry.d.ts +7 -1
  311. package/dist/runtime/instance-registry.js +1 -1
  312. package/dist/safety/confirm-gate.js +1 -1
  313. package/dist/schema/benchmark-migration/index.d.ts +106 -0
  314. package/dist/schema/benchmark-migration/index.js +1 -1
  315. package/dist/schema/call/allocation.d.ts +15 -6
  316. package/dist/schema/call/allocation.js +1 -1
  317. package/dist/schema/call/arbitration.js +1 -1
  318. package/dist/schema/call/base.d.ts +264 -0
  319. package/dist/schema/call/base.js +1 -1
  320. package/dist/schema/call/bridge.d.ts +34 -6
  321. package/dist/schema/call/demand.d.ts +15 -6
  322. package/dist/schema/call/demand.js +1 -1
  323. package/dist/schema/call/error-codes.d.ts +1 -1
  324. package/dist/schema/call/error-codes.js +1 -1
  325. package/dist/schema/call/guard.d.ts +8 -8
  326. package/dist/schema/call/guard.js +1 -1
  327. package/dist/schema/call/handler.d.ts +3 -0
  328. package/dist/schema/call/handler.js +1 -1
  329. package/dist/schema/call/machine.d.ts +32 -8
  330. package/dist/schema/call/machine.js +1 -1
  331. package/dist/schema/call/order.d.ts +26 -8
  332. package/dist/schema/call/order.js +1 -1
  333. package/dist/schema/call/payment.d.ts +20 -8
  334. package/dist/schema/call/payment.js +1 -1
  335. package/dist/schema/call/permission-handler.js +1 -1
  336. package/dist/schema/call/permission.d.ts +330 -114
  337. package/dist/schema/call/permission.js +1 -1
  338. package/dist/schema/call/personal.d.ts +10 -4
  339. package/dist/schema/call/personal.js +1 -1
  340. package/dist/schema/call/progress.d.ts +16 -4
  341. package/dist/schema/call/reward.d.ts +10 -4
  342. package/dist/schema/call/reward.js +1 -1
  343. package/dist/schema/call/semantic.d.ts +1 -0
  344. package/dist/schema/call/semantic.js +1 -1
  345. package/dist/schema/call/service.d.ts +131 -43
  346. package/dist/schema/call/service.js +1 -1
  347. package/dist/schema/call/treasury.d.ts +15 -6
  348. package/dist/schema/call/treasury.js +1 -1
  349. package/dist/schema/common/index.js +1 -1
  350. package/dist/schema/config/index.d.ts +61 -0
  351. package/dist/schema/config/index.js +1 -1
  352. package/dist/schema/envelope-unify.d.ts +4 -0
  353. package/dist/schema/envelope-unify.js +1 -0
  354. package/dist/schema/evaluation/index.d.ts +224 -19
  355. package/dist/schema/evaluation/index.js +1 -1
  356. package/dist/schema/goal/index.d.ts +47 -0
  357. package/dist/schema/goal/planning.d.ts +116 -1
  358. package/dist/schema/goal/planning.js +1 -1
  359. package/dist/schema/industry-pack/index.d.ts +166 -6
  360. package/dist/schema/industry-pack/index.js +1 -1
  361. package/dist/schema/industry-pack/modes.d.ts +6 -6
  362. package/dist/schema/keeper/index.d.ts +26 -0
  363. package/dist/schema/local/index.d.ts +157 -0
  364. package/dist/schema/local/index.js +1 -1
  365. package/dist/schema/local/wip.d.ts +6 -0
  366. package/dist/schema/local/wip.js +1 -1
  367. package/dist/schema/messenger/index.d.ts +28 -0
  368. package/dist/schema/messenger/index.js +1 -1
  369. package/dist/schema/operations.d.ts +343 -84
  370. package/dist/schema/operations.js +1 -1
  371. package/dist/schema/persona/index.d.ts +2907 -640
  372. package/dist/schema/persona/index.js +1 -1
  373. package/dist/schema/query/bi.d.ts +251 -4
  374. package/dist/schema/query/bi.js +1 -1
  375. package/dist/schema/query/index.d.ts +271 -78
  376. package/dist/schema/query/index.js +1 -1
  377. package/dist/schema/schema-query/index.d.ts +1 -1
  378. package/dist/schema/schema-query/index.js +1 -1
  379. package/dist/schema/schema-version.js +1 -1
  380. package/dist/schema/utils/permission-machine-check.d.ts +2 -0
  381. package/dist/schema/utils/permission-machine-check.js +1 -1
  382. package/dist/schema/watch/index.d.ts +16 -0
  383. package/dist/schema/watch/index.js +1 -1
  384. package/dist/schema/workflow/index.d.ts +2 -2
  385. package/dist/schema/workflow/index.js +1 -1
  386. package/dist/schema-query-impl/index.d.ts +1 -1
  387. package/dist/schema-query-impl/index.js +1 -1
  388. package/dist/schemas/account_operation.output.json +98 -2
  389. package/dist/schemas/benchmark_migration_operation.output.json +341 -12
  390. package/dist/schemas/benchmark_migration_operation.schema.json +42 -3
  391. package/dist/schemas/bridge_operation.output.json +98 -2
  392. package/dist/schemas/bridge_operation.schema.json +5 -5
  393. package/dist/schemas/config_operation.output.json +352 -0
  394. package/dist/schemas/config_operation.schema.json +20 -2
  395. package/dist/schemas/evaluation_operation.output.json +586 -4
  396. package/dist/schemas/evaluation_operation.schema.json +194 -3
  397. package/dist/schemas/goal_operation.schema.json +183 -0
  398. package/dist/schemas/guard2file.schema.json +1 -1
  399. package/dist/schemas/index.json +1 -1
  400. package/dist/schemas/industry_pack_operation.output.json +771 -1
  401. package/dist/schemas/industry_pack_operation.schema.json +28 -4
  402. package/dist/schemas/keeper_operation.output.json +96 -2
  403. package/dist/schemas/local_cache_operation.output.json +98 -2
  404. package/dist/schemas/local_history_operation.output.json +98 -2
  405. package/dist/schemas/local_info_operation.output.json +98 -2
  406. package/dist/schemas/local_mark_operation.output.json +98 -2
  407. package/dist/schemas/machineNode2file.schema.json +1 -1
  408. package/dist/schemas/messenger_operation.output.json +107 -2
  409. package/dist/schemas/messenger_operation.schema.json +41 -34
  410. package/dist/schemas/monitor_events.output.json +96 -2
  411. package/dist/schemas/monitor_subscription.output.json +96 -2
  412. package/dist/schemas/onchain_events.output.json +108 -14
  413. package/dist/schemas/onchain_operations.output.json +326 -11
  414. package/dist/schemas/onchain_operations.schema.json +1343 -734
  415. package/dist/schemas/onchain_operations_allocation.schema.json +35 -19
  416. package/dist/schemas/onchain_operations_arbitration.schema.json +16 -8
  417. package/dist/schemas/onchain_operations_contact.schema.json +12 -4
  418. package/dist/schemas/onchain_operations_demand.schema.json +33 -17
  419. package/dist/schemas/onchain_operations_gen_passport.schema.json +12 -4
  420. package/dist/schemas/onchain_operations_gen_proof.schema.json +1 -1
  421. package/dist/schemas/onchain_operations_guard.schema.json +297 -111
  422. package/dist/schemas/onchain_operations_machine.schema.json +56 -39
  423. package/dist/schemas/onchain_operations_order.schema.json +67 -42
  424. package/dist/schemas/onchain_operations_payment.schema.json +27 -12
  425. package/dist/schemas/onchain_operations_permission.schema.json +363 -232
  426. package/dist/schemas/onchain_operations_personal.schema.json +43 -28
  427. package/dist/schemas/onchain_operations_progress.schema.json +49 -32
  428. package/dist/schemas/onchain_operations_proof.schema.json +12 -4
  429. package/dist/schemas/onchain_operations_repository.schema.json +17 -8
  430. package/dist/schemas/onchain_operations_reward.schema.json +36 -20
  431. package/dist/schemas/onchain_operations_service.schema.json +230 -130
  432. package/dist/schemas/onchain_operations_treasury.schema.json +36 -20
  433. package/dist/schemas/onchain_table_data.output.json +276 -19
  434. package/dist/schemas/onchain_table_data.schema.json +104 -64
  435. package/dist/schemas/persona_operation.output.json +7752 -0
  436. package/dist/schemas/persona_operation.schema.json +1232 -4
  437. package/dist/schemas/query_toolkit.output.json +1054 -146
  438. package/dist/schemas/query_toolkit.schema.json +144 -13
  439. package/dist/schemas/schema_query.schema.json +1 -1
  440. package/dist/schemas/watch_operation.output.json +86 -3
  441. package/dist/schemas/wip_file.output.json +8 -0
  442. package/dist/schemas/workflow_operation.schema.json +5 -4
  443. package/dist/schemas/wowok_buildin_info.schema.json +1 -1
  444. package/dist/task/playbook.js +1 -1
  445. package/dist/tools/handlers/benchmark-migration.d.ts +12 -3
  446. package/dist/tools/handlers/benchmark-migration.js +1 -1
  447. package/dist/tools/handlers/config.js +1 -1
  448. package/dist/tools/handlers/evaluation.js +1 -1
  449. package/dist/tools/handlers/evaluation.spec.js +1 -1
  450. package/dist/tools/handlers/industry-pack.js +1 -1
  451. package/dist/tools/handlers/messenger.js +1 -1
  452. package/dist/tools/handlers/onchain.d.ts +24 -0
  453. package/dist/tools/handlers/onchain.js +1 -1
  454. package/dist/tools/handlers/persona.js +1 -1
  455. package/dist/tools/handlers/query.d.ts +8 -0
  456. package/dist/tools/handlers/query.js +1 -1
  457. package/dist/tools/handlers/winner-derivation.d.ts +20 -0
  458. package/dist/tools/handlers/winner-derivation.js +1 -0
  459. package/dist/tools/handlers/wip-upload.js +1 -1
  460. package/dist/tools/index.d.ts +1 -0
  461. package/dist/tools/index.js +1 -1
  462. package/dist/tools/registry/business.js +1 -1
  463. package/dist/tools/registry/config.js +1 -1
  464. package/dist/tools/registry/evaluation.js +1 -1
  465. package/dist/tools/registry/identity.js +1 -1
  466. package/dist/tools/registry/onchain.js +1 -1
  467. package/dist/tools/registry/query.js +1 -1
  468. package/dist/tools/sanitize-output.js +1 -1
  469. package/dist/tools/sanitize-output.spec.js +1 -1
  470. package/dist/tools/transport-integrity.d.ts +7 -0
  471. package/dist/tools/transport-integrity.js +1 -0
  472. package/dist/tools/types.d.ts +1 -0
  473. package/dist/tools/upgrade-check.d.ts +22 -0
  474. package/dist/tools/upgrade-check.js +1 -1
  475. package/dist/tools/wrap.d.ts +6 -1
  476. package/dist/tools/wrap.js +1 -1
  477. package/package.json +7 -6
  478. package/dist/extensions/business-modules.d.ts +0 -54
  479. package/dist/extensions/business-modules.js +0 -1
  480. package/dist/schemas/guard-templates.json +0 -379
@@ -1 +1 @@
1
- import{z}from'zod';import{readFileSync}from'fs';import{fileURLToPath}from'url';import{dirname,join}from'path';import{fromJsonSchema}from'@modelcontextprotocol/server';const __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename),SCHEMA_DIR_CANDIDATES=[join(__dirname,'..','schemas'),join(__dirname,'..','..','dist','schemas')],preGeneratedSchemaCache=new Map();import{wrapHandlerWithErrorShape,dispatchWithHarness}from'./wrap.js';import{sanitizeToolDispatchResult}from'./sanitize-output.js';import{classifyError}from'../schema/call/semantic.js';import{ONCHAIN_TOOLS}from'./registry/onchain.js';import{LOCAL_TOOLS}from'./registry/local.js';import{FILE_TOOLS}from'./registry/files.js';import{MESSENGER_TOOLS}from'./registry/messenger.js';import{QUERY_TOOLS}from'./registry/query.js';import{BRIDGE_TOOLS}from'./registry/bridge.js';import{CONFIG_TOOLS}from'./registry/config.js';import{EVALUATION_TOOLS}from'./registry/evaluation.js';import{IDENTITY_TOOLS}from'./registry/identity.js';import{BUSINESS_TOOLS}from'./registry/business.js';import{AGENT_TOOLS}from'./registry/agent.js';import{MONITOR_TOOLS}from'./registry/monitor.js';import{INTERACTION_TOOLS}from'./registry/interaction.js';export{monitorEventStore,MonitorEventStore,monitorEventId}from'../monitor/EventStore.js';export{monitorLoop,MonitorLoop}from'../monitor/MonitorLoop.js';export{MONITOR_CAPTURE_TYPES}from'../monitor/normalize.js';export{resolveGateControls,resolveEffectiveOverrides}from'../persona/index.js';export{SYSTEM_OVERRIDE_SETTINGS}from'../persona/index.js';export const TOOL_REGISTRY=[...ONCHAIN_TOOLS,...LOCAL_TOOLS,...FILE_TOOLS['slice'](0x0,0x1),...MESSENGER_TOOLS,...FILE_TOOLS['slice'](0x1),...QUERY_TOOLS,...BRIDGE_TOOLS,...CONFIG_TOOLS,...EVALUATION_TOOLS,...IDENTITY_TOOLS,...BUSINESS_TOOLS,...AGENT_TOOLS,...MONITOR_TOOLS,...INTERACTION_TOOLS];export const TOOL_REGISTRY_MAP=new Map(TOOL_REGISTRY['map'](a=>[a['name'],a]));export const SUB_TOOL_COUNT=TOOL_REGISTRY['length'];const SUB_TOOL_NAMES=TOOL_REGISTRY['map'](a=>a['name']),WowokToolRuntimeSchema=fromJsonSchema({'type':'object'}),WowokToolDisplaySchema=z['object']({'tool':z['enum'](SUB_TOOL_NAMES)['optional']()['describe']('The\x20sub-tool\x20to\x20execute.\x20Each\x20sub-tool\x20has\x20its\x20own\x20parameter\x20schema.'),'data':z['record'](z['string'](),z['unknown']())['optional']()['describe']('Sub-tool\x20specific\x20parameters.\x20If\x20validation\x20fails,\x20the\x20response\x20includes\x20the\x20correct\x20schema\x20for\x20this\x20sub-tool\x20—\x20read\x20it,\x20fix\x20your\x20params,\x20and\x20retry.'),'submission':z['record'](z['string'](),z['unknown']())['optional']()['describe']('Guard\x20submission\x20slots\x20(top-level\x20placement,\x20sibling\x20of\x20data/env).\x20Alternative:\x20place\x20inside\x20data.'),'env':z['record'](z['string'](),z['unknown']())['optional']()['describe']('Environment\x20(account/network/confirmed/...).\x20Top-level\x20placement\x20is\x20folded\x20into\x20data.env.'),'tool_name':z['enum'](SUB_TOOL_NAMES)['optional']()['describe']('DEPRECATED\x20alias\x20for\x20\x27tool\x27.\x20Use\x20\x27tool\x27\x20instead.'),'args':z['record'](z['string'](),z['unknown']())['optional']()['describe']('DEPRECATED\x20alias\x20for\x20\x27data\x27.\x20Use\x20\x27data\x27\x20instead.'),'name':z['enum'](SUB_TOOL_NAMES)['optional']()['describe']('DEPRECATED\x20alias\x20for\x20\x27tool\x27.\x20Use\x20\x27tool\x27\x20instead.'),'params':z['record'](z['string'](),z['unknown']())['optional']()['describe']('DEPRECATED\x20alias\x20for\x20\x27data\x27.\x20Use\x20\x27data\x27\x20instead.')})['describe']('WoWok\x20unified\x20tool\x20input.\x20Call\x20with\x20{\x20tool:\x20\x22<sub-tool>\x22,\x20data:\x20{<params>}\x20}.\x20'+'Aliases:\x20tool_name/name→tool,\x20args/params→data.'),SUB_TOOL_LIST=TOOL_REGISTRY['map'](a=>'\x20\x20'+a['name']+'\x20—\x20'+a['config']['summary'])['join']('\x0a'),SKILLS_MISMATCH_POINTER='Structured\x20role-based\x20guidance\x20(WHEN\x20and\x20in\x20what\x20ORDER\x20to\x20use\x20WoWok\x20sub-tools)\x20is\x20available\x20via\x20the\x20WoWok\x20Skills:\x20install\x20with\x20\x22npm\x20install\x20-g\x20@wowok/skills\x22\x20(verify\x20with\x20\x22wowok-skills\x20doctor\x22),\x20or\x20fetch\x20orientation\x20now\x20via\x20wowok_buildin_info\x20info=\x22getting\x20started\x22.';function schemaMismatchHint(a){return'Fix\x20your\x20parameters\x20based\x20on\x20the\x20schema\x20below\x20and\x20retry.\x20CACHE\x20THIS\x20SCHEMA\x20for\x20future\x20'+a+'\x20calls\x20—\x20you\x20don\x27t\x20need\x20to\x20query\x20it\x20again.\x0a'+SKILLS_MISMATCH_POINTER;}const WOWOK_TOOL_DESCRIPTION=['WoWok\x20MCP\x20unified\x20interface.\x20Call\x20with\x20{\x20tool:\x20\x22<sub-tool>\x22,\x20data:\x20{<params>}\x20}.','','\x20\x20▶\x20START\x20HERE\x20—\x20WoWok\x20Skills\x20(recommended):','\x20\x20\x20\x20Role-based\x20playbooks\x20(onboarding,\x20building,\x20buying,\x20fulfillment,\x20arbitration,\x20governance)','\x20\x20\x20\x20sit\x20ON\x20TOP\x20of\x20this\x20MCP\x20and\x20materially\x20reduce\x20failed\x20calls\x20by\x20telling\x20you\x20WHEN\x20and\x20in\x20what','\x20\x20\x20\x20ORDER\x20to\x20use\x20the\x2030+\x20sub-tools\x20below.\x20One\x20command\x20installs\x20them\x20into\x20every\x20detected\x20AI','\x20\x20\x20\x20client\x20AND\x20registers\x20this\x20MCP\x20server\x20(idempotent\x20postinstall):','\x20\x20\x20\x20\x20\x20npm\x20install\x20-g\x20@wowok/skills','\x20\x20\x20\x20Verify:\x20wowok-skills\x20doctor\x20\x20\x20Repair\x20an\x20old\x20install:\x20wowok-skills\x20init\x20--force','\x20\x20\x20\x20Machine-readable\x20orientation\x20+\x20best-effort\x20detection\x20of\x20whether\x20skills\x20are\x20installed\x20here:','\x20\x20\x20\x20\x20\x20wowok({\x20tool:\x20\x22wowok_buildin_info\x22,\x20data:\x20{\x20info:\x20\x22getting\x20started\x22\x20}\x20})','\x20\x20▶\x20COLD\x20START:\x20the\x20FIRST\x20call\x20after\x20server\x20boot\x20can\x20take\x20~20\x20seconds\x20(server\x20bootstraps\x20via\x20npx).','\x20\x20\x20\x20Wait\x20for\x20it\x20—\x20a\x20timed-out\x20first\x20response\x20is\x20startup\x20latency,\x20not\x20a\x20broken\x20server,\x20and\x20never\x20a','\x20\x20\x20\x20reason\x20to\x20retry\x20a\x20write\x20transaction.\x20Later\x20calls\x20are\x20fast.','','\x20\x20tool:\x20name\x20of\x20the\x20sub-tool\x20(string)','\x20\x20data:\x20sub-tool\x20parameters\x20(object)','','\x20\x20Aliases\x20accepted\x20(deprecated):\x20tool_name/name\x20for\x20tool,\x20args/params\x20for\x20data.','\x20\x20Inline\x20params\x20also\x20accepted:\x20{\x20tool:\x20\x22<sub-tool>\x22,\x20<param1>:\x20...,\x20<param2>:\x20...\x20}','\x20\x20⚠️\x20RESERVED\x20KEYS\x20cannot\x20be\x20passed\x20inline:\x20name\x20/\x20tool_name\x20/\x20args\x20/\x20params\x20are\x20the','\x20\x20deprecated\x20aliases\x20themselves\x20—\x20an\x20inline\x20\x27name\x27\x20is\x20consumed\x20as\x20the\x20tool\x20alias\x20and','\x20\x20never\x20reaches\x20the\x20sub-tool.\x20Pass\x20such\x20fields\x20inside\x20data\x20instead.','','\x20\x20EXAMPLE:\x20wowok({\x20tool:\x20\x22schema_query\x22,\x20data:\x20{\x20action:\x20\x22get\x22,\x20name:\x20\x22onchain_operations\x22\x20}\x20})','\x20\x20EXAMPLE:\x20wowok({\x20tool:\x20\x22wowok_buildin_info\x22,\x20data:\x20{\x20info:\x20\x22mainnet\x20bridge\x20tokens\x22\x20}\x20})','\x20\x20EXAMPLE\x20(inline\x20params):\x20wowok({\x20tool:\x20\x22query_toolkit\x22,\x20query_type:\x20\x22account_list\x22\x20})','','Available\x20sub-tools\x20('+SUB_TOOL_COUNT+'):',SUB_TOOL_LIST,'','SCHEMA-GATED\x20EXECUTION:','\x20\x20If\x20your\x20parameters\x20don\x27t\x20match\x20the\x20sub-tool\x27s\x20schema,\x20the\x20response\x20will\x20include:','\x20\x20\x20\x20result.status\x20=\x20\x22schema_mismatch\x22','\x20\x20\x20\x20result.errors\x20=\x20specific\x20validation\x20errors\x20(field\x20path\x20+\x20expected\x20type)','\x20\x20\x20\x20result.hint\x20=\x20instructions\x20to\x20fix\x20and\x20retry','\x20\x20\x20\x20schema.input\x20=\x20the\x20correct\x20JSON\x20schema\x20for\x20the\x20sub-tool','\x20\x20\x20\x20schema.tool\x20=\x20which\x20sub-tool\x20this\x20schema\x20belongs\x20to','\x20\x20Read\x20the\x20schema,\x20fix\x20your\x20params,\x20and\x20retry.\x20This\x20is\x20normal\x20—\x20no\x20need\x20to\x20call\x20schema_query\x20separately.','','SCHEMA\x20CACHING:','\x20\x20Each\x20sub-tool\x20has\x20a\x20DIFFERENT\x20schema.\x20When\x20you\x20receive\x20a\x20schema\x20in\x20a\x20mismatch\x20response:','\x20\x20\x20\x201.\x20Read\x20the\x20schema\x20carefully','\x20\x20\x20\x202.\x20Fix\x20your\x20parameters','\x20\x20\x20\x203.\x20Retry\x20the\x20call','\x20\x20\x20\x204.\x20CACHE\x20the\x20schema\x20in\x20your\x20context\x20for\x20future\x20calls\x20to\x20the\x20SAME\x20sub-tool','\x20\x20You\x20should\x20only\x20need\x20to\x20see\x20each\x20sub-tool\x27s\x20schema\x20once\x20per\x20conversation.','','ON-CHAIN\x20BUSINESS\x20INTELLIGENCE\x20(query_toolkit,\x20READ-ONLY\x20—\x20no\x20local\x20project\x20entity):','\x20\x20query_toolkit\x20query_type=\x27service_panorama\x27\x20→\x20ONE-CALL\x20full\x20Service\x20context\x20(workflow\x20graph,\x20guards,\x20supply\x20chain,\x20orders)','\x20\x20query_toolkit\x20query_type=\x27machine_panorama\x27\x20→\x20Machine\x20context\x20(head\x20+\x20fields\x20+\x20workflow\x20graph\x20+\x20Progress\x20list)','\x20\x20query_toolkit\x20query_type=\x27object_panorama\x27\x20→\x20detail\x20panorama\x20for\x20Progress/Demand/Order/Arb/Repository','\x20\x20query_toolkit\x20query_type=\x27review_pack\x27\x20→\x20typed\x20ReviewPack\x20for\x20the\x20client\x27s\x20generic\x20ReviewPackRenderer','\x20\x20query_toolkit\x20query_type=\x27assemble_context\x27\x20→\x20semantic\x20context\x20assembly\x20from\x20on-chain\x20objects','\x20\x20query_toolkit\x20query_type=\x27reverse_map\x27\x20→\x20deterministic\x20L4→L1\x20business\x20report\x20(merchant\x20profile\x20/\x20user\x20risk\x20/\x20game\x20theory)','\x20\x20query_toolkit\x20query_type=\x27participation_radar\x27\x20→\x20in-flight\x20order\x20participation\x20analysis\x20for\x20ONE\x20account','\x20\x20query_toolkit\x20query_type=\x27relationship_profile\x27\x20→\x20business\x20relationship\x20graph\x20for\x20ONE\x20account\x20(power/interest/value-flow\x20edges,\x20K3/19)','\x20\x20industry_pack_operation\x20action=\x27recommend_industry\x27/\x27list_modes\x27\x20→\x20industry\x20mode\x20registry\x20(GLM6/92\x20§E)','\x20\x20strategy_review_operation\x20action=\x27collect\x27/\x27review\x27/\x27list_snapshots\x27\x20→\x20posture-weighted\x20scorecard\x20+\x20periodic\x20review\x20(current-layer\x20proposals\x20only)','\x20\x20goal_operation\x20action=\x27merchant_guide\x27\x20→\x2010-step\x20merchant\x20onboarding\x20wizard\x20(never\x20executes\x20on-chain\x20ops)','\x20\x20benchmark_migration_operation\x20→\x20industry\x20archetype\x20templates\x20+\x20one-click\x20competitor\x20migration:','\x20\x20\x20\x20template_list\x20/\x20template_get\x20/\x20template_scan\x20(pre-deploy\x20risk\x20scan)\x20/\x20template_generate\x20(creation\x20plan)','\x20\x20\x20\x20migration_import\x20(store\x20URL/description\x20→\x20MigrationLog)\x20→\x20migration_review\x20(user\x20confirmation)\x20→\x20migration_apply\x20(scan-first\x20creation\x20plan;\x20testnet\x20default)','','═══════════════════════════════════════════════════════════════','BUILD/BUY\x20POLICY\x20(no\x20local\x20projects\x20—\x20chain\x20state\x20is\x20the\x20source\x20of\x20truth):','═══════════════════════════════════════════════════════════════','','CASE\x201\x20—\x20COMPLEX\x20REQUIREMENT\x20(user\x20wants\x20to\x20build/deploy\x20a\x20full\x20service):','\x20\x20→\x20Plan\x20with\x20goal_operation\x20action=\x27analyze_intent\x27\x20(C1:\x20intent\x20→\x20per-object\x20puzzle\x20snapshots\x20+\x20creation\x20order),','\x20\x20\x20\x20then\x20\x27aggregate_risks\x27\x20(C2:\x20cross-object\x20risk\x20calibration)\x20and\x20\x27trace_substeps\x27\x20(C3:\x20substep\x20DAG\x20coherence).','\x20\x20→\x20Alternatively\x20run\x20goal_operation\x20action=\x27merchant_guide\x27\x20for\x20a\x20guided\x2010-step\x20onboarding\x20plan.','\x20\x20→\x20If\x20the\x20user\x20wants\x20to\x20build\x20LIKE\x20an\x20industry\x20archetype\x20(\x27build\x20like\x20the\x20retail\x20leader\x20model\x27)\x20or','\x20\x20\x20\x20MIGRATE\x20an\x20existing\x20store\x20(hands\x20over\x20a\x20store\x20URL/description),\x20use\x20benchmark_migration_operation','\x20\x20\x20\x20(template_list\x20→\x20template_scan\x20→\x20template_generate,\x20or\x20migration_import\x20→\x20migration_review\x20→\x20migration_apply).','\x20\x20→\x20Create\x20objects\x20via\x20onchain_operations,\x20then\x20publish\x20the\x20Service.','','CASE\x202\x20—\x20SINGLE\x20OBJECT\x20CREATION\x20(user\x20wants\x20one\x20specific\x20object):','\x20\x20→\x20Create\x20directly\x20via\x20onchain_operations.\x20No\x20project\x20bookkeeping\x20needed.','','CASE\x203\x20—\x20CONSUMER\x20FLOW\x20(user\x20wants\x20to\x20buy/evaluate\x20a\x20service):','\x20\x20→\x20query_toolkit\x20query_type=\x27service_panorama\x27\x20or\x20\x27review_pack\x27\x20for\x20the\x20detail\x20page,','\x20\x20\x20\x20\x27reverse_map\x27\x20for\x20the\x20deterministic\x20buy\x20report\x20(add\x20Machine/Allocation\x20for\x20refund-path\x20detection),','\x20\x20\x20\x20then\x20onchain_operations\x20service_buy.','','CASE\x204\x20—\x20SIMPLE\x20QUERY\x20(user\x20wants\x20to\x20check\x20object\x20info,\x20balance,\x20etc.):','\x20\x20→\x20Proceed\x20directly\x20with\x20the\x20query.','═══════════════════════════════════════════════════════════════']['join']('\x0a');function joinIssuePath(a){return a['length']>0x0?a['map'](b=>typeof b==='number'?'['+b+']':String(b))['join']('.')['replace']('.[','['):'(root)';}function unionVariantErrors(a){const b=a,d=b['errors']??b['unionErrors']??b['issues'];if(!Array['isArray'](d))return[];const e=[];for(const f of d){if(!f)continue;if(Array['isArray'](f))f['every'](g=>!!g&&typeof g==='object'&&'code'in g)&&e['push']({'issues':f});else typeof f==='object'&&Array['isArray'](f['issues'])&&e['push']({'issues':f['issues']});}return e;}function variantScore(a){let b=0x0;for(const c of a['issues']){b+=0xa;const d=c;if(c['code']==='invalid_type')d['received']==='undefined'?b+=0x14:b-=0x5;else{if(c['code']==='unrecognized_keys'){const e=Array['isArray'](d['keys'])?d['keys']['length']:0x1;b+=0xf+e*0x5;}else{if(c['code']==='invalid_union'){const f=unionVariantErrors(c);if(f['length']>0x0)b+=Math['min'](...f['map'](variantScore));}}}}return b;}function variantSummary(a,b=0x3){const c=[];for(const e of a['issues']){const f=e;if(e['code']==='unrecognized_keys'){const g=Array['isArray'](f['keys'])?f['keys']['join'](',\x20'):'?';c['push']('unknown\x20field(s):\x20'+g);}else e['code']==='invalid_type'&&f['received']==='undefined'?c['push']('missing:\x20'+joinIssuePath([...e['path']])):c['push'](e['code']+'\x20at\x20'+joinIssuePath([...e['path']]));if(c['length']>=b)break;}const d=a['issues']['length']>b?'\x20(+'+(a['issues']['length']-b)+'\x20more)':'';return c['length']>0x0?c['join'](';\x20')+d:'shape\x20mismatch';}function resolveIssuePath(a,b){if(a['length']===0x0)return joinIssuePath(b);const c=b['length']>=a['length']&&a['every']((d,e)=>b[e]===d);return joinIssuePath(c?b:[...a,...b]);}function absoluteIssuePath(a,b){const c=a['length']>0x0&&b['length']>=a['length']&&a['every']((d,e)=>b[e]===d);return c?b:[...a,...b];}function pushFlattened(a,b,c,d,e=[]){for(const f of a['issues']){if(f['code']==='invalid_union'){const g=f,h=[...f['path']],i=Array['isArray'](g['errors'])?g['errors']['length']:Array['isArray'](g['unionErrors'])?g['unionErrors']['length']:0x0,j=unionVariantErrors(f);if(j['length']===0x0){const o=resolveIssuePath(e,h),p=c!==undefined?extractValueAtPath(c,absoluteIssuePath(e,h)):undefined,q=p!==undefined;let r;if(i>0x0)r=(q?'value\x20does\x20not\x20match\x20any\x20of\x20the\x20union\x27s':'missing\x20required\x20union\x20field\x20—\x20no\x20value\x20provided;\x20union\x20accepts')+'\x20'+i+'\x20shape(s);\x20see\x20the\x20schema\x20preview\x20for\x20the\x20accepted\x20fields';else{if(q&&p&&typeof p==='object'&&!Array['isArray'](p)){const s=p,t=['operation_type','query_type','type','action','op']['find'](u=>typeof s[u]==='string');r=t?'discriminator\x20\x27'+t+'\x27=\x22'+String(s[t])+'\x22\x20does\x20not\x20match\x20any\x20variant;\x20check\x20the\x20\x22Valid\x20\x27'+t+'\x27\x20values\x22\x20line\x20in\x20the\x20schema\x20preview\x20below':'value\x20does\x20not\x20match\x20any\x20union\x20variant\x20(no\x20per-variant\x20details\x20available);\x20see\x20the\x20schema\x20preview';}else r='value\x20does\x20not\x20match\x20any\x20union\x20variant\x20(no\x20per-variant\x20details\x20available);\x20see\x20the\x20schema\x20preview';}b['push']({'kind':'header','path':o,'code':'invalid_union','message':r});d&&(b[b['length']-0x1]={'kind':'header','path':o+'\x20['+d+']','code':'invalid_union','message':r});continue;}const k=j['map']((u,v)=>({'idx':v,'err':u,'score':variantScore(u)}))['sort']((u,v)=>u['score']-v['score']),l=k[0x0],m=k['slice'](0x1)['map'](u=>'variant\x20'+(u['idx']+0x1)+':\x20'+variantSummary(u['err']))['join']('\x20|\x20');b['push']({'kind':'header','path':resolveIssuePath(e,h),'code':'invalid_union','message':'no\x20union\x20variant\x20matched\x20('+j['length']+'\x20checked);\x20closest\x20=\x20variant\x20'+(l['idx']+0x1)+'\x20—\x20it\x20fails\x20on:\x20'+variantSummary(l['err'])+(m?'\x20—\x20others:\x20'+m:'')});const n=h['length']>0x0&&h['every']((u,v)=>e[v]===u)?h:[...e,...h];pushFlattened(l['err'],b,c,'variant\x20'+(l['idx']+0x1),n);}else b['push']({'kind':'issue','issue':f,'variantTag':d,'pathPrefix':e});}}function flattenZodIssues(a,b){const c=[];pushFlattened(a,c,b);const d=(f,g)=>{if(f['kind']!=='issue'||g['kind']!=='issue')return![];const h=absoluteIssuePath(f['pathPrefix']??[],f['issue']['path']),i=absoluteIssuePath(g['pathPrefix']??[],g['issue']['path']);return i['length']>h['length']&&h['every']((j,l)=>i[l]===j);},e=c['filter'](f=>{if(f['kind']!=='issue'||f['issue']['code']!=='unrecognized_keys')return!![];return!c['some'](g=>g!==f&&g['kind']==='issue'&&g['issue']['code']!=='unrecognized_keys'&&d(f,g));});return e;}const RECEIVED_VALUE_MAX=0x1f4;function truncateEcho(a){return a['length']>RECEIVED_VALUE_MAX?a['slice'](0x0,RECEIVED_VALUE_MAX)+'...(truncated,\x20'+(a['length']-RECEIVED_VALUE_MAX)+'\x20more\x20chars)':a;}function formatZodErrors(a,b){return flattenZodIssues(a,b)['map'](c=>{if(c['kind']==='header')return c['path']+'\x20['+c['code']+']:\x20'+c['message'];const d=c['issue'],e=resolveIssuePath(c['pathPrefix']??[],d['path']),f=d['code'],g=d['message'];let h='';const i=d;if(f==='invalid_type'){const l=i['expected'],m=i['received'];typeof l==='string'&&typeof m==='string'&&(h='\x20(expected:\x20'+l+';\x20received:\x20'+m+')');}else{if(f==='invalid_value'){const n=i['expected'];if(n!==undefined){const o=typeof n==='string'?n:JSON['stringify'](n);h='\x20(expected:\x20'+o['slice'](0x0,0x3c)+')';}}else{if(f==='too_big'||f==='too_small'){const p=i['maximum']??i['minimum'],q=i['origin'];p!==undefined&&q!==undefined&&(h='\x20('+q+':\x20'+p+')');}}}const j=extractValueAtPath(b,absoluteIssuePath(c['pathPrefix']??[],d['path']));if(j!==undefined){const r=typeof j==='string'?'\x22'+truncateEcho(j)+'\x22':typeof j==='object'?truncateEcho(JSON['stringify'](j)):String(j);!h['includes']('received:')&&(h+='\x20(received\x20value:\x20'+r+')');}const k=c['variantTag']?'\x20['+c['variantTag']+']':'';return''+e+k+'\x20['+f+']:\x20'+g+h;});}function generateSuggestion(a,b,c){const d=b;switch(a){case'invalid_type':{const e=d['expected'];if(e==='number'&&typeof c==='string')return'Convert\x20to\x20number:\x20'+Number(c);if(e==='string')return'Wrap\x20in\x20quotes\x20or\x20call\x20String(...)';if(e==='array')return'Wrap\x20in\x20array:\x20['+JSON['stringify'](c)+']';if(e==='object')return'Provide\x20an\x20object,\x20not\x20a\x20primitive';return'Convert\x20value\x20to\x20'+(e??'the\x20expected\x20type');}case'invalid_enum_value':{const f=d['options'],g=Array['isArray'](f)?f['map'](h=>JSON['stringify'](h))['join']('\x20|\x20'):String(f);return'Use\x20one\x20of:\x20'+g;}case'invalid_literal':{const h=d['expected'];return'Use\x20the\x20exact\x20value:\x20'+JSON['stringify'](h);}case'too_small':{const i=d['minimum'],j=d['type'];if(j==='array')return'Add\x20at\x20least\x20'+i+'\x20element(s)\x20to\x20the\x20array';if(j==='string')return'String\x20must\x20be\x20at\x20least\x20'+i+'\x20character(s)\x20long';if(j==='number')return'Use\x20a\x20value\x20>=\x20'+i;return'Value\x20must\x20be\x20>=\x20'+i;}case'too_big':{const k=d['maximum'],l=d['type'];if(l==='array')return'Reduce\x20array\x20to\x20at\x20most\x20'+k+'\x20element(s)';if(l==='string')return'Shorten\x20string\x20to\x20at\x20most\x20'+k+'\x20character(s)';if(l==='number')return'Use\x20a\x20value\x20<=\x20'+k;return'Value\x20must\x20be\x20<=\x20'+k;}case'unrecognized_keys':{const m=d['keys'];return'Remove\x20unknown\x20field(s):\x20'+(m??[])['join'](',\x20')+'.\x20Check\x20the\x20schema\x20for\x20valid\x20field\x20names.';}case'invalid_union':{return'Value\x20does\x20not\x20match\x20any\x20of\x20the\x20union\x20variants\x20—\x20see\x20the\x20\x22closest\x20variant\x22\x20line\x20above\x20for\x20the\x20concrete\x20field\x20error(s).';}case'invalid_string':{const n=d['validation'];if(n==='url')return'Provide\x20a\x20valid\x20URL\x20string';if(n==='email')return'Provide\x20a\x20valid\x20email\x20string';if(n==='uuid')return'Provide\x20a\x20valid\x20UUID\x20string';if(n==='regex')return'String\x20does\x20not\x20match\x20the\x20required\x20pattern';return'Provide\x20a\x20valid\x20string\x20matching\x20the\x20validation:\x20'+(n??'unknown');}case'invalid_date':{return'Provide\x20a\x20valid\x20Date\x20object\x20or\x20ISO\x20date\x20string';}case'not_finite':{return'Use\x20a\x20finite\x20number\x20(not\x20Infinity\x20or\x20NaN)';}case'invalid_arguments':{return'Arguments\x20do\x20not\x20match\x20the\x20expected\x20schema';}case'invalid_return_type':{return'Return\x20type\x20does\x20not\x20match\x20the\x20expected\x20schema';}case'custom':{return'Custom\x20validation\x20failed\x20—\x20see\x20the\x20field\x27s\x20description\x20in\x20the\x20schema';}default:{return'Fix\x20the\x20value\x20at\x20\x27'+b['path']['join']('.')+'\x27\x20based\x20on\x20the\x20schema';}}}function formatZodErrorsStructured(a,b){return flattenZodIssues(a,b)['flatMap'](c=>{if(c['kind']==='header'){const l=c['message']['match'](/closest = variant (\d+)/),m=c['message']['includes']('missing\x20required\x20union\x20field'),n=l?'\x20Fix\x20the\x20field\x20error(s)\x20listed\x20for\x20variant\x20'+l[0x1]+'.':'',o=m?'Provide\x20this\x20required\x20field\x20with\x20one\x20of\x20the\x20accepted\x20shapes,\x20and\x20check\x20field-name\x20spelling\x20against\x20the\x20schema\x20preview.':'No\x20union\x20variant\x20matched;\x20the\x20closest\x20variant\x27s\x20concrete\x20errors\x20follow.'+n;return[{'path':c['path'],'code':c['code'],'message':c['message'],'suggestion':o}];}const d=c['issue'],e=resolveIssuePath(c['pathPrefix']??[],d['path']),f=d['code'],g=c['variantTag']?d['message']+'\x20(closest\x20union\x20variant:\x20'+c['variantTag']+')':d['message'],h=d;let i;if(f==='invalid_type'){const p=h['expected'],q=h['received'];typeof p==='string'&&typeof q==='string'&&(i=p);}else{if(f==='invalid_value'){const r=h['expected'],s=h['options'];if(Array['isArray'](s))i=s['map'](t=>JSON['stringify'](t))['join']('\x20|\x20');else r!==undefined&&(i=typeof r==='string'?r:JSON['stringify'](r));}else{if(f==='too_big'||f==='too_small'){const t=h['maximum']??h['minimum'];t!==undefined&&(i=String(t));}}}const j=extractValueAtPath(b,absoluteIssuePath(c['pathPrefix']??[],d['path'])),k=generateSuggestion(f,d,j);return[{'path':e,'code':f,'message':g,'expected':i,'received_value':j,'suggestion':k}];});}function extractValueAtPath(a,b){if(a===undefined||a===null||b['length']===0x0)return undefined;let c=a;for(const d of b){if(c===undefined||c===null)return undefined;if(typeof d==='number'){if(!Array['isArray'](c))return undefined;c=c[d];}else{if(typeof c!=='object')return undefined;c=c[d];}}return c;}function zodTopLevelShape(a){let b=a;while(!![]){const e=b['_def'];if(!e)break;const f=e['typeName']==='ZodEffects'?e['schema']:e['out']??e['innerType'];if(!f||f===b)break;b=f;}const c=b['_def'],d=typeof c?.['shape']==='function'?c['shape']():c?.['shape'];return d&&typeof d==='object'?d:undefined;}function checkUnknownFields(a,b){const c=zodTopLevelShape(a);if(!c||typeof b!=='object'||b===null)return[];const d=Object['keys'](c),e=Object['keys'](b);return e['filter'](g=>!d['includes'](g));}function zodUnionAwareKeyCheck(a,b){let c=a;while(!![]){const g=c['_def'];if(!g)break;const h=g['typeName']==='ZodEffects'?g['schema']:g['out']??g['innerType'];if(!h||h===c)break;c=h;}const d=c['_def']?.['options']??[c];let e=![],f=![];for(const i of d){const j=zodTopLevelShape(i);if(!j)continue;if(b in j)e=!![];if('env'in j)f=!![];}return{'declared':e,'hasEnvSlot':f};}function extractRelevantSchema(a,b,c){if(b==='onchain_operations'&&typeof c==='object'&&c!==null){const d=c['operation_type'];if(typeof d==='string'){const e='onchain_operations_'+d,f=loadPreGeneratedSchema(e);if(f)return f;}}return a;}function isSchemaValidationError(a){return a['startsWith']('Unknown\x20')&&a['includes']('field')||a['includes']('expected')&&a['includes']('received')||a['includes']('Invalid\x20input')||a['includes']('Required');}function variantConstValue(a,b){const c=a['properties'];if(!c||typeof c!=='object')return undefined;const d=c[b];if(!d)return undefined;if(typeof d['const']==='string')return d['const'];if(Array['isArray'](d['enum'])&&d['enum']['length']===0x1&&typeof d['enum'][0x0]==='string')return d['enum'][0x0];return undefined;}function pickUnionVariant(a,b){const c=['query_type','operation_type','type'],d=b&&typeof b==='object'&&!Array['isArray'](b)?Object['keys'](b):[],e=[...c,...d['filter'](f=>!c['includes'](f))];for(const f of e){const g=b?.[f];if(typeof g!=='string')continue;for(let h=0x0;h<a['length'];h++){const j=a[h];if(j&&typeof j==='object'&&variantConstValue(j,f)===g)return{'variant':j,'index':h,'discriminator':f,'matched':!![]};}}for(let k=0x0;k<a['length'];k++){const l=a[k];if(l&&typeof l==='object'){const m=l;if(m['properties']&&typeof m['properties']==='object')return{'variant':m,'index':k,'matched':![]};}}return{'index':-0x1,'matched':![]};}function unionDiscriminatorValues(a,b){const c=[];for(const d of a){if(d&&typeof d==='object'){const e=variantConstValue(d,b);if(e!==undefined&&!c['includes'](e))c['push'](e);}}return c;}function inferDiscriminatorKey(a){if(!Array['isArray'](a)||a['length']===0x0)return undefined;const b=a['filter'](d=>!!d&&typeof d==='object'&&!!d['properties']);if(b['length']!==a['length']||b['length']===0x0)return undefined;const c=b[0x0]['properties'];for(const d of Object['keys'](c)){let e=!![];for(const f of b){if(variantConstValue(f,d)===undefined){e=![];break;}}if(e)return d;}return undefined;}function buildSchemaPreview(a,b,c){try{const d=['Schema\x20preview\x20for\x20'+b+':'];let e,g=[],h='',i,j=-0x1,k,l=![];if(a['properties']&&typeof a['properties']==='object')e=a['properties'],g=Array['isArray'](a['required'])?a['required']:[],h=typeof a['description']==='string'?a['description']:'';else{if(Array['isArray'](a['oneOf'])||Array['isArray'](a['anyOf'])){i=a['oneOf']??a['anyOf'];const p=pickUnionVariant(i,c);j=p['index'],k=p['discriminator'],l=p['matched'];p['variant']&&(e=p['variant']['properties'],g=Array['isArray'](p['variant']['required'])?p['variant']['required']:[],h=typeof p['variant']['description']==='string'?p['variant']['description']:'');if(!e)return d['push']('\x20\x20(discriminated\x20union\x20with\x20'+i['length']+'\x20variants\x20—\x20see\x20structuredContent\x20for\x20full\x20schema)'),d['join']('\x0a');}}h&&h['length']>0x0&&h['length']<0xc8&&d['push']('\x20\x20'+h);if(!e)return d['push']('\x20\x20(no\x20properties\x20available\x20—\x20see\x20structuredContent\x20for\x20full\x20schema)'),d['join']('\x0a');const m=new Set(g),n=g['length']>0x0?g['join'](',\x20'):'(none)',o=Object['keys'](e)['filter'](q=>!m['has'](q))['join'](',\x20');d['push']('Required:\x20'+n);o&&d['push']('Optional:\x20'+o);d['push']('Fields:');for(const [q,r]of Object['entries'](e)){if(r&&typeof r==='object'){const s=r,t=describeSchemaType(s),u=m['has'](q)?'required':'optional';let v=typeof s['description']==='string'?s['description']:'';if(v['length']>0x78)v=v['slice'](0x0,0x75)+'...';let w='';if(s['properties']&&typeof s['properties']==='object'){const x=Object['keys'](s['properties']);x['length']>0x0&&(w='\x20{\x20'+x['slice'](0x0,0x8)['join'](',\x20')+(x['length']>0x8?',\x20...':'')+'\x20}');}if(s['items']&&typeof s['items']==='object'){const y=s['items'],A=describeSchemaType(y);w='\x20(array\x20of\x20'+A+')';}Array['isArray'](s['enum'])&&(w='\x20(enum:\x20'+s['enum']['slice'](0x0,0x6)['map'](B=>JSON['stringify'](B))['join'](',\x20')+(s['enum']['length']>0x6?',\x20...':'')+')'),d['push']('\x20\x20-\x20'+q+'\x20('+t+',\x20'+u+')'+w+(v?'\x20—\x20'+v:''));}}if(i&&i['length']>0x0){d['push']('');if(l&&k){const B=c&&typeof c==='object'?c:{},C=String(B[k]);d['push']('Matched\x20variant:\x20'+k+'=\x22'+C+'\x22\x20(variant\x20'+(j+0x1)+'\x20of\x20'+i['length']+').');}else{d['push']('Discriminated\x20union\x20with\x20'+i['length']+'\x20variants;\x20showing\x20variant\x20'+(j+0x1)+'\x20(no\x20matching\x20discriminator\x20value\x20in\x20input).');const D=k??inferDiscriminatorKey(i)??(b==='query_toolkit'?'query_type':'operation_type'),E=unionDiscriminatorValues(i,D);E['length']>0x0&&d['push']('Valid\x20\x27'+D+'\x27\x20values:\x20'+E['join'](',\x20'));}}if(b==='onchain_operations'&&typeof c==='object'&&c!==null){const F=c['operation_type'];typeof F==='string'&&(d['push'](''),d['push']('operation_type-specific\x20schema:\x20onchain_operations_'+F),d['push']('(Use\x20schema_query\x20with\x20action=\x27get\x27\x20and\x20name=\x27onchain_operations_'+F+'\x27\x20for\x20the\x20full\x20sub-schema.)'));}return d['join']('\x0a');}catch{return'Schema\x20preview\x20for\x20'+b+':\x20(unable\x20to\x20build\x20preview\x20—\x20see\x20structuredContent\x20for\x20full\x20schema)';}}function compactMismatchSchemaInput(a,b){const c=Array['isArray'](a['oneOf'])?a['oneOf']:Array['isArray'](a['anyOf'])?a['anyOf']:undefined;if(!c)return a;const d=pickUnionVariant(c,b);if(!d['matched']||!d['variant'])return fallbackUnionSchema(a,c,b);const e=d['variant'],{oneOf:f,anyOf:g,...h}=a,i=h['properties']&&typeof h['properties']==='object'?h['properties']:{},j=e['properties']&&typeof e['properties']==='object'?e['properties']:{},k=Array['isArray'](h['required'])?h['required']:[],l=Array['isArray'](e['required'])?e['required']:[];return{...h,...e['type']!==undefined?{'type':e['type']}:{},...e['additionalProperties']!==undefined?{'additionalProperties':e['additionalProperties']}:{},...e['description']!==undefined?{'description':e['description']}:{},'properties':{...i,...j},'required':[...new Set([...k,...l])]};}function fallbackUnionSchema(a,b,c){const d=inferDiscriminatorKey(b);if(!d)return a;const e=unionDiscriminatorValues(b,d);if(e['length']===0x0)return a;const {oneOf:f,anyOf:g,...h}=a,i=h['properties']&&typeof h['properties']==='object'?h['properties']:{},j=Array['isArray'](h['required'])?h['required']:[],k=c&&typeof c==='object'&&!Array['isArray'](c)?Object['keys'](c):[];return{...h,'properties':{...i,[d]:{'type':'string','enum':e,'description':k['includes'](d)?'Unknown\x20\x22'+d+'\x22\x20value\x20—\x20must\x20be\x20one\x20of\x20the\x20listed\x20values.\x20Per-variant\x20parameters:\x20schema_query\x20(action=\x27get\x27)':'Missing\x20\x22'+d+'\x22\x20—\x20set\x20it\x20to\x20one\x20of\x20the\x20listed\x20values.\x20Per-variant\x20parameters:\x20schema_query\x20(action=\x27get\x27)'}},'required':j['includes'](d)?j:[...j,d]};}function describeSchemaType(a){if(typeof a['type']==='string')return a['type'];if(Array['isArray'](a['type']))return a['type']['join']('|');if(a['$ref'])return'$ref';if(Array['isArray'](a['oneOf']))return'oneOf';if(Array['isArray'](a['anyOf']))return'anyOf';if(Array['isArray'](a['allOf']))return'allOf';if(a['enum'])return'enum';if(a['const'])return'const('+JSON['stringify'](a['const'])+')';return'object';}const MISMATCH_SCHEMA_MAX_DEPTH=0x18;function capSchemaDepth(a,b){if(b>=MISMATCH_SCHEMA_MAX_DEPTH){if(Array['isArray'](a))return'(depth-capped\x20—\x20use\x20schema_query\x20action=\x27get\x27\x20for\x20the\x20full\x20sub-schema)';if(a!==null&&typeof a==='object')return{'type':'object','description':'(depth-capped\x20—\x20use\x20schema_query\x20action=\x27get\x27\x20for\x20the\x20full\x20sub-schema)'};return a;}if(Array['isArray'](a))return a['map'](c=>capSchemaDepth(c,b+0x1));if(a!==null&&typeof a==='object'){const c={};for(const [d,e]of Object['entries'](a)){c[d]=capSchemaDepth(e,b+0x1);}return c;}return a;}export async function dispatchToolCall(a,b,c,d){return sanitizeToolDispatchResult(await dispatchToolCallRaw(a,b,c,d));}async function dispatchToolCallRaw(a,b,c,d){if(a==='wowok')return handleWowok(b,c,d);const e=TOOL_REGISTRY_MAP['get'](a);if(!e)throw new Error('Unknown\x20tool:\x20'+a+'.\x20Available:\x20'+TOOL_REGISTRY['map'](i=>i['name'])['join'](',\x20'));if(e['applyRules']&&!c?.['skipRules']){const i=await e['applyRules'](b);if(i)return i;}const f=dispatchWithHarness(e['handler'],a),g=e['timeoutMs']??0xea60,h=wrapHandlerWithErrorShape(f,g,a,e['errorShapeBuilder']);return h(b,d);}const TOOL_FIELD_ALIASES=['tool','tool_name','name'],DATA_FIELD_ALIASES=['data','args','params','parameters'],RESERVED_FIELD_NAMES=new Set([...TOOL_FIELD_ALIASES,...DATA_FIELD_ALIASES]);function normalizeInput(a){const b=[];if(!a||typeof a!=='object'||Array['isArray'](a))return{'tool':undefined,'data':{},'normalizationNotes':['input\x20is\x20not\x20an\x20object']};const c=a;let d;for(const f of TOOL_FIELD_ALIASES){if(typeof c[f]==='string'&&c[f]){d=c[f];f!=='tool'&&b['push']('normalized\x20\x27'+f+'\x27\x20→\x20\x27tool\x27');break;}}let e;for(const g of DATA_FIELD_ALIASES){const h=c[g];if(h!==undefined&&h!==null&&typeof h==='object'&&!Array['isArray'](h)){e=h;g!=='data'&&b['push']('normalized\x20\x27'+g+'\x27\x20→\x20\x27data\x27');break;}}if(!e){const i={};let j=![];for(const k of Object['keys'](c)){!RESERVED_FIELD_NAMES['has'](k)&&(i[k]=c[k],j=!![]);}j?(e=i,b['push']('extracted\x20inline\x20params\x20→\x20\x27data\x27\x20(no\x20data\x20wrapper\x20was\x20provided)')):e={};}return{'tool':d,'data':e,'normalizationNotes':b};}const QUERY_ACCOUNT_FIELD_ALIASES={'account_balance':{'canonical':'name_or_address','aliases':['account','address']},'onchain_personal_profile':{'canonical':'account','aliases':['name_or_address','address']},'address_profile':{'canonical':'address','aliases':['name_or_address','account']}};function normalizeQueryToolkitAliases(a,b){if(typeof a['query_type']!=='string')return;const c=QUERY_ACCOUNT_FIELD_ALIASES[a['query_type']];if(!c)return;if(a[c['canonical']]!==undefined)return;for(const d of c['aliases']){if(a[d]!==undefined){a[c['canonical']]=a[d],delete a[d],b['push']('query_toolkit\x20'+a['query_type']+':\x20normalized\x20\x27'+d+'\x27\x20→\x20\x27'+c['canonical']+'\x27');return;}}}const QUERY_NETWORK_CANONICAL={'testnet':'testnet','mainnet':'mainnet','localnet':'localnet'};function normalizeQueryNetworkSpellings(a,b){for(const c of['network','context_network']){const d=a[c];if(typeof d!=='string')continue;const e=QUERY_NETWORK_CANONICAL[d['trim']()['toLowerCase']()['replace'](/[-_]/g,'')];e&&d!==e&&(a[c]=e,b['push']('query_toolkit:\x20normalized\x20'+c+'\x20\x27'+d+'\x27\x20→\x20\x27'+e+'\x27'));}}async function handleWowok(a,b,c){const {tool:d,data:e,normalizationNotes:g}=normalizeInput(a);(d==='query_toolkit'||d==='onchain_table_data')&&normalizeQueryToolkitAliases(e,g);d==='query_toolkit'&&normalizeQueryNetworkSpellings(e,g);if(a&&typeof a==='object'&&!Array['isArray'](a)){const l=a;l['passport']!==undefined&&l['submission']===undefined&&(l['submission']=l['passport'],g['push']('accepted\x20top-level\x20\x27passport\x27\x20as\x20alias\x20for\x20\x27submission\x27'));if(l['submission']!==undefined){const m=e['submission'];if(m!==undefined)return{'content':[{'type':'text','text':'Schema\x20mismatch\x20for\x20'+d+'.\x201\x20error(s).\x20\x27submission\x27\x20was\x20provided\x20in\x20BOTH\x20the\x20top\x20level\x20and\x20inside\x20\x27data\x27\x20—\x20provide\x20it\x20in\x20only\x20ONE\x20place\x20(top\x20level\x20OR\x20data),\x20not\x20both.'}],'structuredContent':{'result':{'status':'schema_mismatch','errors':['\x27submission\x27\x20provided\x20twice:\x20top\x20level\x20AND\x20inside\x20data.\x20Provide\x20it\x20in\x20only\x20ONE\x20place.'],'structured_errors':[{'path':'submission','code':'duplicate_field','message':'\x27submission\x27\x20provided\x20both\x20at\x20the\x20top\x20level\x20and\x20inside\x20data.','suggestion':'Keep\x20the\x20submission\x20in\x20exactly\x20one\x20place:\x20either\x20wowok({tool,\x20data,\x20submission})\x20or\x20wowok({tool,\x20data:\x20{operation_type,\x20data:\x20{...},\x20env,\x20submission}}).'}],'hint':'Move\x20\x27submission\x27\x20to\x20a\x20single\x20location\x20and\x20retry.'},'schema':null}};e['submission']=l['submission'],g['push']('merged\x20top-level\x20\x27submission\x27\x20into\x20data');}}let h=![];{const n=a,o=n['data']!==undefined||n['args']!==undefined||n['params']!==undefined,p=n['env'],q=n['confirmed'];if(o&&(p!==undefined||q!==undefined)){const r=e,s=r['env']!==undefined&&typeof r['env']==='object'&&!Array['isArray'](r['env'])?{...r['env']}:{},t=p!==undefined&&typeof p==='object'&&!Array['isArray'](p)?p:{},u={...t,...s};q!==undefined&&u['confirmed']===undefined&&(u['confirmed']=q),Object['keys'](u)['length']>0x0&&(r['env']=u,h=!![],g['push']('merged\x20top-level\x20env/confirmed\x20into\x20data.env\x20(env\x20belongs\x20INSIDE\x20data)'));}}if(!d){const v=a&&typeof a==='object'&&!Array['isArray'](a)?Object['keys'](a)['join'](',\x20')||'(none)':'(non-object\x20input:\x20'+typeof a+')',w=['Missing\x20\x27tool\x27\x20field.\x20Received\x20keys:\x20'+v,'Expected\x20one\x20of:\x20'+SUB_TOOL_NAMES['join'](',\x20')];return{'content':[{'type':'text','text':'Missing\x20\x27tool\x27\x20field.\x20Call\x20format:\x20wowok({\x20tool:\x20\x22<sub-tool>\x22,\x20data:\x20{<params>}\x20}).\x20Received\x20keys:\x20'+v+'.\x20Available\x20sub-tools:\x20'+SUB_TOOL_NAMES['join'](',\x20')}],'structuredContent':{'result':{'status':'schema_mismatch','errors':w,'hint':'Provide\x20\x27tool\x27\x20(one\x20of:\x20'+SUB_TOOL_NAMES['join'](',\x20')+')\x20and\x20\x27data\x27\x20(sub-tool\x20parameters).\x20Aliases\x20accepted:\x20tool_name/name→tool,\x20args/params→data.','received':a},'schema':{'input':zodToJsonSchemaSafe(WowokToolDisplaySchema,'wowok'),'tool':'wowok'}}};}const i=TOOL_REGISTRY_MAP['get'](d);if(!i){const x=d['toLowerCase'](),y=x==='wowok',A=x['split']('_')['filter'](Boolean),B=y?[]:TOOL_REGISTRY['map'](E=>E['name'])['map'](E=>{const F=E['toLowerCase']()['split']('_');let G=0x0;if(F[0x0]===A[0x0])G+=0x2;G+=F['filter'](H=>A['includes'](H))['length'];if(F['some'](H=>H['startsWith'](A[A['length']-0x1]??'')))G+=0x1;return{'name':E,'score':G};})['filter'](E=>E['score']>0x0)['sort']((E,F)=>F['score']-E['score'])['slice'](0x0,0x5)['map'](E=>E['name']),C=y?'\x20NOTE:\x20\x27wowok\x27\x20is\x20the\x20DISPATCHER\x20tool\x20itself,\x20not\x20a\x20sub-tool.\x20Call\x20format:\x20wowok({\x20tool:\x20\x22<sub-tool-name>\x22,\x20data:\x20{<params>}\x20}).':'',D=B['length']>0x0?'.\x20Did\x20you\x20mean:\x20'+B['join'](',\x20')+'?':'';return{'content':[{'type':'text','text':'Unknown\x20sub-tool:\x20\x27'+d+'\x27.\x20Available:\x20'+TOOL_REGISTRY['map'](E=>E['name'])['join'](',\x20')+C+D}],'structuredContent':{'result':{'status':'error','errors':['Unknown\x20sub-tool:\x20'+d],'hint':'Available\x20sub-tools:\x20'+TOOL_REGISTRY['map'](E=>E['name'])['join'](',\x20')+C+D,'suggestions':B},'schema':null}};}g['length']>0x0&&console['warn']('[wowok]\x20input\x20normalization\x20for\x20\x27'+d+'\x27:\x20'+g['join'](';\x20'));{const E=e,F=E['env']&&typeof E['env']==='object'&&!Array['isArray'](E['env'])?E['env']:undefined;if(F?.['confirmed']!==undefined&&E['confirmed']===undefined){const G=zodUnionAwareKeyCheck(i['config']['inputSchema'],'confirmed');if(G['declared']&&!G['hasEnvSlot']){E['confirmed']=F['confirmed'],delete F['confirmed'];if(Object['keys'](F)['length']===0x0)delete E['env'];g['push']('routed\x20rescued\x20top-level\x20confirmed\x20to\x20the\x20tool\x27s\x20own\x20confirmed\x20slot'),console['warn']('[wowok]\x20input\x20normalization\x20for\x20\x27'+d+'\x27:\x20confirmed\x20slot\x20re-routed\x20(F-10)');}}}const j=i['config']['inputSchema']['safeParse'](e),k=checkUnknownFields(i['config']['inputSchema'],e);if(!j['success']||k['length']>0x0){const H=[];!j['success']&&H['push'](...formatZodErrors(j['error'],e));k['length']>0x0&&H['push']('Unknown\x20field(s):\x20'+k['join'](',\x20'));const I=[];!j['success']&&I['push'](...formatZodErrorsStructured(j['error'],e));if(k['length']>0x0)for(const T of k){I['push']({'path':T,'code':'unrecognized_keys','message':'Unknown\x20field\x20\x27'+T+'\x27\x20is\x20not\x20allowed','suggestion':'Remove\x20field\x20\x27'+T+'\x27\x20or\x20check\x20the\x20schema\x20for\x20valid\x20field\x20names'});}if(h){const U='A\x20top-level\x20env/confirmed\x20was\x20merged\x20into\x20data.env\x20automatically\x20(contra\x20F-01\x20rescue),\x20but\x20THIS\x20sub-tool\x20does\x20not\x20accept\x20env\x20in\x20data.\x20Operation\x20tools\x20(onchain_operations\x20etc.)\x20take\x20env\x20inside\x20data;\x20query\x20tools\x20take\x20plain\x20data\x20fields\x20(e.g.\x20network)\x20instead\x20—\x20drop\x20the\x20env\x20key\x20for\x20this\x20call.';H['push'](U),I['push']({'path':'env','code':'unrecognized_keys','message':'env\x20rescued\x20from\x20the\x20top\x20level,\x20but\x20this\x20sub-tool\x27s\x20data\x20schema\x20has\x20no\x20env\x20slot','suggestion':U});}const J=e??undefined,K=J!==undefined&&typeof J['operation_type']==='string'&&J['data']===undefined,L=I['some'](V=>String(V['path'])==='data'&&V['code']==='invalid_type'&&/received undefined/i['test'](V['message']));let M;if(L&&K)M='SHAPE\x20FIX\x20(rndb58d8d\x2004-ROOTCAUSE-A\x20A1):\x20operation\x20parameters\x20must\x20be\x20nested\x20INSIDE\x20a\x20\x27data\x27\x20object.\x20'+'The\x20envelope\x20is\x20{\x20operation_type:\x20\x27...\x27,\x20data:\x20{\x20<the\x20operation\x27s\x20parameters>\x20},\x20env?:\x20{...},\x20submission?:\x20{...}\x20}\x20'+'—\x20your\x20call\x20put\x20the\x20parameters\x20at\x20the\x20SAME\x20level\x20as\x20operation_type\x20(or\x20omitted\x20them),\x20so\x20\x27data\x27\x20arrived\x20undefined.\x20'+'Resend\x20with\x20the\x20parameters\x20wrapped\x20in\x20data.\x20This\x20is\x20a\x20static\x20shape\x20error,\x20NOT\x20session\x20state\x20—\x20no\x20restart\x20is\x20needed\x20'+'(this\x20server\x20is\x20stateless).\x20Also\x20discard\x20any\x20schema\x20slice\x20you\x20cached\x20from\x20an\x20earlier\x20call\x20for\x20a\x20DIFFERENT\x20'+'operation_type\x20—\x20slices\x20are\x20union-variant\x20specific\x20and\x20reusing\x20one\x20across\x20variants\x20mangles\x20the\x20payload.',H['push'](M),I['push']({'path':'data','code':'invalid_type','message':'parameters\x20must\x20be\x20nested\x20inside\x20data\x20(flat\x20envelope:\x20parameters\x20found\x20as\x20siblings\x20of\x20operation_type)','suggestion':M});else L&&(M='DIAGNOSTIC:\x20\x27data\x27\x20arrived\x20at\x20validation\x20as\x20undefined.\x20Send\x20the\x20tool\x27s\x20parameters\x20inside\x20the\x20\x27data\x27\x20object\x20'+'(for\x20onchain_operations:\x20{\x20operation_type:\x20\x27...\x27,\x20data:\x20{\x20<parameters>\x20},\x20env?,\x20submission?\x20}).\x20If\x20you\x20are\x20CERTAIN\x20'+'your\x20client\x20transmitted\x20a\x20well-formed\x20payload,\x20inspect\x20what\x20the\x20wrapper\x20actually\x20sent\x20before\x20retrying\x20—\x20identical\x20'+'retries\x20cannot\x20recover\x20from\x20a\x20construction\x20error.\x20(C-11\x27s\x20old\x20\x27wrapper\x20state\x20corruption\x20/\x20restart\x20the\x20session\x27\x20'+'conclusion\x20was\x20retired\x20by\x20rndb58d8d\x2004-ROOTCAUSE-A:\x20a\x20stateless\x20server\x20cannot\x20diagnose\x20caller-side\x20runtime\x20state.)',H['push'](M),I['push']({'path':'data','code':'invalid_type','message':'data\x20is\x20required\x20—\x20the\x20tool\x27s\x20parameters\x20belong\x20inside\x20the\x20data\x20object','suggestion':M}));const N=loadPreGeneratedSchema(d)??zodToJsonSchemaSafe(i['config']['inputSchema'],d),O=extractRelevantSchema(N,d,e),P=I[0x0]?.['suggestion']?'\x20FIRST\x20ERROR\x20SUGGESTION:\x20'+I[0x0]['suggestion']:'',Q=H['slice'](0x0,0x5)['map']((V,W)=>'\x20\x20'+(W+0x1)+'.\x20'+V)['join']('\x0a'),R=buildSchemaPreview(O,d,e),S=['Schema\x20mismatch\x20for\x20'+d+'.\x20'+H['length']+'\x20error(s).'+P,Q,...M?['','⚠\x20'+M]:[],'',R,'','Fix\x20the\x20parameters\x20based\x20on\x20the\x20errors\x20above\x20and\x20the\x20schema\x20summary,\x20then\x20retry.','Full\x20JSON\x20Schema\x20is\x20in\x20the\x20structuredContent.schema.input\x20field\x20(cache\x20it\x20ONLY\x20for\x20future\x20'+d+'\x20calls\x20with\x20the\x20SAME\x20operation_type/variant\x20—\x20slices\x20are\x20branch-specific;\x20a\x20different\x20operation_type\x20needs\x20a\x20fresh\x20schema).','Structured\x20errors\x20with\x20fix\x20suggestions\x20are\x20in\x20structuredContent.result.structured_errors\x20(ARCH-02).',SKILLS_MISMATCH_POINTER]['filter'](Boolean)['join']('\x0a');return{'content':[{'type':'text','text':S}],'structuredContent':{'result':{'status':'schema_mismatch','errors':H,'structured_errors':I,'hint':schemaMismatchHint(d)},'schema':{'input':capSchemaDepth(compactMismatchSchemaInput(O,e),0x0),'tool':d}}};}try{const V=await dispatchToolCall(d,e,b,c);if(V['resultType']==='input_required')return V;const W=V['structuredContent'],X=W?.['result'],Y=X?.['status']==='error'||X?.['status']==='schema_mismatch'||X?.['operation']==='error'||X?.['type']==='error';if(Y){const a3={'status':'error','data':V['structuredContent'],'errors':[V['content'][0x0]?.['text']??'Sub-tool\x20returned\x20an\x20error']};if(typeof X?.['error_code']==='string')a3['error_code']=X['error_code'];if(typeof X?.['retryable']==='boolean')a3['retryable']=X['retryable'];if(typeof X?.['recovery_hint']==='string')a3['recovery_hint']=X['recovery_hint'];return{'content':V['content'],'structuredContent':{'result':a3,'schema':null}};}const Z=typeof W?.['outcome']==='string'?W['outcome']:undefined,a0=W?.['verdict'],a1=a0!==undefined&&typeof a0==='object'&&a0['buildable']===![],a2=a1?'error':Z===undefined||Z==='executed'?'success':Z==='failed'?'error':'pending';return{'content':V['content'],'structuredContent':{'result':{'status':a2,...Z!==undefined?{'outcome':Z}:{},...a1?{'errors':['Plan\x20audit\x20BLOCKED\x20(verdict.buildable=false)\x20—\x20see\x20data.verdict.blockers\x20and\x20data.next_action.\x20Do\x20NOT\x20materialize\x20this\x20plan.']}:{},'data':V['structuredContent']},'schema':null}};}catch(a4){const a5=a4 instanceof Error?a4['message']:String(a4);if(isSchemaValidationError(a5)){const a9=loadPreGeneratedSchema(d)??zodToJsonSchemaSafe(i['config']['inputSchema'],d),aa=extractRelevantSchema(a9,d,e),ab=buildSchemaPreview(aa,d,e),ac=[{'path':'(runtime)','code':'schema_validation_error','message':a5,'suggestion':'Check\x20the\x20error\x20message\x20and\x20the\x20schema\x20below\x20for\x20the\x20correct\x20field\x20format'}],ad=['Schema\x20mismatch\x20for\x20'+d+':\x20'+a5,'',ab,'','Fix\x20the\x20parameters\x20and\x20retry.\x20Full\x20JSON\x20Schema\x20is\x20in\x20structuredContent.schema.input.','Structured\x20errors\x20with\x20fix\x20suggestions\x20are\x20in\x20structuredContent.result.structured_errors\x20(ARCH-02).',SKILLS_MISMATCH_POINTER]['join']('\x0a');return{'content':[{'type':'text','text':ad}],'structuredContent':{'result':{'status':'schema_mismatch','errors':[a5],'structured_errors':ac,'hint':schemaMismatchHint(d)},'schema':{'input':compactMismatchSchemaInput(aa,e),'tool':d}}};}const a6=/Unexpected token.*?\((\d+):(\d+)\)/['exec'](a5)??(/^(Unexpected end of JSON input|JSON\.parse)/['test'](a5)?[a5,'','']:null);if(a6){const ae=a6[0x1]?Number(a6[0x1]):undefined,af=a6[0x2]?Number(a6[0x2]):undefined,ag=ae!==undefined?'\x20at\x20line\x20'+ae+',\x20column\x20'+af:'',ah=loadPreGeneratedSchema(d)??zodToJsonSchemaSafe(i['config']['inputSchema'],d),ai=extractRelevantSchema(ah,d,e),aj=[{'path':'(root)','code':'malformed_json','message':'A\x20JSON\x20string\x20in\x20the\x20arguments\x20could\x20not\x20be\x20parsed'+ag+':\x20'+a5+'.\x20'+'Any\x20argument\x20passed\x20as\x20a\x20STRING\x20must\x20itself\x20be\x20valid\x20JSON.','suggestion':'Send\x20objects/arrays\x20as\x20real\x20JSON\x20values,\x20not\x20as\x20stringified\x20JSON.\x20'+'If\x20a\x20string\x20field\x20is\x20genuinely\x20textual\x20(description,\x20message,\x20remark),\x20it\x20must\x20NOT\x20be\x20quoted-and-escaped\x20JSON.\x20'+'If\x20the\x20argument\x20shape\x20is\x20confirmed\x20valid,\x20the\x20payload\x20may\x20have\x20been\x20TRUNCATED\x20before\x20parsing\x20—\x20arguments\x20past\x20a\x20'+'transport\x20size\x20limit\x20fail\x20with\x20this\x20same\x20envelope;\x20shrink\x20the\x20payload\x20(fewer\x20or\x20smaller\x20items)\x20and\x20retry.'}];return{'content':[{'type':'text','text':['Malformed\x20JSON\x20in\x20the\x20arguments\x20to\x20'+d+ag+':\x20'+a5,'',buildSchemaPreview(ai,d,e),'','Fix\x20the\x20parameters\x20and\x20retry.\x20Full\x20JSON\x20Schema\x20is\x20in\x20structuredContent.schema.input.']['join']('\x0a')}],'structuredContent':{'result':{'status':'schema_mismatch','errors':[a5],'structured_errors':aj,'hint':schemaMismatchHint(d)},'schema':{'input':compactMismatchSchemaInput(ai,e),'tool':d}}};}const a7=classifyError(a5),a8={'status':'error','errors':[a5]};if(a7['error_code']!==undefined)a8['error_code']=a7['error_code'];if(a7['retryable']!==undefined)a8['retryable']=a7['retryable'];if(a7['recovery_hint']!==undefined)a8['recovery_hint']=a7['recovery_hint'];return{'content':[{'type':'text','text':'Error:\x20'+a5}],'structuredContent':{'result':a8,'schema':null}};}}function zodToJsonSchemaSafe(a,b){try{const c=z['toJSONSchema'](a,{'unrepresentable':'any','target':'draft-07'});if(c&&typeof c==='object'&&!Array['isArray'](c)){const {$schema:d,...e}=c;return e;}return{'type':'object'};}catch{return{'type':'object','additionalProperties':!![]};}}function resolveSchemaRefs(a){const b=new Set(['definitions','$schema','$id']);function c(e){if(!e['startsWith']('#/'))return null;const f=e['slice'](0x2)['split']('/');let g=a;for(const h of f){if(g==null||typeof g!=='object')return null;g=g[h];}return g;}function d(e,f){if(!e||typeof e!=='object')return e;if(Array['isArray'](e))return e['map'](i=>d(i,f));const g=e;if(typeof g['$ref']==='string'){const i=g['$ref'];if(f['has'](i))return{'type':'object','additionalProperties':!![]};const j=c(i);if(j&&typeof j==='object'&&!Array['isArray'](j)){const l=new Set(f);l['add'](i);const m=d(j,l),n={};for(const [o,p]of Object['entries'](g)){if(o!=='$ref'&&!b['has'](o))n[o]=p;}return{...m,...n};}return{'type':'object','additionalProperties':!![]};}const h={};for(const [q,r]of Object['entries'](g)){if(b['has'](q))continue;h[q]=d(r,f);}return h;}return d(a,new Set());}function loadPreGeneratedSchema(a){const b=preGeneratedSchemaCache['get'](a);if(b)return b;for(const c of SCHEMA_DIR_CANDIDATES){try{const d=join(c,a+'.schema.json'),e=readFileSync(d,'utf-8'),f=JSON['parse'](e),g=resolveSchemaRefs(f);return preGeneratedSchemaCache['set'](a,g),g;}catch{}}return null;}export function listTools(){return[{'name':'wowok','title':'WoWok\x20MCP','description':WOWOK_TOOL_DESCRIPTION,'inputSchema':resolveSchemaRefs(zodToJsonSchemaSafe(WowokToolDisplaySchema,'wowok'))}];}export function registerAllTools(a){const b=0x2bf20,c=async(e,f)=>handleWowok(e,undefined,f),d=wrapHandlerWithErrorShape(c,b,'wowok',undefined);a['registerTool']('wowok',{'title':'WoWok\x20MCP','description':WOWOK_TOOL_DESCRIPTION,'inputSchema':WowokToolRuntimeSchema,'annotations':{'readOnlyHint':![],'destructiveHint':!![],'idempotentHint':![],'openWorldHint':!![]}},async(e,f)=>sanitizeToolDispatchResult(await d(e,f?.['mcpReq']?.['inputResponses']?{'inputResponses':f['mcpReq']['inputResponses']}:undefined))),overrideToolsListHandler(a);}function overrideToolsListHandler(a){a['server']['setRequestHandler']('tools/list',()=>({'tools':[{'name':'wowok','title':'WoWok\x20MCP','description':WOWOK_TOOL_DESCRIPTION,'inputSchema':ensureObjectType(zodToJsonSchemaSafe(WowokToolDisplaySchema,'wowok')),'annotations':{'readOnlyHint':![],'destructiveHint':!![],'idempotentHint':![],'openWorldHint':!![]}}]}));}function ensureObjectType(a){if(a['type']==='object')return a;return{...a,'type':'object'};}
1
+ import{z}from'zod';import{readFileSync}from'fs';import{fileURLToPath}from'url';import{dirname,join}from'path';import{fromJsonSchema}from'@modelcontextprotocol/server';const __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename),SCHEMA_DIR_CANDIDATES=[join(__dirname,'..','schemas'),join(__dirname,'..','..','dist','schemas')],preGeneratedSchemaCache=new Map();import{wrapHandlerWithErrorShape,dispatchWithHarness,withTimeout}from'./wrap.js';import{sanitizeToolDispatchResult}from'./sanitize-output.js';import{getStartupUpgradeNotice,upgradePolicyPath}from'./upgrade-check.js';import{classifyError}from'../schema/call/semantic.js';import{findLatin1Mojibake,mojibakeBlockResult}from'./transport-integrity.js';import{ONCHAIN_TOOLS}from'./registry/onchain.js';import{LOCAL_TOOLS}from'./registry/local.js';import{FILE_TOOLS}from'./registry/files.js';import{MESSENGER_TOOLS}from'./registry/messenger.js';import{QUERY_TOOLS}from'./registry/query.js';import{BRIDGE_TOOLS}from'./registry/bridge.js';import{CONFIG_TOOLS}from'./registry/config.js';import{EVALUATION_TOOLS}from'./registry/evaluation.js';import{IDENTITY_TOOLS}from'./registry/identity.js';import{BUSINESS_TOOLS}from'./registry/business.js';import{AGENT_TOOLS}from'./registry/agent.js';import{MONITOR_TOOLS}from'./registry/monitor.js';import{INTERACTION_TOOLS}from'./registry/interaction.js';export{monitorEventStore,MonitorEventStore,monitorEventId}from'../monitor/EventStore.js';export{monitorLoop,MonitorLoop}from'../monitor/MonitorLoop.js';export{MONITOR_CAPTURE_TYPES}from'../monitor/normalize.js';export{NETWORK_FIELD_BY_QUERY}from'./handlers/query.js';export{resolveGateControls,resolveEffectiveOverrides}from'../persona/index.js';export{SYSTEM_OVERRIDE_SETTINGS}from'../persona/index.js';export const TOOL_REGISTRY=[...ONCHAIN_TOOLS,...LOCAL_TOOLS,...FILE_TOOLS['slice'](0x0,0x1),...MESSENGER_TOOLS,...FILE_TOOLS['slice'](0x1),...QUERY_TOOLS,...BRIDGE_TOOLS,...CONFIG_TOOLS,...EVALUATION_TOOLS,...IDENTITY_TOOLS,...BUSINESS_TOOLS,...AGENT_TOOLS,...MONITOR_TOOLS,...INTERACTION_TOOLS];export const TOOL_REGISTRY_MAP=new Map(TOOL_REGISTRY['map'](a=>[a['name'],a]));export const SUB_TOOL_COUNT=TOOL_REGISTRY['length'];const SUB_TOOL_NAMES=TOOL_REGISTRY['map'](a=>a['name']),WowokToolRuntimeSchema=fromJsonSchema({'type':'object'}),WowokToolDisplaySchema=z['object']({'tool':z['enum'](SUB_TOOL_NAMES)['optional']()['describe']('The\x20sub-tool\x20to\x20execute.\x20Each\x20sub-tool\x20has\x20its\x20own\x20parameter\x20schema.'),'data':z['record'](z['string'](),z['unknown']())['optional']()['describe']('Sub-tool\x20specific\x20parameters.\x20If\x20validation\x20fails,\x20the\x20response\x20includes\x20the\x20correct\x20schema\x20for\x20this\x20sub-tool\x20—\x20read\x20it,\x20fix\x20your\x20params,\x20and\x20retry.'),'submission':z['record'](z['string'](),z['unknown']())['optional']()['describe']('Guard\x20submission\x20slots\x20(top-level\x20placement,\x20sibling\x20of\x20data/env).\x20Alternative:\x20place\x20inside\x20data.'),'env':z['record'](z['string'](),z['unknown']())['optional']()['describe']('Environment\x20(account/network/confirmed/...).\x20Top-level\x20placement\x20is\x20folded\x20into\x20data.env.'),'tool_name':z['enum'](SUB_TOOL_NAMES)['optional']()['describe']('DEPRECATED\x20alias\x20for\x20\x27tool\x27.\x20Use\x20\x27tool\x27\x20instead.'),'args':z['record'](z['string'](),z['unknown']())['optional']()['describe']('DEPRECATED\x20alias\x20for\x20\x27data\x27.\x20Use\x20\x27data\x27\x20instead.'),'name':z['enum'](SUB_TOOL_NAMES)['optional']()['describe']('DEPRECATED\x20alias\x20for\x20\x27tool\x27.\x20Use\x20\x27tool\x27\x20instead.'),'params':z['record'](z['string'](),z['unknown']())['optional']()['describe']('DEPRECATED\x20alias\x20for\x20\x27data\x27.\x20Use\x20\x27data\x27\x20instead.')})['describe']('WoWok\x20unified\x20tool\x20input.\x20Call\x20with\x20{\x20tool:\x20\x22<sub-tool>\x22,\x20data:\x20{<params>}\x20}.\x20'+'Aliases:\x20tool_name/name→tool,\x20args/params→data.'),SUB_TOOL_LIST=TOOL_REGISTRY['map'](a=>'\x20\x20'+a['name']+'\x20—\x20'+a['config']['summary'])['join']('\x0a'),SKILLS_MISMATCH_POINTER='Structured\x20role-based\x20guidance\x20(WHEN\x20and\x20in\x20what\x20ORDER\x20to\x20use\x20WoWok\x20sub-tools)\x20is\x20available\x20via\x20the\x20WoWok\x20Skills:\x20install\x20with\x20\x22npm\x20install\x20-g\x20@wowok'+'/skills\x22\x20(verify\x20with\x20\x22wowok-skills\x20doctor\x22),\x20or\x20fetch\x20orientation\x20now\x20via\x20wowok_buildin_info\x20info=\x22getting\x20started\x22.';function schemaMismatchHint(a){return'Fix\x20your\x20parameters\x20based\x20on\x20the\x20schema\x20below\x20and\x20retry.\x20CACHE\x20THIS\x20SCHEMA\x20for\x20future\x20'+a+'\x20calls\x20—\x20you\x20don\x27t\x20need\x20to\x20query\x20it\x20again.\x0a'+SKILLS_MISMATCH_POINTER;}const WOWOK_TOOL_DESCRIPTION=['WoWok\x20MCP\x20unified\x20interface.\x20Call\x20with\x20{\x20tool:\x20\x22<sub-tool>\x22,\x20data:\x20{<params>}\x20}.','','\x20\x20▶\x20START\x20HERE\x20—\x20WoWok\x20Skills\x20(recommended):','\x20\x20\x20\x20Role-based\x20playbooks\x20(onboarding,\x20building,\x20buying,\x20fulfillment,\x20arbitration,\x20governance)','\x20\x20\x20\x20sit\x20ON\x20TOP\x20of\x20this\x20MCP\x20and\x20materially\x20reduce\x20failed\x20calls\x20by\x20telling\x20you\x20WHEN\x20and\x20in\x20what','\x20\x20\x20\x20ORDER\x20to\x20use\x20the\x2030+\x20sub-tools\x20below.\x20One\x20command\x20installs\x20them\x20into\x20every\x20detected\x20AI','\x20\x20\x20\x20client\x20AND\x20registers\x20this\x20MCP\x20server\x20(idempotent\x20postinstall):','\x20\x20\x20\x20\x20\x20npm\x20install\x20-g\x20@wowok'+'/skills','\x20\x20\x20\x20Verify:\x20wowok-skills\x20doctor\x20\x20\x20Repair\x20an\x20old\x20install:\x20wowok-skills\x20init\x20--force','\x20\x20\x20\x20Machine-readable\x20orientation\x20+\x20best-effort\x20detection\x20of\x20whether\x20skills\x20are\x20installed\x20here:','\x20\x20\x20\x20\x20\x20wowok({\x20tool:\x20\x22wowok_buildin_info\x22,\x20data:\x20{\x20info:\x20\x22getting\x20started\x22\x20}\x20})','\x20\x20▶\x20COLD\x20START:\x20the\x20FIRST\x20call\x20after\x20server\x20boot\x20can\x20take\x20~20\x20seconds\x20(server\x20bootstraps\x20via\x20npx).','\x20\x20\x20\x20Wait\x20for\x20it\x20—\x20a\x20timed-out\x20first\x20response\x20is\x20startup\x20latency,\x20not\x20a\x20broken\x20server,\x20and\x20never\x20a','\x20\x20\x20\x20reason\x20to\x20retry\x20a\x20write\x20transaction.\x20Later\x20calls\x20are\x20fast.','','\x20\x20tool:\x20name\x20of\x20the\x20sub-tool\x20(string)','\x20\x20data:\x20sub-tool\x20parameters\x20(object)','','\x20\x20Aliases\x20accepted\x20(deprecated):\x20tool_name/name\x20for\x20tool,\x20args/params\x20for\x20data.','\x20\x20Inline\x20params\x20also\x20accepted:\x20{\x20tool:\x20\x22<sub-tool>\x22,\x20<param1>:\x20...,\x20<param2>:\x20...\x20}','\x20\x20⚠️\x20RESERVED\x20KEYS\x20cannot\x20be\x20passed\x20inline:\x20name\x20/\x20tool_name\x20/\x20args\x20/\x20params\x20are\x20the','\x20\x20deprecated\x20aliases\x20themselves\x20—\x20an\x20inline\x20\x27name\x27\x20is\x20consumed\x20as\x20the\x20tool\x20alias\x20and','\x20\x20never\x20reaches\x20the\x20sub-tool.\x20Pass\x20such\x20fields\x20inside\x20data\x20instead.','','\x20\x20EXAMPLE:\x20wowok({\x20tool:\x20\x22schema_query\x22,\x20data:\x20{\x20action:\x20\x22get\x22,\x20name:\x20\x22onchain_operations\x22\x20}\x20})','\x20\x20EXAMPLE:\x20wowok({\x20tool:\x20\x22wowok_buildin_info\x22,\x20data:\x20{\x20info:\x20\x22mainnet\x20bridge\x20tokens\x22\x20}\x20})','\x20\x20EXAMPLE\x20(inline\x20params):\x20wowok({\x20tool:\x20\x22query_toolkit\x22,\x20query_type:\x20\x22account_list\x22\x20})','','Available\x20sub-tools\x20('+SUB_TOOL_COUNT+'):',SUB_TOOL_LIST,'','SCHEMA-GATED\x20EXECUTION:','\x20\x20If\x20your\x20parameters\x20don\x27t\x20match\x20the\x20sub-tool\x27s\x20schema,\x20the\x20response\x20will\x20include:','\x20\x20\x20\x20result.status\x20=\x20\x22schema_mismatch\x22','\x20\x20\x20\x20result.errors\x20=\x20specific\x20validation\x20errors\x20(field\x20path\x20+\x20expected\x20type)','\x20\x20\x20\x20result.hint\x20=\x20instructions\x20to\x20fix\x20and\x20retry','\x20\x20\x20\x20schema.input\x20=\x20the\x20correct\x20JSON\x20schema\x20for\x20the\x20sub-tool','\x20\x20\x20\x20schema.tool\x20=\x20which\x20sub-tool\x20this\x20schema\x20belongs\x20to','\x20\x20Read\x20the\x20schema,\x20fix\x20your\x20params,\x20and\x20retry.\x20This\x20is\x20normal\x20—\x20no\x20need\x20to\x20call\x20schema_query\x20separately.','','SCHEMA\x20CACHING:','\x20\x20Each\x20sub-tool\x20has\x20a\x20DIFFERENT\x20schema.\x20When\x20you\x20receive\x20a\x20schema\x20in\x20a\x20mismatch\x20response:','\x20\x20\x20\x201.\x20Read\x20the\x20schema\x20carefully','\x20\x20\x20\x202.\x20Fix\x20your\x20parameters','\x20\x20\x20\x203.\x20Retry\x20the\x20call','\x20\x20\x20\x204.\x20CACHE\x20the\x20schema\x20in\x20your\x20context\x20for\x20future\x20calls\x20to\x20the\x20SAME\x20sub-tool','\x20\x20You\x20should\x20only\x20need\x20to\x20see\x20each\x20sub-tool\x27s\x20schema\x20once\x20per\x20conversation.','','ON-CHAIN\x20BUSINESS\x20INTELLIGENCE\x20(query_toolkit,\x20READ-ONLY\x20—\x20no\x20local\x20project\x20entity):','\x20\x20query_toolkit\x20query_type=\x27service_panorama\x27\x20→\x20ONE-CALL\x20full\x20Service\x20context\x20(workflow\x20graph,\x20guards,\x20supply\x20chain,\x20orders)','\x20\x20query_toolkit\x20query_type=\x27machine_panorama\x27\x20→\x20Machine\x20context\x20(head\x20+\x20fields\x20+\x20workflow\x20graph\x20+\x20Progress\x20list)','\x20\x20query_toolkit\x20query_type=\x27object_panorama\x27\x20→\x20detail\x20panorama\x20for\x20Progress/Demand/Order/Arb/Repository','\x20\x20query_toolkit\x20query_type=\x27review_pack\x27\x20→\x20typed\x20ReviewPack\x20for\x20the\x20client\x27s\x20generic\x20ReviewPackRenderer','\x20\x20query_toolkit\x20query_type=\x27assemble_context\x27\x20→\x20semantic\x20context\x20assembly\x20from\x20on-chain\x20objects','\x20\x20query_toolkit\x20query_type=\x27reverse_map\x27\x20→\x20deterministic\x20L4→L1\x20business\x20report\x20(merchant\x20profile\x20/\x20user\x20risk\x20/\x20game\x20theory)','\x20\x20query_toolkit\x20query_type=\x27participation_radar\x27\x20→\x20in-flight\x20order\x20participation\x20analysis\x20for\x20ONE\x20account','\x20\x20query_toolkit\x20query_type=\x27order_aggregate\x27\x20→\x20CROSS-ORDER\x20aggregate\x20(count\x20+\x20exact\x20amount\x20sums\x20per\x20service/machine/owner,\x20funding-target\x20checks\x20like\x20\x273\x20x\x206\x20>=\x2018\x27)','\x20\x20query_toolkit\x20query_type=\x27relationship_profile\x27\x20→\x20business\x20relationship\x20graph\x20for\x20ONE\x20account\x20(power/interest/value-flow\x20edges,\x20K3/19)','\x20\x20industry_pack_operation\x20action=\x27recommend_industry\x27/\x27list_modes\x27\x20→\x20industry\x20mode\x20registry\x20(GLM6/92\x20§E)','\x20\x20strategy_review_operation\x20action=\x27collect\x27/\x27review\x27/\x27list_snapshots\x27\x20→\x20posture-weighted\x20scorecard\x20+\x20periodic\x20review\x20(current-layer\x20proposals\x20only)','\x20\x20goal_operation\x20action=\x27merchant_guide\x27\x20→\x2010-step\x20merchant\x20onboarding\x20wizard\x20(never\x20executes\x20on-chain\x20ops)','\x20\x20benchmark_migration_operation\x20→\x20industry\x20archetype\x20templates\x20+\x20one-click\x20competitor\x20migration:','\x20\x20\x20\x20template_list\x20/\x20template_get\x20/\x20template_scan\x20(pre-deploy\x20risk\x20scan)\x20/\x20template_generate\x20(creation\x20plan)','\x20\x20\x20\x20migration_import\x20(store\x20URL/description\x20→\x20MigrationLog)\x20→\x20migration_review\x20(user\x20confirmation)\x20→\x20migration_apply\x20(scan-first\x20creation\x20plan;\x20testnet\x20default)','','═══════════════════════════════════════════════════════════════','BUILD/BUY\x20POLICY\x20(no\x20local\x20projects\x20—\x20chain\x20state\x20is\x20the\x20source\x20of\x20truth):','═══════════════════════════════════════════════════════════════','','CASE\x201\x20—\x20COMPLEX\x20REQUIREMENT\x20(user\x20wants\x20to\x20build/deploy\x20a\x20full\x20service):','\x20\x20→\x20Plan\x20with\x20goal_operation\x20action=\x27analyze_intent\x27\x20(C1:\x20intent\x20→\x20per-object\x20puzzle\x20snapshots\x20+\x20creation\x20order),','\x20\x20\x20\x20then\x20\x27aggregate_risks\x27\x20(C2:\x20cross-object\x20risk\x20calibration)\x20and\x20\x27trace_substeps\x27\x20(C3:\x20substep\x20DAG\x20coherence).','\x20\x20→\x20Alternatively\x20run\x20goal_operation\x20action=\x27merchant_guide\x27\x20for\x20a\x20guided\x2010-step\x20onboarding\x20plan.','\x20\x20→\x20If\x20the\x20user\x20wants\x20to\x20build\x20LIKE\x20an\x20industry\x20archetype\x20(\x27build\x20like\x20the\x20retail\x20leader\x20model\x27)\x20or','\x20\x20\x20\x20MIGRATE\x20an\x20existing\x20store\x20(hands\x20over\x20a\x20store\x20URL/description),\x20use\x20benchmark_migration_operation','\x20\x20\x20\x20(template_list\x20→\x20template_scan\x20→\x20template_generate,\x20or\x20migration_import\x20→\x20migration_review\x20→\x20migration_apply).','\x20\x20→\x20Create\x20objects\x20via\x20onchain_operations,\x20then\x20publish\x20the\x20Service.','','CASE\x202\x20—\x20SINGLE\x20OBJECT\x20CREATION\x20(user\x20wants\x20one\x20specific\x20object):','\x20\x20→\x20Create\x20directly\x20via\x20onchain_operations.\x20No\x20project\x20bookkeeping\x20needed.','','CASE\x203\x20—\x20CONSUMER\x20FLOW\x20(user\x20wants\x20to\x20buy/evaluate\x20a\x20service):','\x20\x20→\x20query_toolkit\x20query_type=\x27service_panorama\x27\x20or\x20\x27review_pack\x27\x20for\x20the\x20detail\x20page,','\x20\x20\x20\x20\x27reverse_map\x27\x20for\x20the\x20deterministic\x20buy\x20report\x20(add\x20Machine/Allocation\x20for\x20refund-path\x20detection),','\x20\x20\x20\x20then\x20onchain_operations\x20service_buy.','','CASE\x204\x20—\x20SIMPLE\x20QUERY\x20(user\x20wants\x20to\x20check\x20object\x20info,\x20balance,\x20etc.):','\x20\x20→\x20Proceed\x20directly\x20with\x20the\x20query.','═══════════════════════════════════════════════════════════════']['join']('\x0a');function joinIssuePath(a){return a['length']>0x0?a['map'](b=>typeof b==='number'?'['+b+']':String(b))['join']('.')['replace']('.[','['):'(root)';}function unionVariantErrors(a){const b=a,d=b['errors']??b['unionErrors']??b['issues'];if(!Array['isArray'](d))return[];const e=[];for(const f of d){if(!f)continue;if(Array['isArray'](f))f['every'](g=>!!g&&typeof g==='object'&&'code'in g)&&e['push']({'issues':f});else typeof f==='object'&&Array['isArray'](f['issues'])&&e['push']({'issues':f['issues']});}return e;}function variantScore(a){let b=0x0;for(const c of a['issues']){b+=0xa;const d=c;if(c['code']==='invalid_type')d['received']==='undefined'?b+=0x14:b-=0x5;else{if(c['code']==='unrecognized_keys'){const e=Array['isArray'](d['keys'])?d['keys']['length']:0x1;b+=0xf+e*0x5;}else{if(c['code']==='invalid_union'){const f=unionVariantErrors(c);if(f['length']>0x0)b+=Math['min'](...f['map'](variantScore));}}}}return b;}function variantSummary(a,b=0x3){const c=[];for(const e of a['issues']){const f=e;if(e['code']==='unrecognized_keys'){const g=Array['isArray'](f['keys'])?f['keys']['join'](',\x20'):'?';c['push']('unknown\x20field(s):\x20'+g);}else e['code']==='invalid_type'&&f['received']==='undefined'?c['push']('missing:\x20'+joinIssuePath([...e['path']])):c['push'](e['code']+'\x20at\x20'+joinIssuePath([...e['path']]));if(c['length']>=b)break;}const d=a['issues']['length']>b?'\x20(+'+(a['issues']['length']-b)+'\x20more)':'';return c['length']>0x0?c['join'](';\x20')+d:'shape\x20mismatch';}function resolveIssuePath(a,b){if(a['length']===0x0)return joinIssuePath(b);const c=b['length']>=a['length']&&a['every']((d,e)=>b[e]===d);return joinIssuePath(c?b:[...a,...b]);}function subToolRoutingHint(a,b){if(a!=='query_type')return'';const c=b['toLowerCase']();if(c['startsWith']('onchain_table'))return'\x20—\x20ROUTING:\x20table\x20/\x20table-item\x20queries\x20belong\x20to\x20the\x20SEPARATE\x20\x27onchain_table_data\x27\x20tool\x20—\x20call\x20onchain_table_data\x20with\x20this\x20query_type\x20(and\x20its\x20parent/address\x20params)\x20instead\x20of\x20query_toolkit';return'';}function matchedVariantLegalKeys(a){if(!a||typeof a!=='object')return[];const b=a['properties'];if(!b||typeof b!=='object'||Array['isArray'](b))return[];return Object['keys'](b)['sort']();}function absoluteIssuePath(a,b){const c=a['length']>0x0&&b['length']>=a['length']&&a['every']((d,e)=>b[e]===d);return c?b:[...a,...b];}function pushFlattened(a,b,c,d,e=[]){for(const f of a['issues']){if(f['code']==='invalid_union'){const g=f,h=[...f['path']],i=Array['isArray'](g['errors'])?g['errors']['length']:Array['isArray'](g['unionErrors'])?g['unionErrors']['length']:0x0,j=unionVariantErrors(f);if(j['length']===0x0){const o=resolveIssuePath(e,h),p=c!==undefined?extractValueAtPath(c,absoluteIssuePath(e,h)):undefined,q=p!==undefined;let r;if(i>0x0)r=(q?'value\x20does\x20not\x20match\x20any\x20of\x20the\x20union\x27s':'missing\x20required\x20union\x20field\x20—\x20no\x20value\x20provided;\x20union\x20accepts')+'\x20'+i+'\x20shape(s);\x20see\x20the\x20schema\x20preview\x20for\x20the\x20accepted\x20fields';else{if(q&&p&&typeof p==='object'&&!Array['isArray'](p)){const s=p,t=['operation_type','query_type','type','action','op']['find'](u=>typeof s[u]==='string');r=t?'discriminator\x20\x27'+t+'\x27=\x22'+String(s[t])+'\x22\x20does\x20not\x20match\x20any\x20variant;\x20check\x20the\x20\x22Valid\x20\x27'+t+'\x27\x20values\x22\x20line\x20in\x20the\x20schema\x20preview\x20below'+subToolRoutingHint(t,String(s[t])):'value\x20does\x20not\x20match\x20any\x20union\x20variant\x20(no\x20per-variant\x20details\x20available);\x20see\x20the\x20schema\x20preview';}else{if(q&&typeof p==='string'&&h['length']>0x0){const u=String(h[h['length']-0x1]);r='discriminator\x20\x27'+u+'\x27=\x22'+p+'\x22\x20does\x20not\x20match\x20any\x20variant;\x20check\x20the\x20\x22Valid\x20\x27'+u+'\x27\x20values\x22\x20line\x20in\x20the\x20schema\x20preview\x20below'+subToolRoutingHint(u,p);}else r='value\x20does\x20not\x20match\x20any\x20union\x20variant\x20(no\x20per-variant\x20details\x20available);\x20see\x20the\x20schema\x20preview';}}b['push']({'kind':'header','path':o,'code':'invalid_union','message':r});d&&(b[b['length']-0x1]={'kind':'header','path':o+'\x20['+d+']','code':'invalid_union','message':r});continue;}const k=j['map']((v,w)=>({'idx':w,'err':v,'score':variantScore(v)}))['sort']((v,w)=>v['score']-w['score']),l=k[0x0],m=k['slice'](0x1)['map'](v=>'variant\x20'+(v['idx']+0x1)+':\x20'+variantSummary(v['err']))['join']('\x20|\x20');b['push']({'kind':'header','path':resolveIssuePath(e,h),'code':'invalid_union','message':'no\x20union\x20variant\x20matched\x20('+j['length']+'\x20checked);\x20closest\x20=\x20variant\x20'+(l['idx']+0x1)+'\x20—\x20it\x20fails\x20on:\x20'+variantSummary(l['err'])+(m?'\x20—\x20others:\x20'+m:'')});const n=h['length']>0x0&&h['every']((v,w)=>e[w]===v)?h:[...e,...h];pushFlattened(l['err'],b,c,'variant\x20'+(l['idx']+0x1),n);}else b['push']({'kind':'issue','issue':f,'variantTag':d,'pathPrefix':e});}}function flattenZodIssues(a,b){const c=[];pushFlattened(a,c,b);const d=(f,g)=>{if(f['kind']!=='issue'||g['kind']!=='issue')return![];const h=absoluteIssuePath(f['pathPrefix']??[],f['issue']['path']),i=absoluteIssuePath(g['pathPrefix']??[],g['issue']['path']);return i['length']>h['length']&&h['every']((j,l)=>i[l]===j);},e=c['filter'](f=>{if(f['kind']!=='issue'||f['issue']['code']!=='unrecognized_keys')return!![];return!c['some'](g=>g!==f&&g['kind']==='issue'&&g['issue']['code']!=='unrecognized_keys'&&d(f,g));});return e;}const RECEIVED_VALUE_MAX=0x1f4;function truncateEcho(a){return a['length']>RECEIVED_VALUE_MAX?a['slice'](0x0,RECEIVED_VALUE_MAX)+'...(truncated,\x20'+(a['length']-RECEIVED_VALUE_MAX)+'\x20more\x20chars)':a;}function formatZodErrors(a,b){return flattenZodIssues(a,b)['map'](c=>{if(c['kind']==='header')return c['path']+'\x20['+c['code']+']:\x20'+c['message'];const d=c['issue'],e=resolveIssuePath(c['pathPrefix']??[],d['path']),f=d['code'],g=d['message'];let h='';const i=d;if(f==='invalid_type'){const l=i['expected'],m=i['received'];typeof l==='string'&&typeof m==='string'&&(h='\x20(expected:\x20'+l+';\x20received:\x20'+m+')');}else{if(f==='invalid_value'){const n=i['expected'];if(n!==undefined){const o=typeof n==='string'?n:JSON['stringify'](n);h='\x20(expected:\x20'+o['slice'](0x0,0x3c)+')';}}else{if(f==='too_big'||f==='too_small'){const p=i['maximum']??i['minimum'],q=i['origin'];p!==undefined&&q!==undefined&&(h='\x20('+q+':\x20'+p+')');}}}const j=extractValueAtPath(b,absoluteIssuePath(c['pathPrefix']??[],d['path']));if(j!==undefined){const r=typeof j==='string'?'\x22'+truncateEcho(j)+'\x22':typeof j==='object'?truncateEcho(JSON['stringify'](j)):String(j);!h['includes']('received:')&&(h+='\x20(received\x20value:\x20'+r+')');}const k=c['variantTag']?'\x20['+c['variantTag']+']':'';return''+e+k+'\x20['+f+']:\x20'+g+h;});}function generateSuggestion(a,b,c){const d=b;switch(a){case'invalid_type':{const e=d['expected'];if(e==='number'&&typeof c==='string')return'Convert\x20to\x20number:\x20'+Number(c);if(e==='string')return'Wrap\x20in\x20quotes\x20or\x20call\x20String(...)';if(e==='array')return'Wrap\x20in\x20array:\x20['+JSON['stringify'](c)+']';if(e==='object')return'Provide\x20an\x20object,\x20not\x20a\x20primitive';return'Convert\x20value\x20to\x20'+(e??'the\x20expected\x20type');}case'invalid_enum_value':{const f=d['options'],g=Array['isArray'](f)?f['map'](h=>JSON['stringify'](h))['join']('\x20|\x20'):String(f);return'Use\x20one\x20of:\x20'+g;}case'invalid_literal':{const h=d['expected'];return'Use\x20the\x20exact\x20value:\x20'+JSON['stringify'](h);}case'too_small':{const i=d['minimum'],j=d['type'];if(j==='array')return'Add\x20at\x20least\x20'+i+'\x20element(s)\x20to\x20the\x20array';if(j==='string')return'String\x20must\x20be\x20at\x20least\x20'+i+'\x20character(s)\x20long';if(j==='number')return'Use\x20a\x20value\x20>=\x20'+i;return'Value\x20must\x20be\x20>=\x20'+i;}case'too_big':{const k=d['maximum'],l=d['type'];if(l==='array')return'Reduce\x20array\x20to\x20at\x20most\x20'+k+'\x20element(s)';if(l==='string')return'Shorten\x20string\x20to\x20at\x20most\x20'+k+'\x20character(s)';if(l==='number')return'Use\x20a\x20value\x20<=\x20'+k;return'Value\x20must\x20be\x20<=\x20'+k;}case'unrecognized_keys':{const m=d['keys'];return'Remove\x20unknown\x20field(s):\x20'+(m??[])['join'](',\x20')+'.\x20Check\x20the\x20schema\x20for\x20valid\x20field\x20names.';}case'invalid_union':{return'Value\x20does\x20not\x20match\x20any\x20of\x20the\x20union\x20variants\x20—\x20see\x20the\x20\x22closest\x20variant\x22\x20line\x20above\x20for\x20the\x20concrete\x20field\x20error(s).';}case'invalid_string':{const n=d['validation'];if(n==='url')return'Provide\x20a\x20valid\x20URL\x20string';if(n==='email')return'Provide\x20a\x20valid\x20email\x20string';if(n==='uuid')return'Provide\x20a\x20valid\x20UUID\x20string';if(n==='regex')return'String\x20does\x20not\x20match\x20the\x20required\x20pattern';return'Provide\x20a\x20valid\x20string\x20matching\x20the\x20validation:\x20'+(n??'unknown');}case'invalid_date':{return'Provide\x20a\x20valid\x20Date\x20object\x20or\x20ISO\x20date\x20string';}case'not_finite':{return'Use\x20a\x20finite\x20number\x20(not\x20Infinity\x20or\x20NaN)';}case'invalid_arguments':{return'Arguments\x20do\x20not\x20match\x20the\x20expected\x20schema';}case'invalid_return_type':{return'Return\x20type\x20does\x20not\x20match\x20the\x20expected\x20schema';}case'custom':{return'Custom\x20validation\x20failed\x20—\x20see\x20the\x20field\x27s\x20description\x20in\x20the\x20schema';}default:{return'Fix\x20the\x20value\x20at\x20\x27'+b['path']['join']('.')+'\x27\x20based\x20on\x20the\x20schema';}}}function formatZodErrorsStructured(a,b){return flattenZodIssues(a,b)['flatMap'](c=>{if(c['kind']==='header'){const l=c['message']['match'](/closest = variant (\d+)/),m=c['message']['includes']('missing\x20required\x20union\x20field'),n=c['message']['includes']('does\x20not\x20match\x20any\x20variant'),o=l?'Fix\x20the\x20field\x20error(s)\x20listed\x20for\x20variant\x20'+l[0x1]+'\x20below.':m?'Provide\x20this\x20required\x20field\x20with\x20one\x20of\x20the\x20accepted\x20shapes,\x20and\x20check\x20field-name\x20spelling\x20against\x20the\x20schema\x20preview.':n?'No\x20union\x20variant\x20accepts\x20this\x20discriminator\x20—\x20pick\x20a\x20value\x20from\x20the\x20\x27Valid\x20...\x20values\x27\x20line\x20in\x20the\x20schema\x20preview\x20below.\x20If\x20the\x20value\x20belongs\x20to\x20a\x20sub-tool\x20(e.g.\x20onchain_table*\x20→\x20onchain_table_data),\x20resend\x20it\x20to\x20that\x20tool.':'No\x20union\x20variant\x20matched\x20—\x20check\x20the\x20schema\x20preview\x20below\x20for\x20the\x20accepted\x20shapes.';return[{'path':c['path'],'code':c['code'],'message':c['message'],'suggestion':o}];}const d=c['issue'],e=resolveIssuePath(c['pathPrefix']??[],d['path']),f=d['code'],g=c['variantTag']?d['message']+'\x20(closest\x20union\x20variant:\x20'+c['variantTag']+')':d['message'],h=d;let i;if(f==='invalid_type'){const p=h['expected'],q=h['received'];typeof p==='string'&&typeof q==='string'&&(i=p);}else{if(f==='invalid_value'){const r=h['expected'],s=h['options'];if(Array['isArray'](s))i=s['map'](t=>JSON['stringify'](t))['join']('\x20|\x20');else r!==undefined&&(i=typeof r==='string'?r:JSON['stringify'](r));}else{if(f==='too_big'||f==='too_small'){const t=h['maximum']??h['minimum'];t!==undefined&&(i=String(t));}}}const j=extractValueAtPath(b,absoluteIssuePath(c['pathPrefix']??[],d['path'])),k=generateSuggestion(f,d,j);return[{'path':e,'code':f,'message':g,'expected':i,'received_value':j,'suggestion':k}];});}function extractValueAtPath(a,b){if(a===undefined||a===null||b['length']===0x0)return undefined;let c=a;for(const d of b){if(c===undefined||c===null)return undefined;if(typeof d==='number'){if(!Array['isArray'](c))return undefined;c=c[d];}else{if(typeof c!=='object')return undefined;c=c[d];}}return c;}function zodTopLevelShape(a){let b=a;while(!![]){const e=b['_def'];if(!e)break;const f=e['typeName']==='ZodEffects'?e['schema']:e['out']??e['innerType'];if(!f||f===b)break;b=f;}const c=b['_def'],d=typeof c?.['shape']==='function'?c['shape']():c?.['shape'];return d&&typeof d==='object'?d:undefined;}function checkUnknownFields(a,b){const c=zodTopLevelShape(a);if(!c||typeof b!=='object'||b===null)return[];const d=Object['keys'](c),e=Object['keys'](b);return e['filter'](g=>!d['includes'](g));}function zodUnionAwareKeyCheck(a,b){let c=a;while(!![]){const g=c['_def'];if(!g)break;const h=g['typeName']==='ZodEffects'?g['schema']:g['out']??g['innerType'];if(!h||h===c)break;c=h;}const d=c['_def']?.['options']??[c];let e=![],f=![];for(const i of d){const j=zodTopLevelShape(i);if(!j)continue;if(b in j)e=!![];if('env'in j)f=!![];}return{'declared':e,'hasEnvSlot':f};}function extractRelevantSchema(a,b,c){if(b==='onchain_operations'&&typeof c==='object'&&c!==null){const d=c['operation_type'];if(typeof d==='string'){const e='onchain_operations_'+d,f=loadPreGeneratedSchema(e);if(f)return f;}}return a;}function isSchemaValidationError(a){return a['startsWith']('Unknown\x20')&&a['includes']('field')||a['includes']('expected')&&a['includes']('received')||a['includes']('Invalid\x20input')||a['includes']('Required');}function variantConstValue(a,b){const c=a['properties'];if(!c||typeof c!=='object')return undefined;const d=c[b];if(!d)return undefined;if(typeof d['const']==='string')return d['const'];if(Array['isArray'](d['enum'])&&d['enum']['length']===0x1&&typeof d['enum'][0x0]==='string')return d['enum'][0x0];return undefined;}function pickUnionVariant(a,b){const c=['query_type','operation_type','type'],d=b&&typeof b==='object'&&!Array['isArray'](b)?Object['keys'](b):[],e=[...c,...d['filter'](f=>!c['includes'](f))];for(const f of e){const g=b?.[f];if(typeof g!=='string')continue;for(let h=0x0;h<a['length'];h++){const j=a[h];if(j&&typeof j==='object'&&variantConstValue(j,f)===g)return{'variant':j,'index':h,'discriminator':f,'matched':!![]};}}for(let k=0x0;k<a['length'];k++){const l=a[k];if(l&&typeof l==='object'){const m=l;if(m['properties']&&typeof m['properties']==='object')return{'variant':m,'index':k,'matched':![]};}}return{'index':-0x1,'matched':![]};}function unionDiscriminatorValues(a,b){const c=[];for(const d of a){if(d&&typeof d==='object'){const e=variantConstValue(d,b);if(e!==undefined&&!c['includes'](e))c['push'](e);}}return c;}function inferDiscriminatorKey(a){if(!Array['isArray'](a)||a['length']===0x0)return undefined;const b=a['filter'](d=>!!d&&typeof d==='object'&&!!d['properties']);if(b['length']!==a['length']||b['length']===0x0)return undefined;const c=b[0x0]['properties'];for(const d of Object['keys'](c)){let e=!![];for(const f of b){if(variantConstValue(f,d)===undefined){e=![];break;}}if(e)return d;}return undefined;}function buildSchemaPreview(a,b,c){try{const d=['Schema\x20preview\x20for\x20'+b+':'];let e,g=[],h='',i,j=-0x1,k,l=![];if(a['properties']&&typeof a['properties']==='object')e=a['properties'],g=Array['isArray'](a['required'])?a['required']:[],h=typeof a['description']==='string'?a['description']:'';else{if(Array['isArray'](a['oneOf'])||Array['isArray'](a['anyOf'])){i=a['oneOf']??a['anyOf'];const p=pickUnionVariant(i,c);j=p['index'],k=p['discriminator'],l=p['matched'];p['variant']&&(e=p['variant']['properties'],g=Array['isArray'](p['variant']['required'])?p['variant']['required']:[],h=typeof p['variant']['description']==='string'?p['variant']['description']:'');if(!e)return d['push']('\x20\x20(discriminated\x20union\x20with\x20'+i['length']+'\x20variants\x20—\x20see\x20structuredContent\x20for\x20full\x20schema)'),d['join']('\x0a');}}h&&h['length']>0x0&&h['length']<0xc8&&d['push']('\x20\x20'+h);if(!e)return d['push']('\x20\x20(no\x20properties\x20available\x20—\x20see\x20structuredContent\x20for\x20full\x20schema)'),d['join']('\x0a');const m=new Set(g),n=g['length']>0x0?g['join'](',\x20'):'(none)',o=Object['keys'](e)['filter'](q=>!m['has'](q))['join'](',\x20');d['push']('Required:\x20'+n);o&&d['push']('Optional:\x20'+o);d['push']('Fields:');for(const [q,r]of Object['entries'](e)){if(r&&typeof r==='object'){const s=r,t=describeSchemaType(s),u=m['has'](q)?'required':'optional';let v=typeof s['description']==='string'?s['description']:'';if(v['length']>0x78)v=v['slice'](0x0,0x75)+'...';let w='';if(s['properties']&&typeof s['properties']==='object'){const x=Object['keys'](s['properties']);x['length']>0x0&&(w='\x20{\x20'+x['slice'](0x0,0x8)['join'](',\x20')+(x['length']>0x8?',\x20...':'')+'\x20}');}if(s['items']&&typeof s['items']==='object'){const y=s['items'],A=describeSchemaType(y);w='\x20(array\x20of\x20'+A+')';}Array['isArray'](s['enum'])&&(w='\x20(enum:\x20'+s['enum']['slice'](0x0,0x6)['map'](B=>JSON['stringify'](B))['join'](',\x20')+(s['enum']['length']>0x6?',\x20...':'')+')'),d['push']('\x20\x20-\x20'+q+'\x20('+t+',\x20'+u+')'+w+(v?'\x20—\x20'+v:''));}}if(i&&i['length']>0x0){d['push']('');if(l&&k){const B=c&&typeof c==='object'?c:{},C=String(B[k]);d['push']('Matched\x20variant:\x20'+k+'=\x22'+C+'\x22\x20(variant\x20'+(j+0x1)+'\x20of\x20'+i['length']+').');}else{d['push']('Discriminated\x20union\x20with\x20'+i['length']+'\x20variants;\x20showing\x20variant\x20'+(j+0x1)+'\x20(no\x20matching\x20discriminator\x20value\x20in\x20input).');const D=k??inferDiscriminatorKey(i)??(b==='query_toolkit'?'query_type':'operation_type'),E=unionDiscriminatorValues(i,D);E['length']>0x0&&d['push']('Valid\x20\x27'+D+'\x27\x20values:\x20'+E['join'](',\x20'));}}if(b==='onchain_operations'&&typeof c==='object'&&c!==null){const F=c['operation_type'];typeof F==='string'&&(d['push'](''),d['push']('operation_type-specific\x20schema:\x20onchain_operations_'+F),d['push']('(Use\x20schema_query\x20with\x20action=\x27get\x27\x20and\x20name=\x27onchain_operations_'+F+'\x27\x20for\x20the\x20full\x20sub-schema.)'));}return d['join']('\x0a');}catch{return'Schema\x20preview\x20for\x20'+b+':\x20(unable\x20to\x20build\x20preview\x20—\x20see\x20structuredContent\x20for\x20full\x20schema)';}}function compactMismatchSchemaInput(a,b){const c=Array['isArray'](a['oneOf'])?a['oneOf']:Array['isArray'](a['anyOf'])?a['anyOf']:undefined;if(!c)return a;const d=pickUnionVariant(c,b);if(!d['matched']||!d['variant'])return fallbackUnionSchema(a,c,b);const e=d['variant'],{oneOf:f,anyOf:g,...h}=a,i=h['properties']&&typeof h['properties']==='object'?h['properties']:{},j=e['properties']&&typeof e['properties']==='object'?e['properties']:{},k=Array['isArray'](h['required'])?h['required']:[],l=Array['isArray'](e['required'])?e['required']:[];return{...h,...e['type']!==undefined?{'type':e['type']}:{},...e['additionalProperties']!==undefined?{'additionalProperties':e['additionalProperties']}:{},...e['description']!==undefined?{'description':e['description']}:{},'properties':{...i,...j},'required':[...new Set([...k,...l])]};}function fallbackUnionSchema(a,b,c){const d=inferDiscriminatorKey(b);if(!d)return a;const e=unionDiscriminatorValues(b,d);if(e['length']===0x0)return a;const {oneOf:f,anyOf:g,...h}=a,i=h['properties']&&typeof h['properties']==='object'?h['properties']:{},j=Array['isArray'](h['required'])?h['required']:[],k=c&&typeof c==='object'&&!Array['isArray'](c)?Object['keys'](c):[];return{...h,'properties':{...i,[d]:{'type':'string','enum':e,'description':k['includes'](d)?'Unknown\x20\x22'+d+'\x22\x20value\x20—\x20must\x20be\x20one\x20of\x20the\x20listed\x20values.\x20Per-variant\x20parameters:\x20schema_query\x20(action=\x27get\x27)':'Missing\x20\x22'+d+'\x22\x20—\x20set\x20it\x20to\x20one\x20of\x20the\x20listed\x20values.\x20Per-variant\x20parameters:\x20schema_query\x20(action=\x27get\x27)'}},'required':j['includes'](d)?j:[...j,d]};}function describeSchemaType(a){if(typeof a['type']==='string')return a['type'];if(Array['isArray'](a['type']))return a['type']['join']('|');if(a['$ref'])return'$ref';if(Array['isArray'](a['oneOf']))return'oneOf';if(Array['isArray'](a['anyOf']))return'anyOf';if(Array['isArray'](a['allOf']))return'allOf';if(a['enum'])return'enum';if(a['const'])return'const('+JSON['stringify'](a['const'])+')';return'object';}const MISMATCH_SCHEMA_MAX_DEPTH=0x18;function capSchemaDepth(a,b){if(b>=MISMATCH_SCHEMA_MAX_DEPTH){if(Array['isArray'](a))return'(depth-capped\x20—\x20use\x20schema_query\x20action=\x27get\x27\x20for\x20the\x20full\x20sub-schema)';if(a!==null&&typeof a==='object')return{'type':'object','description':'(depth-capped\x20—\x20use\x20schema_query\x20action=\x27get\x27\x20for\x20the\x20full\x20sub-schema)'};return a;}if(Array['isArray'](a))return a['map'](c=>capSchemaDepth(c,b+0x1));if(a!==null&&typeof a==='object'){const c={};for(const [d,e]of Object['entries'](a)){c[d]=capSchemaDepth(e,b+0x1);}return c;}return a;}export async function dispatchToolCall(a,b,c,d){return sanitizeToolDispatchResult(await dispatchToolCallRaw(a,b,c,d));}async function dispatchToolCallRaw(a,b,c,d){{const i=findLatin1Mojibake(b);if(i)return mojibakeBlockResult(i['path'],i['sample']);}if(a==='wowok')return handleWowok(b,c,d);const e=TOOL_REGISTRY_MAP['get'](a);if(!e)throw new Error('Unknown\x20tool:\x20'+a+'.\x20Available:\x20'+TOOL_REGISTRY['map'](j=>j['name'])['join'](',\x20'));if(e['applyRules']&&!c?.['skipRules']){const j=await withTimeout(Promise['resolve'](e['applyRules'](b)),e['timeoutMs']??0xea60,a);if(j)return j;}const f=dispatchWithHarness(e['handler'],a),g=e['timeoutMs']??0xea60,h=wrapHandlerWithErrorShape(f,g,a,e['errorShapeBuilder'],e['onTimeoutVerify']);return h(b,d);}const TOOL_FIELD_ALIASES=['tool','tool_name','name'],DATA_FIELD_ALIASES=['data','args','params','parameters'],RESERVED_FIELD_NAMES=new Set([...TOOL_FIELD_ALIASES,...DATA_FIELD_ALIASES]);function normalizeInput(a){const b=[];if(!a||typeof a!=='object'||Array['isArray'](a))return{'tool':undefined,'data':{},'normalizationNotes':['input\x20is\x20not\x20an\x20object']};const c=a;let d;for(const f of TOOL_FIELD_ALIASES){if(typeof c[f]==='string'&&c[f]){d=c[f];f!=='tool'&&b['push']('normalized\x20\x27'+f+'\x27\x20→\x20\x27tool\x27');break;}}let e;for(const g of DATA_FIELD_ALIASES){const h=c[g];if(h!==undefined&&h!==null&&typeof h==='object'&&!Array['isArray'](h)){e=h;g!=='data'&&b['push']('normalized\x20\x27'+g+'\x27\x20→\x20\x27data\x27');break;}}if(!e){const i={};let j=![];for(const k of Object['keys'](c)){!RESERVED_FIELD_NAMES['has'](k)&&(i[k]=c[k],j=!![]);}j?(e=i,b['push']('extracted\x20inline\x20params\x20→\x20\x27data\x27\x20(no\x20data\x20wrapper\x20was\x20provided)')):e={};}return{'tool':d,'data':e,'normalizationNotes':b};}const QUERY_ACCOUNT_FIELD_ALIASES={'account_balance':{'canonical':'name_or_address','aliases':['account','address']},'onchain_personal_profile':{'canonical':'account','aliases':['name_or_address','address']},'address_profile':{'canonical':'address','aliases':['name_or_address','account']}};function normalizeQueryToolkitAliases(a,b){if(typeof a['query_type']!=='string')return;const c=QUERY_ACCOUNT_FIELD_ALIASES[a['query_type']];if(!c)return;if(a[c['canonical']]!==undefined)return;for(const d of c['aliases']){if(a[d]!==undefined){a[c['canonical']]=a[d],delete a[d],b['push']('query_toolkit\x20'+a['query_type']+':\x20normalized\x20\x27'+d+'\x27\x20→\x20\x27'+c['canonical']+'\x27');return;}}}const QUERY_NETWORK_CANONICAL={'testnet':'testnet','mainnet':'mainnet','localnet':'localnet'};function normalizeQueryNetworkSpellings(a,b){for(const c of['network','context_network']){const d=a[c];if(typeof d!=='string')continue;const e=QUERY_NETWORK_CANONICAL[d['trim']()['toLowerCase']()['replace'](/[-_]/g,'')];e&&d!==e&&(a[c]=e,b['push']('query_toolkit:\x20normalized\x20'+c+'\x20\x27'+d+'\x27\x20→\x20\x27'+e+'\x27'));}}async function handleWowok(a,b,c){const {tool:d,data:g,normalizationNotes:h}=normalizeInput(a);(d==='query_toolkit'||d==='onchain_table_data')&&normalizeQueryToolkitAliases(g,h);d==='query_toolkit'&&normalizeQueryNetworkSpellings(g,h);if(a&&typeof a==='object'&&!Array['isArray'](a)){const n=a;n['passport']!==undefined&&n['submission']===undefined&&(n['submission']=n['passport'],h['push']('accepted\x20top-level\x20\x27passport\x27\x20as\x20alias\x20for\x20\x27submission\x27'));if(n['submission']!==undefined){const o=g['submission'];if(o!==undefined)return{'content':[{'type':'text','text':'Schema\x20mismatch\x20for\x20'+d+'.\x201\x20error(s).\x20\x27submission\x27\x20was\x20provided\x20in\x20BOTH\x20the\x20top\x20level\x20and\x20inside\x20\x27data\x27\x20—\x20provide\x20it\x20in\x20only\x20ONE\x20place\x20(top\x20level\x20OR\x20data),\x20not\x20both.'}],'structuredContent':{'result':{'status':'schema_mismatch','errors':['\x27submission\x27\x20provided\x20twice:\x20top\x20level\x20AND\x20inside\x20data.\x20Provide\x20it\x20in\x20only\x20ONE\x20place.'],'structured_errors':[{'path':'submission','code':'duplicate_field','message':'\x27submission\x27\x20provided\x20both\x20at\x20the\x20top\x20level\x20and\x20inside\x20data.','suggestion':'Keep\x20the\x20submission\x20in\x20exactly\x20one\x20place:\x20either\x20wowok({tool,\x20data,\x20submission})\x20or\x20wowok({tool,\x20data:\x20{operation_type,\x20data:\x20{...},\x20env,\x20submission}}).'}],'hint':'Move\x20\x27submission\x27\x20to\x20a\x20single\x20location\x20and\x20retry.'},'schema':null}};g['submission']=n['submission'],h['push']('merged\x20top-level\x20\x27submission\x27\x20into\x20data');}}let j=![];{const p=a,q=p['data']!==undefined||p['args']!==undefined||p['params']!==undefined,r=p['env'],s=p['confirmed'];if(q&&(r!==undefined||s!==undefined)){const t=g,u=t['env']!==undefined&&typeof t['env']==='object'&&!Array['isArray'](t['env'])?{...t['env']}:{},v=r!==undefined&&typeof r==='object'&&!Array['isArray'](r)?r:{},w={...v,...u};s!==undefined&&w['confirmed']===undefined&&(w['confirmed']=s),Object['keys'](w)['length']>0x0&&(t['env']=w,j=!![],h['push']('merged\x20top-level\x20env/confirmed\x20into\x20data.env\x20(env\x20belongs\x20INSIDE\x20data)'));}}if(!d){const x=a&&typeof a==='object'&&!Array['isArray'](a)?Object['keys'](a)['join'](',\x20')||'(none)':'(non-object\x20input:\x20'+typeof a+')',y=['Missing\x20\x27tool\x27\x20field.\x20Received\x20keys:\x20'+x,'Expected\x20one\x20of:\x20'+SUB_TOOL_NAMES['join'](',\x20')];return{'content':[{'type':'text','text':'Missing\x20\x27tool\x27\x20field.\x20Call\x20format:\x20wowok({\x20tool:\x20\x22<sub-tool>\x22,\x20data:\x20{<params>}\x20}).\x20Received\x20keys:\x20'+x+'.\x20Available\x20sub-tools:\x20'+SUB_TOOL_NAMES['join'](',\x20')}],'structuredContent':{'result':{'status':'schema_mismatch','errors':y,'hint':'Provide\x20\x27tool\x27\x20(one\x20of:\x20'+SUB_TOOL_NAMES['join'](',\x20')+')\x20and\x20\x27data\x27\x20(sub-tool\x20parameters).\x20Aliases\x20accepted:\x20tool_name/name→tool,\x20args/params→data.','received':a},'schema':{'input':zodToJsonSchemaSafe(WowokToolDisplaySchema,'wowok'),'tool':'wowok'}}};}const k=TOOL_REGISTRY_MAP['get'](d);if(!k){const A=d['toLowerCase'](),B=A==='wowok',C=A['split']('_')['filter'](Boolean),D=B?[]:TOOL_REGISTRY['map'](G=>G['name'])['map'](G=>{const H=G['toLowerCase']()['split']('_');let I=0x0;if(H[0x0]===C[0x0])I+=0x2;I+=H['filter'](J=>C['includes'](J))['length'];if(H['some'](J=>J['startsWith'](C[C['length']-0x1]??'')))I+=0x1;return{'name':G,'score':I};})['filter'](G=>G['score']>0x0)['sort']((G,H)=>H['score']-G['score'])['slice'](0x0,0x5)['map'](G=>G['name']),E=B?'\x20NOTE:\x20\x27wowok\x27\x20is\x20the\x20DISPATCHER\x20tool\x20itself,\x20not\x20a\x20sub-tool.\x20Call\x20format:\x20wowok({\x20tool:\x20\x22<sub-tool-name>\x22,\x20data:\x20{<params>}\x20}).':'',F=D['length']>0x0?'.\x20Did\x20you\x20mean:\x20'+D['join'](',\x20')+'?':'';return{'content':[{'type':'text','text':'Unknown\x20sub-tool:\x20\x27'+d+'\x27.\x20Available:\x20'+TOOL_REGISTRY['map'](G=>G['name'])['join'](',\x20')+E+F}],'structuredContent':{'result':{'status':'error','errors':['Unknown\x20sub-tool:\x20'+d],'hint':'Available\x20sub-tools:\x20'+TOOL_REGISTRY['map'](G=>G['name'])['join'](',\x20')+E+F,'suggestions':D},'schema':null}};}h['length']>0x0&&console['warn']('[wowok]\x20input\x20normalization\x20for\x20\x27'+d+'\x27:\x20'+h['join'](';\x20'));{const G=g,H=G['env']&&typeof G['env']==='object'&&!Array['isArray'](G['env'])?G['env']:undefined;if(H?.['confirmed']!==undefined&&G['confirmed']===undefined){const I=zodUnionAwareKeyCheck(k['config']['inputSchema'],'confirmed');if(I['declared']&&!I['hasEnvSlot']){G['confirmed']=H['confirmed'],delete H['confirmed'];if(Object['keys'](H)['length']===0x0)delete G['env'];h['push']('routed\x20rescued\x20top-level\x20confirmed\x20to\x20the\x20tool\x27s\x20own\x20confirmed\x20slot'),console['warn']('[wowok]\x20input\x20normalization\x20for\x20\x27'+d+'\x27:\x20confirmed\x20slot\x20re-routed\x20(F-10)');}}}const l=k['config']['inputSchema']['safeParse'](g),m=checkUnknownFields(k['config']['inputSchema'],g);if(!l['success']||m['length']>0x0){const J=[];!l['success']&&J['push'](...formatZodErrors(l['error'],g));m['length']>0x0&&J['push']('Unknown\x20field(s):\x20'+m['join'](',\x20'));const K=[];!l['success']&&K['push'](...formatZodErrorsStructured(l['error'],g));if(m['length']>0x0)for(const X of m){K['push']({'path':X,'code':'unrecognized_keys','message':'Unknown\x20field\x20\x27'+X+'\x27\x20is\x20not\x20allowed','suggestion':'Remove\x20field\x20\x27'+X+'\x27\x20or\x20check\x20the\x20schema\x20for\x20valid\x20field\x20names'});}if(j){const Y='A\x20top-level\x20env/confirmed\x20was\x20merged\x20into\x20data.env\x20automatically\x20(contra\x20F-01\x20rescue),\x20but\x20THIS\x20sub-tool\x20does\x20not\x20accept\x20env\x20in\x20data.\x20Operation\x20tools\x20(onchain_operations\x20etc.)\x20take\x20env\x20inside\x20data;\x20query\x20tools\x20take\x20plain\x20data\x20fields\x20(e.g.\x20network)\x20instead\x20—\x20drop\x20the\x20env\x20key\x20for\x20this\x20call.';J['push'](Y),K['push']({'path':'env','code':'unrecognized_keys','message':'env\x20rescued\x20from\x20the\x20top\x20level,\x20but\x20this\x20sub-tool\x27s\x20data\x20schema\x20has\x20no\x20env\x20slot','suggestion':Y});}const L=g??undefined,M=L!==undefined&&typeof L['operation_type']==='string'&&L['data']===undefined,N=K['some'](Z=>String(Z['path'])==='data'&&Z['code']==='invalid_type'&&/received undefined/i['test'](Z['message']));let O;if(N&&M)O='SHAPE\x20FIX\x20(rndb58d8d\x2004-ROOTCAUSE-A\x20A1):\x20operation\x20parameters\x20must\x20be\x20nested\x20INSIDE\x20a\x20\x27data\x27\x20object.\x20'+'The\x20envelope\x20is\x20{\x20operation_type:\x20\x27...\x27,\x20data:\x20{\x20<the\x20operation\x27s\x20parameters>\x20},\x20env?:\x20{...},\x20submission?:\x20{...}\x20}\x20'+'—\x20your\x20call\x20put\x20the\x20parameters\x20at\x20the\x20SAME\x20level\x20as\x20operation_type\x20(or\x20omitted\x20them),\x20so\x20\x27data\x27\x20arrived\x20undefined.\x20'+'Resend\x20with\x20the\x20parameters\x20wrapped\x20in\x20data.\x20This\x20is\x20a\x20static\x20shape\x20error,\x20NOT\x20session\x20state\x20—\x20no\x20restart\x20is\x20needed\x20'+'(this\x20server\x20is\x20stateless).\x20Also\x20discard\x20any\x20schema\x20slice\x20you\x20cached\x20from\x20an\x20earlier\x20call\x20for\x20a\x20DIFFERENT\x20'+'operation_type\x20—\x20slices\x20are\x20union-variant\x20specific\x20and\x20reusing\x20one\x20across\x20variants\x20mangles\x20the\x20payload.',J['push'](O),K['push']({'path':'data','code':'invalid_type','message':'parameters\x20must\x20be\x20nested\x20inside\x20data\x20(flat\x20envelope:\x20parameters\x20found\x20as\x20siblings\x20of\x20operation_type)','suggestion':O});else N&&(O='DIAGNOSTIC:\x20\x27data\x27\x20arrived\x20at\x20validation\x20as\x20undefined.\x20Send\x20the\x20tool\x27s\x20parameters\x20inside\x20the\x20\x27data\x27\x20object\x20'+'(for\x20onchain_operations:\x20{\x20operation_type:\x20\x27...\x27,\x20data:\x20{\x20<parameters>\x20},\x20env?,\x20submission?\x20}).\x20If\x20you\x20are\x20CERTAIN\x20'+'your\x20client\x20transmitted\x20a\x20well-formed\x20payload,\x20inspect\x20what\x20the\x20wrapper\x20actually\x20sent\x20before\x20retrying\x20—\x20identical\x20'+'retries\x20cannot\x20recover\x20from\x20a\x20construction\x20error.\x20(C-11\x27s\x20old\x20\x27wrapper\x20state\x20corruption\x20/\x20restart\x20the\x20session\x27\x20'+'conclusion\x20was\x20retired\x20by\x20rndb58d8d\x2004-ROOTCAUSE-A:\x20a\x20stateless\x20server\x20cannot\x20diagnose\x20caller-side\x20runtime\x20state.)',J['push'](O),K['push']({'path':'data','code':'invalid_type','message':'data\x20is\x20required\x20—\x20the\x20tool\x27s\x20parameters\x20belong\x20inside\x20the\x20data\x20object','suggestion':O}));const P=loadPreGeneratedSchema(d)??zodToJsonSchemaSafe(k['config']['inputSchema'],d),Q=extractRelevantSchema(P,d,g),R=capSchemaDepth(compactMismatchSchemaInput(Q,g),0x0),S=matchedVariantLegalKeys(R)['filter'](Z=>Z!=='env');if(S['length']>0x0){const Z='Legal\x20keys\x20for\x20this\x20input:\x20'+S['join'](',\x20')+'.';for(const a0 of K){a0['code']==='unrecognized_keys'&&!String(a0['suggestion'])['includes']('Legal\x20keys')&&(a0['suggestion']=a0['suggestion']+'\x20'+Z);}for(let a1=0x0;a1<J['length'];a1++){/^(Unknown field\(s\):|.*(Unrecognized key|unexpected key))/i['test'](J[a1])&&!J[a1]['includes']('Legal\x20keys')&&(J[a1]=J[a1]+'\x20'+Z);}}const T=K[0x0]?.['suggestion']?'\x20FIRST\x20ERROR\x20SUGGESTION:\x20'+K[0x0]['suggestion']:'',U=J['slice'](0x0,0x5)['map']((a2,a3)=>'\x20\x20'+(a3+0x1)+'.\x20'+a2)['join']('\x0a'),V=buildSchemaPreview(Q,d,g),W=['Schema\x20mismatch\x20for\x20'+d+'.\x20'+J['length']+'\x20error(s).'+T,U,...O?['','⚠\x20'+O]:[],'',V,'','Fix\x20the\x20parameters\x20based\x20on\x20the\x20errors\x20above\x20and\x20the\x20schema\x20summary,\x20then\x20retry.','Full\x20JSON\x20Schema\x20is\x20in\x20the\x20structuredContent.schema.input\x20field\x20(cache\x20it\x20ONLY\x20for\x20future\x20'+d+'\x20calls\x20with\x20the\x20SAME\x20operation_type/variant\x20—\x20slices\x20are\x20branch-specific;\x20a\x20different\x20operation_type\x20needs\x20a\x20fresh\x20schema).','Structured\x20errors\x20with\x20fix\x20suggestions\x20are\x20in\x20structuredContent.result.structured_errors\x20(ARCH-02).',SKILLS_MISMATCH_POINTER]['filter'](Boolean)['join']('\x0a');return{'content':[{'type':'text','text':W}],'structuredContent':{'result':{'status':'schema_mismatch','errors':J,'structured_errors':K,'hint':schemaMismatchHint(d)},'schema':{'input':R,'tool':d}}};}try{const a2=await dispatchToolCall(d,g,b,c);if(a2['resultType']==='input_required')return a2;const a3=a2['structuredContent'],a4=a3?.['result'],a5=a4?.['status']==='error'||a4?.['status']==='schema_mismatch'||a4?.['operation']==='error'||a4?.['type']==='error';if(a5){const aa={'status':'error','data':a2['structuredContent'],'errors':[a2['content'][0x0]?.['text']??'Sub-tool\x20returned\x20an\x20error']};if(typeof a4?.['error_code']==='string')aa['error_code']=a4['error_code'];if(typeof a4?.['retryable']==='boolean')aa['retryable']=a4['retryable'];if(typeof a4?.['recovery_hint']==='string')aa['recovery_hint']=a4['recovery_hint'];if(a4?.['refused']===!![])aa['refused']=!![];if(a4?.['tx_submitted']===![])aa['tx_submitted']=![];return{'content':a2['content'],'structuredContent':{'result':aa,'schema':null}};}const a6=typeof a3?.['outcome']==='string'?a3['outcome']:undefined,a7=a3?.['verdict'],a8=a7!==undefined&&typeof a7==='object'&&a7['buildable']===![],a9=a8?'error':a6===undefined||a6==='executed'?'success':a6==='failed'?'error':'pending';return{'content':a2['content'],'structuredContent':{'result':{'status':a9,...a6!==undefined?{'outcome':a6}:{},...a8?{'errors':['Plan\x20audit\x20BLOCKED\x20(verdict.buildable=false)\x20—\x20see\x20data.verdict.blockers\x20and\x20data.next_action.\x20Do\x20NOT\x20materialize\x20this\x20plan.']}:{},'data':a2['structuredContent']},'schema':null}};}catch(ab){const ac=ab instanceof Error?ab['message']:String(ab);if(isSchemaValidationError(ac)){const ag=loadPreGeneratedSchema(d)??zodToJsonSchemaSafe(k['config']['inputSchema'],d),ah=extractRelevantSchema(ag,d,g),ai=buildSchemaPreview(ah,d,g),aj=[{'path':'(runtime)','code':'schema_validation_error','message':ac,'suggestion':'Check\x20the\x20error\x20message\x20and\x20the\x20schema\x20below\x20for\x20the\x20correct\x20field\x20format'}],ak=['Schema\x20mismatch\x20for\x20'+d+':\x20'+ac,'',ai,'','Fix\x20the\x20parameters\x20and\x20retry.\x20Full\x20JSON\x20Schema\x20is\x20in\x20structuredContent.schema.input.','Structured\x20errors\x20with\x20fix\x20suggestions\x20are\x20in\x20structuredContent.result.structured_errors\x20(ARCH-02).',SKILLS_MISMATCH_POINTER]['join']('\x0a');return{'content':[{'type':'text','text':ak}],'structuredContent':{'result':{'status':'schema_mismatch','errors':[ac],'structured_errors':aj,'hint':schemaMismatchHint(d)},'schema':{'input':compactMismatchSchemaInput(ah,g),'tool':d}}};}const ad=/Unexpected token.*?\((\d+):(\d+)\)/['exec'](ac)??(/^(Unexpected end of JSON input|JSON\.parse)/['test'](ac)?[ac,'','']:null);if(ad){const al=ad[0x1]?Number(ad[0x1]):undefined,am=ad[0x2]?Number(ad[0x2]):undefined,an=al!==undefined?'\x20at\x20line\x20'+al+',\x20column\x20'+am:'',ao=loadPreGeneratedSchema(d)??zodToJsonSchemaSafe(k['config']['inputSchema'],d),ap=extractRelevantSchema(ao,d,g),aq=[{'path':'(root)','code':'malformed_json','message':'A\x20JSON\x20string\x20in\x20the\x20arguments\x20could\x20not\x20be\x20parsed'+an+':\x20'+ac+'.\x20'+'Any\x20argument\x20passed\x20as\x20a\x20STRING\x20must\x20itself\x20be\x20valid\x20JSON.','suggestion':'Send\x20objects/arrays\x20as\x20real\x20JSON\x20values,\x20not\x20as\x20stringified\x20JSON.\x20'+'If\x20a\x20string\x20field\x20is\x20genuinely\x20textual\x20(description,\x20message,\x20remark),\x20it\x20must\x20NOT\x20be\x20quoted-and-escaped\x20JSON.\x20'+'If\x20the\x20argument\x20shape\x20is\x20confirmed\x20valid,\x20the\x20payload\x20may\x20have\x20been\x20TRUNCATED\x20before\x20parsing\x20—\x20arguments\x20past\x20a\x20'+'transport\x20size\x20limit\x20fail\x20with\x20this\x20same\x20envelope;\x20shrink\x20the\x20payload\x20(fewer\x20or\x20smaller\x20items)\x20and\x20retry.'}];return{'content':[{'type':'text','text':['Malformed\x20JSON\x20in\x20the\x20arguments\x20to\x20'+d+an+':\x20'+ac,'',buildSchemaPreview(ap,d,g),'','Fix\x20the\x20parameters\x20and\x20retry.\x20Full\x20JSON\x20Schema\x20is\x20in\x20structuredContent.schema.input.']['join']('\x0a')}],'structuredContent':{'result':{'status':'schema_mismatch','errors':[ac],'structured_errors':aq,'hint':schemaMismatchHint(d)},'schema':{'input':compactMismatchSchemaInput(ap,g),'tool':d}}};}const ae=classifyError(ac),af={'status':'error','errors':[ac]};if(ae['error_code']!==undefined)af['error_code']=ae['error_code'];if(ae['retryable']!==undefined)af['retryable']=ae['retryable'];if(ae['recovery_hint']!==undefined)af['recovery_hint']=ae['recovery_hint'];return{'content':[{'type':'text','text':'Error:\x20'+ac}],'structuredContent':{'result':af,'schema':null}};}}function zodToJsonSchemaSafe(a,b){try{const c=z['toJSONSchema'](a,{'unrepresentable':'any','target':'draft-07'});if(c&&typeof c==='object'&&!Array['isArray'](c)){const {$schema:d,...e}=c;return e;}return{'type':'object'};}catch{return{'type':'object','additionalProperties':!![]};}}function resolveSchemaRefs(a){const b=new Set(['definitions','$schema','$id']);function c(e){if(!e['startsWith']('#/'))return null;const f=e['slice'](0x2)['split']('/');let g=a;for(const h of f){if(g==null||typeof g!=='object')return null;g=g[h];}return g;}function d(e,f){if(!e||typeof e!=='object')return e;if(Array['isArray'](e))return e['map'](i=>d(i,f));const g=e;if(typeof g['$ref']==='string'){const i=g['$ref'];if(f['has'](i))return{'type':'object','additionalProperties':!![]};const j=c(i);if(j&&typeof j==='object'&&!Array['isArray'](j)){const l=new Set(f);l['add'](i);const m=d(j,l),n={};for(const [o,p]of Object['entries'](g)){if(o!=='$ref'&&!b['has'](o))n[o]=p;}return{...m,...n};}return{'type':'object','additionalProperties':!![]};}const h={};for(const [q,r]of Object['entries'](g)){if(b['has'](q))continue;h[q]=d(r,f);}return h;}return d(a,new Set());}function loadPreGeneratedSchema(a){const b=preGeneratedSchemaCache['get'](a);if(b)return b;for(const c of SCHEMA_DIR_CANDIDATES){try{const d=join(c,a+'.schema.json'),e=readFileSync(d,'utf-8'),f=JSON['parse'](e),g=resolveSchemaRefs(f);return preGeneratedSchemaCache['set'](a,g),g;}catch{}}return null;}export function listTools(){return[{'name':'wowok','title':'WoWok\x20MCP','description':WOWOK_TOOL_DESCRIPTION,'inputSchema':resolveSchemaRefs(zodToJsonSchemaSafe(WowokToolDisplaySchema,'wowok'))}];}let startupUpgradeNoticeAttached=![],startupNoticePromise=null,upgradeEnforcementDecided=![];function startupNotice(){return startupNoticePromise??=getStartupUpgradeNotice(),startupNoticePromise;}async function upgradeRequiredResult(){if(upgradeEnforcementDecided)return null;let a=null;try{a=await startupNotice();}catch{a=null;}if(!a)return null;upgradeEnforcementDecided=!![];if(!a['enforced'])return null;const b='WoWok\x20upgrade\x20REQUIRED\x20—\x20tool\x20calls\x20are\x20blocked\x20until\x20the\x20local\x20package\x20is\x20current.\x0a'+(a['message']+'\x0a')+('To\x20stay\x20on\x20the\x20current\x20version\x20anyway,\x20write\x20{\x22enforce\x22:\x20false}\x20to\x20'+upgradePolicyPath()+'\x20and\x20restart.');return{'content':[{'type':'text','text':b}],'structuredContent':{'result':{'status':'error','error_code':'UPGRADE_REQUIRED','retryable':![],'recovery_hint':b,'data':{'upgrade_notice':a}},'schema':null}};}async function attachStartupUpgradeNotice(a){if(startupUpgradeNoticeAttached)return a;try{const b=await startupNotice();if(!b)return a;startupUpgradeNoticeAttached=!![];if(b['enforced'])return a;const c={...a};return Array['isArray'](a['content'])&&(c['content']=[...a['content'],{'type':'text','text':'\x0a⚠\x20'+b['message']+'\x0a'+'Surface\x20this\x20upgrade\x20notice\x20to\x20the\x20user\x20once\x20in\x20this\x20conversation\x20(do\x20not\x20wait\x20for\x20them\x20to\x20ask).'}]),a['structuredContent']&&typeof a['structuredContent']==='object'&&(c['structuredContent']={...a['structuredContent'],'upgrade_notice':b}),c;}catch{return startupUpgradeNoticeAttached=!![],a;}}export function registerAllTools(a){const b=0x2bf20,c=async(e,f)=>handleWowok(e,undefined,f),d=wrapHandlerWithErrorShape(c,b,'wowok',undefined);a['registerTool']('wowok',{'title':'WoWok\x20MCP','description':WOWOK_TOOL_DESCRIPTION,'inputSchema':WowokToolRuntimeSchema,'annotations':{'readOnlyHint':![],'destructiveHint':!![],'idempotentHint':![],'openWorldHint':!![]}},async(e,f)=>{const g=await upgradeRequiredResult();if(g)return g;return attachStartupUpgradeNotice(sanitizeToolDispatchResult(await d(e,f?.['mcpReq']?.['inputResponses']?{'inputResponses':f['mcpReq']['inputResponses']}:undefined)));}),overrideToolsListHandler(a);}function overrideToolsListHandler(a){a['server']['setRequestHandler']('tools/list',()=>({'tools':[{'name':'wowok','title':'WoWok\x20MCP','description':WOWOK_TOOL_DESCRIPTION,'inputSchema':ensureObjectType(zodToJsonSchemaSafe(WowokToolDisplaySchema,'wowok')),'annotations':{'readOnlyHint':![],'destructiveHint':!![],'idempotentHint':![],'openWorldHint':!![]}}]}));}function ensureObjectType(a){if(a['type']==='object')return a;return{...a,'type':'object'};}
@@ -1 +1 @@
1
- import{handleIndustryPackOperation}from'../handlers/industry-pack.js';import{handleBenchmarkMigrationOperation}from'../handlers/benchmark-migration.js';import{handleStrategyReviewOperation}from'../handlers/strategy-review.js';import{handleWorkspaceOperation}from'../handlers/workspace.js';import{handleWorkflowOperation}from'../handlers/workflow.js';import{handlePermissionOperation}from'../handlers/permission.js';import{handleServiceCloneOperation}from'../handlers/service-clone.js';import{createToolMeta,IndustryPackOperationInputSchema,IndustryPackOperationOutputSchema,BenchmarkMigrationSchema,BenchmarkMigrationOutputSchema,StrategyReviewOperationInputSchema,StrategyReviewOperationOutputSchema,WorkspaceOperationInputSchema,WorkspaceOperationOutputSchema,WorkflowOperationInputSchema,WorkflowOperationOutputSchema,PermissionOperationInputSchema,PermissionOperationOutputSchema,ServiceCloneSchema,ServiceCloneOutputSchema}from'../../schema/index.js';import{BUILTIN_TEMPLATES}from'../../knowledge/builtin-templates.js';const BUILTIN_TEMPLATE_COUNT=BUILTIN_TEMPLATES['length'],BUILTIN_INDUSTRY_COUNT=new Set(BUILTIN_TEMPLATES['map'](a=>a['industry']))['size'];export const BUSINESS_TOOLS=[{'name':'industry_pack_operation','handler':handleIndustryPackOperation,'config':{'title':'🧩\x20Industry\x20Pack\x20-\x20Knowledge\x20Template\x20Orchestration','summary':'Industry\x20knowledge\x20packs:\x20scaffold,\x20register,\x20list,\x20reset\x20templates.','description':'Manage\x20industry\x20knowledge\x20packs\x20(distributable,\x20registrable,\x20versionable\x20units\x20carrying\x20'+'one\x20industry\x27s\x20object-shape,\x20matching\x20rules,\x20and\x20role\x20personae).\x0a\x0a'+'Pack\x20layout\x20(merged\x20v2):\x20pack.json\x20(settings\x20only\x20—\x20manifest\x20+\x20match\x20+\x20personae\x20+\x20'+'dispute/compliance/supply/rules\x20sections;\x20field\x20explanations\x20live\x20in\x20the\x20industry-root\x20'+'README.md)\x20and\x20playbook.md\x20(chaptered\x20AI\x20prompt\x20guide).\x20Legacy\x20split-file\x20layouts\x20'+'(manifest.json/match.json/personae)\x20are\x20still\x20read\x20for\x20backward\x20compatibility.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20scaffold\x20—\x20generate\x20a\x20pack\x20template\x20skeleton\x20(pack.json\x20+\x20playbook.md,\x20settings\x20only)\x20'+'into\x20the\x20industry\x20directory;\x20the\x20user\x20fills\x20in\x20the\x20content.\x0a'+'\x20\x20•\x20list\x20—\x20list\x20currently\x20registered\x20packs.\x0a'+'\x20\x20•\x20scan\x20—\x20scan\x20+\x20register\x20every\x20pack\x20under\x20the\x20default\x20industry\x20directory.\x0a'+'\x20\x20?\x20template_drift\x20-\x20REPORT\x20builtin\x20template\x20files\x20whose\x20on-disk\x20body\x20differs\x20from\x20the\x20'+'in-code\x20catalog\x20(no_sentinel_legacy\x20/\x20stale_release\x20/\x20user_modified).\x20Run\x20this\x20FIRST\x20when\x20a\x20'+'template\x20change\x20appears\x20to\x20have\x20no\x20effect:\x20a\x20builtin\x20file\x20seeded\x20before\x20the\x20release\x20'+'sentinel\x20existed\x20carries\x20no\x20sentinel\x20and\x20is\x20never\x20upgraded\x20automatically.'+'\x20\x20?\x20repair_builtin_templates\x20-\x20RESEED\x20those\x20legacy\x20files\x20from\x20the\x20in-code\x20catalog.\x20'+'Identity-gated\x20on\x20a\x20known\x20builtin\x20id;\x20the\x20previous\x20body\x20is\x20kept\x20as\x20<file>.bak\x20and\x20a\x20'+'custom\x20(user)\x20template\x20is\x20never\x20touched.'+'\x20\x20•\x20resolve\x20—\x20return\x20the\x20industry\x20root\x20directory.\x0a'+'\x20\x20•\x20list_files\x20—\x20list\x20files\x20under\x20the\x20industry\x20directory.\x0a'+'\x20\x20•\x20read_file\x20—\x20read\x20a\x20file\x20under\x20the\x20industry\x20directory\x20(path\x20required).\x0a'+'\x20\x20•\x20write_file\x20—\x20write\x20content\x20to\x20a\x20file\x20under\x20the\x20industry\x20directory\x20(path\x20+\x20content\x20required).\x0a'+'\x20\x20•\x20get\x20—\x20return\x20registered\x20layer\x20data\x20for\x20an\x20industry\x20(name\x20required;\x20dispute/compliance/supply/rules/playbook).\x0a'+'\x20\x20•\x20diff\x20—\x20compare\x20registered\x20vs\x20on-disk\x20manifest\x20version/layers\x20(name\x20required).\x0a'+'\x20\x20•\x20reset\x20—\x20restore\x20a\x20file\x20or\x20entire\x20pack\x20folder\x20to\x20its\x20pristine\x20annotated\x20template\x20(path\x20required).\x0a'+'\x20\x20•\x20delete_file\x20—\x20delete\x20a\x20file\x20or\x20directory\x20(path\x20required).\x0a'+'\x20\x20•\x20create_file\x20—\x20create\x20an\x20empty\x20file\x20(path\x20required;\x20content\x20optional).\x0a'+'\x20\x20•\x20create_dir\x20—\x20create\x20a\x20directory\x20recursively\x20(path\x20required).\x0a'+'\x20\x20•\x20copy\x20—\x20copy\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a'+'\x20\x20•\x20move\x20/\x20rename\x20—\x20move\x20or\x20rename\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a'+'\x20\x20•\x20recommend_industry\x20—\x20business\x20intent\x20text\x20→\x20top-3\x20similar\x20industry\x20modes\x20(trait\x20similarity;\x20optional\x20strategy\x20statements\x20re-rank\x20by\x20lever\x20alignment).\x0a'+'\x20\x20•\x20list_modes\x20—\x20list\x20builtin\x20+\x20caller\x27s\x20custom\x20industry\x20modes.\x0a'+'\x20\x20•\x20derive_user_mode\x20—\x20derive\x20(and\x20register)\x20a\x20custom\x20mode\x20from\x20a\x20builtin\x20mode.\x0a'+'\x20\x20•\x20evolve_user_mode\x20—\x20iterate\x20an\x20existing\x20custom\x20mode\x20(version-bumped\x20evolution\x20history).\x0a'+'\x20\x20•\x20register_user_mode\x20—\x20register\x20a\x20fully\x20custom\x20mode\x20(machine_shape\x20+\x20key_risk\x20required).\x0a'+'\x20\x20•\x20unregister_user_mode\x20—\x20delete\x20a\x20custom\x20mode\x20(owner\x20only).\x0a'+'\x20\x20•\x20register_custom_metric\x20—\x20register\x20a\x20global\x20custom\x20evaluation\x20metric\x20(risk/benefit;\x20persisted).\x0a'+'\x20\x20•\x20unregister_custom_metric\x20—\x20delete\x20a\x20custom\x20metric\x20(custom\x20only;\x20builtin\x20metrics\x20cannot\x20be\x20deleted).\x0a'+'\x20\x20•\x20register_custom_constraint\x20—\x20register\x20a\x20custom\x20mode\x20constraint\x20(4\x20rule\x20types;\x20hard/soft;\x20persisted).\x0a'+'\x20\x20•\x20unregister_custom_constraint\x20—\x20delete\x20a\x20custom\x20constraint\x20(custom\x20only;\x20builtin\x20constraints\x20cannot\x20be\x20deleted).\x0a'+'\x20\x20•\x20list_metrics_constraints\x20—\x20list\x20metrics\x20+\x20constraints\x20(filterable\x20by\x20type/scope).\x0a\x0a'+'Local\x20filesystem\x20+\x20in-memory\x20registry\x20only;\x20never\x20mutates\x20chain\x20state.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27industry_pack_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':IndustryPackOperationInputSchema,'outputSchema':IndustryPackOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('industry_pack',['industry','pack','mode','match','persona','scaffold','template'])}},{'name':'benchmark_migration_operation','handler':handleBenchmarkMigrationOperation,'config':{'title':'🏆\x20Template\x20Migration\x20-\x20Industry\x20Templates\x20&\x20Competitor\x20Migration','summary':'MD\x20industry-archetype\x20templates\x20(hot-loaded,\x20'+BUILTIN_TEMPLATE_COUNT+'\x20built-ins)\x20+\x20pre-deploy\x20risk\x20scan\x20+\x20one-click\x20competitor\x20migration.','description':'Industry-archetype\x20MD\x20templates\x20and\x20one-click\x20competitor\x20migration\x20(V2\x20MD-template\x20architecture).\x20'+'Templates\x20live\x20in\x20`.wowok/industry/<industry>/templates/<variant>.md`\x20(the\x20client\x27s\x20industry\x20drawer\x20tree\x20—\x20hot-loaded,\x20zod-validated\x20frontmatter;\x20'+(BUILTIN_TEMPLATE_COUNT+'\x20built-in\x20archetypes\x20across\x20'+BUILTIN_INDUSTRY_COUNT+'\x20industries\x20are\x20seeded\x20idempotently\x20and\x20never\x20')+'overwritten).\x20Each\x20template\x20is\x20a\x20ScenarioMode-compatible\x20build\x20shape\x20(machine_shape\x20/\x20guards\x20/\x20'+'allocator)\x20plus\x20fee\x20parameters\x20and\x20R1-R10\x20trust\x20mechanisms.\x0a\x0a'+'Product\x20tagging:\x20every\x20built-in\x20carries\x20a\x20`product_ref`\x20benchmark\x20slug\x20(e.g.\x20retail/scale-marketplace\x20→\x20'+'\x27amazon\x27,\x20travel/global-ota\x20→\x20\x27booking-com\x27).\x20This\x20is\x20the\x20ONLY\x20sanctioned\x20company\x20name\x20—\x20it\x20lets\x20a\x20user\x20'+'pick\x20a\x20template\x20by\x20naming\x20the\x20incumbent\x20product\x20they\x20want\x20to\x20migrate\x20from.\x20When\x20the\x20user\x20names\x20a\x20product,\x20'+'call\x20template_list\x20and\x20match\x20on\x20product_ref,\x20then\x20template_generate/migration_apply\x20with\x20that\x20template_id.\x0a\x0a'+'Three\x20build\x20modes\x20(choose\x20from\x20the\x20user\x27s\x20intent):\x0a'+'\x20\x20•\x20template-driven\x20—\x20pick\x20the\x20closest\x20product_ref/industry\x20template,\x20adopt\x20it\x20as-is\x20(template_generate).\x0a'+'\x20\x20•\x20template\x20+\x20partial\x20customization\x20—\x20start\x20from\x20a\x20template,\x20then\x20override\x20fee_params\x20(fee_overrides)\x20or\x20'+'edit\x20the\x20MD\x20file\x20via\x20industry_pack_operation\x20write_file\x20before\x20generating.\x0a'+'\x20\x20•\x20fully\x20custom\x20—\x20skip\x20templates;\x20drive\x20the\x20merchant-guide\x20pipeline\x20from\x20a\x20free-text\x20description.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20template_list\x20—\x20list\x20the\x20loaded\x20MD\x20templates\x20(optional\x20industry\x20filter;\x20rows\x20carry\x20product_ref);\x20load\x20errors\x20are\x20'+'reported,\x20never\x20silently\x20dropped.\x0a'+'\x20\x20•\x20template_get\x20—\x20fetch\x20one\x20template\x20by\x20template_id\x20(full\x20machine_shape/guards/allocator/'+'fee_params/trust_mechanisms/body).\x0a'+'\x20\x20•\x20template_generate\x20—\x20generate\x20a\x20creation\x20plan\x20from\x20a\x20template\x20via\x20the\x20merchant-guide\x20pipeline\x20'+'(template_id\x20required;\x20scan-first\x20—\x20CRITICAL\x20findings\x20block;\x20description\x20optional\x20as\x20the\x20intent\x20'+'text;\x20fee_overrides\x20optional;\x20never\x20executes\x20on-chain).\x0a'+'\x20\x20•\x20plan_execute\x20—\x20execute\x20the\x20plan\x20returned\x20by\x20template_generate\x20in\x20ONE\x20call\x20(plan\x20required):\x20'+'materializes\x20every\x20step\x20in\x20order\x20through\x20the\x20built-in\x20executor\x20(chain\x20writes).\x20On\x20a\x20mid-plan\x20'+'failure\x20the\x20response\x20reports\x20completed_steps\x20+\x20outputs\x20—\x20retry\x20by\x20passing\x20the\x20SAME\x20plan\x20with\x20'+'completed_steps/previous_outputs\x20to\x20RESUME\x20where\x20it\x20halted\x20(never\x20re-run\x20from\x20scratch:\x20the\x20'+'already-created\x20objects\x20would\x20duplicate).\x0a'+'\x20\x20•\x20template_scan\x20—\x20pre-deploy\x20risk\x20scan\x20of\x20one\x20template\x20(template_id\x20required):\x20synthetic\x20draft\x20'+'topology\x20through\x20the\x20same\x20rule\x20surface\x20as\x20on-chain\x20analyze\x20+\x20static\x20R1-R10\x20checks;\x20returns\x20'+'risk_level/findings/red_flags\x20plus\x20a\x20drift\x20face\x20(disk-vs-catalog\x20provenance\x20of\x20the\x20scanned\x20'+'body\x20—\x20blocked=true\x20means\x20the\x20audited\x20body\x20is\x20not\x20the\x20shipped\x20catalog\x20body)\x20and\x20a\x20compile\x20'+'dry-run\x20verdict\x20(compile_dry_run.status\x20ready/blocked/unavailable\x20—\x20synthetic-probe\x20'+'buildability\x20through\x20the\x20same\x20pipeline\x20template_generate\x20uses,\x20mirrored\x20to\x20the\x20'+'generate\x20gate:\x20CRITICAL\x20+\x20N-21\x20HIGH\x20findings\x20+\x20graph\x20+\x20audit\x20blockers;\x20blocked\x20lists\x20'+'the\x20named\x20rules\x20the\x20generate\x20face\x20would\x20refuse\x20on);\x20CRITICAL\x20blocks\x20generation/apply.\x0a'+'\x20\x20•\x20migration_import\x20—\x20competitor\x20URL/description\x20→\x20structured\x20MigrationLog:\x20mapped\x20/\x20'+'unmapped\x20/\x20manual_review\x20entries,\x20WoWok\x20advantages,\x20customizable\x20modules,\x20role\x20assessment\x20'+'and\x20a\x20dry-run\x20risk\x20check\x20(description\x20required;\x20url\x20recorded\x20as\x20provenance\x20only;\x20default\x20'+'network\x20testnet).\x0a'+'\x20\x20•\x20migration_review\x20—\x20surface\x20a\x20prior\x20MigrationLog\x20with\x20counts\x20+\x20risk\x20status\x20for\x20user\x20'+'confirmation\x20(log\x20required).\x0a'+'\x20\x20•\x20migration_apply\x20—\x20run\x20the\x20approved\x20template\x20through\x20the\x20merchant-guide\x20pipeline\x20'+'(template_id\x20required;\x20scan-first\x20—\x20CRITICAL\x20findings\x20block;\x20creation\x20plan\x20only\x20—\x20never\x20executes\x20'+'on-chain;\x20default\x20network\x20testnet,\x20mainnet\x20requires\x20explicit\x20user\x20confirmation).\x0a\x0a'+'Deterministic\x20planning;\x20only\x20plan_execute\x20writes\x20chain\x20state\x20(its\x20plan\x27s\x20steps)\x20—\x20every\x20other\x20action\x20is\x20a\x20read/plan\x20emission.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27benchmark_migration_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':BenchmarkMigrationSchema,'outputSchema':BenchmarkMigrationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('benchmark_migration',['template','migration','competitor','industry','leader','challenger','scan','risk'])}},{'name':'service_clone_operation','handler':handleServiceCloneOperation,'config':{'title':'🧬\x20Service\x20Clone\x20-\x20Rebuild\x20On-chain\x20Services','summary':'Read\x20an\x20existing\x20Service\x27s\x20full\x20configuration\x20and\x20rebuild\x20it\x20as\x20a\x20new\x20object\x20with\x20optional\x20overrides\x20(token,\x20network,\x20fees).','description':'Clone\x20an\x20existing\x20on-chain\x20Service\x20into\x20a\x20new\x20object.\x20'+'Two\x20actions:\x0a'+'\x20\x20•\x20clone_plan\x20—\x20read\x20the\x20source\x20Service\x20(service\x20fields,\x20machine\x20graph,\x20guards,\x20permission,\x20'+'allocators)\x20and\x20emit\x20a\x20reconstruction\x20plan.\x20Optional\x20overrides:\x20token_type\x20(change\x20payment\x20'+'token),\x20network\x20(target\x20network),\x20description,\x20location,\x20sales,\x20compensation_fund,\x20'+'order_allocators.\x20Never\x20executes\x20on-chain.\x0a'+'\x20\x20•\x20clone_apply\x20—\x20take\x20a\x20prior\x20clone_plan\x20(possibly\x20user-edited),\x20apply\x20overrides,\x20run\x20the\x20'+'pre-publish\x20gate\x20(machine\x20topology,\x20allocator\x20guard\x20lint,\x20immutability\x20warnings),\x20and\x20emit\x20'+'the\x20exact\x20onchain_operations\x20payloads\x20in\x20execution\x20order.\x20Never\x20executes\x20on-chain.\x0a\x0a'+'Workflow:\x20clone_plan\x20→\x20review/edit\x20the\x20plan\x20→\x20clone_apply\x20→\x20review\x20gate\x20findings\x20→\x20execute\x20'+'the\x20operations\x20via\x20onchain_operations.\x0a\x0a'+'Deterministic\x20knowledge\x20lookups\x20+\x20planning;\x20never\x20mutates\x20chain\x20state.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27service_clone_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':ServiceCloneSchema,'outputSchema':ServiceCloneOutputSchema,'annotations':{'readOnlyHint':!![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('service_clone',['clone','service','rebuild','token','network','migrate'])}},{'name':'strategy_review_operation','handler':handleStrategyReviewOperation,'config':{'title':'📈\x20Strategy\x20Review\x20-\x20Posture-Weighted\x20Scorecard\x20&\x20Periodic\x20Review','summary':'Collect\x20on-chain/derived\x20evidence\x20for\x20an\x20(account,\x20industry),\x20snapshot\x20it\x20locally,\x20and\x20assemble\x20posture-weighted\x20strategy\x20reviews\x20with\x20current-layer\x20persona\x20proposals.','description':'Evidence-driven\x20operating\x20review\x20for\x20one\x20merchant\x20account\x20in\x20one\x20industry,\x20built\x20on\x20the\x20six-industry\x20'+'strategy\x20catalog\x20(education/rental/freelance/subscription/travel/retail\x20+\x20pack-registered\x20ids).\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20collect\x20—\x20gather\x20fresh\x20evidence\x20(journey\x20funnel,\x20order\x20flow,\x20market\x20metrics,\x20service\x20discovery\x20/\x20'+'competitor\x20count,\x20arbitration\x20trust,\x20account\x20attention),\x20persist\x20ONE\x20append-only\x20snapshot\x20in\x20local\x20'+'SQLite\x20KV,\x20and\x20return\x20the\x20raw\x20collection.\x20Failed\x20evidence\x20sources\x20degrade\x20single\x20metrics\x20to\x20'+'unavailable/error\x20—\x20never\x20zero-filled;\x20storage\x20failure\x20is\x20fail-soft\x20and\x20never\x20loses\x20the\x20collection.\x0a'+'\x20\x20•\x20review\x20—\x20gather\x20fresh\x20evidence\x20WITHOUT\x20persisting,\x20diff\x20against\x20the\x20latest\x20stored\x20snapshot,\x20'+'score\x200–100\x20under\x20the\x20persona\x27s\x20merchant\x20posture\x20(volume/balanced/margin,\x20renormalized\x20over\x20'+'available\x20anchored\x20metrics),\x20and\x20return\x20findings,\x20deterministic\x20pricing/posture\x20recommendations,\x20'+'cadence\x20status\x20and\x20at\x20most\x20two\x20persona\x20proposals.\x20Proposals\x20target\x20the\x20CURRENT\x20layer\x20ONLY\x20and\x20are\x20'+'applied\x20only\x20when\x20the\x20user\x20explicitly\x20calls\x20persona_operation\x20apply\x20—\x20this\x20tool\x20never\x20writes\x20the\x20'+'persona\x20and\x20never\x20mutates\x20chain\x20state.\x0a'+'\x20\x20•\x20list_snapshots\x20—\x20list\x20stored\x20snapshot\x20summaries\x20(oldest-first)\x20for\x20account+industry.\x0a\x0a'+'Posture\x20defaults:\x20explicit\x20`posture`\x20arg\x20→\x20merchant\x20posture\x20in\x20the\x20effective\x20persona\x20→\x20\x27balanced\x27.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27strategy_review_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':StrategyReviewOperationInputSchema,'outputSchema':StrategyReviewOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':![],'openWorldHint':!![]},'_meta':createToolMeta('strategy',['strategy','scorecard','review','posture','metrics','industry','competitor','retention','dispute'])},'timeoutMs':0x1d4c0},{'name':'workspace_operation','handler':handleWorkspaceOperation,'config':{'title':'📁\x20Workspace\x20-\x20File\x20Generation\x20&\x20User\x20Data','summary':'Local\x20workspace\x20files:\x20list,\x20read,\x20search,\x20glob,\x20edit,\x20write,\x20move,\x20copy,\x20delete.','description':'Manage\x20the\x20local\x20workspace\x20directory\x20(`.wowok/workspace`):\x20files\x20generated\x20for\x20review\x20'+'(machine/guard/wts/wip\x20JSON)\x20and\x20user-created\x20documents.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20resolve\x20—\x20return\x20the\x20workspace\x20root\x20directory.\x0a'+'\x20\x20•\x20list\x20—\x20list\x20files\x20under\x20the\x20workspace.\x0a'+'\x20\x20•\x20read\x20—\x20read\x20a\x20file\x27s\x20content\x20(use\x20as\x20AI\x20context);\x20optional\x20offset/limit\x20line\x20slicing\x20'+'(1-based\x20offset,\x20max\x202000\x20lines)\x20and\x20encoding=\x27base64\x27\x20for\x20raw\x20bytes\x20(≤10MB).\x0a'+'\x20\x20•\x20search\x20—\x20regex\x20content\x20search\x20across\x20workspace\x20files\x20(pattern\x20required;\x20optional\x20path\x20scope,\x20'+'glob\x20basename\x20filter,\x20ignore_case,\x20max_results\x20≤200,\x20context_lines\x20≤5).\x20Skips\x20binary/large\x20files.\x0a'+'\x20\x20•\x20glob\x20—\x20list\x20files\x20whose\x20workspace-relative\x20path\x20matches\x20a\x20wildcard\x20pattern\x20(\x27**\x27\x20spans\x20'+'directories,\x20\x27*\x27\x20stays\x20within\x20one\x20segment,\x20\x27?\x27\x20=\x20one\x20char,\x20\x27{a,b}\x27\x20alternation).\x0a'+'\x20\x20•\x20edit\x20—\x20exact\x20string\x20replacement\x20inside\x20a\x20file\x20(path\x20+\x20old_string\x20+\x20new_string\x20required;\x20'+'errors\x20when\x20old_string\x20is\x20not\x20unique\x20unless\x20replace_all=true;\x20files\x20≤2MB).\x0a'+'\x20\x20•\x20write\x20—\x20write/overwrite\x20a\x20file\x20(path\x20+\x20content).\x0a'+'\x20\x20•\x20delete\x20—\x20delete\x20a\x20file.\x0a'+'\x20\x20•\x20create_file\x20—\x20create\x20an\x20empty\x20file\x20(path\x20required;\x20content\x20optional).\x0a'+'\x20\x20•\x20create_dir\x20—\x20create\x20a\x20directory\x20recursively\x20(path\x20required).\x0a'+'\x20\x20•\x20copy\x20—\x20copy\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a'+'\x20\x20•\x20move\x20—\x20move\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a'+'\x20\x20•\x20rename\x20—\x20rename\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a\x0a'+'Local\x20filesystem\x20only;\x20never\x20mutates\x20chain\x20state.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27workspace_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':WorkspaceOperationInputSchema,'outputSchema':WorkspaceOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('workspace',['workspace','file','document','machine','guard','wts','wip','context'])}},{'name':'workflow_operation','handler':handleWorkflowOperation,'config':{'title':'🔀\x20Workflow\x20-\x20Local-Account\x20Progress\x20Tasks','summary':'List\x20local-account\x20progress\x20(actionable\x20+\x20related/history)\x20+\x20advance/hold/unhold\x20forwards\x20+\x20view\x20progress\x20history.','description':'Local-account\x20workflow\x20view\x20over\x20on-chain\x20Progress\x20objects.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20list\x20—\x20enumerate\x20progress\x20related\x20to\x20local\x20accounts:\x20actionable\x20first\x20(a\x20'+'local\x20account\x20can\x20advance\x20a\x20forward),\x20plus\x20related\x20/\x20completed\x20progress\x20(order\x20'+'holder,\x20named\x20operator,\x20or\x20session\x20operator\x20involvement)\x20so\x20the\x20user\x20always\x20'+'keeps\x20visibility\x20of\x20their\x20own\x20progress\x20history.\x20Each\x20task\x20carries\x20every\x20'+'reachable\x20next\x20node\x20+\x20forward,\x20the\x20local\x20accounts\x20that\x20can\x20execute\x20each\x20'+'forward\x20(order\x20holder\x20/\x20named\x20operator\x20/\x20permission\x20index,\x20including\x20admin),\x20'+'guard\x20reminders\x20(a\x20forward\x20with\x20a\x20guard\x20must\x20be\x20verified\x20via\x20passport),\x20and\x20'+'the\x20on-chain\x20history_count.\x0a'+'\x20\x20•\x20operate\x20—\x20advance\x20(\x27next\x27)\x20/\x20block\x20(\x27hold\x27)\x20/\x20release\x20(\x27unhold\x27)\x20/\x20force-release\x20'+'(\x27adminUnhold\x27)\x20a\x20forward\x20as\x20a\x20chosen\x20local\x20account\x20(env.account).\x20Delegates\x20to\x20the\x20'+'on-chain\x20progress\x20operation\x20(guard-aware).\x0a'+'\x20\x20•\x20history\x20—\x20incrementally\x20sync\x20a\x20progress\x27s\x20ON-CHAIN\x20history\x20(Progress.history\x20'+'append-only\x20u64\x20index)\x20into\x20the\x20local\x20SQLite\x20mirror\x20via\x20a\x20per-progress\x20cursor\x20'+'(only\x20NEW\x20records\x20are\x20pulled),\x20then\x20return\x20the\x20migration\x20timeline\x20(newest\x20first)\x20'+'with\x20each\x20migration\x27s\x20session\x20snapshot\x20(forwards\x20/\x20operator\x20address\x20/\x20weight\x20/\x20time).\x20'+'Also\x20runs\x20a\x2090-day\x20retention\x20cleanup\x20of\x20stale\x20progress\x20histories\x20by\x20default.\x0a\x0a'+'Permission\x20model\x20(chain-authoritative):\x20a\x20forward\x20is\x20executable\x20by\x20an\x20account\x20when\x20'+'(a)\x20namedOperator=\x22\x22\x20and\x20the\x20account\x20is\x20the\x20order\x20holder\x20(order\x20builder\x20or\x20agent),\x20'+'or\x20(b)\x20namedOperator=name\x20and\x20the\x20account\x20is\x20in\x20progress.namedOperator[name],\x20or\x20'+'(c)\x20permissionIndex\x20is\x20set\x20and\x20the\x20account\x20is\x20in\x20permission.admin\x20or\x20permission.table.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27workflow_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':WorkflowOperationInputSchema,'outputSchema':WorkflowOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':!![],'idempotentHint':![],'openWorldHint':!![]},'_meta':createToolMeta('workflow',['workflow','progress','forward','permission','named-operator','guard','advance','hold'])},'timeoutMs':0x1d4c0},{'name':'permission_operation','handler':handlePermissionOperation,'config':{'title':'🛡️\x20Permissions\x20-\x20Local-Account\x20Overview','summary':'List\x20Permissions\x20related\x20to\x20local\x20accounts\x20with\x20related\x20accounts/objects.','description':'Local-account\x20Permission\x20overview.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20list\x20—\x20enumerate\x20every\x20on-chain\x20Permission\x20object\x20related\x20to\x20at\x20least\x20one\x20LOCAL\x20'+'account\x20(reverse-looked-up\x20via\x20the\x20global\x20entity_permission\x20index\x20@0xaad),\x20deduplicated\x20'+'and\x20merged.\x20Each\x20row\x20includes\x20description,\x20owner,\x20latest\x20on-chain\x20update\x20time,\x20related\x20'+'accounts\x20(owner/admin/entity),\x20and\x20related\x20objects\x20(grouped\x20by\x20type\x20via\x20the\x20registrar\x20'+'linker).\x20Pass\x20`permission`\x20to\x20scope\x20the\x20listing\x20to\x20ONE\x20Permission\x20address\x20—\x20fast\x20path\x20'+'(metadata\x20+\x20local-account\x20roles\x20only;\x20skips\x20the\x20per-permission\x20linker/tx-time\x20fan-out)\x20'+'for\x20detail-page\x20Permission\x20rows.\x0a\x0a'+'Read-only\x20(no\x20on-chain\x20mutation).\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27permission_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':PermissionOperationInputSchema,'outputSchema':PermissionOperationOutputSchema,'annotations':{'readOnlyHint':!![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('query',['permission','account','role','owner','admin','entity','overview','registrar','reverse-index'])}}];
1
+ import{handleIndustryPackOperation}from'../handlers/industry-pack.js';import{handleBenchmarkMigrationOperation}from'../handlers/benchmark-migration.js';import{handleStrategyReviewOperation}from'../handlers/strategy-review.js';import{handleWorkspaceOperation}from'../handlers/workspace.js';import{handleWorkflowOperation}from'../handlers/workflow.js';import{handlePermissionOperation}from'../handlers/permission.js';import{handleServiceCloneOperation}from'../handlers/service-clone.js';import{createToolMeta,IndustryPackOperationInputSchema,IndustryPackOperationOutputSchema,BenchmarkMigrationSchema,BenchmarkMigrationOutputSchema,StrategyReviewOperationInputSchema,StrategyReviewOperationOutputSchema,WorkspaceOperationInputSchema,WorkspaceOperationOutputSchema,WorkflowOperationInputSchema,WorkflowOperationOutputSchema,PermissionOperationInputSchema,PermissionOperationOutputSchema,ServiceCloneSchema,ServiceCloneOutputSchema}from'../../schema/index.js';import{CATALOG_INDUSTRY_COUNT as a580a,CATALOG_TEMPLATE_COUNT as a580b}from'../../knowledge/catalog-facts.js';export const BUSINESS_TOOLS=[{'name':'industry_pack_operation','handler':handleIndustryPackOperation,'config':{'title':'🧩\x20Industry\x20Pack\x20-\x20Knowledge\x20Template\x20Orchestration','summary':'Industry\x20knowledge\x20packs:\x20scaffold,\x20register,\x20list,\x20reset\x20templates.','description':'Manage\x20industry\x20knowledge\x20packs\x20(distributable,\x20registrable,\x20versionable\x20units\x20carrying\x20'+'one\x20industry\x27s\x20object-shape,\x20matching\x20rules,\x20and\x20role\x20personae).\x0a\x0a'+'Pack\x20layout\x20(merged\x20v2):\x20pack.json\x20(settings\x20only\x20—\x20manifest\x20+\x20match\x20+\x20personae\x20+\x20'+'dispute/compliance/supply/rules\x20sections;\x20field\x20explanations\x20live\x20in\x20the\x20industry-root\x20'+'README.md)\x20and\x20playbook.md\x20(chaptered\x20AI\x20prompt\x20guide).\x20Legacy\x20split-file\x20layouts\x20'+'(manifest.json/match.json/personae)\x20are\x20still\x20read\x20for\x20backward\x20compatibility.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20scaffold\x20—\x20generate\x20a\x20pack\x20template\x20skeleton\x20(pack.json\x20+\x20playbook.md,\x20settings\x20only)\x20'+'into\x20the\x20industry\x20directory;\x20the\x20user\x20fills\x20in\x20the\x20content.\x0a'+'\x20\x20•\x20list\x20—\x20list\x20currently\x20registered\x20packs.\x0a'+'\x20\x20•\x20scan\x20—\x20scan\x20+\x20register\x20every\x20pack\x20under\x20the\x20default\x20industry\x20directory.\x0a'+'\x20\x20?\x20template_drift\x20-\x20REPORT\x20builtin\x20template\x20files\x20whose\x20on-disk\x20body\x20differs\x20from\x20the\x20'+'in-code\x20catalog\x20(no_sentinel_legacy\x20/\x20stale_release\x20/\x20user_modified).\x20Run\x20this\x20FIRST\x20when\x20a\x20'+'template\x20change\x20appears\x20to\x20have\x20no\x20effect:\x20a\x20builtin\x20file\x20seeded\x20before\x20the\x20release\x20'+'sentinel\x20existed\x20carries\x20no\x20sentinel\x20and\x20is\x20never\x20upgraded\x20automatically.'+'\x20\x20?\x20repair_builtin_templates\x20-\x20RESEED\x20those\x20legacy\x20files\x20from\x20the\x20in-code\x20catalog.\x20'+'Identity-gated\x20on\x20a\x20known\x20builtin\x20id;\x20the\x20previous\x20body\x20is\x20kept\x20in\x20the\x20hidden\x20templates/.archive/\x20dir\x20and\x20a\x20'+'custom\x20(user)\x20template\x20is\x20never\x20touched.'+'\x20\x20•\x20resolve\x20—\x20return\x20the\x20industry\x20root\x20directory.\x0a'+'\x20\x20•\x20list_files\x20—\x20list\x20files\x20under\x20the\x20industry\x20directory.\x0a'+'\x20\x20•\x20read_file\x20—\x20read\x20a\x20file\x20under\x20the\x20industry\x20directory\x20(path\x20required).\x0a'+'\x20\x20•\x20write_file\x20—\x20write\x20content\x20to\x20a\x20file\x20under\x20the\x20industry\x20directory\x20(path\x20+\x20content\x20required).\x0a'+'\x20\x20•\x20get\x20—\x20return\x20registered\x20layer\x20data\x20for\x20an\x20industry\x20(name\x20required;\x20dispute/compliance/supply/rules/playbook).\x0a'+'\x20\x20\x20\x20layer=\x27template\x27\x20returns\x20one\x20builtin\x20template\x20(merge-safe\x20projection);\x20layer=\x27params\x27\x20is\x20the\x0a'+'\x20\x20\x20\x20merchant-facing\x20SETTINGS\x20surface:\x20with\x20template=\x27<id>\x27\x20every\x20declared\x20parameter\x20in\x20business\x20order\x0a'+'\x20\x20\x20\x20(tier,\x20tags,\x20kind/unit,\x20meaning,\x20default,\x20accepted\x20values,\x20PROVEN\x20live/inert\x20status,\x20landing,\x20editable);\x0a'+'\x20\x20\x20\x20with\x20\x27query\x27\x20instead\x20of\x20a\x20template\x20id\x20it\x20searches\x20the\x20catalog\x20for\x20a\x20business\x20facet\x20(\x27settlement\x20window\x27,\x0a'+'\x20\x20\x20\x20\x27take\x20rate\x27)\x20and\x20returns\x20ranked\x20hits\x20with\x20explainable\x20reasons\x20—\x20an\x20empty\x20list\x20means\x20no\x20such\x20setting.\x0a'+'\x20\x20\x20\x20layer=\x27components\x27\x20is\x20the\x20COMPONENT\x20surface\x20beside\x20it:\x20one\x20slot\x20per\x20Service/Sale\x20field,\x20allocator\x0a'+'\x20\x20\x20\x20row,\x20per-order\x20Allocation,\x20Machine,\x20Guard,\x20Repository\x20policy,\x20reward,\x20arbitration\x20binding,\x20permission\x0a'+'\x20\x20\x20\x20and\x20treasury\x20item\x20—\x20each\x20with\x20what\x20it\x20is,\x20how\x20it\x20is\x20configured\x20(lifecycle\x20surface\x20create/pre-publish/\x0a'+'\x20\x20\x20\x20append-only/post-publish/immutable\x20+\x20the\x20exact\x20field\x20path),\x20the\x20effect\x20once\x20it\x20applies,\x20and\x20what\x20it\x20is\x0a'+'\x20\x20\x20\x20bound\x20to;\x20a\x20non-configurable\x20slot\x20always\x20carries\x20why_not\x20(e.g.\x20a\x20split\x20hard-coded\x20in\x20the\x20template\x20body).\x0a'+'\x20\x20•\x20capability_list\x20—\x20list\x20the\x20Capability\x20Lattice\x20registry\x20(composable\x20business\x20units;\x20optional\x20group\x20filter).\x0a'+'\x20\x20•\x20capability_get\x20—\x20full\x20card\x20of\x20ONE\x20capability\x20(intent/binds/requires/excludes/risks/disclosures/cost/constraints).\x0a'+'\x20\x20•\x20compose_probe\x20—\x20probe\x20whether\x20a\x20capability\x20selection\x20can\x20coexist\x20in\x20one\x20build\x20(capabilities[]\x20required;\x20optional\x20template\x20as\x20base\x20build).\x0a'+'\x20\x20•\x20product_cards\x20—\x20FRONT-stage\x20ProductCard\x20summaries\x20for\x20the\x20catalog\x20or\x20one\x20industry\x20(optional\x20name\x20filter).\x0a'+'\x20\x20•\x20product_card\x20—\x20the\x20full\x20ProductCard\x20of\x20ONE\x20builtin\x20template\x20(template\x20id\x20required):\x20alignment/features/cost/params/risks,\x20every\x20assertion\x20projected\x20from\x20declared\x20data.\x0a'+'\x20\x20•\x20diff\x20—\x20compare\x20registered\x20vs\x20on-disk\x20manifest\x20version/layers\x20(name\x20required).\x0a'+'\x20\x20•\x20reset\x20—\x20restore\x20a\x20file\x20or\x20entire\x20pack\x20folder\x20to\x20its\x20pristine\x20annotated\x20template\x20(path\x20required).\x0a'+'\x20\x20•\x20delete_file\x20—\x20delete\x20a\x20file\x20or\x20directory\x20(path\x20required).\x0a'+'\x20\x20•\x20create_file\x20—\x20create\x20an\x20empty\x20file\x20(path\x20required;\x20content\x20optional).\x0a'+'\x20\x20•\x20create_dir\x20—\x20create\x20a\x20directory\x20recursively\x20(path\x20required).\x0a'+'\x20\x20•\x20copy\x20—\x20copy\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a'+'\x20\x20•\x20move\x20/\x20rename\x20—\x20move\x20or\x20rename\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a'+'\x20\x20•\x20recommend_industry\x20—\x20business\x20intent\x20text\x20→\x20top-3\x20similar\x20industry\x20modes\x20(trait\x20similarity;\x20optional\x20strategy\x20statements\x20re-rank\x20by\x20lever\x20alignment).\x0a'+'\x20\x20•\x20list_modes\x20—\x20list\x20builtin\x20+\x20caller\x27s\x20custom\x20industry\x20modes.\x0a'+'\x20\x20•\x20derive_user_mode\x20—\x20derive\x20(and\x20register)\x20a\x20custom\x20mode\x20from\x20a\x20builtin\x20mode.\x0a'+'\x20\x20•\x20evolve_user_mode\x20—\x20iterate\x20an\x20existing\x20custom\x20mode\x20(version-bumped\x20evolution\x20history).\x0a'+'\x20\x20•\x20register_user_mode\x20—\x20register\x20a\x20fully\x20custom\x20mode\x20(machine_shape\x20+\x20key_risk\x20required).\x0a'+'\x20\x20•\x20unregister_user_mode\x20—\x20delete\x20a\x20custom\x20mode\x20(owner\x20only).\x0a'+'\x20\x20•\x20register_custom_metric\x20—\x20register\x20a\x20global\x20custom\x20evaluation\x20metric\x20(risk/benefit;\x20persisted).\x0a'+'\x20\x20•\x20unregister_custom_metric\x20—\x20delete\x20a\x20custom\x20metric\x20(custom\x20only;\x20builtin\x20metrics\x20cannot\x20be\x20deleted).\x0a'+'\x20\x20•\x20register_custom_constraint\x20—\x20register\x20a\x20custom\x20mode\x20constraint\x20(4\x20rule\x20types;\x20hard/soft;\x20persisted).\x0a'+'\x20\x20•\x20unregister_custom_constraint\x20—\x20delete\x20a\x20custom\x20constraint\x20(custom\x20only;\x20builtin\x20constraints\x20cannot\x20be\x20deleted).\x0a'+'\x20\x20•\x20list_metrics_constraints\x20—\x20list\x20metrics\x20+\x20constraints\x20(filterable\x20by\x20type/scope).\x0a\x0a'+'Local\x20filesystem\x20+\x20in-memory\x20registry\x20only;\x20never\x20mutates\x20chain\x20state.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27industry_pack_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':IndustryPackOperationInputSchema,'outputSchema':IndustryPackOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('industry_pack',['industry','pack','mode','match','persona','scaffold','template'])}},{'name':'benchmark_migration_operation','handler':handleBenchmarkMigrationOperation,'config':{'title':'🏆\x20Template\x20Migration\x20-\x20Industry\x20Templates\x20&\x20Competitor\x20Migration','summary':'MD\x20industry-archetype\x20templates\x20(hot-loaded,\x20'+a580b+'\x20built-ins)\x20+\x20pre-deploy\x20risk\x20scan\x20+\x20one-click\x20competitor\x20migration.','description':'Industry-archetype\x20MD\x20templates\x20and\x20one-click\x20competitor\x20migration\x20(V2\x20MD-template\x20architecture).\x20'+'Templates\x20live\x20in\x20`.wowok/industry/<industry>/templates/<variant>.md`\x20(the\x20client\x27s\x20industry\x20drawer\x20tree\x20—\x20hot-loaded,\x20zod-validated\x20frontmatter;\x20'+(a580b+'\x20built-in\x20archetypes\x20across\x20'+a580a+'\x20industries\x20are\x20seeded\x20idempotently\x20and\x20never\x20')+'overwritten).\x20Each\x20template\x20is\x20a\x20ScenarioMode-compatible\x20build\x20shape\x20(machine_shape\x20/\x20guards\x20/\x20'+'allocator)\x20plus\x20fee\x20parameters\x20and\x20R1-R10\x20trust\x20mechanisms.\x0a\x0a'+'Product\x20tagging:\x20every\x20built-in\x20carries\x20a\x20`product_ref`\x20benchmark\x20slug\x20(e.g.\x20retail/scale-marketplace\x20→\x20'+'\x27amazon\x27,\x20travel/global-ota\x20→\x20\x27booking-com\x27).\x20This\x20is\x20the\x20ONLY\x20sanctioned\x20company\x20name\x20—\x20it\x20lets\x20a\x20user\x20'+'pick\x20a\x20template\x20by\x20naming\x20the\x20incumbent\x20product\x20they\x20want\x20to\x20migrate\x20from.\x20When\x20the\x20user\x20names\x20a\x20product,\x20'+'call\x20template_list\x20and\x20match\x20on\x20product_ref,\x20then\x20template_generate/migration_apply\x20with\x20that\x20template_id.\x0a\x0a'+'Three\x20build\x20modes\x20(choose\x20from\x20the\x20user\x27s\x20intent):\x0a'+'\x20\x20•\x20template-driven\x20—\x20pick\x20the\x20closest\x20product_ref/industry\x20template,\x20adopt\x20it\x20as-is\x20(template_generate).\x0a'+'\x20\x20•\x20template\x20+\x20partial\x20customization\x20—\x20start\x20from\x20a\x20template,\x20then\x20override\x20fee_params\x20(fee_overrides)\x20or\x20'+'edit\x20the\x20MD\x20file\x20via\x20industry_pack_operation\x20write_file\x20before\x20generating.\x0a'+'\x20\x20•\x20fully\x20custom\x20—\x20skip\x20templates;\x20drive\x20the\x20merchant-guide\x20pipeline\x20from\x20a\x20free-text\x20description.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20template_list\x20—\x20list\x20the\x20loaded\x20MD\x20templates\x20(optional\x20industry\x20filter;\x20rows\x20carry\x20product_ref);\x20load\x20errors\x20are\x20'+'reported,\x20never\x20silently\x20dropped.\x0a'+'\x20\x20•\x20template_get\x20—\x20fetch\x20one\x20template\x20by\x20template_id\x20(full\x20machine_shape/guards/allocator/'+'fee_params/trust_mechanisms/body).\x0a'+'\x20\x20•\x20template_generate\x20—\x20generate\x20a\x20creation\x20plan\x20from\x20a\x20template\x20via\x20the\x20merchant-guide\x20pipeline\x20'+'(template_id\x20required;\x20scan-first\x20—\x20CRITICAL\x20findings\x20block;\x20description\x20optional\x20as\x20the\x20intent\x20'+'text;\x20fee_overrides\x20optional;\x20never\x20executes\x20on-chain).\x0a'+'\x20\x20•\x20plan_execute\x20—\x20execute\x20the\x20plan\x20returned\x20by\x20template_generate\x20in\x20ONE\x20call\x20(plan\x20required):\x20'+'materializes\x20every\x20step\x20in\x20order\x20through\x20the\x20built-in\x20executor\x20(chain\x20writes).\x20On\x20a\x20mid-plan\x20'+'failure\x20the\x20response\x20carries\x20a\x20ready-to-pass\x20`resume`\x20payload\x20(completed_steps\x20+\x20previous_outputs)\x20—\x20'+'send\x20it\x20back\x20VERBATIM\x20with\x20the\x20SAME\x20plan\x20to\x20RESUME\x20where\x20it\x20halted\x20(never\x20re-run\x20from\x20scratch:\x20the\x20'+'already-created\x20objects\x20would\x20duplicate),\x20or\x20use\x20resume_from_step\x20(first\x20non-executed\x20step\x20id)\x20+\x20'+'previous_outputs.\x20A\x20step\x20failing\x20with\x20the\x20IDENTICAL\x20error\x20in\x202+\x20consecutive\x20rounds\x20withholds\x20the\x20'+'RESUME\x20recipe\x20(repeated_failures)\x20and\x20a\x20third\x20unchanged\x20re-run\x20is\x20REFUSED\x20(retry_override\x20{step_id,\x20'+'note}\x20is\x20the\x20audited\x20escape\x20hatch).\x0a'+'\x20\x20•\x20template_scan\x20—\x20pre-deploy\x20risk\x20scan\x20of\x20one\x20template\x20(template_id\x20required):\x20synthetic\x20draft\x20'+'topology\x20through\x20the\x20same\x20rule\x20surface\x20as\x20on-chain\x20analyze\x20+\x20static\x20R1-R10\x20checks;\x20returns\x20'+'risk_level/findings/red_flags\x20plus\x20a\x20drift\x20face\x20(disk-vs-catalog\x20provenance\x20of\x20the\x20scanned\x20'+'body\x20—\x20blocked=true\x20means\x20the\x20audited\x20body\x20is\x20not\x20the\x20shipped\x20catalog\x20body)\x20and\x20a\x20compile\x20'+'dry-run\x20verdict\x20(compile_dry_run.status\x20ready/blocked/unavailable\x20—\x20synthetic-probe\x20'+'buildability\x20through\x20the\x20same\x20pipeline\x20template_generate\x20uses,\x20mirrored\x20to\x20the\x20'+'generate\x20gate:\x20CRITICAL\x20+\x20N-21\x20HIGH\x20findings\x20+\x20graph\x20+\x20audit\x20blockers;\x20blocked\x20lists\x20'+'the\x20named\x20rules\x20the\x20generate\x20face\x20would\x20refuse\x20on);\x20CRITICAL\x20blocks\x20generation/apply.\x0a'+'\x20\x20•\x20migration_import\x20—\x20competitor\x20URL/description\x20→\x20structured\x20MigrationLog:\x20mapped\x20/\x20'+'unmapped\x20/\x20manual_review\x20entries,\x20WoWok\x20advantages,\x20customizable\x20modules,\x20role\x20assessment\x20'+'and\x20a\x20dry-run\x20risk\x20check\x20(description\x20required;\x20url\x20recorded\x20as\x20provenance\x20only;\x20default\x20'+'network\x20testnet).\x0a'+'\x20\x20•\x20migration_review\x20—\x20surface\x20a\x20prior\x20MigrationLog\x20with\x20counts\x20+\x20risk\x20status\x20for\x20user\x20'+'confirmation\x20(log\x20required).\x0a'+'\x20\x20•\x20migration_apply\x20—\x20run\x20the\x20approved\x20template\x20through\x20the\x20merchant-guide\x20pipeline\x20'+'(template_id\x20required;\x20scan-first\x20—\x20CRITICAL\x20findings\x20block;\x20creation\x20plan\x20only\x20—\x20never\x20executes\x20'+'on-chain;\x20default\x20network\x20testnet,\x20mainnet\x20requires\x20explicit\x20user\x20confirmation).\x0a\x0a'+'Deterministic\x20planning;\x20only\x20plan_execute\x20writes\x20chain\x20state\x20(its\x20plan\x27s\x20steps)\x20—\x20every\x20other\x20action\x20is\x20a\x20read/plan\x20emission.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27benchmark_migration_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':BenchmarkMigrationSchema,'outputSchema':BenchmarkMigrationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('benchmark_migration',['template','migration','competitor','industry','leader','challenger','scan','risk'])},'timeoutMs':0xdbba0},{'name':'service_clone_operation','handler':handleServiceCloneOperation,'config':{'title':'🧬\x20Service\x20Clone\x20-\x20Rebuild\x20On-chain\x20Services','summary':'Read\x20an\x20existing\x20Service\x27s\x20full\x20configuration\x20and\x20rebuild\x20it\x20as\x20a\x20new\x20object\x20with\x20optional\x20overrides\x20(token,\x20network,\x20fees).','description':'Clone\x20an\x20existing\x20on-chain\x20Service\x20into\x20a\x20new\x20object.\x20'+'Two\x20actions:\x0a'+'\x20\x20•\x20clone_plan\x20—\x20read\x20the\x20source\x20Service\x20(service\x20fields,\x20machine\x20graph,\x20guards,\x20permission,\x20'+'allocators)\x20and\x20emit\x20a\x20reconstruction\x20plan.\x20Optional\x20overrides:\x20token_type\x20(change\x20payment\x20'+'token),\x20network\x20(target\x20network),\x20description,\x20location,\x20sales,\x20compensation_fund,\x20'+'order_allocators.\x20Never\x20executes\x20on-chain.\x0a'+'\x20\x20•\x20clone_apply\x20—\x20take\x20a\x20prior\x20clone_plan\x20(possibly\x20user-edited),\x20apply\x20overrides,\x20run\x20the\x20'+'pre-publish\x20gate\x20(machine\x20topology,\x20allocator\x20guard\x20lint,\x20immutability\x20warnings),\x20and\x20emit\x20'+'the\x20exact\x20onchain_operations\x20payloads\x20in\x20execution\x20order.\x20Never\x20executes\x20on-chain.\x0a\x0a'+'Workflow:\x20clone_plan\x20→\x20review/edit\x20the\x20plan\x20→\x20clone_apply\x20→\x20review\x20gate\x20findings\x20→\x20execute\x20'+'the\x20operations\x20via\x20onchain_operations.\x0a\x0a'+'Deterministic\x20knowledge\x20lookups\x20+\x20planning;\x20never\x20mutates\x20chain\x20state.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27service_clone_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':ServiceCloneSchema,'outputSchema':ServiceCloneOutputSchema,'annotations':{'readOnlyHint':!![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('service_clone',['clone','service','rebuild','token','network','migrate'])}},{'name':'strategy_review_operation','handler':handleStrategyReviewOperation,'config':{'title':'📈\x20Strategy\x20Review\x20-\x20Posture-Weighted\x20Scorecard\x20&\x20Periodic\x20Review','summary':'Collect\x20on-chain/derived\x20evidence\x20for\x20an\x20(account,\x20industry),\x20snapshot\x20it\x20locally,\x20and\x20assemble\x20posture-weighted\x20strategy\x20reviews\x20with\x20current-layer\x20persona\x20proposals.','description':'Evidence-driven\x20operating\x20review\x20for\x20one\x20merchant\x20account\x20in\x20one\x20industry,\x20built\x20on\x20the\x20six-industry\x20'+'strategy\x20catalog\x20(education/rental/freelance/subscription/travel/retail\x20+\x20pack-registered\x20ids).\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20collect\x20—\x20gather\x20fresh\x20evidence\x20(journey\x20funnel,\x20order\x20flow,\x20market\x20metrics,\x20service\x20discovery\x20/\x20'+'competitor\x20count,\x20arbitration\x20trust,\x20account\x20attention),\x20persist\x20ONE\x20append-only\x20snapshot\x20in\x20local\x20'+'SQLite\x20KV,\x20and\x20return\x20the\x20raw\x20collection.\x20Failed\x20evidence\x20sources\x20degrade\x20single\x20metrics\x20to\x20'+'unavailable/error\x20—\x20never\x20zero-filled;\x20storage\x20failure\x20is\x20fail-soft\x20and\x20never\x20loses\x20the\x20collection.\x0a'+'\x20\x20•\x20review\x20—\x20gather\x20fresh\x20evidence\x20WITHOUT\x20persisting,\x20diff\x20against\x20the\x20latest\x20stored\x20snapshot,\x20'+'score\x200–100\x20under\x20the\x20persona\x27s\x20merchant\x20posture\x20(volume/balanced/margin,\x20renormalized\x20over\x20'+'available\x20anchored\x20metrics),\x20and\x20return\x20findings,\x20deterministic\x20pricing/posture\x20recommendations,\x20'+'cadence\x20status\x20and\x20at\x20most\x20two\x20persona\x20proposals.\x20Proposals\x20target\x20the\x20CURRENT\x20layer\x20ONLY\x20and\x20are\x20'+'applied\x20only\x20when\x20the\x20user\x20explicitly\x20calls\x20persona_operation\x20apply\x20—\x20this\x20tool\x20never\x20writes\x20the\x20'+'persona\x20and\x20never\x20mutates\x20chain\x20state.\x0a'+'\x20\x20•\x20list_snapshots\x20—\x20list\x20stored\x20snapshot\x20summaries\x20(oldest-first)\x20for\x20account+industry.\x0a\x0a'+'Posture\x20defaults:\x20explicit\x20`posture`\x20arg\x20→\x20merchant\x20posture\x20in\x20the\x20effective\x20persona\x20→\x20\x27balanced\x27.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27strategy_review_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':StrategyReviewOperationInputSchema,'outputSchema':StrategyReviewOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':![],'openWorldHint':!![]},'_meta':createToolMeta('strategy',['strategy','scorecard','review','posture','metrics','industry','competitor','retention','dispute'])},'timeoutMs':0x1d4c0},{'name':'workspace_operation','handler':handleWorkspaceOperation,'config':{'title':'📁\x20Workspace\x20-\x20File\x20Generation\x20&\x20User\x20Data','summary':'Local\x20workspace\x20files:\x20list,\x20read,\x20search,\x20glob,\x20edit,\x20write,\x20move,\x20copy,\x20delete.','description':'Manage\x20the\x20local\x20workspace\x20directory\x20(`.wowok/workspace`):\x20files\x20generated\x20for\x20review\x20'+'(machine/guard/wts/wip\x20JSON)\x20and\x20user-created\x20documents.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20resolve\x20—\x20return\x20the\x20workspace\x20root\x20directory.\x0a'+'\x20\x20•\x20list\x20—\x20list\x20files\x20under\x20the\x20workspace.\x0a'+'\x20\x20•\x20read\x20—\x20read\x20a\x20file\x27s\x20content\x20(use\x20as\x20AI\x20context);\x20optional\x20offset/limit\x20line\x20slicing\x20'+'(1-based\x20offset,\x20max\x202000\x20lines)\x20and\x20encoding=\x27base64\x27\x20for\x20raw\x20bytes\x20(≤10MB).\x0a'+'\x20\x20•\x20search\x20—\x20regex\x20content\x20search\x20across\x20workspace\x20files\x20(pattern\x20required;\x20optional\x20path\x20scope,\x20'+'glob\x20basename\x20filter,\x20ignore_case,\x20max_results\x20≤200,\x20context_lines\x20≤5).\x20Skips\x20binary/large\x20files.\x0a'+'\x20\x20•\x20glob\x20—\x20list\x20files\x20whose\x20workspace-relative\x20path\x20matches\x20a\x20wildcard\x20pattern\x20(\x27**\x27\x20spans\x20'+'directories,\x20\x27*\x27\x20stays\x20within\x20one\x20segment,\x20\x27?\x27\x20=\x20one\x20char,\x20\x27{a,b}\x27\x20alternation).\x0a'+'\x20\x20•\x20edit\x20—\x20exact\x20string\x20replacement\x20inside\x20a\x20file\x20(path\x20+\x20old_string\x20+\x20new_string\x20required;\x20'+'errors\x20when\x20old_string\x20is\x20not\x20unique\x20unless\x20replace_all=true;\x20files\x20≤2MB).\x0a'+'\x20\x20•\x20write\x20—\x20write/overwrite\x20a\x20file\x20(path\x20+\x20content).\x0a'+'\x20\x20•\x20delete\x20—\x20delete\x20a\x20file.\x0a'+'\x20\x20•\x20create_file\x20—\x20create\x20an\x20empty\x20file\x20(path\x20required;\x20content\x20optional).\x0a'+'\x20\x20•\x20create_dir\x20—\x20create\x20a\x20directory\x20recursively\x20(path\x20required).\x0a'+'\x20\x20•\x20copy\x20—\x20copy\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a'+'\x20\x20•\x20move\x20—\x20move\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a'+'\x20\x20•\x20rename\x20—\x20rename\x20a\x20file\x20or\x20directory\x20(from\x20+\x20to\x20required).\x0a\x0a'+'Local\x20filesystem\x20only;\x20never\x20mutates\x20chain\x20state.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27workspace_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':WorkspaceOperationInputSchema,'outputSchema':WorkspaceOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('workspace',['workspace','file','document','machine','guard','wts','wip','context'])}},{'name':'workflow_operation','handler':handleWorkflowOperation,'config':{'title':'🔀\x20Workflow\x20-\x20Local-Account\x20Progress\x20Tasks','summary':'List\x20local-account\x20progress\x20(actionable\x20+\x20related/history)\x20+\x20advance/hold/unhold\x20forwards\x20+\x20view\x20progress\x20history.','description':'Local-account\x20workflow\x20view\x20over\x20on-chain\x20Progress\x20objects.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20list\x20—\x20enumerate\x20progress\x20related\x20to\x20local\x20accounts:\x20actionable\x20first\x20(a\x20'+'local\x20account\x20can\x20advance\x20a\x20forward),\x20plus\x20related\x20/\x20completed\x20progress\x20(order\x20'+'holder,\x20named\x20operator,\x20or\x20session\x20operator\x20involvement)\x20so\x20the\x20user\x20always\x20'+'keeps\x20visibility\x20of\x20their\x20own\x20progress\x20history.\x20Each\x20task\x20carries\x20every\x20'+'reachable\x20next\x20node\x20+\x20forward,\x20the\x20local\x20accounts\x20that\x20can\x20execute\x20each\x20'+'forward\x20(order\x20holder\x20/\x20named\x20operator\x20/\x20permission\x20index,\x20including\x20admin),\x20'+'guard\x20reminders\x20(a\x20forward\x20with\x20a\x20guard\x20must\x20be\x20verified\x20via\x20passport),\x20and\x20'+'the\x20on-chain\x20history_count.\x0a'+'\x20\x20•\x20operate\x20—\x20advance\x20(\x27next\x27)\x20/\x20block\x20(\x27hold\x27)\x20/\x20release\x20(\x27unhold\x27)\x20/\x20force-release\x20'+'(\x27adminUnhold\x27)\x20a\x20forward\x20as\x20a\x20chosen\x20local\x20account\x20(env.account).\x20Delegates\x20to\x20the\x20'+'on-chain\x20progress\x20operation\x20(guard-aware).\x0a'+'\x20\x20•\x20history\x20—\x20incrementally\x20sync\x20a\x20progress\x27s\x20ON-CHAIN\x20history\x20(Progress.history\x20'+'append-only\x20u64\x20index)\x20into\x20the\x20local\x20SQLite\x20mirror\x20via\x20a\x20per-progress\x20cursor\x20'+'(only\x20NEW\x20records\x20are\x20pulled),\x20then\x20return\x20the\x20migration\x20timeline\x20(newest\x20first)\x20'+'with\x20each\x20migration\x27s\x20session\x20snapshot\x20(forwards\x20/\x20operator\x20address\x20/\x20weight\x20/\x20time).\x20'+'Also\x20runs\x20a\x2090-day\x20retention\x20cleanup\x20of\x20stale\x20progress\x20histories\x20by\x20default.\x0a\x0a'+'Permission\x20model\x20(chain-authoritative):\x20a\x20forward\x20is\x20executable\x20by\x20an\x20account\x20when\x20'+'(a)\x20namedOperator=\x22\x22\x20and\x20the\x20account\x20is\x20the\x20order\x20holder\x20(order\x20builder\x20or\x20agent),\x20'+'or\x20(b)\x20namedOperator=name\x20and\x20the\x20account\x20is\x20in\x20progress.namedOperator[name],\x20or\x20'+'(c)\x20permissionIndex\x20is\x20set\x20and\x20the\x20account\x20is\x20in\x20permission.admin\x20or\x20permission.table.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27workflow_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':WorkflowOperationInputSchema,'outputSchema':WorkflowOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':!![],'idempotentHint':![],'openWorldHint':!![]},'_meta':createToolMeta('workflow',['workflow','progress','forward','permission','named-operator','guard','advance','hold'])},'timeoutMs':0x1d4c0},{'name':'permission_operation','handler':handlePermissionOperation,'config':{'title':'🛡️\x20Permissions\x20-\x20Local-Account\x20Overview','summary':'List\x20Permissions\x20related\x20to\x20local\x20accounts\x20with\x20related\x20accounts/objects.','description':'Local-account\x20Permission\x20overview.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20list\x20—\x20enumerate\x20every\x20on-chain\x20Permission\x20object\x20related\x20to\x20at\x20least\x20one\x20LOCAL\x20'+'account\x20(reverse-looked-up\x20via\x20the\x20global\x20entity_permission\x20index\x20@0xaad),\x20deduplicated\x20'+'and\x20merged.\x20Each\x20row\x20includes\x20description,\x20owner,\x20latest\x20on-chain\x20update\x20time,\x20related\x20'+'accounts\x20(owner/admin/entity),\x20and\x20related\x20objects\x20(grouped\x20by\x20type\x20via\x20the\x20registrar\x20'+'linker).\x20Pass\x20`permission`\x20to\x20scope\x20the\x20listing\x20to\x20ONE\x20Permission\x20address\x20—\x20fast\x20path\x20'+'(metadata\x20+\x20local-account\x20roles\x20only;\x20skips\x20the\x20per-permission\x20linker/tx-time\x20fan-out)\x20'+'for\x20detail-page\x20Permission\x20rows.\x0a\x0a'+'Read-only\x20(no\x20on-chain\x20mutation).\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27permission_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':PermissionOperationInputSchema,'outputSchema':PermissionOperationOutputSchema,'annotations':{'readOnlyHint':!![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('query',['permission','account','role','owner','admin','entity','overview','registrar','reverse-index'])}}];
@@ -1 +1 @@
1
- import{handleConfigOperation}from'../handlers/config.js';import{createToolMeta,ConfigOperationInputSchema,ConfigOperationOutputSchema}from'../../schema/index.js';export const CONFIG_TOOLS=[{'name':'config_operation','handler':handleConfigOperation,'config':{'title':'⚙️\x20Config\x20-\x20Runtime\x20Service\x20Toggles\x20&\x20Judgment\x20Baselines','summary':'Runtime\x20service\x20toggles\x20(confirm_gate,\x20harness,\x20etc.)\x20+\x20judgment\x20baselines\x20(defaults\x20document\x20for\x20scoring/judgment).','description':'Phase\x202\x20runtime\x20configuration\x20—\x20toggle\x20Phase\x202\x20services\x20on/off\x20at\x20runtime\x20WITHOUT\x20restarting\x20the\x20MCP\x20server.\x20'+'This\x20is\x20the\x20session-level\x20switch\x20mechanism:\x20AI\x20can\x20toggle\x20based\x20on\x20user\x20conversation\x20context,\x20or\x20users\x20can\x20'+'directly\x20control\x20which\x20Phase\x202\x20features\x20are\x20active.\x0a\x0a'+'Actions\x20(services):\x0a'+'\x20\x20•\x20list\x20—\x20List\x20all\x20services\x20with\x20current\x20state\x20+\x20reminders.\x0a'+'\x20\x20•\x20toggle\x20—\x20Toggle\x20a\x20service\x20on/off\x20(requires\x20`service`\x20param).\x20Returns\x20reminder\x20text.\x0a'+'\x20\x20•\x20enable\x20—\x20Enable\x20a\x20service\x20(requires\x20`service`\x20param).\x0a'+'\x20\x20•\x20disable\x20—\x20Disable\x20a\x20service\x20(requires\x20`service`\x20param).\x0a'+'\x20\x20•\x20reset\x20—\x20Reset\x20a\x20service\x20to\x20its\x20default\x20(requires\x20`service`\x20param).\x0a'+'\x20\x20•\x20info\x20—\x20Get\x20detailed\x20info\x20about\x20a\x20service\x20(requires\x20`service`\x20param).\x0a\x0a'+'Services:\x0a'+'\x20\x20•\x20confirm_gate\x20—\x20Safety\x20Confirmation\x20Gate\x20(default\x20ON)\x0a'+'\x20\x20•\x20harness\x20—\x20L4\x20Verify/Recover\x20Loop\x20(default\x20OFF)\x0a'+'\x20\x20•\x20semantic_rich\x20—\x20Semantic\x20Layer\x20Enrichment\x20Reminder\x20(default\x20ON)\x0a'+'\x20\x20•\x20experience_layer\x20—\x20Real-time\x20Experience\x20Layer\x20(Phase\x202\x20Topic\x202,\x20default\x20ON)\x0a'+'\x20\x20•\x20customer_intelligence\x20—\x20Buyer\x20Intelligence\x20/\x20Risk\x20&\x20Preference\x20Alerts\x20(Phase\x203\x20C-3,\x20default\x20ON)\x0a'+'\x20\x20•\x20order_monitor\x20—\x20In-progress\x20Order\x20Monitoring\x20(Phase\x203\x20C-3.2,\x20default\x20OFF)\x0a'+'\x20\x20•\x20industry_evolution\x20—\x20Industry\x20Specialization\x20Evolution\x20Flywheel\x20(Phase\x204,\x20default\x20ON)\x0a\x0a'+'Actions\x20(judgment\x20baselines\x20—\x20the\x20defaults\x20document\x20behind\x20every\x20scoring/judgment\x20behavior):\x0a'+'\x20\x20•\x20judgment_list\x20—\x20Show\x20the\x20effective\x20judgment\x20baselines:\x20document\x20locations,\x20user-document\x20load\x20state\x20+\x20last\x20'+'validation\x20error,\x20per-section\x20entry\x20counts,\x20and\x20active\x20session\x20overrides.\x0a'+'\x20\x20•\x20judgment_set\x20—\x20Override\x20ONE\x20value\x20for\x20this\x20session\x20(requires\x20`path`\x20+\x20`value`),\x20e.g.\x20'+'path=\x27evaluation.weights.trust_reviews\x27,\x20value=45.\x20Type-checked\x20against\x20the\x20document;\x20the\x20resulting\x20document\x20'+'is\x20fully\x20validated\x20before\x20the\x20override\x20is\x20accepted.\x0a'+'\x20\x20•\x20judgment_reset\x20—\x20Clear\x20session\x20overrides\x20(one\x20`path`,\x20or\x20all\x20when\x20omitted).\x0a'+'\x20\x20•\x20judgment_doc_read\x20—\x20Read\x20the\x20editable\x20judgment\x20view:\x20the\x20user\x20document\x20when\x20one\x20exists,\x20otherwise\x20the\x20FULL\x20'+'factory\x20defaults\x20document.\x20Read-only;\x20pair\x20with\x20judgment_doc_patch\x20to\x20write.\x0a'+'\x20\x20•\x20judgment_doc_patch\x20—\x20PERSISTENT\x20customization:\x20deep-merge\x20a\x20PARTIAL\x20judgment\x20document\x20(`patch`\x20param)\x20into\x20'+'the\x20user\x20document\x20(key-granularity\x20merge;\x20entries\x20can\x20be\x20retuned\x20or\x20disabled,\x20never\x20deleted).\x20Fully\x20validated\x20'+'before\x20the\x20write\x20(unknown\x20keys/refs\x20are\x20rejected\x20loudly);\x20the\x20previous\x20document\x20is\x20backed\x20up.\x20REQUIRES\x20explicit\x20'+'user\x20confirmation\x20BEFORE\x20calling\x20—\x20show\x20the\x20user\x20exactly\x20which\x20paths\x20change\x20from\x20what\x20to\x20what\x20and\x20wait\x20for\x20'+'their\x20approval;\x20if\x20the\x20user\x20declines,\x20do\x20NOT\x20retry\x20the\x20same\x20patch.\x0a\x0a'+'Long-term\x20customization:\x20prefer\x20judgment_doc_patch\x20for\x20AI-assisted\x20tuning;\x20users\x20can\x20also\x20edit\x20the\x20judgment\x20'+'document\x20directly\x20at\x20the\x20user_path\x20reported\x20by\x20judgment_list\x20(edits\x20hot-reload\x20without\x20a\x20restart;\x20an\x20invalid\x20'+'edit\x20is\x20rejected\x20and\x20the\x20last\x20good\x20version\x20stays\x20in\x20force).\x0a\x0a'+'NOTE:\x20Service\x20toggles\x20persist\x20for\x20the\x20MCP\x20process\x20lifetime.\x20Set\x20WOWOK_RUNTIME_CONFIG_PERSIST=1\x20'+'to\x20persist\x20across\x20sessions\x20to\x20~/.wow/mcp/runtime-config.json.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27config_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema\x20with\x20all\x20actions\x20and\x20field\x20definitions.','inputSchema':ConfigOperationInputSchema,'outputSchema':ConfigOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('config',['config','toggle','service','runtime','switch','enable','disable','judgment','baseline','threshold','weight','tune'])}}];
1
+ import{handleConfigOperation}from'../handlers/config.js';import{createToolMeta,ConfigOperationInputSchema,ConfigOperationOutputSchema}from'../../schema/index.js';export const CONFIG_TOOLS=[{'name':'config_operation','handler':handleConfigOperation,'config':{'title':'⚙️\x20Config\x20-\x20Runtime\x20Service\x20Toggles\x20&\x20Judgment\x20Baselines','summary':'Runtime\x20service\x20toggles\x20(confirm_gate,\x20harness,\x20etc.)\x20+\x20judgment\x20baselines\x20(defaults\x20document\x20for\x20scoring/judgment).','description':'Phase\x202\x20runtime\x20configuration\x20—\x20toggle\x20Phase\x202\x20services\x20on/off\x20at\x20runtime\x20WITHOUT\x20restarting\x20the\x20MCP\x20server.\x20'+'This\x20is\x20the\x20session-level\x20switch\x20mechanism:\x20AI\x20can\x20toggle\x20based\x20on\x20user\x20conversation\x20context,\x20or\x20users\x20can\x20'+'directly\x20control\x20which\x20Phase\x202\x20features\x20are\x20active.\x0a\x0a'+'Actions\x20(services):\x0a'+'\x20\x20•\x20list\x20—\x20List\x20all\x20services\x20with\x20current\x20state\x20+\x20reminders.\x0a'+'\x20\x20•\x20toggle\x20—\x20Toggle\x20a\x20service\x20on/off\x20(requires\x20`service`\x20param).\x20Returns\x20reminder\x20text.\x0a'+'\x20\x20•\x20enable\x20—\x20Enable\x20a\x20service\x20(requires\x20`service`\x20param).\x0a'+'\x20\x20•\x20disable\x20—\x20Disable\x20a\x20service\x20(requires\x20`service`\x20param).\x0a'+'\x20\x20•\x20reset\x20—\x20Reset\x20a\x20service\x20to\x20its\x20default\x20(requires\x20`service`\x20param).\x0a'+'\x20\x20•\x20info\x20—\x20Get\x20detailed\x20info\x20about\x20a\x20service\x20(requires\x20`service`\x20param).\x0a\x0a'+'Services:\x0a'+'\x20\x20•\x20confirm_gate\x20—\x20Safety\x20Confirmation\x20Gate\x20(default\x20ON)\x0a'+'\x20\x20•\x20harness\x20—\x20L4\x20Verify/Recover\x20Loop\x20(default\x20OFF)\x0a'+'\x20\x20•\x20semantic_rich\x20—\x20Semantic\x20Layer\x20Enrichment\x20Reminder\x20(default\x20ON)\x0a'+'\x20\x20•\x20experience_layer\x20—\x20Real-time\x20Experience\x20Layer\x20(Phase\x202\x20Topic\x202,\x20default\x20ON)\x0a'+'\x20\x20•\x20customer_intelligence\x20—\x20Buyer\x20Intelligence\x20/\x20Risk\x20&\x20Preference\x20Alerts\x20(Phase\x203\x20C-3,\x20default\x20ON)\x0a'+'\x20\x20•\x20order_monitor\x20—\x20In-progress\x20Order\x20Monitoring\x20(Phase\x203\x20C-3.2,\x20default\x20OFF)\x0a'+'\x20\x20•\x20industry_evolution\x20—\x20Industry\x20Specialization\x20Evolution\x20Flywheel\x20(Phase\x204,\x20default\x20ON)\x0a\x0a'+'Actions\x20(judgment\x20baselines\x20—\x20the\x20defaults\x20document\x20behind\x20every\x20scoring/judgment\x20behavior):\x0a'+'\x20\x20•\x20judgment_list\x20—\x20Show\x20the\x20effective\x20judgment\x20baselines:\x20document\x20locations,\x20user-document\x20load\x20state\x20+\x20last\x20'+'validation\x20error,\x20per-section\x20entry\x20counts,\x20and\x20active\x20session\x20overrides.\x0a'+'\x20\x20•\x20judgment_set\x20—\x20Override\x20ONE\x20value\x20for\x20this\x20session\x20(requires\x20`path`\x20+\x20`value`),\x20e.g.\x20'+'path=\x27evaluation.weights.trust_reviews\x27,\x20value=45.\x20Type-checked\x20against\x20the\x20document;\x20the\x20resulting\x20document\x20'+'is\x20fully\x20validated\x20before\x20the\x20override\x20is\x20accepted.\x0a'+'\x20\x20•\x20judgment_reset\x20—\x20Clear\x20session\x20overrides\x20(one\x20`path`,\x20or\x20all\x20when\x20omitted).\x0a'+'\x20\x20•\x20judgment_doc_read\x20—\x20Read\x20the\x20editable\x20judgment\x20view:\x20the\x20user\x20document\x20when\x20one\x20exists,\x20otherwise\x20the\x20FULL\x20'+'factory\x20defaults\x20document.\x20Read-only;\x20pair\x20with\x20judgment_doc_patch\x20to\x20write.\x0a'+'\x20\x20•\x20judgment_doc_patch\x20—\x20PERSISTENT\x20customization:\x20deep-merge\x20a\x20PARTIAL\x20judgment\x20document\x20(`patch`\x20param)\x20into\x20'+'the\x20user\x20document\x20(key-granularity\x20merge;\x20entries\x20can\x20be\x20retuned\x20or\x20disabled,\x20never\x20deleted).\x20Fully\x20validated\x20'+'before\x20the\x20write\x20(unknown\x20keys/refs\x20are\x20rejected\x20loudly);\x20the\x20previous\x20document\x20is\x20backed\x20up.\x20CONFIRMATION\x20GATE\x20'+'(code-enforced):\x20the\x20call\x20THROWS\x20unless\x20confirm=true\x20—\x20first\x20show\x20the\x20user\x20exactly\x20which\x20paths\x20change\x20from\x20what\x20'+'to\x20what\x20and\x20wait\x20for\x20their\x20approval;\x20if\x20the\x20user\x20declines,\x20do\x20NOT\x20retry\x20the\x20same\x20patch.\x0a\x0a'+'Actions\x20(match-policy\x20config\x20file\x20—\x20the\x20general\x20user-editable\x20matchmaking\x20rule\x20file\x20at\x20WOWOK_CONFIG_DIR/'+'match-policy.json;\x20it\x20sits\x20in\x20the\x20persona-level\x20match\x20chain:\x20per-call\x20request\x20>\x20account\x20persona\x20>\x20THIS\x20FILE\x20>\x20'+'system\x20persona\x20>\x20engine\x20defaults):\x0a'+'\x20\x20•\x20match_policy_read\x20—\x20Read\x20the\x20general\x20match-strategy\x20config:\x20both\x20direction\x20policies\x20+\x20health\x20state.\x0a'+'\x20\x20•\x20match_policy_patch\x20—\x20PERSISTENT\x20write:\x20deep-merge\x20a\x20partial\x20{demand_to_supply?,\x20supply_to_demand?}\x20policy\x20'+'patch\x20into\x20match-policy.json\x20(fully\x20validated\x20before\x20the\x20write;\x20previous\x20file\x20backed\x20up).\x20CONFIRMATION\x20GATE\x20'+'(code-enforced):\x20throws\x20unless\x20confirm=true\x20—\x20show\x20the\x20user\x20the\x20exact\x20leaf\x20changes\x20first.\x0a'+'\x20\x20•\x20match_policy_clear\x20—\x20PERSISTENT\x20removal:\x20delete\x20the\x20whole\x20file\x20(no\x20`direction`),\x20or\x20one\x20direction\x27s\x20policy\x20'+'(with\x20`direction`).\x20CONFIRMATION\x20GATE\x20(code-enforced):\x20throws\x20unless\x20confirm=true.\x0a\x0a'+'Actions\x20(template\x20business-parameter\x20config\x20file\x20—\x20template-params.json;\x20template\x20fee\x20params\x20like\x20review\x20'+'windows,\x20settlement\x20clocks,\x20commission\x20bps\x20are\x20CONFIG\x20not\x20code:\x20resolution\x20=\x20shipped\x20template\x20defaults\x20<\x20'+'THIS\x20FILE\x20(defaults\x20+\x20per-template\x20sections)\x20<\x20the\x20per-call\x20fee_overrides\x20input;\x20applied\x20by\x20template_generate,\x20'+'deliberately\x20NOT\x20by\x20migration_apply\x20which\x20must\x20replicate\x20incumbents\x20exactly):\x0a'+'\x20\x20•\x20template_params_read\x20—\x20Read\x20the\x20standing\x20business-parameter\x20layer:\x20defaults\x20+\x20per-template\x20sections\x20+\x20health.\x0a'+'\x20\x20•\x20template_params_patch\x20—\x20PERSISTENT\x20write:\x20deep-merge\x20{defaults?,\x20templates?,\x20comment?}\x20into\x20'+'template-params.json\x20(values:\x20finite\x20non-negative\x20numbers\x20or\x20strings;\x20fully\x20validated\x20before\x20the\x20write;\x20'+'previous\x20file\x20backed\x20up).\x20CONFIRMATION\x20GATE\x20(code-enforced):\x20throws\x20unless\x20confirm=true\x20—\x20show\x20the\x20user\x20the\x20'+'exact\x20leaf\x20changes\x20first.\x0a'+'\x20\x20•\x20template_params_clear\x20—\x20PERSISTENT\x20removal:\x20whole\x20file\x20(no\x20`template`),\x20defaults\x20section\x20(\x27defaults\x27),\x20or\x20'+'one\x20template\x27s\x20section\x20(\x27<industry>/<variant>\x27).\x20CONFIRMATION\x20GATE\x20(code-enforced):\x20throws\x20unless\x20confirm=true.\x0a\x0a'+'Long-term\x20customization:\x20prefer\x20judgment_doc_patch\x20for\x20AI-assisted\x20tuning;\x20users\x20can\x20also\x20edit\x20the\x20judgment\x20'+'document\x20directly\x20at\x20the\x20user_path\x20reported\x20by\x20judgment_list\x20(edits\x20hot-reload\x20without\x20a\x20restart;\x20an\x20invalid\x20'+'edit\x20is\x20rejected\x20and\x20the\x20last\x20good\x20version\x20stays\x20in\x20force).\x0a\x0a'+'NOTE:\x20Service\x20toggles\x20persist\x20for\x20the\x20MCP\x20process\x20lifetime.\x20Set\x20WOWOK_RUNTIME_CONFIG_PERSIST=1\x20'+'to\x20persist\x20across\x20sessions\x20to\x20~/.wow/mcp/runtime-config.json.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27config_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema\x20with\x20all\x20actions\x20and\x20field\x20definitions.','inputSchema':ConfigOperationInputSchema,'outputSchema':ConfigOperationOutputSchema,'annotations':{'readOnlyHint':![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('config',['config','toggle','service','runtime','switch','enable','disable','judgment','baseline','threshold','weight','tune'])}}];
@@ -1 +1 @@
1
- import{handleEvaluationOperation}from'../handlers/evaluation.js';import{createToolMeta,EvaluationOperationInputSchema,EvaluationOperationOutputSchema}from'../../schema/index.js';export const EVALUATION_TOOLS=[{'name':'evaluation_operation','handler':handleEvaluationOperation,'config':{'title':'🧠\x20Evaluation\x20-\x20Pluggable\x20Business\x20Intelligence','summary':'Business\x20evaluations:\x20arb/node\x20games,\x20path\x20reasoning,\x20match,\x20arbitration\x20score.','description':'Run\x20pluggable\x20business\x20evaluations\x20(data\x20sources\x20+\x20rules\x20+\x20user\x20injection).\x20'+'Each\x20evaluation\x20returns\x20ranked\x20best-move\x20recommendations\x20with\x20payoff\x20notes\x20and\x20risks.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20arb_game\x20—\x20advise\x20the\x20best\x20move\x20at\x20an\x20Arb\x20state\x20(7-state\x20lifecycle)\x20for\x20a\x20perspective\x20(customer/merchant/arbitrator).\x0a'+'\x20\x20•\x20node_game\x20—\x20advise\x20the\x20best\x20move\x20at\x20a\x20Progress\x20node\x20for\x20a\x20perspective\x20(merchant/customer/prospect/supplier/collaborator/arbitrator).\x0a'+'\x20\x20•\x20capability_gap\x20—\x20compare\x20a\x20demand\x20capability\x20vector\x20against\x20a\x20service\x20capability\x20vector;\x20returns\x20per-capability\x20gaps.\x0a'+'\x20\x20•\x20compose_service\x20—\x20check\x20whether\x20a\x20SET\x20of\x20services\x20can\x20jointly\x20satisfy\x20a\x20demand\x20(supply-chain\x20composition).\x0a'+'\x20\x20•\x20demand_match\x20—\x20rank\x20candidate\x20services\x20against\x20a\x20demand\x20capability\x20vector\x20(+\x20user\x20injection\x20/\x20persona).\x0a'+'\x20\x20•\x20service_match\x20—\x20supplier-side\x20mirror:\x20rank\x20candidate\x20demands\x20against\x20a\x20service\x20capability\x20vector.\x0a'+'\x20\x20•\x20path_reasoning\x20—\x20path-level\x20game:\x20enumerate\x20full\x20routes\x20from\x20the\x20current\x20node,\x20rank\x20by\x20value/acceptance\x20reachability\x20(a→b\x20vs\x20a→c\x20competition).\x0a'+'\x20\x20•\x20evidence_review\x20—\x20deterministic\x20off-chain\x20evidence\x20closure\x20gate\x20(auto_pass\x20/\x20auto_reject\x20/\x20manual_review)\x20for\x20arbitration\x20evidence\x20(signature\x20photos,\x20voice\x20recordings,\x20delivery\x20proofs,\x20weather\x20data).\x20Single-item\x20mode\x20(kind\x20+\x20hash_committed)\x20or\x20LIST\x20mode\x20(`items`):\x20list\x20mode\x20returns\x20the\x20structured\x20usable/manual/rejected\x20list\x20plus\x20`proof_candidates`\x20—\x20auto-passed\x20items\x20with\x20their\x20on-chain\x20Proof\x20refs,\x20ready\x20for\x20the\x20dispute\x20initiator\x20to\x20reference\x20in\x20the\x20dispute\x20description\x20(the\x20user\x20confirms\x20the\x20final\x20selection;\x20never\x20auto-attached).\x0a'+'\x20\x20•\x20discover_services\x20—\x20ACTIVE\x20supply\x20discovery:\x20enumerate\x20every\x20published\x20(shared)\x20Service\x20on-chain,\x20gate+rank\x20by\x20location\x20fit\x20under\x20a\x20sensitivity\x20(strict=100%\x20city\x20match\x20/\x20near=neighboring\x20cities\x20/\x20logistics=soft\x20region\x20signal;\x20inferred\x20from\x20description\x20when\x20omitted),\x20and\x20get\x20consent-gated\x20scope-expansion\x20advice.\x20Enumerated\x20via\x20JSON-RPC\x20ServiceEvent.\x20Passive\x20side:\x20post\x20a\x20Demand\x20and\x20Services\x20present\x20via\x20DemandPresenter.\x0a\x0a'+'\x20\x20•\x20discover_demands\x20—\x20enumerate\x20on-chain\x20Demands\x20(supplier-side\x20discovery;\x20optional\x20location\x20substring\x20filter).\x20Enumerated\x20via\x20JSON-RPC\x20DemandChangedEvent.\x0a\x0a'+'\x20\x20•\x20demand_present\x20—\x20supply-side\x20orchestration:\x20discover\x20Demands\x20+\x20match\x20THIS\x20service\x20to\x20them\x20(service_match)\x20+\x20attach\x20the\x20present\x20path\x20per\x20demand\x20(demand.present\x20vs\x20demand.present_guarded\x20when\x20the\x20demand\x20has\x20presentation\x20guards).\x20Read-only\x20—\x20the\x20actual\x20present\x20is\x20a\x20WRITE\x20via\x20onchain_operations.\x20Enumerated\x20via\x20JSON-RPC\x20DemandChangedEvent.\x0a\x0a'+'\x20\x20•\x20market_metrics\x20—\x20supply/demand/trust\x20market\x20metrics\x20aggregated\x20from\x20JSON-RPC\x20event\x20enumeration.\x0a\x0a'+'\x20\x20•\x20market_operations\x20—\x20operational\x20aggregations:\x20journey_funnel\x20(due-diligence→order→completed→reviews),\x20referral_attribution,\x20customer_relationship,\x20dynamic_pricing\x20(merchant\x20pricing\x20suggestion\x20from\x20market_signals).\x0a\x0a'+'\x20\x20•\x20anti_cheat\x20—\x20governance:\x20detect\x20fake\x20reviews\x20/\x20wash\x20orders\x20/\x20compensation-fund\x20manipulation\x20from\x20service\x20+\x20orders\x20+\x20reviews\x20evidence.\x0a\x0a'+'\x20\x20•\x20match_discover\x20—\x20ONE-SHOT\x20intent→service\x20orchestration:\x20enumerate\x20services\x20+\x20location\x20gate\x20+\x206-dimension\x20demand_match\x20scoring\x20in\x20a\x20single\x20call.\x20Inputs:\x20description\x20+\x20location\x20+\x20optional\x20sensitivity/budget/required_capabilities/coin_type.\x20Returns\x20location-gated\x20Top-N\x20services\x20with\x20per-service\x206-dim\x20breakdown\x20(region/industry/price/trust/capabilities/tags)\x20+\x20recommendation\x20reasons.\x20Enumerated\x20via\x20JSON-RPC\x20ServiceEvent.\x0a\x0a'+'\x20\x20•\x20arbitration_score\x20—\x20dual-perspective\x20arbitration\x20trust\x20assessment:\x20score\x20an\x20Arbitration\x20object\x20from\x20the\x20user-trust\x20angle\x20(timeliness/objection/indemnity/feedback/experience/capital)\x20and\x20the\x20merchant-fairness\x20angle\x20(fee/governance/operational).\x20Inputs:\x20arbitration\x20config\x20+\x20pre-aggregated\x20history[]\x20+\x20optional\x20entity_votes/fee_median.\x20Returns\x20trust\x20+\x20fairness\x20EvaluationResults\x20+\x20combined\x200-100.\x0a\x0a'+'\x20\x20•\x20account_events\x20—\x20account-centric\x20attention\x20feed:\x20run\x20hot-pluggable\x20watchers\x20(messenger_unread,\x20order_collection,\x20demand_presented,\x20reputation_integrity)\x20over\x20one\x20account\x20and\x20return\x20a\x20unified,\x20priority-sorted\x20prompt\x20list\x20of\x20what\x20needs\x20the\x20account\x27s\x20attention.\x20Inputs:\x20account\x20+\x20optional\x20categories[];\x20reputation_integrity\x20additionally\x20consumes\x20review\x20rows\x20(reviews[]\x20from\x20a\x20Service\x27s\x20ReviewRepository\x20via\x20onchain_table_data\x20+\x20optional\x20order_history[]\x20for\x20no-order-no-review\x20verification)\x20and\x20flags\x20manipulation/unverified/declining-trend\x20signals.\x20Read-only\x20(passive\x20check\x20—\x20never\x20marks\x20messages\x20viewed).\x0a\x0a'+'Read-only:\x20computes\x20recommendations\x20from\x20pure\x20data;\x20never\x20mutates\x20chain\x20state.\x20'+'The\x20caller\x20decides\x20and\x20acts\x20via\x20onchain_operations\x20/\x20messenger_operation.\x0a\x0a'+'🧭\x20Tool\x20selection\x20(avoid\x20confusion):\x20evaluation_operation\x20=\x20best-move\x20advice\x20at\x20an\x20Arb/Progress\x20state\x20(game\x20theory);\x20'+'query_toolkit\x20query_type=\x27onchain_topology\x27\x20=\x20graph\x20evaluation\x20of\x20ONE\x20object\x20(trust\x20+\x20risk\x20+\x20coverage\x20over\x20its\x20'+'topology\x20neighborhood);\x20query_toolkit\x20query_type=\x27reverse_map\x27\x20=\x20deterministic\x20multi-object\x20business\x20report.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27evaluation_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':EvaluationOperationInputSchema,'outputSchema':EvaluationOperationOutputSchema,'annotations':{'readOnlyHint':!![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('evaluation',['evaluate','risk','match','game','score','arb','node','compose','gap'])}}];
1
+ import{handleEvaluationOperation}from'../handlers/evaluation.js';import{createToolMeta,EvaluationOperationInputSchema,EvaluationOperationOutputSchema}from'../../schema/index.js';export const EVALUATION_TOOLS=[{'name':'evaluation_operation','handler':handleEvaluationOperation,'timeoutMs':0x2bf20,'config':{'title':'🧠\x20Evaluation\x20-\x20Pluggable\x20Business\x20Intelligence','summary':'Business\x20evaluations:\x20arb/node\x20games,\x20path\x20reasoning,\x20match,\x20arbitration\x20score.','description':'Run\x20pluggable\x20business\x20evaluations\x20(data\x20sources\x20+\x20rules\x20+\x20user\x20injection).\x20'+'Each\x20evaluation\x20returns\x20ranked\x20best-move\x20recommendations\x20with\x20payoff\x20notes\x20and\x20risks.\x0a\x0a'+'Actions:\x0a'+'\x20\x20•\x20arb_game\x20—\x20advise\x20the\x20best\x20move\x20at\x20an\x20Arb\x20state\x20(7-state\x20lifecycle)\x20for\x20a\x20perspective\x20(customer/merchant/arbitrator).\x0a'+'\x20\x20•\x20node_game\x20—\x20advise\x20the\x20best\x20move\x20at\x20a\x20Progress\x20node\x20for\x20a\x20perspective\x20(merchant/customer/prospect/supplier/collaborator/arbitrator).\x0a'+'\x20\x20•\x20capability_gap\x20—\x20compare\x20a\x20demand\x20capability\x20vector\x20against\x20a\x20service\x20capability\x20vector;\x20returns\x20per-capability\x20gaps.\x0a'+'\x20\x20•\x20compose_service\x20—\x20check\x20whether\x20a\x20SET\x20of\x20services\x20can\x20jointly\x20satisfy\x20a\x20demand\x20(supply-chain\x20composition).\x0a'+'\x20\x20•\x20compose_generation\x20—\x20K3-GA2\x20(composition-first):\x20turn\x20a\x20free-text\x20business\x20INTENT\x20into\x20a\x20materializable\x20multi-object\x20build\x20Plan\x20via\x20the\x20G-A\x20generator\x20(evidence-gated\x20capability\x20adoption\x20→\x20pilot\x20scenario\x20chain\x20→\x20carrier\x20template\x20preset\x20→\x20compile\x20+\x20reflux\x20audit,\x20zero\x20LLM).\x20Inputs:\x20intent\x20+\x20optional\x20selections/supply_chain/inputs/name_base/preferred_chain.\x20ready\x20→\x20`plan`\x20(pass\x20VERBATIM\x20to\x20benchmark_migration_operation\x20action=\x27plan_execute\x27);\x20infeasible\x20→\x20blockers\x20+\x20adoption\x20diagnosis\x20only,\x20NO\x20plan\x20(never\x20a\x20silent\x20default\x20build).\x20Pilot\x20boundary:\x20only\x20chain.data_subscription\x20and\x20chain.standard_ecommerce\x20are\x20carried\x20today\x20—\x20anything\x20else\x20returns\x20COMPOSE-CHAIN-UNMAPPED.\x0a'+'\x20\x20•\x20demand_match\x20—\x20rank\x20candidate\x20services\x20against\x20a\x20demand\x20capability\x20vector\x20(+\x20user\x20injection\x20/\x20persona).\x0a'+'\x20\x20•\x20service_match\x20—\x20supplier-side\x20mirror:\x20rank\x20candidate\x20demands\x20against\x20a\x20service\x20capability\x20vector.\x0a'+'\x20\x20•\x20path_reasoning\x20—\x20path-level\x20game:\x20enumerate\x20full\x20routes\x20from\x20the\x20current\x20node,\x20rank\x20by\x20value/acceptance\x20reachability\x20(a→b\x20vs\x20a→c\x20competition).\x0a'+'\x20\x20•\x20evidence_review\x20—\x20deterministic\x20off-chain\x20evidence\x20closure\x20gate\x20(auto_pass\x20/\x20auto_reject\x20/\x20manual_review)\x20for\x20arbitration\x20evidence\x20(signature\x20photos,\x20voice\x20recordings,\x20delivery\x20proofs,\x20weather\x20data).\x20Single-item\x20mode\x20(kind\x20+\x20hash_committed)\x20or\x20LIST\x20mode\x20(`items`):\x20list\x20mode\x20returns\x20the\x20structured\x20usable/manual/rejected\x20list\x20plus\x20`proof_candidates`\x20—\x20auto-passed\x20items\x20with\x20their\x20on-chain\x20Proof\x20refs,\x20ready\x20for\x20the\x20dispute\x20initiator\x20to\x20reference\x20in\x20the\x20dispute\x20description\x20(the\x20user\x20confirms\x20the\x20final\x20selection;\x20never\x20auto-attached).\x0a'+'\x20\x20•\x20discover_services\x20—\x20ACTIVE\x20supply\x20discovery:\x20enumerate\x20every\x20published\x20(shared)\x20Service\x20on-chain,\x20gate+rank\x20by\x20location\x20fit\x20under\x20a\x20sensitivity\x20(strict=100%\x20city\x20match\x20/\x20near=neighboring\x20cities\x20/\x20logistics=soft\x20region\x20signal;\x20inferred\x20from\x20description\x20when\x20omitted),\x20and\x20get\x20consent-gated\x20scope-expansion\x20advice.\x20Enumerated\x20via\x20JSON-RPC\x20ServiceEvent.\x20Passive\x20side:\x20post\x20a\x20Demand\x20and\x20Services\x20present\x20via\x20DemandPresenter.\x0a\x0a'+'\x20\x20•\x20discover_demands\x20—\x20enumerate\x20on-chain\x20Demands\x20(supplier-side\x20discovery;\x20optional\x20location\x20substring\x20filter).\x20Enumerated\x20via\x20JSON-RPC\x20DemandChangedEvent.\x0a\x0a'+'\x20\x20•\x20demand_present\x20—\x20supply-side\x20orchestration:\x20discover\x20Demands\x20+\x20match\x20THIS\x20service\x20to\x20them\x20(service_match)\x20+\x20attach\x20the\x20present\x20path\x20per\x20demand\x20(demand.present\x20vs\x20demand.present_guarded\x20when\x20the\x20demand\x20has\x20presentation\x20guards).\x20Read-only\x20—\x20the\x20actual\x20present\x20is\x20a\x20WRITE\x20via\x20onchain_operations.\x20Enumerated\x20via\x20JSON-RPC\x20DemandChangedEvent.\x0a\x0a'+'\x20\x20•\x20market_metrics\x20—\x20supply/demand/trust\x20market\x20metrics\x20aggregated\x20from\x20JSON-RPC\x20event\x20enumeration.\x0a\x0a'+'\x20\x20•\x20market_operations\x20—\x20operational\x20aggregations:\x20journey_funnel\x20(due-diligence→order→completed→reviews),\x20referral_attribution,\x20customer_relationship,\x20dynamic_pricing\x20(merchant\x20pricing\x20suggestion\x20from\x20market_signals).\x0a\x0a'+'\x20\x20•\x20anti_cheat\x20—\x20governance:\x20detect\x20fake\x20reviews\x20/\x20wash\x20orders\x20/\x20compensation-fund\x20manipulation\x20from\x20service\x20+\x20orders\x20+\x20reviews\x20evidence.\x0a\x0a'+'\x20\x20•\x20match_discover\x20—\x20ONE-SHOT\x20intent→service\x20orchestration:\x20enumerate\x20services\x20+\x20location\x20gate\x20+\x206-dimension\x20demand_match\x20scoring\x20in\x20a\x20single\x20call.\x20Inputs:\x20description\x20+\x20location\x20+\x20optional\x20sensitivity/budget/required_capabilities/coin_type.\x20Returns\x20location-gated\x20Top-N\x20services\x20with\x20per-service\x206-dim\x20breakdown\x20(region/industry/price/trust/capabilities/tags)\x20+\x20recommendation\x20reasons.\x20Enumerated\x20via\x20JSON-RPC\x20ServiceEvent.\x0a\x0a'+'\x20\x20•\x20arbitration_score\x20—\x20dual-perspective\x20arbitration\x20trust\x20assessment:\x20score\x20an\x20Arbitration\x20object\x20from\x20the\x20user-trust\x20angle\x20(timeliness/objection/indemnity/feedback/experience/capital)\x20and\x20the\x20merchant-fairness\x20angle\x20(fee/governance/operational).\x20Inputs:\x20arbitration\x20config\x20+\x20pre-aggregated\x20history[]\x20+\x20optional\x20entity_votes/fee_median.\x20Returns\x20trust\x20+\x20fairness\x20EvaluationResults\x20+\x20combined\x200-100.\x0a\x0a'+'\x20\x20•\x20account_events\x20—\x20account-centric\x20attention\x20feed:\x20run\x20hot-pluggable\x20watchers\x20(messenger_unread,\x20order_collection,\x20demand_presented,\x20reputation_integrity)\x20over\x20one\x20account\x20and\x20return\x20a\x20unified,\x20priority-sorted\x20prompt\x20list\x20of\x20what\x20needs\x20the\x20account\x27s\x20attention.\x20Inputs:\x20account\x20+\x20optional\x20categories[];\x20reputation_integrity\x20additionally\x20consumes\x20review\x20rows\x20(reviews[]\x20from\x20a\x20Service\x27s\x20ReviewRepository\x20via\x20onchain_table_data\x20+\x20optional\x20order_history[]\x20for\x20no-order-no-review\x20verification)\x20and\x20flags\x20manipulation/unverified/declining-trend\x20signals.\x20Read-only\x20(passive\x20check\x20—\x20never\x20marks\x20messages\x20viewed).\x0a\x0a'+'Read-only:\x20computes\x20recommendations\x20from\x20pure\x20data;\x20never\x20mutates\x20chain\x20state.\x20'+'The\x20caller\x20decides\x20and\x20acts\x20via\x20onchain_operations\x20/\x20messenger_operation.\x0a\x0a'+'🧭\x20Tool\x20selection\x20(avoid\x20confusion):\x20evaluation_operation\x20=\x20best-move\x20advice\x20at\x20an\x20Arb/Progress\x20state\x20(game\x20theory);\x20'+'query_toolkit\x20query_type=\x27onchain_topology\x27\x20=\x20graph\x20evaluation\x20of\x20ONE\x20object\x20(trust\x20+\x20risk\x20+\x20coverage\x20over\x20its\x20'+'topology\x20neighborhood);\x20query_toolkit\x20query_type=\x27reverse_map\x27\x20=\x20deterministic\x20multi-object\x20business\x20report.\x0a\x0a'+'💡\x20Schema\x20hint:\x20call\x20the\x20OTHER\x20tool\x20`schema_query`\x20with\x20action=\x27get\x27\x20and\x20name=\x27evaluation_operation\x27\x20to\x20retrieve\x20the\x20exact\x20parameter\x20schema.','inputSchema':EvaluationOperationInputSchema,'outputSchema':EvaluationOperationOutputSchema,'annotations':{'readOnlyHint':!![],'destructiveHint':![],'idempotentHint':!![],'openWorldHint':![]},'_meta':createToolMeta('evaluation',['evaluate','risk','match','game','score','arb','node','compose','generate','gap'])}}];