@wowok/agent-mcp 2.2.13 → 2.2.14

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 (126) hide show
  1. package/dist/index.js +42 -98
  2. package/dist/schema-query/index.d.ts +29 -0
  3. package/dist/schema-query/index.js +149 -0
  4. package/dist/schemas/account_operation.schema.json +255 -0
  5. package/dist/schemas/guard2file.schema.json +71 -0
  6. package/dist/schemas/index.json +139 -0
  7. package/dist/schemas/local_info_operation.schema.json +142 -0
  8. package/dist/schemas/local_mark_operation.schema.json +119 -0
  9. package/dist/schemas/machineNode2file.schema.json +71 -0
  10. package/dist/schemas/messenger_operation.schema.json +1393 -0
  11. package/dist/schemas/onchain_events.schema.json +113 -0
  12. package/dist/schemas/onchain_operations.schema.json +376 -0
  13. package/dist/schemas/onchain_operations_allocation.schema.json +914 -0
  14. package/dist/schemas/onchain_operations_arbitration.schema.json +1166 -0
  15. package/dist/schemas/onchain_operations_contact.schema.json +853 -0
  16. package/dist/schemas/onchain_operations_demand.schema.json +984 -0
  17. package/dist/schemas/onchain_operations_gen_passport.schema.json +1141 -0
  18. package/dist/schemas/onchain_operations_guard.schema.json +713 -0
  19. package/dist/schemas/onchain_operations_machine.schema.json +1347 -0
  20. package/dist/schemas/onchain_operations_order.schema.json +830 -0
  21. package/dist/schemas/onchain_operations_payment.schema.json +717 -0
  22. package/dist/schemas/onchain_operations_permission.schema.json +1088 -0
  23. package/dist/schemas/onchain_operations_personal.schema.json +1282 -0
  24. package/dist/schemas/onchain_operations_progress.schema.json +751 -0
  25. package/dist/schemas/onchain_operations_repository.schema.json +1572 -0
  26. package/dist/schemas/onchain_operations_reward.schema.json +955 -0
  27. package/dist/schemas/onchain_operations_service.schema.json +1411 -0
  28. package/dist/schemas/onchain_operations_treasury.schema.json +1155 -0
  29. package/dist/schemas/onchain_table_data.schema.json +35 -0
  30. package/dist/schemas/operations/guard.json +163 -0
  31. package/dist/schemas/operations/permission.json +22 -0
  32. package/dist/schemas/query_toolkit.schema.json +32 -0
  33. package/dist/schemas/schema_query.schema.json +33 -0
  34. package/dist/schemas/wip_file.schema.json +27 -0
  35. package/dist/schemas/wowok_buildin_info.schema.json +487 -0
  36. package/package.json +7 -5
  37. package/dist/docs/index.d.ts +0 -3
  38. package/dist/docs/index.js +0 -2
  39. package/dist/docs/loader.d.ts +0 -12
  40. package/dist/docs/loader.js +0 -177
  41. package/dist/docs/search.d.ts +0 -17
  42. package/dist/docs/search.js +0 -325
  43. package/dist/docs/types.d.ts +0 -55
  44. package/dist/docs/types.js +0 -1
  45. package/docs/README.md +0 -249
  46. package/docs/WIP.md +0 -388
  47. package/docs/WTS.md +0 -536
  48. package/docs/docs/account.md +0 -914
  49. package/docs/docs/allocation.md +0 -635
  50. package/docs/docs/arbitration.md +0 -1804
  51. package/docs/docs/arbitration_state_machine.md +0 -270
  52. package/docs/docs/contact.md +0 -709
  53. package/docs/docs/demand.md +0 -948
  54. package/docs/docs/guard.md +0 -1465
  55. package/docs/docs/localinfo.md +0 -432
  56. package/docs/docs/localmark.md +0 -583
  57. package/docs/docs/machine.md +0 -2490
  58. package/docs/docs/messenger.md +0 -2098
  59. package/docs/docs/onchain_events.md +0 -267
  60. package/docs/docs/order.md +0 -1001
  61. package/docs/docs/payment.md +0 -512
  62. package/docs/docs/permission.md +0 -1438
  63. package/docs/docs/personal.md +0 -742
  64. package/docs/docs/progress.md +0 -1748
  65. package/docs/docs/query.md +0 -467
  66. package/docs/docs/repository.md +0 -1043
  67. package/docs/docs/reward.md +0 -833
  68. package/docs/docs/service.md +0 -2130
  69. package/docs/docs/stage-01-introduction.md +0 -243
  70. package/docs/docs/stage-02-trust.md +0 -302
  71. package/docs/docs/stage-03-collaboration.md +0 -337
  72. package/docs/docs/stage-04-transaction.md +0 -277
  73. package/docs/docs/stage-05-business.md +0 -151
  74. package/docs/docs/stage-06-personal.md +0 -203
  75. package/docs/docs/stage-07-query.md +0 -572
  76. package/docs/docs/stage-08-examples.md +0 -184
  77. package/docs/docs/treasury.md +0 -1149
  78. package/docs/docs/wowok_buildin_info.md +0 -740
  79. package/docs/examples/Insurance/Insurance.md +0 -594
  80. package/docs/examples/Insurance/Insurance_TestResults.md +0 -481
  81. package/docs/examples/Insurance/insurance_complete_guard_v1.json +0 -50
  82. package/docs/examples/MyShop/MyShop.md +0 -1353
  83. package/docs/examples/MyShop/MyShop_TestResults.md +0 -1003
  84. package/docs/examples/MyShop_Advanced/MyShop_Advanced.md +0 -1898
  85. package/docs/examples/MyShop_Advanced/MyShop_Advanced_MerchantSystem_TestResults.md +0 -1297
  86. package/docs/examples/MyShop_Advanced/MyShop_Advanced_OrderFlow_TestResults.md +0 -743
  87. package/docs/examples/MyShop_Advanced/machine_nodes.json +0 -222
  88. package/docs/examples/ThreeBody_Signature/ThreeBody_Signature.md +0 -776
  89. package/docs/examples/ThreeBody_Signature/ThreeBody_Signature_TestResults.md +0 -599
  90. package/docs/examples/Travel/Travel.md +0 -1157
  91. package/docs/examples/Travel/Travel_TestResults.md +0 -743
  92. package/docs/examples/Travel/calc-weather-timestamps.js +0 -8
  93. package/docs/examples/Travel/travel_machine_v2_export.json +0 -104
  94. package/docs/examples/Travel/weather_check_guard_v1.json +0 -51
  95. package/docs/skills/WOWOK.md +0 -650
  96. package/docs/skills/onchain_operations/_common.md +0 -406
  97. package/docs/skills/onchain_operations/_index.md +0 -196
  98. package/docs/skills/onchain_operations/allocation.md +0 -28
  99. package/docs/skills/onchain_operations/arbitration.md +0 -106
  100. package/docs/skills/onchain_operations/contact.md +0 -40
  101. package/docs/skills/onchain_operations/demand.md +0 -53
  102. package/docs/skills/onchain_operations/gen_passport.md +0 -23
  103. package/docs/skills/onchain_operations/guard.md +0 -56
  104. package/docs/skills/onchain_operations/machine.md +0 -89
  105. package/docs/skills/onchain_operations/order.md +0 -56
  106. package/docs/skills/onchain_operations/payment.md +0 -24
  107. package/docs/skills/onchain_operations/permission.md +0 -68
  108. package/docs/skills/onchain_operations/personal.md +0 -58
  109. package/docs/skills/onchain_operations/progress.md +0 -38
  110. package/docs/skills/onchain_operations/repository.md +0 -70
  111. package/docs/skills/onchain_operations/reward.md +0 -38
  112. package/docs/skills/onchain_operations/service.md +0 -78
  113. package/docs/skills/onchain_operations/treasury.md +0 -68
  114. package/docs/skills/schema-account_operation.md +0 -402
  115. package/docs/skills/schema-guard2file.md +0 -153
  116. package/docs/skills/schema-local_info_operation.md +0 -160
  117. package/docs/skills/schema-local_mark_operation.md +0 -148
  118. package/docs/skills/schema-machineNode2file.md +0 -155
  119. package/docs/skills/schema-messenger_operation.md +0 -547
  120. package/docs/skills/schema-onchain_events.md +0 -201
  121. package/docs/skills/schema-onchain_table_data.md +0 -334
  122. package/docs/skills/schema-query_toolkit.md +0 -395
  123. package/docs/skills/schema-wip_file.md +0 -240
  124. package/docs/skills/schema-wowok_buildin_info.md +0 -296
  125. package/docs/wip-examples/three_body.html +0 -57
  126. package/docs/wip-examples/three_body.wip +0 -30
@@ -0,0 +1,955 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://wowok.net/schemas/onchain_operations_reward.json",
4
+ "title": "Reward Operation",
5
+ "description": "On-chain reward operation schema",
6
+ "type": "object",
7
+ "properties": {
8
+ "operation_type": {
9
+ "const": "reward"
10
+ },
11
+ "data": {
12
+ "$ref": "#/definitions/data",
13
+ "$schema": "http://json-schema.org/draft-07/schema#"
14
+ },
15
+ "env": {
16
+ "$ref": "#/definitions/env",
17
+ "$schema": "http://json-schema.org/draft-07/schema#"
18
+ },
19
+ "submission": {
20
+ "$ref": "#/definitions/submission",
21
+ "$schema": "http://json-schema.org/draft-07/schema#"
22
+ }
23
+ },
24
+ "required": [
25
+ "operation_type",
26
+ "data"
27
+ ],
28
+ "definitions": {
29
+ "data": {
30
+ "type": "object",
31
+ "properties": {
32
+ "object": {
33
+ "anyOf": [
34
+ {
35
+ "type": "string",
36
+ "description": "String format: Reference an EXISTING object by its name (local mark) or on-chain object ID. Use this when the object already exists and you want to reference it."
37
+ },
38
+ {
39
+ "type": "object",
40
+ "properties": {
41
+ "name": {
42
+ "type": "string",
43
+ "description": "The name of the object"
44
+ },
45
+ "tags": {
46
+ "type": "array",
47
+ "items": {
48
+ "type": "string"
49
+ },
50
+ "description": "The tags of the object"
51
+ },
52
+ "onChain": {
53
+ "type": "boolean",
54
+ "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."
55
+ },
56
+ "replaceExistName": {
57
+ "type": "boolean",
58
+ "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)."
59
+ },
60
+ "permission": {
61
+ "anyOf": [
62
+ {
63
+ "$ref": "#/definitions/data/properties/object/anyOf/0",
64
+ "description": "String format: Reference an EXISTING object by its name (local mark) or on-chain object ID. Example: 'my-object' or '0x1234...'"
65
+ },
66
+ {
67
+ "type": "object",
68
+ "properties": {
69
+ "name": {
70
+ "$ref": "#/definitions/data/properties/object/anyOf/1/properties/name"
71
+ },
72
+ "tags": {
73
+ "$ref": "#/definitions/data/properties/object/anyOf/1/properties/tags"
74
+ },
75
+ "onChain": {
76
+ "$ref": "#/definitions/data/properties/object/anyOf/1/properties/onChain"
77
+ },
78
+ "replaceExistName": {
79
+ "$ref": "#/definitions/data/properties/object/anyOf/1/properties/replaceExistName"
80
+ },
81
+ "description": {
82
+ "type": "string",
83
+ "description": "The description of the object"
84
+ }
85
+ },
86
+ "additionalProperties": false,
87
+ "description": "Object format: CREATE a NEW object with name, optional description, and visibility settings. Extends NamedObjectSchema with an additional 'description' field for detailed object information."
88
+ }
89
+ ],
90
+ "description": "Two ways to specify an object: (1) STRING - Reference an EXISTING object by name or ID; (2) OBJECT - CREATE a NEW object with full configuration including optional name, tags, description, and visibility settings (local private by default, or public on-chain with onChain:true)."
91
+ },
92
+ "type_parameter": {
93
+ "type": "string",
94
+ "description": "Type parameter (token type) of the on-chain object, e.g. '0x2::wow::WOW'. Defines what token this object can use for payments.",
95
+ "default": "0x2::wow::WOW"
96
+ }
97
+ },
98
+ "additionalProperties": false,
99
+ "description": "Object format: CREATE a NEW object with COMPLETE configuration including: optional name, tags, description, token type for payments (e.g., '0x2::wow::WOW'), AND Permission-based access control. Use this for creating sophisticated objects with both payment token specification and permission management."
100
+ }
101
+ ],
102
+ "description": "Two ways to specify an object: (1) STRING - Reference an EXISTING object by name or ID; (2) OBJECT - CREATE a NEW object with full configuration including name, tags, description, token type for payments, and Permission-based access control. The object format is used when you need both token specification AND permission management."
103
+ },
104
+ "claim": {
105
+ "$ref": "#/definitions/data/properties/object/anyOf/0",
106
+ "description": "Guard object ID. Used to verify Guard and start the reward distribution process corresponding to this Guard."
107
+ },
108
+ "description": {
109
+ "type": "string",
110
+ "description": "Description string (max 4000 bcs characters)"
111
+ },
112
+ "coin_add": {
113
+ "anyOf": [
114
+ {
115
+ "type": "object",
116
+ "properties": {
117
+ "balance": {
118
+ "type": [
119
+ "number",
120
+ "string"
121
+ ],
122
+ "description": "Balance type"
123
+ }
124
+ },
125
+ "required": [
126
+ "balance"
127
+ ],
128
+ "additionalProperties": false,
129
+ "description": "Specify an amount value."
130
+ },
131
+ {
132
+ "type": "object",
133
+ "properties": {
134
+ "coin": {
135
+ "type": "string",
136
+ "description": "Coin object ID or name(local mark). Use a specified Coin object."
137
+ }
138
+ },
139
+ "required": [
140
+ "coin"
141
+ ],
142
+ "additionalProperties": false
143
+ }
144
+ ],
145
+ "description": "Add amount to Reward object."
146
+ },
147
+ "receive": {
148
+ "anyOf": [
149
+ {
150
+ "type": "object",
151
+ "properties": {
152
+ "balance": {
153
+ "$ref": "#/definitions/data/properties/coin_add/anyOf/0/properties/balance"
154
+ },
155
+ "token_type": {
156
+ "type": "string",
157
+ "description": "Asset type of Coin objects. Supports CoinWrapper<...> format for order receive operations."
158
+ },
159
+ "received": {
160
+ "type": "array",
161
+ "items": {
162
+ "type": "object",
163
+ "properties": {
164
+ "id": {
165
+ "type": "string",
166
+ "description": "Received CoinWrapper object ID"
167
+ },
168
+ "balance": {
169
+ "$ref": "#/definitions/data/properties/coin_add/anyOf/0/properties/balance"
170
+ },
171
+ "payment": {
172
+ "type": "string",
173
+ "description": "Payment object ID"
174
+ }
175
+ },
176
+ "required": [
177
+ "id",
178
+ "balance",
179
+ "payment"
180
+ ],
181
+ "additionalProperties": false,
182
+ "description": "Received CoinWrapper object record"
183
+ },
184
+ "description": "Received records of Coin objects"
185
+ }
186
+ },
187
+ "required": [
188
+ "balance",
189
+ "token_type",
190
+ "received"
191
+ ],
192
+ "additionalProperties": false,
193
+ "description": "Received record of Coin objects"
194
+ },
195
+ {
196
+ "type": "string",
197
+ "const": "recently"
198
+ }
199
+ ],
200
+ "description": "Unwrap CoinWrapper objects received by Reward object and store them in pending balance."
201
+ },
202
+ "guard_add": {
203
+ "type": "array",
204
+ "items": {
205
+ "type": "object",
206
+ "properties": {
207
+ "guard": {
208
+ "$ref": "#/definitions/data/properties/object/anyOf/0",
209
+ "description": "Guard object ID or name."
210
+ },
211
+ "recipient": {
212
+ "anyOf": [
213
+ {
214
+ "type": "object",
215
+ "properties": {
216
+ "GuardIdentifier": {
217
+ "type": "integer",
218
+ "minimum": 0,
219
+ "maximum": 255,
220
+ "description": "Identifier (0-255) for data lookup in Guard table."
221
+ }
222
+ },
223
+ "required": [
224
+ "GuardIdentifier"
225
+ ],
226
+ "additionalProperties": false,
227
+ "description": "Guard verified recipient ID. Get recipient ID from specified data index in Guard table. The ID must be of address type."
228
+ },
229
+ {
230
+ "type": "object",
231
+ "properties": {
232
+ "Entity": {
233
+ "type": "object",
234
+ "properties": {
235
+ "name_or_address": {
236
+ "$ref": "#/definitions/data/properties/claim",
237
+ "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)."
238
+ },
239
+ "local_mark_first": {
240
+ "type": "boolean",
241
+ "description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks"
242
+ }
243
+ },
244
+ "additionalProperties": false,
245
+ "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."
246
+ }
247
+ },
248
+ "required": [
249
+ "Entity"
250
+ ],
251
+ "additionalProperties": false,
252
+ "description": "Determined ID"
253
+ },
254
+ {
255
+ "type": "object",
256
+ "properties": {
257
+ "Signer": {
258
+ "type": "string",
259
+ "const": "signer"
260
+ }
261
+ },
262
+ "required": [
263
+ "Signer"
264
+ ],
265
+ "additionalProperties": false,
266
+ "description": "Current transaction signer ID"
267
+ }
268
+ ],
269
+ "description": "Recipient ID"
270
+ },
271
+ "amount": {
272
+ "anyOf": [
273
+ {
274
+ "type": "object",
275
+ "properties": {
276
+ "type": {
277
+ "type": "string",
278
+ "const": "GuardU64Identifier"
279
+ },
280
+ "value": {
281
+ "$ref": "#/definitions/data/properties/guard_add/items/properties/recipient/anyOf/0/properties/GuardIdentifier"
282
+ }
283
+ },
284
+ "required": [
285
+ "type",
286
+ "value"
287
+ ],
288
+ "additionalProperties": false,
289
+ "description": "Guard verified amount. Get amount value from specified data index in Guard table. The value type must be u64."
290
+ },
291
+ {
292
+ "type": "object",
293
+ "properties": {
294
+ "type": {
295
+ "type": "string",
296
+ "const": "Fixed"
297
+ },
298
+ "value": {
299
+ "$ref": "#/definitions/data/properties/coin_add/anyOf/0/properties/balance"
300
+ }
301
+ },
302
+ "required": [
303
+ "type",
304
+ "value"
305
+ ],
306
+ "additionalProperties": false,
307
+ "description": "Fixed amount"
308
+ }
309
+ ],
310
+ "description": "Reward amount"
311
+ },
312
+ "expiration_time": {
313
+ "type": "number",
314
+ "description": "Reward Guard expiration time. If set, the reward cannot be claimed by this guard after the expiration time. If not specified, Reward Guard is permanently valid."
315
+ },
316
+ "store_from_id": {
317
+ "anyOf": [
318
+ {
319
+ "$ref": "#/definitions/data/properties/guard_add/items/properties/recipient/anyOf/0/properties/GuardIdentifier"
320
+ },
321
+ {
322
+ "type": "null"
323
+ }
324
+ ],
325
+ "description": "Guard table data index for record storage. The value at this index (address or number, including submitted values) will be stored in the record for Guard verification purposes, such as controlling operation frequency."
326
+ }
327
+ },
328
+ "required": [
329
+ "guard",
330
+ "recipient",
331
+ "amount"
332
+ ],
333
+ "additionalProperties": false,
334
+ "description": "Reward Guard type"
335
+ },
336
+ "description": "Add Guard to Reward object."
337
+ },
338
+ "guard_remove_expired": {
339
+ "type": "boolean",
340
+ "description": "Whether to remove expired Guard."
341
+ },
342
+ "guard_expiration_time": {
343
+ "anyOf": [
344
+ {
345
+ "type": "integer",
346
+ "minimum": 1
347
+ },
348
+ {
349
+ "type": "null"
350
+ }
351
+ ],
352
+ "description": "Add expiration time(ms). Before this time expires, new Guard and fund allocation rules cannot be added."
353
+ },
354
+ "owner_receive": {
355
+ "anyOf": [
356
+ {
357
+ "type": "array",
358
+ "items": {
359
+ "type": "object",
360
+ "properties": {
361
+ "id": {
362
+ "type": "string",
363
+ "minLength": 1,
364
+ "description": "Received object ID"
365
+ },
366
+ "type": {
367
+ "type": "string",
368
+ "minLength": 1,
369
+ "description": "Object type"
370
+ },
371
+ "content_raw": {
372
+ "description": "Raw content data"
373
+ }
374
+ },
375
+ "required": [
376
+ "id",
377
+ "type"
378
+ ],
379
+ "additionalProperties": false,
380
+ "description": "Received normal object record"
381
+ }
382
+ },
383
+ {
384
+ "$ref": "#/definitions/data/properties/receive/anyOf/0"
385
+ },
386
+ {
387
+ "type": "string",
388
+ "const": "recently"
389
+ }
390
+ ],
391
+ "description": "Unwrap CoinWrapper objects and other objects received by this object and send them to the owner of its Permission object."
392
+ },
393
+ "um": {
394
+ "anyOf": [
395
+ {
396
+ "$ref": "#/definitions/data/properties/claim"
397
+ },
398
+ {
399
+ "type": "null"
400
+ }
401
+ ],
402
+ "description": "Contact object."
403
+ }
404
+ },
405
+ "required": [
406
+ "object"
407
+ ],
408
+ "additionalProperties": false,
409
+ "description": "On-chain Reward operations. USAGE: (1) CREATE NEW: Set 'object' field with OBJECT format {name, type_parameter, permission, ...} to create a Reward. NOTE: 'name' goes INSIDE 'object', NOT at the data root level.'permission' can be a new Permission object or reference an existing one - check 'object' field description for details. (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."
410
+ },
411
+ "env": {
412
+ "type": "object",
413
+ "properties": {
414
+ "account": {
415
+ "type": "string",
416
+ "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).",
417
+ "default": ""
418
+ },
419
+ "permission_guard": {
420
+ "type": "array",
421
+ "items": {
422
+ "type": "string"
423
+ },
424
+ "description": "List of permission guard IDs. Used to extend additional operation permissions (requires verification and configuration in the Permission object)."
425
+ },
426
+ "no_cache": {
427
+ "type": "boolean",
428
+ "description": "Whether to disable caching."
429
+ },
430
+ "network": {
431
+ "type": "string",
432
+ "enum": [
433
+ "localnet",
434
+ "testnet"
435
+ ],
436
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
437
+ },
438
+ "referrer": {
439
+ "$ref": "#/definitions/env/properties/account",
440
+ "description": "Referrer ID. If the user is using the network for the first time, the referrer ID will be recorded."
441
+ }
442
+ },
443
+ "additionalProperties": false,
444
+ "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."
445
+ },
446
+ "submission": {
447
+ "type": "object",
448
+ "properties": {
449
+ "type": {
450
+ "type": "string",
451
+ "const": "submission",
452
+ "description": "Type of call response: submission"
453
+ },
454
+ "guard": {
455
+ "type": "array",
456
+ "items": {
457
+ "type": "object",
458
+ "properties": {
459
+ "object": {
460
+ "type": "string",
461
+ "description": "Guard object name or ID."
462
+ },
463
+ "impack": {
464
+ "type": "boolean",
465
+ "description": "Whether the verification result of this Guard participates in the final verification logic. If true, the verification result of this Guard will be included in the final verification result; if false, the verification result of this Guard will not be included."
466
+ }
467
+ },
468
+ "required": [
469
+ "object",
470
+ "impack"
471
+ ],
472
+ "additionalProperties": false
473
+ }
474
+ },
475
+ "submission": {
476
+ "type": "array",
477
+ "items": {
478
+ "type": "object",
479
+ "properties": {
480
+ "guard": {
481
+ "$ref": "#/definitions/submission/properties/guard/items/properties/object",
482
+ "description": "Guard object name or ID."
483
+ },
484
+ "submission": {
485
+ "type": "array",
486
+ "items": {
487
+ "type": "object",
488
+ "properties": {
489
+ "identifier": {
490
+ "type": "integer",
491
+ "minimum": 0,
492
+ "maximum": 255,
493
+ "description": "Identifier (0-255) for data lookup in Guard table."
494
+ },
495
+ "b_submission": {
496
+ "type": "boolean",
497
+ "description": "Whether user submission is required for this data"
498
+ },
499
+ "value_type": {
500
+ "anyOf": [
501
+ {
502
+ "type": "number",
503
+ "const": 0,
504
+ "description": "Bool (0)"
505
+ },
506
+ {
507
+ "type": "number",
508
+ "const": 1,
509
+ "description": "Address (1)"
510
+ },
511
+ {
512
+ "type": "number",
513
+ "const": 2,
514
+ "description": "String (2)"
515
+ },
516
+ {
517
+ "type": "number",
518
+ "const": 3,
519
+ "description": "U8 (3)"
520
+ },
521
+ {
522
+ "type": "number",
523
+ "const": 4,
524
+ "description": "U16 (4)"
525
+ },
526
+ {
527
+ "type": "number",
528
+ "const": 5,
529
+ "description": "U32 (5)"
530
+ },
531
+ {
532
+ "type": "number",
533
+ "const": 6,
534
+ "description": "U64 (6)"
535
+ },
536
+ {
537
+ "type": "number",
538
+ "const": 7,
539
+ "description": "U128 (7)"
540
+ },
541
+ {
542
+ "type": "number",
543
+ "const": 8,
544
+ "description": "U256 (8)"
545
+ },
546
+ {
547
+ "type": "number",
548
+ "const": 9,
549
+ "description": "VecBool (9)"
550
+ },
551
+ {
552
+ "type": "number",
553
+ "const": 10,
554
+ "description": "VecAddress (10)"
555
+ },
556
+ {
557
+ "type": "number",
558
+ "const": 11,
559
+ "description": "VecString (11)"
560
+ },
561
+ {
562
+ "type": "number",
563
+ "const": 12,
564
+ "description": "VecU8 (12)"
565
+ },
566
+ {
567
+ "type": "number",
568
+ "const": 13,
569
+ "description": "VecU16 (13)"
570
+ },
571
+ {
572
+ "type": "number",
573
+ "const": 14,
574
+ "description": "VecU32 (14)"
575
+ },
576
+ {
577
+ "type": "number",
578
+ "const": 15,
579
+ "description": "VecU64 (15)"
580
+ },
581
+ {
582
+ "type": "number",
583
+ "const": 16,
584
+ "description": "VecU128 (16)"
585
+ },
586
+ {
587
+ "type": "number",
588
+ "const": 17,
589
+ "description": "VecU256 (17)"
590
+ },
591
+ {
592
+ "type": "number",
593
+ "const": 18,
594
+ "description": "VecVecU8 (18)"
595
+ },
596
+ {
597
+ "type": "string",
598
+ "const": "Bool",
599
+ "description": "Bool"
600
+ },
601
+ {
602
+ "type": "string",
603
+ "const": "Address",
604
+ "description": "Address"
605
+ },
606
+ {
607
+ "type": "string",
608
+ "const": "String",
609
+ "description": "String"
610
+ },
611
+ {
612
+ "type": "string",
613
+ "const": "U8",
614
+ "description": "U8"
615
+ },
616
+ {
617
+ "type": "string",
618
+ "const": "U16",
619
+ "description": "U16"
620
+ },
621
+ {
622
+ "type": "string",
623
+ "const": "U32",
624
+ "description": "U32"
625
+ },
626
+ {
627
+ "type": "string",
628
+ "const": "U64",
629
+ "description": "U64"
630
+ },
631
+ {
632
+ "type": "string",
633
+ "const": "U128",
634
+ "description": "U128"
635
+ },
636
+ {
637
+ "type": "string",
638
+ "const": "U256",
639
+ "description": "U256"
640
+ },
641
+ {
642
+ "type": "string",
643
+ "const": "VecBool",
644
+ "description": "VecBool"
645
+ },
646
+ {
647
+ "type": "string",
648
+ "const": "VecAddress",
649
+ "description": "VecAddress"
650
+ },
651
+ {
652
+ "type": "string",
653
+ "const": "VecString",
654
+ "description": "VecString"
655
+ },
656
+ {
657
+ "type": "string",
658
+ "const": "VecU8",
659
+ "description": "VecU8"
660
+ },
661
+ {
662
+ "type": "string",
663
+ "const": "VecU16",
664
+ "description": "VecU16"
665
+ },
666
+ {
667
+ "type": "string",
668
+ "const": "VecU32",
669
+ "description": "VecU32"
670
+ },
671
+ {
672
+ "type": "string",
673
+ "const": "VecU64",
674
+ "description": "VecU64"
675
+ },
676
+ {
677
+ "type": "string",
678
+ "const": "VecU128",
679
+ "description": "VecU128"
680
+ },
681
+ {
682
+ "type": "string",
683
+ "const": "VecU256",
684
+ "description": "VecU256"
685
+ },
686
+ {
687
+ "type": "string",
688
+ "const": "VecVecU8",
689
+ "description": "VecVecU8"
690
+ },
691
+ {
692
+ "type": "string",
693
+ "const": "bool",
694
+ "description": "bool"
695
+ },
696
+ {
697
+ "type": "string",
698
+ "const": "address",
699
+ "description": "address"
700
+ },
701
+ {
702
+ "type": "string",
703
+ "const": "string",
704
+ "description": "string"
705
+ },
706
+ {
707
+ "type": "string",
708
+ "const": "u8",
709
+ "description": "u8"
710
+ },
711
+ {
712
+ "type": "string",
713
+ "const": "u16",
714
+ "description": "u16"
715
+ },
716
+ {
717
+ "type": "string",
718
+ "const": "u32",
719
+ "description": "u32"
720
+ },
721
+ {
722
+ "type": "string",
723
+ "const": "u64",
724
+ "description": "u64"
725
+ },
726
+ {
727
+ "type": "string",
728
+ "const": "u128",
729
+ "description": "u128"
730
+ },
731
+ {
732
+ "type": "string",
733
+ "const": "u256",
734
+ "description": "u256"
735
+ },
736
+ {
737
+ "type": "string",
738
+ "const": "vecbool",
739
+ "description": "vecbool"
740
+ },
741
+ {
742
+ "type": "string",
743
+ "const": "vecaddress",
744
+ "description": "vecaddress"
745
+ },
746
+ {
747
+ "type": "string",
748
+ "const": "vecstring",
749
+ "description": "vecstring"
750
+ },
751
+ {
752
+ "type": "string",
753
+ "const": "vecu8",
754
+ "description": "vecu8"
755
+ },
756
+ {
757
+ "type": "string",
758
+ "const": "vecu16",
759
+ "description": "vecu16"
760
+ },
761
+ {
762
+ "type": "string",
763
+ "const": "vecu32",
764
+ "description": "vecu32"
765
+ },
766
+ {
767
+ "type": "string",
768
+ "const": "vecu64",
769
+ "description": "vecu64"
770
+ },
771
+ {
772
+ "type": "string",
773
+ "const": "vecu128",
774
+ "description": "vecu128"
775
+ },
776
+ {
777
+ "type": "string",
778
+ "const": "vecu256",
779
+ "description": "vecu256"
780
+ },
781
+ {
782
+ "type": "string",
783
+ "const": "vecvecu8",
784
+ "description": "vecvecu8"
785
+ }
786
+ ],
787
+ "description": "Type of the value"
788
+ },
789
+ "value": {
790
+ "anyOf": [
791
+ {
792
+ "type": "boolean"
793
+ },
794
+ {
795
+ "anyOf": [
796
+ {
797
+ "type": "object",
798
+ "properties": {
799
+ "name_or_address": {
800
+ "$ref": "#/definitions/submission/properties/guard/items/properties/object",
801
+ "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)."
802
+ },
803
+ "local_mark_first": {
804
+ "type": "boolean",
805
+ "description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks"
806
+ }
807
+ },
808
+ "additionalProperties": false,
809
+ "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."
810
+ },
811
+ {
812
+ "type": "string"
813
+ }
814
+ ]
815
+ },
816
+ {
817
+ "type": "string"
818
+ },
819
+ {
820
+ "type": "number"
821
+ },
822
+ {
823
+ "type": "array",
824
+ "items": {
825
+ "type": "boolean"
826
+ }
827
+ },
828
+ {
829
+ "anyOf": [
830
+ {
831
+ "type": "object",
832
+ "properties": {
833
+ "entities": {
834
+ "type": "array",
835
+ "items": {
836
+ "$ref": "#/definitions/submission/properties/submission/items/properties/submission/items/properties/value/anyOf/1/anyOf/0"
837
+ }
838
+ },
839
+ "check_all_founded": {
840
+ "type": "boolean",
841
+ "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"
842
+ }
843
+ },
844
+ "required": [
845
+ "entities"
846
+ ],
847
+ "additionalProperties": false,
848
+ "description": "Used to batch find account or object IDs by name"
849
+ },
850
+ {
851
+ "type": "array",
852
+ "items": {
853
+ "type": "string"
854
+ }
855
+ }
856
+ ]
857
+ },
858
+ {
859
+ "type": "array",
860
+ "items": {
861
+ "type": "string"
862
+ }
863
+ },
864
+ {
865
+ "type": "array",
866
+ "items": {
867
+ "type": "number"
868
+ }
869
+ },
870
+ {
871
+ "type": "array",
872
+ "items": {
873
+ "type": "array",
874
+ "items": {
875
+ "type": "number"
876
+ }
877
+ }
878
+ }
879
+ ],
880
+ "description": "The actual value data"
881
+ },
882
+ "name": {
883
+ "type": "string",
884
+ "default": "",
885
+ "description": "Name or description of this data"
886
+ },
887
+ "object_type": {
888
+ "type": "string",
889
+ "enum": [
890
+ "Permission",
891
+ "Repository",
892
+ "Arb",
893
+ "Arbitration",
894
+ "Service",
895
+ "Machine",
896
+ "Order",
897
+ "Progress",
898
+ "Payment",
899
+ "Treasury",
900
+ "Guard",
901
+ "Demand",
902
+ "Passport",
903
+ "Allocation",
904
+ "Resource",
905
+ "Reward",
906
+ "Discount",
907
+ "EntityRegistrar",
908
+ "EntityLinker",
909
+ "Proof",
910
+ "WReceivedObject",
911
+ "Contact",
912
+ "TableItem_ProgressHistory",
913
+ "TableItem_PermissionPerm",
914
+ "TableItem_DemandPresenter",
915
+ "TableItem_MachineNode",
916
+ "TableItem_TreasuryHistory",
917
+ "TableItem_RepositoryData",
918
+ "TableItem_RewardRecord",
919
+ "TableItem_EntityLinker",
920
+ "TableItem_AddressMark",
921
+ "TableItem_EntityRegistrar"
922
+ ],
923
+ "description": "Object type when value_type is Address and represents a specific object"
924
+ }
925
+ },
926
+ "required": [
927
+ "identifier",
928
+ "b_submission",
929
+ "value_type"
930
+ ],
931
+ "additionalProperties": false,
932
+ "description": "Guard table item"
933
+ },
934
+ "description": "User-submitted data required for Guard verification."
935
+ }
936
+ },
937
+ "required": [
938
+ "guard",
939
+ "submission"
940
+ ],
941
+ "additionalProperties": false,
942
+ "description": "Permission guard submission data."
943
+ }
944
+ }
945
+ },
946
+ "required": [
947
+ "type",
948
+ "guard",
949
+ "submission"
950
+ ],
951
+ "additionalProperties": false,
952
+ "description": "Guard verification submission data required to complete an operation. Contains: (1) 'guard' - array of Guard objects to verify, each with an object ID and an 'impack' flag indicating if its result affects the final outcome; (2) 'submission' - array of user data submissions matching the Guard's requirements. The operation proceeds only after all Guards with impack=true are successfully verified."
953
+ }
954
+ }
955
+ }