@wowok/agent-mcp 3.0.1 → 3.0.3

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 (283) hide show
  1. package/LICENSE +0 -3
  2. package/dist/harness/recover.js +1 -1
  3. package/dist/index.d.ts +2 -2
  4. package/dist/index.js +1 -1
  5. package/dist/intent/types.d.ts +1 -1
  6. package/dist/intent/types.js +1 -1
  7. package/dist/knowledge/account-marks.js +1 -1
  8. package/dist/knowledge/arbitration-risk.js +1 -1
  9. package/dist/knowledge/event-semantics.js +1 -1
  10. package/dist/knowledge/event-semantics.spec.js +1 -1
  11. package/dist/knowledge/flywheel-loop.d.ts +4 -52
  12. package/dist/knowledge/flywheel-loop.js +1 -1
  13. package/dist/knowledge/guard-lint.js +1 -1
  14. package/dist/knowledge/index.d.ts +2 -225
  15. package/dist/knowledge/index.js +1 -1
  16. package/dist/knowledge/industry-registry.js +1 -1
  17. package/dist/knowledge/machine-risk.js +1 -1
  18. package/dist/knowledge/machine-translation.js +1 -1
  19. package/dist/knowledge/migration-preflight.d.ts +27 -0
  20. package/dist/knowledge/migration-preflight.js +1 -0
  21. package/dist/knowledge/onchain-constants.js +1 -1
  22. package/dist/knowledge/order-ledger.d.ts +2 -2
  23. package/dist/knowledge/order-ledger.js +1 -1
  24. package/dist/knowledge/order-puzzle.d.ts +4 -4
  25. package/dist/knowledge/order-puzzle.js +1 -1
  26. package/dist/knowledge/order-risk.d.ts +1 -0
  27. package/dist/knowledge/order-risk.js +1 -1
  28. package/dist/knowledge/order-templates.d.ts +1 -1
  29. package/dist/knowledge/order-templates.js +1 -1
  30. package/dist/knowledge/safety-rules.js +1 -1
  31. package/dist/knowledge/service-ledger.js +1 -1
  32. package/dist/knowledge/service-risk.js +1 -1
  33. package/dist/knowledge/template-registry.js +1 -1
  34. package/dist/knowledge/tools-reference.js +1 -1
  35. package/dist/knowledge/workspace-lists.js +1 -1
  36. package/dist/monitor/MonitorLoop.js +1 -1
  37. package/dist/monitor/normalize.js +1 -1
  38. package/dist/playbooks/service-build/business-puzzle.js +1 -1
  39. package/dist/playbooks/service-build/context-assembly.d.ts +3 -1
  40. package/dist/playbooks/service-build/context-assembly.js +1 -1
  41. package/dist/playbooks/service-build/machine-nodes.d.ts +2 -0
  42. package/dist/playbooks/service-build/machine-nodes.js +1 -1
  43. package/dist/playbooks/service-build/machine-panorama.d.ts +7 -0
  44. package/dist/playbooks/service-build/machine-panorama.js +1 -1
  45. package/dist/playbooks/service-build/mode-actions.d.ts +19 -0
  46. package/dist/playbooks/service-build/mode-actions.js +1 -1
  47. package/dist/review/machine.js +1 -1
  48. package/dist/safety/confirm-gate.js +1 -1
  49. package/dist/schema/call/base.d.ts +12 -3
  50. package/dist/schema/call/base.js +1 -1
  51. package/dist/schema/call/bridge.d.ts +4 -0
  52. package/dist/schema/call/bridge.js +1 -1
  53. package/dist/schema/call/error-codes.d.ts +2 -0
  54. package/dist/schema/call/error-codes.js +1 -0
  55. package/dist/schema/call/guard.d.ts +4 -4
  56. package/dist/schema/call/semantic.d.ts +9 -1
  57. package/dist/schema/call/semantic.js +1 -1
  58. package/dist/schema/common/index.js +1 -1
  59. package/dist/schema/goal/index.d.ts +3 -3
  60. package/dist/schema/goal/planning.d.ts +2 -2
  61. package/dist/schema/industry-pack/index.d.ts +46 -4
  62. package/dist/schema/industry-pack/modes.d.ts +46 -4
  63. package/dist/schema/industry-pack/modes.js +1 -1
  64. package/dist/schema/intent-radar/index.d.ts +3 -0
  65. package/dist/schema/intent-radar/index.js +1 -1
  66. package/dist/schema/local/index.d.ts +558 -0
  67. package/dist/schema/local/index.js +1 -1
  68. package/dist/schema/messenger/index.d.ts +25 -25
  69. package/dist/schema/operations.d.ts +29 -1
  70. package/dist/schema/persona/index.d.ts +2 -2
  71. package/dist/schema/query/bi.d.ts +89 -4
  72. package/dist/schema/query/bi.js +1 -1
  73. package/dist/schema/query/index.d.ts +48 -48
  74. package/dist/schema/query/index.js +1 -1
  75. package/dist/schema/schema-query/index.d.ts +1 -1
  76. package/dist/schema/schema-version.js +1 -1
  77. package/dist/schema/trust/index.d.ts +3 -3
  78. package/dist/schema/workspace/index.d.ts +1 -1
  79. package/dist/schema-query-impl/index.js +1 -1
  80. package/dist/schemas/account_operation.output.json +4 -0
  81. package/dist/schemas/bridge_operation.output.json +4 -0
  82. package/dist/schemas/index.json +7 -1
  83. package/dist/schemas/industry_pack_operation.output.json +162 -6
  84. package/dist/schemas/intent_radar.output.json +2 -0
  85. package/dist/schemas/intent_radar.schema.json +1 -0
  86. package/dist/schemas/local_history_operation.output.json +1458 -0
  87. package/dist/schemas/local_history_operation.schema.json +105 -0
  88. package/dist/schemas/local_info_operation.output.json +4 -0
  89. package/dist/schemas/local_mark_operation.output.json +4 -0
  90. package/dist/schemas/onchain_events.output.json +55 -11
  91. package/dist/schemas/onchain_events.schema.json +4 -0
  92. package/dist/schemas/onchain_operations.output.json +4 -1
  93. package/dist/schemas/onchain_operations.schema.json +30 -10
  94. package/dist/schemas/onchain_operations_guard.schema.json +30 -10
  95. package/dist/schemas/onchain_table_data.output.json +41 -0
  96. package/dist/schemas/query_toolkit.output.json +200 -16
  97. package/dist/schemas/query_toolkit.schema.json +41 -0
  98. package/dist/tools/handlers/config.js +1 -1
  99. package/dist/tools/handlers/intent-radar.js +1 -1
  100. package/dist/tools/handlers/local.d.ts +1 -0
  101. package/dist/tools/handlers/local.js +1 -1
  102. package/dist/tools/handlers/onchain.js +1 -1
  103. package/dist/tools/handlers/query.js +1 -1
  104. package/dist/tools/index.js +1 -1
  105. package/dist/tools/registry/local.js +1 -1
  106. package/dist/tools/registry/query.js +1 -1
  107. package/dist/tools/shared.js +1 -1
  108. package/dist/tools/wrap.js +1 -1
  109. package/package.json +2 -2
  110. package/dist/knowledge/allocation-confirm.d.ts +0 -115
  111. package/dist/knowledge/allocation-confirm.js +0 -1
  112. package/dist/knowledge/allocation-context.d.ts +0 -58
  113. package/dist/knowledge/allocation-context.js +0 -1
  114. package/dist/knowledge/allocation-translation.d.ts +0 -72
  115. package/dist/knowledge/allocation-translation.js +0 -1
  116. package/dist/knowledge/arb-confirm.d.ts +0 -28
  117. package/dist/knowledge/arb-confirm.js +0 -1
  118. package/dist/knowledge/arb-translation.d.ts +0 -48
  119. package/dist/knowledge/arb-translation.js +0 -1
  120. package/dist/knowledge/arbitration-confirm.d.ts +0 -135
  121. package/dist/knowledge/arbitration-confirm.js +0 -1
  122. package/dist/knowledge/arbitration-context.d.ts +0 -81
  123. package/dist/knowledge/arbitration-context.js +0 -1
  124. package/dist/knowledge/arbitration-translation.d.ts +0 -91
  125. package/dist/knowledge/arbitration-translation.js +0 -1
  126. package/dist/knowledge/bridge-confirm.d.ts +0 -26
  127. package/dist/knowledge/bridge-confirm.js +0 -1
  128. package/dist/knowledge/bridge-translation.d.ts +0 -37
  129. package/dist/knowledge/bridge-translation.js +0 -1
  130. package/dist/knowledge/contact-confirm.d.ts +0 -27
  131. package/dist/knowledge/contact-confirm.js +0 -1
  132. package/dist/knowledge/contact-translation.d.ts +0 -39
  133. package/dist/knowledge/contact-translation.js +0 -1
  134. package/dist/knowledge/demand-confirm.d.ts +0 -32
  135. package/dist/knowledge/demand-confirm.js +0 -1
  136. package/dist/knowledge/demand-context.d.ts +0 -17
  137. package/dist/knowledge/demand-context.js +0 -1
  138. package/dist/knowledge/demand-ledger.d.ts +0 -26
  139. package/dist/knowledge/demand-ledger.js +0 -1
  140. package/dist/knowledge/demand-puzzle.d.ts +0 -29
  141. package/dist/knowledge/demand-puzzle.js +0 -1
  142. package/dist/knowledge/demand-templates.d.ts +0 -12
  143. package/dist/knowledge/demand-templates.js +0 -1
  144. package/dist/knowledge/demand-translation.d.ts +0 -55
  145. package/dist/knowledge/demand-translation.js +0 -1
  146. package/dist/knowledge/examples-scanner-cli.d.ts +0 -1
  147. package/dist/knowledge/examples-scanner-cli.js +0 -1
  148. package/dist/knowledge/examples-scanner.d.ts +0 -121
  149. package/dist/knowledge/examples-scanner.js +0 -1
  150. package/dist/knowledge/glossary.d.ts +0 -18
  151. package/dist/knowledge/glossary.js +0 -1
  152. package/dist/knowledge/guard-bytecode-spec.d.ts +0 -82
  153. package/dist/knowledge/guard-bytecode-spec.js +0 -1
  154. package/dist/knowledge/guard-confirm.d.ts +0 -86
  155. package/dist/knowledge/guard-confirm.js +0 -1
  156. package/dist/knowledge/immutability.d.ts +0 -11
  157. package/dist/knowledge/immutability.js +0 -1
  158. package/dist/knowledge/machine-confirm.d.ts +0 -102
  159. package/dist/knowledge/machine-confirm.js +0 -1
  160. package/dist/knowledge/machine-context.d.ts +0 -160
  161. package/dist/knowledge/machine-context.js +0 -1
  162. package/dist/knowledge/machine-render.d.ts +0 -41
  163. package/dist/knowledge/machine-render.js +0 -1
  164. package/dist/knowledge/mcp-schema-audit-cli.d.ts +0 -1
  165. package/dist/knowledge/mcp-schema-audit-cli.js +0 -1
  166. package/dist/knowledge/mcp-schema-audit.d.ts +0 -91
  167. package/dist/knowledge/mcp-schema-audit.js +0 -1
  168. package/dist/knowledge/messenger-guard-guidance.d.ts +0 -17
  169. package/dist/knowledge/messenger-guard-guidance.js +0 -1
  170. package/dist/knowledge/order-confirm.d.ts +0 -115
  171. package/dist/knowledge/order-confirm.js +0 -1
  172. package/dist/knowledge/order-context.d.ts +0 -66
  173. package/dist/knowledge/order-context.js +0 -1
  174. package/dist/knowledge/order-translation.d.ts +0 -78
  175. package/dist/knowledge/order-translation.js +0 -1
  176. package/dist/knowledge/overrides-loader.d.ts +0 -13
  177. package/dist/knowledge/overrides-loader.js +0 -1
  178. package/dist/knowledge/passport-confirm.d.ts +0 -130
  179. package/dist/knowledge/passport-confirm.js +0 -1
  180. package/dist/knowledge/passport-context.d.ts +0 -59
  181. package/dist/knowledge/passport-context.js +0 -1
  182. package/dist/knowledge/passport-puzzle.d.ts +0 -108
  183. package/dist/knowledge/passport-puzzle.js +0 -1
  184. package/dist/knowledge/passport-risk.d.ts +0 -70
  185. package/dist/knowledge/passport-risk.js +0 -1
  186. package/dist/knowledge/passport-translation.d.ts +0 -68
  187. package/dist/knowledge/passport-translation.js +0 -1
  188. package/dist/knowledge/payment-confirm.d.ts +0 -26
  189. package/dist/knowledge/payment-confirm.js +0 -1
  190. package/dist/knowledge/payment-translation.d.ts +0 -37
  191. package/dist/knowledge/payment-translation.js +0 -1
  192. package/dist/knowledge/permission-confirm.d.ts +0 -110
  193. package/dist/knowledge/permission-confirm.js +0 -1
  194. package/dist/knowledge/permission-context.d.ts +0 -69
  195. package/dist/knowledge/permission-context.js +0 -1
  196. package/dist/knowledge/permission-translation.d.ts +0 -57
  197. package/dist/knowledge/permission-translation.js +0 -1
  198. package/dist/knowledge/personal-confirm.d.ts +0 -29
  199. package/dist/knowledge/personal-confirm.js +0 -1
  200. package/dist/knowledge/personal-translation.d.ts +0 -37
  201. package/dist/knowledge/personal-translation.js +0 -1
  202. package/dist/knowledge/process-model.d.ts +0 -14
  203. package/dist/knowledge/process-model.js +0 -1
  204. package/dist/knowledge/progress-confirm.d.ts +0 -108
  205. package/dist/knowledge/progress-confirm.js +0 -1
  206. package/dist/knowledge/progress-context.d.ts +0 -123
  207. package/dist/knowledge/progress-context.js +0 -1
  208. package/dist/knowledge/progress-translation.d.ts +0 -52
  209. package/dist/knowledge/progress-translation.js +0 -1
  210. package/dist/knowledge/proof-confirm.d.ts +0 -31
  211. package/dist/knowledge/proof-confirm.js +0 -1
  212. package/dist/knowledge/proof-context.d.ts +0 -17
  213. package/dist/knowledge/proof-context.js +0 -1
  214. package/dist/knowledge/proof-ledger.d.ts +0 -34
  215. package/dist/knowledge/proof-ledger.js +0 -1
  216. package/dist/knowledge/proof-puzzle.d.ts +0 -35
  217. package/dist/knowledge/proof-puzzle.js +0 -1
  218. package/dist/knowledge/proof-templates.d.ts +0 -22
  219. package/dist/knowledge/proof-templates.js +0 -1
  220. package/dist/knowledge/proof-translation.d.ts +0 -52
  221. package/dist/knowledge/proof-translation.js +0 -1
  222. package/dist/knowledge/registrar-confirm.d.ts +0 -26
  223. package/dist/knowledge/registrar-confirm.js +0 -1
  224. package/dist/knowledge/registrar-translation.d.ts +0 -37
  225. package/dist/knowledge/registrar-translation.js +0 -1
  226. package/dist/knowledge/repository-confirm.d.ts +0 -40
  227. package/dist/knowledge/repository-confirm.js +0 -1
  228. package/dist/knowledge/repository-context.d.ts +0 -12
  229. package/dist/knowledge/repository-context.js +0 -1
  230. package/dist/knowledge/repository-ledger.d.ts +0 -25
  231. package/dist/knowledge/repository-ledger.js +0 -1
  232. package/dist/knowledge/repository-puzzle.d.ts +0 -30
  233. package/dist/knowledge/repository-puzzle.js +0 -1
  234. package/dist/knowledge/repository-templates.d.ts +0 -14
  235. package/dist/knowledge/repository-templates.js +0 -1
  236. package/dist/knowledge/repository-translation.d.ts +0 -58
  237. package/dist/knowledge/repository-translation.js +0 -1
  238. package/dist/knowledge/resource-confirm.d.ts +0 -25
  239. package/dist/knowledge/resource-confirm.js +0 -1
  240. package/dist/knowledge/resource-translation.d.ts +0 -37
  241. package/dist/knowledge/resource-translation.js +0 -1
  242. package/dist/knowledge/reward-confirm.d.ts +0 -116
  243. package/dist/knowledge/reward-confirm.js +0 -1
  244. package/dist/knowledge/reward-context.d.ts +0 -127
  245. package/dist/knowledge/reward-context.js +0 -1
  246. package/dist/knowledge/reward-translation.d.ts +0 -58
  247. package/dist/knowledge/reward-translation.js +0 -1
  248. package/dist/knowledge/service-confirm.d.ts +0 -161
  249. package/dist/knowledge/service-confirm.js +0 -1
  250. package/dist/knowledge/service-context.d.ts +0 -66
  251. package/dist/knowledge/service-context.js +0 -1
  252. package/dist/knowledge/service-translation.d.ts +0 -103
  253. package/dist/knowledge/service-translation.js +0 -1
  254. package/dist/knowledge/treasury-confirm.d.ts +0 -133
  255. package/dist/knowledge/treasury-confirm.js +0 -1
  256. package/dist/knowledge/treasury-context.d.ts +0 -64
  257. package/dist/knowledge/treasury-context.js +0 -1
  258. package/dist/knowledge/treasury-translation.d.ts +0 -78
  259. package/dist/knowledge/treasury-translation.js +0 -1
  260. package/dist/knowledge/util-confirm.d.ts +0 -24
  261. package/dist/knowledge/util-confirm.js +0 -1
  262. package/dist/knowledge/util-translation.d.ts +0 -39
  263. package/dist/knowledge/util-translation.js +0 -1
  264. package/dist/loop-engineering/aggregate.d.ts +0 -50
  265. package/dist/loop-engineering/aggregate.js +0 -1
  266. package/dist/loop-engineering/context-collect.d.ts +0 -7
  267. package/dist/loop-engineering/context-collect.js +0 -1
  268. package/dist/loop-engineering/diagnose.d.ts +0 -22
  269. package/dist/loop-engineering/diagnose.js +0 -1
  270. package/dist/loop-engineering/improve.d.ts +0 -55
  271. package/dist/loop-engineering/improve.js +0 -1
  272. package/dist/loop-engineering/index.d.ts +0 -4
  273. package/dist/loop-engineering/index.js +0 -1
  274. package/dist/loop-engineering/pipeline.d.ts +0 -17
  275. package/dist/loop-engineering/pipeline.js +0 -1
  276. package/dist/schema/utils/object-type-utils.d.ts +0 -12
  277. package/dist/schema/utils/object-type-utils.js +0 -1
  278. package/dist/telemetry/index.d.ts +0 -19
  279. package/dist/telemetry/index.js +0 -1
  280. package/dist/telemetry/redact.d.ts +0 -2
  281. package/dist/telemetry/redact.js +0 -1
  282. package/dist/telemetry/storage.d.ts +0 -8
  283. package/dist/telemetry/storage.js +0 -1
@@ -1 +0,0 @@
1
- export const GUARD_BYTECODE_SPEC_VERSION='1.0.0';export const VALUE_TYPE_BYTES={'TYPE_BOOL':0x0,'TYPE_ADDRESS':0x1,'TYPE_STRING':0x2,'TYPE_U8':0x3,'TYPE_U16':0x4,'TYPE_U32':0x5,'TYPE_U64':0x6,'TYPE_U128':0x7,'TYPE_U256':0x8,'TYPE_VEC_BOOL':0x9,'TYPE_VEC_ADDRESS':0xa,'TYPE_VEC_STRING':0xb,'TYPE_VEC_U8':0xc,'TYPE_VEC_U16':0xd,'TYPE_VEC_U32':0xe,'TYPE_VEC_U64':0xf,'TYPE_VEC_U128':0x10,'TYPE_VEC_U256':0x11,'TYPE_VEC_VEC_U8':0x12,'TYPE_VALUE':0x13};export function isValueTypeByte(a){return a>=0x0&&a<VALUE_TYPE_BYTES['TYPE_VALUE'];}export function isNumberTypeByte(a){return a>=VALUE_TYPE_BYTES['TYPE_U8']&&a<=VALUE_TYPE_BYTES['TYPE_U256']||a===VALUE_TYPE_BYTES['TYPE_VALUE'];}export const OPCODE_SPECS=[{'byte':0x28,'name':'TYPE_QUERY','operands':'[subcode:u8][identifier:u8][query_id:u16\x20LE]','stack':'pop\x20required_params\x20→\x20push\x20return_type;\x20run\x20registry\x20query','note':'subcode:\x2048\x20(TYPE_CONSTANT)\x20or\x20100-108\x20(witness);\x20u16\x20is\x20BCS\x20little-endian'},{'byte':0x2d,'name':'TYPE_SIGNER','operands':'none','stack':'push\x20Address\x20(tx\x20sender)'},{'byte':0x2e,'name':'TYPE_CLOCK','operands':'none','stack':'push\x20U64\x20(Clock\x20timestamp_ms)'},{'byte':0x2f,'name':'TYPE_GUARD','operands':'none','stack':'push\x20Address\x20(current\x20Guard)'},{'byte':0x30,'name':'TYPE_CONSTANT','operands':'[identifier:u8]','stack':'push\x20table\x20constant\x20(verify:\x20deserialized\x20value)'},{'byte':0x3d,'name':'TYPE_STRING_LENGTH','operands':'none','stack':'pop\x20String\x20→\x20push\x20U64'},{'byte':0x3e,'name':'TYPE_STRING_INDEXOF','operands':'[order:u8]\x20(0=forward/1=reverse)','stack':'pop\x202\x20String\x20→\x20push\x20U64'},{'byte':0x3f,'name':'TYPE_STRING_NOCASE_INDEXOF','operands':'[order:u8]','stack':'pop\x202\x20String\x20→\x20push\x20U64\x20(case-insensitive)'},{'byte':0x40,'name':'TYPE_STRING_CONTAINS','operands':'[count:u8]\x20(2..=8)','stack':'pop\x20count\x20String\x20→\x20push\x20Bool'},{'byte':0x41,'name':'TYPE_STRING_NOCASE_CONTAINS','operands':'[count:u8]','stack':'pop\x20count\x20String\x20→\x20push\x20Bool'},{'byte':0x42,'name':'TYPE_STRING_NOCASE_EQUAL','operands':'[count:u8]','stack':'pop\x20count\x20String\x20→\x20push\x20Bool'},{'byte':0x46,'name':'TYPED_VALUE_TYPE','operands':'none','stack':'pop\x20any\x20→\x20push\x20U8\x20(value\x27s\x20type\x20byte)'},{'byte':0x47,'name':'TYPED_VALUE_VEC_LENGTH','operands':'none','stack':'pop\x20Vec\x20→\x20push\x20U64'},{'byte':0x48,'name':'TYPED_VALUE_VEC_CONTAINS_BOOL','operands':'[count:u8]','stack':'first\x20operand\x20Vec<bool>,\x20rest\x20bool\x20→\x20push\x20Bool'},{'byte':0x49,'name':'TYPED_VALUE_VEC_CONTAINS_ADDRESS','operands':'[count:u8]','stack':'Vec<address>\x20+\x20addresses\x20→\x20Bool'},{'byte':0x4a,'name':'TYPED_VALUE_VEC_CONTAINS_STRING','operands':'[count:u8]','stack':'Vec<String>\x20+\x20Strings\x20→\x20Bool'},{'byte':0x4b,'name':'TYPED_VALUE_VEC_CONTAINS_STRING_NOCASE','operands':'[count:u8]','stack':'same,\x20case-insensitive'},{'byte':0x4c,'name':'TYPED_VALUE_VEC_CONTAINS_NUMBER','operands':'[count:u8]','stack':'first\x20operand\x20numeric\x20Vec\x20(VEC_U8..VEC_U256),\x20rest\x20numbers\x20→\x20Bool'},{'byte':0x4d,'name':'TYPED_VALUE_VEC_INDEXOF_BOOL','operands':'[order:u8]','stack':'pop\x20Vec<bool>+bool\x20→\x20push\x20U64'},{'byte':0x4e,'name':'TYPED_VALUE_VEC_INDEXOF_ADDRESS','operands':'[order:u8]','stack':'pop\x20Vec<address>+address\x20→\x20push\x20U64'},{'byte':0x4f,'name':'TYPED_VALUE_VEC_INDEXOF_STRING','operands':'[order:u8]','stack':'pop\x20Vec<String>+String\x20→\x20push\x20U64'},{'byte':0x50,'name':'TYPED_VALUE_VEC_INDEXOF_STRING_NOCASE','operands':'[order:u8]','stack':'same,\x20case-insensitive'},{'byte':0x51,'name':'TYPED_VALUE_VEC_INDEXOF_NUMBER','operands':'[order:u8]','stack':'numeric\x20Vec\x20+\x20number\x20→\x20U64'},{'byte':0x5a,'name':'TYPE_LOGIC_EQUAL','operands':'[count:u8]\x20(2..=8)','stack':'N\x20same-type\x20operands\x20→\x20Bool'},{'byte':0x5b,'name':'TYPE_LOGIC_AS_U256_GREATER','operands':'[count:u8]','stack':'N\x20numbers\x20strictly\x20decreasing\x20(as\x20u256)\x20→\x20Bool'},{'byte':0x5c,'name':'TYPE_LOGIC_AS_U256_GREATER_EQUAL','operands':'[count:u8]','stack':'N\x20numbers\x20non-increasing\x20→\x20Bool'},{'byte':0x5d,'name':'TYPE_LOGIC_AS_U256_LESSER','operands':'[count:u8]','stack':'N\x20numbers\x20strictly\x20increasing\x20→\x20Bool'},{'byte':0x5e,'name':'TYPE_LOGIC_AS_U256_LESSER_EQUAL','operands':'[count:u8]','stack':'N\x20numbers\x20non-decreasing\x20→\x20Bool'},{'byte':0x5f,'name':'TYPE_LOGIC_AS_U256_EQUAL','operands':'[count:u8]','stack':'numeric\x20equality\x20→\x20Bool'},{'byte':0x60,'name':'TYPE_LOGIC_AND','operands':'[count:u8]','stack':'N\x20Bool\x20→\x20Bool'},{'byte':0x61,'name':'TYPE_LOGIC_OR','operands':'[count:u8]','stack':'N\x20Bool\x20→\x20Bool'},{'byte':0x62,'name':'TYPE_LOGIC_NOT','operands':'none','stack':'unary\x20Bool\x20→\x20Bool'},{'byte':0x64,'name':'TYPE_ORDER_PROGRESS','operands':'none','stack':'witness:\x20top-of-stack\x20Order\x20→\x20Progress\x20(type\x20assertion)'},{'byte':0x65,'name':'TYPE_ORDER_MACHINE','operands':'none','stack':'witness:\x20Order\x20→\x20Machine'},{'byte':0x66,'name':'TYPE_ORDER_SERVICE','operands':'none','stack':'witness:\x20Order\x20→\x20Service'},{'byte':0x67,'name':'TYPE_PROGRESS_MACHINE','operands':'none','stack':'witness:\x20Progress\x20→\x20Machine'},{'byte':0x68,'name':'TYPE_ARB_ORDER','operands':'none','stack':'witness:\x20Arb\x20→\x20Order'},{'byte':0x69,'name':'TYPE_ARB_ARBITRATION','operands':'none','stack':'witness:\x20Arb\x20→\x20Arbitration'},{'byte':0x6a,'name':'TYPE_ARB_PROGRESS','operands':'none','stack':'witness:\x20Arb\x20→\x20Progress'},{'byte':0x6b,'name':'TYPE_ARB_MACHINE','operands':'none','stack':'witness:\x20Arb\x20→\x20Machine'},{'byte':0x6c,'name':'TYPE_ARB_SERVICE','operands':'none','stack':'witness:\x20Arb\x20→\x20Service'},{'byte':0xc8,'name':'TYPE_NUMBER_ADD','operands':'[count:u8]\x20(2..=8)','stack':'N\x20numbers\x20→\x20push\x20U256'},{'byte':0xc9,'name':'TYPE_NUMBER_SUBTRACT','operands':'[count:u8]','stack':'N\x20numbers\x20→\x20U256'},{'byte':0xca,'name':'TYPE_NUMBER_MULTIPLY','operands':'[count:u8]','stack':'N\x20numbers\x20→\x20U256'},{'byte':0xcb,'name':'TYPE_NUMBER_DIVIDE','operands':'[count:u8]','stack':'N\x20numbers\x20→\x20U256'},{'byte':0xcc,'name':'TYPE_NUMBER_MOD','operands':'[count:u8]','stack':'N\x20numbers\x20→\x20U256'},{'byte':0xcd,'name':'TYPE_NUMBER_ADDRESS','operands':'none','stack':'pop\x20number\x20→\x20push\x20Address'},{'byte':0xce,'name':'TYPE_NUMBER_STRING','operands':'none','stack':'pop\x20number\x20→\x20push\x20String'},{'byte':0xcf,'name':'TYPE_ADDRESS_NUMBER','operands':'none','stack':'pop\x20Address\x20→\x20push\x20U256'},{'byte':0xd0,'name':'TYPE_STRING_NUMBER','operands':'none','stack':'pop\x20String\x20→\x20push\x20U256'},{'byte':0xdc,'name':'TYPE_SAFE_U8','operands':'none','stack':'pop\x20number\x20→\x20push\x20U8\x20(abort\x20on\x20overflow)'},{'byte':0xdd,'name':'TYPE_SAFE_U16','operands':'none','stack':'→\x20U16'},{'byte':0xde,'name':'TYPE_SAFE_U32','operands':'none','stack':'→\x20U32'},{'byte':0xdf,'name':'TYPE_SAFE_U64','operands':'none','stack':'→\x20U64'},{'byte':0xe0,'name':'TYPE_SAFE_U128','operands':'none','stack':'→\x20U128'},{'byte':0xe1,'name':'TYPE_SAFE_U256','operands':'none','stack':'→\x20U256'}];const OPCODE_BY_BYTE=new Map(OPCODE_SPECS['map'](a=>[a['byte'],a])),OPCODE_BY_NAME=new Map(OPCODE_SPECS['map'](a=>[a['name'],a]));export function opcodeByByte(a){return OPCODE_BY_BYTE['get'](a);}export function opcodeByName(a){return OPCODE_BY_NAME['get'](a);}export const COMMON_MOVE_MISALIGNED=[];export const QUERY_REGISTRY=[{'id':0x3e9,'name':'permission.description','object':'Permission','return_type':'String','params':[]},{'id':0x3ea,'name':'permission.owner','object':'Permission','return_type':'Address','params':[]},{'id':0x3eb,'name':'permission.admin\x20count','object':'Permission','return_type':'U64','params':[]},{'id':0x3ec,'name':'permission.admin\x20has','object':'Permission','return_type':'Bool','params':['Address']},{'id':0x3ed,'name':'permission.entity\x20count','object':'Permission','return_type':'U64','params':[]},{'id':0x3ee,'name':'permission.entity\x20has','object':'Permission','return_type':'Bool','params':['Address']},{'id':0x3ef,'name':'permission.entity.perm\x20count','object':'Permission','return_type':'U64','params':['Address']},{'id':0x3f0,'name':'permission.entity.perm\x20has','object':'Permission','return_type':'Bool','params':['Address','U16']},{'id':0x3f1,'name':'permission.perm.remark\x20count','object':'Permission','return_type':'U64','params':[]},{'id':0x3f2,'name':'permission.perm.remark\x20has','object':'Permission','return_type':'Bool','params':['U16']},{'id':0x3f3,'name':'permission.perm.remark','object':'Permission','return_type':'String','params':['U16']},{'id':0x3f4,'name':'permission.um\x20some','object':'Permission','return_type':'Bool','params':[]},{'id':0x3f5,'name':'permission.um','object':'Permission','return_type':'Address','params':[]},{'id':0x41a,'name':'allocation.description','object':'Allocation','return_type':'String','params':[]},{'id':0x41b,'name':'allocation.balance','object':'Allocation','return_type':'U64','params':[]},{'id':0x41c,'name':'allocation.threshold','object':'Allocation','return_type':'U64','params':[]},{'id':0x41d,'name':'allocation.payment\x20count','object':'Allocation','return_type':'U64','params':[]},{'id':0x41e,'name':'allocation.payment\x20has','object':'Allocation','return_type':'Bool','params':['Address']},{'id':0x41f,'name':'allocation.payment_info.for\x20some','object':'Allocation','return_type':'Bool','params':[],'note':'original\x20registration,\x20id\x20unchanged\x20(08\x20§六\x20F-1);\x20reachable'},{'id':0x420,'name':'allocation.payment_info.for','object':'Allocation','return_type':'Address','params':[]},{'id':0x421,'name':'allocation.payment_info.guard\x20some','object':'Allocation','return_type':'Bool','params':[]},{'id':0x422,'name':'allocation.payment_info.guard','object':'Allocation','return_type':'Address','params':[]},{'id':0x423,'name':'allocation.payment_info.remark','object':'Allocation','return_type':'String','params':[]},{'id':0x424,'name':'allocation.payment_info.index','object':'Allocation','return_type':'U64','params':[]},{'id':0x425,'name':'allocation.allocator\x20count','object':'Allocation','return_type':'U64','params':[]},{'id':0x426,'name':'allocation.allocator\x20has','object':'Allocation','return_type':'Bool','params':['Address']},{'id':0x427,'name':'allocation.allocator.sharing\x20count','object':'Allocation','return_type':'U64','params':['Address']},{'id':0x428,'name':'allocation.allocator.fix','object':'Allocation','return_type':'U64','params':['Address']},{'id':0x429,'name':'allocation.allocator.max\x20some','object':'Allocation','return_type':'Bool','params':['Address']},{'id':0x42a,'name':'allocation.allocator.max','object':'Allocation','return_type':'U64','params':['Address']},{'id':0x42b,'name':'allocation.token_type','object':'Allocation','return_type':'String','params':[]},{'id':0x42c,'name':'allocation.payment_info\x20has','object':'Allocation','return_type':'Bool','params':[],'note':'added\x202026-09-08\x20under\x20a\x20NEW\x20id\x20(08\x20§六\x20F-1):\x20payment_info\x20None\x20before\x20first\x20allocation\x20run'},{'id':0x44c,'name':'payment.amount','object':'Payment','return_type':'U64','params':[]},{'id':0x44d,'name':'payment.time','object':'Payment','return_type':'U64','params':[]},{'id':0x44e,'name':'payment.signer','object':'Payment','return_type':'Address','params':[]},{'id':0x44f,'name':'payment.from_object\x20some','object':'Payment','return_type':'Bool','params':[]},{'id':0x450,'name':'payment.from_object','object':'Payment','return_type':'Address','params':[]},{'id':0x451,'name':'payment.record\x20count','object':'Payment','return_type':'U64','params':[]},{'id':0x452,'name':'payment.info.for\x20some','object':'Payment','return_type':'Bool','params':[]},{'id':0x453,'name':'payment.info.for','object':'Payment','return_type':'Address','params':[]},{'id':0x454,'name':'payment.info.guard\x20some','object':'Payment','return_type':'Bool','params':[]},{'id':0x455,'name':'payment.info.guard','object':'Payment','return_type':'Address','params':[]},{'id':0x456,'name':'payment.info.remark','object':'Payment','return_type':'String','params':[]},{'id':0x457,'name':'payment.info.index','object':'Payment','return_type':'U64','params':[]},{'id':0x458,'name':'payment.recipient\x20has','object':'Payment','return_type':'Bool','params':['Address']},{'id':0x459,'name':'payment.recipient.amount','object':'Payment','return_type':'U64','params':['Address']},{'id':0x45a,'name':'payment.token_type','object':'Payment','return_type':'String','params':[]},{'id':0x47e,'name':'repository.description','object':'Repository','return_type':'String','params':[]},{'id':0x47f,'name':'repository.policy\x20count','object':'Repository','return_type':'U64','params':[]},{'id':0x480,'name':'repository.data\x20count','object':'Repository','return_type':'U64','params':[]},{'id':0x481,'name':'repository.permission','object':'Repository','return_type':'Address','params':[]},{'id':0x482,'name':'repository.policy\x20has','object':'Repository','return_type':'Bool','params':['String']},{'id':0x483,'name':'repository.policy.description','object':'Repository','return_type':'String','params':['String']},{'id':0x484,'name':'repository.policy.write_guard\x20count','object':'Repository','return_type':'U64','params':['String']},{'id':0x485,'name':'repository.policy.write_guard\x20has','object':'Repository','return_type':'Bool','params':['String','Address']},{'id':0x486,'name':'repository.policy.write_guard.id_from_submission\x20some','object':'Repository','return_type':'Bool','params':['String','Address']},{'id':0x487,'name':'repository.policy.write_guard.id_from_submission','object':'Repository','return_type':'U8','params':['String','Address']},{'id':0x488,'name':'repository.policy.write_guard.data_from_submission\x20some','object':'Repository','return_type':'Bool','params':['String','Address']},{'id':0x489,'name':'repository.policy.write_guard.data_from_submission','object':'Repository','return_type':'U8','params':['String','Address']},{'id':0x48a,'name':'repository.policy.quote_guard\x20some','object':'Repository','return_type':'Bool','params':['String']},{'id':0x48b,'name':'repository.policy.quote_guard','object':'Repository','return_type':'Address','params':['String']},{'id':0x48c,'name':'repository.policy.id_from','object':'Repository','return_type':'U8','params':['String']},{'id':0x48d,'name':'repository.policy.value_type','object':'Repository','return_type':'U8','params':['String']},{'id':0x48e,'name':'repository.data\x20has','object':'Repository','return_type':'Bool','params':['String','Address']},{'id':0x48f,'name':'repository.data','object':'Repository','return_type':'Value','params':['String','Address'],'note':'the\x20ONLY\x20query\x20with\x20a\x20quote_guard\x20read-gate\x20(guard\x20must\x20appear\x20in\x20Passport\x20impack_list)'},{'id':0x490,'name':'repository.data_type','object':'Repository','return_type':'U8','params':['String','Address']},{'id':0x491,'name':'repository.reward\x20count','object':'Repository','return_type':'U64','params':[]},{'id':0x492,'name':'repository.reward\x20has','object':'Repository','return_type':'Bool','params':['Address']},{'id':0x493,'name':'repository.um\x20some','object':'Repository','return_type':'Bool','params':[]},{'id':0x494,'name':'repository.um','object':'Repository','return_type':'Address','params':[]},{'id':0x4b0,'name':'machine.description','object':'Machine','return_type':'String','params':[]},{'id':0x4b1,'name':'machine.node_count','object':'Machine','return_type':'U64','params':[]},{'id':0x4b2,'name':'machine.node\x20has','object':'Machine','return_type':'Bool','params':['String']},{'id':0x4b3,'name':'machine.node.pair\x20count','object':'Machine','return_type':'U64','params':['String']},{'id':0x4b4,'name':'machine.node.pair\x20has','object':'Machine','return_type':'Bool','params':['String','String']},{'id':0x4b5,'name':'machine.node.pair.threshold','object':'Machine','return_type':'U32','params':['String','String']},{'id':0x4b6,'name':'machine.node.pair.forward\x20count','object':'Machine','return_type':'U64','params':['String','String']},{'id':0x4b7,'name':'machine.node.pair.forward\x20has','object':'Machine','return_type':'Bool','params':['String','String','String']},{'id':0x4b8,'name':'machine.node.pair.forward.namedOperator\x20some','object':'Machine','return_type':'Bool','params':['String','String','String']},{'id':0x4b9,'name':'machine.node.pair.forward.namedOperator','object':'Machine','return_type':'String','params':['String','String','String']},{'id':0x4ba,'name':'machine.node.pair.forward.permissionIndex\x20some','object':'Machine','return_type':'Bool','params':['String','String','String']},{'id':0x4bb,'name':'machine.node.pair.forward.permissionIndex','object':'Machine','return_type':'U64','params':['String','String','String']},{'id':0x4bc,'name':'machine.node.pair.forward.weight','object':'Machine','return_type':'U16','params':['String','String','String']},{'id':0x4bd,'name':'machine.node.pair.forward.guard\x20some','object':'Machine','return_type':'Bool','params':['String','String','String']},{'id':0x4be,'name':'machine.node.pair.forward.guard','object':'Machine','return_type':'Address','params':['String','String','String']},{'id':0x4bf,'name':'machine.node.pair.forward.guard.retained_submission','object':'Machine','return_type':'VectorU8','params':['String','String','String']},{'id':0x4c0,'name':'machine.node.pair.forward.guard.retained_submission\x20count','object':'Machine','return_type':'U64','params':['String','String','String']},{'id':0x4c1,'name':'machine.node.pair.forward.guard.retained_submission\x20has','object':'Machine','return_type':'Bool','params':['String','String','String','U8']},{'id':0x4c2,'name':'machine.consensus_repository\x20count','object':'Machine','return_type':'U64','params':[]},{'id':0x4c3,'name':'machine.consensus_repository\x20has','object':'Machine','return_type':'Bool','params':['Address']},{'id':0x4c4,'name':'machine.paused','object':'Machine','return_type':'Bool','params':[]},{'id':0x4c5,'name':'machine.published','object':'Machine','return_type':'Bool','params':[]},{'id':0x4c6,'name':'machine.um\x20some','object':'Machine','return_type':'Bool','params':[]},{'id':0x4c7,'name':'machine.um','object':'Machine','return_type':'Address','params':[]},{'id':0x4c8,'name':'machine.permission','object':'Machine','return_type':'Address','params':[]},{'id':0x4e2,'name':'progress.machine','object':'Progress','return_type':'Address','params':[]},{'id':0x4e3,'name':'progress.context_repository\x20count','object':'Progress','return_type':'U64','params':[]},{'id':0x4e4,'name':'progress.context_repository\x20has','object':'Progress','return_type':'Bool','params':['Address']},{'id':0x4e5,'name':'progress.current','object':'Progress','return_type':'String','params':[]},{'id':0x4e6,'name':'progress.task\x20some','object':'Progress','return_type':'Bool','params':[]},{'id':0x4e7,'name':'progress.task','object':'Progress','return_type':'Address','params':[]},{'id':0x4e8,'name':'progress.namedOperator\x20count','object':'Progress','return_type':'U64','params':[]},{'id':0x4e9,'name':'progress.namedOperator\x20has','object':'Progress','return_type':'Bool','params':['String']},{'id':0x4ea,'name':'progress.namedOperator.operator\x20count','object':'Progress','return_type':'U64','params':['String']},{'id':0x4eb,'name':'progress.namedOperator.operator\x20has','object':'Progress','return_type':'Bool','params':['String','Address']},{'id':0x4ec,'name':'progress.session\x20count','object':'Progress','return_type':'U64','params':[]},{'id':0x4ed,'name':'progress.session\x20has','object':'Progress','return_type':'Bool','params':['String']},{'id':0x4ee,'name':'progress.session.forward\x20count','object':'Progress','return_type':'U64','params':['String']},{'id':0x4ef,'name':'progress.session.forward\x20has','object':'Progress','return_type':'Bool','params':['String','String']},{'id':0x4f0,'name':'progress.session.forward.who\x20some','object':'Progress','return_type':'Bool','params':['String','String']},{'id':0x4f1,'name':'progress.session.forward.who','object':'Progress','return_type':'Address','params':['String','String']},{'id':0x4f2,'name':'progress.session.forward.retained_submission\x20count','object':'Progress','return_type':'U64','params':['String','String']},{'id':0x4f3,'name':'progress.session.forward.retained_submission\x20has','object':'Progress','return_type':'Bool','params':['String','String','U8']},{'id':0x4f4,'name':'progress.session.forward.retained_submission.value','object':'Progress','return_type':'VectorU8','params':['String','String','U8']},{'id':0x4f5,'name':'progress.session.forward.msg','object':'Progress','return_type':'String','params':['String','String']},{'id':0x4f6,'name':'progress.session.forward.accomplished','object':'Progress','return_type':'Bool','params':['String','String']},{'id':0x4f7,'name':'progress.session.forward.time','object':'Progress','return_type':'U64','params':['String','String']},{'id':0x4f8,'name':'progress.current_time','object':'Progress','return_type':'U64','params':[]},{'id':0x4f9,'name':'progress.history\x20count','object':'Progress','return_type':'U64','params':[]},{'id':0x4fa,'name':'progress.history.find','object':'Progress','return_type':'U64','params':['VectorU8']},{'id':0x4fb,'name':'progress.history.session.find','object':'Progress','return_type':'U64','params':['U64','VectorU8']},{'id':0x4fc,'name':'progress.history.session.forward.find','object':'Progress','return_type':'U64','params':['U64','U64','VectorU8']},{'id':0x4fd,'name':'progress.history.session.count','object':'Progress','return_type':'U64','params':['U64']},{'id':0x4fe,'name':'progress.history.session.forward.count','object':'Progress','return_type':'U64','params':['U64','U64']},{'id':0x4ff,'name':'progress.history.session.forward.retained_submission.count','object':'Progress','return_type':'U64','params':['U64','U64','U64']},{'id':0x546,'name':'arbitration.description','object':'Arbitration','return_type':'String','params':[]},{'id':0x547,'name':'arbitration.location','object':'Arbitration','return_type':'String','params':[]},{'id':0x548,'name':'arbitration.voting_guard\x20count','object':'Arbitration','return_type':'U64','params':[]},{'id':0x549,'name':'arbitration.voting_guard\x20has','object':'Arbitration','return_type':'Bool','params':['Address']},{'id':0x54a,'name':'arbitration.usage_guard\x20some','object':'Arbitration','return_type':'Bool','params':[],'note':'reachable\x202026-09-08\x20(08\x20§六\x20F-2):\x20the\x20competing\x20vote_weight\x20registration\x20is\x20commented\x20out\x20in\x20natives\x20—\x20no\x20shadow'},{'id':0x54b,'name':'arbitration.usage_guard','object':'Arbitration','return_type':'Address','params':[]},{'id':0x54c,'name':'arbitration.fee','object':'Arbitration','return_type':'U64','params':[]},{'id':0x54d,'name':'arbitration.balance','object':'Arbitration','return_type':'U64','params':[]},{'id':0x54e,'name':'arbitration.paused','object':'Arbitration','return_type':'Bool','params':[]},{'id':0x54f,'name':'arbitration.um\x20some','object':'Arbitration','return_type':'Bool','params':[]},{'id':0x550,'name':'arbitration.um','object':'Arbitration','return_type':'Address','params':[]},{'id':0x551,'name':'arbitration.permission','object':'Arbitration','return_type':'Address','params':[]},{'id':0x552,'name':'arbitration.token_type','object':'Arbitration','return_type':'String','params':[]},{'id':0x578,'name':'arb.description','object':'Arb','return_type':'String','params':[]},{'id':0x579,'name':'arb.order','object':'Arb','return_type':'Address','params':[]},{'id':0x57a,'name':'arb.arbitration','object':'Arb','return_type':'Address','params':[]},{'id':0x57b,'name':'arb.voted_count','object':'Arb','return_type':'U64','params':[]},{'id':0x57c,'name':'arb.voted\x20has','object':'Arb','return_type':'Bool','params':['Address']},{'id':0x57d,'name':'arb.voted.agree\x20count','object':'Arb','return_type':'U64','params':['Address']},{'id':0x57e,'name':'arb.voted.agree\x20has','object':'Arb','return_type':'Bool','params':['Address','U8']},{'id':0x57f,'name':'arb.voted.weight','object':'Arb','return_type':'U32','params':['Address']},{'id':0x580,'name':'arb.voted.time','object':'Arb','return_type':'U64','params':['Address']},{'id':0x581,'name':'arb.proposition\x20count','object':'Arb','return_type':'U64','params':[]},{'id':0x582,'name':'arb.proposition\x20has','object':'Arb','return_type':'Bool','params':['String']},{'id':0x583,'name':'arb.proposition.votes','object':'Arb','return_type':'U64','params':['String']},{'id':0x584,'name':'arb.fee','object':'Arb','return_type':'U64','params':[]},{'id':0x585,'name':'arb.feedback','object':'Arb','return_type':'String','params':[]},{'id':0x586,'name':'arb.indemnity\x20some','object':'Arb','return_type':'Bool','params':[]},{'id':0x587,'name':'arb.indemnity.amount','object':'Arb','return_type':'U64','params':[]},{'id':0x588,'name':'arb.indemnity.time','object':'Arb','return_type':'U64','params':[]},{'id':0x589,'name':'arb.voting_deadline\x20some','object':'Arb','return_type':'Bool','params':[]},{'id':0x58a,'name':'arb.voting_deadline','object':'Arb','return_type':'U64','params':[]},{'id':0x58b,'name':'arb.objection','object':'Arb','return_type':'String','params':[]},{'id':0x58c,'name':'arb.status','object':'Arb','return_type':'U8','params':[]},{'id':0x58d,'name':'arb.compensation_time\x20some','object':'Arb','return_type':'Bool','params':[]},{'id':0x58e,'name':'arb.compensation_time','object':'Arb','return_type':'U64','params':[]},{'id':0x58f,'name':'arb.time','object':'Arb','return_type':'U64','params':[]},{'id':0x590,'name':'arb.token_type','object':'Arb','return_type':'String','params':[]},{'id':0x5aa,'name':'service.description','object':'Service','return_type':'String','params':[]},{'id':0x5ab,'name':'service.location','object':'Service','return_type':'String','params':[]},{'id':0x5ac,'name':'service.sale\x20count','object':'Service','return_type':'U64','params':[]},{'id':0x5ad,'name':'service.sale\x20has','object':'Service','return_type':'Bool','params':['String']},{'id':0x5ae,'name':'service.sale.price','object':'Service','return_type':'U64','params':['String']},{'id':0x5af,'name':'service.sale.stock','object':'Service','return_type':'U64','params':['String']},{'id':0x5b0,'name':'service.sale.suspension','object':'Service','return_type':'Bool','params':['String']},{'id':0x5b1,'name':'service.sale.wip','object':'Service','return_type':'String','params':['String']},{'id':0x5b2,'name':'service.sale.wip_hash','object':'Service','return_type':'String','params':['String']},{'id':0x5b3,'name':'service.repository\x20count','object':'Service','return_type':'U64','params':[]},{'id':0x5b4,'name':'service.repository\x20has','object':'Service','return_type':'Bool','params':['Address']},{'id':0x5b5,'name':'service.buy_guard\x20some','object':'Service','return_type':'Bool','params':[]},{'id':0x5b6,'name':'service.buy_guard','object':'Service','return_type':'Address','params':[]},{'id':0x5b7,'name':'service.machine\x20some','object':'Service','return_type':'Bool','params':[]},{'id':0x5b8,'name':'service.machine','object':'Service','return_type':'Address','params':[]},{'id':0x5b9,'name':'service.published','object':'Service','return_type':'Bool','params':[]},{'id':0x5ba,'name':'service.paused','object':'Service','return_type':'Bool','params':[]},{'id':0x5bb,'name':'service.customer_required\x20count','object':'Service','return_type':'U64','params':[]},{'id':0x5bc,'name':'service.customer_required\x20has','object':'Service','return_type':'Bool','params':['String']},{'id':0x5bd,'name':'service.arbitration\x20count','object':'Service','return_type':'U64','params':[]},{'id':0x5be,'name':'service.arbitration\x20has','object':'Service','return_type':'Bool','params':['Address']},{'id':0x5bf,'name':'service.compensation_fund','object':'Service','return_type':'U64','params':[]},{'id':0x5c0,'name':'service.paused_time\x20some','object':'Service','return_type':'Bool','params':[]},{'id':0x5c1,'name':'service.paused_time','object':'Service','return_type':'U64','params':[]},{'id':0x5c2,'name':'service.setting_lock_duration','object':'Service','return_type':'U64','params':[]},{'id':0x5c3,'name':'service.order_allocators\x20some','object':'Service','return_type':'Bool','params':[]},{'id':0x5c4,'name':'service.order_allocators.description','object':'Service','return_type':'String','params':[]},{'id':0x5c5,'name':'service.order_allocators.threshold','object':'Service','return_type':'U64','params':[]},{'id':0x5c6,'name':'service.order_allocators.allocator\x20count','object':'Service','return_type':'U64','params':[]},{'id':0x5c7,'name':'service.order_allocators.allocator\x20has','object':'Service','return_type':'Bool','params':['Address'],'note':'name\x20fixed\x202026-09-08\x20(08\x20§六\x20F-5):\x20registry\x20typo\x20\x27allocatcor\x27\x20corrected\x20in\x20natives\x20+\x20SDK'},{'id':0x5c8,'name':'service.order_allocators.allocator.sharing\x20count','object':'Service','return_type':'U64','params':['Address']},{'id':0x5c9,'name':'service.order_allocators.allocator.fix','object':'Service','return_type':'U64','params':['Address']},{'id':0x5ca,'name':'service.order_allocators.allocator.max\x20some','object':'Service','return_type':'Bool','params':['Address']},{'id':0x5cb,'name':'service.order_allocators.allocator.max','object':'Service','return_type':'U64','params':['Address']},{'id':0x5cc,'name':'service.reward\x20count','object':'Service','return_type':'U64','params':[]},{'id':0x5cd,'name':'service.reward\x20has','object':'Service','return_type':'Bool','params':['Address']},{'id':0x5ce,'name':'service.um\x20some','object':'Service','return_type':'Bool','params':[]},{'id':0x5cf,'name':'service.um','object':'Service','return_type':'Address','params':[]},{'id':0x5d0,'name':'service.permission','object':'Service','return_type':'Address','params':[]},{'id':0x5d1,'name':'service.token_type','object':'Service','return_type':'String','params':[]},{'id':0x60e,'name':'order.item\x20count','object':'Order','return_type':'U64','params':[]},{'id':0x60f,'name':'order.item\x20has','object':'Order','return_type':'Bool','params':['String']},{'id':0x610,'name':'order.item.price','object':'Order','return_type':'U64','params':['String']},{'id':0x611,'name':'order.item.quantity','object':'Order','return_type':'U64','params':['String']},{'id':0x612,'name':'order.item.wip_hash','object':'Order','return_type':'String','params':['String']},{'id':0x613,'name':'order.discount\x20some','object':'Order','return_type':'Bool','params':[]},{'id':0x614,'name':'order.discount','object':'Order','return_type':'Address','params':[]},{'id':0x615,'name':'order.progress\x20some','object':'Order','return_type':'Bool','params':[]},{'id':0x616,'name':'order.progress','object':'Order','return_type':'Address','params':[]},{'id':0x617,'name':'order.machine\x20some','object':'Order','return_type':'Bool','params':[]},{'id':0x618,'name':'order.machine','object':'Order','return_type':'Address','params':[]},{'id':0x619,'name':'order.amount','object':'Order','return_type':'U64','params':[]},{'id':0x61a,'name':'order.owner','object':'Order','return_type':'Address','params':[]},{'id':0x61b,'name':'order.service','object':'Order','return_type':'Address','params':[]},{'id':0x61c,'name':'order.dispute\x20count','object':'Order','return_type':'U64','params':[]},{'id':0x61d,'name':'order.dispute\x20has','object':'Order','return_type':'Bool','params':['Address']},{'id':0x61e,'name':'order.agent\x20count','object':'Order','return_type':'U64','params':[]},{'id':0x61f,'name':'order.agent\x20has','object':'Order','return_type':'Bool','params':['Address']},{'id':0x620,'name':'order.allocation\x20some','object':'Order','return_type':'Bool','params':[]},{'id':0x621,'name':'order.allocation','object':'Order','return_type':'Address','params':[]},{'id':0x622,'name':'order.claimed_by\x20some','object':'Order','return_type':'Bool','params':[]},{'id':0x623,'name':'order.claimed_by','object':'Order','return_type':'Address','params':[]},{'id':0x624,'name':'order.required_info\x20some','object':'Order','return_type':'Bool','params':[]},{'id':0x625,'name':'order.required_info','object':'Order','return_type':'Address','params':[]},{'id':0x626,'name':'order.time','object':'Order','return_type':'U64','params':[]},{'id':0x640,'name':'reward.description','object':'Reward','return_type':'String','params':[]},{'id':0x641,'name':'reward.guard\x20count','object':'Reward','return_type':'U64','params':[]},{'id':0x642,'name':'reward.guard\x20has','object':'Reward','return_type':'Bool','params':['Address']},{'id':0x643,'name':'reward.guard.recipient.variant','object':'Reward','return_type':'U8','params':['Address']},{'id':0x644,'name':'reward.guard.amount','object':'Reward','return_type':'U64','params':['Address']},{'id':0x645,'name':'reward.guard.expiration_time\x20some','object':'Reward','return_type':'Bool','params':['Address']},{'id':0x646,'name':'reward.guard.expiration_time','object':'Reward','return_type':'U64','params':['Address']},{'id':0x647,'name':'reward.guard.store_from_id\x20some','object':'Reward','return_type':'Bool','params':['Address']},{'id':0x648,'name':'reward.guard.store_from_id','object':'Reward','return_type':'U8','params':['Address']},{'id':0x649,'name':'reward.balance','object':'Reward','return_type':'U64','params':[]},{'id':0x64a,'name':'reward.guard_not_added_expiration_time\x20some','object':'Reward','return_type':'Bool','params':[]},{'id':0x64b,'name':'reward.guard_not_added_expiration_time','object':'Reward','return_type':'U64','params':[]},{'id':0x64c,'name':'reward.record\x20count','object':'Reward','return_type':'U64','params':[]},{'id':0x64d,'name':'reward.record\x20has','object':'Reward','return_type':'Bool','params':['Address']},{'id':0x64e,'name':'reward.record.total','object':'Reward','return_type':'U64','params':['Address']},{'id':0x64f,'name':'reward.record.amount\x20count','object':'Reward','return_type':'U64','params':['Address']},{'id':0x650,'name':'reward.record.amount\x20has','object':'Reward','return_type':'Bool','params':['Address','U64']},{'id':0x651,'name':'reward.record.amount.guard','object':'Reward','return_type':'Address','params':['Address','U64']},{'id':0x652,'name':'reward.record.amount.amount','object':'Reward','return_type':'U64','params':['Address','U64']},{'id':0x653,'name':'reward.record.amount.time','object':'Reward','return_type':'U64','params':['Address','U64']},{'id':0x654,'name':'reward.record.amount.store_from_id\x20some','object':'Reward','return_type':'Bool','params':['Address','U64']},{'id':0x655,'name':'reward.record.amount.store_from_id','object':'Reward','return_type':'Address','params':['Address','U64']},{'id':0x656,'name':'reward.permission','object':'Reward','return_type':'Address','params':[],'note':'verified\x202026-09-08\x20(08\x20§六\x20F-3):\x20registration\x20+\x20handler\x20+\x20SDK\x20all\x20return\x20Address\x20—\x20usable'},{'id':0x657,'name':'reward.um\x20some','object':'Reward','return_type':'Bool','params':[]},{'id':0x658,'name':'reward.um','object':'Reward','return_type':'Address','params':[]},{'id':0x659,'name':'reward.token_type','object':'Reward','return_type':'String','params':[]},{'id':0x65a,'name':'reward.record.find_first','object':'Reward','return_type':'U64','params':['VectorU8']},{'id':0x65b,'name':'reward.record.find_last','object':'Reward','return_type':'U64','params':['VectorU8']},{'id':0x65c,'name':'reward.record.count_where','object':'Reward','return_type':'U64','params':['VectorU8']},{'id':0x65d,'name':'reward.record.exists_where','object':'Reward','return_type':'Bool','params':['VectorU8']},{'id':0x672,'name':'demand.description','object':'Demand','return_type':'String','params':[]},{'id':0x673,'name':'demand.location','object':'Demand','return_type':'String','params':[]},{'id':0x674,'name':'demand.reward\x20count','object':'Demand','return_type':'U64','params':[]},{'id':0x675,'name':'demand.reward\x20has','object':'Demand','return_type':'Bool','params':['Address']},{'id':0x676,'name':'demand.guard\x20count','object':'Demand','return_type':'U64','params':[]},{'id':0x677,'name':'demand.guard\x20has','object':'Demand','return_type':'Bool','params':['Address']},{'id':0x678,'name':'demand.guard.service_identifier\x20some','object':'Demand','return_type':'Bool','params':['Address']},{'id':0x679,'name':'demand.guard.service_identifier','object':'Demand','return_type':'U8','params':['Address']},{'id':0x67a,'name':'demand.presenter\x20count','object':'Demand','return_type':'U64','params':[]},{'id':0x67b,'name':'demand.presenter\x20has','object':'Demand','return_type':'Bool','params':['Address']},{'id':0x67c,'name':'demand.presenter.recommend','object':'Demand','return_type':'String','params':['Address']},{'id':0x67d,'name':'demand.presenter.service\x20some','object':'Demand','return_type':'Bool','params':['Address']},{'id':0x67e,'name':'demand.presenter.service','object':'Demand','return_type':'Address','params':['Address']},{'id':0x67f,'name':'demand.presenter.update_time','object':'Demand','return_type':'U64','params':['Address']},{'id':0x680,'name':'demand.presenter.acceptance_score\x20some','object':'Demand','return_type':'Bool','params':['Address']},{'id':0x681,'name':'demand.presenter.acceptance_score','object':'Demand','return_type':'U8','params':['Address']},{'id':0x682,'name':'demand.presenter.feedback','object':'Demand','return_type':'String','params':['Address']},{'id':0x683,'name':'demand.presenter.feedback_time','object':'Demand','return_type':'U64','params':['Address']},{'id':0x684,'name':'demand.um\x20some','object':'Demand','return_type':'Bool','params':[]},{'id':0x685,'name':'demand.um','object':'Demand','return_type':'Address','params':[]},{'id':0x686,'name':'demand.permission','object':'Demand','return_type':'Address','params':[]},{'id':0x6a4,'name':'discount.name','object':'Discount','return_type':'String','params':[]},{'id':0x6a5,'name':'discount.discount_type','object':'Discount','return_type':'U8','params':[]},{'id':0x6a6,'name':'discount.benchmark\x20some','object':'Discount','return_type':'Bool','params':[]},{'id':0x6a7,'name':'discount.benchmark','object':'Discount','return_type':'U64','params':[]},{'id':0x6a8,'name':'discount.off','object':'Discount','return_type':'U64','params':[]},{'id':0x6a9,'name':'discount.time_start','object':'Discount','return_type':'U64','params':[]},{'id':0x6aa,'name':'discount.time_end','object':'Discount','return_type':'U64','params':[]},{'id':0x6ab,'name':'discount.service','object':'Discount','return_type':'Address','params':[]},{'id':0x6ac,'name':'discount.transferable','object':'Discount','return_type':'Bool','params':[]},{'id':0x6d6,'name':'entityRegistrar.entity\x20count','object':'EntityRegistrar','return_type':'U64','params':[]},{'id':0x6d7,'name':'entityRegistrar.entity\x20has','object':'EntityRegistrar','return_type':'Bool','params':['Address']},{'id':0x6d8,'name':'entityRegistrar.entity_description','object':'EntityRegistrar','return_type':'String','params':['Address']},{'id':0x6d9,'name':'entityRegistrar.entity_time','object':'EntityRegistrar','return_type':'U64','params':['Address']},{'id':0x6da,'name':'entityRegistrar.entity_referrer\x20some','object':'EntityRegistrar','return_type':'Bool','params':['Address']},{'id':0x6db,'name':'entityRegistrar.entity_referrer','object':'EntityRegistrar','return_type':'Address','params':['Address']},{'id':0x6dc,'name':'entityRegistrar.entity_resource\x20some','object':'EntityRegistrar','return_type':'Bool','params':['Address']},{'id':0x6dd,'name':'entityRegistrar.entity_resource','object':'EntityRegistrar','return_type':'Address','params':['Address']},{'id':0x6de,'name':'entityRegistrar.entity_records\x20count','object':'EntityRegistrar','return_type':'U64','params':['Address']},{'id':0x6df,'name':'entityRegistrar.entity_records\x20has','object':'EntityRegistrar','return_type':'Bool','params':['Address','String']},{'id':0x6e0,'name':'entityRegistrar.entity_records','object':'EntityRegistrar','return_type':'Value','params':['Address','String']},{'id':0x708,'name':'EntityLinker.entity\x20count','object':'EntityLinker','return_type':'U64','params':[]},{'id':0x709,'name':'EntityLinker.entity\x20has','object':'EntityLinker','return_type':'Bool','params':['Address']},{'id':0x70a,'name':'EntityLinker.entity_voted\x20count','object':'EntityLinker','return_type':'U32','params':['Address']},{'id':0x70b,'name':'EntityLinker.entity_voted_record\x20has','object':'EntityLinker','return_type':'Bool','params':['Address','Address']},{'id':0x70c,'name':'EntityLinker.entity_voted_record','object':'EntityLinker','return_type':'U8','params':['Address','Address']},{'id':0x70d,'name':'EntityLinker.entity_voted_record.like','object':'EntityLinker','return_type':'Bool','params':['Address','Address']},{'id':0x70e,'name':'EntityLinker.entity_voted_record.dislike','object':'EntityLinker','return_type':'Bool','params':['Address','Address']},{'id':0x70f,'name':'EntityLinker.entity_voted_record.favor','object':'EntityLinker','return_type':'Bool','params':['Address','Address']},{'id':0x710,'name':'EntityLinker.entity_voted_record.time','object':'EntityLinker','return_type':'U64','params':['Address','Address']},{'id':0x73a,'name':'resource.object\x20count','object':'Resource','return_type':'U64','params':[]},{'id':0x73b,'name':'resource.object\x20has','object':'Resource','return_type':'Bool','params':['Address']},{'id':0x73c,'name':'resource.object.name','object':'Resource','return_type':'String','params':['Address']},{'id':0x73d,'name':'resource.object.tag\x20count','object':'Resource','return_type':'U64','params':['Address']},{'id':0x73e,'name':'resource.object.tag\x20has','object':'Resource','return_type':'Bool','params':['Address','String']},{'id':0x76c,'name':'treasury.description','object':'Treasury','return_type':'String','params':[]},{'id':0x76d,'name':'treasury.balance','object':'Treasury','return_type':'U64','params':[]},{'id':0x76e,'name':'treasury.history\x20count','object':'Treasury','return_type':'U64','params':[]},{'id':0x76f,'name':'treasury.history\x20has','object':'Treasury','return_type':'Bool','params':['Address']},{'id':0x770,'name':'treasury.history.op','object':'Treasury','return_type':'U8','params':['Address']},{'id':0x771,'name':'treasury.history.signer','object':'Treasury','return_type':'Address','params':['Address']},{'id':0x772,'name':'treasury.history.external_guard\x20some','object':'Treasury','return_type':'Bool','params':['Address']},{'id':0x773,'name':'treasury.history.external_guard','object':'Treasury','return_type':'Address','params':['Address']},{'id':0x774,'name':'treasury.history.amount','object':'Treasury','return_type':'U64','params':['Address']},{'id':0x775,'name':'treasury.history.time','object':'Treasury','return_type':'U64','params':['Address']},{'id':0x776,'name':'treasury.history.store_from_id\x20some','object':'Treasury','return_type':'Bool','params':['Address']},{'id':0x777,'name':'treasury.history.store_from_id','object':'Treasury','return_type':'Address','params':['Address']},{'id':0x778,'name':'treasury.external_deposit_guard\x20count','object':'Treasury','return_type':'U64','params':[]},{'id':0x779,'name':'treasury.external_deposit_guard\x20has','object':'Treasury','return_type':'Bool','params':['Address']},{'id':0x77a,'name':'treasury.external_deposit_guard.identifier\x20some','object':'Treasury','return_type':'Bool','params':['Address']},{'id':0x77b,'name':'treasury.external_deposit_guard.identifier','object':'Treasury','return_type':'U8','params':['Address']},{'id':0x77c,'name':'treasury.external_deposit_guard.store_from_id\x20some','object':'Treasury','return_type':'Bool','params':['Address']},{'id':0x77d,'name':'treasury.external_deposit_guard.store_from_id','object':'Treasury','return_type':'U8','params':['Address']},{'id':0x77e,'name':'treasury.external_withdraw_guard\x20count','object':'Treasury','return_type':'U64','params':[]},{'id':0x77f,'name':'treasury.external_withdraw_guard\x20has','object':'Treasury','return_type':'Bool','params':['Address']},{'id':0x780,'name':'treasury.external_withdraw_guard.identifier','object':'Treasury','return_type':'U8','params':['Address']},{'id':0x781,'name':'treasury.external_withdraw_guard.store_from_id\x20some','object':'Treasury','return_type':'Bool','params':['Address']},{'id':0x782,'name':'treasury.external_withdraw_guard.store_from_id','object':'Treasury','return_type':'U8','params':['Address']},{'id':0x783,'name':'treasury.inflow','object':'Treasury','return_type':'U128','params':[]},{'id':0x784,'name':'treasury.outflow','object':'Treasury','return_type':'U128','params':[]},{'id':0x785,'name':'treasury.permission','object':'Treasury','return_type':'Address','params':[]},{'id':0x786,'name':'treasury.um\x20some','object':'Treasury','return_type':'Bool','params':[]},{'id':0x787,'name':'treasury.um','object':'Treasury','return_type':'Address','params':[]},{'id':0x788,'name':'treasury.token_type','object':'Treasury','return_type':'String','params':[]},{'id':0x79e,'name':'proof.proof','object':'Proof','return_type':'VectorU8','params':[]},{'id':0x79f,'name':'proof.item_count\x20some','object':'Proof','return_type':'Bool','params':[]},{'id':0x7a0,'name':'proof.item_count','object':'Proof','return_type':'U64','params':[]},{'id':0x7a1,'name':'proof.description','object':'Proof','return_type':'String','params':[]},{'id':0x7a2,'name':'proof.server_pubkey','object':'Proof','return_type':'VectorU8','params':[]},{'id':0x7a3,'name':'proof.server_signature','object':'Proof','return_type':'VectorU8','params':[]},{'id':0x7a4,'name':'proof.about\x20some','object':'Proof','return_type':'Bool','params':[]},{'id':0x7a5,'name':'proof.about','object':'Proof','return_type':'Address','params':[]},{'id':0x7a6,'name':'proof.signer','object':'Proof','return_type':'Address','params':[]},{'id':0x7a7,'name':'proof.proof_type','object':'Proof','return_type':'U64','params':[]},{'id':0x7a8,'name':'proof.time','object':'Proof','return_type':'U64','params':[]},{'id':0x7d0,'name':'contact.description','object':'Contact','return_type':'String','params':[]},{'id':0x7d1,'name':'contact.location','object':'Contact','return_type':'String','params':[]},{'id':0x7d2,'name':'contact.ims\x20count','object':'Contact','return_type':'U64','params':[]},{'id':0x7d3,'name':'contact.ims\x20has','object':'Contact','return_type':'Bool','params':['Address']},{'id':0x7d4,'name':'contact.ims.status','object':'Contact','return_type':'String','params':['Address']},{'id':0x7d5,'name':'contact.ims.join_time','object':'Contact','return_type':'U64','params':['Address']},{'id':0x7d6,'name':'contact.ims.description','object':'Contact','return_type':'String','params':['Address']},{'id':0x7d7,'name':'contact.permission','object':'Contact','return_type':'Address','params':[]},{'id':0x802,'name':'passport.guard\x20count','object':'Passport','return_type':'U64','params':[]},{'id':0x803,'name':'passport.result','object':'Passport','return_type':'Bool','params':[]},{'id':0x804,'name':'passport.tx_hash','object':'Passport','return_type':'VectorU8','params':[]},{'id':0x805,'name':'passport.impack\x20count','object':'Passport','return_type':'U64','params':[]},{'id':0x806,'name':'passport.impack\x20has','object':'Passport','return_type':'Bool','params':['Address']},{'id':0x807,'name':'passport.time','object':'Passport','return_type':'U64','params':[]},{'id':0x808,'name':'passport.signer','object':'Passport','return_type':'Address','params':[]},{'id':0x809,'name':'passport.has_verified','object':'Passport','return_type':'Bool','params':[]},{'id':0x80a,'name':'passport.guard.result','object':'Passport','return_type':'Bool','params':['Address']},{'id':0x80b,'name':'passport.guard.impack','object':'Passport','return_type':'Bool','params':['Address']},{'id':0x80c,'name':'passport.guard.relies_logic_and','object':'Passport','return_type':'Bool','params':['Address']},{'id':0x80d,'name':'passport.guard.relies_count','object':'Passport','return_type':'U64','params':['Address']},{'id':0x80e,'name':'passport.guard.relies\x20has','object':'Passport','return_type':'Bool','params':['Address','Address']},{'id':0x80f,'name':'passport.guard.submission\x20count','object':'Passport','return_type':'U64','params':['Address']},{'id':0x810,'name':'passport.guard.submission\x20has','object':'Passport','return_type':'Bool','params':['Address','U8']},{'id':0x811,'name':'passport.guard.submission.value','object':'Passport','return_type':'Value','params':['Address','U8']},{'id':0x834,'name':'entity_permission.entity\x20has','object':'EntityPermission','return_type':'Bool','params':['Address']},{'id':0x835,'name':'entity_permission.entity\x20count','object':'EntityPermission','return_type':'U64','params':['Address']},{'id':0x836,'name':'entity_permission.entity.perm','object':'EntityPermission','return_type':'U8','params':['Address','Address']},{'id':0x837,'name':'entity_permission.entity.is_owner','object':'EntityPermission','return_type':'Bool','params':['Address','Address']},{'id':0x838,'name':'entity_permission.entity.is_admin','object':'EntityPermission','return_type':'Bool','params':['Address','Address']},{'id':0x839,'name':'entity_permission.entity.is_entity','object':'EntityPermission','return_type':'Bool','params':['Address','Address']},{'id':0x83a,'name':'entity_permission.entity.permission.time','object':'EntityPermission','return_type':'U64','params':['Address','Address']},{'id':0x866,'name':'entity_contact.entity\x20has','object':'EntityContact','return_type':'Bool','params':['Address']},{'id':0x867,'name':'entity_contact.entity\x20count','object':'EntityContact','return_type':'U64','params':['Address']},{'id':0x868,'name':'entity_contact.entity.contact.time','object':'EntityContact','return_type':'U64','params':['Address','Address']},{'id':0x898,'name':'object_linker.core\x20has','object':'ObjectLinkerCore','return_type':'Bool','params':['Address']},{'id':0x899,'name':'object_linker.core\x20count','object':'ObjectLinkerCore','return_type':'U64','params':['Address']},{'id':0x89a,'name':'object_linker.core.who.time','object':'ObjectLinkerCore','return_type':'U64','params':['Address','Address']},{'id':0x89b,'name':'object_linker.tx\x20has','object':'ObjectLinkerTx','return_type':'Bool','params':['Address']},{'id':0x89c,'name':'object_linker.tx\x20count','object':'ObjectLinkerTx','return_type':'U64','params':['Address']},{'id':0x89d,'name':'object_linker.tx.who.time','object':'ObjectLinkerTx','return_type':'U64','params':['Address','Address']},{'id':0x89e,'name':'object_linker.core.who\x20has','object':'ObjectLinkerCore','return_type':'Bool','params':['Address','Address']},{'id':0x89f,'name':'object_linker.tx.who\x20has','object':'ObjectLinkerTx','return_type':'Bool','params':['Address','Address']},{'id':0x8ca,'name':'entity_order.entity\x20has','object':'EntityOrder','return_type':'Bool','params':['Address']},{'id':0x8cb,'name':'entity_order.entity\x20count','object':'EntityOrder','return_type':'U64','params':['Address']},{'id':0x8cc,'name':'entity_order.entity.order','object':'EntityOrder','return_type':'U8','params':['Address','Address']},{'id':0x8cd,'name':'entity_order.entity.order.is_owner','object':'EntityOrder','return_type':'Bool','params':['Address','Address']},{'id':0x8ce,'name':'entity_order.entity.order.is_agent','object':'EntityOrder','return_type':'Bool','params':['Address','Address']},{'id':0x8cf,'name':'entity_order.entity.order.time','object':'EntityOrder','return_type':'U64','params':['Address','Address']}];export function getQueryById(a){return QUERY_REGISTRY['find'](b=>b['id']===a);}export function queriesByObject(a){return QUERY_REGISTRY['filter'](b=>b['object']===a&&!b['unreachable']);}export function queryByName(a){return QUERY_REGISTRY['find'](b=>b['name']===a&&!b['unreachable']);}export const QUERY_BANDS=[{'from':0x3e9,'to':0x3f5,'object':'Permission','count':0xd},{'from':0x41a,'to':0x42c,'object':'Allocation','count':0x13},{'from':0x44c,'to':0x45a,'object':'Payment','count':0xf},{'from':0x47e,'to':0x494,'object':'Repository','count':0x17},{'from':0x4b0,'to':0x4c8,'object':'Machine','count':0x19},{'from':0x4e2,'to':0x4ff,'object':'Progress','count':0x1e},{'from':0x546,'to':0x552,'object':'Arbitration','count':0xd},{'from':0x578,'to':0x590,'object':'Arb','count':0x19},{'from':0x5aa,'to':0x5d1,'object':'Service','count':0x28},{'from':0x60e,'to':0x626,'object':'Order','count':0x19},{'from':0x640,'to':0x65d,'object':'Reward','count':0x1e},{'from':0x672,'to':0x686,'object':'Demand','count':0x15},{'from':0x6a4,'to':0x6ac,'object':'Discount','count':0x9},{'from':0x6d6,'to':0x6e0,'object':'EntityRegistrar','count':0xb},{'from':0x708,'to':0x710,'object':'EntityLinker','count':0x9},{'from':0x73a,'to':0x73e,'object':'Resource','count':0x5},{'from':0x76c,'to':0x788,'object':'Treasury','count':0x1d},{'from':0x79e,'to':0x7a8,'object':'Proof','count':0xb},{'from':0x7d0,'to':0x7d7,'object':'Contact','count':0x8},{'from':0x802,'to':0x811,'object':'Passport','count':0x10},{'from':0x834,'to':0x83a,'object':'EntityPermission','count':0x7},{'from':0x866,'to':0x868,'object':'EntityContact','count':0x3},{'from':0x898,'to':0x89a,'object':'ObjectLinkerCore','count':0x3},{'from':0x89b,'to':0x89d,'object':'ObjectLinkerTx','count':0x3},{'from':0x89e,'to':0x89e,'object':'ObjectLinkerCore','count':0x1},{'from':0x89f,'to':0x89f,'object':'ObjectLinkerTx','count':0x1},{'from':0x8ca,'to':0x8cf,'object':'EntityOrder','count':0x6}];export const SERIALIZATION={'operand_order':'reverse-logical','op_code_position':'after-operands','count_byte':'after-op_code\x20(multi-operand\x20ops)','query_param_position':'after-op_byte\x20(subcode/identifier/query_id)','u16_endian':'little\x20(BCS)','final_stack':'exactly\x20one\x20Bool\x20(or\x20TYPE_VALUE)'};export const GUARD_LIMITS={'MAX_INPUT_SIZE':0x400,'MAX_TABLE_SIZE':0x9c40,'MAX_DEPENDED_COUNT':0x4,'MAX_TABLE_ENTRIES':0xff,'MAX_NUMBER_OPERANDS':0x8,'MAX_LOGIC_OPERANDS':0x8,'MAX_STRING_OPERANDS':0x6,'MAX_NESTING_DEPTH':0x8,'PASSPORT_MAX_GUARD_COUNT':0x14,'PASSPORT_MAX_SUBMISSION_SIZE':0x100};
@@ -1,86 +0,0 @@
1
- import { type GuardRiskAssessment, type RiskLevel } from "./guard-risk.js";
2
- import { type GuardValidationIssue } from "@wowok/wowok";
3
- export type GuardConfirmGateStatus = "approved" | "blocked_checklist" | "blocked_risk" | "blocked_user" | "blocked_environment";
4
- export interface GuardConfirmGateResult {
5
- status: GuardConfirmGateStatus;
6
- checklist_result: GuardChecklistResult;
7
- risk_result?: GuardRiskAssessmentResult;
8
- user_confirmation?: GuardUserConfirmation;
9
- environment_result?: GuardEnvironmentResult;
10
- confirmation_text?: string;
11
- block_reason?: string;
12
- decision_record: GuardDecisionRecord;
13
- }
14
- export interface GuardChecklistResult {
15
- passed: boolean;
16
- checked_items: GuardChecklistItem[];
17
- failed_items: GuardChecklistItem[];
18
- warnings: GuardChecklistItem[];
19
- }
20
- export interface GuardChecklistItem {
21
- id: string;
22
- description: string;
23
- status: "pass" | "fail" | "warning" | "skip";
24
- detail?: string;
25
- }
26
- export interface GuardRiskAssessmentResult {
27
- overall_risk_level: RiskLevel;
28
- blocking_risks: string[];
29
- warning_risks: string[];
30
- recommendation: "publish" | "fix_first" | "do_not_publish";
31
- }
32
- export interface GuardUserConfirmation {
33
- questions_asked: GuardConfirmationQuestion[];
34
- user_responses: GuardConfirmationResponse[];
35
- approved: boolean;
36
- declined_reason?: string;
37
- timestamp: string;
38
- }
39
- export interface GuardConfirmationQuestion {
40
- id: string;
41
- question: string;
42
- expected_response: "yes" | "no" | "either";
43
- blocking: boolean;
44
- explanation?: string;
45
- }
46
- export interface GuardConfirmationResponse {
47
- question_id: string;
48
- response: "yes" | "no";
49
- reason?: string;
50
- }
51
- export interface GuardEnvironmentResult {
52
- testnet_tested: boolean;
53
- binding_target_exists: boolean;
54
- rely_chain_resolvable: boolean;
55
- passport_generated_successfully: boolean;
56
- warnings: string[];
57
- }
58
- export interface GuardDecisionRecord {
59
- final_decision: "approved" | "blocked";
60
- final_reason?: string;
61
- timestamp: string;
62
- layers_passed: ("checklist" | "risk" | "user" | "environment")[];
63
- }
64
- export interface GuardJsonForConfirm {
65
- name?: string;
66
- root: unknown;
67
- description?: string;
68
- binding_target?: string;
69
- binding_scene_id?: string;
70
- }
71
- export declare const GUARD_PUBLISH_CHECKLIST: GuardChecklistItem[];
72
- export declare const GUARD_CONFIRMATION_QUESTIONS: GuardConfirmationQuestion[];
73
- export declare const GUARD_CONFIRM_VERSION = "1.0.0";
74
- export interface GuardConfirmGateInput {
75
- guard_json: GuardJsonForConfirm;
76
- skip_user_confirmation?: boolean;
77
- skip_environment?: boolean;
78
- existing_lint_issues?: GuardValidationIssue[];
79
- existing_risk_assessment?: GuardRiskAssessment;
80
- user_responses?: GuardConfirmationResponse[];
81
- }
82
- export declare function runGuardConfirmGate(input: GuardConfirmGateInput): GuardConfirmGateResult;
83
- export declare function progressiveGuardCheck(guard_json: GuardJsonForConfirm): {
84
- layer: "checklist" | "risk" | "none";
85
- result: GuardChecklistResult | GuardRiskAssessmentResult | null;
86
- };
@@ -1 +0,0 @@
1
- import{assessGuardRisks}from'./guard-risk.js';import{GUARD_SCENES}from'./guard-ledger.js';export const GUARD_PUBLISH_CHECKLIST=[{'id':'GC-01','description':'Root\x20node\x20exists\x20and\x20is\x20a\x20valid\x20GuardNode\x20type','status':'skip'},{'id':'GC-02','description':'All\x20table\x20entries\x20have\x20valid\x20value_type\x20(0-18)','status':'skip'},{'id':'GC-03','description':'Table\x20size\x20within\x20MAX_TABLE_SIZE\x20limit','status':'skip'},{'id':'GC-04','description':'Description\x20length\x20within\x20MAX_DESCRIPTION_LENGTH','status':'skip'},{'id':'GC-05','description':'Binding\x20scene\x20identified\x20(one\x20of\x208\x20scenes)\x20or\x20Standalone','status':'skip'},{'id':'GC-06','description':'All\x20query\x20nodes\x20reference\x20valid\x20GUARDQUERY\x20instructions','status':'skip'},{'id':'GC-07','description':'All\x20witness\x20nodes\x20use\x20valid\x20WitnessType\x20(100-108)','status':'skip'},{'id':'GC-08','description':'No\x20circular\x20rely\x20chain\x20in\x20root\x20tree','status':'skip'},{'id':'GC-09','description':'Type\x20compatibility\x20verified\x20for\x20all\x20equal/compare\x20nodes','status':'skip'},{'id':'GC-10','description':'Context\x20nodes\x20(Signer/Clock/Guard)\x20used\x20with\x20correct\x20semantics','status':'skip'},{'id':'GC-11','description':'Submission\x20data\x20(b_submission=true)\x20marked\x20as\x20Type3\x20with\x20forgery\x20risk\x20evaluated','status':'skip'},{'id':'GC-12','description':'Immutability\x20acknowledged\x20—\x20Guard\x20CANNOT\x20be\x20modified\x20after\x20creation','status':'skip'}];export const GUARD_CONFIRMATION_QUESTIONS=[{'id':'QG1','question':'Have\x20you\x20verified\x20that\x20the\x20Guard\x27s\x20validation\x20rule\x20matches\x20your\x20business\x20intent\x20(e.g.,\x20\x27customer\x20must\x20have\x20paid\x27\x20rather\x20than\x20\x27customer\x20must\x20NOT\x20have\x20paid\x27)?','expected_response':'yes','blocking':!![],'explanation':'Inverted\x20logic\x20is\x20the\x20#1\x20cause\x20of\x20Guard\x20failures.\x20The\x20rule_sentence\x20in\x20your\x20puzzle\x20should\x20match\x20the\x20on-chain\x20enforcement\x20direction.'},{'id':'QG2','question':'Have\x20you\x20confirmed\x20that\x20all\x20Type3\x20(b_submission=true)\x20data\x20sources\x20are\x20forgery-resistant\x20(submitted\x20by\x20trusted\x20callers,\x20not\x20user-supplied)?','expected_response':'yes','blocking':!![],'explanation':'Type3\x20data\x20is\x20the\x20most\x20common\x20attack\x20vector.\x20If\x20users\x20can\x20submit\x20arbitrary\x20values,\x20the\x20Guard\x20is\x20bypassable.'},{'id':'QG3','question':'Have\x20you\x20tested\x20the\x20Guard\x20on\x20testnet\x20with\x20gen_passport\x20to\x20verify\x20it\x20returns\x20the\x20expected\x20pass/fail\x20result\x20for\x20both\x20valid\x20and\x20invalid\x20inputs?','expected_response':'yes','blocking':!![],'explanation':'gen_passport\x20is\x20the\x20only\x20way\x20to\x20test\x20Guard\x20evaluation\x20without\x20binding\x20it.\x20Skipping\x20this\x20risks\x20publishing\x20a\x20broken\x20Guard.'},{'id':'QG4','question':'Is\x20the\x20binding\x20target\x20(Service/Machine/Reward/etc.)\x20already\x20published\x20or\x20planned\x20in\x20the\x20same\x20deployment\x20batch?','expected_response':'yes','blocking':![],'explanation':'Guard\x20can\x20be\x20created\x20standalone,\x20but\x20its\x20binding\x20field\x20expects\x20an\x20existing\x20object.\x20Plan\x20creation\x20order\x20accordingly.'},{'id':'QG5','question':'Are\x20you\x20aware\x20that\x20this\x20Guard\x20is\x20IMMUTABLE\x20after\x20creation\x20and\x20cannot\x20be\x20modified\x20(only\x20a\x20new\x20version\x20can\x20be\x20created)?','expected_response':'yes','blocking':!![],'explanation':'Unlike\x20Machine\x20(which\x20allows\x20permission\x20changes),\x20Guard\x20has\x20NO\x20update\x20entry\x20point.\x20Review\x20the\x20rule\x20twice\x20before\x20confirming.'},{'id':'QG6','question':'Have\x20you\x20reviewed\x20the\x20game-theory\x20implications\x20—\x20does\x20this\x20Guard\x20favor\x20one\x20stakeholder\x20(customer/provider/arbitrator)\x20unfairly?','expected_response':'no','blocking':![],'explanation':'Answer\x20\x27no\x27\x20=\x20no\x20unfair\x20advantage.\x20If\x20\x27yes\x27,\x20review\x20the\x20game_theory\x20risk\x20rules\x20in\x20guard-risk.ts\x20and\x20adjust.'}];export const GUARD_CONFIRM_VERSION='1.0.0';export function runGuardConfirmGate(a){const b={'final_decision':'blocked','timestamp':new Date()['toISOString'](),'layers_passed':[]},c=runStaticChecklist(a['guard_json'],a['existing_lint_issues']);if(!c['passed'])return{'status':'blocked_checklist','checklist_result':c,'decision_record':{...b,'final_reason':'Layer\x201\x20failed:\x20'+c['failed_items']['map'](e=>e['id'])['join'](',\x20')}};b['layers_passed']['push']('checklist');let d;if(a['existing_risk_assessment'])d=adaptRiskAssessment(a['existing_risk_assessment']);else{const e=a['guard_json']['root'],f=assessGuardRisks({'table':e?.['table']??[],'root':a['guard_json']['root'],'rely':e?.['rely']});d=adaptRiskAssessment(f);}if(d['recommendation']==='do_not_publish')return{'status':'blocked_risk','checklist_result':c,'risk_result':d,'decision_record':{...b,'final_reason':'Layer\x202\x20blocked:\x20'+d['blocking_risks']['length']+'\x20CRITICAL\x20risks'}};b['layers_passed']['push']('risk');if(!a['skip_user_confirmation']){const g=generateGuardConfirmationText(a['guard_json'],c,d),h=processUserConfirmation(a['user_responses']);if(!h['approved'])return{'status':'blocked_user','checklist_result':c,'risk_result':d,'confirmation_text':g,'user_confirmation':h,'decision_record':{...b,'final_reason':'Layer\x203\x20declined:\x20'+(h['declined_reason']??'no\x20reason\x20given')}};b['layers_passed']['push']('user');if(!a['skip_environment']){const i=verifyGuardEnvironment(a['guard_json']);if(!i['testnet_tested']||!i['rely_chain_resolvable'])return{'status':'blocked_environment','checklist_result':c,'risk_result':d,'user_confirmation':h,'environment_result':i,'decision_record':{...b,'final_reason':'Layer\x204\x20failed:\x20environment\x20issues'}};b['layers_passed']['push']('environment');}return{'status':'approved','checklist_result':c,'risk_result':d,'user_confirmation':h,'confirmation_text':generateGuardConfirmationText(a['guard_json'],c,d),'decision_record':{...b,'final_decision':'approved'}};}return b['layers_passed']['push']('user'),{'status':'approved','checklist_result':c,'risk_result':d,'decision_record':{...b,'final_decision':'approved'}};}function runStaticChecklist(a,b){const c=[],d=[],e=[];for(const f of GUARD_PUBLISH_CHECKLIST){const g={...f,'status':'skip'};try{const h=evaluateChecklistItem(g['id'],a,b);g['status']=h['status'],g['detail']=h['detail'];if(h['status']==='fail')d['push'](g);else{if(h['status']==='warning')e['push'](g);}}catch(i){g['status']='warning',g['detail']='Check\x20error:\x20'+i['message'],e['push'](g);}c['push'](g);}return{'passed':d['length']===0x0,'checked_items':c,'failed_items':d,'warnings':e};}function evaluateChecklistItem(a,b,c){const d=b['root'];switch(a){case'GC-01':if(!d||!d['type'])return{'status':'fail','detail':'Root\x20node\x20missing\x20or\x20has\x20no\x20type'};return{'status':'pass'};case'GC-02':case'GC-03':case'GC-04':{if(c&&c['length']>0x0){const e=c['find'](f=>f['path']?.['includes']('table')||f['path']?.['includes']('description'));if(e)return{'status':'fail','detail':e['message']};}return{'status':'pass','detail':'Validated\x20by\x20SDK\x20validateGuardData'};}case'GC-05':{if(b['binding_scene_id']){const f=GUARD_SCENES['find'](g=>g['id']===b['binding_scene_id']);if(f)return{'status':'pass','detail':'Scene:\x20'+f['id']};return{'status':'warning','detail':'Scene\x20ID\x20\x22'+b['binding_scene_id']+'\x22\x20not\x20found\x20in\x20ledger'};}return{'status':'warning','detail':'No\x20binding\x20scene\x20identified\x20—\x20verify\x20Standalone\x20intent'};}case'GC-06':case'GC-07':case'GC-08':case'GC-09':case'GC-10':case'GC-11':if(c&&c['some'](g=>g['path']?.['includes']('query')||g['path']?.['includes']('witness')))return{'status':'fail','detail':'SDK\x20validation\x20flagged\x20query/witness\x20issues'};return{'status':'pass','detail':'Delegated\x20to\x20guard-lint.ts'};case'GC-12':return{'status':'pass','detail':'Immutability\x20noted\x20—\x20Guard\x20cannot\x20be\x20modified\x20after\x20creation'};default:return{'status':'skip'};}}function adaptRiskAssessment(a){const b=[],c=[];for(const e of a['risks']??[]){if(e['level']==='critical')b['push'](e['id']);else{if(e['level']==='high')c['push'](e['id']);}}let d='publish';if(b['length']>0x0)d='do_not_publish';else{if(c['length']>0x2)d='fix_first';}return{'overall_risk_level':a['overall_risk'],'blocking_risks':b,'warning_risks':c,'recommendation':d};}function processUserConfirmation(a){const b=GUARD_CONFIRMATION_QUESTIONS;if(!a||a['length']===0x0)return{'questions_asked':b,'user_responses':[],'approved':![],'declined_reason':'No\x20user\x20responses\x20provided','timestamp':new Date()['toISOString']()};const c=b['filter'](d=>d['blocking']);for(const d of c){const e=a['find'](f=>f['question_id']===d['id']);if(!e)return{'questions_asked':b,'user_responses':a,'approved':![],'declined_reason':'Blocking\x20question\x20'+d['id']+'\x20not\x20answered','timestamp':new Date()['toISOString']()};if(d['expected_response']==='yes'&&e['response']!=='yes')return{'questions_asked':b,'user_responses':a,'approved':![],'declined_reason':d['id']+'\x20expected\x20\x27yes\x27,\x20got\x20\x27'+e['response']+'\x27','timestamp':new Date()['toISOString']()};if(d['expected_response']==='no'&&e['response']!=='no')return{'questions_asked':b,'user_responses':a,'approved':![],'declined_reason':d['id']+'\x20expected\x20\x27no\x27,\x20got\x20\x27'+e['response']+'\x27','timestamp':new Date()['toISOString']()};}return{'questions_asked':b,'user_responses':a,'approved':!![],'timestamp':new Date()['toISOString']()};}function generateGuardConfirmationText(a,b,c){const d=[];return d['push']('═══════════════════════════════════════════════════════════'),d['push']('\x20\x20GUARD\x20PUBLISH\x20CONFIRMATION'),d['push']('═══════════════════════════════════════════════════════════'),d['push']('Name:\x20'+(a['name']??'(unnamed)')),d['push']('Description:\x20'+(a['description']??'(none)')),d['push']('Binding\x20Scene:\x20'+(a['binding_scene_id']??'Standalone')),d['push'](''),d['push']('─\x20Layer\x201:\x20Static\x20Checklist\x20─────────────────────────────'),d['push']('Result:\x20'+(b['passed']?'✅\x20PASS':'❌\x20FAIL')),d['push']('Items:\x20'+b['checked_items']['length']+'\x20checked,\x20'+b['failed_items']['length']+'\x20failed,\x20'+b['warnings']['length']+'\x20warnings'),d['push'](''),d['push']('─\x20Layer\x202:\x20Risk\x20Assessment\x20──────────────────────────────'),d['push']('Overall:\x20'+c['overall_risk_level']['toUpperCase']()),d['push']('Blocking:\x20'+c['blocking_risks']['length']+'\x20|\x20Warning:\x20'+c['warning_risks']['length']),d['push']('Recommendation:\x20'+c['recommendation']),d['push'](''),d['push']('⚠️\x20\x20CRITICAL\x20REMINDER:\x20Guard\x20is\x20IMMUTABLE\x20after\x20creation.'),d['push']('\x20\x20\x20\x20There\x20is\x20NO\x20update\x20path.\x20If\x20the\x20rule\x20is\x20wrong,\x20you\x20must'),d['push']('\x20\x20\x20\x20create\x20a\x20NEW\x20Guard\x20and\x20rebind\x20the\x20host\x20object.'),d['push'](''),d['push']('Please\x20review\x20the\x20above\x20and\x20confirm\x20publication.'),d['push']('═══════════════════════════════════════════════════════════'),d['join']('\x0a');}function verifyGuardEnvironment(a){const b=[];return!a['binding_target']&&b['push']('No\x20binding\x20target\x20specified\x20—\x20Guard\x20will\x20be\x20Standalone\x20(verify\x20intent)'),{'testnet_tested':![],'binding_target_exists':!!a['binding_target'],'rely_chain_resolvable':!![],'passport_generated_successfully':![],'warnings':b};}export function progressiveGuardCheck(a){const b=runStaticChecklist(a);if(!b['passed'])return{'layer':'checklist','result':b};const c=a['root'],d=assessGuardRisks({'table':c?.['table']??[],'root':a['root'],'rely':c?.['rely']}),e=adaptRiskAssessment(d);if(e['recommendation']==='do_not_publish')return{'layer':'risk','result':e};return{'layer':'none','result':null};}
@@ -1,11 +0,0 @@
1
- export declare const IMMUTABLE_OBJECT_TYPES: readonly ["Guard", "Payment", "Passport"];
2
- export interface ImmutabilityFact {
3
- object_type: string;
4
- frozen_when: string;
5
- immutable: string;
6
- mutable: string;
7
- move_anchor: string;
8
- }
9
- export declare const IMMUTABILITY_FACTS: ImmutabilityFact[];
10
- export declare function isFullyImmutable(objectType: string): boolean;
11
- export declare function immutabilityOf(objectType: string): ImmutabilityFact | undefined;
@@ -1 +0,0 @@
1
- export const IMMUTABLE_OBJECT_TYPES=['Guard','Payment','Passport'];export const IMMUTABILITY_FACTS=[{'object_type':'Event','frozen_when':'emit\x20后(append-only)','immutable':'已\x20emit\x20的事件内容(历史页,按\x20cursor\x20定位)','mutable':'最新事件(新事件持续\x20append)','move_anchor':'event::emit(各\x20module\x20的\x20*_event\x20结构)'},{'object_type':'Guard','frozen_when':'创建后','immutable':'table\x20/\x20input\x20/\x20relies\x20/\x20description(整对象)','mutable':'(无)','move_anchor':'guard.move\x20Guard\x20struct(create\x20后不可变)'},{'object_type':'Passport','frozen_when':'创建后(一次性)','immutable':'guard\x20提交记录(整对象)','mutable':'(无)','move_anchor':'passport.move\x20Passport\x20struct'},{'object_type':'Payment','frozen_when':'创建后','immutable':'record\x20/\x20info\x20/\x20signer(整对象)','mutable':'(无)','move_anchor':'payment.move\x20Payment\x20struct'},{'object_type':'Machine','frozen_when':'publish\x20后','immutable':'node\x20/\x20pair\x20/\x20forward\x20/\x20threshold\x20/\x20guard\x20绑定(node\x20结构冻结)','mutable':'bPaused','move_anchor':'machine.move\x20machine_set_imp\x20/\x20publish'},{'object_type':'Service','frozen_when':'publish\x20后','immutable':'machine\x20/\x20buy_guard\x20/\x20arbitrations\x20/\x20rewards\x20/\x20order_allocators\x20/\x20repositories(绑定的其他对象)','mutable':'description\x20/\x20sales\x20/\x20bPaused\x20/\x20compensation_fund\x20余额\x20/\x20location','move_anchor':'service.move\x20*_set_imp(assert!(!bPublished))'},{'object_type':'Progress','frozen_when':'append-only(history)','immutable':'history\x20记录(append-only,history_count\x20递增)','mutable':'current\x20/\x20namedOperator\x20/\x20session\x20/\x20context_repositories','move_anchor':'progress.move\x20Progress.history'},{'object_type':'Arb','frozen_when':'Finished\x20/\x20Withdrawn\x20后','immutable':'indemnity\x20/\x20status\x20/\x20compensation_time','mutable':'(终态前)voted\x20/\x20proposition\x20/\x20feedback\x20/\x20status','move_anchor':'arb.move\x20finish\x20/\x20withdraw'},{'object_type':'Demand','frozen_when':'(无整体冻结,字段级)','immutable':'permission(绑定后不变)','mutable':'description\x20/\x20location\x20/\x20rewards\x20/\x20guards\x20/\x20presenters','move_anchor':'demand.move\x20Demand\x20struct'}];export function isFullyImmutable(a){return IMMUTABLE_OBJECT_TYPES['includes'](a);}export function immutabilityOf(a){return IMMUTABILITY_FACTS['find'](b=>b['object_type']===a);}
@@ -1,102 +0,0 @@
1
- import { type MachineNode, type MachinePair } from "./machine-topology.js";
2
- import { type ProjectContextForRisk } from "./machine-risk.js";
3
- export type ConfirmGateStatus = "approved" | "blocked_checklist" | "blocked_risk" | "blocked_user" | "blocked_environment";
4
- export interface ConfirmGateResult {
5
- status: ConfirmGateStatus;
6
- checklist_result: ChecklistResult;
7
- risk_result?: RiskAssessmentResult;
8
- user_confirmation?: UserConfirmation;
9
- environment_result?: EnvironmentResult;
10
- confirmation_text?: string;
11
- block_reason?: string;
12
- decision_record: DecisionRecord;
13
- }
14
- export interface ChecklistResult {
15
- passed: boolean;
16
- checked_items: ChecklistItem[];
17
- failed_items: ChecklistItem[];
18
- warnings: ChecklistItem[];
19
- }
20
- export interface ChecklistItem {
21
- id: string;
22
- description: string;
23
- status: "pass" | "fail" | "warning" | "skip";
24
- detail?: string;
25
- }
26
- export interface RiskAssessmentResult {
27
- overall_risk_level: "low" | "medium" | "high" | "critical";
28
- blocking_risks: string[];
29
- warning_risks: string[];
30
- recommendation: "publish" | "fix_first" | "do_not_publish";
31
- }
32
- export interface UserConfirmation {
33
- questions_asked: ConfirmationQuestion[];
34
- user_responses: ConfirmationResponse[];
35
- approved: boolean;
36
- declined_reason?: string;
37
- timestamp: string;
38
- }
39
- export interface ConfirmationQuestion {
40
- id: string;
41
- question: string;
42
- expected_response: "yes" | "no" | "either";
43
- blocking: boolean;
44
- }
45
- export interface ConfirmationResponse {
46
- question_id: string;
47
- response: "yes" | "no" | "unclear";
48
- raw_input: string;
49
- }
50
- export interface EnvironmentResult {
51
- is_testnet: boolean;
52
- has_testnet_test_passed: boolean;
53
- gas_estimation: number;
54
- dependency_table_complete: boolean;
55
- missing_dependencies: string[];
56
- }
57
- export interface DecisionRecord {
58
- timestamp: string;
59
- user_address: string;
60
- machine_json_hash: string;
61
- template_id?: string;
62
- scene_id?: string;
63
- final_status: ConfirmGateStatus;
64
- }
65
- export interface MachineJsonForConfirm {
66
- name?: string;
67
- nodes: MachineNode[];
68
- pairs: MachinePair[];
69
- template_id?: string;
70
- scene_id?: string;
71
- b_published?: boolean;
72
- b_paused?: boolean;
73
- }
74
- export interface ProjectContextForConfirm extends ProjectContextForRisk {
75
- user_address: string;
76
- backup_created: boolean;
77
- gas_estimation: number;
78
- }
79
- export declare const PUBLISH_CHECKLIST: ChecklistItem[];
80
- export declare function runStaticChecklist(machine: MachineJsonForConfirm): ChecklistResult;
81
- export declare function integrateRiskAssessment(machine: MachineJsonForConfirm, context: ProjectContextForConfirm): RiskAssessmentResult;
82
- export declare const CONFIRMATION_QUESTIONS: ConfirmationQuestion[];
83
- export declare function parseUserConfirmation(userInput: string): UserConfirmation;
84
- export declare function generateFullConfirmationText(machine: MachineJsonForConfirm, checklistResult: ChecklistResult, riskResult: RiskAssessmentResult): string;
85
- export declare function verifyEnvironment(machine: MachineJsonForConfirm, context: ProjectContextForConfirm, isMainnet: boolean): EnvironmentResult;
86
- export declare function confirmPublish(machine: MachineJsonForConfirm, context: ProjectContextForConfirm, isMainnet: boolean, userConfirmationInput?: string): ConfirmGateResult;
87
- export declare function overrideBlockWithReason(result: ConfirmGateResult, _userReason: string): ConfirmGateResult;
88
- export declare function progressiveCheck(machine: MachineJsonForConfirm, round: "R5" | "R6" | "R7"): ChecklistResult;
89
- export declare function prePublishHook(machine: MachineJsonForConfirm, context: ProjectContextForConfirm, isMainnet: boolean): {
90
- proceed: boolean;
91
- error?: string;
92
- confirmGateResult?: ConfirmGateResult;
93
- };
94
- export declare function postConfirmationHook(machine: MachineJsonForConfirm, context: ProjectContextForConfirm, isMainnet: boolean, userConfirmationInput: string): {
95
- proceed: boolean;
96
- error?: string;
97
- confirmGateResult?: ConfirmGateResult;
98
- };
99
- export declare function formatBlockError(result: ConfirmGateResult): string;
100
- export declare const MACHINE_CONFIRM_VERSION = "1.0.0";
101
- export declare const MACHINE_CHECKLIST_ITEMS_COUNT: number;
102
- export declare const MACHINE_CONFIRMATION_QUESTIONS_COUNT: number;
@@ -1 +0,0 @@
1
- import{analyzeTopology}from'./machine-topology.js';import{USER_DEFINED_PERM_INDEX_START,MAX_NODE_COUNT,MAX_NODE_PAIR_COUNT,MAX_FORWARD_COUNT,MAX_FORWARD_ORDER_COUNT}from'./onchain-constants.js';import{assessMachineRisks}from'./machine-risk.js';import{derivePuzzleFromMachineJson,generateConfirmationText}from'./machine-puzzle.js';export const PUBLISH_CHECKLIST=[{'id':'C-01','description':'Entry\x20point\x20exists:\x20at\x20least\x20one\x20Pair\x20with\x20prev_node=\x27\x27','status':'skip','detail':'Workflow\x20cannot\x20start\x20without\x20entry\x20Pair.\x20Verify\x20Pair\x20table\x20for\x20empty\x20prev_node.'},{'id':'C-02','description':'Every\x20node\x20has\x20outgoing\x20Forwards\x20(except\x20terminal\x20nodes)','status':'skip','detail':'Dead-end\x20nodes\x20trap\x20workflow.\x20Identify\x20terminals\x20and\x20verify\x20they\x20are\x20intended.'},{'id':'C-03','description':'Every\x20node\x20has\x20incoming\x20Pair\x20(except\x20entry\x20point)','status':'skip','detail':'Orphaned\x20nodes\x20are\x20unreachable.\x20Verify\x20all\x20non-entry\x20nodes\x20are\x20reachable.'},{'id':'C-04','description':'All\x20thresholds\x20independently\x20achievable\x20(no\x20dead\x20branches)','status':'skip','detail':'If\x20a\x20competing\x20Pair\x20always\x20loses,\x20it\x20is\x20dead\x20code.\x20Use\x20topology\x20analysis.'},{'id':'C-05','description':'All\x20Guards\x20exist\x20on-chain\x20and\x20tested\x20(via\x20gen_passport)','status':'skip','detail':'Guard\x20addresses\x20referenced\x20in\x20forwards\x20must\x20be\x20valid\x20published\x20Guard\x20objects.'},{'id':'C-06','description':'namedOperator\x20vs\x20permissionIndex\x20correct\x20per\x20Forward','status':'skip','detail':'Each\x20Forward\x20must\x20have\x20at\x20least\x20one\x20of\x20namedOperator\x20or\x20permissionIndex.'},{'id':'C-07','description':'Terminal\x20nodes\x20mapped\x20to\x20Allocator\x20entries\x20for\x20fund\x20distribution','status':'skip','detail':'Terminal\x20nodes\x20without\x20Allocator\x20risk\x20funds\x20being\x20locked\x20forever.'},{'id':'C-08','description':'Tested\x20end-to-end\x20on\x20testnet\x20via\x20a\x20test\x20Progress','status':'skip','detail':'Testnet\x20verification\x20is\x20mandatory\x20before\x20mainnet\x20publish.'},{'id':'C-09','description':'Current\x20state\x20exported\x20via\x20machineNode2file\x20as\x20backup','status':'skip','detail':'Backup\x20before\x20publish.\x20If\x20publish\x20fails,\x20you\x20can\x20rebuild\x20from\x20export.'},{'id':'C-10','description':'On-chain\x20constraint\x20limits\x20respected\x20(MAX_NODE_COUNT='+MAX_NODE_COUNT+',\x20MAX_NODE_PAIR_COUNT='+MAX_NODE_PAIR_COUNT+',\x20MAX_FORWARD_COUNT='+MAX_FORWARD_COUNT+')','status':'skip','detail':'Exceeding\x20on-chain\x20constants\x20will\x20cause\x20transaction\x20failure.'},{'id':'C-11','description':'All\x20permissionIndex\x20values\x20>=\x201000\x20(USER_DEFINED_PERM_INDEX_START)','status':'skip','detail':'On-chain\x20permission.move\x20reserves\x20indexes\x200-999\x20for\x20built-in\x20permissions.\x20'+'Custom\x20permission_index\x20MUST\x20be\x20>=\x201000\x20(see\x20doc\x2006\x20§4.4).\x20'+'Using\x20index\x20<\x201000\x20causes\x20confusion\x20with\x20built-in\x20permissions.'},{'id':'C-12','description':'All\x20Pair\x20thresholds\x20achievable\x20(sum\x20of\x20distinct\x20forward\x20weights\x20>=\x20threshold)','status':'skip','detail':'Each\x20forward\x20is\x20single-operator-locked:\x20it\x20contributes\x20its\x20weight\x20AT\x20MOST\x20ONCE\x20'+'(progress.move\x20session_accomplish_imp;\x20a\x20second\x20operator\x20re-executing\x20the\x20same\x20'+'accomplished\x20forward\x20aborts\x20E_NOT_THE_HOLDER).\x20A\x20Pair\x20whose\x20threshold\x20exceeds\x20the\x20'+'sum\x20of\x20its\x20forward\x20weights\x20can\x20never\x20migrate\x20—\x20the\x20workflow\x20gets\x20permanently\x20stuck.\x20'+'Multi-operator\x20cooperation\x20(threshold\x20>\x201)\x20needs\x20one\x20DISTINCT\x20forward\x20per\x20'+'contributing\x20operator\x20(e.g.\x20threshold\x202\x20→\x20begin_a\x20+\x20begin_b,\x20each\x20weight\x201).'}];export function runStaticChecklist(a){const b=[],c=[],d=[],e=analyzeTopology(a['nodes'],a['pairs']),f=e['entry_nodes']['length']>0x0;b['push']({'id':'C-01','description':'Entry\x20point\x20exists','status':f?'pass':'fail','detail':f?'Found\x20entry\x20nodes:\x20'+e['entry_nodes']['join'](',\x20'):'NO\x20entry\x20Pair\x20with\x20prev_node=\x27\x27'});if(!f)c['push'](b[b['length']-0x1]);const g=a['nodes']['filter'](l=>!e['terminal_nodes']['includes'](l['name'])&&!a['pairs']['some'](m=>m['prev_node']===l['name']));b['push']({'id':'C-02','description':'Every\x20node\x20has\x20outgoing\x20Forwards\x20(except\x20terminals)','status':g['length']===0x0?'pass':'fail','detail':g['length']===0x0?'All\x20non-terminal\x20nodes\x20have\x20outgoing\x20Pairs':'Dead-end\x20nodes:\x20'+g['map'](l=>l['name'])['join'](',\x20')});if(g['length']>0x0)c['push'](b[b['length']-0x1]);b['push']({'id':'C-03','description':'Every\x20node\x20has\x20incoming\x20Pair','status':e['orphaned_nodes']['length']===0x0?'pass':'fail','detail':e['orphaned_nodes']['length']===0x0?'All\x20non-entry\x20nodes\x20are\x20reachable':'Orphaned\x20nodes:\x20'+e['orphaned_nodes']['join'](',\x20')});if(e['orphaned_nodes']['length']>0x0)c['push'](b[b['length']-0x1]);b['push']({'id':'C-04','description':'All\x20thresholds\x20achievable','status':e['dead_branches']['length']===0x0?'pass':'warning','detail':e['dead_branches']['length']===0x0?'No\x20dead\x20branches\x20detected':'Potential\x20dead\x20branches:\x20'+e['dead_branches']['length']});if(e['dead_branches']['length']>0x0)d['push'](b[b['length']-0x1]);b['push']({'id':'C-05','description':'All\x20Guards\x20exist\x20on-chain','status':'skip','detail':'Verify\x20at\x20runtime\x20via\x20onchain_objects\x20query\x20for\x20each\x20Guard\x20address'});const h=[];for(const l of a['pairs']){for(const m of l['forwards']){const n=m['named_operator']!==undefined,o=m['permission_index']!==undefined;!n&&!o&&h['push'](l['prev_node']+'->'+l['next_node']+':'+m['name']);}}b['push']({'id':'C-06','description':'Forward\x20permission\x20model\x20correct','status':h['length']===0x0?'pass':'fail','detail':h['length']===0x0?'All\x20Forwards\x20have\x20valid\x20permission':'Invalid\x20Forwards:\x20'+h['join'](',\x20')});if(h['length']>0x0)c['push'](b[b['length']-0x1]);b['push']({'id':'C-07','description':'Terminal\x20nodes\x20have\x20Allocator','status':'skip','detail':'Verify\x20at\x20Service\x20binding\x20stage'}),b['push']({'id':'C-08','description':'Testnet\x20test\x20passed','status':'skip','detail':'Verify\x20at\x20Layer\x204\x20(environment)'}),b['push']({'id':'C-09','description':'machineNode2file\x20backup\x20created','status':'skip','detail':'Recommend\x20exporting\x20before\x20publish'});const i=[];if(!e['within_limits']['max_node_count'])i['push']('MAX_NODE_COUNT='+MAX_NODE_COUNT);if(!e['within_limits']['max_node_pair_count'])i['push']('MAX_NODE_PAIR_COUNT='+MAX_NODE_PAIR_COUNT);if(!e['within_limits']['max_forward_count'])i['push']('MAX_FORWARD_COUNT='+MAX_FORWARD_COUNT);if(!e['within_limits']['max_forward_order_count'])i['push']('MAX_FORWARD_ORDER_COUNT='+MAX_FORWARD_ORDER_COUNT);b['push']({'id':'C-10','description':'On-chain\x20limits\x20respected','status':i['length']===0x0?'pass':'fail','detail':i['length']===0x0?'All\x20limits\x20within\x20bounds':'Violations:\x20'+i['join'](',\x20')});if(i['length']>0x0)c['push'](b[b['length']-0x1]);const j=[];for(const p of a['pairs']){for(const q of p['forwards']){q['permission_index']!==undefined&&q['permission_index']!==null&&q['permission_index']<USER_DEFINED_PERM_INDEX_START&&j['push'](p['prev_node']+'->'+p['next_node']+':'+q['name']+'\x20(idx='+q['permission_index']+')');}}b['push']({'id':'C-11','description':'permissionIndex\x20>=\x20'+USER_DEFINED_PERM_INDEX_START,'status':j['length']===0x0?'pass':'fail','detail':j['length']===0x0?'All\x20permission_index\x20values\x20>=\x20'+USER_DEFINED_PERM_INDEX_START:'permission_index\x20<\x20'+USER_DEFINED_PERM_INDEX_START+':\x20'+j['join'](',\x20')});if(j['length']>0x0)c['push'](b[b['length']-0x1]);const k=e['unachievable_thresholds'];b['push']({'id':'C-12','description':'All\x20Pair\x20thresholds\x20achievable\x20(sum\x20of\x20distinct\x20forward\x20weights\x20>=\x20threshold)','status':k['length']===0x0?'pass':'fail','detail':k['length']===0x0?'Every\x20Pair\x20threshold\x20is\x20reachable\x20by\x20its\x20distinct\x20forward\x20weights':'Unreachable\x20thresholds:\x20'+k['map'](r=>(r['prev_node']===''?'entry':r['prev_node'])+'->'+r['next_node']+'\x20(thr='+r['threshold']+',\x20max='+r['max_achievable']+')')['join'](';\x20')+'\x20—\x20add\x20one\x20DISTINCT\x20forward\x20per\x20contributing\x20operator\x20or\x20lower\x20the\x20threshold'});if(k['length']>0x0)c['push'](b[b['length']-0x1]);return{'passed':c['length']===0x0,'checked_items':b,'failed_items':c,'warnings':d};}export function integrateRiskAssessment(a,b){const c={'nodes':a['nodes'],'pairs':a['pairs'],'b_published':a['b_published'],'b_paused':a['b_paused'],'scene_id':a['scene_id']},d=assessMachineRisks(c,b),e=[],f=[];for(const h of d['detected_risks']){if(h['severity']==='critical'||h['severity']==='high')e['push'](h['rule_id']);else h['severity']==='medium'&&f['push'](h['rule_id']);}let g;if(e['some'](i=>{const j=d['detected_risks']['find'](k=>k['rule_id']===i);return j?.['severity']==='critical';}))g='do_not_publish';else{if(e['length']>0x0)g='fix_first';else f['length']>0x3?g='fix_first':g='publish';}return{'overall_risk_level':d['overall_level'],'blocking_risks':e,'warning_risks':f,'recommendation':g};}export const CONFIRMATION_QUESTIONS=[{'id':'Q1','question':'Reviewed\x20topology\x20and\x20confirmed\x20all\x20nodes/forwards\x20are\x20correct?','expected_response':'yes','blocking':!![]},{'id':'Q2','question':'Tested\x20this\x20Machine\x20on\x20TESTNET\x20with\x20a\x20successful\x20Progress\x20run?','expected_response':'yes','blocking':!![]},{'id':'Q3','question':'All\x20Guards\x20created,\x20bound,\x20and\x20verified\x20via\x20gen_passport?','expected_response':'yes','blocking':!![]},{'id':'Q4','question':'All\x20Allocators\x20configured\x20for\x20terminal\x20nodes?','expected_response':'yes','blocking':!![]},{'id':'Q5','question':'Acknowledge\x20that\x20publishing\x20is\x20IRREVERSIBLE\x20and\x20gas\x20will\x20be\x20consumed?','expected_response':'yes','blocking':!![]},{'id':'Q6','question':'Proceed\x20with\x20publishing\x20this\x20Machine\x20NOW?','expected_response':'yes','blocking':!![]}];export function parseUserConfirmation(a){const b=a['split'](',')['map'](e=>e['trim']()['toLowerCase']()),c=[];for(let e=0x0;e<CONFIRMATION_QUESTIONS['length'];e++){const f=CONFIRMATION_QUESTIONS[e],g=b[e]||'(no\x20answer)',h=g['startsWith']('y')||g==='yes',j=g['startsWith']('n')||g==='no';c['push']({'question_id':f['id'],'response':h?'yes':j?'no':'unclear','raw_input':g});}const d=CONFIRMATION_QUESTIONS['filter'](k=>k['blocking'])['every']((k,l)=>c[l]['response']==='yes');return{'questions_asked':CONFIRMATION_QUESTIONS,'user_responses':c,'approved':d,'declined_reason':d?undefined:'One\x20or\x20more\x20blocking\x20questions\x20answered\x20\x27no\x27','timestamp':new Date()['toISOString']()};}export function generateFullConfirmationText(a,b,c){const d=derivePuzzleFromMachineJson({'nodes':a['nodes'],'pairs':a['pairs'],'scene_id':a['scene_id'],'template_id':a['template_id']}),e=generateConfirmationText(d),f=['╔═══════════════════════════════════════════════════════════════╗','║\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20MACHINE\x20PUBLISH\x20CONFIRMATION\x20REQUIRED\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20║','╚═══════════════════════════════════════════════════════════════╝','','⚠️\x20\x20WARNING:\x20Publishing\x20a\x20Machine\x20is\x20IRREVERSIBLE.','\x20\x20\x20-\x20Nodes,\x20Pairs,\x20Forwards\x20will\x20be\x20FROZEN\x20permanently.','\x20\x20\x20-\x20Gas\x20will\x20be\x20consumed\x20(cannot\x20be\x20refunded).','\x20\x20\x20-\x20Any\x20error\x20requires\x20creating\x20a\x20NEW\x20Machine\x20(with\x20new\x20gas\x20cost).','','═══════════════════════════════════════════════════════════════',e,'═══════════════════════════════════════════════════════════════','RISK\x20ASSESSMENT:','\x20\x20Overall\x20Risk\x20Level:\x20'+c['overall_risk_level']['toUpperCase'](),'\x20\x20Recommendation:\x20\x20\x20\x20\x20'+c['recommendation'],'\x20\x20Blocking\x20Risks:\x20\x20\x20\x20\x20'+(c['blocking_risks']['length']===0x0?'None':c['blocking_risks']['join'](',\x20')),'\x20\x20Warning\x20Risks:\x20\x20\x20\x20\x20'+(c['warning_risks']['length']===0x0?'None':c['warning_risks']['join'](',\x20')),'','═══════════════════════════════════════════════════════════════','STATIC\x20CHECKLIST:','\x20\x20Passed:\x20\x20\x20\x20'+b['checked_items']['filter'](g=>g['status']==='pass')['length']+'\x20/\x20'+b['checked_items']['length'],'\x20\x20Failed:\x20\x20\x20\x20'+b['failed_items']['length'],'\x20\x20Warnings:\x20\x20'+b['warnings']['length'],'\x20\x20Skipped:\x20\x20\x20'+b['checked_items']['filter'](g=>g['status']==='skip')['length'],'',...b['failed_items']['map'](g=>'\x20\x20❌\x20'+g['id']+':\x20'+g['description']+'\x20—\x20'+(g['detail']||'')),...b['warnings']['map'](g=>'\x20\x20⚠️\x20\x20'+g['id']+':\x20'+g['description']+'\x20—\x20'+(g['detail']||'')),'','═══════════════════════════════════════════════════════════════','USER\x20CONFIRMATION\x20QUESTIONS:','',...CONFIRMATION_QUESTIONS['map']((g,h)=>'\x20\x20Q'+(h+0x1)+'.\x20'+g['question']+'\x20[Yes\x20/\x20No]'),'','If\x20you\x20answer\x20\x27No\x27\x20to\x20ANY\x20of\x20Q1-Q5,\x20publish\x20will\x20be\x20BLOCKED.','If\x20you\x20answer\x20\x27No\x27\x20to\x20Q6,\x20publish\x20will\x20be\x20CANCELLED\x20(no\x20gas\x20spent).','','Type\x20your\x20answers\x20(Q1-Q6)\x20separated\x20by\x20commas:'];return f['join']('\x0a');}export function verifyEnvironment(a,b,c){const d=[];for(const g of a['pairs']){for(const h of g['forwards']){h['guard']&&!b['published_guards']['has'](h['guard'])&&d['push']('Guard:\x20'+h['guard']);}}const e=b['testnet_test_passed'],f=c?e:!![];return{'is_testnet':!c,'has_testnet_test_passed':f,'gas_estimation':b['gas_estimation'],'dependency_table_complete':d['length']===0x0,'missing_dependencies':d};}function hashMachineJson(a){const b=JSON['stringify']({'nodes':a['nodes']['map'](d=>d['name']),'pairs':a['pairs']['map'](d=>({'prev':d['prev_node'],'next':d['next_node'],'threshold':d['threshold'],'forwards':d['forwards']['map'](e=>e['name'])}))});let c=0x0;for(let d=0x0;d<b['length'];d++){const e=b['charCodeAt'](d);c=(c<<0x5)-c+e,c=c&c;}return'0x'+(c>>>0x0)['toString'](0x10)['padStart'](0x8,'0');}export function confirmPublish(a,b,c,d){const e={'timestamp':new Date()['toISOString'](),'user_address':b['user_address'],'machine_json_hash':hashMachineJson(a),'template_id':a['template_id'],'scene_id':a['scene_id'],'final_status':'blocked_checklist'},f=runStaticChecklist(a);if(!f['passed'])return{'status':'blocked_checklist','checklist_result':f,'decision_record':{...e,'final_status':'blocked_checklist'},'block_reason':'Checklist\x20failed:\x20'+f['failed_items']['map'](j=>j['id'])['join'](',\x20')};const g=integrateRiskAssessment(a,b);if(g['recommendation']==='do_not_publish')return{'status':'blocked_risk','checklist_result':f,'risk_result':g,'decision_record':{...e,'final_status':'blocked_risk'},'block_reason':'Critical\x20risks\x20detected:\x20'+g['blocking_risks']['join'](',\x20')};if(!d){const j=generateFullConfirmationText(a,f,g);return{'status':'blocked_user','checklist_result':f,'risk_result':g,'confirmation_text':j,'decision_record':{...e,'final_status':'blocked_user'},'block_reason':'Awaiting\x20user\x20confirmation'};}const h=parseUserConfirmation(d);if(!h['approved'])return{'status':'blocked_user','checklist_result':f,'risk_result':g,'user_confirmation':h,'decision_record':{...e,'final_status':'blocked_user'},'block_reason':h['declined_reason']||'User\x20declined'};const i=verifyEnvironment(a,b,c);if(!i['dependency_table_complete']||!i['has_testnet_test_passed']){const k=[];return!i['dependency_table_complete']&&k['push']('missing\x20dependencies:\x20'+i['missing_dependencies']['join'](',\x20')),!i['has_testnet_test_passed']&&k['push']('testnet\x20test\x20not\x20passed\x20(required\x20for\x20mainnet)'),{'status':'blocked_environment','checklist_result':f,'risk_result':g,'user_confirmation':h,'environment_result':i,'decision_record':{...e,'final_status':'blocked_environment'},'block_reason':'Environment\x20issues:\x20'+k['join'](';\x20')};}return{'status':'approved','checklist_result':f,'risk_result':g,'user_confirmation':h,'environment_result':i,'decision_record':{...e,'final_status':'approved'}};}export function overrideBlockWithReason(a,b){if(a['status']!=='blocked_risk')return a;const c=a['risk_result']?.['blocking_risks']['some'](d=>d['includes']('CRITICAL')||d['includes']('critical'));if(c)return{...a,'block_reason':'Cannot\x20override\x20CRITICAL\x20risks'};return{...a,'status':'approved','block_reason':undefined,'decision_record':{...a['decision_record'],'final_status':'approved'}};}export function progressiveCheck(a,b){const c=runStaticChecklist(a);if(b==='R5')return filterChecklist(c,['C-01','C-02','C-03','C-04','C-06','C-10']);if(b==='R6')return filterChecklist(c,['C-01','C-02','C-03','C-04','C-05','C-06','C-10']);return c;}function filterChecklist(a,b){const c=a['checked_items']['filter'](d=>b['includes'](d['id']));return{'passed':c['filter'](d=>d['status']==='fail')['length']===0x0,'checked_items':c,'failed_items':c['filter'](d=>d['status']==='fail'),'warnings':c['filter'](d=>d['status']==='warning')};}export function prePublishHook(a,b,c){const d=confirmPublish(a,b,c);if(d['status']!=='blocked_user'&&d['status']!=='approved')return{'proceed':![],'error':formatBlockError(d),'confirmGateResult':d};if(d['status']==='blocked_user'&&d['confirmation_text'])return{'proceed':![],'error':d['confirmation_text'],'confirmGateResult':d};return{'proceed':!![],'confirmGateResult':d};}export function postConfirmationHook(a,b,c,d){const e=confirmPublish(a,b,c,d);if(e['status']!=='approved')return{'proceed':![],'error':formatBlockError(e),'confirmGateResult':e};return{'proceed':!![],'confirmGateResult':e};}export function formatBlockError(a){const b=['❌\x20MACHINE\x20PUBLISH\x20BLOCKED','','Status:\x20'+a['status'],'Reason:\x20'+(a['block_reason']||'(no\x20reason\x20provided)'),''];if(a['status']==='blocked_checklist'){b['push']('Failed\x20checklist\x20items:');for(const c of a['checklist_result']['failed_items']){b['push']('\x20\x20-\x20'+c['id']+':\x20'+c['description']),b['push']('\x20\x20\x20\x20Detail:\x20'+(c['detail']||'(no\x20detail)'));}}if(a['status']==='blocked_risk'&&a['risk_result']){b['push']('Blocking\x20risks:');for(const d of a['risk_result']['blocking_risks']){b['push']('\x20\x20-\x20'+d);}b['push'](''),b['push']('Recommendation:\x20'+a['risk_result']['recommendation']);}if(a['status']==='blocked_environment'&&a['environment_result']){b['push']('Environment\x20issues:');for(const e of a['environment_result']['missing_dependencies']){b['push']('\x20\x20-\x20Missing\x20dependency:\x20'+e);}!a['environment_result']['has_testnet_test_passed']&&b['push']('\x20\x20-\x20Testnet\x20test\x20NOT\x20passed\x20(required\x20for\x20mainnet)');}return b['join']('\x0a');}export const MACHINE_CONFIRM_VERSION='1.0.0';export const MACHINE_CHECKLIST_ITEMS_COUNT=PUBLISH_CHECKLIST['length'];export const MACHINE_CONFIRMATION_QUESTIONS_COUNT=CONFIRMATION_QUESTIONS['length'];