@wowok/agent-mcp 3.3.5 → 3.3.7

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 (243) hide show
  1. package/dist/chain-semantics/eval-order.d.ts +17 -0
  2. package/dist/chain-semantics/eval-order.js +1 -0
  3. package/dist/chain-semantics/field-capability.js +1 -1
  4. package/dist/chain-semantics/freeze-map.js +1 -1
  5. package/dist/chain-semantics/fund-flow.js +1 -1
  6. package/dist/chain-semantics/guard-verbs.js +1 -1
  7. package/dist/chain-semantics/index.d.ts +1 -0
  8. package/dist/chain-semantics/index.js +1 -1
  9. package/dist/chain-semantics/object-graph.js +1 -1
  10. package/dist/composition/audit.js +1 -1
  11. package/dist/composition/compile.d.ts +2 -1
  12. package/dist/composition/compile.js +1 -1
  13. package/dist/composition/materialize.js +1 -1
  14. package/dist/data/api/api.spec.d.ts +1 -0
  15. package/dist/data/api/api.spec.js +1 -0
  16. package/dist/data/api/cli.d.ts +1 -0
  17. package/dist/data/api/cli.js +1 -0
  18. package/dist/data/api/head.d.ts +16 -0
  19. package/dist/data/api/head.js +1 -0
  20. package/dist/data/api/head.spec.d.ts +1 -0
  21. package/dist/data/api/head.spec.js +1 -0
  22. package/dist/data/api/index.d.ts +2 -0
  23. package/dist/data/api/index.js +1 -0
  24. package/dist/data/api/match.d.ts +69 -0
  25. package/dist/data/api/match.js +1 -0
  26. package/dist/data/api/match.spec.d.ts +1 -0
  27. package/dist/data/api/match.spec.js +1 -0
  28. package/dist/data/api/server.d.ts +12 -0
  29. package/dist/data/api/server.js +1 -0
  30. package/dist/data/projection/cli.d.ts +1 -0
  31. package/dist/data/projection/cli.js +1 -0
  32. package/dist/data/projection/edges.d.ts +8 -0
  33. package/dist/data/projection/edges.js +1 -0
  34. package/dist/data/projection/edges.spec.d.ts +1 -0
  35. package/dist/data/projection/edges.spec.js +1 -0
  36. package/dist/data/projection/facets.d.ts +18 -0
  37. package/dist/data/projection/facets.js +1 -0
  38. package/dist/data/projection/facets.spec.d.ts +1 -0
  39. package/dist/data/projection/facets.spec.js +1 -0
  40. package/dist/data/projection/facts.d.ts +40 -0
  41. package/dist/data/projection/facts.js +1 -0
  42. package/dist/data/projection/index.d.ts +6 -0
  43. package/dist/data/projection/index.js +1 -0
  44. package/dist/data/projection/project.d.ts +10 -0
  45. package/dist/data/projection/project.js +1 -0
  46. package/dist/data/projection/projection.spec.d.ts +1 -0
  47. package/dist/data/projection/projection.spec.js +1 -0
  48. package/dist/data/projection/schema.d.ts +1 -0
  49. package/dist/data/projection/schema.js +1 -0
  50. package/dist/data/projection/store.d.ts +49 -0
  51. package/dist/data/projection/store.js +1 -0
  52. package/dist/data/projection/types.d.ts +137 -0
  53. package/dist/data/projection/types.js +1 -0
  54. package/dist/data/sync/cdc.d.ts +34 -0
  55. package/dist/data/sync/cdc.js +1 -0
  56. package/dist/data/sync/cdc.spec.d.ts +1 -0
  57. package/dist/data/sync/cdc.spec.js +1 -0
  58. package/dist/data/sync/graphql-source.d.ts +16 -0
  59. package/dist/data/sync/graphql-source.js +1 -0
  60. package/dist/data/sync/index.d.ts +5 -0
  61. package/dist/data/sync/index.js +1 -0
  62. package/dist/data/sync/reconciler.d.ts +14 -0
  63. package/dist/data/sync/reconciler.js +1 -0
  64. package/dist/data/sync/reconciler.spec.d.ts +1 -0
  65. package/dist/data/sync/reconciler.spec.js +1 -0
  66. package/dist/data/sync/schema.d.ts +1 -0
  67. package/dist/data/sync/schema.js +1 -0
  68. package/dist/data/sync/store.d.ts +19 -0
  69. package/dist/data/sync/store.js +1 -0
  70. package/dist/data/sync/sync.spec.d.ts +1 -0
  71. package/dist/data/sync/sync.spec.js +1 -0
  72. package/dist/data/sync/synchronizer.d.ts +10 -0
  73. package/dist/data/sync/synchronizer.js +1 -0
  74. package/dist/data/sync/types.d.ts +162 -0
  75. package/dist/data/sync/types.js +1 -0
  76. package/dist/evaluation/builtins/demand-match.js +1 -1
  77. package/dist/evaluation/builtins/graph-service.spec.js +1 -1
  78. package/dist/evaluation/capability.d.ts +1 -0
  79. package/dist/evaluation/engine.js +1 -1
  80. package/dist/evaluation/extract.d.ts +7 -1
  81. package/dist/evaluation/extract.js +1 -1
  82. package/dist/evaluation/match-policy.d.ts +142 -0
  83. package/dist/evaluation/match-policy.js +1 -0
  84. package/dist/evaluation/match-policy.spec.d.ts +1 -0
  85. package/dist/evaluation/match-policy.spec.js +1 -0
  86. package/dist/experience/realtime-feedback.js +1 -1
  87. package/dist/extensions/business-modules.js +1 -1
  88. package/dist/graph/onchain/expand.js +1 -1
  89. package/dist/graph/onchain/exposure.js +1 -1
  90. package/dist/harness/recover.js +1 -1
  91. package/dist/intent/types.d.ts +1 -1
  92. package/dist/intent/types.js +1 -1
  93. package/dist/keeper/detectors.d.ts +3 -0
  94. package/dist/keeper/detectors.js +1 -1
  95. package/dist/keeper/keeper.spec.js +1 -1
  96. package/dist/knowledge/allocator-rail-verifier.js +1 -1
  97. package/dist/knowledge/arbitration-ledger.js +1 -1
  98. package/dist/knowledge/audit-rules.js +1 -1
  99. package/dist/knowledge/baselines/rules/plan.json +113 -3
  100. package/dist/knowledge/builtin-templates.d.ts +6 -1
  101. package/dist/knowledge/builtin-templates.js +1 -1
  102. package/dist/knowledge/event-semantics.js +1 -1
  103. package/dist/knowledge/getting-started.js +1 -1
  104. package/dist/knowledge/guard-design-patterns.d.ts +1 -1
  105. package/dist/knowledge/guard-design-patterns.js +1 -1
  106. package/dist/knowledge/guard-ledger.js +1 -1
  107. package/dist/knowledge/guard-puzzle.js +1 -1
  108. package/dist/knowledge/guard-render.js +1 -1
  109. package/dist/knowledge/guard-risk.js +1 -1
  110. package/dist/knowledge/guard-templates.d.ts +1 -1
  111. package/dist/knowledge/guard-templates.js +1 -1
  112. package/dist/knowledge/guard-translation.js +1 -1
  113. package/dist/knowledge/index.js +1 -1
  114. package/dist/knowledge/industry-generalizer.d.ts +4 -0
  115. package/dist/knowledge/industry-generalizer.js +1 -1
  116. package/dist/knowledge/industry-registry.js +1 -1
  117. package/dist/knowledge/jsonrpc-enum.d.ts +26 -10
  118. package/dist/knowledge/jsonrpc-enum.js +1 -1
  119. package/dist/knowledge/projection.d.ts +54 -0
  120. package/dist/knowledge/projection.js +1 -0
  121. package/dist/knowledge/projection.spec.d.ts +1 -0
  122. package/dist/knowledge/projection.spec.js +1 -0
  123. package/dist/knowledge/recipient-constraint.d.ts +1 -1
  124. package/dist/knowledge/recipient-constraint.js +1 -1
  125. package/dist/knowledge/semantic-ir.d.ts +113 -0
  126. package/dist/knowledge/semantic-ir.js +1 -0
  127. package/dist/knowledge/service-ledger.d.ts +1 -1
  128. package/dist/knowledge/service-ledger.js +1 -1
  129. package/dist/knowledge/strategy-manuals.js +1 -1
  130. package/dist/knowledge/template-loader.d.ts +34 -0
  131. package/dist/knowledge/template-loader.js +1 -1
  132. package/dist/knowledge/template-prose.d.ts +50 -0
  133. package/dist/knowledge/template-prose.js +1 -0
  134. package/dist/knowledge/template-registry.js +1 -1
  135. package/dist/knowledge/template-scanner.d.ts +1 -1
  136. package/dist/knowledge/template-scanner.js +1 -1
  137. package/dist/knowledge/tools-reference.js +1 -1
  138. package/dist/monitor/MonitorLoop.js +1 -1
  139. package/dist/monitor/normalize.d.ts +1 -1
  140. package/dist/monitor/normalize.js +1 -1
  141. package/dist/monitor/types.js +1 -1
  142. package/dist/playbooks/service-build/business-puzzle.js +1 -1
  143. package/dist/playbooks/service-build/machine-panorama.js +1 -1
  144. package/dist/playbooks/service-build/merchant-guide.d.ts +4 -0
  145. package/dist/playbooks/service-build/merchant-guide.js +1 -1
  146. package/dist/playbooks/service-build/migration-planner.d.ts +2 -1
  147. package/dist/playbooks/service-build/migration-planner.js +1 -1
  148. package/dist/playbooks/service-build/mode-actions.d.ts +7 -0
  149. package/dist/playbooks/service-build/mode-actions.js +1 -1
  150. package/dist/playbooks/service-build/object-panorama.d.ts +22 -1
  151. package/dist/playbooks/service-build/object-panorama.js +1 -1
  152. package/dist/playbooks/service-build/participation-radar.js +1 -1
  153. package/dist/playbooks/service-build/relationship-profile.js +1 -1
  154. package/dist/playbooks/service-build/reverse-mapping-nk4.spec.js +1 -1
  155. package/dist/playbooks/service-build/reverse-mapping.d.ts +1 -0
  156. package/dist/playbooks/service-build/reverse-mapping.js +1 -1
  157. package/dist/playbooks/service-build/service-panorama.js +1 -1
  158. package/dist/playbooks/service-build/service-quote.js +1 -1
  159. package/dist/playbooks/service-build/service-quote.spec.js +1 -1
  160. package/dist/review/index.js +1 -1
  161. package/dist/role/profiles.js +1 -1
  162. package/dist/safety/confirm-gate.js +1 -1
  163. package/dist/schema/benchmark-migration/index.d.ts +64 -10
  164. package/dist/schema/benchmark-migration/index.js +1 -1
  165. package/dist/schema/call/allocation.js +1 -1
  166. package/dist/schema/call/arbitration.js +1 -1
  167. package/dist/schema/call/base.d.ts +8 -0
  168. package/dist/schema/call/bridge.d.ts +2 -0
  169. package/dist/schema/call/error-codes.d.ts +1 -1
  170. package/dist/schema/call/error-codes.js +1 -1
  171. package/dist/schema/call/proof.js +1 -1
  172. package/dist/schema/call/reward.d.ts +10 -0
  173. package/dist/schema/call/reward.js +1 -1
  174. package/dist/schema/call/semantic.js +1 -1
  175. package/dist/schema/call/service.js +1 -1
  176. package/dist/schema/common/index.js +1 -1
  177. package/dist/schema/evaluation/index.d.ts +341 -0
  178. package/dist/schema/evaluation/index.js +1 -1
  179. package/dist/schema/goal/index.d.ts +2 -0
  180. package/dist/schema/goal/planning.d.ts +3 -0
  181. package/dist/schema/goal/planning.js +1 -1
  182. package/dist/schema/industry-pack/index.d.ts +62 -0
  183. package/dist/schema/industry-pack/modes.d.ts +62 -0
  184. package/dist/schema/industry-pack/modes.js +1 -1
  185. package/dist/schema/intent-radar/index.d.ts +3 -0
  186. package/dist/schema/intent-radar/index.js +1 -1
  187. package/dist/schema/local/index.d.ts +20 -0
  188. package/dist/schema/local/index.js +1 -1
  189. package/dist/schema/operations.d.ts +5 -0
  190. package/dist/schema/query/bi.d.ts +4 -0
  191. package/dist/schema/query/bi.js +1 -1
  192. package/dist/schema/query/index.d.ts +145 -47
  193. package/dist/schema/query/index.js +1 -1
  194. package/dist/schema/schema-version.js +1 -1
  195. package/dist/schema-query-impl/index.js +1 -1
  196. package/dist/schemas/account_operation.output.json +2 -0
  197. package/dist/schemas/benchmark_migration_operation.output.json +42 -0
  198. package/dist/schemas/benchmark_migration_operation.schema.json +208 -5
  199. package/dist/schemas/bridge_operation.output.json +2 -0
  200. package/dist/schemas/evaluation_operation.output.json +624 -2
  201. package/dist/schemas/evaluation_operation.schema.json +598 -4
  202. package/dist/schemas/goal_operation.schema.json +18 -10
  203. package/dist/schemas/index.json +1 -1
  204. package/dist/schemas/industry_pack_operation.output.json +86 -2
  205. package/dist/schemas/industry_pack_operation.schema.json +199 -0
  206. package/dist/schemas/intent_radar.output.json +2 -0
  207. package/dist/schemas/intent_radar.schema.json +1 -0
  208. package/dist/schemas/local_cache_operation.output.json +2 -0
  209. package/dist/schemas/local_history_operation.output.json +2 -0
  210. package/dist/schemas/local_info_operation.output.json +2 -0
  211. package/dist/schemas/local_mark_operation.output.json +2 -0
  212. package/dist/schemas/onchain_events.output.json +281 -11
  213. package/dist/schemas/onchain_events.schema.json +5 -1
  214. package/dist/schemas/onchain_operations.output.json +2 -0
  215. package/dist/schemas/onchain_operations.schema.json +914 -314
  216. package/dist/schemas/onchain_operations_allocation.schema.json +1 -1
  217. package/dist/schemas/onchain_operations_arbitration.schema.json +1 -1
  218. package/dist/schemas/onchain_operations_gen_proof.schema.json +1 -1
  219. package/dist/schemas/onchain_operations_guard.schema.json +660 -94
  220. package/dist/schemas/onchain_operations_reward.schema.json +35 -1
  221. package/dist/schemas/onchain_operations_service.schema.json +4 -4
  222. package/dist/schemas/query_toolkit.output.json +333 -0
  223. package/dist/tools/handlers/benchmark-migration.d.ts +5 -2
  224. package/dist/tools/handlers/benchmark-migration.js +1 -1
  225. package/dist/tools/handlers/config.js +1 -1
  226. package/dist/tools/handlers/evaluation.js +1 -1
  227. package/dist/tools/handlers/evaluation.spec.js +1 -1
  228. package/dist/tools/handlers/intent-radar.js +1 -1
  229. package/dist/tools/handlers/messenger.d.ts +1 -0
  230. package/dist/tools/handlers/messenger.js +1 -1
  231. package/dist/tools/handlers/onchain.d.ts +2 -0
  232. package/dist/tools/handlers/onchain.js +1 -1
  233. package/dist/tools/handlers/query.js +1 -1
  234. package/dist/tools/handlers/wip.js +1 -1
  235. package/dist/tools/index.js +1 -1
  236. package/dist/tools/registry/agent.js +1 -1
  237. package/dist/tools/registry/business.js +1 -1
  238. package/dist/tools/registry/query.js +1 -1
  239. package/dist/tools/wip-verify-ledger.d.ts +14 -0
  240. package/dist/tools/wip-verify-ledger.js +1 -0
  241. package/dist/tools/wrap.d.ts +4 -0
  242. package/dist/tools/wrap.js +1 -1
  243. package/package.json +7 -2
@@ -1967,7 +1967,7 @@
1967
1967
  "type": "string"
1968
1968
  },
1969
1969
  "no_cache": {
1970
- "description": "Force fresh on-chain enumeration (bypass the 120s local list cache).",
1970
+ "description": "Force fresh on-chain enumeration (bypass the configured local list cache).",
1971
1971
  "type": "boolean"
1972
1972
  }
1973
1973
  },
@@ -1988,6 +1988,204 @@
1988
1988
  "description": "Client-side substring filter on demand.location (omit = all demands).",
1989
1989
  "type": "string"
1990
1990
  },
1991
+ "match_policy": {
1992
+ "description": "R4 private policy (supply_to_demand direction, e.g. preset 'supplier_hunting'), resolved/applied entirely on-device. discover_demands applies gates+excludes only (no private scoring); weights/rerank are reported as not applicable in policy_effect.",
1993
+ "anyOf": [
1994
+ {
1995
+ "type": "string"
1996
+ },
1997
+ {
1998
+ "type": "object",
1999
+ "properties": {
2000
+ "policy_id": {
2001
+ "type": "string",
2002
+ "minLength": 1
2003
+ },
2004
+ "version": {
2005
+ "type": "integer",
2006
+ "minimum": 0,
2007
+ "maximum": 9007199254740991
2008
+ },
2009
+ "direction": {
2010
+ "description": "Default demand_to_supply. A demand_to_supply policy drives match_discover; a supply_to_demand policy drives demand_present / discover_demands (and is rejected by match_discover).",
2011
+ "type": "string",
2012
+ "enum": [
2013
+ "demand_to_supply",
2014
+ "supply_to_demand"
2015
+ ]
2016
+ },
2017
+ "unknown_policy": {
2018
+ "description": "What a gate with missing input does (K5-05 axiom 3). Default neutral_score (= pass, reported).",
2019
+ "type": "string",
2020
+ "enum": [
2021
+ "pass",
2022
+ "drop",
2023
+ "neutral_score"
2024
+ ]
2025
+ },
2026
+ "gates": {
2027
+ "type": "array",
2028
+ "items": {
2029
+ "type": "object",
2030
+ "properties": {
2031
+ "dim": {
2032
+ "type": "string",
2033
+ "description": "Gate dimension. Enforced client-side: live, price, arb, compensation, machine, messenger, buy_guard, wip_verify, text, owner. Others are reported as ignored (not enforceable on-device yet)."
2034
+ },
2035
+ "op": {
2036
+ "description": "Comparison operator (eq/lte/gte/in/not_in/must_contain/must_not_contain) — validated per dim at apply time.",
2037
+ "type": "string"
2038
+ },
2039
+ "value": {
2040
+ "anyOf": [
2041
+ {
2042
+ "type": "boolean"
2043
+ },
2044
+ {
2045
+ "type": "number"
2046
+ },
2047
+ {
2048
+ "type": "string"
2049
+ },
2050
+ {
2051
+ "type": "array",
2052
+ "items": {
2053
+ "type": "string"
2054
+ }
2055
+ }
2056
+ ]
2057
+ },
2058
+ "params": {
2059
+ "description": "Extra params; `from_budget: true` on a price gate uses the request budget as the threshold.",
2060
+ "type": "object",
2061
+ "propertyNames": {
2062
+ "type": "string"
2063
+ },
2064
+ "additionalProperties": {}
2065
+ }
2066
+ },
2067
+ "required": [
2068
+ "dim"
2069
+ ],
2070
+ "additionalProperties": false
2071
+ }
2072
+ },
2073
+ "excludes": {
2074
+ "type": "array",
2075
+ "items": {
2076
+ "type": "object",
2077
+ "properties": {
2078
+ "dim": {
2079
+ "type": "string",
2080
+ "description": "Exclude dimension. Enforced client-side: blacklist (objects/owners lists). anti_cheat/structure dims are reported as ignored (no client-side facet)."
2081
+ },
2082
+ "objects": {
2083
+ "type": "array",
2084
+ "items": {
2085
+ "type": "string"
2086
+ }
2087
+ },
2088
+ "owners": {
2089
+ "type": "array",
2090
+ "items": {
2091
+ "type": "string"
2092
+ }
2093
+ },
2094
+ "flags": {
2095
+ "type": "array",
2096
+ "items": {
2097
+ "type": "string"
2098
+ }
2099
+ },
2100
+ "source": {
2101
+ "type": "array",
2102
+ "items": {
2103
+ "type": "string"
2104
+ }
2105
+ },
2106
+ "rule": {
2107
+ "type": "string"
2108
+ }
2109
+ },
2110
+ "required": [
2111
+ "dim"
2112
+ ],
2113
+ "additionalProperties": false
2114
+ }
2115
+ },
2116
+ "weights": {
2117
+ "description": "demand_match rule id → weight (region/industry/price/trust/capabilities/tags/acceptance). Unregistered ids are reported as ignored.",
2118
+ "type": "object",
2119
+ "propertyNames": {
2120
+ "type": "string"
2121
+ },
2122
+ "additionalProperties": {
2123
+ "type": "number",
2124
+ "minimum": 0
2125
+ }
2126
+ },
2127
+ "rerank": {
2128
+ "type": "object",
2129
+ "properties": {
2130
+ "diversity": {
2131
+ "description": "Greedy per-group cap over the score-ordered list. `permission` is not enforceable client-side yet (reported ignored); use `owner`.",
2132
+ "type": "object",
2133
+ "properties": {
2134
+ "by": {
2135
+ "type": "string",
2136
+ "enum": [
2137
+ "owner",
2138
+ "permission"
2139
+ ]
2140
+ },
2141
+ "max_per_group": {
2142
+ "type": "integer",
2143
+ "minimum": 1,
2144
+ "maximum": 9007199254740991
2145
+ }
2146
+ },
2147
+ "required": [
2148
+ "by",
2149
+ "max_per_group"
2150
+ ],
2151
+ "additionalProperties": false
2152
+ },
2153
+ "explore": {},
2154
+ "llm": {},
2155
+ "fairness": {}
2156
+ },
2157
+ "additionalProperties": false
2158
+ },
2159
+ "recall": {
2160
+ "description": "Server/recall directives — accepted for portability, not enforceable from the client (reported ignored)."
2161
+ },
2162
+ "verify": {
2163
+ "description": "Facet verification directives — accepted for portability, not enforceable client-side (reported ignored)."
2164
+ },
2165
+ "output": {
2166
+ "type": "object",
2167
+ "properties": {
2168
+ "top_n": {
2169
+ "type": "integer",
2170
+ "minimum": 1,
2171
+ "maximum": 500
2172
+ },
2173
+ "explain": {
2174
+ "type": "boolean"
2175
+ },
2176
+ "evidence_chain": {},
2177
+ "coverage_report": {}
2178
+ },
2179
+ "additionalProperties": false
2180
+ }
2181
+ },
2182
+ "required": [
2183
+ "policy_id"
2184
+ ],
2185
+ "additionalProperties": false
2186
+ }
2187
+ ]
2188
+ },
1991
2189
  "max_objects": {
1992
2190
  "description": "Enumeration cap before filtering (default 200).",
1993
2191
  "type": "integer",
@@ -1999,7 +2197,7 @@
1999
2197
  "type": "string"
2000
2198
  },
2001
2199
  "no_cache": {
2002
- "description": "Force fresh on-chain enumeration (bypass the 120s local list cache).",
2200
+ "description": "Force fresh on-chain enumeration (bypass the configured local list cache).",
2003
2201
  "type": "boolean"
2004
2202
  }
2005
2203
  },
@@ -2185,6 +2383,204 @@
2185
2383
  "description": "Client-side substring filter on demand.location (omit = all demands).",
2186
2384
  "type": "string"
2187
2385
  },
2386
+ "match_policy": {
2387
+ "description": "R4 private ranking policy (supply_to_demand direction, e.g. preset 'supplier_hunting'), resolved/applied entirely on-device; the policy and its hash never leave this device.",
2388
+ "anyOf": [
2389
+ {
2390
+ "type": "string"
2391
+ },
2392
+ {
2393
+ "type": "object",
2394
+ "properties": {
2395
+ "policy_id": {
2396
+ "type": "string",
2397
+ "minLength": 1
2398
+ },
2399
+ "version": {
2400
+ "type": "integer",
2401
+ "minimum": 0,
2402
+ "maximum": 9007199254740991
2403
+ },
2404
+ "direction": {
2405
+ "description": "Default demand_to_supply. A demand_to_supply policy drives match_discover; a supply_to_demand policy drives demand_present / discover_demands (and is rejected by match_discover).",
2406
+ "type": "string",
2407
+ "enum": [
2408
+ "demand_to_supply",
2409
+ "supply_to_demand"
2410
+ ]
2411
+ },
2412
+ "unknown_policy": {
2413
+ "description": "What a gate with missing input does (K5-05 axiom 3). Default neutral_score (= pass, reported).",
2414
+ "type": "string",
2415
+ "enum": [
2416
+ "pass",
2417
+ "drop",
2418
+ "neutral_score"
2419
+ ]
2420
+ },
2421
+ "gates": {
2422
+ "type": "array",
2423
+ "items": {
2424
+ "type": "object",
2425
+ "properties": {
2426
+ "dim": {
2427
+ "type": "string",
2428
+ "description": "Gate dimension. Enforced client-side: live, price, arb, compensation, machine, messenger, buy_guard, wip_verify, text, owner. Others are reported as ignored (not enforceable on-device yet)."
2429
+ },
2430
+ "op": {
2431
+ "description": "Comparison operator (eq/lte/gte/in/not_in/must_contain/must_not_contain) — validated per dim at apply time.",
2432
+ "type": "string"
2433
+ },
2434
+ "value": {
2435
+ "anyOf": [
2436
+ {
2437
+ "type": "boolean"
2438
+ },
2439
+ {
2440
+ "type": "number"
2441
+ },
2442
+ {
2443
+ "type": "string"
2444
+ },
2445
+ {
2446
+ "type": "array",
2447
+ "items": {
2448
+ "type": "string"
2449
+ }
2450
+ }
2451
+ ]
2452
+ },
2453
+ "params": {
2454
+ "description": "Extra params; `from_budget: true` on a price gate uses the request budget as the threshold.",
2455
+ "type": "object",
2456
+ "propertyNames": {
2457
+ "type": "string"
2458
+ },
2459
+ "additionalProperties": {}
2460
+ }
2461
+ },
2462
+ "required": [
2463
+ "dim"
2464
+ ],
2465
+ "additionalProperties": false
2466
+ }
2467
+ },
2468
+ "excludes": {
2469
+ "type": "array",
2470
+ "items": {
2471
+ "type": "object",
2472
+ "properties": {
2473
+ "dim": {
2474
+ "type": "string",
2475
+ "description": "Exclude dimension. Enforced client-side: blacklist (objects/owners lists). anti_cheat/structure dims are reported as ignored (no client-side facet)."
2476
+ },
2477
+ "objects": {
2478
+ "type": "array",
2479
+ "items": {
2480
+ "type": "string"
2481
+ }
2482
+ },
2483
+ "owners": {
2484
+ "type": "array",
2485
+ "items": {
2486
+ "type": "string"
2487
+ }
2488
+ },
2489
+ "flags": {
2490
+ "type": "array",
2491
+ "items": {
2492
+ "type": "string"
2493
+ }
2494
+ },
2495
+ "source": {
2496
+ "type": "array",
2497
+ "items": {
2498
+ "type": "string"
2499
+ }
2500
+ },
2501
+ "rule": {
2502
+ "type": "string"
2503
+ }
2504
+ },
2505
+ "required": [
2506
+ "dim"
2507
+ ],
2508
+ "additionalProperties": false
2509
+ }
2510
+ },
2511
+ "weights": {
2512
+ "description": "demand_match rule id → weight (region/industry/price/trust/capabilities/tags/acceptance). Unregistered ids are reported as ignored.",
2513
+ "type": "object",
2514
+ "propertyNames": {
2515
+ "type": "string"
2516
+ },
2517
+ "additionalProperties": {
2518
+ "type": "number",
2519
+ "minimum": 0
2520
+ }
2521
+ },
2522
+ "rerank": {
2523
+ "type": "object",
2524
+ "properties": {
2525
+ "diversity": {
2526
+ "description": "Greedy per-group cap over the score-ordered list. `permission` is not enforceable client-side yet (reported ignored); use `owner`.",
2527
+ "type": "object",
2528
+ "properties": {
2529
+ "by": {
2530
+ "type": "string",
2531
+ "enum": [
2532
+ "owner",
2533
+ "permission"
2534
+ ]
2535
+ },
2536
+ "max_per_group": {
2537
+ "type": "integer",
2538
+ "minimum": 1,
2539
+ "maximum": 9007199254740991
2540
+ }
2541
+ },
2542
+ "required": [
2543
+ "by",
2544
+ "max_per_group"
2545
+ ],
2546
+ "additionalProperties": false
2547
+ },
2548
+ "explore": {},
2549
+ "llm": {},
2550
+ "fairness": {}
2551
+ },
2552
+ "additionalProperties": false
2553
+ },
2554
+ "recall": {
2555
+ "description": "Server/recall directives — accepted for portability, not enforceable from the client (reported ignored)."
2556
+ },
2557
+ "verify": {
2558
+ "description": "Facet verification directives — accepted for portability, not enforceable client-side (reported ignored)."
2559
+ },
2560
+ "output": {
2561
+ "type": "object",
2562
+ "properties": {
2563
+ "top_n": {
2564
+ "type": "integer",
2565
+ "minimum": 1,
2566
+ "maximum": 500
2567
+ },
2568
+ "explain": {
2569
+ "type": "boolean"
2570
+ },
2571
+ "evidence_chain": {},
2572
+ "coverage_report": {}
2573
+ },
2574
+ "additionalProperties": false
2575
+ }
2576
+ },
2577
+ "required": [
2578
+ "policy_id"
2579
+ ],
2580
+ "additionalProperties": false
2581
+ }
2582
+ ]
2583
+ },
2188
2584
  "max_objects": {
2189
2585
  "description": "Enumeration cap before filtering (default 200).",
2190
2586
  "type": "integer",
@@ -2202,7 +2598,7 @@
2202
2598
  "type": "string"
2203
2599
  },
2204
2600
  "no_cache": {
2205
- "description": "Force fresh on-chain enumeration (bypass the 120s local list cache).",
2601
+ "description": "Force fresh on-chain enumeration (bypass the configured local list cache).",
2206
2602
  "type": "boolean"
2207
2603
  },
2208
2604
  "injection": {
@@ -2685,7 +3081,7 @@
2685
3081
  "type": "string"
2686
3082
  },
2687
3083
  "no_cache": {
2688
- "description": "Force fresh on-chain enumeration (bypass the 120s local list cache).",
3084
+ "description": "Force fresh on-chain enumeration (bypass the configured local list cache).",
2689
3085
  "type": "boolean"
2690
3086
  },
2691
3087
  "presenter_history": {
@@ -2807,6 +3203,204 @@
2807
3203
  "account": {
2808
3204
  "description": "Account address; its persona is auto-applied as the base injection.",
2809
3205
  "type": "string"
3206
+ },
3207
+ "match_policy": {
3208
+ "description": "R4 private ranking policy (K5-05 §4): a preset id (default, retail, life_service, trust_first, cross_border, cheap_and_fast, enterprise) or an inline policy object. Applied entirely on-device over the recalled candidates — gates/excludes/weights/rerank with honest `policy_effect` reporting; NEVER sent to the data service.",
3209
+ "anyOf": [
3210
+ {
3211
+ "type": "string"
3212
+ },
3213
+ {
3214
+ "type": "object",
3215
+ "properties": {
3216
+ "policy_id": {
3217
+ "type": "string",
3218
+ "minLength": 1
3219
+ },
3220
+ "version": {
3221
+ "type": "integer",
3222
+ "minimum": 0,
3223
+ "maximum": 9007199254740991
3224
+ },
3225
+ "direction": {
3226
+ "description": "Default demand_to_supply. A demand_to_supply policy drives match_discover; a supply_to_demand policy drives demand_present / discover_demands (and is rejected by match_discover).",
3227
+ "type": "string",
3228
+ "enum": [
3229
+ "demand_to_supply",
3230
+ "supply_to_demand"
3231
+ ]
3232
+ },
3233
+ "unknown_policy": {
3234
+ "description": "What a gate with missing input does (K5-05 axiom 3). Default neutral_score (= pass, reported).",
3235
+ "type": "string",
3236
+ "enum": [
3237
+ "pass",
3238
+ "drop",
3239
+ "neutral_score"
3240
+ ]
3241
+ },
3242
+ "gates": {
3243
+ "type": "array",
3244
+ "items": {
3245
+ "type": "object",
3246
+ "properties": {
3247
+ "dim": {
3248
+ "type": "string",
3249
+ "description": "Gate dimension. Enforced client-side: live, price, arb, compensation, machine, messenger, buy_guard, wip_verify, text, owner. Others are reported as ignored (not enforceable on-device yet)."
3250
+ },
3251
+ "op": {
3252
+ "description": "Comparison operator (eq/lte/gte/in/not_in/must_contain/must_not_contain) — validated per dim at apply time.",
3253
+ "type": "string"
3254
+ },
3255
+ "value": {
3256
+ "anyOf": [
3257
+ {
3258
+ "type": "boolean"
3259
+ },
3260
+ {
3261
+ "type": "number"
3262
+ },
3263
+ {
3264
+ "type": "string"
3265
+ },
3266
+ {
3267
+ "type": "array",
3268
+ "items": {
3269
+ "type": "string"
3270
+ }
3271
+ }
3272
+ ]
3273
+ },
3274
+ "params": {
3275
+ "description": "Extra params; `from_budget: true` on a price gate uses the request budget as the threshold.",
3276
+ "type": "object",
3277
+ "propertyNames": {
3278
+ "type": "string"
3279
+ },
3280
+ "additionalProperties": {}
3281
+ }
3282
+ },
3283
+ "required": [
3284
+ "dim"
3285
+ ],
3286
+ "additionalProperties": false
3287
+ }
3288
+ },
3289
+ "excludes": {
3290
+ "type": "array",
3291
+ "items": {
3292
+ "type": "object",
3293
+ "properties": {
3294
+ "dim": {
3295
+ "type": "string",
3296
+ "description": "Exclude dimension. Enforced client-side: blacklist (objects/owners lists). anti_cheat/structure dims are reported as ignored (no client-side facet)."
3297
+ },
3298
+ "objects": {
3299
+ "type": "array",
3300
+ "items": {
3301
+ "type": "string"
3302
+ }
3303
+ },
3304
+ "owners": {
3305
+ "type": "array",
3306
+ "items": {
3307
+ "type": "string"
3308
+ }
3309
+ },
3310
+ "flags": {
3311
+ "type": "array",
3312
+ "items": {
3313
+ "type": "string"
3314
+ }
3315
+ },
3316
+ "source": {
3317
+ "type": "array",
3318
+ "items": {
3319
+ "type": "string"
3320
+ }
3321
+ },
3322
+ "rule": {
3323
+ "type": "string"
3324
+ }
3325
+ },
3326
+ "required": [
3327
+ "dim"
3328
+ ],
3329
+ "additionalProperties": false
3330
+ }
3331
+ },
3332
+ "weights": {
3333
+ "description": "demand_match rule id → weight (region/industry/price/trust/capabilities/tags/acceptance). Unregistered ids are reported as ignored.",
3334
+ "type": "object",
3335
+ "propertyNames": {
3336
+ "type": "string"
3337
+ },
3338
+ "additionalProperties": {
3339
+ "type": "number",
3340
+ "minimum": 0
3341
+ }
3342
+ },
3343
+ "rerank": {
3344
+ "type": "object",
3345
+ "properties": {
3346
+ "diversity": {
3347
+ "description": "Greedy per-group cap over the score-ordered list. `permission` is not enforceable client-side yet (reported ignored); use `owner`.",
3348
+ "type": "object",
3349
+ "properties": {
3350
+ "by": {
3351
+ "type": "string",
3352
+ "enum": [
3353
+ "owner",
3354
+ "permission"
3355
+ ]
3356
+ },
3357
+ "max_per_group": {
3358
+ "type": "integer",
3359
+ "minimum": 1,
3360
+ "maximum": 9007199254740991
3361
+ }
3362
+ },
3363
+ "required": [
3364
+ "by",
3365
+ "max_per_group"
3366
+ ],
3367
+ "additionalProperties": false
3368
+ },
3369
+ "explore": {},
3370
+ "llm": {},
3371
+ "fairness": {}
3372
+ },
3373
+ "additionalProperties": false
3374
+ },
3375
+ "recall": {
3376
+ "description": "Server/recall directives — accepted for portability, not enforceable from the client (reported ignored)."
3377
+ },
3378
+ "verify": {
3379
+ "description": "Facet verification directives — accepted for portability, not enforceable client-side (reported ignored)."
3380
+ },
3381
+ "output": {
3382
+ "type": "object",
3383
+ "properties": {
3384
+ "top_n": {
3385
+ "type": "integer",
3386
+ "minimum": 1,
3387
+ "maximum": 500
3388
+ },
3389
+ "explain": {
3390
+ "type": "boolean"
3391
+ },
3392
+ "evidence_chain": {},
3393
+ "coverage_report": {}
3394
+ },
3395
+ "additionalProperties": false
3396
+ }
3397
+ },
3398
+ "required": [
3399
+ "policy_id"
3400
+ ],
3401
+ "additionalProperties": false
3402
+ }
3403
+ ]
2810
3404
  }
2811
3405
  },
2812
3406
  "required": [