@wowok/agent-mcp 2.4.3 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/dist/config/runtime.d.ts +4 -0
  2. package/dist/config/runtime.js +29 -5
  3. package/dist/harness/auto-escalation.d.ts +27 -0
  4. package/dist/harness/auto-escalation.js +68 -0
  5. package/dist/index.js +21 -0
  6. package/dist/knowledge/allocation-confirm.d.ts +115 -0
  7. package/dist/knowledge/allocation-confirm.js +534 -0
  8. package/dist/knowledge/allocation-context.d.ts +58 -0
  9. package/dist/knowledge/allocation-context.js +249 -0
  10. package/dist/knowledge/allocation-ledger.d.ts +67 -0
  11. package/dist/knowledge/allocation-ledger.js +463 -0
  12. package/dist/knowledge/allocation-puzzle.d.ts +135 -0
  13. package/dist/knowledge/allocation-puzzle.js +298 -0
  14. package/dist/knowledge/allocation-risk.d.ts +78 -0
  15. package/dist/knowledge/allocation-risk.js +568 -0
  16. package/dist/knowledge/allocation-templates.d.ts +38 -0
  17. package/dist/knowledge/allocation-templates.js +970 -0
  18. package/dist/knowledge/allocation-translation.d.ts +72 -0
  19. package/dist/knowledge/allocation-translation.js +585 -0
  20. package/dist/knowledge/arb-risk.d.ts +37 -0
  21. package/dist/knowledge/arb-risk.js +210 -0
  22. package/dist/knowledge/arbitration-confirm.d.ts +135 -0
  23. package/dist/knowledge/arbitration-confirm.js +559 -0
  24. package/dist/knowledge/arbitration-context.d.ts +81 -0
  25. package/dist/knowledge/arbitration-context.js +505 -0
  26. package/dist/knowledge/arbitration-ledger.d.ts +62 -0
  27. package/dist/knowledge/arbitration-ledger.js +521 -0
  28. package/dist/knowledge/arbitration-puzzle.d.ts +84 -0
  29. package/dist/knowledge/arbitration-puzzle.js +304 -0
  30. package/dist/knowledge/arbitration-risk.d.ts +112 -0
  31. package/dist/knowledge/arbitration-risk.js +433 -0
  32. package/dist/knowledge/arbitration-templates.d.ts +38 -0
  33. package/dist/knowledge/arbitration-templates.js +276 -0
  34. package/dist/knowledge/arbitration-translation.d.ts +91 -0
  35. package/dist/knowledge/arbitration-translation.js +487 -0
  36. package/dist/knowledge/bridge-risk.d.ts +36 -0
  37. package/dist/knowledge/bridge-risk.js +263 -0
  38. package/dist/knowledge/contact-risk.d.ts +32 -0
  39. package/dist/knowledge/contact-risk.js +200 -0
  40. package/dist/knowledge/demand-confirm.d.ts +32 -0
  41. package/dist/knowledge/demand-confirm.js +206 -0
  42. package/dist/knowledge/demand-risk.d.ts +30 -0
  43. package/dist/knowledge/demand-risk.js +240 -0
  44. package/dist/knowledge/demand-translation.d.ts +55 -0
  45. package/dist/knowledge/demand-translation.js +354 -0
  46. package/dist/knowledge/deployment-scanner.d.ts +63 -0
  47. package/dist/knowledge/deployment-scanner.js +762 -0
  48. package/dist/knowledge/examples-scanner-cli.d.ts +1 -0
  49. package/dist/knowledge/examples-scanner-cli.js +26 -0
  50. package/dist/knowledge/examples-scanner.d.ts +121 -0
  51. package/dist/knowledge/examples-scanner.js +825 -0
  52. package/dist/knowledge/flywheel-loop.d.ts +3 -0
  53. package/dist/knowledge/flywheel-loop.js +32 -3
  54. package/dist/knowledge/glossary.js +3 -1
  55. package/dist/knowledge/guard-confirm.d.ts +86 -0
  56. package/dist/knowledge/guard-confirm.js +406 -0
  57. package/dist/knowledge/guard-context.d.ts +56 -0
  58. package/dist/knowledge/guard-context.js +287 -0
  59. package/dist/knowledge/guard-design-patterns.d.ts +37 -0
  60. package/dist/knowledge/guard-design-patterns.js +257 -0
  61. package/dist/knowledge/guard-puzzle.js +3 -2
  62. package/dist/knowledge/guard-risk.d.ts +1 -1
  63. package/dist/knowledge/guard-risk.js +12 -14
  64. package/dist/knowledge/guard-templates.js +1 -1
  65. package/dist/knowledge/guard-translation.js +6 -5
  66. package/dist/knowledge/index.d.ts +342 -0
  67. package/dist/knowledge/index.js +344 -0
  68. package/dist/knowledge/machine-confirm.d.ts +102 -0
  69. package/dist/knowledge/machine-confirm.js +559 -0
  70. package/dist/knowledge/machine-context.d.ts +160 -0
  71. package/dist/knowledge/machine-context.js +812 -0
  72. package/dist/knowledge/machine-ledger.d.ts +41 -0
  73. package/dist/knowledge/machine-ledger.js +315 -0
  74. package/dist/knowledge/machine-puzzle.d.ts +206 -0
  75. package/dist/knowledge/machine-puzzle.js +494 -0
  76. package/dist/knowledge/machine-risk.d.ts +75 -0
  77. package/dist/knowledge/machine-risk.js +644 -0
  78. package/dist/knowledge/machine-templates.d.ts +92 -0
  79. package/dist/knowledge/machine-templates.js +1592 -0
  80. package/dist/knowledge/machine-topology.d.ts +57 -0
  81. package/dist/knowledge/machine-topology.js +234 -0
  82. package/dist/knowledge/machine-translation.d.ts +96 -0
  83. package/dist/knowledge/machine-translation.js +513 -0
  84. package/dist/knowledge/mcp-schema-audit-cli.d.ts +1 -0
  85. package/dist/knowledge/mcp-schema-audit-cli.js +45 -0
  86. package/dist/knowledge/mcp-schema-audit.d.ts +90 -0
  87. package/dist/knowledge/mcp-schema-audit.js +772 -0
  88. package/dist/knowledge/onchain-constants.d.ts +4 -0
  89. package/dist/knowledge/onchain-constants.js +35 -0
  90. package/dist/knowledge/order-confirm.d.ts +115 -0
  91. package/dist/knowledge/order-confirm.js +573 -0
  92. package/dist/knowledge/order-context.d.ts +66 -0
  93. package/dist/knowledge/order-context.js +390 -0
  94. package/dist/knowledge/order-ledger.d.ts +69 -0
  95. package/dist/knowledge/order-ledger.js +341 -0
  96. package/dist/knowledge/order-puzzle.d.ts +159 -0
  97. package/dist/knowledge/order-puzzle.js +255 -0
  98. package/dist/knowledge/order-risk.d.ts +66 -0
  99. package/dist/knowledge/order-risk.js +653 -0
  100. package/dist/knowledge/order-templates.d.ts +50 -0
  101. package/dist/knowledge/order-templates.js +368 -0
  102. package/dist/knowledge/order-translation.d.ts +78 -0
  103. package/dist/knowledge/order-translation.js +550 -0
  104. package/dist/knowledge/passport-confirm.d.ts +130 -0
  105. package/dist/knowledge/passport-confirm.js +531 -0
  106. package/dist/knowledge/passport-context.d.ts +59 -0
  107. package/dist/knowledge/passport-context.js +306 -0
  108. package/dist/knowledge/passport-ledger.d.ts +48 -0
  109. package/dist/knowledge/passport-ledger.js +282 -0
  110. package/dist/knowledge/passport-puzzle.d.ts +108 -0
  111. package/dist/knowledge/passport-puzzle.js +333 -0
  112. package/dist/knowledge/passport-risk.d.ts +70 -0
  113. package/dist/knowledge/passport-risk.js +450 -0
  114. package/dist/knowledge/passport-templates.d.ts +40 -0
  115. package/dist/knowledge/passport-templates.js +568 -0
  116. package/dist/knowledge/passport-translation.d.ts +68 -0
  117. package/dist/knowledge/passport-translation.js +516 -0
  118. package/dist/knowledge/payment-risk.d.ts +33 -0
  119. package/dist/knowledge/payment-risk.js +182 -0
  120. package/dist/knowledge/permission-confirm.d.ts +110 -0
  121. package/dist/knowledge/permission-confirm.js +426 -0
  122. package/dist/knowledge/permission-context.d.ts +58 -0
  123. package/dist/knowledge/permission-context.js +224 -0
  124. package/dist/knowledge/permission-ledger.d.ts +38 -0
  125. package/dist/knowledge/permission-ledger.js +403 -0
  126. package/dist/knowledge/permission-puzzle.d.ts +122 -0
  127. package/dist/knowledge/permission-puzzle.js +173 -0
  128. package/dist/knowledge/permission-risk.d.ts +76 -0
  129. package/dist/knowledge/permission-risk.js +411 -0
  130. package/dist/knowledge/permission-templates.d.ts +38 -0
  131. package/dist/knowledge/permission-templates.js +234 -0
  132. package/dist/knowledge/permission-translation.d.ts +57 -0
  133. package/dist/knowledge/permission-translation.js +350 -0
  134. package/dist/knowledge/personal-risk.d.ts +36 -0
  135. package/dist/knowledge/personal-risk.js +212 -0
  136. package/dist/knowledge/progress-confirm.d.ts +108 -0
  137. package/dist/knowledge/progress-confirm.js +456 -0
  138. package/dist/knowledge/progress-context.d.ts +123 -0
  139. package/dist/knowledge/progress-context.js +452 -0
  140. package/dist/knowledge/progress-ledger.d.ts +63 -0
  141. package/dist/knowledge/progress-ledger.js +327 -0
  142. package/dist/knowledge/progress-puzzle.d.ts +82 -0
  143. package/dist/knowledge/progress-puzzle.js +219 -0
  144. package/dist/knowledge/progress-risk.d.ts +74 -0
  145. package/dist/knowledge/progress-risk.js +461 -0
  146. package/dist/knowledge/progress-templates.d.ts +38 -0
  147. package/dist/knowledge/progress-templates.js +228 -0
  148. package/dist/knowledge/progress-translation.d.ts +52 -0
  149. package/dist/knowledge/progress-translation.js +401 -0
  150. package/dist/knowledge/proof-confirm.d.ts +31 -0
  151. package/dist/knowledge/proof-confirm.js +187 -0
  152. package/dist/knowledge/proof-risk.d.ts +33 -0
  153. package/dist/knowledge/proof-risk.js +207 -0
  154. package/dist/knowledge/proof-translation.d.ts +52 -0
  155. package/dist/knowledge/proof-translation.js +283 -0
  156. package/dist/knowledge/registrar-risk.d.ts +34 -0
  157. package/dist/knowledge/registrar-risk.js +217 -0
  158. package/dist/knowledge/repository-confirm.d.ts +36 -0
  159. package/dist/knowledge/repository-confirm.js +242 -0
  160. package/dist/knowledge/repository-risk.d.ts +40 -0
  161. package/dist/knowledge/repository-risk.js +312 -0
  162. package/dist/knowledge/repository-translation.d.ts +58 -0
  163. package/dist/knowledge/repository-translation.js +422 -0
  164. package/dist/knowledge/resource-risk.d.ts +32 -0
  165. package/dist/knowledge/resource-risk.js +157 -0
  166. package/dist/knowledge/reward-confirm.d.ts +113 -0
  167. package/dist/knowledge/reward-confirm.js +496 -0
  168. package/dist/knowledge/reward-context.d.ts +127 -0
  169. package/dist/knowledge/reward-context.js +504 -0
  170. package/dist/knowledge/reward-ledger.d.ts +96 -0
  171. package/dist/knowledge/reward-ledger.js +502 -0
  172. package/dist/knowledge/reward-puzzle.d.ts +97 -0
  173. package/dist/knowledge/reward-puzzle.js +288 -0
  174. package/dist/knowledge/reward-risk.d.ts +84 -0
  175. package/dist/knowledge/reward-risk.js +545 -0
  176. package/dist/knowledge/reward-translation.d.ts +58 -0
  177. package/dist/knowledge/reward-translation.js +501 -0
  178. package/dist/knowledge/safety-rules.js +11 -3
  179. package/dist/knowledge/scenario-modes.d.ts +53 -0
  180. package/dist/knowledge/scenario-modes.js +302 -0
  181. package/dist/knowledge/service-confirm.d.ts +152 -0
  182. package/dist/knowledge/service-confirm.js +699 -0
  183. package/dist/knowledge/service-context.d.ts +66 -0
  184. package/dist/knowledge/service-context.js +403 -0
  185. package/dist/knowledge/service-ledger.d.ts +71 -0
  186. package/dist/knowledge/service-ledger.js +609 -0
  187. package/dist/knowledge/service-puzzle.d.ts +158 -0
  188. package/dist/knowledge/service-puzzle.js +236 -0
  189. package/dist/knowledge/service-risk.d.ts +108 -0
  190. package/dist/knowledge/service-risk.js +615 -0
  191. package/dist/knowledge/service-templates.d.ts +39 -0
  192. package/dist/knowledge/service-templates.js +418 -0
  193. package/dist/knowledge/service-translation.d.ts +103 -0
  194. package/dist/knowledge/service-translation.js +622 -0
  195. package/dist/knowledge/tools-reference.d.ts +17 -0
  196. package/dist/knowledge/tools-reference.js +151 -0
  197. package/dist/knowledge/treasury-confirm.d.ts +133 -0
  198. package/dist/knowledge/treasury-confirm.js +512 -0
  199. package/dist/knowledge/treasury-context.d.ts +64 -0
  200. package/dist/knowledge/treasury-context.js +363 -0
  201. package/dist/knowledge/treasury-ledger.d.ts +42 -0
  202. package/dist/knowledge/treasury-ledger.js +300 -0
  203. package/dist/knowledge/treasury-puzzle.d.ts +163 -0
  204. package/dist/knowledge/treasury-puzzle.js +216 -0
  205. package/dist/knowledge/treasury-risk.d.ts +86 -0
  206. package/dist/knowledge/treasury-risk.js +440 -0
  207. package/dist/knowledge/treasury-templates.d.ts +38 -0
  208. package/dist/knowledge/treasury-templates.js +316 -0
  209. package/dist/knowledge/treasury-translation.d.ts +78 -0
  210. package/dist/knowledge/treasury-translation.js +498 -0
  211. package/dist/knowledge/util-risk.d.ts +30 -0
  212. package/dist/knowledge/util-risk.js +135 -0
  213. package/dist/project/business-puzzle.d.ts +47 -0
  214. package/dist/project/business-puzzle.js +372 -0
  215. package/dist/project/deployment-doc.d.ts +61 -0
  216. package/dist/project/deployment-doc.js +432 -0
  217. package/dist/project/risk-aggregator.d.ts +50 -0
  218. package/dist/project/risk-aggregator.js +280 -0
  219. package/dist/project/substep-trace.d.ts +130 -0
  220. package/dist/project/substep-trace.js +332 -0
  221. package/dist/schema/call/allocation.d.ts +34 -34
  222. package/dist/schema/call/arbitration.d.ts +141 -141
  223. package/dist/schema/call/base.d.ts +386 -386
  224. package/dist/schema/call/base.js +3 -3
  225. package/dist/schema/call/bridge-handler.d.ts +5 -2
  226. package/dist/schema/call/bridge.d.ts +159 -159
  227. package/dist/schema/call/contact.d.ts +110 -110
  228. package/dist/schema/call/demand.d.ts +76 -76
  229. package/dist/schema/call/handler.d.ts +2 -3
  230. package/dist/schema/call/handler.js +1 -1
  231. package/dist/schema/call/machine.d.ts +58 -58
  232. package/dist/schema/call/order.d.ts +98 -110
  233. package/dist/schema/call/permission-handler.d.ts +5 -0
  234. package/dist/schema/call/permission-handler.js +54 -0
  235. package/dist/schema/call/permission.d.ts +108 -108
  236. package/dist/schema/call/personal.d.ts +14 -14
  237. package/dist/schema/call/progress.d.ts +57 -72
  238. package/dist/schema/call/progress.js +7 -4
  239. package/dist/schema/call/proof.d.ts +18 -18
  240. package/dist/schema/call/proof.js +12 -7
  241. package/dist/schema/call/repository.d.ts +154 -154
  242. package/dist/schema/call/reward.d.ts +55 -55
  243. package/dist/schema/call/service.d.ts +231 -231
  244. package/dist/schema/call/treasury.d.ts +93 -93
  245. package/dist/schema/config/index.d.ts +178 -5
  246. package/dist/schema/config/index.js +52 -1
  247. package/dist/schema/local/index.d.ts +3554 -836
  248. package/dist/schema/local/index.js +2 -1
  249. package/dist/schema/messenger/index.d.ts +162 -162
  250. package/dist/schema/operations.d.ts +1058 -1074
  251. package/dist/schema/operations.js +7 -1
  252. package/dist/schema/project/index.d.ts +1412 -6
  253. package/dist/schema/project/index.js +441 -3
  254. package/dist/schema/query/index.d.ts +672 -672
  255. package/dist/schema/schema-query/index.d.ts +23 -3
  256. package/dist/schema/schema-query/index.js +13 -2
  257. package/dist/schema/sync-layer4.d.ts +21 -0
  258. package/dist/schema/sync-layer4.js +261 -0
  259. package/dist/schema/trust/index.d.ts +26 -26
  260. package/dist/schemas/account_operation.output.json +718 -0
  261. package/dist/schemas/config_operation.output.json +173 -0
  262. package/dist/schemas/index.json +9 -1
  263. package/dist/schemas/local_info_operation.output.json +718 -0
  264. package/dist/schemas/local_mark_operation.output.json +718 -0
  265. package/dist/schemas/onchain_operations.output.json +3 -2
  266. package/dist/schemas/onchain_operations.schema.json +1809 -336
  267. package/dist/schemas/onchain_operations_allocation.schema.json +2 -1
  268. package/dist/schemas/onchain_operations_arbitration.schema.json +2 -1
  269. package/dist/schemas/onchain_operations_contact.schema.json +2 -1
  270. package/dist/schemas/onchain_operations_demand.schema.json +2 -1
  271. package/dist/schemas/onchain_operations_gen_passport.schema.json +878 -872
  272. package/dist/schemas/onchain_operations_gen_proof.schema.json +273 -0
  273. package/dist/schemas/onchain_operations_guard.schema.json +578 -579
  274. package/dist/schemas/onchain_operations_machine.schema.json +2 -1
  275. package/dist/schemas/onchain_operations_order.schema.json +13 -9
  276. package/dist/schemas/onchain_operations_payment.schema.json +0 -514
  277. package/dist/schemas/onchain_operations_permission.schema.json +0 -514
  278. package/dist/schemas/onchain_operations_personal.schema.json +0 -514
  279. package/dist/schemas/onchain_operations_progress.schema.json +14 -10
  280. package/dist/schemas/onchain_operations_proof.schema.json +699 -0
  281. package/dist/schemas/onchain_operations_repository.schema.json +2 -1
  282. package/dist/schemas/onchain_operations_reward.schema.json +2 -1
  283. package/dist/schemas/onchain_operations_service.schema.json +2 -1
  284. package/dist/schemas/onchain_operations_treasury.schema.json +2 -1
  285. package/dist/schemas/onchain_table_data.schema.json +32 -1
  286. package/dist/schemas/project_operation.output.json +918 -0
  287. package/dist/schemas/project_operation.schema.json +474 -3
  288. package/dist/schemas/query_toolkit.output.json +14906 -6
  289. package/dist/schemas/schema_query.output.json +38 -1
  290. package/dist/telemetry/index.d.ts +1 -1
  291. package/dist/tools/handlers/config.d.ts +1 -1
  292. package/dist/tools/handlers/config.js +21 -18
  293. package/dist/tools/handlers/file-export.d.ts +2 -2
  294. package/dist/tools/handlers/local.d.ts +3 -30
  295. package/dist/tools/handlers/local.js +14 -3
  296. package/dist/tools/handlers/messenger.d.ts +1 -1
  297. package/dist/tools/handlers/messenger.js +2 -1
  298. package/dist/tools/handlers/onchain.d.ts +1 -1
  299. package/dist/tools/handlers/onchain.js +24 -22
  300. package/dist/tools/handlers/project.d.ts +1 -1
  301. package/dist/tools/handlers/project.js +262 -18
  302. package/dist/tools/handlers/query.d.ts +4 -4
  303. package/dist/tools/handlers/schema-query.d.ts +1 -1
  304. package/dist/tools/handlers/schema-query.js +21 -20
  305. package/dist/tools/handlers/trust.d.ts +1 -1
  306. package/dist/tools/handlers/trust.js +2 -2
  307. package/dist/tools/handlers/wip.d.ts +1 -1
  308. package/dist/tools/handlers/wip.js +1 -1
  309. package/dist/tools/index.d.ts +1 -1
  310. package/dist/tools/index.js +96 -25
  311. package/dist/tools/rules-hook.d.ts +1 -1
  312. package/dist/tools/rules-hook.js +3 -2
  313. package/dist/tools/shared.d.ts +13 -22
  314. package/dist/tools/types.d.ts +5 -5
  315. package/dist/tools/wrap.d.ts +10 -2
  316. package/dist/tools/wrap.js +212 -0
  317. package/package.json +3 -3
@@ -2,7 +2,7 @@
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://wowok.net/schemas/onchain_operations.json",
4
4
  "title": "On-chain Operations",
5
- "description": "On-chain operations for WoWok objects: service, machine, progress, repository, arbitration, contact, treasury, reward, allocation, permission, guard, personal, payment, demand, order, gen_passport.",
5
+ "description": "On-chain operations for WoWok objects: service, machine, progress, repository, arbitration, contact, treasury, reward, allocation, permission, guard, personal, payment, demand, order, gen_passport, proof, gen_proof.",
6
6
  "oneOf": [
7
7
  {
8
8
  "type": "object",
@@ -253,10 +253,6 @@
253
253
  "env": {
254
254
  "$ref": "#/definitions/env",
255
255
  "$schema": "http://json-schema.org/draft-07/schema#"
256
- },
257
- "submission": {
258
- "$ref": "#/definitions/submission",
259
- "$schema": "http://json-schema.org/draft-07/schema#"
260
256
  }
261
257
  },
262
258
  "required": [
@@ -277,69 +273,16 @@
277
273
  "description": "On-chain Guard creation. IMPORTANT: All defined data (include all submitted data) must be defined in the 'table' field. USAGE: Set 'namedNew' field with {name, tags?, onChain?} to name the new Guard. The Guard is immutable once created. Define the validation logic in 'root' field. When root.type='file', the file can contain all Guard fields, and any fields defined in the schema will OVERRIDE the file content.",
278
274
  "properties": {
279
275
  "namedNew": {
280
- "type": "object",
281
- "description": "Name and optional tags for the new Guard object. Set 'onChain: true' to create a public on-chain identity. When using root.type='file', this field OVERRIDES namedNew in the file.",
282
- "properties": {
283
- "name": {
284
- "type": "string",
285
- "description": "The name of the object"
286
- },
287
- "tags": {
288
- "type": "array",
289
- "items": {
290
- "type": "string"
291
- },
292
- "description": "The tags of the object"
293
- },
294
- "onChain": {
295
- "type": "boolean",
296
- "description": "CRITICAL: Whether to sync the name to the blockchain. DEFAULT (undefined/false): The name is stored LOCALLY ONLY on your device (PRIVATE). If set to true: The name is published ON-CHAIN and becomes PUBLICLY VISIBLE to everyone."
297
- },
298
- "replaceExistName": {
299
- "type": "boolean",
300
- "description": "FORCE CLAIM: Set to true ONLY when the user explicitly expresses a STRONG INTENTION to forcefully take over an existing name."
301
- }
302
- },
303
- "additionalProperties": false
276
+ "$ref": "#/definitions/guard_namedNew",
277
+ "$schema": "http://json-schema.org/draft-07/schema#"
304
278
  },
305
279
  "description": {
306
- "type": "string",
307
- "description": "Guard description. When using root.type='file', this field OVERRIDES description in the file."
280
+ "$ref": "#/definitions/guard_description",
281
+ "$schema": "http://json-schema.org/draft-07/schema#"
308
282
  },
309
283
  "table": {
310
- "type": "array",
311
- "description": "Data table of the Guard object. When using root.type='file', this field OVERRIDES table in the file.",
312
- "items": {
313
- "type": "object",
314
- "properties": {
315
- "identifier": {
316
- "type": "integer",
317
- "minimum": 0,
318
- "maximum": 255,
319
- "description": "Identifier index (0-255) for referencing this value in Guard nodes"
320
- },
321
- "b_submission": {
322
- "type": "boolean",
323
- "description": "Whether user submission is required for this data"
324
- },
325
- "value_type": {
326
- "type": "string",
327
- "description": "Value type: Bool, Address, String, U8, U16, U32, U64, U128, U256, VecBool, VecAddress, VecString, VecU8, VecU16, VecU32, VecU64, VecU128, VecU256, VecVecU8"
328
- },
329
- "value": {
330
- "description": "The actual value (omit if b_submission is true)"
331
- },
332
- "name": {
333
- "type": "string",
334
- "description": "Name or description of this data"
335
- }
336
- },
337
- "required": [
338
- "identifier",
339
- "b_submission",
340
- "value_type"
341
- ]
342
- }
284
+ "$ref": "#/definitions/guard_table",
285
+ "$schema": "http://json-schema.org/draft-07/schema#"
343
286
  },
344
287
  "root": {
345
288
  "description": "Root definition: either a direct GuardNode computation tree (no type wrapper) or a file reference (type='file'). When type='file', the file can define all Guard fields (namedNew, description, table, root, rely), and schema fields override file content. For the node structure, see guard-node-schema.json for complete GuardNode definitions. IMPORTANT: The root node MUST be a logical operation returning Bool (e.g., logic_and, logic_or, logic_equal, query_reward_record_exists, etc.)",
@@ -377,37 +320,22 @@
377
320
  ]
378
321
  },
379
322
  "rely": {
380
- "type": "object",
381
- "description": "All Guard objects that the new Guard object depends on.",
382
- "properties": {
383
- "guards": {
384
- "type": "array",
385
- "items": {
386
- "type": "string"
387
- },
388
- "description": "List of dependent Guard object IDs or names."
389
- },
390
- "logic_or": {
391
- "type": "boolean",
392
- "description": "Whether to use logical OR operator."
393
- }
394
- },
395
- "required": [
396
- "guards"
397
- ]
323
+ "$ref": "#/definitions/guard_rely",
324
+ "$schema": "http://json-schema.org/draft-07/schema#"
325
+ },
326
+ "binding_hint": {
327
+ "$ref": "#/definitions/guard_binding_hint",
328
+ "$schema": "http://json-schema.org/draft-07/schema#"
398
329
  }
399
330
  },
400
331
  "required": [
401
332
  "root"
402
- ]
333
+ ],
334
+ "additionalProperties": false
403
335
  },
404
336
  "env": {
405
337
  "$ref": "#/definitions/env",
406
338
  "$schema": "http://json-schema.org/draft-07/schema#"
407
- },
408
- "submission": {
409
- "$ref": "#/definitions/submission",
410
- "$schema": "http://json-schema.org/draft-07/schema#"
411
339
  }
412
340
  },
413
341
  "required": [
@@ -430,10 +358,6 @@
430
358
  "env": {
431
359
  "$ref": "#/definitions/env",
432
360
  "$schema": "http://json-schema.org/draft-07/schema#"
433
- },
434
- "submission": {
435
- "$ref": "#/definitions/submission",
436
- "$schema": "http://json-schema.org/draft-07/schema#"
437
361
  }
438
362
  },
439
363
  "required": [
@@ -456,10 +380,6 @@
456
380
  "env": {
457
381
  "$ref": "#/definitions/env",
458
382
  "$schema": "http://json-schema.org/draft-07/schema#"
459
- },
460
- "submission": {
461
- "$ref": "#/definitions/submission",
462
- "$schema": "http://json-schema.org/draft-07/schema#"
463
383
  }
464
384
  },
465
385
  "required": [
@@ -527,160 +447,898 @@
527
447
  "operation_type": {
528
448
  "const": "gen_passport"
529
449
  },
530
- "data": {
531
- "$ref": "#/definitions/data_gen_passport",
532
- "$schema": "http://json-schema.org/draft-07/schema#"
533
- },
534
- "env": {
535
- "$ref": "#/definitions/env",
536
- "$schema": "http://json-schema.org/draft-07/schema#"
537
- },
538
- "submission": {
539
- "$ref": "#/definitions/submission",
540
- "$schema": "http://json-schema.org/draft-07/schema#"
541
- }
542
- },
543
- "required": [
544
- "operation_type",
545
- "data"
546
- ]
547
- }
548
- ],
549
- "definitions": {
550
- "env": {
551
- "type": "object",
552
- "properties": {
553
- "account": {
554
- "type": "string",
555
- "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters).",
556
- "default": ""
557
- },
558
- "permission_guard": {
559
- "type": "array",
560
- "items": {
561
- "type": "string"
562
- },
563
- "description": "List of permission guard IDs. Used to extend additional operation permissions (requires verification and configuration in the Permission object)."
564
- },
565
- "no_cache": {
566
- "type": "boolean",
567
- "description": "Whether to disable caching."
568
- },
569
- "network": {
570
- "type": "string",
571
- "enum": [
572
- "localnet",
573
- "testnet",
574
- "mainnet"
575
- ],
576
- "description": "Network entrypoint: Specifies which network the operation occurs on"
577
- },
578
- "referrer": {
579
- "$ref": "#/definitions/env/properties/account",
580
- "description": "Referrer ID. If the user is using the network for the first time, the referrer ID will be recorded."
581
- },
582
- "confirmed": {
583
- "type": "boolean",
584
- "description": "Phase 2 ConfirmGate: set to true to proceed after a 'pending_confirmation' result. The operation is NOT executed until you re-call with confirmed=true after user consent."
585
- },
586
- "user_intent_phrases": {
587
- "type": "array",
588
- "items": {
589
- "type": "string"
590
- },
591
- "description": "Phase 2 ConfirmGate: explicit user intent phrases collected from conversation context (e.g. 'use default account', 'force publish'). Used to bypass confirmation rules whose bypass_on_explicit_intent matches."
592
- },
593
- "project": {
594
- "type": "string",
595
- "description": "Phase 2 ProjectService: explicit project prefix to assign this object to (e.g. 'myshop'). When set, the object is tagged with 'project:<prefix>' automatically. Overrides the prefix parsed from the object name."
596
- },
597
- "client_schema_version": {
598
- "type": "string",
599
- "description": "Client-side schema version (semver, e.g. '1.0.0'). When provided, the server checks compatibility and attaches warnings if mismatched."
600
- },
601
- "schema_strict_mode": {
602
- "type": "boolean",
603
- "description": "When true, schema incompatibility returns an error instead of a warning. Default: false (warn mode)."
604
- }
605
- },
606
- "additionalProperties": false,
607
- "description": "IMPORTANT: Execution environment includes: account for signing operations, network selection ([object Object]), additional Guard permissions, and more. Used to specify context information during the call. If account is not specified, the default account (\"\") will be used."
608
- },
609
- "submission": {
610
- "type": "object",
611
- "properties": {
612
- "type": {
613
- "type": "string",
614
- "const": "submission",
615
- "description": "Discriminator for this result variant. Constraint: always 'submission'. Example: 'submission'"
616
- },
617
450
  "guard": {
618
- "type": "array",
619
- "items": {
620
- "type": "object",
621
- "properties": {
622
- "object": {
623
- "type": "string",
624
- "description": "Guard object name or ID to verify against. Example: 'my-delivery-guard' or '0x123...'"
625
- },
626
- "impack": {
627
- "type": "boolean",
628
- "description": "Whether this Guard's verification result participates in the final logic. Constraint: if false, the Guard is checked but does not block the operation. Example: true"
629
- }
451
+ "anyOf": [
452
+ {
453
+ "type": "string",
454
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters)."
630
455
  },
631
- "required": [
632
- "object",
633
- "impack"
634
- ],
635
- "additionalProperties": false
636
- },
637
- "description": "Array of Guard objects to verify. Relation: each entry corresponds to a Guard bound to the operation."
456
+ {
457
+ "type": "array",
458
+ "items": {
459
+ "$ref": "#/definitions/data_gen_passport/properties/guard/anyOf/0"
460
+ }
461
+ }
462
+ ],
463
+ "description": "Guard object ID(s) to verify and generate passport from. Can be a single guard (string) or multiple guards (array of strings). Supports guard names or addresses."
638
464
  },
639
- "submission": {
640
- "type": "array",
641
- "items": {
642
- "type": "object",
643
- "properties": {
644
- "guard": {
645
- "$ref": "#/definitions/submission/properties/guard/items/properties/object",
646
- "description": "Guard object name or ID that requires submission data. Example: 'my-delivery-guard'"
465
+ "info": {
466
+ "type": "object",
467
+ "properties": {
468
+ "type": {
469
+ "type": "string",
470
+ "const": "submission",
471
+ "description": "Discriminator for this result variant. Constraint: always 'submission'. Example: 'submission'"
472
+ },
473
+ "guard": {
474
+ "type": "array",
475
+ "items": {
476
+ "type": "object",
477
+ "properties": {
478
+ "object": {
479
+ "$ref": "#/definitions/data_gen_passport/properties/guard/anyOf/0",
480
+ "description": "Guard object name or ID to verify against. Example: 'my-delivery-guard' or '0x123...'"
481
+ },
482
+ "impack": {
483
+ "type": "boolean",
484
+ "description": "Whether this Guard's verification result participates in the final logic. Constraint: if false, the Guard is checked but does not block the operation. Example: true"
485
+ }
486
+ },
487
+ "required": [
488
+ "object",
489
+ "impack"
490
+ ],
491
+ "additionalProperties": false
647
492
  },
648
- "submission": {
649
- "type": "array",
650
- "items": {
651
- "type": "object",
652
- "properties": {
653
- "identifier": {
654
- "type": "integer",
655
- "minimum": 0,
656
- "maximum": 255,
657
- "description": "Identifier (0-255) for data lookup in Guard table."
658
- },
659
- "b_submission": {
660
- "type": "boolean",
661
- "description": "Whether user submission is required for this data"
662
- },
663
- "value_type": {
664
- "anyOf": [
665
- {
666
- "type": "number",
667
- "const": 0,
668
- "description": "Bool (0)"
669
- },
670
- {
671
- "type": "number",
672
- "const": 1,
673
- "description": "Address (1)"
674
- },
675
- {
676
- "type": "number",
677
- "const": 2,
678
- "description": "String (2)"
679
- },
680
- {
681
- "type": "number",
682
- "const": 3,
683
- "description": "U8 (3)"
493
+ "maxItems": 20,
494
+ "description": "Array of Guard objects to verify. Constraint: at most 20 entries (MAX_GUARD_COUNT_PASSPORT). Relation: each entry corresponds to a Guard bound to the operation."
495
+ },
496
+ "submission": {
497
+ "type": "array",
498
+ "items": {
499
+ "type": "object",
500
+ "properties": {
501
+ "guard": {
502
+ "$ref": "#/definitions/data_gen_passport/properties/guard/anyOf/0",
503
+ "description": "Guard object name or ID that requires submission data. Example: 'my-delivery-guard'"
504
+ },
505
+ "submission": {
506
+ "type": "array",
507
+ "items": {
508
+ "type": "object",
509
+ "properties": {
510
+ "identifier": {
511
+ "type": "integer",
512
+ "minimum": 0,
513
+ "maximum": 255,
514
+ "description": "Identifier (0-255) for data lookup in Guard table."
515
+ },
516
+ "b_submission": {
517
+ "type": "boolean",
518
+ "description": "Whether user submission is required for this data"
519
+ },
520
+ "value_type": {
521
+ "anyOf": [
522
+ {
523
+ "type": "number",
524
+ "const": 0,
525
+ "description": "Bool (0)"
526
+ },
527
+ {
528
+ "type": "number",
529
+ "const": 1,
530
+ "description": "Address (1)"
531
+ },
532
+ {
533
+ "type": "number",
534
+ "const": 2,
535
+ "description": "String (2)"
536
+ },
537
+ {
538
+ "type": "number",
539
+ "const": 3,
540
+ "description": "U8 (3)"
541
+ },
542
+ {
543
+ "type": "number",
544
+ "const": 4,
545
+ "description": "U16 (4)"
546
+ },
547
+ {
548
+ "type": "number",
549
+ "const": 5,
550
+ "description": "U32 (5)"
551
+ },
552
+ {
553
+ "type": "number",
554
+ "const": 6,
555
+ "description": "U64 (6)"
556
+ },
557
+ {
558
+ "type": "number",
559
+ "const": 7,
560
+ "description": "U128 (7)"
561
+ },
562
+ {
563
+ "type": "number",
564
+ "const": 8,
565
+ "description": "U256 (8)"
566
+ },
567
+ {
568
+ "type": "number",
569
+ "const": 9,
570
+ "description": "VecBool (9)"
571
+ },
572
+ {
573
+ "type": "number",
574
+ "const": 10,
575
+ "description": "VecAddress (10)"
576
+ },
577
+ {
578
+ "type": "number",
579
+ "const": 11,
580
+ "description": "VecString (11)"
581
+ },
582
+ {
583
+ "type": "number",
584
+ "const": 12,
585
+ "description": "VecU8 (12)"
586
+ },
587
+ {
588
+ "type": "number",
589
+ "const": 13,
590
+ "description": "VecU16 (13)"
591
+ },
592
+ {
593
+ "type": "number",
594
+ "const": 14,
595
+ "description": "VecU32 (14)"
596
+ },
597
+ {
598
+ "type": "number",
599
+ "const": 15,
600
+ "description": "VecU64 (15)"
601
+ },
602
+ {
603
+ "type": "number",
604
+ "const": 16,
605
+ "description": "VecU128 (16)"
606
+ },
607
+ {
608
+ "type": "number",
609
+ "const": 17,
610
+ "description": "VecU256 (17)"
611
+ },
612
+ {
613
+ "type": "number",
614
+ "const": 18,
615
+ "description": "VecVecU8 (18)"
616
+ },
617
+ {
618
+ "type": "string",
619
+ "const": "Bool",
620
+ "description": "Bool"
621
+ },
622
+ {
623
+ "type": "string",
624
+ "const": "Address",
625
+ "description": "Address"
626
+ },
627
+ {
628
+ "type": "string",
629
+ "const": "String",
630
+ "description": "String"
631
+ },
632
+ {
633
+ "type": "string",
634
+ "const": "U8",
635
+ "description": "U8"
636
+ },
637
+ {
638
+ "type": "string",
639
+ "const": "U16",
640
+ "description": "U16"
641
+ },
642
+ {
643
+ "type": "string",
644
+ "const": "U32",
645
+ "description": "U32"
646
+ },
647
+ {
648
+ "type": "string",
649
+ "const": "U64",
650
+ "description": "U64"
651
+ },
652
+ {
653
+ "type": "string",
654
+ "const": "U128",
655
+ "description": "U128"
656
+ },
657
+ {
658
+ "type": "string",
659
+ "const": "U256",
660
+ "description": "U256"
661
+ },
662
+ {
663
+ "type": "string",
664
+ "const": "VecBool",
665
+ "description": "VecBool"
666
+ },
667
+ {
668
+ "type": "string",
669
+ "const": "VecAddress",
670
+ "description": "VecAddress"
671
+ },
672
+ {
673
+ "type": "string",
674
+ "const": "VecString",
675
+ "description": "VecString"
676
+ },
677
+ {
678
+ "type": "string",
679
+ "const": "VecU8",
680
+ "description": "VecU8"
681
+ },
682
+ {
683
+ "type": "string",
684
+ "const": "VecU16",
685
+ "description": "VecU16"
686
+ },
687
+ {
688
+ "type": "string",
689
+ "const": "VecU32",
690
+ "description": "VecU32"
691
+ },
692
+ {
693
+ "type": "string",
694
+ "const": "VecU64",
695
+ "description": "VecU64"
696
+ },
697
+ {
698
+ "type": "string",
699
+ "const": "VecU128",
700
+ "description": "VecU128"
701
+ },
702
+ {
703
+ "type": "string",
704
+ "const": "VecU256",
705
+ "description": "VecU256"
706
+ },
707
+ {
708
+ "type": "string",
709
+ "const": "VecVecU8",
710
+ "description": "VecVecU8"
711
+ },
712
+ {
713
+ "type": "string",
714
+ "const": "bool",
715
+ "description": "bool"
716
+ },
717
+ {
718
+ "type": "string",
719
+ "const": "address",
720
+ "description": "address"
721
+ },
722
+ {
723
+ "type": "string",
724
+ "const": "string",
725
+ "description": "string"
726
+ },
727
+ {
728
+ "type": "string",
729
+ "const": "u8",
730
+ "description": "u8"
731
+ },
732
+ {
733
+ "type": "string",
734
+ "const": "u16",
735
+ "description": "u16"
736
+ },
737
+ {
738
+ "type": "string",
739
+ "const": "u32",
740
+ "description": "u32"
741
+ },
742
+ {
743
+ "type": "string",
744
+ "const": "u64",
745
+ "description": "u64"
746
+ },
747
+ {
748
+ "type": "string",
749
+ "const": "u128",
750
+ "description": "u128"
751
+ },
752
+ {
753
+ "type": "string",
754
+ "const": "u256",
755
+ "description": "u256"
756
+ },
757
+ {
758
+ "type": "string",
759
+ "const": "vecbool",
760
+ "description": "vecbool"
761
+ },
762
+ {
763
+ "type": "string",
764
+ "const": "vecaddress",
765
+ "description": "vecaddress"
766
+ },
767
+ {
768
+ "type": "string",
769
+ "const": "vecstring",
770
+ "description": "vecstring"
771
+ },
772
+ {
773
+ "type": "string",
774
+ "const": "vecu8",
775
+ "description": "vecu8"
776
+ },
777
+ {
778
+ "type": "string",
779
+ "const": "vecu16",
780
+ "description": "vecu16"
781
+ },
782
+ {
783
+ "type": "string",
784
+ "const": "vecu32",
785
+ "description": "vecu32"
786
+ },
787
+ {
788
+ "type": "string",
789
+ "const": "vecu64",
790
+ "description": "vecu64"
791
+ },
792
+ {
793
+ "type": "string",
794
+ "const": "vecu128",
795
+ "description": "vecu128"
796
+ },
797
+ {
798
+ "type": "string",
799
+ "const": "vecu256",
800
+ "description": "vecu256"
801
+ },
802
+ {
803
+ "type": "string",
804
+ "const": "vecvecu8",
805
+ "description": "vecvecu8"
806
+ }
807
+ ],
808
+ "description": "Type of the value"
809
+ },
810
+ "value": {
811
+ "anyOf": [
812
+ {
813
+ "type": "boolean"
814
+ },
815
+ {
816
+ "anyOf": [
817
+ {
818
+ "type": "object",
819
+ "properties": {
820
+ "name_or_address": {
821
+ "$ref": "#/definitions/data_gen_passport/properties/guard/anyOf/0",
822
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters)."
823
+ },
824
+ "local_mark_first": {
825
+ "type": "boolean",
826
+ "description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks"
827
+ }
828
+ },
829
+ "additionalProperties": false,
830
+ "description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
831
+ },
832
+ {
833
+ "type": "string"
834
+ }
835
+ ]
836
+ },
837
+ {
838
+ "type": "string"
839
+ },
840
+ {
841
+ "type": "number"
842
+ },
843
+ {
844
+ "type": "array",
845
+ "items": {
846
+ "type": "boolean"
847
+ }
848
+ },
849
+ {
850
+ "anyOf": [
851
+ {
852
+ "type": "object",
853
+ "properties": {
854
+ "entities": {
855
+ "type": "array",
856
+ "items": {
857
+ "$ref": "#/definitions/data_gen_passport/properties/info/properties/submission/items/properties/submission/items/properties/value/anyOf/1/anyOf/0"
858
+ }
859
+ },
860
+ "check_all_founded": {
861
+ "type": "boolean",
862
+ "description": "Whether to check all entities are found, if true, all entities must be found (abort and throw exception if any ID not found); if false, only return found IDs"
863
+ }
864
+ },
865
+ "required": [
866
+ "entities"
867
+ ],
868
+ "additionalProperties": false,
869
+ "description": "Used to batch find account or object IDs by name"
870
+ },
871
+ {
872
+ "type": "array",
873
+ "items": {
874
+ "type": "string"
875
+ }
876
+ }
877
+ ]
878
+ },
879
+ {
880
+ "type": "array",
881
+ "items": {
882
+ "type": "string"
883
+ }
884
+ },
885
+ {
886
+ "type": "array",
887
+ "items": {
888
+ "type": "number"
889
+ }
890
+ },
891
+ {
892
+ "type": "array",
893
+ "items": {
894
+ "type": "array",
895
+ "items": {
896
+ "type": "number"
897
+ }
898
+ }
899
+ }
900
+ ],
901
+ "description": "The actual value data"
902
+ },
903
+ "name": {
904
+ "type": "string",
905
+ "default": "",
906
+ "description": "Name or description of this data"
907
+ },
908
+ "object_type": {
909
+ "type": "string",
910
+ "enum": [
911
+ "Permission",
912
+ "Repository",
913
+ "Arb",
914
+ "Arbitration",
915
+ "Service",
916
+ "Machine",
917
+ "Order",
918
+ "Progress",
919
+ "Payment",
920
+ "Treasury",
921
+ "Guard",
922
+ "Demand",
923
+ "Passport",
924
+ "Allocation",
925
+ "Resource",
926
+ "Reward",
927
+ "Discount",
928
+ "EntityRegistrar",
929
+ "EntityLinker",
930
+ "Proof",
931
+ "WReceivedObject",
932
+ "Contact",
933
+ "TableItem_ProgressHistory",
934
+ "TableItem_PermissionPerm",
935
+ "TableItem_DemandPresenter",
936
+ "TableItem_MachineNode",
937
+ "TableItem_TreasuryHistory",
938
+ "TableItem_RepositoryData",
939
+ "TableItem_RewardRecord",
940
+ "TableItem_EntityLinker",
941
+ "TableItem_AddressMark",
942
+ "TableItem_EntityRegistrar"
943
+ ],
944
+ "description": "Object type when value_type is Address and represents a specific object"
945
+ }
946
+ },
947
+ "required": [
948
+ "identifier",
949
+ "b_submission",
950
+ "value_type"
951
+ ],
952
+ "additionalProperties": false,
953
+ "description": "Guard table item"
954
+ },
955
+ "description": "User-submitted data matching the Guard's required fields. Relation: structure must match the Guard table's column definitions. Example: [{field:'delivery_proof', value:'Qm...'}]"
956
+ }
957
+ },
958
+ "required": [
959
+ "guard",
960
+ "submission"
961
+ ],
962
+ "additionalProperties": false,
963
+ "description": "One Guard's submission data: the Guard to verify plus the user-provided data that satisfies its requirements."
964
+ },
965
+ "description": "User-submitted data for each Guard. Relation: one entry per Guard in the guard array; fill submission fields and resubmit via call_with_submission."
966
+ }
967
+ },
968
+ "required": [
969
+ "type",
970
+ "guard",
971
+ "submission"
972
+ ],
973
+ "additionalProperties": false,
974
+ "description": "Optional submission data. If not provided, will attempt to get existing submissions from the guard."
975
+ },
976
+ "env": {
977
+ "type": "object",
978
+ "properties": {
979
+ "account": {
980
+ "$ref": "#/definitions/data_gen_passport/properties/guard/anyOf/0",
981
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters).",
982
+ "default": ""
983
+ },
984
+ "permission_guard": {
985
+ "type": "array",
986
+ "items": {
987
+ "type": "string"
988
+ },
989
+ "description": "List of permission guard IDs. Used to extend additional operation permissions (requires verification and configuration in the Permission object)."
990
+ },
991
+ "no_cache": {
992
+ "type": "boolean",
993
+ "description": "Whether to disable caching."
994
+ },
995
+ "network": {
996
+ "type": "string",
997
+ "enum": [
998
+ "localnet",
999
+ "testnet",
1000
+ "mainnet"
1001
+ ],
1002
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
1003
+ },
1004
+ "referrer": {
1005
+ "$ref": "#/definitions/data_gen_passport/properties/guard/anyOf/0",
1006
+ "description": "Referrer ID. If the user is using the network for the first time, the referrer ID will be recorded."
1007
+ },
1008
+ "confirmed": {
1009
+ "type": "boolean",
1010
+ "description": "Phase 2 ConfirmGate: set to true to proceed after a 'pending_confirmation' result. The operation is NOT executed until you re-call with confirmed=true after user consent."
1011
+ },
1012
+ "user_intent_phrases": {
1013
+ "type": "array",
1014
+ "items": {
1015
+ "type": "string"
1016
+ },
1017
+ "description": "Phase 2 ConfirmGate: explicit user intent phrases collected from conversation context (e.g. 'use default account', 'force publish'). Used to bypass confirmation rules whose bypass_on_explicit_intent matches."
1018
+ },
1019
+ "project": {
1020
+ "type": "string",
1021
+ "description": "Phase 2 ProjectService: explicit project prefix to assign this object to (e.g. 'myshop'). When set, the object is tagged with 'project:<prefix>' automatically. Overrides the prefix parsed from the object name."
1022
+ },
1023
+ "client_schema_version": {
1024
+ "type": "string",
1025
+ "description": "Client-side schema version (semver, e.g. '1.0.0'). When provided, the server checks compatibility and attaches warnings if mismatched."
1026
+ },
1027
+ "schema_strict_mode": {
1028
+ "type": "boolean",
1029
+ "description": "When true, schema incompatibility returns an error instead of a warning. Default: false (warn mode)."
1030
+ }
1031
+ },
1032
+ "additionalProperties": false,
1033
+ "description": "IMPORTANT: Execution environment includes: account for signing operations, network selection ([object Object]), additional Guard permissions, and more. Used to specify context information during the call. If account is not specified, the default account (\"\") will be used."
1034
+ }
1035
+ },
1036
+ "required": [
1037
+ "operation_type",
1038
+ "guard"
1039
+ ],
1040
+ "additionalProperties": false
1041
+ },
1042
+ {
1043
+ "type": "object",
1044
+ "title": "Proof Object",
1045
+ "description": "Create immutable on-chain proof objects",
1046
+ "properties": {
1047
+ "operation_type": {
1048
+ "const": "proof"
1049
+ },
1050
+ "data": {
1051
+ "$ref": "#/definitions/data_proof",
1052
+ "$schema": "http://json-schema.org/draft-07/schema#"
1053
+ },
1054
+ "env": {
1055
+ "$ref": "#/definitions/env",
1056
+ "$schema": "http://json-schema.org/draft-07/schema#"
1057
+ },
1058
+ "submission": {
1059
+ "$ref": "#/definitions/submission",
1060
+ "$schema": "http://json-schema.org/draft-07/schema#"
1061
+ }
1062
+ },
1063
+ "required": [
1064
+ "operation_type",
1065
+ "data"
1066
+ ]
1067
+ },
1068
+ {
1069
+ "type": "object",
1070
+ "title": "Generate Proof",
1071
+ "description": "Generate a new Proof object on-chain (convenience function)",
1072
+ "properties": {
1073
+ "operation_type": {
1074
+ "const": "gen_proof"
1075
+ },
1076
+ "proof": {
1077
+ "type": "string",
1078
+ "maxLength": 10240,
1079
+ "description": "Proof content. e.g. merkle tree root"
1080
+ },
1081
+ "server_pubkey": {
1082
+ "type": "string",
1083
+ "maxLength": 2048,
1084
+ "description": "Server public key"
1085
+ },
1086
+ "server_signature": {
1087
+ "type": "string",
1088
+ "maxLength": 40480,
1089
+ "description": "Server signature"
1090
+ },
1091
+ "proof_type": {
1092
+ "anyOf": [
1093
+ {
1094
+ "type": "integer",
1095
+ "minimum": 1
1096
+ },
1097
+ {
1098
+ "type": "string",
1099
+ "pattern": "^\\d+$"
1100
+ }
1101
+ ],
1102
+ "description": "Proof type. 1: WOWOK_WTS_PROOF_TYPE (WTS proof); 1-100 reserved for Wowok; user-defined must be > 100. Numeric string accepted."
1103
+ },
1104
+ "description": {
1105
+ "type": "string",
1106
+ "description": "Human-readable description of this Proof. Required field."
1107
+ },
1108
+ "item_count": {
1109
+ "anyOf": [
1110
+ {
1111
+ "type": "integer",
1112
+ "minimum": 0
1113
+ },
1114
+ {
1115
+ "type": "string"
1116
+ },
1117
+ {
1118
+ "type": "null"
1119
+ }
1120
+ ],
1121
+ "description": "Item count. e.g. number of items in the merkle tree"
1122
+ },
1123
+ "about_address": {
1124
+ "anyOf": [
1125
+ {
1126
+ "type": "string",
1127
+ "description": "Valid ID: 0x prefix + 64 hex characters, or builtin ID (0x5-0x9, 0xa, 0xc, 0xd, 0x403, 0xaaa, 0xaab, 0xacc)"
1128
+ },
1129
+ {
1130
+ "type": "null"
1131
+ }
1132
+ ],
1133
+ "description": "About address. Accepts null/undefined (→ Move Option::none). When provided, must be a raw 0x-prefixed address (NOT a name)."
1134
+ },
1135
+ "env": {
1136
+ "type": "object",
1137
+ "properties": {
1138
+ "account": {
1139
+ "type": "string",
1140
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters).",
1141
+ "default": ""
1142
+ },
1143
+ "permission_guard": {
1144
+ "type": "array",
1145
+ "items": {
1146
+ "type": "string"
1147
+ },
1148
+ "description": "List of permission guard IDs. Used to extend additional operation permissions (requires verification and configuration in the Permission object)."
1149
+ },
1150
+ "no_cache": {
1151
+ "type": "boolean",
1152
+ "description": "Whether to disable caching."
1153
+ },
1154
+ "network": {
1155
+ "type": "string",
1156
+ "enum": [
1157
+ "localnet",
1158
+ "testnet",
1159
+ "mainnet"
1160
+ ],
1161
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
1162
+ },
1163
+ "referrer": {
1164
+ "$ref": "#/definitions/data_gen_proof/properties/env/properties/account",
1165
+ "description": "Referrer ID. If the user is using the network for the first time, the referrer ID will be recorded."
1166
+ },
1167
+ "confirmed": {
1168
+ "type": "boolean",
1169
+ "description": "Phase 2 ConfirmGate: set to true to proceed after a 'pending_confirmation' result. The operation is NOT executed until you re-call with confirmed=true after user consent."
1170
+ },
1171
+ "user_intent_phrases": {
1172
+ "type": "array",
1173
+ "items": {
1174
+ "type": "string"
1175
+ },
1176
+ "description": "Phase 2 ConfirmGate: explicit user intent phrases collected from conversation context (e.g. 'use default account', 'force publish'). Used to bypass confirmation rules whose bypass_on_explicit_intent matches."
1177
+ },
1178
+ "project": {
1179
+ "type": "string",
1180
+ "description": "Phase 2 ProjectService: explicit project prefix to assign this object to (e.g. 'myshop'). When set, the object is tagged with 'project:<prefix>' automatically. Overrides the prefix parsed from the object name."
1181
+ },
1182
+ "client_schema_version": {
1183
+ "type": "string",
1184
+ "description": "Client-side schema version (semver, e.g. '1.0.0'). When provided, the server checks compatibility and attaches warnings if mismatched."
1185
+ },
1186
+ "schema_strict_mode": {
1187
+ "type": "boolean",
1188
+ "description": "When true, schema incompatibility returns an error instead of a warning. Default: false (warn mode)."
1189
+ }
1190
+ },
1191
+ "additionalProperties": false,
1192
+ "description": "IMPORTANT: Execution environment includes: account for signing operations, network selection ([object Object]), additional Guard permissions, and more. Used to specify context information during the call. If account is not specified, the default account (\"\") will be used."
1193
+ }
1194
+ },
1195
+ "required": [
1196
+ "operation_type",
1197
+ "proof",
1198
+ "server_pubkey",
1199
+ "server_signature",
1200
+ "proof_type",
1201
+ "description"
1202
+ ],
1203
+ "additionalProperties": false
1204
+ }
1205
+ ],
1206
+ "definitions": {
1207
+ "env": {
1208
+ "type": "object",
1209
+ "properties": {
1210
+ "account": {
1211
+ "type": "string",
1212
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters).",
1213
+ "default": ""
1214
+ },
1215
+ "permission_guard": {
1216
+ "type": "array",
1217
+ "items": {
1218
+ "type": "string"
1219
+ },
1220
+ "description": "List of permission guard IDs. Used to extend additional operation permissions (requires verification and configuration in the Permission object)."
1221
+ },
1222
+ "no_cache": {
1223
+ "type": "boolean",
1224
+ "description": "Whether to disable caching."
1225
+ },
1226
+ "network": {
1227
+ "type": "string",
1228
+ "enum": [
1229
+ "localnet",
1230
+ "testnet",
1231
+ "mainnet"
1232
+ ],
1233
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
1234
+ },
1235
+ "referrer": {
1236
+ "$ref": "#/definitions/env/properties/account",
1237
+ "description": "Referrer ID. If the user is using the network for the first time, the referrer ID will be recorded."
1238
+ },
1239
+ "confirmed": {
1240
+ "type": "boolean",
1241
+ "description": "Phase 2 ConfirmGate: set to true to proceed after a 'pending_confirmation' result. The operation is NOT executed until you re-call with confirmed=true after user consent."
1242
+ },
1243
+ "user_intent_phrases": {
1244
+ "type": "array",
1245
+ "items": {
1246
+ "type": "string"
1247
+ },
1248
+ "description": "Phase 2 ConfirmGate: explicit user intent phrases collected from conversation context (e.g. 'use default account', 'force publish'). Used to bypass confirmation rules whose bypass_on_explicit_intent matches."
1249
+ },
1250
+ "project": {
1251
+ "type": "string",
1252
+ "description": "Phase 2 ProjectService: explicit project prefix to assign this object to (e.g. 'myshop'). When set, the object is tagged with 'project:<prefix>' automatically. Overrides the prefix parsed from the object name."
1253
+ },
1254
+ "client_schema_version": {
1255
+ "type": "string",
1256
+ "description": "Client-side schema version (semver, e.g. '1.0.0'). When provided, the server checks compatibility and attaches warnings if mismatched."
1257
+ },
1258
+ "schema_strict_mode": {
1259
+ "type": "boolean",
1260
+ "description": "When true, schema incompatibility returns an error instead of a warning. Default: false (warn mode)."
1261
+ }
1262
+ },
1263
+ "additionalProperties": false,
1264
+ "description": "IMPORTANT: Execution environment includes: account for signing operations, network selection ([object Object]), additional Guard permissions, and more. Used to specify context information during the call. If account is not specified, the default account (\"\") will be used."
1265
+ },
1266
+ "submission": {
1267
+ "type": "object",
1268
+ "properties": {
1269
+ "type": {
1270
+ "type": "string",
1271
+ "const": "submission",
1272
+ "description": "Discriminator for this result variant. Constraint: always 'submission'. Example: 'submission'"
1273
+ },
1274
+ "guard": {
1275
+ "type": "array",
1276
+ "items": {
1277
+ "type": "object",
1278
+ "properties": {
1279
+ "object": {
1280
+ "type": "string",
1281
+ "description": "Guard object name or ID to verify against. Example: 'my-delivery-guard' or '0x123...'"
1282
+ },
1283
+ "impack": {
1284
+ "type": "boolean",
1285
+ "description": "Whether this Guard's verification result participates in the final logic. Constraint: if false, the Guard is checked but does not block the operation. Example: true"
1286
+ }
1287
+ },
1288
+ "required": [
1289
+ "object",
1290
+ "impack"
1291
+ ],
1292
+ "additionalProperties": false
1293
+ },
1294
+ "maxItems": 20,
1295
+ "description": "Array of Guard objects to verify. Constraint: at most 20 entries (MAX_GUARD_COUNT_PASSPORT). Relation: each entry corresponds to a Guard bound to the operation."
1296
+ },
1297
+ "submission": {
1298
+ "type": "array",
1299
+ "items": {
1300
+ "type": "object",
1301
+ "properties": {
1302
+ "guard": {
1303
+ "$ref": "#/definitions/submission/properties/guard/items/properties/object",
1304
+ "description": "Guard object name or ID that requires submission data. Example: 'my-delivery-guard'"
1305
+ },
1306
+ "submission": {
1307
+ "type": "array",
1308
+ "items": {
1309
+ "type": "object",
1310
+ "properties": {
1311
+ "identifier": {
1312
+ "type": "integer",
1313
+ "minimum": 0,
1314
+ "maximum": 255,
1315
+ "description": "Identifier (0-255) for data lookup in Guard table."
1316
+ },
1317
+ "b_submission": {
1318
+ "type": "boolean",
1319
+ "description": "Whether user submission is required for this data"
1320
+ },
1321
+ "value_type": {
1322
+ "anyOf": [
1323
+ {
1324
+ "type": "number",
1325
+ "const": 0,
1326
+ "description": "Bool (0)"
1327
+ },
1328
+ {
1329
+ "type": "number",
1330
+ "const": 1,
1331
+ "description": "Address (1)"
1332
+ },
1333
+ {
1334
+ "type": "number",
1335
+ "const": 2,
1336
+ "description": "String (2)"
1337
+ },
1338
+ {
1339
+ "type": "number",
1340
+ "const": 3,
1341
+ "description": "U8 (3)"
684
1342
  },
685
1343
  {
686
1344
  "type": "number",
@@ -2885,13 +3543,15 @@
2885
3543
  "additionalProperties": false,
2886
3544
  "description": "Specify a specific operation between current node and next node."
2887
3545
  },
2888
- "hold": {
2889
- "type": "boolean",
2890
- "description": "Whether to lock operation permission. When true, locks the permission; when false or omitted, submits operation result directly."
2891
- },
2892
- "adminUnhold": {
2893
- "type": "boolean",
2894
- "description": "Whether to allow admin to force unlock. Only applicable when hold is true."
3546
+ "op": {
3547
+ "type": "string",
3548
+ "enum": [
3549
+ "next",
3550
+ "hold",
3551
+ "unhold",
3552
+ "adminUnhold"
3553
+ ],
3554
+ "description": "Operation type on the forward: 'next' = advance the forward (accomplish); 'hold' = set hold to block the forward; 'unhold' = self-unhold, release own hold (no 224 permission needed); 'adminUnhold' = force-release hold via 224 permission (PROGRESS_UNHOLD)."
2895
3555
  },
2896
3556
  "message": {
2897
3557
  "type": "string",
@@ -2899,10 +3559,11 @@
2899
3559
  }
2900
3560
  },
2901
3561
  "required": [
2902
- "operation"
3562
+ "operation",
3563
+ "op"
2903
3564
  ],
2904
3565
  "additionalProperties": false,
2905
- "description": "Advance Progress object. Can be locking operation permission (to avoid competition for the same permission) or submitting operation result."
3566
+ "description": "Advance Progress object. op field selects the operation: next/hold/unhold/adminUnhold."
2906
3567
  }
2907
3568
  },
2908
3569
  "required": [
@@ -6511,97 +7172,674 @@
6511
7172
  "properties": {
6512
7173
  "id": {
6513
7174
  "type": "string",
6514
- "minLength": 1,
6515
- "description": "Received object ID"
7175
+ "minLength": 1,
7176
+ "description": "Received object ID"
7177
+ },
7178
+ "type": {
7179
+ "type": "string",
7180
+ "minLength": 1,
7181
+ "description": "Object type"
7182
+ },
7183
+ "content_raw": {
7184
+ "description": "Raw content data"
7185
+ }
7186
+ },
7187
+ "required": [
7188
+ "id",
7189
+ "type"
7190
+ ],
7191
+ "additionalProperties": false,
7192
+ "description": "Received normal object record"
7193
+ }
7194
+ },
7195
+ {
7196
+ "type": "object",
7197
+ "properties": {
7198
+ "balance": {
7199
+ "type": [
7200
+ "number",
7201
+ "string"
7202
+ ],
7203
+ "description": "Balance type"
7204
+ },
7205
+ "token_type": {
7206
+ "type": "string",
7207
+ "description": "Asset type of Coin objects. Supports CoinWrapper<...> format for order receive operations."
7208
+ },
7209
+ "received": {
7210
+ "type": "array",
7211
+ "items": {
7212
+ "type": "object",
7213
+ "properties": {
7214
+ "id": {
7215
+ "type": "string",
7216
+ "description": "Received CoinWrapper object ID"
7217
+ },
7218
+ "balance": {
7219
+ "$ref": "#/definitions/data_permission/properties/owner_receive/anyOf/1/properties/balance"
7220
+ },
7221
+ "payment": {
7222
+ "type": "string",
7223
+ "description": "Payment object ID"
7224
+ }
7225
+ },
7226
+ "required": [
7227
+ "id",
7228
+ "balance",
7229
+ "payment"
7230
+ ],
7231
+ "additionalProperties": false,
7232
+ "description": "Received CoinWrapper object record"
7233
+ },
7234
+ "description": "Received records of Coin objects"
7235
+ }
7236
+ },
7237
+ "required": [
7238
+ "balance",
7239
+ "token_type",
7240
+ "received"
7241
+ ],
7242
+ "additionalProperties": false,
7243
+ "description": "Received record of Coin objects"
7244
+ },
7245
+ {
7246
+ "type": "string",
7247
+ "const": "recently"
7248
+ }
7249
+ ],
7250
+ "description": "Unwrap CoinWrapper objects and other objects received by this object and send them to the builder(owner)."
7251
+ },
7252
+ "um": {
7253
+ "anyOf": [
7254
+ {
7255
+ "$ref": "#/definitions/data_permission/properties/table/anyOf/0/properties/entity/properties/entities/items/properties/name_or_address"
7256
+ },
7257
+ {
7258
+ "type": "null"
7259
+ }
7260
+ ],
7261
+ "description": "Contact object ID or name."
7262
+ }
7263
+ },
7264
+ "additionalProperties": false,
7265
+ "description": "On-chain Permission operations. USAGE: (1) CREATE NEW: Set 'object' field with OBJECT format {name, tags?, ...} to create a Permission. NOTE: 'name' goes INSIDE 'object', NOT at the data root level. (2) OPERATE EXISTING: Set 'object' field with STRING format (object ID or name). The 'object' field is CRITICAL and REQUIRED in both cases. STRING for existing, OBJECT for new creation."
7266
+ },
7267
+ "guard_namedNew": {
7268
+ "anyOf": [
7269
+ {
7270
+ "not": {}
7271
+ },
7272
+ {
7273
+ "type": "object",
7274
+ "properties": {
7275
+ "name": {
7276
+ "type": "string",
7277
+ "description": "The name of the object"
7278
+ },
7279
+ "tags": {
7280
+ "type": "array",
7281
+ "items": {
7282
+ "type": "string"
7283
+ },
7284
+ "description": "The tags of the object"
7285
+ },
7286
+ "onChain": {
7287
+ "type": "boolean",
7288
+ "description": "CRITICAL: Whether to sync the name to the blockchain. DEFAULT (undefined/false): The name is stored LOCALLY ONLY on your device (PRIVATE). If set to true: The name is published ON-CHAIN and becomes PUBLICLY VISIBLE to everyone. Only set to true for displaying the relationships you are willing to make public on the chain."
7289
+ },
7290
+ "replaceExistName": {
7291
+ "type": "boolean",
7292
+ "description": "FORCE CLAIM: Set to true ONLY when the user explicitly expresses a STRONG INTENTION to forcefully take over an existing name (e.g., 'I must use this name', 'force rename', 'replace the existing one'). WARNING: This will UNBIND the name from its original object and rebind it to the new one, potentially breaking existing references. If not specified or false: the operation will FAIL with an error when the name is already in use (safe default behavior)."
7293
+ }
7294
+ },
7295
+ "additionalProperties": false,
7296
+ "description": "Assign a name and optional tags to a new object. By default, names are stored LOCALLY (private) on your device. Set 'onChain: true' to create a PUBLIC on-chain identity visible to everyone. IMPORTANT: If the requested name is already taken, the operation will FAIL by default. Only set 'replaceExistName: true' when the user EXPLICITLY demands to forcefully claim the name."
7297
+ }
7298
+ ],
7299
+ "description": "Name and optional tags for the new Guard object. Set 'onChain: true' to create a public on-chain identity. When using root.type='file', this field OVERRIDES namedNew in the file."
7300
+ },
7301
+ "guard_description": {
7302
+ "anyOf": [
7303
+ {
7304
+ "not": {}
7305
+ },
7306
+ {
7307
+ "type": "string",
7308
+ "description": "Description string (max 4000 bcs characters)"
7309
+ }
7310
+ ],
7311
+ "description": "Guard description. When using root.type='file', this field OVERRIDES description in the file."
7312
+ },
7313
+ "guard_table": {
7314
+ "anyOf": [
7315
+ {
7316
+ "not": {}
7317
+ },
7318
+ {
7319
+ "type": "array",
7320
+ "items": {
7321
+ "type": "object",
7322
+ "properties": {
7323
+ "identifier": {
7324
+ "type": "integer",
7325
+ "minimum": 0,
7326
+ "maximum": 255,
7327
+ "description": "Identifier (0-255) for data lookup in Guard table."
7328
+ },
7329
+ "b_submission": {
7330
+ "type": "boolean",
7331
+ "description": "Whether user submission is required for this data"
7332
+ },
7333
+ "value_type": {
7334
+ "anyOf": [
7335
+ {
7336
+ "type": "number",
7337
+ "const": 0,
7338
+ "description": "Bool (0)"
7339
+ },
7340
+ {
7341
+ "type": "number",
7342
+ "const": 1,
7343
+ "description": "Address (1)"
7344
+ },
7345
+ {
7346
+ "type": "number",
7347
+ "const": 2,
7348
+ "description": "String (2)"
7349
+ },
7350
+ {
7351
+ "type": "number",
7352
+ "const": 3,
7353
+ "description": "U8 (3)"
7354
+ },
7355
+ {
7356
+ "type": "number",
7357
+ "const": 4,
7358
+ "description": "U16 (4)"
7359
+ },
7360
+ {
7361
+ "type": "number",
7362
+ "const": 5,
7363
+ "description": "U32 (5)"
7364
+ },
7365
+ {
7366
+ "type": "number",
7367
+ "const": 6,
7368
+ "description": "U64 (6)"
7369
+ },
7370
+ {
7371
+ "type": "number",
7372
+ "const": 7,
7373
+ "description": "U128 (7)"
7374
+ },
7375
+ {
7376
+ "type": "number",
7377
+ "const": 8,
7378
+ "description": "U256 (8)"
7379
+ },
7380
+ {
7381
+ "type": "number",
7382
+ "const": 9,
7383
+ "description": "VecBool (9)"
7384
+ },
7385
+ {
7386
+ "type": "number",
7387
+ "const": 10,
7388
+ "description": "VecAddress (10)"
7389
+ },
7390
+ {
7391
+ "type": "number",
7392
+ "const": 11,
7393
+ "description": "VecString (11)"
7394
+ },
7395
+ {
7396
+ "type": "number",
7397
+ "const": 12,
7398
+ "description": "VecU8 (12)"
7399
+ },
7400
+ {
7401
+ "type": "number",
7402
+ "const": 13,
7403
+ "description": "VecU16 (13)"
7404
+ },
7405
+ {
7406
+ "type": "number",
7407
+ "const": 14,
7408
+ "description": "VecU32 (14)"
7409
+ },
7410
+ {
7411
+ "type": "number",
7412
+ "const": 15,
7413
+ "description": "VecU64 (15)"
7414
+ },
7415
+ {
7416
+ "type": "number",
7417
+ "const": 16,
7418
+ "description": "VecU128 (16)"
7419
+ },
7420
+ {
7421
+ "type": "number",
7422
+ "const": 17,
7423
+ "description": "VecU256 (17)"
7424
+ },
7425
+ {
7426
+ "type": "number",
7427
+ "const": 18,
7428
+ "description": "VecVecU8 (18)"
7429
+ },
7430
+ {
7431
+ "type": "string",
7432
+ "const": "Bool",
7433
+ "description": "Bool"
6516
7434
  },
6517
- "type": {
7435
+ {
6518
7436
  "type": "string",
6519
- "minLength": 1,
6520
- "description": "Object type"
7437
+ "const": "Address",
7438
+ "description": "Address"
6521
7439
  },
6522
- "content_raw": {
6523
- "description": "Raw content data"
7440
+ {
7441
+ "type": "string",
7442
+ "const": "String",
7443
+ "description": "String"
7444
+ },
7445
+ {
7446
+ "type": "string",
7447
+ "const": "U8",
7448
+ "description": "U8"
7449
+ },
7450
+ {
7451
+ "type": "string",
7452
+ "const": "U16",
7453
+ "description": "U16"
7454
+ },
7455
+ {
7456
+ "type": "string",
7457
+ "const": "U32",
7458
+ "description": "U32"
7459
+ },
7460
+ {
7461
+ "type": "string",
7462
+ "const": "U64",
7463
+ "description": "U64"
7464
+ },
7465
+ {
7466
+ "type": "string",
7467
+ "const": "U128",
7468
+ "description": "U128"
7469
+ },
7470
+ {
7471
+ "type": "string",
7472
+ "const": "U256",
7473
+ "description": "U256"
7474
+ },
7475
+ {
7476
+ "type": "string",
7477
+ "const": "VecBool",
7478
+ "description": "VecBool"
7479
+ },
7480
+ {
7481
+ "type": "string",
7482
+ "const": "VecAddress",
7483
+ "description": "VecAddress"
7484
+ },
7485
+ {
7486
+ "type": "string",
7487
+ "const": "VecString",
7488
+ "description": "VecString"
7489
+ },
7490
+ {
7491
+ "type": "string",
7492
+ "const": "VecU8",
7493
+ "description": "VecU8"
7494
+ },
7495
+ {
7496
+ "type": "string",
7497
+ "const": "VecU16",
7498
+ "description": "VecU16"
7499
+ },
7500
+ {
7501
+ "type": "string",
7502
+ "const": "VecU32",
7503
+ "description": "VecU32"
7504
+ },
7505
+ {
7506
+ "type": "string",
7507
+ "const": "VecU64",
7508
+ "description": "VecU64"
7509
+ },
7510
+ {
7511
+ "type": "string",
7512
+ "const": "VecU128",
7513
+ "description": "VecU128"
7514
+ },
7515
+ {
7516
+ "type": "string",
7517
+ "const": "VecU256",
7518
+ "description": "VecU256"
7519
+ },
7520
+ {
7521
+ "type": "string",
7522
+ "const": "VecVecU8",
7523
+ "description": "VecVecU8"
7524
+ },
7525
+ {
7526
+ "type": "string",
7527
+ "const": "bool",
7528
+ "description": "bool"
7529
+ },
7530
+ {
7531
+ "type": "string",
7532
+ "const": "address",
7533
+ "description": "address"
7534
+ },
7535
+ {
7536
+ "type": "string",
7537
+ "const": "string",
7538
+ "description": "string"
7539
+ },
7540
+ {
7541
+ "type": "string",
7542
+ "const": "u8",
7543
+ "description": "u8"
7544
+ },
7545
+ {
7546
+ "type": "string",
7547
+ "const": "u16",
7548
+ "description": "u16"
7549
+ },
7550
+ {
7551
+ "type": "string",
7552
+ "const": "u32",
7553
+ "description": "u32"
7554
+ },
7555
+ {
7556
+ "type": "string",
7557
+ "const": "u64",
7558
+ "description": "u64"
7559
+ },
7560
+ {
7561
+ "type": "string",
7562
+ "const": "u128",
7563
+ "description": "u128"
7564
+ },
7565
+ {
7566
+ "type": "string",
7567
+ "const": "u256",
7568
+ "description": "u256"
7569
+ },
7570
+ {
7571
+ "type": "string",
7572
+ "const": "vecbool",
7573
+ "description": "vecbool"
7574
+ },
7575
+ {
7576
+ "type": "string",
7577
+ "const": "vecaddress",
7578
+ "description": "vecaddress"
7579
+ },
7580
+ {
7581
+ "type": "string",
7582
+ "const": "vecstring",
7583
+ "description": "vecstring"
7584
+ },
7585
+ {
7586
+ "type": "string",
7587
+ "const": "vecu8",
7588
+ "description": "vecu8"
7589
+ },
7590
+ {
7591
+ "type": "string",
7592
+ "const": "vecu16",
7593
+ "description": "vecu16"
7594
+ },
7595
+ {
7596
+ "type": "string",
7597
+ "const": "vecu32",
7598
+ "description": "vecu32"
7599
+ },
7600
+ {
7601
+ "type": "string",
7602
+ "const": "vecu64",
7603
+ "description": "vecu64"
7604
+ },
7605
+ {
7606
+ "type": "string",
7607
+ "const": "vecu128",
7608
+ "description": "vecu128"
7609
+ },
7610
+ {
7611
+ "type": "string",
7612
+ "const": "vecu256",
7613
+ "description": "vecu256"
7614
+ },
7615
+ {
7616
+ "type": "string",
7617
+ "const": "vecvecu8",
7618
+ "description": "vecvecu8"
6524
7619
  }
6525
- },
6526
- "required": [
6527
- "id",
6528
- "type"
6529
7620
  ],
6530
- "additionalProperties": false,
6531
- "description": "Received normal object record"
6532
- }
6533
- },
6534
- {
6535
- "type": "object",
6536
- "properties": {
6537
- "balance": {
6538
- "type": [
6539
- "number",
6540
- "string"
6541
- ],
6542
- "description": "Balance type"
6543
- },
6544
- "token_type": {
6545
- "type": "string",
6546
- "description": "Asset type of Coin objects. Supports CoinWrapper<...> format for order receive operations."
6547
- },
6548
- "received": {
6549
- "type": "array",
6550
- "items": {
6551
- "type": "object",
6552
- "properties": {
6553
- "id": {
6554
- "type": "string",
6555
- "description": "Received CoinWrapper object ID"
7621
+ "description": "Type of the value"
7622
+ },
7623
+ "value": {
7624
+ "anyOf": [
7625
+ {
7626
+ "type": "boolean"
7627
+ },
7628
+ {
7629
+ "anyOf": [
7630
+ {
7631
+ "type": "object",
7632
+ "properties": {
7633
+ "name_or_address": {
7634
+ "type": "string",
7635
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters)."
7636
+ },
7637
+ "local_mark_first": {
7638
+ "type": "boolean",
7639
+ "description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks"
7640
+ }
7641
+ },
7642
+ "additionalProperties": false,
7643
+ "description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
6556
7644
  },
6557
- "balance": {
6558
- "$ref": "#/definitions/data_permission/properties/owner_receive/anyOf/1/properties/balance"
7645
+ {
7646
+ "type": "string"
7647
+ }
7648
+ ]
7649
+ },
7650
+ {
7651
+ "type": "string"
7652
+ },
7653
+ {
7654
+ "type": "number"
7655
+ },
7656
+ {
7657
+ "type": "array",
7658
+ "items": {
7659
+ "type": "boolean"
7660
+ }
7661
+ },
7662
+ {
7663
+ "anyOf": [
7664
+ {
7665
+ "type": "object",
7666
+ "properties": {
7667
+ "entities": {
7668
+ "type": "array",
7669
+ "items": {
7670
+ "$ref": "#/definitions/guard_table/anyOf/1/items/properties/value/anyOf/1/anyOf/0"
7671
+ }
7672
+ },
7673
+ "check_all_founded": {
7674
+ "type": "boolean",
7675
+ "description": "Whether to check all entities are found, if true, all entities must be found (abort and throw exception if any ID not found); if false, only return found IDs"
7676
+ }
7677
+ },
7678
+ "required": [
7679
+ "entities"
7680
+ ],
7681
+ "additionalProperties": false,
7682
+ "description": "Used to batch find account or object IDs by name"
6559
7683
  },
6560
- "payment": {
6561
- "type": "string",
6562
- "description": "Payment object ID"
7684
+ {
7685
+ "type": "array",
7686
+ "items": {
7687
+ "type": "string"
7688
+ }
6563
7689
  }
6564
- },
6565
- "required": [
6566
- "id",
6567
- "balance",
6568
- "payment"
6569
- ],
6570
- "additionalProperties": false,
6571
- "description": "Received CoinWrapper object record"
7690
+ ]
6572
7691
  },
6573
- "description": "Received records of Coin objects"
6574
- }
7692
+ {
7693
+ "type": "array",
7694
+ "items": {
7695
+ "type": "string"
7696
+ }
7697
+ },
7698
+ {
7699
+ "type": "array",
7700
+ "items": {
7701
+ "type": "number"
7702
+ }
7703
+ },
7704
+ {
7705
+ "type": "array",
7706
+ "items": {
7707
+ "type": "array",
7708
+ "items": {
7709
+ "type": "number"
7710
+ }
7711
+ }
7712
+ }
7713
+ ],
7714
+ "description": "The actual value data"
7715
+ },
7716
+ "name": {
7717
+ "type": "string",
7718
+ "default": "",
7719
+ "description": "Name or description of this data"
7720
+ }
7721
+ },
7722
+ "required": [
7723
+ "identifier",
7724
+ "b_submission",
7725
+ "value_type"
7726
+ ],
7727
+ "additionalProperties": false,
7728
+ "description": "Guard table item"
7729
+ }
7730
+ }
7731
+ ],
7732
+ "description": "Data table of the Guard object. When using root.type='file', this field OVERRIDES table in the file."
7733
+ },
7734
+ "guard_rely": {
7735
+ "anyOf": [
7736
+ {
7737
+ "not": {}
7738
+ },
7739
+ {
7740
+ "type": "object",
7741
+ "properties": {
7742
+ "guards": {
7743
+ "type": "array",
7744
+ "items": {
7745
+ "type": "string",
7746
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters)."
6575
7747
  },
6576
- "required": [
6577
- "balance",
6578
- "token_type",
6579
- "received"
6580
- ],
6581
- "additionalProperties": false,
6582
- "description": "Received record of Coin objects"
7748
+ "description": "List of dependent Guard object IDs or names."
6583
7749
  },
6584
- {
6585
- "type": "string",
6586
- "const": "recently"
7750
+ "logic_or": {
7751
+ "type": "boolean",
7752
+ "description": "Whether to use logical OR operator."
6587
7753
  }
7754
+ },
7755
+ "required": [
7756
+ "guards"
6588
7757
  ],
6589
- "description": "Unwrap CoinWrapper objects and other objects received by this object and send them to the builder(owner)."
7758
+ "additionalProperties": false
7759
+ }
7760
+ ],
7761
+ "description": "All Guard objects that the new Guard object depends on. If logic_or is true, the execution result of the new Guard object is the logical OR of the execution results of all dependent Guard objects; otherwise, it is logical AND. When using root.type='file', this field OVERRIDES rely in the file."
7762
+ },
7763
+ "guard_binding_hint": {
7764
+ "anyOf": [
7765
+ {
7766
+ "not": {}
6590
7767
  },
6591
- "um": {
6592
- "anyOf": [
6593
- {
6594
- "$ref": "#/definitions/data_permission/properties/table/anyOf/0/properties/entity/properties/entities/items/properties/name_or_address"
7768
+ {
7769
+ "type": "object",
7770
+ "properties": {
7771
+ "action": {
7772
+ "type": "string",
7773
+ "enum": [
7774
+ "buy",
7775
+ "forward",
7776
+ "allocate",
7777
+ "claim_reward",
7778
+ "vote",
7779
+ "dispute",
7780
+ "write_repository",
7781
+ "submit_progress",
7782
+ "gen_passport",
7783
+ "custom"
7784
+ ],
7785
+ "description": "Protected action type. Example: 'buy' for Service buy_guard, 'forward' for Machine Forward.guard."
6595
7786
  },
6596
- {
6597
- "type": "null"
7787
+ "host_object": {
7788
+ "type": "string",
7789
+ "enum": [
7790
+ "Service",
7791
+ "Machine",
7792
+ "Arbitration",
7793
+ "Reward",
7794
+ "Repository",
7795
+ "Progress",
7796
+ "Demand",
7797
+ "Standalone"
7798
+ ],
7799
+ "description": "Host object type. Example: 'Service', 'Machine'."
7800
+ },
7801
+ "binding_field": {
7802
+ "type": "string",
7803
+ "enum": [
7804
+ "buy_guard",
7805
+ "order_allocators",
7806
+ "Forward.guard",
7807
+ "submission",
7808
+ "guard",
7809
+ "write_guard",
7810
+ "usage_guard",
7811
+ "voting_guard",
7812
+ "ServiceGuard",
7813
+ "none"
7814
+ ],
7815
+ "description": "Binding field. Example: 'buy_guard', 'Forward.guard'."
7816
+ },
7817
+ "rule_sentence": {
7818
+ "type": "string",
7819
+ "description": "One-sentence description of the validation rule (human-readable). Example: 'Only the author can purchase this service'."
7820
+ },
7821
+ "failure_conditions": {
7822
+ "type": "array",
7823
+ "items": {
7824
+ "type": "string"
7825
+ },
7826
+ "description": "List of conditions under which the Guard should FAIL. Example: ['Signer is not in allowlist','Order is already completed']."
7827
+ },
7828
+ "circular_reference": {
7829
+ "type": "boolean",
7830
+ "description": "Whether the Guard references the Host Object itself (circular reference pattern). true=Guard queries the Host Object it binds to."
6598
7831
  }
7832
+ },
7833
+ "required": [
7834
+ "action",
7835
+ "host_object",
7836
+ "binding_field"
6599
7837
  ],
6600
- "description": "Contact object ID or name."
7838
+ "additionalProperties": false,
7839
+ "description": "Optional semantic hint for Guard capability system. Provides intent + binding context so the MCP server can derive GuardPuzzle, run risk assessment, and generate confirmation text. Strongly recommended: fill this field to enable puzzle_status, matched_scene, suggested_patterns, confirmation_text, and pending_questions in the response guard_advice."
6601
7840
  }
6602
- },
6603
- "additionalProperties": false,
6604
- "description": "On-chain Permission operations. USAGE: (1) CREATE NEW: Set 'object' field with OBJECT format {name, tags?, ...} to create a Permission. NOTE: 'name' goes INSIDE 'object', NOT at the data root level. (2) OPERATE EXISTING: Set 'object' field with STRING format (object ID or name). The 'object' field is CRITICAL and REQUIRED in both cases. STRING for existing, OBJECT for new creation."
7841
+ ],
7842
+ "description": "Phase 5 Guard capability hint. Provides semantic context (action + host_object + binding_field + optional rule/failure_conditions) for puzzle derivation. When provided, the response will include complete guard_advice (puzzle_status, matched_scene, suggested_patterns, confirmation_text, pending_questions). When absent, puzzle_status intent/binding dimensions are marked incomplete."
6605
7843
  },
6606
7844
  "data_personal": {
6607
7845
  "type": "object",
@@ -7939,13 +9177,15 @@
7939
9177
  "additionalProperties": false,
7940
9178
  "description": "Specify a specific operation between current node and next node."
7941
9179
  },
7942
- "hold": {
7943
- "type": "boolean",
7944
- "description": "Whether to lock operation permission. When true, locks the permission; when false or omitted, submits operation result directly."
7945
- },
7946
- "adminUnhold": {
7947
- "type": "boolean",
7948
- "description": "Whether to allow admin to force unlock. Only applicable when hold is true."
9180
+ "op": {
9181
+ "type": "string",
9182
+ "enum": [
9183
+ "next",
9184
+ "hold",
9185
+ "unhold",
9186
+ "adminUnhold"
9187
+ ],
9188
+ "description": "Operation type on the forward: 'next' = advance the forward (accomplish); 'hold' = set hold to block the forward; 'unhold' = self-unhold, release own hold (no 224 permission needed); 'adminUnhold' = force-release hold via 224 permission (PROGRESS_UNHOLD)."
7949
9189
  },
7950
9190
  "message": {
7951
9191
  "type": "string",
@@ -7953,7 +9193,8 @@
7953
9193
  }
7954
9194
  },
7955
9195
  "required": [
7956
- "operation"
9196
+ "operation",
9197
+ "op"
7957
9198
  ],
7958
9199
  "additionalProperties": false,
7959
9200
  "description": "Advance order process"
@@ -8170,7 +9411,8 @@
8170
9411
  ],
8171
9412
  "additionalProperties": false
8172
9413
  },
8173
- "description": "Array of Guard objects to verify. Relation: each entry corresponds to a Guard bound to the operation."
9414
+ "maxItems": 20,
9415
+ "description": "Array of Guard objects to verify. Constraint: at most 20 entries (MAX_GUARD_COUNT_PASSPORT). Relation: each entry corresponds to a Guard bound to the operation."
8174
9416
  },
8175
9417
  "submission": {
8176
9418
  "type": "array",
@@ -8717,6 +9959,237 @@
8717
9959
  ],
8718
9960
  "additionalProperties": false,
8719
9961
  "description": "Generate a new Passport object after Guard verification succeeds. The Passport is an immutable on-chain object that can be used for offline friend verification, transaction condition verification, etc. Supports verifying multiple guards at once."
9962
+ },
9963
+ "data_proof": {
9964
+ "type": "object",
9965
+ "properties": {
9966
+ "namedNew": {
9967
+ "type": "object",
9968
+ "properties": {
9969
+ "name": {
9970
+ "type": "string",
9971
+ "description": "The name of the object"
9972
+ },
9973
+ "tags": {
9974
+ "type": "array",
9975
+ "items": {
9976
+ "type": "string"
9977
+ },
9978
+ "description": "The tags of the object"
9979
+ },
9980
+ "onChain": {
9981
+ "type": "boolean",
9982
+ "description": "CRITICAL: Whether to sync the name to the blockchain. DEFAULT (undefined/false): The name is stored LOCALLY ONLY on your device (PRIVATE). If set to true: The name is published ON-CHAIN and becomes PUBLICLY VISIBLE to everyone. Only set to true for displaying the relationships you are willing to make public on the chain."
9983
+ },
9984
+ "replaceExistName": {
9985
+ "type": "boolean",
9986
+ "description": "FORCE CLAIM: Set to true ONLY when the user explicitly expresses a STRONG INTENTION to forcefully take over an existing name (e.g., 'I must use this name', 'force rename', 'replace the existing one'). WARNING: This will UNBIND the name from its original object and rebind it to the new one, potentially breaking existing references. If not specified or false: the operation will FAIL with an error when the name is already in use (safe default behavior)."
9987
+ }
9988
+ },
9989
+ "additionalProperties": false,
9990
+ "description": "Assign a name and optional tags to a new object. By default, names are stored LOCALLY (private) on your device. Set 'onChain: true' to create a PUBLIC on-chain identity visible to everyone. IMPORTANT: If the requested name is already taken, the operation will FAIL by default. Only set 'replaceExistName: true' when the user EXPLICITLY demands to forcefully claim the name."
9991
+ },
9992
+ "description": {
9993
+ "type": "string",
9994
+ "description": "Human-readable description of this Proof. Required field."
9995
+ },
9996
+ "proof": {
9997
+ "type": "string",
9998
+ "maxLength": 10240,
9999
+ "description": "Proof content. e.g. merkle tree root"
10000
+ },
10001
+ "server_pubkey": {
10002
+ "type": "string",
10003
+ "maxLength": 2048,
10004
+ "description": "Server public key"
10005
+ },
10006
+ "server_signature": {
10007
+ "type": "string",
10008
+ "maxLength": 40480,
10009
+ "description": "Server signature"
10010
+ },
10011
+ "proof_type": {
10012
+ "anyOf": [
10013
+ {
10014
+ "type": "integer",
10015
+ "minimum": 1
10016
+ },
10017
+ {
10018
+ "type": "string",
10019
+ "pattern": "^\\d+$"
10020
+ }
10021
+ ],
10022
+ "description": "Proof type. 1: WOWOK_WTS_PROOF_TYPE (WTS proof); 1-100 reserved for Wowok; user-defined must be > 100. Numeric string accepted."
10023
+ },
10024
+ "item_count": {
10025
+ "anyOf": [
10026
+ {
10027
+ "type": "integer",
10028
+ "minimum": 0
10029
+ },
10030
+ {
10031
+ "type": "string"
10032
+ },
10033
+ {
10034
+ "type": "null"
10035
+ }
10036
+ ],
10037
+ "description": "Item count. e.g. number of items in the merkle tree"
10038
+ },
10039
+ "about_address": {
10040
+ "anyOf": [
10041
+ {
10042
+ "type": "string",
10043
+ "description": "Valid ID: 0x prefix + 64 hex characters, or builtin ID (0x5-0x9, 0xa, 0xc, 0xd, 0x403, 0xaaa, 0xaab, 0xacc)"
10044
+ },
10045
+ {
10046
+ "type": "null"
10047
+ }
10048
+ ],
10049
+ "description": "About address. Accepts null/undefined (→ Move Option::none). When provided, must be a raw 0x-prefixed address (NOT a name). e.g. address of the entity being proved."
10050
+ }
10051
+ },
10052
+ "required": [
10053
+ "description",
10054
+ "proof",
10055
+ "server_pubkey",
10056
+ "server_signature",
10057
+ "proof_type"
10058
+ ],
10059
+ "additionalProperties": false,
10060
+ "description": "On-chain Proof creation. USAGE: Set 'namedNew' field with {name, tag?} to create a named Proof. Proof is an immutable object - it can only be created, not modified. The 'namedNew' field is CRITICAL and REQUIRED."
10061
+ },
10062
+ "data_gen_proof": {
10063
+ "type": "object",
10064
+ "properties": {
10065
+ "proof": {
10066
+ "type": "string",
10067
+ "maxLength": 10240,
10068
+ "description": "Proof content. e.g. merkle tree root"
10069
+ },
10070
+ "server_pubkey": {
10071
+ "type": "string",
10072
+ "maxLength": 2048,
10073
+ "description": "Server public key"
10074
+ },
10075
+ "server_signature": {
10076
+ "type": "string",
10077
+ "maxLength": 40480,
10078
+ "description": "Server signature"
10079
+ },
10080
+ "proof_type": {
10081
+ "anyOf": [
10082
+ {
10083
+ "type": "integer",
10084
+ "minimum": 1
10085
+ },
10086
+ {
10087
+ "type": "string",
10088
+ "pattern": "^\\d+$"
10089
+ }
10090
+ ],
10091
+ "description": "Proof type. 1: WOWOK_WTS_PROOF_TYPE (WTS proof); 1-100 reserved for Wowok; user-defined must be > 100. Numeric string accepted."
10092
+ },
10093
+ "description": {
10094
+ "type": "string",
10095
+ "description": "Human-readable description of this Proof. Required field."
10096
+ },
10097
+ "item_count": {
10098
+ "anyOf": [
10099
+ {
10100
+ "type": "integer",
10101
+ "minimum": 0
10102
+ },
10103
+ {
10104
+ "type": "string"
10105
+ },
10106
+ {
10107
+ "type": "null"
10108
+ }
10109
+ ],
10110
+ "description": "Item count. e.g. number of items in the merkle tree"
10111
+ },
10112
+ "about_address": {
10113
+ "anyOf": [
10114
+ {
10115
+ "type": "string",
10116
+ "description": "Valid ID: 0x prefix + 64 hex characters, or builtin ID (0x5-0x9, 0xa, 0xc, 0xd, 0x403, 0xaaa, 0xaab, 0xacc)"
10117
+ },
10118
+ {
10119
+ "type": "null"
10120
+ }
10121
+ ],
10122
+ "description": "About address. Accepts null/undefined (→ Move Option::none). When provided, must be a raw 0x-prefixed address (NOT a name)."
10123
+ },
10124
+ "env": {
10125
+ "type": "object",
10126
+ "properties": {
10127
+ "account": {
10128
+ "type": "string",
10129
+ "description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters).",
10130
+ "default": ""
10131
+ },
10132
+ "permission_guard": {
10133
+ "type": "array",
10134
+ "items": {
10135
+ "type": "string"
10136
+ },
10137
+ "description": "List of permission guard IDs. Used to extend additional operation permissions (requires verification and configuration in the Permission object)."
10138
+ },
10139
+ "no_cache": {
10140
+ "type": "boolean",
10141
+ "description": "Whether to disable caching."
10142
+ },
10143
+ "network": {
10144
+ "type": "string",
10145
+ "enum": [
10146
+ "localnet",
10147
+ "testnet",
10148
+ "mainnet"
10149
+ ],
10150
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
10151
+ },
10152
+ "referrer": {
10153
+ "$ref": "#/definitions/data_gen_proof/properties/env/properties/account",
10154
+ "description": "Referrer ID. If the user is using the network for the first time, the referrer ID will be recorded."
10155
+ },
10156
+ "confirmed": {
10157
+ "type": "boolean",
10158
+ "description": "Phase 2 ConfirmGate: set to true to proceed after a 'pending_confirmation' result. The operation is NOT executed until you re-call with confirmed=true after user consent."
10159
+ },
10160
+ "user_intent_phrases": {
10161
+ "type": "array",
10162
+ "items": {
10163
+ "type": "string"
10164
+ },
10165
+ "description": "Phase 2 ConfirmGate: explicit user intent phrases collected from conversation context (e.g. 'use default account', 'force publish'). Used to bypass confirmation rules whose bypass_on_explicit_intent matches."
10166
+ },
10167
+ "project": {
10168
+ "type": "string",
10169
+ "description": "Phase 2 ProjectService: explicit project prefix to assign this object to (e.g. 'myshop'). When set, the object is tagged with 'project:<prefix>' automatically. Overrides the prefix parsed from the object name."
10170
+ },
10171
+ "client_schema_version": {
10172
+ "type": "string",
10173
+ "description": "Client-side schema version (semver, e.g. '1.0.0'). When provided, the server checks compatibility and attaches warnings if mismatched."
10174
+ },
10175
+ "schema_strict_mode": {
10176
+ "type": "boolean",
10177
+ "description": "When true, schema incompatibility returns an error instead of a warning. Default: false (warn mode)."
10178
+ }
10179
+ },
10180
+ "additionalProperties": false,
10181
+ "description": "IMPORTANT: Execution environment includes: account for signing operations, network selection ([object Object]), additional Guard permissions, and more. Used to specify context information during the call. If account is not specified, the default account (\"\") will be used."
10182
+ }
10183
+ },
10184
+ "required": [
10185
+ "proof",
10186
+ "server_pubkey",
10187
+ "server_signature",
10188
+ "proof_type",
10189
+ "description"
10190
+ ],
10191
+ "additionalProperties": false,
10192
+ "description": "Generate a new Proof object on-chain"
8720
10193
  }
8721
10194
  }
8722
10195
  }