@wowok/agent-mcp 3.4.3 → 3.4.4

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 (853) hide show
  1. package/dist/.build-stamp.json +3 -3
  2. package/dist/build-stamp.js +1 -0
  3. package/dist/chain-semantics/composition-truth.js +1 -1
  4. package/dist/chain-semantics/eval-order.js +1 -1
  5. package/dist/chain-semantics/freeze-map.js +1 -1
  6. package/dist/chain-semantics/fund-flow.js +1 -1
  7. package/dist/chain-semantics/object-graph.js +1 -1
  8. package/dist/composition/audit.js +1 -1
  9. package/dist/composition/compile.js +1 -1
  10. package/dist/composition/emit-phases.js +1 -1
  11. package/dist/composition/generate.js +1 -1
  12. package/dist/composition/guard-fill.js +1 -1
  13. package/dist/composition/input-normalize.js +1 -1
  14. package/dist/composition/materialize.js +1 -1
  15. package/dist/composition/mode-gates.js +1 -1
  16. package/dist/composition/plan.js +1 -1
  17. package/dist/composition/product-card.js +1 -1
  18. package/dist/composition/shape-expand.js +1 -0
  19. package/dist/config/judgment.js +1 -1
  20. package/dist/config/template-params.js +1 -1
  21. package/dist/data/sync/cdc.js +1 -1
  22. package/dist/data/sync/graphql-source.js +1 -1
  23. package/dist/evaluation/engine.js +1 -1
  24. package/dist/experience/realtime-feedback.js +1 -1
  25. package/dist/graph/onchain/expand.js +1 -1
  26. package/dist/graph/onchain/exposure.js +1 -1
  27. package/dist/graph/onchain/sdk-batch.js +1 -1
  28. package/dist/harness/entry-ignite-selfheal.js +1 -0
  29. package/dist/harness/forward-leg-preflight.js +1 -0
  30. package/dist/harness/recover.js +1 -1
  31. package/dist/keeper/detectors.js +1 -1
  32. package/dist/knowledge/allocator-rail-verifier.js +1 -1
  33. package/dist/knowledge/arb-operation-face.js +1 -0
  34. package/dist/knowledge/arbitration-rail-verifier.js +1 -1
  35. package/dist/knowledge/arbitration-templates.js +1 -1
  36. package/dist/knowledge/audit-rules.d.ts +15 -0
  37. package/dist/knowledge/audit-rules.js +1 -1
  38. package/dist/knowledge/baselines/rules/alloc_audit.json.good +310 -0
  39. package/dist/knowledge/baselines/rules/allocation.json.good +568 -0
  40. package/dist/knowledge/baselines/rules/arb.json.good +174 -0
  41. package/dist/knowledge/baselines/rules/arbitration.json.good +393 -0
  42. package/dist/knowledge/baselines/rules/bridge.json.good +197 -0
  43. package/dist/knowledge/baselines/rules/contact.json.good +152 -0
  44. package/dist/knowledge/baselines/rules/demand.json.good +158 -0
  45. package/dist/knowledge/baselines/rules/graph.json.good +534 -0
  46. package/dist/knowledge/baselines/rules/guard.json +18 -5
  47. package/dist/knowledge/baselines/rules/guard.json.good +1192 -0
  48. package/dist/knowledge/baselines/rules/machine.json.good +734 -0
  49. package/dist/knowledge/baselines/rules/oracle.json +1 -1
  50. package/dist/knowledge/baselines/rules/oracle.json.good +120 -0
  51. package/dist/knowledge/baselines/rules/order.json.good +549 -0
  52. package/dist/knowledge/baselines/rules/payment.json.good +205 -0
  53. package/dist/knowledge/baselines/rules/permission.json.good +330 -0
  54. package/dist/knowledge/baselines/rules/personal.json.good +139 -0
  55. package/dist/knowledge/baselines/rules/plan.json +343 -1
  56. package/dist/knowledge/baselines/rules/plan.json.good +1187 -0
  57. package/dist/knowledge/baselines/rules/progress.json.good +364 -0
  58. package/dist/knowledge/baselines/rules/proof.json.good +158 -0
  59. package/dist/knowledge/baselines/rules/registrar.json.good +159 -0
  60. package/dist/knowledge/baselines/rules/repository.json.good +244 -0
  61. package/dist/knowledge/baselines/rules/resource.json.good +117 -0
  62. package/dist/knowledge/baselines/rules/reward.json +10 -10
  63. package/dist/knowledge/baselines/rules/reward.json.good +586 -0
  64. package/dist/knowledge/baselines/rules/service.json.good +595 -0
  65. package/dist/knowledge/baselines/rules/treasury.json.good +440 -0
  66. package/dist/knowledge/baselines/rules/util.json.good +101 -0
  67. package/dist/knowledge/builtin-templates.d.ts +13 -1
  68. package/dist/knowledge/builtin-templates.js +1 -1
  69. package/dist/knowledge/chain-query-registry.js +1 -1
  70. package/dist/knowledge/discount-threshold.js +1 -1
  71. package/dist/knowledge/fee-param-bindings.js +1 -1
  72. package/dist/knowledge/fund-layer.d.ts +2 -0
  73. package/dist/knowledge/fund-layer.js +1 -1
  74. package/dist/knowledge/getting-started.js +1 -1
  75. package/dist/knowledge/guard-binding-table.js +1 -1
  76. package/dist/knowledge/guard-binding-verifier.js +1 -1
  77. package/dist/knowledge/guard-create-preflight.js +1 -0
  78. package/dist/knowledge/guard-field-cognition.js +1 -1
  79. package/dist/knowledge/guard-host-context.js +1 -1
  80. package/dist/knowledge/guard-leg-eval.js +1 -0
  81. package/dist/knowledge/guard-node-gates.js +1 -1
  82. package/dist/knowledge/guard-puzzle.js +1 -1
  83. package/dist/knowledge/guard-quality.js +1 -0
  84. package/dist/knowledge/guard-render.js +1 -1
  85. package/dist/knowledge/guard-risk.js +1 -1
  86. package/dist/knowledge/guard-semantic-walk.js +1 -0
  87. package/dist/knowledge/guard-templates.d.ts +1 -0
  88. package/dist/knowledge/guard-templates.js +1 -1
  89. package/dist/knowledge/guard-translation.js +1 -1
  90. package/dist/knowledge/index.js +1 -1
  91. package/dist/knowledge/industry-registry.js +1 -1
  92. package/dist/knowledge/jsonrpc-enum.js +1 -1
  93. package/dist/knowledge/param-schema.js +1 -1
  94. package/dist/knowledge/param-tiers.js +1 -1
  95. package/dist/knowledge/path-oracle/coverage.js +1 -1
  96. package/dist/knowledge/path-oracle/index.js +1 -1
  97. package/dist/knowledge/path-oracle/products/airbnb.js +1 -0
  98. package/dist/knowledge/path-oracle/products/algora.js +1 -0
  99. package/dist/knowledge/path-oracle/products/alibaba-1688.js +1 -0
  100. package/dist/knowledge/path-oracle/products/amazon.js +1 -0
  101. package/dist/knowledge/path-oracle/products/beatstars.js +1 -0
  102. package/dist/knowledge/path-oracle/products/booking-com.js +1 -0
  103. package/dist/knowledge/path-oracle/products/contra.js +1 -0
  104. package/dist/knowledge/path-oracle/products/costco.js +1 -0
  105. package/dist/knowledge/path-oracle/products/coursera.js +1 -0
  106. package/dist/knowledge/path-oracle/products/duoduo-maicai.js +1 -0
  107. package/dist/knowledge/path-oracle/products/etsy.js +1 -0
  108. package/dist/knowledge/path-oracle/products/food-delivery.js +1 -1
  109. package/dist/knowledge/path-oracle/products/gamefound.js +1 -0
  110. package/dist/knowledge/path-oracle/products/gofundme.js +1 -0
  111. package/dist/knowledge/path-oracle/products/hackerone.js +1 -0
  112. package/dist/knowledge/path-oracle/products/kickstarter.js +1 -0
  113. package/dist/knowledge/path-oracle/products/klook.js +1 -0
  114. package/dist/knowledge/path-oracle/products/ninety-nine-designs.js +1 -0
  115. package/dist/knowledge/path-oracle/products/onlyfans.js +1 -0
  116. package/dist/knowledge/path-oracle/products/patreon.js +1 -0
  117. package/dist/knowledge/path-oracle/products/pinduoduo-kuaituantuan.js +1 -0
  118. package/dist/knowledge/path-oracle/products/royalty-exchange.js +1 -0
  119. package/dist/knowledge/path-oracle/products/shansong.js +1 -0
  120. package/dist/knowledge/path-oracle/products/taobao-presale.js +1 -0
  121. package/dist/knowledge/path-oracle/products/upwork-catalog.js +1 -0
  122. package/dist/knowledge/path-oracle/products/upwork.js +1 -0
  123. package/dist/knowledge/path-oracle/products/yuanfudao.js +1 -0
  124. package/dist/knowledge/path-oracle/products/ziroom.js +1 -0
  125. package/dist/knowledge/pattern-resolutions.js +1 -1
  126. package/dist/knowledge/product-detail-source.js +1 -1
  127. package/dist/knowledge/product-doc-b5.js +1 -1
  128. package/dist/knowledge/product-doc-facets.js +1 -0
  129. package/dist/knowledge/projection.js +1 -1
  130. package/dist/knowledge/publish-gate.js +1 -1
  131. package/dist/knowledge/publish-surface-contract.js +1 -1
  132. package/dist/knowledge/recipient-constraint.d.ts +20 -0
  133. package/dist/knowledge/recipient-constraint.js +1 -1
  134. package/dist/knowledge/rule-declaration-types.d.ts +13 -0
  135. package/dist/knowledge/rule-declaration-types.js +1 -0
  136. package/dist/knowledge/rule-declarations.js +1 -0
  137. package/dist/knowledge/scenario-modes.d.ts +6 -0
  138. package/dist/knowledge/scenario-topology.js +1 -1
  139. package/dist/knowledge/template-loader.js +1 -1
  140. package/dist/knowledge/template-prose.js +1 -1
  141. package/dist/knowledge/template-registry.js +1 -1
  142. package/dist/knowledge/template-scanner.js +1 -1
  143. package/dist/knowledge/tools-reference.js +1 -1
  144. package/dist/monitor/MonitorLoop.js +1 -1
  145. package/dist/playbooks/service-build/business-puzzle.js +1 -1
  146. package/dist/playbooks/service-build/machine-panorama.js +1 -1
  147. package/dist/playbooks/service-build/merchant-guide.js +1 -1
  148. package/dist/playbooks/service-build/object-panorama.js +1 -1
  149. package/dist/playbooks/service-build/participation-radar.js +1 -1
  150. package/dist/playbooks/service-build/relationship-profile.js +1 -1
  151. package/dist/playbooks/service-build/service-panorama.js +1 -1
  152. package/dist/playbooks/service-build/service-quote.js +1 -1
  153. package/dist/review/index.js +1 -1
  154. package/dist/review/service.js +1 -1
  155. package/dist/safety/confirm-gate.js +1 -1
  156. package/dist/schema/benchmark-migration/index.d.ts +9 -0
  157. package/dist/schema/benchmark-migration/index.js +1 -1
  158. package/dist/schema/call/arbitration.d.ts +8 -0
  159. package/dist/schema/call/arbitration.js +1 -1
  160. package/dist/schema/call/base.d.ts +8 -0
  161. package/dist/schema/call/base.js +1 -1
  162. package/dist/schema/call/bridge.d.ts +2 -0
  163. package/dist/schema/call/error-codes.d.ts +1 -1
  164. package/dist/schema/call/error-codes.js +1 -1
  165. package/dist/schema/call/handler.d.ts +2 -1
  166. package/dist/schema/call/handler.js +1 -1
  167. package/dist/schema/call/order.d.ts +10 -0
  168. package/dist/schema/call/permission-handler.js +1 -1
  169. package/dist/schema/call/permission.js +1 -1
  170. package/dist/schema/call/progress.d.ts +15 -0
  171. package/dist/schema/call/progress.js +1 -1
  172. package/dist/schema/call/receipt.d.ts +1 -0
  173. package/dist/schema/call/receipt.js +1 -1
  174. package/dist/schema/call/repository.d.ts +12 -0
  175. package/dist/schema/call/repository.js +1 -1
  176. package/dist/schema/call/reward.js +1 -1
  177. package/dist/schema/call/semantic.d.ts +1 -0
  178. package/dist/schema/call/semantic.js +1 -1
  179. package/dist/schema/call/service.d.ts +5 -3
  180. package/dist/schema/call/service.js +1 -1
  181. package/dist/schema/common/index.js +1 -1
  182. package/dist/schema/envelope-unify.js +1 -1
  183. package/dist/schema/goal/index.d.ts +23 -0
  184. package/dist/schema/goal/planning.js +1 -1
  185. package/dist/schema/industry-pack/index.d.ts +2 -2
  186. package/dist/schema/local/index.d.ts +20 -0
  187. package/dist/schema/local/index.js +1 -1
  188. package/dist/schema/local/wip.d.ts +4 -0
  189. package/dist/schema/local/wip.js +1 -1
  190. package/dist/schema/messenger/index.d.ts +5 -0
  191. package/dist/schema/messenger/index.js +1 -1
  192. package/dist/schema/operations.d.ts +944 -1
  193. package/dist/schema/operations.js +1 -1
  194. package/dist/schema/query/bi.js +1 -1
  195. package/dist/schema/query/index.d.ts +5 -5
  196. package/dist/schema/query/index.js +1 -1
  197. package/dist/schema/schema-version.js +1 -1
  198. package/dist/schema/workspace/index.d.ts +2 -2
  199. package/dist/schema-query-impl/index.js +1 -1
  200. package/dist/schemas/account_operation.schema.json +1 -257
  201. package/dist/schemas/ask_user.schema.json +1 -78
  202. package/dist/schemas/benchmark_migration_operation.schema.json +1 -626
  203. package/dist/schemas/bridge_operation.schema.json +1 -1069
  204. package/dist/schemas/config_operation.schema.json +1 -82
  205. package/dist/schemas/employee_operation.schema.json +1 -319
  206. package/dist/schemas/evaluation_operation.schema.json +1 -3932
  207. package/dist/schemas/goal_operation.schema.json +1 -1650
  208. package/dist/schemas/guard2file.schema.json +1 -137
  209. package/dist/schemas/index.json +1 -285
  210. package/dist/schemas/industry_pack_operation.schema.json +1 -582
  211. package/dist/schemas/intent_radar.schema.json +1 -155
  212. package/dist/schemas/keeper_operation.schema.json +1 -364
  213. package/dist/schemas/local_cache_operation.schema.json +1 -116
  214. package/dist/schemas/local_history_operation.schema.json +1 -105
  215. package/dist/schemas/local_info_operation.schema.json +1 -140
  216. package/dist/schemas/local_mark_operation.schema.json +1 -124
  217. package/dist/schemas/machineNode2file.schema.json +1 -137
  218. package/dist/schemas/messenger_operation.schema.json +1 -2068
  219. package/dist/schemas/monitor_events.schema.json +1 -87
  220. package/dist/schemas/monitor_subscription.schema.json +1 -327
  221. package/dist/schemas/onchain_events.schema.json +1 -207
  222. package/dist/schemas/onchain_operations.schema.json +1 -28699
  223. package/dist/schemas/onchain_operations_allocation.schema.json +1 -1376
  224. package/dist/schemas/onchain_operations_arbitration.schema.json +1 -1355
  225. package/dist/schemas/onchain_operations_contact.schema.json +1 -988
  226. package/dist/schemas/onchain_operations_demand.schema.json +1 -1146
  227. package/dist/schemas/onchain_operations_gen_passport.schema.json +1 -663
  228. package/dist/schemas/onchain_operations_gen_proof.schema.json +1 -180
  229. package/dist/schemas/onchain_operations_guard.schema.json +1 -8518
  230. package/dist/schemas/onchain_operations_machine.schema.json +1 -1879
  231. package/dist/schemas/onchain_operations_order.schema.json +1 -1121
  232. package/dist/schemas/onchain_operations_payment.schema.json +1 -316
  233. package/dist/schemas/onchain_operations_permission.schema.json +1 -1036
  234. package/dist/schemas/onchain_operations_personal.schema.json +1 -1463
  235. package/dist/schemas/onchain_operations_progress.schema.json +1 -1041
  236. package/dist/schemas/onchain_operations_proof.schema.json +1 -750
  237. package/dist/schemas/onchain_operations_repository.schema.json +1 -2046
  238. package/dist/schemas/onchain_operations_reward.schema.json +1 -1286
  239. package/dist/schemas/onchain_operations_service.schema.json +1 -2602
  240. package/dist/schemas/onchain_operations_treasury.schema.json +1 -1527
  241. package/dist/schemas/onchain_table_data.schema.json +1 -1146
  242. package/dist/schemas/permission_operation.schema.json +1 -43
  243. package/dist/schemas/persona_operation.schema.json +1 -10424
  244. package/dist/schemas/query_toolkit.schema.json +1 -1867
  245. package/dist/schemas/schema_query.schema.json +1 -116
  246. package/dist/schemas/service_clone_operation.schema.json +1 -49
  247. package/dist/schemas/settle_sweep.schema.json +1 -0
  248. package/dist/schemas/strategy_review_operation.schema.json +1 -66
  249. package/dist/schemas/verify_guard_dry_run.schema.json +1 -0
  250. package/dist/schemas/watch_operation.schema.json +1 -145
  251. package/dist/schemas/wip_file.schema.json +1 -299
  252. package/dist/schemas/workflow_operation.schema.json +1 -722
  253. package/dist/schemas/workspace_operation.schema.json +1 -104
  254. package/dist/schemas/wowok_buildin_info.schema.json +1 -758
  255. package/dist/tools/handlers/benchmark-migration.js +1 -1
  256. package/dist/tools/handlers/config.js +1 -1
  257. package/dist/tools/handlers/entry-edge-recipe.js +1 -1
  258. package/dist/tools/handlers/file-export.js +1 -1
  259. package/dist/tools/handlers/local.js +1 -1
  260. package/dist/tools/handlers/messenger.js +1 -1
  261. package/dist/tools/handlers/onchain.js +1 -1
  262. package/dist/tools/handlers/pending-settlement-recipe.js +1 -0
  263. package/dist/tools/handlers/plan-recovery.js +1 -0
  264. package/dist/tools/handlers/query.js +1 -1
  265. package/dist/tools/handlers/repository-row-id.js +1 -0
  266. package/dist/tools/handlers/review-chain.js +1 -1
  267. package/dist/tools/handlers/settle-sweep.js +1 -0
  268. package/dist/tools/handlers/stale-build-check.js +1 -1
  269. package/dist/tools/handlers/submission-assembly.js +1 -1
  270. package/dist/tools/handlers/verify-guard-dry-run.js +1 -0
  271. package/dist/tools/handlers/wip-upload.js +1 -1
  272. package/dist/tools/index.d.ts +3 -1
  273. package/dist/tools/index.js +1 -1
  274. package/dist/tools/move-fn-index.gen.js +1 -1
  275. package/dist/tools/publish-gate-state.js +1 -1
  276. package/dist/tools/registry/business.js +1 -1
  277. package/dist/tools/registry/onchain.js +1 -1
  278. package/dist/tools/shared.js +1 -1
  279. package/dist/tools/types.d.ts +1 -1
  280. package/dist/tools/wrap.js +1 -1
  281. package/package.json +11 -4
  282. package/dist/chain-semantics/composition-truth.d.ts +0 -102
  283. package/dist/chain-semantics/eval-order.d.ts +0 -17
  284. package/dist/chain-semantics/field-capability.d.ts +0 -11
  285. package/dist/chain-semantics/freeze-map.d.ts +0 -11
  286. package/dist/chain-semantics/fund-flow.d.ts +0 -10
  287. package/dist/chain-semantics/guard-verbs.d.ts +0 -22
  288. package/dist/chain-semantics/index.d.ts +0 -12
  289. package/dist/chain-semantics/object-graph.d.ts +0 -18
  290. package/dist/communication/evidence.d.ts +0 -6
  291. package/dist/communication/message-cursors.d.ts +0 -35
  292. package/dist/communication/proof-reuse.d.ts +0 -9
  293. package/dist/communication/wts-attestation.d.ts +0 -39
  294. package/dist/composition/audit.d.ts +0 -15
  295. package/dist/composition/blueprint-view.d.ts +0 -63
  296. package/dist/composition/compile.d.ts +0 -83
  297. package/dist/composition/emit-phases.d.ts +0 -234
  298. package/dist/composition/generate.d.ts +0 -40
  299. package/dist/composition/guard-fill.d.ts +0 -52
  300. package/dist/composition/inflight.d.ts +0 -86
  301. package/dist/composition/input-normalize.d.ts +0 -15
  302. package/dist/composition/materialize.d.ts +0 -78
  303. package/dist/composition/mode-gates.d.ts +0 -35
  304. package/dist/composition/param-disclosure.d.ts +0 -61
  305. package/dist/composition/plan-retry-ledger.d.ts +0 -37
  306. package/dist/composition/plan.d.ts +0 -121
  307. package/dist/composition/product-card.d.ts +0 -94
  308. package/dist/composition/reflux.d.ts +0 -28
  309. package/dist/composition/supply-chain-emit.d.ts +0 -46
  310. package/dist/config/config-audit.spec.d.ts +0 -1
  311. package/dist/config/config-audit.spec.js +0 -1
  312. package/dist/config/config-warnings.d.ts +0 -2
  313. package/dist/config/index.d.ts +0 -4
  314. package/dist/config/judgment.spec.d.ts +0 -1
  315. package/dist/config/judgment.spec.js +0 -1
  316. package/dist/config/match-policy-file.d.ts +0 -34
  317. package/dist/config/match-policy-file.spec.d.ts +0 -1
  318. package/dist/config/match-policy-file.spec.js +0 -1
  319. package/dist/config/rule-engine.spec.d.ts +0 -1
  320. package/dist/config/rule-engine.spec.js +0 -1
  321. package/dist/config/runtime.d.ts +0 -29
  322. package/dist/config/store-policy.d.ts +0 -14
  323. package/dist/config/store-policy.spec.d.ts +0 -1
  324. package/dist/config/store-policy.spec.js +0 -1
  325. package/dist/config/template-params.d.ts +0 -42
  326. package/dist/config/template-params.spec.d.ts +0 -1
  327. package/dist/config/template-params.spec.js +0 -1
  328. package/dist/customer/account-events.d.ts +0 -32
  329. package/dist/data/api/api.spec.d.ts +0 -1
  330. package/dist/data/api/api.spec.js +0 -1
  331. package/dist/data/api/cli.d.ts +0 -1
  332. package/dist/data/api/head.d.ts +0 -16
  333. package/dist/data/api/head.spec.d.ts +0 -1
  334. package/dist/data/api/head.spec.js +0 -1
  335. package/dist/data/api/index.d.ts +0 -2
  336. package/dist/data/api/match.d.ts +0 -69
  337. package/dist/data/api/match.spec.d.ts +0 -1
  338. package/dist/data/api/match.spec.js +0 -1
  339. package/dist/data/api/server.d.ts +0 -13
  340. package/dist/data/projection/cli.d.ts +0 -1
  341. package/dist/data/projection/edges.d.ts +0 -8
  342. package/dist/data/projection/edges.spec.d.ts +0 -1
  343. package/dist/data/projection/edges.spec.js +0 -1
  344. package/dist/data/projection/facets.d.ts +0 -18
  345. package/dist/data/projection/facets.spec.d.ts +0 -1
  346. package/dist/data/projection/facets.spec.js +0 -1
  347. package/dist/data/projection/facts.d.ts +0 -40
  348. package/dist/data/projection/index.d.ts +0 -6
  349. package/dist/data/projection/project.d.ts +0 -10
  350. package/dist/data/projection/projection.spec.d.ts +0 -1
  351. package/dist/data/projection/projection.spec.js +0 -1
  352. package/dist/data/projection/schema.d.ts +0 -1
  353. package/dist/data/projection/store.d.ts +0 -51
  354. package/dist/data/projection/types.d.ts +0 -169
  355. package/dist/data/sync/cdc.d.ts +0 -33
  356. package/dist/data/sync/cdc.spec.d.ts +0 -1
  357. package/dist/data/sync/cdc.spec.js +0 -1
  358. package/dist/data/sync/graphql-source.d.ts +0 -16
  359. package/dist/data/sync/index.d.ts +0 -5
  360. package/dist/data/sync/reconciler.d.ts +0 -14
  361. package/dist/data/sync/reconciler.spec.d.ts +0 -1
  362. package/dist/data/sync/reconciler.spec.js +0 -1
  363. package/dist/data/sync/schema.d.ts +0 -1
  364. package/dist/data/sync/store.d.ts +0 -24
  365. package/dist/data/sync/sync.spec.d.ts +0 -1
  366. package/dist/data/sync/sync.spec.js +0 -1
  367. package/dist/data/sync/synchronizer.d.ts +0 -10
  368. package/dist/data/sync/types.d.ts +0 -164
  369. package/dist/evaluation/acceptance.d.ts +0 -33
  370. package/dist/evaluation/architecture.spec.d.ts +0 -1
  371. package/dist/evaluation/architecture.spec.js +0 -1
  372. package/dist/evaluation/builtins/arbitration-score.d.ts +0 -42
  373. package/dist/evaluation/builtins/demand-match.d.ts +0 -16
  374. package/dist/evaluation/builtins/graph-service.spec.d.ts +0 -1
  375. package/dist/evaluation/builtins/graph-service.spec.js +0 -1
  376. package/dist/evaluation/builtins/index.d.ts +0 -4
  377. package/dist/evaluation/builtins/purity.spec.d.ts +0 -1
  378. package/dist/evaluation/builtins/purity.spec.js +0 -1
  379. package/dist/evaluation/composer.d.ts +0 -38
  380. package/dist/evaluation/facets/catalog.d.ts +0 -19
  381. package/dist/evaluation/gap.d.ts +0 -2
  382. package/dist/evaluation/guard-scan.d.ts +0 -10
  383. package/dist/evaluation/index.d.ts +0 -14
  384. package/dist/evaluation/injection.d.ts +0 -6
  385. package/dist/evaluation/location-match.d.ts +0 -42
  386. package/dist/evaluation/match-operation.d.ts +0 -23
  387. package/dist/evaluation/match-policy-resolver.d.ts +0 -9
  388. package/dist/evaluation/match-policy.spec.d.ts +0 -1
  389. package/dist/evaluation/match-policy.spec.js +0 -1
  390. package/dist/evaluation/path-reasoning.d.ts +0 -37
  391. package/dist/evaluation/standards.d.ts +0 -11
  392. package/dist/evaluation/standards.spec.d.ts +0 -1
  393. package/dist/evaluation/standards.spec.js +0 -1
  394. package/dist/evaluation/structured-lines.d.ts +0 -8
  395. package/dist/evaluation/user-injection.d.ts +0 -6
  396. package/dist/experience/experience-reuse.d.ts +0 -10
  397. package/dist/experience/index.d.ts +0 -7
  398. package/dist/experience/persistence-config.d.ts +0 -6
  399. package/dist/experience/persistence.d.ts +0 -21
  400. package/dist/experience/realtime-feedback.d.ts +0 -5
  401. package/dist/experience/user-profile.d.ts +0 -25
  402. package/dist/extensions/capability.d.ts +0 -91
  403. package/dist/extensions/industry-audit.spec.d.ts +0 -1
  404. package/dist/extensions/industry-audit.spec.js +0 -1
  405. package/dist/goal/GoalClassifier.d.ts +0 -17
  406. package/dist/goal/GoalEngine.d.ts +0 -175
  407. package/dist/goal/GoalStore.d.ts +0 -27
  408. package/dist/goal/next-steps.d.ts +0 -12
  409. package/dist/goal/plan-approval.d.ts +0 -5
  410. package/dist/goal/pursue.d.ts +0 -18
  411. package/dist/graph/base.d.ts +0 -8
  412. package/dist/graph/onchain/analyze.d.ts +0 -59
  413. package/dist/graph/onchain/analyze.spec.d.ts +0 -1
  414. package/dist/graph/onchain/analyze.spec.js +0 -1
  415. package/dist/graph/onchain/anti-cheat.d.ts +0 -69
  416. package/dist/graph/onchain/anti-cheat.spec.d.ts +0 -1
  417. package/dist/graph/onchain/anti-cheat.spec.js +0 -1
  418. package/dist/graph/onchain/dataplane.d.ts +0 -44
  419. package/dist/graph/onchain/edge-batch.spec.d.ts +0 -1
  420. package/dist/graph/onchain/edge-batch.spec.js +0 -1
  421. package/dist/graph/onchain/edge-schema.d.ts +0 -69
  422. package/dist/graph/onchain/entity-profile.spec.d.ts +0 -1
  423. package/dist/graph/onchain/entity-profile.spec.js +0 -1
  424. package/dist/graph/onchain/event-history.spec.d.ts +0 -1
  425. package/dist/graph/onchain/event-history.spec.js +0 -1
  426. package/dist/graph/onchain/expand.d.ts +0 -4
  427. package/dist/graph/onchain/exploration.d.ts +0 -28
  428. package/dist/graph/onchain/exploration.spec.d.ts +0 -1
  429. package/dist/graph/onchain/exploration.spec.js +0 -1
  430. package/dist/graph/onchain/exposure.d.ts +0 -18
  431. package/dist/graph/onchain/exposure.spec.d.ts +0 -1
  432. package/dist/graph/onchain/exposure.spec.js +0 -1
  433. package/dist/graph/onchain/extract-deep.spec.d.ts +0 -1
  434. package/dist/graph/onchain/extract-deep.spec.js +0 -1
  435. package/dist/graph/onchain/extract.d.ts +0 -29
  436. package/dist/graph/onchain/facet-projection.d.ts +0 -99
  437. package/dist/graph/onchain/facet-projection.spec.d.ts +0 -1
  438. package/dist/graph/onchain/facet-projection.spec.js +0 -1
  439. package/dist/graph/onchain/facts.spec.d.ts +0 -1
  440. package/dist/graph/onchain/facts.spec.js +0 -1
  441. package/dist/graph/onchain/field-manifest.d.ts +0 -29
  442. package/dist/graph/onchain/field-manifest.spec.d.ts +0 -1
  443. package/dist/graph/onchain/field-manifest.spec.js +0 -1
  444. package/dist/graph/onchain/fixtures.d.ts +0 -80
  445. package/dist/graph/onchain/fixtures.spec.d.ts +0 -1
  446. package/dist/graph/onchain/fixtures.spec.js +0 -1
  447. package/dist/graph/onchain/graph-policy.spec.d.ts +0 -1
  448. package/dist/graph/onchain/graph-policy.spec.js +0 -1
  449. package/dist/graph/onchain/index.d.ts +0 -29
  450. package/dist/graph/onchain/interest.d.ts +0 -10
  451. package/dist/graph/onchain/interest.spec.d.ts +0 -1
  452. package/dist/graph/onchain/interest.spec.js +0 -1
  453. package/dist/graph/onchain/label-lint.spec.d.ts +0 -1
  454. package/dist/graph/onchain/label-lint.spec.js +0 -1
  455. package/dist/graph/onchain/names.d.ts +0 -23
  456. package/dist/graph/onchain/names.spec.d.ts +0 -1
  457. package/dist/graph/onchain/names.spec.js +0 -1
  458. package/dist/graph/onchain/object-held-receipts.d.ts +0 -20
  459. package/dist/graph/onchain/object-held-receipts.spec.d.ts +0 -1
  460. package/dist/graph/onchain/object-held-receipts.spec.js +0 -1
  461. package/dist/graph/onchain/onchain.spec.d.ts +0 -1
  462. package/dist/graph/onchain/onchain.spec.js +0 -1
  463. package/dist/graph/onchain/policy.d.ts +0 -8
  464. package/dist/graph/onchain/project-relationship.d.ts +0 -3
  465. package/dist/graph/onchain/proposal-graph.d.ts +0 -11
  466. package/dist/graph/onchain/proposal-graph.spec.d.ts +0 -1
  467. package/dist/graph/onchain/proposal-graph.spec.js +0 -1
  468. package/dist/graph/onchain/sdk-batch.d.ts +0 -129
  469. package/dist/graph/onchain/sdk-dataplane.d.ts +0 -44
  470. package/dist/graph/onchain/strategy.spec.d.ts +0 -1
  471. package/dist/graph/onchain/strategy.spec.js +0 -1
  472. package/dist/graph/onchain/synthesis.d.ts +0 -20
  473. package/dist/graph/onchain/synthesis.spec.d.ts +0 -1
  474. package/dist/graph/onchain/synthesis.spec.js +0 -1
  475. package/dist/graph/onchain/table-ledger.spec.d.ts +0 -1
  476. package/dist/graph/onchain/table-ledger.spec.js +0 -1
  477. package/dist/graph/onchain/viewport.d.ts +0 -6
  478. package/dist/harness/auto-escalation.d.ts +0 -15
  479. package/dist/intent/enrich.d.ts +0 -1
  480. package/dist/intent/index.d.ts +0 -23
  481. package/dist/intent/matcher.d.ts +0 -2
  482. package/dist/intent/store.d.ts +0 -19
  483. package/dist/intent/types.d.ts +0 -32
  484. package/dist/keeper/KeeperScan.d.ts +0 -41
  485. package/dist/keeper/KeeperStore.d.ts +0 -43
  486. package/dist/keeper/detectors.d.ts +0 -42
  487. package/dist/keeper/keeper.spec.d.ts +0 -1
  488. package/dist/keeper/keeper.spec.js +0 -1
  489. package/dist/keeper/types.d.ts +0 -67
  490. package/dist/knowledge/account-marks.d.ts +0 -36
  491. package/dist/knowledge/allocation-ledger.d.ts +0 -75
  492. package/dist/knowledge/allocation-puzzle.d.ts +0 -138
  493. package/dist/knowledge/allocation-risk.d.ts +0 -82
  494. package/dist/knowledge/allocation-templates.d.ts +0 -38
  495. package/dist/knowledge/allocator-rail-verifier.d.ts +0 -59
  496. package/dist/knowledge/anti-cheat.d.ts +0 -2
  497. package/dist/knowledge/arb-fund-facts.d.ts +0 -51
  498. package/dist/knowledge/arb-risk.d.ts +0 -39
  499. package/dist/knowledge/arbitration-puzzle.d.ts +0 -84
  500. package/dist/knowledge/arbitration-rail-verifier.d.ts +0 -35
  501. package/dist/knowledge/arbitration-risk.d.ts +0 -114
  502. package/dist/knowledge/arbitration-templates.d.ts +0 -39
  503. package/dist/knowledge/arbitration-venue-order.d.ts +0 -25
  504. package/dist/knowledge/baselines/guard-lint-baseline.spec.d.ts +0 -1
  505. package/dist/knowledge/baselines/guard-lint-baseline.spec.js +0 -1
  506. package/dist/knowledge/baselines/risk-baselines.spec.d.ts +0 -1
  507. package/dist/knowledge/baselines/risk-baselines.spec.js +0 -1
  508. package/dist/knowledge/baselines/risk-cases.d.ts +0 -8
  509. package/dist/knowledge/baselines/semantic-facts.d.ts +0 -12
  510. package/dist/knowledge/bridge-risk.d.ts +0 -36
  511. package/dist/knowledge/catalog-facts.d.ts +0 -4
  512. package/dist/knowledge/chain-query-registry.d.ts +0 -14
  513. package/dist/knowledge/commission-landing.d.ts +0 -26
  514. package/dist/knowledge/component-schema.d.ts +0 -64
  515. package/dist/knowledge/contact-risk.d.ts +0 -32
  516. package/dist/knowledge/contact-templates.d.ts +0 -26
  517. package/dist/knowledge/contract-invariants.d.ts +0 -54
  518. package/dist/knowledge/demand-risk.d.ts +0 -30
  519. package/dist/knowledge/discount-threshold.d.ts +0 -26
  520. package/dist/knowledge/dynamic-pricing.d.ts +0 -29
  521. package/dist/knowledge/entity-recipient-guard.d.ts +0 -21
  522. package/dist/knowledge/event-semantics.d.ts +0 -23
  523. package/dist/knowledge/evidence-review.d.ts +0 -35
  524. package/dist/knowledge/fee-param-bindings.d.ts +0 -28
  525. package/dist/knowledge/flywheel-loop.d.ts +0 -41
  526. package/dist/knowledge/game-scenarios.d.ts +0 -21
  527. package/dist/knowledge/getting-started.d.ts +0 -37
  528. package/dist/knowledge/goal-completion.d.ts +0 -31
  529. package/dist/knowledge/guard-anchor-reach.d.ts +0 -19
  530. package/dist/knowledge/guard-binding-table.d.ts +0 -52
  531. package/dist/knowledge/guard-binding-verifier.d.ts +0 -37
  532. package/dist/knowledge/guard-bindings.d.ts +0 -21
  533. package/dist/knowledge/guard-blueprint.d.ts +0 -68
  534. package/dist/knowledge/guard-design-patterns.d.ts +0 -38
  535. package/dist/knowledge/guard-eval.d.ts +0 -15
  536. package/dist/knowledge/guard-field-cognition.d.ts +0 -48
  537. package/dist/knowledge/guard-host-context.d.ts +0 -24
  538. package/dist/knowledge/guard-ledger.d.ts +0 -19
  539. package/dist/knowledge/guard-leg-map.d.ts +0 -5
  540. package/dist/knowledge/guard-lint.d.ts +0 -79
  541. package/dist/knowledge/guard-node-gates.d.ts +0 -9
  542. package/dist/knowledge/guard-puzzle.d.ts +0 -188
  543. package/dist/knowledge/guard-render.d.ts +0 -71
  544. package/dist/knowledge/guard-risk.d.ts +0 -71
  545. package/dist/knowledge/guard-submission-brief.d.ts +0 -94
  546. package/dist/knowledge/guard-submission-prompt.d.ts +0 -63
  547. package/dist/knowledge/guard-translation.d.ts +0 -58
  548. package/dist/knowledge/index.d.ts +0 -299
  549. package/dist/knowledge/industry-evolution.d.ts +0 -82
  550. package/dist/knowledge/industry-generalizer.d.ts +0 -63
  551. package/dist/knowledge/industry-rule-node.d.ts +0 -7
  552. package/dist/knowledge/industry-strategy.d.ts +0 -91
  553. package/dist/knowledge/intent-metrics.d.ts +0 -43
  554. package/dist/knowledge/jsonrpc-enum.d.ts +0 -102
  555. package/dist/knowledge/knob-docs.d.ts +0 -5
  556. package/dist/knowledge/machine-fork-watch.d.ts +0 -9
  557. package/dist/knowledge/machine-ledger.d.ts +0 -42
  558. package/dist/knowledge/machine-puzzle.d.ts +0 -206
  559. package/dist/knowledge/machine-risk.d.ts +0 -72
  560. package/dist/knowledge/machine-templates.d.ts +0 -92
  561. package/dist/knowledge/machine-topology.d.ts +0 -116
  562. package/dist/knowledge/machine-translation.d.ts +0 -96
  563. package/dist/knowledge/market-metrics.d.ts +0 -34
  564. package/dist/knowledge/market-operations.d.ts +0 -46
  565. package/dist/knowledge/migration-preflight.d.ts +0 -27
  566. package/dist/knowledge/object-dependency.d.ts +0 -31
  567. package/dist/knowledge/operation-dictionary.d.ts +0 -18
  568. package/dist/knowledge/order-ledger.d.ts +0 -69
  569. package/dist/knowledge/order-puzzle.d.ts +0 -162
  570. package/dist/knowledge/order-risk.d.ts +0 -62
  571. package/dist/knowledge/order-templates.d.ts +0 -50
  572. package/dist/knowledge/param-schema.d.ts +0 -93
  573. package/dist/knowledge/param-tiers.d.ts +0 -27
  574. package/dist/knowledge/passport-ledger.d.ts +0 -60
  575. package/dist/knowledge/passport-templates.d.ts +0 -40
  576. package/dist/knowledge/path-oracle/coverage.d.ts +0 -16
  577. package/dist/knowledge/path-oracle/index.d.ts +0 -5
  578. package/dist/knowledge/path-oracle/products/food-delivery.d.ts +0 -2
  579. package/dist/knowledge/path-oracle/schema.d.ts +0 -188
  580. package/dist/knowledge/pattern-resolutions.d.ts +0 -110
  581. package/dist/knowledge/payment-risk.d.ts +0 -38
  582. package/dist/knowledge/payment-tracker.d.ts +0 -63
  583. package/dist/knowledge/permission-ledger.d.ts +0 -49
  584. package/dist/knowledge/permission-puzzle.d.ts +0 -122
  585. package/dist/knowledge/permission-risk.d.ts +0 -70
  586. package/dist/knowledge/permission-templates.d.ts +0 -38
  587. package/dist/knowledge/personal-risk.d.ts +0 -36
  588. package/dist/knowledge/product-detail-source.d.ts +0 -37
  589. package/dist/knowledge/product-doc-b5.d.ts +0 -16
  590. package/dist/knowledge/progress-ledger.d.ts +0 -63
  591. package/dist/knowledge/progress-puzzle.d.ts +0 -82
  592. package/dist/knowledge/progress-risk.d.ts +0 -75
  593. package/dist/knowledge/progress-templates.d.ts +0 -38
  594. package/dist/knowledge/projection.d.ts +0 -54
  595. package/dist/knowledge/projection.spec.d.ts +0 -1
  596. package/dist/knowledge/projection.spec.js +0 -1
  597. package/dist/knowledge/proof-risk.d.ts +0 -33
  598. package/dist/knowledge/protocol-facts.d.ts +0 -17
  599. package/dist/knowledge/publish-gate.d.ts +0 -20
  600. package/dist/knowledge/publish-readiness.d.ts +0 -25
  601. package/dist/knowledge/publish-surface-contract.d.ts +0 -16
  602. package/dist/knowledge/puzzle-projections.d.ts +0 -11
  603. package/dist/knowledge/rail-exit-satisfiability.d.ts +0 -25
  604. package/dist/knowledge/registrar-risk.d.ts +0 -34
  605. package/dist/knowledge/release-sentinel.d.ts +0 -12
  606. package/dist/knowledge/repository-risk.d.ts +0 -46
  607. package/dist/knowledge/repository-write-semantics.d.ts +0 -27
  608. package/dist/knowledge/reputation-rules.d.ts +0 -36
  609. package/dist/knowledge/requirement-families.d.ts +0 -13
  610. package/dist/knowledge/resource-risk.d.ts +0 -32
  611. package/dist/knowledge/reward-ledger.d.ts +0 -97
  612. package/dist/knowledge/reward-puzzle.d.ts +0 -98
  613. package/dist/knowledge/reward-risk.d.ts +0 -86
  614. package/dist/knowledge/reward-templates.d.ts +0 -25
  615. package/dist/knowledge/rule-node-analyzers.d.ts +0 -49
  616. package/dist/knowledge/rule-outcome.d.ts +0 -5
  617. package/dist/knowledge/scenario-topology.d.ts +0 -48
  618. package/dist/knowledge/semantic-ir.d.ts +0 -136
  619. package/dist/knowledge/service-allocation-semantics.d.ts +0 -36
  620. package/dist/knowledge/service-allocator-audit-node.d.ts +0 -3
  621. package/dist/knowledge/service-ledger.d.ts +0 -87
  622. package/dist/knowledge/service-puzzle.d.ts +0 -158
  623. package/dist/knowledge/service-risk-node.d.ts +0 -3
  624. package/dist/knowledge/service-risk.d.ts +0 -110
  625. package/dist/knowledge/service-templates.d.ts +0 -41
  626. package/dist/knowledge/settlement-semantics.d.ts +0 -1
  627. package/dist/knowledge/strategy-manuals.d.ts +0 -15
  628. package/dist/knowledge/supply-chain.d.ts +0 -35
  629. package/dist/knowledge/template-index.d.ts +0 -19
  630. package/dist/knowledge/template-loader.d.ts +0 -425
  631. package/dist/knowledge/template-nav.d.ts +0 -9
  632. package/dist/knowledge/template-prose.d.ts +0 -50
  633. package/dist/knowledge/template-registry.d.ts +0 -48
  634. package/dist/knowledge/template-scanner.d.ts +0 -158
  635. package/dist/knowledge/template-test-profiles.d.ts +0 -17
  636. package/dist/knowledge/template-validation.d.ts +0 -3
  637. package/dist/knowledge/tools-reference.d.ts +0 -17
  638. package/dist/knowledge/treasury-ledger.d.ts +0 -42
  639. package/dist/knowledge/treasury-puzzle.d.ts +0 -163
  640. package/dist/knowledge/treasury-risk.d.ts +0 -88
  641. package/dist/knowledge/treasury-templates.d.ts +0 -38
  642. package/dist/knowledge/universal-template.d.ts +0 -22
  643. package/dist/knowledge/util-risk.d.ts +0 -30
  644. package/dist/knowledge/workflow-guidance.d.ts +0 -194
  645. package/dist/knowledge/workspace-lists.d.ts +0 -61
  646. package/dist/monitor/SuggestionBridge.spec.d.ts +0 -1
  647. package/dist/monitor/SuggestionBridge.spec.js +0 -1
  648. package/dist/participation/arbitrator-interest.d.ts +0 -22
  649. package/dist/participation/demander-interest.d.ts +0 -23
  650. package/dist/participation/employee-kpi.d.ts +0 -37
  651. package/dist/participation/employee-kpi.spec.d.ts +0 -1
  652. package/dist/participation/employee-kpi.spec.js +0 -1
  653. package/dist/participation/employee-store.d.ts +0 -16
  654. package/dist/participation/game-context.d.ts +0 -25
  655. package/dist/participation/index.d.ts +0 -2
  656. package/dist/participation/node-action-advisor.d.ts +0 -68
  657. package/dist/participation/time-window.d.ts +0 -48
  658. package/dist/persona/facet-profile.d.ts +0 -33
  659. package/dist/persona/persona-audit.spec.d.ts +0 -1
  660. package/dist/persona/persona-audit.spec.js +0 -1
  661. package/dist/playbooks/service-build/business-puzzle.d.ts +0 -48
  662. package/dist/playbooks/service-build/context-assembly.d.ts +0 -32
  663. package/dist/playbooks/service-build/facet-money.d.ts +0 -33
  664. package/dist/playbooks/service-build/facet-money.spec.d.ts +0 -1
  665. package/dist/playbooks/service-build/facet-money.spec.js +0 -1
  666. package/dist/playbooks/service-build/game-theory.d.ts +0 -47
  667. package/dist/playbooks/service-build/index.d.ts +0 -15
  668. package/dist/playbooks/service-build/intent-analyzer.d.ts +0 -72
  669. package/dist/playbooks/service-build/machine-nodes.d.ts +0 -27
  670. package/dist/playbooks/service-build/machine-panorama.d.ts +0 -71
  671. package/dist/playbooks/service-build/merchant-guide.d.ts +0 -382
  672. package/dist/playbooks/service-build/migration-planner.d.ts +0 -61
  673. package/dist/playbooks/service-build/mode-actions.d.ts +0 -260
  674. package/dist/playbooks/service-build/object-panorama.d.ts +0 -317
  675. package/dist/playbooks/service-build/object-type.d.ts +0 -1
  676. package/dist/playbooks/service-build/participation-radar.d.ts +0 -20
  677. package/dist/playbooks/service-build/pipeline-actions.d.ts +0 -108
  678. package/dist/playbooks/service-build/process.d.ts +0 -6
  679. package/dist/playbooks/service-build/relationship-profile.d.ts +0 -3
  680. package/dist/playbooks/service-build/reverse-mapping-nk4.spec.d.ts +0 -1
  681. package/dist/playbooks/service-build/reverse-mapping-nk4.spec.js +0 -1
  682. package/dist/playbooks/service-build/reverse-mapping-refund-p0-5.spec.d.ts +0 -1
  683. package/dist/playbooks/service-build/reverse-mapping-refund-p0-5.spec.js +0 -1
  684. package/dist/playbooks/service-build/reverse-mapping.d.ts +0 -66
  685. package/dist/playbooks/service-build/risk-aggregator.d.ts +0 -59
  686. package/dist/playbooks/service-build/service-panorama.d.ts +0 -229
  687. package/dist/playbooks/service-build/service-quote.d.ts +0 -2
  688. package/dist/playbooks/service-build/service-quote.spec.d.ts +0 -1
  689. package/dist/playbooks/service-build/service-quote.spec.js +0 -1
  690. package/dist/playbooks/service-build/topology-evaluation.spec.d.ts +0 -1
  691. package/dist/playbooks/service-build/topology-evaluation.spec.js +0 -1
  692. package/dist/playbooks/service-build/topology-query.d.ts +0 -25
  693. package/dist/playbooks/service-build/workflow-design-assessment.d.ts +0 -33
  694. package/dist/relationship/derivation.d.ts +0 -95
  695. package/dist/relationship/derivation.spec.d.ts +0 -1
  696. package/dist/relationship/derivation.spec.js +0 -1
  697. package/dist/relationship/incentive.d.ts +0 -38
  698. package/dist/relationship/index.d.ts +0 -4
  699. package/dist/relationship/registry.d.ts +0 -13
  700. package/dist/relationship/types.d.ts +0 -45
  701. package/dist/review/arb.d.ts +0 -4
  702. package/dist/review/demand.d.ts +0 -3
  703. package/dist/review/index.d.ts +0 -3
  704. package/dist/review/machine.d.ts +0 -3
  705. package/dist/review/order.d.ts +0 -8
  706. package/dist/review/progress.d.ts +0 -3
  707. package/dist/review/repository.d.ts +0 -3
  708. package/dist/review/service.d.ts +0 -5
  709. package/dist/review/types.d.ts +0 -163
  710. package/dist/role/derivation.d.ts +0 -35
  711. package/dist/role/index.d.ts +0 -6
  712. package/dist/role/intent.d.ts +0 -23
  713. package/dist/role/model.d.ts +0 -9
  714. package/dist/role/profiles.d.ts +0 -26
  715. package/dist/role/resolution.d.ts +0 -27
  716. package/dist/runtime/instance-registry.d.ts +0 -14
  717. package/dist/safety/index.d.ts +0 -3
  718. package/dist/schema/call/permission-handler.d.ts +0 -5
  719. package/dist/schema/call/semantic-customer-advice.spec.d.ts +0 -1
  720. package/dist/schema/call/semantic-customer-advice.spec.js +0 -1
  721. package/dist/schema/common/tokentype-short-probe.spec.d.ts +0 -1
  722. package/dist/schema/common/tokentype-short-probe.spec.js +0 -1
  723. package/dist/schema/envelope-unify.d.ts +0 -5
  724. package/dist/schema/goal/planning.d.ts +0 -742
  725. package/dist/schema/industry-pack/modes.d.ts +0 -447
  726. package/dist/schema/query/bi.d.ts +0 -3369
  727. package/dist/schema/utils/guard-query-utils.d.ts +0 -18
  728. package/dist/schema/utils/permission-index-utils.d.ts +0 -2
  729. package/dist/schema/utils/skills-recommendation.d.ts +0 -2
  730. package/dist/schema-query-impl/index.d.ts +0 -83
  731. package/dist/schemas/account_operation.output.json +0 -3869
  732. package/dist/schemas/ask_user.output.json +0 -54
  733. package/dist/schemas/benchmark_migration_operation.output.json +0 -1669
  734. package/dist/schemas/bridge_operation.output.json +0 -1548
  735. package/dist/schemas/config_operation.output.json +0 -896
  736. package/dist/schemas/employee_operation.output.json +0 -307
  737. package/dist/schemas/evaluation_operation.output.json +0 -4716
  738. package/dist/schemas/guard2file.output.json +0 -83
  739. package/dist/schemas/industry_pack_operation.output.json +0 -2985
  740. package/dist/schemas/intent_radar.output.json +0 -326
  741. package/dist/schemas/keeper_operation.output.json +0 -1441
  742. package/dist/schemas/local_cache_operation.output.json +0 -1718
  743. package/dist/schemas/local_history_operation.output.json +0 -1644
  744. package/dist/schemas/local_info_operation.output.json +0 -1530
  745. package/dist/schemas/local_mark_operation.output.json +0 -1622
  746. package/dist/schemas/machineNode2file.output.json +0 -88
  747. package/dist/schemas/messenger_operation.output.json +0 -4692
  748. package/dist/schemas/monitor_events.output.json +0 -1602
  749. package/dist/schemas/monitor_subscription.output.json +0 -1629
  750. package/dist/schemas/onchain_events.output.json +0 -4053
  751. package/dist/schemas/onchain_operations.output.json +0 -7788
  752. package/dist/schemas/onchain_table_data.output.json +0 -11868
  753. package/dist/schemas/permission_operation.output.json +0 -205
  754. package/dist/schemas/persona_operation.output.json +0 -64612
  755. package/dist/schemas/query_toolkit.output.json +0 -28302
  756. package/dist/schemas/schema_query.output.json +0 -81
  757. package/dist/schemas/service_clone_operation.output.json +0 -247
  758. package/dist/schemas/strategy_review_operation.output.json +0 -532
  759. package/dist/schemas/watch_operation.output.json +0 -930
  760. package/dist/schemas/wip_file.output.json +0 -360
  761. package/dist/schemas/workflow_operation.output.json +0 -422
  762. package/dist/schemas/workspace_operation.output.json +0 -477
  763. package/dist/schemas/wowok_buildin_info.output.json +0 -2477
  764. package/dist/strategy/collectors.d.ts +0 -66
  765. package/dist/strategy/collectors.spec.d.ts +0 -1
  766. package/dist/strategy/collectors.spec.js +0 -1
  767. package/dist/strategy/index.d.ts +0 -5
  768. package/dist/strategy/metrics.d.ts +0 -20
  769. package/dist/strategy/review.d.ts +0 -48
  770. package/dist/strategy/scorecard.d.ts +0 -32
  771. package/dist/strategy/store.d.ts +0 -26
  772. package/dist/task/ProcessStore.d.ts +0 -98
  773. package/dist/task/playbook.d.ts +0 -11
  774. package/dist/task/substep-trace.d.ts +0 -91
  775. package/dist/tools/build-fingerprint.d.ts +0 -28
  776. package/dist/tools/error-catalog.d.ts +0 -17
  777. package/dist/tools/handlers/ask-user.d.ts +0 -3
  778. package/dist/tools/handlers/benchmark-migration.d.ts +0 -121
  779. package/dist/tools/handlers/bridge.d.ts +0 -8
  780. package/dist/tools/handlers/config.d.ts +0 -2
  781. package/dist/tools/handlers/dispatch-expectations.d.ts +0 -2
  782. package/dist/tools/handlers/dispatch-expectations.spec.d.ts +0 -1
  783. package/dist/tools/handlers/dispatch-expectations.spec.js +0 -1
  784. package/dist/tools/handlers/employee.d.ts +0 -8
  785. package/dist/tools/handlers/employee.spec.d.ts +0 -1
  786. package/dist/tools/handlers/employee.spec.js +0 -1
  787. package/dist/tools/handlers/entry-edge-recipe.d.ts +0 -101
  788. package/dist/tools/handlers/escrow-deficit.d.ts +0 -10
  789. package/dist/tools/handlers/evaluation.d.ts +0 -2
  790. package/dist/tools/handlers/evaluation.spec.d.ts +0 -1
  791. package/dist/tools/handlers/evaluation.spec.js +0 -1
  792. package/dist/tools/handlers/file-export.d.ts +0 -3
  793. package/dist/tools/handlers/fund-rail-recipe.d.ts +0 -10
  794. package/dist/tools/handlers/goal.d.ts +0 -4
  795. package/dist/tools/handlers/industry-pack.d.ts +0 -3
  796. package/dist/tools/handlers/intent-radar.d.ts +0 -2
  797. package/dist/tools/handlers/keeper.d.ts +0 -12
  798. package/dist/tools/handlers/local.d.ts +0 -6
  799. package/dist/tools/handlers/mark-namespace.d.ts +0 -30
  800. package/dist/tools/handlers/messenger.d.ts +0 -24
  801. package/dist/tools/handlers/monitor.d.ts +0 -26
  802. package/dist/tools/handlers/name-resolution.d.ts +0 -4
  803. package/dist/tools/handlers/name-resolution.spec.d.ts +0 -1
  804. package/dist/tools/handlers/name-resolution.spec.js +0 -1
  805. package/dist/tools/handlers/network.d.ts +0 -1
  806. package/dist/tools/handlers/onchain-name-registration.d.ts +0 -49
  807. package/dist/tools/handlers/onchain-name-registration.spec.d.ts +0 -1
  808. package/dist/tools/handlers/onchain-name-registration.spec.js +0 -1
  809. package/dist/tools/handlers/onchain.d.ts +0 -132
  810. package/dist/tools/handlers/permission.d.ts +0 -2
  811. package/dist/tools/handlers/persona.d.ts +0 -4
  812. package/dist/tools/handlers/publish-binding-echo.d.ts +0 -22
  813. package/dist/tools/handlers/review-chain.d.ts +0 -19
  814. package/dist/tools/handlers/schema-query.d.ts +0 -2
  815. package/dist/tools/handlers/service-clone.d.ts +0 -20
  816. package/dist/tools/handlers/stale-build-check.d.ts +0 -9
  817. package/dist/tools/handlers/strategy-review.d.ts +0 -2
  818. package/dist/tools/handlers/submission-assembly.d.ts +0 -55
  819. package/dist/tools/handlers/watch.d.ts +0 -2
  820. package/dist/tools/handlers/winner-derivation.d.ts +0 -20
  821. package/dist/tools/handlers/wip-upload.d.ts +0 -22
  822. package/dist/tools/handlers/wip.d.ts +0 -2
  823. package/dist/tools/handlers/workflow.d.ts +0 -2
  824. package/dist/tools/handlers/workspace.d.ts +0 -4
  825. package/dist/tools/move-fn-index.gen.d.ts +0 -3
  826. package/dist/tools/publish-gate-state.d.ts +0 -5
  827. package/dist/tools/registry/agent.d.ts +0 -2
  828. package/dist/tools/registry/bridge.d.ts +0 -2
  829. package/dist/tools/registry/business.d.ts +0 -2
  830. package/dist/tools/registry/config.d.ts +0 -2
  831. package/dist/tools/registry/evaluation.d.ts +0 -2
  832. package/dist/tools/registry/files.d.ts +0 -2
  833. package/dist/tools/registry/identity.d.ts +0 -2
  834. package/dist/tools/registry/interaction.d.ts +0 -2
  835. package/dist/tools/registry/local.d.ts +0 -2
  836. package/dist/tools/registry/messenger.d.ts +0 -2
  837. package/dist/tools/registry/monitor.d.ts +0 -2
  838. package/dist/tools/registry/onchain.d.ts +0 -2
  839. package/dist/tools/registry/query.d.ts +0 -2
  840. package/dist/tools/retry.d.ts +0 -8
  841. package/dist/tools/rules-hook.d.ts +0 -5
  842. package/dist/tools/runtime-health.d.ts +0 -10
  843. package/dist/tools/sanitize-description-roundtrip.spec.d.ts +0 -1
  844. package/dist/tools/sanitize-description-roundtrip.spec.js +0 -1
  845. package/dist/tools/sanitize-output.d.ts +0 -4
  846. package/dist/tools/sanitize-output.spec.d.ts +0 -1
  847. package/dist/tools/sanitize-output.spec.js +0 -1
  848. package/dist/tools/shared.d.ts +0 -20
  849. package/dist/tools/transport-integrity.d.ts +0 -7
  850. package/dist/tools/upgrade-check.d.ts +0 -75
  851. package/dist/tools/wip-deploy-assist.d.ts +0 -34
  852. package/dist/tools/wip-verify-ledger.d.ts +0 -16
  853. package/dist/tools/wrap.d.ts +0 -45
@@ -0,0 +1,586 @@
1
+ {
2
+ "comment": "Reward rule pack (R-R) — declarative form of the retired in-code Reward risk rules. Facts are produced by the kernel extractor (reward-risk.ts, bound to the Reward Guard/record caps and the Guard constructor table); rules only reference fact names. Array walks (guard_add scans, first-offender picks, intent keyword matching) are sunk into the extractor; R-R-4-01 is a catalog stub (the retired check always returned null) kept silent via a never-true condition, and R-R-7-01 carries two cases for the deposit-dependent level branch. R-R-8-01..05 are the experience-compensation disclosure layer (C-11 decision: buyer-experience compensation rides the Reward object — solvency, withdraw reversibility, claim friction, submission-computed amounts, no clawback), gated on the compensation_intent fact. Levels/wording can be retuned per rule and rules can be disabled (enabled=false, trace left) via the judgment document — factory rules can never be deleted or invented here.",
3
+ "facts": {
4
+ "claim": "Guard address being claimed against (ctx.claim).",
5
+ "guard_add_count": "Number of entries in ctx.guard_add (undefined when absent).",
6
+ "guard_current": "Current on-chain guard count (ctx.current_guard_count, default 0).",
7
+ "guard_total": "guard_current + guard_add_count — the would-be total after the batch (only when guard_add is non-empty).",
8
+ "guard_count_would_exceed": "guard_add is non-empty and guard_total would exceed MAX_GUARD_COUNT_REWARD (chain-limit comparison sunk into the extractor).",
9
+ "guard_batch_over_limit": "guard_add alone exceeds MAX_GUARD_COUNT_REWARD (schema-level batch overflow).",
10
+ "max_guard_count": "KERNEL CONSTANT — guards per Reward cap (MAX_GUARD_COUNT_REWARD).",
11
+ "record_count": "Per-recipient record count (ctx.current_record_count_for_recipient, default 0).",
12
+ "record_count_at_limit": "record_count has reached MAX_RECORD_COUNT_REWARD (chain-limit comparison sunk into the extractor).",
13
+ "max_record_count": "KERNEL CONSTANT — records per recipient cap (MAX_RECORD_COUNT_REWARD).",
14
+ "first_non_address_identifier_index": "First-offender — index into guard_add of the first entry whose GuardIdentifier recipient is not address-typed (absent when none).",
15
+ "first_non_address_identifier_id": "The offending GuardIdentifier value.",
16
+ "first_non_u64_amount_index": "First-offender — index into guard_add of the first entry whose amount is a GuardU64Identifier but whose identifier is not u64-typed (absent when none).",
17
+ "first_non_u64_amount_id": "The offending amount identifier value.",
18
+ "first_non_u64_amount_value_type": "Resolved passport submission value type for the offending identifier ('unknown' when unresolved).",
19
+ "first_incompatible_store_from_id_index": "First-offender — index into guard_add of the first entry with store_from_id set that is incompatible with its guard (absent when none).",
20
+ "first_incompatible_store_from_id_guard": "The offending guard address.",
21
+ "first_incompatible_store_from_id_value": "The offending store_from_id value.",
22
+ "first_invalid_pairing_index": "First-offender — index into guard_add of the first entry with no matching Guard constructor (absent when none).",
23
+ "first_invalid_pairing_recipient": "Rendered recipient type of the invalid pairing ('undefined' when unrecognized).",
24
+ "first_invalid_pairing_amount": "Rendered amount type of the invalid pairing.",
25
+ "guard_identifier_recipients_display": "All guard_add guard addresses whose recipient is a GuardIdentifier slot, ', '-joined — empty when there are none.",
26
+ "owner_receive_set": "ctx.owner_receive is non-null (permission-156 drain path in play).",
27
+ "new_lock_time": "Requested guard_not_added_expiration_time (ctx.guard_expiration_time, emitted when not undefined).",
28
+ "current_clock": "Current on-chain clock ms (ctx.current_clock_ms, emitted when present).",
29
+ "guard_lock_exceeds_year": "The requested guard-addition time-lock sits more than one year (365d) in the future (comparison sunk into the extractor).",
30
+ "balance_is_zero": "A claim is in play, balance and guard-count context are present, and the current balance parses to zero (BigInt comparison sunk into the extractor).",
31
+ "lock_until": "Live guard_not_added_expiration_time (ctx.current_guard_not_added_expiration_time, emitted when non-null).",
32
+ "guard_add_blocked_by_lock": "guard_add is non-empty, the time-lock is Some, and clock <= lock_until (E_GUARD_LOCKED_TIME comparison sunk into the extractor).",
33
+ "lock_time_in_past": "The requested guard-addition time-lock is not null and sits at or before the current clock (E_GUARD_LOCKED_TIME_INVALID comparison sunk into the extractor).",
34
+ "known_guards_display": "Live Reward guard addresses (ctx.target_guard_addresses), ','-joined — empty for an empty list.",
35
+ "claim_guard_not_in_targets": "The claimed guard is absent from ctx.target_guard_addresses (membership comparison sunk into the extractor).",
36
+ "reward_type": "The Reward's T coin type string (ctx.reward_type).",
37
+ "coin_type": "Coin type passed by coin_add (ctx.coin_add.coin_type).",
38
+ "coin_type_mismatch": "coin_add is present with reward_type and its coin type differs from the Reward's T.",
39
+ "payment_token_type": "Token type carried by receive's Payment (ctx.receive.token_type).",
40
+ "payment_token_mismatch": "receive is present with reward_type and its token type differs from the Reward's T.",
41
+ "intent_display": "user_intent_phrases joined and lowercased — the rendered intent text (emitted when phrases are non-empty).",
42
+ "expected_progress_state": "Progress state baked into the Guard table (ctx.guard_expected_progress_state).",
43
+ "praise_intent_wrong_node": "Intent matches a praise keyword, the Machine supports the wonder pattern, and the Guard checks a non-wonder node (keyword matching sunk into the extractor).",
44
+ "wonder_node_without_praise_intent": "Guard checks the wonder node but the intent text matches no praise keyword (keyword matching sunk into the extractor).",
45
+ "compensation_intent": "The intent text matches an experience-compensation keyword (late delivery / delay / goodwill / experience compensation …; keyword matching sunk into the extractor) — the gate for the R-R-8 disclosure layer (C-11: experience compensation rides the Reward object). Deliberately excludes the bare word 'compensation' (collides with the Service compensation_fund arbitration indemnity).",
46
+ "has_deposit": "The operation deposits (coin_add or receive present).",
47
+ "has_identifier_amount": "At least one guard_add entry carries a GuardU64Identifier (submission-computed) amount — positive fact for the R-R-8-04 amount-source-trust disclosure.",
48
+ "recovery_gap_present": "A deposit or guard_add is in play and no entry carries the owner recovery signature (Signer recipient + GuardU64Identifier amount) — detection sunk into the extractor.",
49
+ "always_true": "Extractor sentinel — unconditionally true; marks catalog stubs (via eq false) and documentation."
50
+ },
51
+ "rules": [
52
+ {
53
+ "rule_id": "R-R-1-01",
54
+ "dimension": "structural",
55
+ "trigger": "guard_add would exceed MAX_GUARD_COUNT_REWARD (200)",
56
+ "cases": [
57
+ {
58
+ "when": { "all": [
59
+ { "field": "guard_add_count", "op": "truthy" },
60
+ { "field": "guard_count_would_exceed", "op": "eq", "value": true }
61
+ ] },
62
+ "level": "high",
63
+ "title": "guard_add would exceed MAX_GUARD_COUNT_REWARD",
64
+ "description": "Reward has ${guard_current} guards, adding ${guard_add_count} would total ${guard_total}, exceeds MAX_GUARD_COUNT_REWARD ${max_guard_count}. Move aborts with E_GUARD_COUNT_EXCEEDED (3).",
65
+ "scenario": "Adding too many guards to a single Reward (e.g. milestone reward with > 200 recipients)",
66
+ "mitigation": "Split into multiple Reward objects, or use GuardIdentifier recipient to handle multiple recipients with a single guard.",
67
+ "evidence": "current=${guard_current}, add=${guard_add_count}",
68
+ "stakeholders": ["owner", "service_provider"]
69
+ }
70
+ ]
71
+ },
72
+ {
73
+ "rule_id": "R-R-1-02",
74
+ "dimension": "structural",
75
+ "trigger": "claim would push recipient record count to MAX_RECORD_COUNT_REWARD (5200)",
76
+ "cases": [
77
+ {
78
+ "when": { "all": [
79
+ { "field": "claim", "op": "truthy" },
80
+ { "field": "record_count_at_limit", "op": "eq", "value": true }
81
+ ] },
82
+ "level": "high",
83
+ "title": "claim blocked — recipient record count at limit",
84
+ "description": "Recipient already has ${record_count} records, at MAX_RECORD_COUNT_REWARD ${max_record_count}. Next claim will abort with E_RECORD_COUNT_EXCEEDED (8). The recipient can no longer claim from this Reward.",
85
+ "scenario": "High-frequency claimer hits the 5200-record ceiling (e.g. cashback on every micro-order)",
86
+ "mitigation": "Owner can create a new Reward for the same recipient, OR redesign the Guard to batch claims (larger amount per claim).",
87
+ "evidence": "recipient_records=${record_count}",
88
+ "stakeholders": ["claimer"]
89
+ }
90
+ ]
91
+ },
92
+ {
93
+ "rule_id": "R-R-1-03",
94
+ "dimension": "structural",
95
+ "trigger": "guard_add batch size > MAX_GUARD_COUNT_REWARD (200) — schema-level overflow",
96
+ "cases": [
97
+ {
98
+ "when": { "all": [
99
+ { "field": "guard_add_count", "op": "truthy" },
100
+ { "field": "guard_batch_over_limit", "op": "eq", "value": true }
101
+ ] },
102
+ "level": "critical",
103
+ "title": "guard_add batch exceeds absolute limit",
104
+ "description": "Single guard_add call tries to add ${guard_add_count} guards in one transaction, exceeds MAX_GUARD_COUNT_REWARD ${max_guard_count}. SDK rejects this in operate().",
105
+ "scenario": "Bulk guard addition without splitting transactions",
106
+ "mitigation": "Split into multiple transactions, each ≤ ${max_guard_count} new guards.",
107
+ "evidence": "batch_size=${guard_add_count}",
108
+ "stakeholders": ["owner"]
109
+ }
110
+ ]
111
+ },
112
+ {
113
+ "rule_id": "R-R-2-01",
114
+ "dimension": "semantic",
115
+ "trigger": "guard_add with GuardIdentifier recipient where identifier type is not address",
116
+ "cases": [
117
+ {
118
+ "when": { "field": "first_non_address_identifier_index", "op": "present" },
119
+ "level": "high",
120
+ "title": "guard_add[${first_non_address_identifier_index}]: recipient GuardIdentifier ${first_non_address_identifier_id} is not address-typed",
121
+ "description": "RewardGuard constructor requires the recipient identifier to be address-typed. If the identifier type is not address, Move aborts with E_RECIPIENT_IDENTIFIER_NOT_ADDRESS (4).",
122
+ "scenario": "Misconfigured Guard — recipient identifier is u64/bool instead of address",
123
+ "mitigation": "Use a Guard with an address-typed identifier for recipient, OR switch to Entity/Signer recipient.",
124
+ "evidence": "guard_add[${first_non_address_identifier_index}].recipient.GuardIdentifier=${first_non_address_identifier_id}, is_address=false",
125
+ "stakeholders": ["owner"]
126
+ }
127
+ ]
128
+ },
129
+ {
130
+ "rule_id": "R-R-2-02",
131
+ "dimension": "semantic",
132
+ "trigger": "guard_add with GuardU64Identifier amount where identifier type is not u64",
133
+ "cases": [
134
+ {
135
+ "when": { "field": "first_non_u64_amount_index", "op": "present" },
136
+ "level": "high",
137
+ "title": "guard_add[${first_non_u64_amount_index}]: amount GuardU64Identifier ${first_non_u64_amount_id} is not u64-typed",
138
+ "description": "RewardGuard constructor resolves the guard's submission value type for the amount identifier; if None or ≠ TYPE_U64, Move aborts with E_AMOUNT_NOT_U64 (5).",
139
+ "scenario": "Misconfigured Guard — amount identifier is not u64-typed",
140
+ "mitigation": "Use a Guard with a u64-typed identifier for amount, OR switch to Fixed amount.",
141
+ "evidence": "guard_add[${first_non_u64_amount_index}].amount.value=${first_non_u64_amount_id}, value_type=${first_non_u64_amount_value_type}",
142
+ "stakeholders": ["owner"]
143
+ }
144
+ ]
145
+ },
146
+ {
147
+ "rule_id": "R-R-2-03",
148
+ "dimension": "semantic",
149
+ "trigger": "guard_add with store_from_id set but identifier is not number/address compatible",
150
+ "cases": [
151
+ {
152
+ "when": { "field": "first_incompatible_store_from_id_index", "op": "present" },
153
+ "level": "medium",
154
+ "title": "guard_add[${first_incompatible_store_from_id_index}]: store_from_id incompatible with guard",
155
+ "description": "RewardGuard constructor with store_from_id=Some requires the identifier to be number- or address-compatible. If the identifier type is not number or address, Move aborts with E_STORE_FROM_ID_NOT_COMPATIBLE (12).",
156
+ "scenario": "Misconfigured Guard — store_from_id points to a non-address/non-number identifier",
157
+ "mitigation": "Use a compatible identifier, OR drop store_from_id (set to null) if cross-reference is not needed.",
158
+ "evidence": "guard=${first_incompatible_store_from_id_guard}, store_from_id=${first_incompatible_store_from_id_value}",
159
+ "stakeholders": ["owner"]
160
+ }
161
+ ]
162
+ },
163
+ {
164
+ "rule_id": "R-R-2-04",
165
+ "dimension": "semantic",
166
+ "trigger": "guard_add with invalid Recipient × Amount pairing (no matching constructor)",
167
+ "cases": [
168
+ {
169
+ "when": { "field": "first_invalid_pairing_index", "op": "present" },
170
+ "level": "high",
171
+ "title": "guard_add[${first_invalid_pairing_index}]: invalid Recipient × Amount pairing",
172
+ "description": "recipient=${first_invalid_pairing_recipient}, amount=${first_invalid_pairing_amount} — no matching Move constructor. The SDK reward-guard binding will W_ERROR with \"Invalid recipient or amount type combination\".",
173
+ "scenario": "Schema validation bypassed or stale client",
174
+ "mitigation": "Use one of the 6 valid pairings: Guard, Entity, or Signer recipient — each with a u8 or u64 amount identifier.",
175
+ "evidence": "recipient=${first_invalid_pairing_recipient}, amount=${first_invalid_pairing_amount}",
176
+ "stakeholders": ["owner"]
177
+ }
178
+ ]
179
+ },
180
+ {
181
+ "rule_id": "R-R-2-05",
182
+ "dimension": "semantic",
183
+ "trigger": "guard_add with a GuardIdentifier recipient slot — the payout address is only as safe as the Guard predicate; owner security due diligence",
184
+ "cases": [
185
+ {
186
+ "when": { "field": "guard_identifier_recipients_display", "op": "truthy" },
187
+ "level": "medium",
188
+ "title": "Claim payout address comes from a submission slot — verify the Guard predicate constrains it",
189
+ "description": "For guard_add entry ${guard_identifier_recipients_display}, the claim recipient is Recipient::GuardIdentifier: claim() reads the payout address from the claim-time passport submission, and claim() itself needs no Permission. Whether that address is legitimate is decided entirely inside the Guard predicate — a guard whose predicate passes without constraining the recipient slot lets any passing party fill the slot with their own address and claim the pool. This is legal by design (the slot CAN be constrained by the predicate), so the safety duty is the configurer's, not the runtime's.",
190
+ "scenario": "Owner mounts a claim Guard whose root does not bind the submitted recipient (e.g., no Signer/entity constraint)",
191
+ "mitigation": "1) Review the full Guard definition and confirm the predicate constrains the recipient identifier (e.g., compare it to Signer or to an intended entity address). 2) If the payout should be a fixed party, use an Entity recipient; if it should be the caller, use Signer — neither depends on a submitted slot. 3) Regress on testnet: a claim to an address the predicate does not authorize must be rejected by the guard.",
192
+ "evidence": "guard_add with GuardIdentifier recipient: [${guard_identifier_recipients_display}]",
193
+ "stakeholders": ["owner", "service_provider"],
194
+ "exposure": {
195
+ "loss_parties": [
196
+ { "role": "merchant", "basis": "The reward pool is the merchant's deposited budget; a claim Guard that passes without constraining the recipient slot lets the pool drain to arbitrary addresses instead of the intended recipients." }
197
+ ],
198
+ "gain_paths": [
199
+ {
200
+ "role": "neutral",
201
+ "path": "A passing party fills the claim-time submission slot with their own address and claims from the pool.",
202
+ "viability": "conditional",
203
+ "gate": "Executes only if the Guard predicate fails to bind the submitted recipient — audit the full Guard definition to confirm or block the path."
204
+ }
205
+ ]
206
+ }
207
+ }
208
+ ]
209
+ },
210
+ {
211
+ "rule_id": "R-R-3-01",
212
+ "dimension": "permission",
213
+ "trigger": "claim attempted without permission context — claim is passport-driven",
214
+ "cases": [
215
+ {
216
+ "when": { "field": "claim", "op": "truthy" },
217
+ "level": "medium",
218
+ "title": "claim is permission-free — anyone with a valid Passport can claim",
219
+ "description": "Claiming does NOT assert any permission index. Eligibility is determined entirely by the Guard verification (the passport guard-result check). If the Guard is too permissive, funds can be drained by anyone.",
220
+ "scenario": "Loose Guard allows unauthorized claims (e.g. time-only Guard without service binding)",
221
+ "mitigation": "1) Use Guards that bind to specific Service/Order context. 2) Set expiration_time. 3) Monitor balance and refill only what's needed.",
222
+ "evidence": "claim=${claim}",
223
+ "stakeholders": ["owner", "service_provider"]
224
+ }
225
+ ]
226
+ },
227
+ {
228
+ "rule_id": "R-R-3-02",
229
+ "dimension": "permission",
230
+ "trigger": "owner_receive (156) — broad blast radius, owner can drain balance",
231
+ "cases": [
232
+ {
233
+ "when": { "field": "owner_receive_set", "op": "eq", "value": true },
234
+ "level": "high",
235
+ "title": "owner_receive drains balance to Permission owner",
236
+ "description": "owner_receive (permission 156) unwraps Receiving<K> / CoinWrapper<K> and forwards to Permission owner. If 156 is granted too broadly, any 156-holder can sweep receivables. (Note: owner_receive does NOT directly drain balance — only Receiving<K> envelopes sent to the Reward's id.)",
237
+ "scenario": "Compromised 156-holder sweeps receivables before owner",
238
+ "mitigation": "1) Grant 156 only to the Permission owner address. 2) Reconcile Receiving<K> inflows vs owner_receive events.",
239
+ "evidence": "owner_receive set",
240
+ "stakeholders": ["owner", "service_provider"],
241
+ "exposure": {
242
+ "loss_parties": [
243
+ { "role": "merchant", "basis": "Receivables sent to the Reward can be extracted from it by any holder of the drain permission at a time of their choosing, ahead of the owner's own reconciliation." }
244
+ ],
245
+ "gain_paths": [
246
+ {
247
+ "role": "collaborator",
248
+ "path": "A 156-holder triggers the unwrap-and-forward drain, extracting Receiving envelopes sent to the Reward out to the Permission owner.",
249
+ "viability": "conditional",
250
+ "gate": "The unconfirmed condition is the grant being broader than the owner address; the triggering holder profits only when they control the Permission owner identity the funds route to."
251
+ }
252
+ ]
253
+ }
254
+ }
255
+ ]
256
+ },
257
+ {
258
+ "rule_id": "R-R-3-03",
259
+ "dimension": "permission",
260
+ "trigger": "Guard-addition time-lock update (155) — can permanently lock guard additions",
261
+ "cases": [
262
+ {
263
+ "when": { "field": "guard_lock_exceeds_year", "op": "eq", "value": true },
264
+ "level": "medium",
265
+ "title": "The guard-addition time-lock freezes guard additions for > 1 year",
266
+ "description": "Setting guard_not_added_expiration_time to ${new_lock_time} (> 1 year from now) effectively freezes the guard list. While this is sometimes intentional (milestone rewards), it cannot be undone without setting a new time (which itself requires 155 permission).",
267
+ "scenario": "Operator sets excessively long lock period by mistake",
268
+ "mitigation": "Confirm intent. If wrong, set the guard-addition time-lock again with a shorter time (must be ≥ current clock per E_GUARD_LOCKED_TIME_NOT_INCREASING).",
269
+ "evidence": "lock_until=${new_lock_time}, clock=${current_clock}",
270
+ "stakeholders": ["owner"]
271
+ }
272
+ ]
273
+ },
274
+ {
275
+ "rule_id": "R-R-4-01",
276
+ "dimension": "lifecycle",
277
+ "trigger": "claim on guard with expiration_time < now (E_GUARD_EXPIRED) — catalog stub: the retired check could not inspect guard expiry without a query and always returned null",
278
+ "cases": [
279
+ {
280
+ "when": { "field": "always_true", "op": "eq", "value": false },
281
+ "level": "info",
282
+ "title": "claim on guard with expiration_time < now (E_GUARD_EXPIRED)",
283
+ "description": "Catalog stub — the retired check surfaced no finding: the guard's expiration cannot be inspected at this layer without a query. Retained for catalog completeness; the condition is never satisfiable.",
284
+ "stakeholders": ["claimer"]
285
+ }
286
+ ]
287
+ },
288
+ {
289
+ "rule_id": "R-R-4-02",
290
+ "dimension": "lifecycle",
291
+ "trigger": "claim: balance < amount (E_INSUFFICIENT_BALANCE)",
292
+ "cases": [
293
+ {
294
+ "when": { "all": [
295
+ { "field": "claim", "op": "truthy" },
296
+ { "field": "balance_is_zero", "op": "eq", "value": true }
297
+ ] },
298
+ "level": "high",
299
+ "title": "claim on Reward with zero balance",
300
+ "description": "Reward balance is 0. Any claim will abort with E_INSUFFICIENT_BALANCE (6). Owner must coin_add (153) or receive (154) to replenish.",
301
+ "scenario": "Marketing campaign budget exhausted but guards remain active",
302
+ "mitigation": "1) Owner: coin_add to replenish. 2) Owner: guard_remove ('expired' sweep or the guard ID) + lock guard additions via the time-lock to deactivate. 3) Claimer: wait for replenishment.",
303
+ "evidence": "balance=0",
304
+ "stakeholders": ["claimer", "owner"]
305
+ }
306
+ ]
307
+ },
308
+ {
309
+ "rule_id": "R-R-4-03",
310
+ "dimension": "lifecycle",
311
+ "trigger": "guard_add while guard_not_added_expiration_time is Some and clock ≤ expiration (E_GUARD_LOCKED_TIME)",
312
+ "cases": [
313
+ {
314
+ "when": { "all": [
315
+ { "field": "guard_add_count", "op": "truthy" },
316
+ { "field": "guard_add_blocked_by_lock", "op": "eq", "value": true }
317
+ ] },
318
+ "level": "high",
319
+ "title": "guard_add blocked by time-lock (guard_not_added_expiration_time)",
320
+ "description": "guard_not_added_expiration_time is Some(${lock_until}), clock is ${current_clock}. Move asserts clock > expiration_time (E_GUARD_LOCKED_TIME = 10).",
321
+ "scenario": "Trying to add guards during a flash sale lock period",
322
+ "mitigation": "1) Wait until clock > expiration_time. 2) Use the 155-permission time-lock update to extend the lock (cannot shorten below current clock).",
323
+ "evidence": "lock_until=${lock_until}, clock=${current_clock}",
324
+ "stakeholders": ["owner"]
325
+ }
326
+ ]
327
+ },
328
+ {
329
+ "rule_id": "R-R-4-04",
330
+ "dimension": "lifecycle",
331
+ "trigger": "Guard-addition time-lock regression (new time < current clock)",
332
+ "cases": [
333
+ {
334
+ "when": { "field": "lock_time_in_past", "op": "eq", "value": true },
335
+ "level": "high",
336
+ "title": "Guard-addition time-lock: new time must be in the future",
337
+ "description": "New guard_not_added_expiration_time = ${new_lock_time} ≤ clock ${current_clock}. Move aborts with E_GUARD_LOCKED_TIME_INVALID (11).",
338
+ "scenario": "Operator sets lock time in the past by mistake",
339
+ "mitigation": "Set guard_expiration_time to a value > ${current_clock} (current clock).",
340
+ "evidence": "new_time=${new_lock_time}, clock=${current_clock}",
341
+ "stakeholders": ["owner"]
342
+ }
343
+ ]
344
+ },
345
+ {
346
+ "rule_id": "R-R-5-01",
347
+ "dimension": "cross_object",
348
+ "trigger": "claim: guard not found in self.guards (E_GUARD_NOT_FOUND)",
349
+ "cases": [
350
+ {
351
+ "when": { "field": "claim_guard_not_in_targets", "op": "eq", "value": true },
352
+ "level": "high",
353
+ "title": "claim: supplied guard not in Reward.guards",
354
+ "description": "Guard ${claim} is not in the Reward's guard list. Move iterates self.guards and aborts with E_GUARD_NOT_FOUND (7) if no match.",
355
+ "scenario": "Claimer uses the wrong Guard object (typo or wrong Service)",
356
+ "mitigation": "1) Verify the Guard address via query ObjectReward. 2) Ensure the Guard was added via guard_add (152).",
357
+ "evidence": "claim_guard=${claim}, known_guards=${known_guards_display}",
358
+ "stakeholders": ["claimer"]
359
+ }
360
+ ]
361
+ },
362
+ {
363
+ "rule_id": "R-R-5-02",
364
+ "dimension": "cross_object",
365
+ "trigger": "coin_add: coin type T mismatch with Reward<T>",
366
+ "cases": [
367
+ {
368
+ "when": { "field": "coin_type_mismatch", "op": "eq", "value": true },
369
+ "level": "critical",
370
+ "title": "coin_add: coin type T mismatch",
371
+ "description": "Reward is Reward<${reward_type}> but coin_add passes Coin<${coin_type}>. Move type-system mismatch; SDK W_ERROR in operate().",
372
+ "scenario": "Operator tries to deposit wrong coin type (e.g. USDC into a WOW Reward)",
373
+ "mitigation": "Use Coin<${reward_type}> for coin_add.",
374
+ "evidence": "reward_type=${reward_type}, coin_type=${coin_type}",
375
+ "stakeholders": ["owner"]
376
+ }
377
+ ]
378
+ },
379
+ {
380
+ "rule_id": "R-R-5-03",
381
+ "dimension": "cross_object",
382
+ "trigger": "receive: Payment<T> type mismatch with Reward<T>",
383
+ "cases": [
384
+ {
385
+ "when": { "field": "payment_token_mismatch", "op": "eq", "value": true },
386
+ "level": "critical",
387
+ "title": "receive: Payment token_type mismatch",
388
+ "description": "Reward is Reward<${reward_type}> but receive's Payment<CoinWrapper<${payment_token_type}>>. SDK W_ERROR in operate().",
389
+ "scenario": "Operator tries to receive wrong-token Payment",
390
+ "mitigation": "Use Payment<${reward_type}> for receive.",
391
+ "evidence": "reward_type=${reward_type}, payment_token=${payment_token_type}",
392
+ "stakeholders": ["owner"]
393
+ }
394
+ ]
395
+ },
396
+ {
397
+ "rule_id": "R-R-6-01",
398
+ "dimension": "business_semantic",
399
+ "trigger": "intent mentions praise/positive-review but Guard checks non-wonder progress node",
400
+ "cases": [
401
+ {
402
+ "when": { "field": "praise_intent_wrong_node", "op": "eq", "value": true },
403
+ "level": "high",
404
+ "title": "Guard checks progress==\"${expected_progress_state}\" but intent indicates praise reward (wonder node)",
405
+ "description": "User intent mentions praise/positive-review/wonder, which maps to the 'wonder' progress node (customer gives positive review AFTER service completion). But the Guard's table bakes expected state=\"${expected_progress_state}\", allowing reward claim at the wrong lifecycle stage. This violates the business semantics: \"praise reward\" should only be claimable AFTER the customer advances to the 'wonder' node, not before. Guard is immutable — fixing this requires creating a new Guard + Reward pair.",
406
+ "scenario": "Designer builds Guard checking 'completed' instead of 'wonder' for a praise reward",
407
+ "mitigation": "Set the Guard table's expected progress state to 'wonder' (the positive-review node). The correct pattern: ordered → in_service → completed → wonder (praise) triggers reward claim. Reference: reward-templates.ts wonder_praise template.",
408
+ "evidence": "intent=\"${intent_display}\", expected_state=\"${expected_progress_state}\", expected_wonder=true",
409
+ "stakeholders": ["owner", "service_provider", "claimer"]
410
+ }
411
+ ]
412
+ },
413
+ {
414
+ "rule_id": "R-R-6-02",
415
+ "dimension": "business_semantic",
416
+ "trigger": "Guard checks wonder node but intent does not mention praise",
417
+ "cases": [
418
+ {
419
+ "when": { "field": "wonder_node_without_praise_intent", "op": "eq", "value": true },
420
+ "level": "medium",
421
+ "title": "Guard checks wonder node but intent does not mention praise",
422
+ "description": "Guard's expected progress state is \"wonder\" (positive-review node), but the user intent does not mention any praise/positive-review keyword. This may be a copy-paste from a wonder_praise template without adjusting the Guard for the actual business semantics. If this is a general feedback reward (wonder_feedback), this is fine. Otherwise, verify the node choice.",
423
+ "scenario": "Designer copies wonder_praise template but actually wants a completion-based reward",
424
+ "mitigation": "Verify: if intent is praise reward, add 'praise/positive review' to description. If intent is completion-based reward, change Guard to check 'completed' node.",
425
+ "evidence": "expected_state=\"wonder\", intent=\"${intent_display}\" (no praise keyword)",
426
+ "stakeholders": ["owner"]
427
+ }
428
+ ]
429
+ },
430
+ {
431
+ "rule_id": "R-R-7-01",
432
+ "dimension": "fund_recovery",
433
+ "trigger": "coin_add/receive (deposit) or guard_add without an owner fund-recovery escape guard (advisory — recovery via withdraw 158 always exists once the no-guard window lapses)",
434
+ "cases": [
435
+ {
436
+ "when": { "all": [
437
+ { "field": "recovery_gap_present", "op": "eq", "value": true },
438
+ { "field": "has_deposit", "op": "eq", "value": true }
439
+ ] },
440
+ "level": "medium",
441
+ "title": "No owner fund-recovery escape guard on this Reward",
442
+ "description": "claim() is the GUARD-FREE buyer-facing exit from the Reward's balance field, and no configured guard carries the owner claim-side escape signature (Signer recipient + GuardU64Identifier amount). Fund recovery does NOT depend on that signature: withdraw (op 158, ETS-B) is the second exit — permission-gated and blocked ONLY while the no-guard window (guard_not_added_expiration_time) stands; once it lapses (or if it was never set) the owner recovers the full unclaimed remainder (guard_expiration_time_add can set/clear the window after it expires). An unclaimed remainder is therefore NEVER permanently locked. The escape guard is an OPTIONAL in-window recovery rail (owner reclaims via claim() behind a Clock lock) or a one-PTB alternative — its absence is an advisory configuration note, not a fund-safety defect. Note: owner_receive (op 156) never touches balance — it only extracts objects the Reward RECEIVED via transfer (Receiving<CoinWrapper<K>> or NFT-like objects) to the Permission owner; receive (op 154) is what joins payments into balance.",
443
+ "scenario": "A marketing Reward is fully consumed by guards, the campaign ends with a residual balance, and the merchant has no guard that lets them reclaim it.",
444
+ "mitigation": "PRIMARY (no guard needed): after guard_not_added_expiration_time lapses — or immediately if it was never set — call withdraw (op 158) / withdraw_and_unwrap to recover the unclaimed remainder in full (payment.receipt or same-PTB unwrap). OPTIONAL in-window escape guard: (1) Guard: logic_and(logic_equal(query(1002 permission.owner [permission_address]), Signer), logic_greater_equal(Clock, <unlock_time>)) — verifies the tx sender is the live Permission owner, with the Clock comparison acting as the lock period (e.g. 30 days); (2) RewardGuard entry: recipient=Signer, amount=GuardU64Identifier(u8 submission mark), expiration_time=unlock_time + claim window (or None) — remember the contract asserts clock <= expiration_time, i.e. expiration is the last claimable moment, not the unlock moment; (3) after unlock the owner claims by submitting the full remaining balance.",
445
+ "evidence": "deposit=${has_deposit}, guard_add=${guard_add_count}, escape=false (no entry with Signer recipient + GuardU64Identifier amount)",
446
+ "stakeholders": ["owner"],
447
+ "exposure": {
448
+ "loss_parties": [
449
+ { "role": "merchant", "basis": "Residual budget stays committed (unwithdrawable) only until guard_not_added_expiration_time lapses; recoverable in full thereafter via withdraw (op 158). Advisory only: the escape guard adds IN-WINDOW owner recovery." }
450
+ ],
451
+ "gain_paths": []
452
+ }
453
+ },
454
+ {
455
+ "when": { "field": "recovery_gap_present", "op": "eq", "value": true },
456
+ "level": "low",
457
+ "title": "No owner fund-recovery escape guard on this Reward",
458
+ "description": "claim() is the GUARD-FREE buyer-facing exit from the Reward's balance field, and no configured guard carries the owner claim-side escape signature (Signer recipient + GuardU64Identifier amount). Fund recovery does NOT depend on that signature: withdraw (op 158, ETS-B) is the second exit — permission-gated and blocked ONLY while the no-guard window (guard_not_added_expiration_time) stands; once it lapses (or if it was never set) the owner recovers the full unclaimed remainder (guard_expiration_time_add can set/clear the window after it expires). An unclaimed remainder is therefore NEVER permanently locked. The escape guard is an OPTIONAL in-window recovery rail (owner reclaims via claim() behind a Clock lock) or a one-PTB alternative — its absence is an advisory configuration note, not a fund-safety defect. Note: owner_receive (op 156) never touches balance — it only extracts objects the Reward RECEIVED via transfer (Receiving<CoinWrapper<K>> or NFT-like objects) to the Permission owner; receive (op 154) is what joins payments into balance.",
459
+ "scenario": "A marketing Reward is fully consumed by guards, the campaign ends with a residual balance, and the merchant has no guard that lets them reclaim it.",
460
+ "mitigation": "PRIMARY (no guard needed): after guard_not_added_expiration_time lapses — or immediately if it was never set — call withdraw (op 158) / withdraw_and_unwrap to recover the unclaimed remainder in full (payment.receipt or same-PTB unwrap). OPTIONAL in-window escape guard: (1) Guard: logic_and(logic_equal(query(1002 permission.owner [permission_address]), Signer), logic_greater_equal(Clock, <unlock_time>)) — verifies the tx sender is the live Permission owner, with the Clock comparison acting as the lock period (e.g. 30 days); (2) RewardGuard entry: recipient=Signer, amount=GuardU64Identifier(u8 submission mark), expiration_time=unlock_time + claim window (or None) — remember the contract asserts clock <= expiration_time, i.e. expiration is the last claimable moment, not the unlock moment; (3) after unlock the owner claims by submitting the full remaining balance.",
461
+ "evidence": "deposit=${has_deposit}, guard_add=${guard_add_count}, escape=false (no entry with Signer recipient + GuardU64Identifier amount)",
462
+ "stakeholders": ["owner"],
463
+ "exposure": {
464
+ "loss_parties": [
465
+ { "role": "merchant", "basis": "Residual budget stays committed (unwithdrawable) only until guard_not_added_expiration_time lapses; recoverable in full thereafter via withdraw (op 158). Advisory only: the escape guard adds IN-WINDOW owner recovery." }
466
+ ],
467
+ "gain_paths": []
468
+ }
469
+ }
470
+ ]
471
+ },
472
+ {
473
+ "rule_id": "R-R-8-01",
474
+ "dimension": "business_semantic",
475
+ "trigger": "experience-compensation intent with guards being configured — pool solvency disclosure (claims > balance abort, non-escrow, no per-claim isolation)",
476
+ "cases": [
477
+ {
478
+ "when": { "all": [
479
+ { "field": "compensation_intent", "op": "eq", "value": true },
480
+ { "field": "guard_add_count", "op": "truthy" }
481
+ ] },
482
+ "level": "medium",
483
+ "title": "Compensation pool solvency: the pool is NOT per-order escrow — claims beyond the balance abort",
484
+ "description": "Experience compensation rides the Reward object (C-11): one pre-funded pool serves ALL buyers' claims, with no per-order isolation. A claim larger than the current balance aborts with E_INSUFFICIENT_BALANCE (6) — the buyer faces a failed claim, not a queued payout. Size coin_add to expected claims × worst tier and refill on schedule; the residual stays recoverable via withdraw (op 158) after the no-guard window lapses (R-R-7-01).",
485
+ "scenario": "A late-delivery wave drains the compensation pool before the tail of the wave claims",
486
+ "mitigation": "1) Fund upfront for the worst-case claim wave (expected claims × worst tier), refill periodically. 2) Keep tiers so a single claim cannot exceed a bounded share of the pool. 3) Monitor the balance against the open claim window — an exhausted pool turns the compensation promise into an unfunded one (must be disclosed, never silently left to abort).",
487
+ "evidence": "compensation intent, guard_add=${guard_add_count}",
488
+ "stakeholders": ["owner", "service_provider", "claimer"],
489
+ "exposure": {
490
+ "loss_parties": [
491
+ { "role": "buyer", "basis": "A claim beyond the pool balance aborts (E_INSUFFICIENT_BALANCE) — the buyer holds a compensation promise that does not pay." }
492
+ ],
493
+ "gain_paths": []
494
+ }
495
+ }
496
+ ]
497
+ },
498
+ {
499
+ "rule_id": "R-R-8-02",
500
+ "dimension": "business_semantic",
501
+ "trigger": "experience-compensation intent — the merchant's withdraw (158) right makes the funding commitment reversible",
502
+ "cases": [
503
+ {
504
+ "when": { "field": "compensation_intent", "op": "eq", "value": true },
505
+ "level": "medium",
506
+ "title": "Compensation funding is reversible — the owner can withdraw the unclaimed remainder (permission 158)",
507
+ "description": "withdraw (158) is the only non-claim exit from the Reward balance. It is blocked while the no-guard window (guard_not_added_expiration_time) stands — setting that window IS the public funding commitment — and unblocked once it lapses, letting the owner pull the unclaimed remainder inside a Payment receipt. A compensation promise is therefore time-bounded by construction; the withdrawal right and window MUST be disclosed (reversibility), never implied to be perpetual.",
508
+ "scenario": "A merchant withdraws the compensation pool right after the no-guard window lapses, before slow claimers act",
509
+ "mitigation": "1) Disclose the no-guard window and the post-window withdrawal right in the listing. 2) Size the window to cover realistic claim latency. 3) Buyers: treat an expired no-guard window as the pool's commitment horizon — claims after it may find an empty pool by design.",
510
+ "evidence": "compensation intent",
511
+ "stakeholders": ["owner", "claimer"],
512
+ "exposure": {
513
+ "loss_parties": [
514
+ { "role": "buyer", "basis": "After the no-guard window lapses the owner can withdraw the unclaimed balance; a late claim can find an empty pool." }
515
+ ],
516
+ "gain_paths": [
517
+ {
518
+ "role": "merchant",
519
+ "path": "The owner withdraws the unclaimed remainder once the declared no-guard window has elapsed.",
520
+ "viability": "viable",
521
+ "gate": "Legal by design (permission 158; E_GUARD_LOCKED_TIME only blocks while the window stands) — the commitment is reversible; disclosure is the obligation."
522
+ }
523
+ ]
524
+ }
525
+ }
526
+ ]
527
+ },
528
+ {
529
+ "rule_id": "R-R-8-03",
530
+ "dimension": "business_semantic",
531
+ "trigger": "experience-compensation intent — claims are user-initiated, so realized payouts undershoot the pool by design",
532
+ "cases": [
533
+ {
534
+ "when": { "field": "compensation_intent", "op": "eq", "value": true },
535
+ "level": "info",
536
+ "title": "Claim friction is a design property: the realized compensation rate is < 100% unless buyers claim",
537
+ "description": "Reward compensation pays ONLY on an explicit claim (passport-driven, no push path). A claim rate below 100% is the DESIGN EXPECTATION, not a defect — but the merchant must not present the pool as automatic indemnity, and the buyer must know the payout requires an active claim inside the window.",
538
+ "scenario": "A merchant advertises 'guaranteed late compensation' while the claim rail needs each buyer to transact",
539
+ "mitigation": "1) Phrase the promise as claimable, not automatic. 2) Publish the claim window and how to claim (guard + submission slots). 3) Do not book goodwill on the full pool — only claimed amounts leave it.",
540
+ "evidence": "compensation intent",
541
+ "stakeholders": ["owner", "claimer"]
542
+ }
543
+ ]
544
+ },
545
+ {
546
+ "rule_id": "R-R-8-04",
547
+ "dimension": "business_semantic",
548
+ "trigger": "experience-compensation intent with a GuardU64Identifier amount — the claim amount is submission-computed, not on-chain clamped",
549
+ "cases": [
550
+ {
551
+ "when": { "all": [
552
+ { "field": "compensation_intent", "op": "eq", "value": true },
553
+ { "field": "has_identifier_amount", "op": "eq", "value": true }
554
+ ] },
555
+ "level": "medium",
556
+ "title": "Dynamic compensation amount: the claim-time value is computed by the submitting party, not clamped on-chain",
557
+ "description": "Amount::GuardU64Identifier resolves the claim amount from the claimer's Passport submission slot at claim time. The chain only type-checks the slot (u64; E_AMOUNT_NOT_U64 (5) at construction) — the VALUE is whatever the submitting party computed from the tier rule. 'The later, the more' compensation expressed this way is data-driven trust: the tier computation rule MUST be disclosed, and the pool balance (R-R-8-01) remains the real ceiling.",
558
+ "scenario": "A tiered late-compensation guard whose submission amount is computed by the merchant's claim tooling",
559
+ "mitigation": "1) Disclose the exact tier formula in the listing (minutes late → amount). 2) Keep the computation deterministic and auditable (repository evidence rows help). 3) Prefer Fixed tiers where the rule is simple — the on-chain value is then the whole promise.",
560
+ "evidence": "compensation intent, dynamic amount present",
561
+ "stakeholders": ["owner", "claimer"]
562
+ }
563
+ ]
564
+ },
565
+ {
566
+ "rule_id": "R-R-8-05",
567
+ "dimension": "business_semantic",
568
+ "trigger": "experience-compensation intent with a deposit — the pool outflow is one-way, claimed funds are never clawed back",
569
+ "cases": [
570
+ {
571
+ "when": { "all": [
572
+ { "field": "compensation_intent", "op": "eq", "value": true },
573
+ { "field": "has_deposit", "op": "eq", "value": true }
574
+ ] },
575
+ "level": "low",
576
+ "title": "No clawback: compensation flows one way — out to claimers",
577
+ "description": "The Reward balance has no pull-back path for PAID claims: claim (guard-free) and withdraw (158) both move funds OUT; the UNCLAIMED remainder is recoverable via withdraw (158) once the no-guard window (guard_not_added_expiration_time) lapses — or in-window via the R-R-7-01 escape guard. A paid claim is final even if the underlying incident is later reversed (e.g. the order is refunded after an overlapping-window compensation claim) — supplier recourse is a SEPARATE ledger (off-chain or a distinct on-chain arrangement), never a Reward-side reversal.",
578
+ "scenario": "A buyer claims late-compensation and then also wins a refund; the merchant wants the compensation back",
579
+ "mitigation": "1) Prevent overlap structurally: the compensation guard accepts completed/settled terminals only (tbs7 F-04 claim-and-return precedent). 2) Treat paid compensation as sunk; recover from the supplier through the separate recourse arrangement. 3) Recover the unclaimed tail via withdraw (158) after the no-guard window lapses; the escape guard (R-R-7-01) is the in-window alternative.",
580
+ "evidence": "compensation intent, deposit=${has_deposit}",
581
+ "stakeholders": ["owner", "service_provider"]
582
+ }
583
+ ]
584
+ }
585
+ ]
586
+ }