@wowok/agent-mcp 2.2.13 → 2.2.15

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/README.md +19 -11
  2. package/dist/index.js +44 -100
  3. package/dist/schema/query/index.js +1 -1
  4. package/dist/schema-query/index.d.ts +29 -0
  5. package/dist/schema-query/index.js +149 -0
  6. package/dist/schemas/account_operation.schema.json +255 -0
  7. package/dist/schemas/guard2file.schema.json +71 -0
  8. package/dist/schemas/index.json +139 -0
  9. package/dist/schemas/local_info_operation.schema.json +142 -0
  10. package/dist/schemas/local_mark_operation.schema.json +119 -0
  11. package/dist/schemas/machineNode2file.schema.json +71 -0
  12. package/dist/schemas/messenger_operation.schema.json +1393 -0
  13. package/dist/schemas/onchain_events.schema.json +113 -0
  14. package/dist/schemas/onchain_operations.schema.json +376 -0
  15. package/dist/schemas/onchain_operations_allocation.schema.json +914 -0
  16. package/dist/schemas/onchain_operations_arbitration.schema.json +1166 -0
  17. package/dist/schemas/onchain_operations_contact.schema.json +853 -0
  18. package/dist/schemas/onchain_operations_demand.schema.json +984 -0
  19. package/dist/schemas/onchain_operations_gen_passport.schema.json +1141 -0
  20. package/dist/schemas/onchain_operations_guard.schema.json +713 -0
  21. package/dist/schemas/onchain_operations_machine.schema.json +1347 -0
  22. package/dist/schemas/onchain_operations_order.schema.json +830 -0
  23. package/dist/schemas/onchain_operations_payment.schema.json +717 -0
  24. package/dist/schemas/onchain_operations_permission.schema.json +1088 -0
  25. package/dist/schemas/onchain_operations_personal.schema.json +1282 -0
  26. package/dist/schemas/onchain_operations_progress.schema.json +751 -0
  27. package/dist/schemas/onchain_operations_repository.schema.json +1572 -0
  28. package/dist/schemas/onchain_operations_reward.schema.json +955 -0
  29. package/dist/schemas/onchain_operations_service.schema.json +1411 -0
  30. package/dist/schemas/onchain_operations_treasury.schema.json +1155 -0
  31. package/dist/schemas/onchain_table_data.schema.json +35 -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,1088 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://wowok.net/schemas/onchain_operations_permission.json",
4
+ "title": "Permission Operation",
5
+ "description": "On-chain permission operation schema",
6
+ "type": "object",
7
+ "properties": {
8
+ "operation_type": {
9
+ "const": "permission"
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. Example: 'my-service' or '0x1234...'"
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
+ },
61
+ "additionalProperties": false,
62
+ "description": "Object format: CREATE a NEW object with specified properties. See NamedObjectSchema for details including 'name' (optional), 'tags' (optional), 'onChain' (whether to make name public), and 'replaceExistName' (force claim existing name)."
63
+ }
64
+ ],
65
+ "description": "Two ways to specify an object: (1) STRING - Reference an EXISTING object by name or ID; (2) OBJECT - CREATE a NEW object using NamedObjectSchema structure with optional name, tags, and visibility settings."
66
+ },
67
+ "description": {
68
+ "type": "string",
69
+ "description": "Description string (max 4000 bcs characters)"
70
+ },
71
+ "remark": {
72
+ "anyOf": [
73
+ {
74
+ "type": "object",
75
+ "properties": {
76
+ "op": {
77
+ "type": "string",
78
+ "const": "set"
79
+ },
80
+ "index": {
81
+ "type": "integer",
82
+ "description": "Permission index type"
83
+ },
84
+ "remark": {
85
+ "type": "string",
86
+ "description": "Permission remark."
87
+ }
88
+ },
89
+ "required": [
90
+ "op",
91
+ "index",
92
+ "remark"
93
+ ],
94
+ "additionalProperties": false,
95
+ "description": "Set remark for a permission."
96
+ },
97
+ {
98
+ "type": "object",
99
+ "properties": {
100
+ "op": {
101
+ "type": "string",
102
+ "const": "remove"
103
+ },
104
+ "index": {
105
+ "$ref": "#/definitions/data/properties/remark/anyOf/0/properties/index"
106
+ }
107
+ },
108
+ "required": [
109
+ "op",
110
+ "index"
111
+ ],
112
+ "additionalProperties": false,
113
+ "description": "Remove remark for a permission."
114
+ },
115
+ {
116
+ "type": "object",
117
+ "properties": {
118
+ "op": {
119
+ "type": "string",
120
+ "const": "clear"
121
+ }
122
+ },
123
+ "required": [
124
+ "op"
125
+ ],
126
+ "additionalProperties": false,
127
+ "description": "Clear remarks for all permissions."
128
+ }
129
+ ],
130
+ "description": "Set remarks for permissions."
131
+ },
132
+ "table": {
133
+ "anyOf": [
134
+ {
135
+ "type": "object",
136
+ "properties": {
137
+ "op": {
138
+ "type": "string",
139
+ "const": "add perm by index"
140
+ },
141
+ "index": {
142
+ "$ref": "#/definitions/data/properties/remark/anyOf/0/properties/index"
143
+ },
144
+ "entity": {
145
+ "type": "object",
146
+ "properties": {
147
+ "entities": {
148
+ "type": "array",
149
+ "items": {
150
+ "type": "object",
151
+ "properties": {
152
+ "name_or_address": {
153
+ "$ref": "#/definitions/data/properties/object/anyOf/0",
154
+ "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)."
155
+ },
156
+ "local_mark_first": {
157
+ "type": "boolean",
158
+ "description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks"
159
+ }
160
+ },
161
+ "additionalProperties": false,
162
+ "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."
163
+ }
164
+ },
165
+ "check_all_founded": {
166
+ "type": "boolean",
167
+ "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"
168
+ }
169
+ },
170
+ "required": [
171
+ "entities"
172
+ ],
173
+ "additionalProperties": false,
174
+ "description": "Used to batch find account or object IDs by name"
175
+ }
176
+ },
177
+ "required": [
178
+ "op",
179
+ "index",
180
+ "entity"
181
+ ],
182
+ "additionalProperties": false,
183
+ "description": "Grant a specific permission to multiple entities at once. USE WHEN: You need to assign the SAME permission to MULTIPLE users/Guards. Example: Give 'create service' permission to Alice, Bob, and Carol simultaneously."
184
+ },
185
+ {
186
+ "type": "object",
187
+ "properties": {
188
+ "op": {
189
+ "type": "string",
190
+ "const": "set perm by index"
191
+ },
192
+ "index": {
193
+ "$ref": "#/definitions/data/properties/remark/anyOf/0/properties/index"
194
+ },
195
+ "entity": {
196
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity"
197
+ }
198
+ },
199
+ "required": [
200
+ "op",
201
+ "index",
202
+ "entity"
203
+ ],
204
+ "additionalProperties": false,
205
+ "description": "Replace the entity list for a specific permission with a new set of entities. USE WHEN: You want to completely redefine WHO has this permission. WARNING: This overwrites the existing entity list for this permission."
206
+ },
207
+ {
208
+ "type": "object",
209
+ "properties": {
210
+ "op": {
211
+ "type": "string",
212
+ "const": "remove perm by index"
213
+ },
214
+ "index": {
215
+ "$ref": "#/definitions/data/properties/remark/anyOf/0/properties/index"
216
+ },
217
+ "entity": {
218
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity"
219
+ }
220
+ },
221
+ "required": [
222
+ "op",
223
+ "index",
224
+ "entity"
225
+ ],
226
+ "additionalProperties": false,
227
+ "description": "Revoke a specific permission from multiple entities at once. USE WHEN: You need to remove the SAME permission from MULTIPLE users/Guards. Example: Remove 'create service' permission from Alice, Bob, and Carol simultaneously."
228
+ },
229
+ {
230
+ "type": "object",
231
+ "properties": {
232
+ "op": {
233
+ "type": "string",
234
+ "const": "add perm by entity"
235
+ },
236
+ "entity": {
237
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
238
+ },
239
+ "index": {
240
+ "type": "array",
241
+ "items": {
242
+ "$ref": "#/definitions/data/properties/remark/anyOf/0/properties/index"
243
+ }
244
+ }
245
+ },
246
+ "required": [
247
+ "op",
248
+ "entity",
249
+ "index"
250
+ ],
251
+ "additionalProperties": false,
252
+ "description": "Grant multiple permissions to a single entity. USE WHEN: You need to give ONE user/Guard MANY permissions at once. Example: Give Alice all Machine-related permissions (create, edit, publish, pause, etc.) in one call."
253
+ },
254
+ {
255
+ "type": "object",
256
+ "properties": {
257
+ "op": {
258
+ "type": "string",
259
+ "const": "set perm by entity"
260
+ },
261
+ "entity": {
262
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
263
+ },
264
+ "index": {
265
+ "type": "array",
266
+ "items": {
267
+ "$ref": "#/definitions/data/properties/remark/anyOf/0/properties/index"
268
+ }
269
+ }
270
+ },
271
+ "required": [
272
+ "op",
273
+ "entity",
274
+ "index"
275
+ ],
276
+ "additionalProperties": false,
277
+ "description": "Replace all permissions of a single entity with a new permission set. USE WHEN: You want to completely redefine WHAT permissions a user/Guard has. WARNING: This overwrites all existing permissions for this entity."
278
+ },
279
+ {
280
+ "type": "object",
281
+ "properties": {
282
+ "op": {
283
+ "type": "string",
284
+ "const": "remove perm by entity"
285
+ },
286
+ "entity": {
287
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
288
+ },
289
+ "index": {
290
+ "type": "array",
291
+ "items": {
292
+ "$ref": "#/definitions/data/properties/remark/anyOf/0/properties/index"
293
+ }
294
+ }
295
+ },
296
+ "required": [
297
+ "op",
298
+ "entity",
299
+ "index"
300
+ ],
301
+ "additionalProperties": false,
302
+ "description": "Revoke multiple permissions from a single entity. USE WHEN: You need to remove MANY permissions from ONE user/Guard at once. Example: Remove all Machine-related permissions from Alice."
303
+ }
304
+ ],
305
+ "description": "Manage permission assignments using two approaches: (1) By Permission Index - add/set/remove entity IDs for a specific permission; (2) By Entity - add/set/remove permission indexes for a specific entity. Requires admin permission."
306
+ },
307
+ "entity": {
308
+ "anyOf": [
309
+ {
310
+ "type": "object",
311
+ "properties": {
312
+ "op": {
313
+ "type": "string",
314
+ "const": "swap"
315
+ },
316
+ "entity1": {
317
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
318
+ },
319
+ "entity2": {
320
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
321
+ }
322
+ },
323
+ "required": [
324
+ "op",
325
+ "entity1",
326
+ "entity2"
327
+ ],
328
+ "additionalProperties": false,
329
+ "description": "Swap all permission indexes between two entities."
330
+ },
331
+ {
332
+ "type": "object",
333
+ "properties": {
334
+ "op": {
335
+ "type": "string",
336
+ "const": "replace"
337
+ },
338
+ "entity1": {
339
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
340
+ },
341
+ "entity2": {
342
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
343
+ }
344
+ },
345
+ "required": [
346
+ "op",
347
+ "entity1",
348
+ "entity2"
349
+ ],
350
+ "additionalProperties": false,
351
+ "description": "Remove all permission indexes from entity1 and add them to entity2's permission indexes."
352
+ },
353
+ {
354
+ "type": "object",
355
+ "properties": {
356
+ "op": {
357
+ "type": "string",
358
+ "const": "copy"
359
+ },
360
+ "entity1": {
361
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
362
+ },
363
+ "entity2": {
364
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
365
+ }
366
+ },
367
+ "required": [
368
+ "op",
369
+ "entity1",
370
+ "entity2"
371
+ ],
372
+ "additionalProperties": false,
373
+ "description": "Add all permission indexes from entity1 to entity2's permission indexes."
374
+ },
375
+ {
376
+ "type": "object",
377
+ "properties": {
378
+ "op": {
379
+ "type": "string",
380
+ "const": "del"
381
+ },
382
+ "entity": {
383
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items"
384
+ }
385
+ },
386
+ "required": [
387
+ "op",
388
+ "entity"
389
+ ],
390
+ "additionalProperties": false,
391
+ "description": "Delete all permission indexes from an entity."
392
+ }
393
+ ],
394
+ "description": "Advanced entity permission operations: swap permissions between two entities, replace one entity's permissions with another's, copy permissions from one entity to another, or delete all permissions of an entity. Entity can be a user ID or Guard object ID. Requires admin permission."
395
+ },
396
+ "admin": {
397
+ "type": "object",
398
+ "properties": {
399
+ "op": {
400
+ "type": "string",
401
+ "enum": [
402
+ "add",
403
+ "remove",
404
+ "set"
405
+ ],
406
+ "description": "Admin operations: add, remove, set."
407
+ },
408
+ "addresses": {
409
+ "type": "object",
410
+ "properties": {
411
+ "entities": {
412
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities"
413
+ },
414
+ "check_all_founded": {
415
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/check_all_founded"
416
+ }
417
+ },
418
+ "required": [
419
+ "entities"
420
+ ],
421
+ "additionalProperties": false,
422
+ "description": "List of admin addresses."
423
+ }
424
+ },
425
+ "required": [
426
+ "op",
427
+ "addresses"
428
+ ],
429
+ "additionalProperties": false,
430
+ "description": "Manage Permission object admins: add new admins, remove existing admins, or set the complete admin list. Only the Permission object owner (builder) can perform this operation. The creator automatically becomes an admin with full permissions."
431
+ },
432
+ "apply": {
433
+ "type": "array",
434
+ "items": {
435
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items/properties/name_or_address"
436
+ },
437
+ "description": "Array of object IDs or names to operate on, apply the Permission object to these objects' permission control. Note: The signer must be the owner of the existing Permission objects for these objects"
438
+ },
439
+ "builder": {
440
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items",
441
+ "description": "Set or transfer ownership of the Permission object to the specified user ID. The creator automatically becomes the builder; only the builder can transfer ownership to other users."
442
+ },
443
+ "owner_receive": {
444
+ "anyOf": [
445
+ {
446
+ "type": "array",
447
+ "items": {
448
+ "type": "object",
449
+ "properties": {
450
+ "id": {
451
+ "type": "string",
452
+ "minLength": 1,
453
+ "description": "Received object ID"
454
+ },
455
+ "type": {
456
+ "type": "string",
457
+ "minLength": 1,
458
+ "description": "Object type"
459
+ },
460
+ "content_raw": {
461
+ "description": "Raw content data"
462
+ }
463
+ },
464
+ "required": [
465
+ "id",
466
+ "type"
467
+ ],
468
+ "additionalProperties": false,
469
+ "description": "Received normal object record"
470
+ }
471
+ },
472
+ {
473
+ "type": "object",
474
+ "properties": {
475
+ "balance": {
476
+ "type": [
477
+ "number",
478
+ "string"
479
+ ],
480
+ "description": "Balance type"
481
+ },
482
+ "token_type": {
483
+ "type": "string",
484
+ "description": "Asset type of Coin objects. Supports CoinWrapper<...> format for order receive operations."
485
+ },
486
+ "received": {
487
+ "type": "array",
488
+ "items": {
489
+ "type": "object",
490
+ "properties": {
491
+ "id": {
492
+ "type": "string",
493
+ "description": "Received CoinWrapper object ID"
494
+ },
495
+ "balance": {
496
+ "$ref": "#/definitions/data/properties/owner_receive/anyOf/1/properties/balance"
497
+ },
498
+ "payment": {
499
+ "type": "string",
500
+ "description": "Payment object ID"
501
+ }
502
+ },
503
+ "required": [
504
+ "id",
505
+ "balance",
506
+ "payment"
507
+ ],
508
+ "additionalProperties": false,
509
+ "description": "Received CoinWrapper object record"
510
+ },
511
+ "description": "Received records of Coin objects"
512
+ }
513
+ },
514
+ "required": [
515
+ "balance",
516
+ "token_type",
517
+ "received"
518
+ ],
519
+ "additionalProperties": false,
520
+ "description": "Received record of Coin objects"
521
+ },
522
+ {
523
+ "type": "string",
524
+ "const": "recently"
525
+ }
526
+ ],
527
+ "description": "Unwrap CoinWrapper objects and other objects received by this object and send them to the builder(owner)."
528
+ },
529
+ "um": {
530
+ "anyOf": [
531
+ {
532
+ "$ref": "#/definitions/data/properties/table/anyOf/0/properties/entity/properties/entities/items/properties/name_or_address"
533
+ },
534
+ {
535
+ "type": "null"
536
+ }
537
+ ],
538
+ "description": "Contact object."
539
+ }
540
+ },
541
+ "additionalProperties": false,
542
+ "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."
543
+ },
544
+ "env": {
545
+ "type": "object",
546
+ "properties": {
547
+ "account": {
548
+ "type": "string",
549
+ "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).",
550
+ "default": ""
551
+ },
552
+ "permission_guard": {
553
+ "type": "array",
554
+ "items": {
555
+ "type": "string"
556
+ },
557
+ "description": "List of permission guard IDs. Used to extend additional operation permissions (requires verification and configuration in the Permission object)."
558
+ },
559
+ "no_cache": {
560
+ "type": "boolean",
561
+ "description": "Whether to disable caching."
562
+ },
563
+ "network": {
564
+ "type": "string",
565
+ "enum": [
566
+ "localnet",
567
+ "testnet"
568
+ ],
569
+ "description": "Network entrypoint: Specifies which network the operation occurs on"
570
+ },
571
+ "referrer": {
572
+ "$ref": "#/definitions/env/properties/account",
573
+ "description": "Referrer ID. If the user is using the network for the first time, the referrer ID will be recorded."
574
+ }
575
+ },
576
+ "additionalProperties": false,
577
+ "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."
578
+ },
579
+ "submission": {
580
+ "type": "object",
581
+ "properties": {
582
+ "type": {
583
+ "type": "string",
584
+ "const": "submission",
585
+ "description": "Type of call response: submission"
586
+ },
587
+ "guard": {
588
+ "type": "array",
589
+ "items": {
590
+ "type": "object",
591
+ "properties": {
592
+ "object": {
593
+ "type": "string",
594
+ "description": "Guard object name or ID."
595
+ },
596
+ "impack": {
597
+ "type": "boolean",
598
+ "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."
599
+ }
600
+ },
601
+ "required": [
602
+ "object",
603
+ "impack"
604
+ ],
605
+ "additionalProperties": false
606
+ }
607
+ },
608
+ "submission": {
609
+ "type": "array",
610
+ "items": {
611
+ "type": "object",
612
+ "properties": {
613
+ "guard": {
614
+ "$ref": "#/definitions/submission/properties/guard/items/properties/object",
615
+ "description": "Guard object name or ID."
616
+ },
617
+ "submission": {
618
+ "type": "array",
619
+ "items": {
620
+ "type": "object",
621
+ "properties": {
622
+ "identifier": {
623
+ "type": "integer",
624
+ "minimum": 0,
625
+ "maximum": 255,
626
+ "description": "Identifier (0-255) for data lookup in Guard table."
627
+ },
628
+ "b_submission": {
629
+ "type": "boolean",
630
+ "description": "Whether user submission is required for this data"
631
+ },
632
+ "value_type": {
633
+ "anyOf": [
634
+ {
635
+ "type": "number",
636
+ "const": 0,
637
+ "description": "Bool (0)"
638
+ },
639
+ {
640
+ "type": "number",
641
+ "const": 1,
642
+ "description": "Address (1)"
643
+ },
644
+ {
645
+ "type": "number",
646
+ "const": 2,
647
+ "description": "String (2)"
648
+ },
649
+ {
650
+ "type": "number",
651
+ "const": 3,
652
+ "description": "U8 (3)"
653
+ },
654
+ {
655
+ "type": "number",
656
+ "const": 4,
657
+ "description": "U16 (4)"
658
+ },
659
+ {
660
+ "type": "number",
661
+ "const": 5,
662
+ "description": "U32 (5)"
663
+ },
664
+ {
665
+ "type": "number",
666
+ "const": 6,
667
+ "description": "U64 (6)"
668
+ },
669
+ {
670
+ "type": "number",
671
+ "const": 7,
672
+ "description": "U128 (7)"
673
+ },
674
+ {
675
+ "type": "number",
676
+ "const": 8,
677
+ "description": "U256 (8)"
678
+ },
679
+ {
680
+ "type": "number",
681
+ "const": 9,
682
+ "description": "VecBool (9)"
683
+ },
684
+ {
685
+ "type": "number",
686
+ "const": 10,
687
+ "description": "VecAddress (10)"
688
+ },
689
+ {
690
+ "type": "number",
691
+ "const": 11,
692
+ "description": "VecString (11)"
693
+ },
694
+ {
695
+ "type": "number",
696
+ "const": 12,
697
+ "description": "VecU8 (12)"
698
+ },
699
+ {
700
+ "type": "number",
701
+ "const": 13,
702
+ "description": "VecU16 (13)"
703
+ },
704
+ {
705
+ "type": "number",
706
+ "const": 14,
707
+ "description": "VecU32 (14)"
708
+ },
709
+ {
710
+ "type": "number",
711
+ "const": 15,
712
+ "description": "VecU64 (15)"
713
+ },
714
+ {
715
+ "type": "number",
716
+ "const": 16,
717
+ "description": "VecU128 (16)"
718
+ },
719
+ {
720
+ "type": "number",
721
+ "const": 17,
722
+ "description": "VecU256 (17)"
723
+ },
724
+ {
725
+ "type": "number",
726
+ "const": 18,
727
+ "description": "VecVecU8 (18)"
728
+ },
729
+ {
730
+ "type": "string",
731
+ "const": "Bool",
732
+ "description": "Bool"
733
+ },
734
+ {
735
+ "type": "string",
736
+ "const": "Address",
737
+ "description": "Address"
738
+ },
739
+ {
740
+ "type": "string",
741
+ "const": "String",
742
+ "description": "String"
743
+ },
744
+ {
745
+ "type": "string",
746
+ "const": "U8",
747
+ "description": "U8"
748
+ },
749
+ {
750
+ "type": "string",
751
+ "const": "U16",
752
+ "description": "U16"
753
+ },
754
+ {
755
+ "type": "string",
756
+ "const": "U32",
757
+ "description": "U32"
758
+ },
759
+ {
760
+ "type": "string",
761
+ "const": "U64",
762
+ "description": "U64"
763
+ },
764
+ {
765
+ "type": "string",
766
+ "const": "U128",
767
+ "description": "U128"
768
+ },
769
+ {
770
+ "type": "string",
771
+ "const": "U256",
772
+ "description": "U256"
773
+ },
774
+ {
775
+ "type": "string",
776
+ "const": "VecBool",
777
+ "description": "VecBool"
778
+ },
779
+ {
780
+ "type": "string",
781
+ "const": "VecAddress",
782
+ "description": "VecAddress"
783
+ },
784
+ {
785
+ "type": "string",
786
+ "const": "VecString",
787
+ "description": "VecString"
788
+ },
789
+ {
790
+ "type": "string",
791
+ "const": "VecU8",
792
+ "description": "VecU8"
793
+ },
794
+ {
795
+ "type": "string",
796
+ "const": "VecU16",
797
+ "description": "VecU16"
798
+ },
799
+ {
800
+ "type": "string",
801
+ "const": "VecU32",
802
+ "description": "VecU32"
803
+ },
804
+ {
805
+ "type": "string",
806
+ "const": "VecU64",
807
+ "description": "VecU64"
808
+ },
809
+ {
810
+ "type": "string",
811
+ "const": "VecU128",
812
+ "description": "VecU128"
813
+ },
814
+ {
815
+ "type": "string",
816
+ "const": "VecU256",
817
+ "description": "VecU256"
818
+ },
819
+ {
820
+ "type": "string",
821
+ "const": "VecVecU8",
822
+ "description": "VecVecU8"
823
+ },
824
+ {
825
+ "type": "string",
826
+ "const": "bool",
827
+ "description": "bool"
828
+ },
829
+ {
830
+ "type": "string",
831
+ "const": "address",
832
+ "description": "address"
833
+ },
834
+ {
835
+ "type": "string",
836
+ "const": "string",
837
+ "description": "string"
838
+ },
839
+ {
840
+ "type": "string",
841
+ "const": "u8",
842
+ "description": "u8"
843
+ },
844
+ {
845
+ "type": "string",
846
+ "const": "u16",
847
+ "description": "u16"
848
+ },
849
+ {
850
+ "type": "string",
851
+ "const": "u32",
852
+ "description": "u32"
853
+ },
854
+ {
855
+ "type": "string",
856
+ "const": "u64",
857
+ "description": "u64"
858
+ },
859
+ {
860
+ "type": "string",
861
+ "const": "u128",
862
+ "description": "u128"
863
+ },
864
+ {
865
+ "type": "string",
866
+ "const": "u256",
867
+ "description": "u256"
868
+ },
869
+ {
870
+ "type": "string",
871
+ "const": "vecbool",
872
+ "description": "vecbool"
873
+ },
874
+ {
875
+ "type": "string",
876
+ "const": "vecaddress",
877
+ "description": "vecaddress"
878
+ },
879
+ {
880
+ "type": "string",
881
+ "const": "vecstring",
882
+ "description": "vecstring"
883
+ },
884
+ {
885
+ "type": "string",
886
+ "const": "vecu8",
887
+ "description": "vecu8"
888
+ },
889
+ {
890
+ "type": "string",
891
+ "const": "vecu16",
892
+ "description": "vecu16"
893
+ },
894
+ {
895
+ "type": "string",
896
+ "const": "vecu32",
897
+ "description": "vecu32"
898
+ },
899
+ {
900
+ "type": "string",
901
+ "const": "vecu64",
902
+ "description": "vecu64"
903
+ },
904
+ {
905
+ "type": "string",
906
+ "const": "vecu128",
907
+ "description": "vecu128"
908
+ },
909
+ {
910
+ "type": "string",
911
+ "const": "vecu256",
912
+ "description": "vecu256"
913
+ },
914
+ {
915
+ "type": "string",
916
+ "const": "vecvecu8",
917
+ "description": "vecvecu8"
918
+ }
919
+ ],
920
+ "description": "Type of the value"
921
+ },
922
+ "value": {
923
+ "anyOf": [
924
+ {
925
+ "type": "boolean"
926
+ },
927
+ {
928
+ "anyOf": [
929
+ {
930
+ "type": "object",
931
+ "properties": {
932
+ "name_or_address": {
933
+ "$ref": "#/definitions/submission/properties/guard/items/properties/object",
934
+ "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)."
935
+ },
936
+ "local_mark_first": {
937
+ "type": "boolean",
938
+ "description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks"
939
+ }
940
+ },
941
+ "additionalProperties": false,
942
+ "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."
943
+ },
944
+ {
945
+ "type": "string"
946
+ }
947
+ ]
948
+ },
949
+ {
950
+ "type": "string"
951
+ },
952
+ {
953
+ "type": "number"
954
+ },
955
+ {
956
+ "type": "array",
957
+ "items": {
958
+ "type": "boolean"
959
+ }
960
+ },
961
+ {
962
+ "anyOf": [
963
+ {
964
+ "type": "object",
965
+ "properties": {
966
+ "entities": {
967
+ "type": "array",
968
+ "items": {
969
+ "$ref": "#/definitions/submission/properties/submission/items/properties/submission/items/properties/value/anyOf/1/anyOf/0"
970
+ }
971
+ },
972
+ "check_all_founded": {
973
+ "type": "boolean",
974
+ "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"
975
+ }
976
+ },
977
+ "required": [
978
+ "entities"
979
+ ],
980
+ "additionalProperties": false,
981
+ "description": "Used to batch find account or object IDs by name"
982
+ },
983
+ {
984
+ "type": "array",
985
+ "items": {
986
+ "type": "string"
987
+ }
988
+ }
989
+ ]
990
+ },
991
+ {
992
+ "type": "array",
993
+ "items": {
994
+ "type": "string"
995
+ }
996
+ },
997
+ {
998
+ "type": "array",
999
+ "items": {
1000
+ "type": "number"
1001
+ }
1002
+ },
1003
+ {
1004
+ "type": "array",
1005
+ "items": {
1006
+ "type": "array",
1007
+ "items": {
1008
+ "type": "number"
1009
+ }
1010
+ }
1011
+ }
1012
+ ],
1013
+ "description": "The actual value data"
1014
+ },
1015
+ "name": {
1016
+ "type": "string",
1017
+ "default": "",
1018
+ "description": "Name or description of this data"
1019
+ },
1020
+ "object_type": {
1021
+ "type": "string",
1022
+ "enum": [
1023
+ "Permission",
1024
+ "Repository",
1025
+ "Arb",
1026
+ "Arbitration",
1027
+ "Service",
1028
+ "Machine",
1029
+ "Order",
1030
+ "Progress",
1031
+ "Payment",
1032
+ "Treasury",
1033
+ "Guard",
1034
+ "Demand",
1035
+ "Passport",
1036
+ "Allocation",
1037
+ "Resource",
1038
+ "Reward",
1039
+ "Discount",
1040
+ "EntityRegistrar",
1041
+ "EntityLinker",
1042
+ "Proof",
1043
+ "WReceivedObject",
1044
+ "Contact",
1045
+ "TableItem_ProgressHistory",
1046
+ "TableItem_PermissionPerm",
1047
+ "TableItem_DemandPresenter",
1048
+ "TableItem_MachineNode",
1049
+ "TableItem_TreasuryHistory",
1050
+ "TableItem_RepositoryData",
1051
+ "TableItem_RewardRecord",
1052
+ "TableItem_EntityLinker",
1053
+ "TableItem_AddressMark",
1054
+ "TableItem_EntityRegistrar"
1055
+ ],
1056
+ "description": "Object type when value_type is Address and represents a specific object"
1057
+ }
1058
+ },
1059
+ "required": [
1060
+ "identifier",
1061
+ "b_submission",
1062
+ "value_type"
1063
+ ],
1064
+ "additionalProperties": false,
1065
+ "description": "Guard table item"
1066
+ },
1067
+ "description": "User-submitted data required for Guard verification."
1068
+ }
1069
+ },
1070
+ "required": [
1071
+ "guard",
1072
+ "submission"
1073
+ ],
1074
+ "additionalProperties": false,
1075
+ "description": "Permission guard submission data."
1076
+ }
1077
+ }
1078
+ },
1079
+ "required": [
1080
+ "type",
1081
+ "guard",
1082
+ "submission"
1083
+ ],
1084
+ "additionalProperties": false,
1085
+ "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."
1086
+ }
1087
+ }
1088
+ }