@wowok/agent-mcp 3.1.5 → 3.1.6

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 (145) hide show
  1. package/dist/evaluation/arbitration-game.js +1 -1
  2. package/dist/evaluation/builtins/graph-service.js +1 -1
  3. package/dist/graph/onchain/analyze.js +1 -1
  4. package/dist/graph/onchain/analyze.spec.js +1 -1
  5. package/dist/graph/onchain/extract.js +1 -1
  6. package/dist/graph/onchain/facts.d.ts +1 -0
  7. package/dist/graph/onchain/facts.js +1 -1
  8. package/dist/graph/onchain/fixtures.js +1 -1
  9. package/dist/graph/onchain/onchain.spec.js +1 -1
  10. package/dist/graph/onchain/strategy.js +1 -1
  11. package/dist/graph/onchain/strategy.spec.js +1 -1
  12. package/dist/harness/recover.js +1 -1
  13. package/dist/knowledge/alloc-audit-policy.spec.js +1 -1
  14. package/dist/knowledge/allocation-risk.js +1 -1
  15. package/dist/knowledge/arbitration-ledger.js +1 -1
  16. package/dist/knowledge/audit-rules.d.ts +1 -0
  17. package/dist/knowledge/audit-rules.js +1 -1
  18. package/dist/knowledge/baselines/rules/alloc_audit.json +20 -0
  19. package/dist/knowledge/baselines/rules/allocation.json +1 -19
  20. package/dist/knowledge/baselines/rules/arb.json +1 -1
  21. package/dist/knowledge/baselines/rules/guard.json +8 -8
  22. package/dist/knowledge/fund-layer.js +1 -1
  23. package/dist/knowledge/guard-design-patterns.d.ts +2 -1
  24. package/dist/knowledge/guard-design-patterns.js +1 -1
  25. package/dist/knowledge/guard-design-patterns.spec.d.ts +1 -0
  26. package/dist/knowledge/guard-design-patterns.spec.js +1 -0
  27. package/dist/knowledge/guard-lint.d.ts +1 -1
  28. package/dist/knowledge/guard-lint.js +1 -1
  29. package/dist/knowledge/guard-puzzle.js +1 -1
  30. package/dist/knowledge/guard-render.js +1 -1
  31. package/dist/knowledge/guard-risk.js +1 -1
  32. package/dist/knowledge/guard-translation.js +1 -1
  33. package/dist/knowledge/index.js +1 -1
  34. package/dist/knowledge/industry-registry.js +1 -1
  35. package/dist/knowledge/jsonrpc-enum.js +1 -1
  36. package/dist/knowledge/permission-ledger.js +1 -1
  37. package/dist/knowledge/recipient-constraint.js +1 -1
  38. package/dist/knowledge/safety-rules.extract-amount.spec.d.ts +1 -0
  39. package/dist/knowledge/safety-rules.extract-amount.spec.js +1 -0
  40. package/dist/knowledge/safety-rules.js +1 -1
  41. package/dist/knowledge/service-ledger.js +1 -1
  42. package/dist/knowledge/template-registry.js +1 -1
  43. package/dist/knowledge/template-scanner.js +1 -1
  44. package/dist/knowledge/tool-constraints.js +1 -1
  45. package/dist/knowledge/workflow-guidance.js +1 -1
  46. package/dist/monitor/MonitorLoop.js +1 -1
  47. package/dist/playbooks/service-build/business-puzzle.js +1 -1
  48. package/dist/playbooks/service-build/pipeline-actions.d.ts +1 -1
  49. package/dist/playbooks/service-build/pipeline-actions.js +1 -1
  50. package/dist/playbooks/service-build/risk-aggregator.js +1 -1
  51. package/dist/role/derivation.d.ts +1 -1
  52. package/dist/role/derivation.js +1 -1
  53. package/dist/safety/confirm-gate.js +1 -1
  54. package/dist/schema/call/allocation.d.ts +7 -0
  55. package/dist/schema/call/allocation.js +1 -1
  56. package/dist/schema/call/arbitration.d.ts +4 -0
  57. package/dist/schema/call/arbitration.js +1 -1
  58. package/dist/schema/call/base.d.ts +48 -0
  59. package/dist/schema/call/base.js +1 -1
  60. package/dist/schema/call/bridge.d.ts +26 -0
  61. package/dist/schema/call/contact.d.ts +4 -0
  62. package/dist/schema/call/demand.d.ts +4 -0
  63. package/dist/schema/call/error-codes.d.ts +1 -1
  64. package/dist/schema/call/error-codes.js +1 -1
  65. package/dist/schema/call/guard.d.ts +12 -0
  66. package/dist/schema/call/handler.js +1 -1
  67. package/dist/schema/call/machine.d.ts +8 -0
  68. package/dist/schema/call/order.d.ts +4 -0
  69. package/dist/schema/call/order.js +1 -1
  70. package/dist/schema/call/payment.d.ts +4 -0
  71. package/dist/schema/call/permission.d.ts +4 -0
  72. package/dist/schema/call/personal.d.ts +4 -0
  73. package/dist/schema/call/progress.d.ts +4 -0
  74. package/dist/schema/call/proof.d.ts +8 -0
  75. package/dist/schema/call/repository.d.ts +4 -0
  76. package/dist/schema/call/repository.js +1 -1
  77. package/dist/schema/call/reward.d.ts +4 -0
  78. package/dist/schema/call/semantic-customer-advice.spec.js +1 -1
  79. package/dist/schema/call/semantic.d.ts +11 -0
  80. package/dist/schema/call/semantic.js +1 -1
  81. package/dist/schema/call/service.d.ts +14 -0
  82. package/dist/schema/call/service.js +1 -1
  83. package/dist/schema/call/treasury.d.ts +4 -0
  84. package/dist/schema/common/index.js +1 -1
  85. package/dist/schema/keeper/index.d.ts +5 -0
  86. package/dist/schema/local/index.d.ts +28 -0
  87. package/dist/schema/local/index.js +1 -1
  88. package/dist/schema/messenger/index.d.ts +5 -0
  89. package/dist/schema/messenger/index.js +1 -1
  90. package/dist/schema/operations.d.ts +83 -0
  91. package/dist/schema/query/bi.js +1 -1
  92. package/dist/schema/query/index.d.ts +16 -0
  93. package/dist/schema/query/index.js +1 -1
  94. package/dist/schema/schema-version.js +1 -1
  95. package/dist/schema/workflow/index.d.ts +2 -0
  96. package/dist/schema/workflow/index.js +1 -1
  97. package/dist/schema-query-impl/index.js +1 -1
  98. package/dist/schemas/account_operation.output.json +25 -1
  99. package/dist/schemas/bridge_operation.output.json +25 -1
  100. package/dist/schemas/bridge_operation.schema.json +40 -0
  101. package/dist/schemas/guard2file.schema.json +8 -0
  102. package/dist/schemas/index.json +1 -1
  103. package/dist/schemas/keeper_operation.output.json +24 -1
  104. package/dist/schemas/local_history_operation.output.json +25 -1
  105. package/dist/schemas/local_info_operation.output.json +25 -1
  106. package/dist/schemas/local_mark_operation.output.json +25 -1
  107. package/dist/schemas/machineNode2file.schema.json +8 -0
  108. package/dist/schemas/messenger_operation.output.json +24 -1
  109. package/dist/schemas/messenger_operation.schema.json +2 -2
  110. package/dist/schemas/monitor_events.output.json +24 -1
  111. package/dist/schemas/monitor_subscription.output.json +24 -1
  112. package/dist/schemas/onchain_events.output.json +24 -1
  113. package/dist/schemas/onchain_operations.output.json +73 -3
  114. package/dist/schemas/onchain_operations.schema.json +3286 -821
  115. package/dist/schemas/onchain_operations_allocation.schema.json +12 -0
  116. package/dist/schemas/onchain_operations_arbitration.schema.json +18 -10
  117. package/dist/schemas/onchain_operations_contact.schema.json +8 -0
  118. package/dist/schemas/onchain_operations_demand.schema.json +8 -0
  119. package/dist/schemas/onchain_operations_gen_passport.schema.json +8 -0
  120. package/dist/schemas/onchain_operations_gen_proof.schema.json +8 -0
  121. package/dist/schemas/onchain_operations_guard.schema.json +2896 -596
  122. package/dist/schemas/onchain_operations_machine.schema.json +8 -0
  123. package/dist/schemas/onchain_operations_order.schema.json +10 -2
  124. package/dist/schemas/onchain_operations_payment.schema.json +8 -0
  125. package/dist/schemas/onchain_operations_permission.schema.json +8 -0
  126. package/dist/schemas/onchain_operations_personal.schema.json +8 -0
  127. package/dist/schemas/onchain_operations_progress.schema.json +8 -0
  128. package/dist/schemas/onchain_operations_proof.schema.json +8 -0
  129. package/dist/schemas/onchain_operations_repository.schema.json +14 -6
  130. package/dist/schemas/onchain_operations_reward.schema.json +8 -0
  131. package/dist/schemas/onchain_operations_service.schema.json +43 -10
  132. package/dist/schemas/onchain_operations_treasury.schema.json +8 -0
  133. package/dist/schemas/onchain_table_data.output.json +35 -12
  134. package/dist/schemas/query_toolkit.output.json +1179 -10
  135. package/dist/schemas/query_toolkit.schema.json +11 -11
  136. package/dist/schemas/workflow_operation.schema.json +8 -0
  137. package/dist/tools/handlers/config.js +1 -1
  138. package/dist/tools/handlers/dispatch-expectations.js +1 -1
  139. package/dist/tools/handlers/dispatch-expectations.spec.d.ts +1 -0
  140. package/dist/tools/handlers/dispatch-expectations.spec.js +1 -0
  141. package/dist/tools/handlers/onchain.js +1 -1
  142. package/dist/tools/handlers/workflow.js +1 -1
  143. package/dist/tools/index.js +1 -1
  144. package/dist/tools/move-fn-index.gen.js +1 -1
  145. package/package.json +2 -2
@@ -2234,6 +2234,1152 @@
2234
2234
  ],
2235
2235
  "additionalProperties": false,
2236
2236
  "description": "Returns U64. Counts the number of retained submissions within the specified forward operation."
2237
+ },
2238
+ {
2239
+ "type": "object",
2240
+ "properties": {
2241
+ "type": {
2242
+ "type": "string",
2243
+ "const": "query_repository_data_count_where"
2244
+ },
2245
+ "object": {
2246
+ "type": "object",
2247
+ "properties": {
2248
+ "identifier": {
2249
+ "type": "integer",
2250
+ "minimum": 0,
2251
+ "maximum": 255,
2252
+ "description": "Identifier (0-255) for data lookup in Guard table."
2253
+ }
2254
+ },
2255
+ "required": [
2256
+ "identifier"
2257
+ ],
2258
+ "additionalProperties": false,
2259
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
2260
+ },
2261
+ "key": {
2262
+ "type": "object",
2263
+ "properties": {
2264
+ "identifier": {
2265
+ "type": "integer",
2266
+ "minimum": 0,
2267
+ "maximum": 255,
2268
+ "description": "Identifier (0-255) for data lookup in Guard table."
2269
+ }
2270
+ },
2271
+ "required": [
2272
+ "identifier"
2273
+ ],
2274
+ "additionalProperties": false,
2275
+ "description": "Reference to the policy key (String type table entry) whose data table is scanned."
2276
+ },
2277
+ "ids": {
2278
+ "type": "object",
2279
+ "properties": {
2280
+ "identifier": {
2281
+ "type": "integer",
2282
+ "minimum": 0,
2283
+ "maximum": 255,
2284
+ "description": "Identifier (0-255) for data lookup in Guard table."
2285
+ }
2286
+ },
2287
+ "required": [
2288
+ "identifier"
2289
+ ],
2290
+ "additionalProperties": false,
2291
+ "description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
2292
+ },
2293
+ "where": {
2294
+ "oneOf": [
2295
+ {
2296
+ "type": "object",
2297
+ "properties": {
2298
+ "kind": {
2299
+ "type": "string",
2300
+ "const": "range"
2301
+ },
2302
+ "valueMin": {
2303
+ "description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
2304
+ "type": "string"
2305
+ },
2306
+ "valueMax": {
2307
+ "description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
2308
+ "type": "string"
2309
+ },
2310
+ "minInclusive": {
2311
+ "description": "Default true. false makes the lower bound exclusive.",
2312
+ "type": "boolean"
2313
+ },
2314
+ "maxInclusive": {
2315
+ "description": "Default true. false makes the upper bound exclusive.",
2316
+ "type": "boolean"
2317
+ }
2318
+ },
2319
+ "required": [
2320
+ "kind"
2321
+ ],
2322
+ "additionalProperties": false,
2323
+ "description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
2324
+ },
2325
+ {
2326
+ "type": "object",
2327
+ "properties": {
2328
+ "kind": {
2329
+ "type": "string",
2330
+ "const": "numEq"
2331
+ },
2332
+ "value": {
2333
+ "type": "string",
2334
+ "description": "Exact numeric match. Plain number string (U256 semantics)."
2335
+ }
2336
+ },
2337
+ "required": [
2338
+ "kind",
2339
+ "value"
2340
+ ],
2341
+ "additionalProperties": false
2342
+ },
2343
+ {
2344
+ "type": "object",
2345
+ "properties": {
2346
+ "kind": {
2347
+ "type": "string",
2348
+ "const": "gt"
2349
+ },
2350
+ "value": {
2351
+ "type": "string",
2352
+ "description": "Greater than. Plain number string (U256 semantics)."
2353
+ }
2354
+ },
2355
+ "required": [
2356
+ "kind",
2357
+ "value"
2358
+ ],
2359
+ "additionalProperties": false
2360
+ },
2361
+ {
2362
+ "type": "object",
2363
+ "properties": {
2364
+ "kind": {
2365
+ "type": "string",
2366
+ "const": "gte"
2367
+ },
2368
+ "value": {
2369
+ "type": "string",
2370
+ "description": "Greater than or equal. Plain number string (U256 semantics)."
2371
+ }
2372
+ },
2373
+ "required": [
2374
+ "kind",
2375
+ "value"
2376
+ ],
2377
+ "additionalProperties": false
2378
+ },
2379
+ {
2380
+ "type": "object",
2381
+ "properties": {
2382
+ "kind": {
2383
+ "type": "string",
2384
+ "const": "lt"
2385
+ },
2386
+ "value": {
2387
+ "type": "string",
2388
+ "description": "Less than. Plain number string (U256 semantics)."
2389
+ }
2390
+ },
2391
+ "required": [
2392
+ "kind",
2393
+ "value"
2394
+ ],
2395
+ "additionalProperties": false
2396
+ },
2397
+ {
2398
+ "type": "object",
2399
+ "properties": {
2400
+ "kind": {
2401
+ "type": "string",
2402
+ "const": "lte"
2403
+ },
2404
+ "value": {
2405
+ "type": "string",
2406
+ "description": "Less than or equal. Plain number string (U256 semantics)."
2407
+ }
2408
+ },
2409
+ "required": [
2410
+ "kind",
2411
+ "value"
2412
+ ],
2413
+ "additionalProperties": false
2414
+ },
2415
+ {
2416
+ "type": "object",
2417
+ "properties": {
2418
+ "kind": {
2419
+ "type": "string",
2420
+ "const": "addressEq"
2421
+ },
2422
+ "identifier": {
2423
+ "type": "integer",
2424
+ "minimum": 0,
2425
+ "maximum": 255,
2426
+ "description": "Identifier of the Address-type table entry to compare against."
2427
+ }
2428
+ },
2429
+ "required": [
2430
+ "kind",
2431
+ "identifier"
2432
+ ],
2433
+ "additionalProperties": false
2434
+ },
2435
+ {
2436
+ "type": "object",
2437
+ "properties": {
2438
+ "kind": {
2439
+ "type": "string",
2440
+ "const": "stringEq"
2441
+ },
2442
+ "value": {
2443
+ "type": "string",
2444
+ "description": "Exact string match (byte equality, UTF-8)."
2445
+ }
2446
+ },
2447
+ "required": [
2448
+ "kind",
2449
+ "value"
2450
+ ],
2451
+ "additionalProperties": false
2452
+ },
2453
+ {
2454
+ "type": "object",
2455
+ "properties": {
2456
+ "kind": {
2457
+ "type": "string",
2458
+ "const": "stringContains"
2459
+ },
2460
+ "value": {
2461
+ "type": "string",
2462
+ "description": "Substring match, case-sensitive."
2463
+ }
2464
+ },
2465
+ "required": [
2466
+ "kind",
2467
+ "value"
2468
+ ],
2469
+ "additionalProperties": false
2470
+ },
2471
+ {
2472
+ "type": "object",
2473
+ "properties": {
2474
+ "kind": {
2475
+ "type": "string",
2476
+ "const": "stringNoCaseContains"
2477
+ },
2478
+ "value": {
2479
+ "type": "string",
2480
+ "description": "Substring match, case-insensitive."
2481
+ }
2482
+ },
2483
+ "required": [
2484
+ "kind",
2485
+ "value"
2486
+ ],
2487
+ "additionalProperties": false
2488
+ },
2489
+ {
2490
+ "type": "object",
2491
+ "properties": {
2492
+ "kind": {
2493
+ "type": "string",
2494
+ "const": "boolEq"
2495
+ },
2496
+ "value": {
2497
+ "type": "boolean",
2498
+ "description": "Boolean equality."
2499
+ }
2500
+ },
2501
+ "required": [
2502
+ "kind",
2503
+ "value"
2504
+ ],
2505
+ "additionalProperties": false
2506
+ }
2507
+ ],
2508
+ "description": "Predicate filter applied to each candidate's data value."
2509
+ }
2510
+ },
2511
+ "required": [
2512
+ "type",
2513
+ "object",
2514
+ "key",
2515
+ "ids",
2516
+ "where"
2517
+ ],
2518
+ "additionalProperties": false,
2519
+ "description": "Returns U64. Counts candidates whose stored value matches the predicate. Numeric predicates: U256 semantics (pass plain number strings). Range is closed interval per side (minInclusive/maxInclusive default true); a missing side is unbounded. numEq/gt/gte/lt/lte are sugar over range. Entries whose value type does not match the predicate kind are skipped (never error), so the count only reflects matching entries."
2520
+ },
2521
+ {
2522
+ "type": "object",
2523
+ "properties": {
2524
+ "type": {
2525
+ "type": "string",
2526
+ "const": "query_repository_data_sum_where"
2527
+ },
2528
+ "object": {
2529
+ "type": "object",
2530
+ "properties": {
2531
+ "identifier": {
2532
+ "type": "integer",
2533
+ "minimum": 0,
2534
+ "maximum": 255,
2535
+ "description": "Identifier (0-255) for data lookup in Guard table."
2536
+ }
2537
+ },
2538
+ "required": [
2539
+ "identifier"
2540
+ ],
2541
+ "additionalProperties": false,
2542
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
2543
+ },
2544
+ "key": {
2545
+ "type": "object",
2546
+ "properties": {
2547
+ "identifier": {
2548
+ "type": "integer",
2549
+ "minimum": 0,
2550
+ "maximum": 255,
2551
+ "description": "Identifier (0-255) for data lookup in Guard table."
2552
+ }
2553
+ },
2554
+ "required": [
2555
+ "identifier"
2556
+ ],
2557
+ "additionalProperties": false,
2558
+ "description": "Reference to the policy key (String type table entry) whose data table is scanned."
2559
+ },
2560
+ "ids": {
2561
+ "type": "object",
2562
+ "properties": {
2563
+ "identifier": {
2564
+ "type": "integer",
2565
+ "minimum": 0,
2566
+ "maximum": 255,
2567
+ "description": "Identifier (0-255) for data lookup in Guard table."
2568
+ }
2569
+ },
2570
+ "required": [
2571
+ "identifier"
2572
+ ],
2573
+ "additionalProperties": false,
2574
+ "description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
2575
+ },
2576
+ "where": {
2577
+ "oneOf": [
2578
+ {
2579
+ "type": "object",
2580
+ "properties": {
2581
+ "kind": {
2582
+ "type": "string",
2583
+ "const": "range"
2584
+ },
2585
+ "valueMin": {
2586
+ "description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
2587
+ "type": "string"
2588
+ },
2589
+ "valueMax": {
2590
+ "description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
2591
+ "type": "string"
2592
+ },
2593
+ "minInclusive": {
2594
+ "description": "Default true. false makes the lower bound exclusive.",
2595
+ "type": "boolean"
2596
+ },
2597
+ "maxInclusive": {
2598
+ "description": "Default true. false makes the upper bound exclusive.",
2599
+ "type": "boolean"
2600
+ }
2601
+ },
2602
+ "required": [
2603
+ "kind"
2604
+ ],
2605
+ "additionalProperties": false,
2606
+ "description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
2607
+ },
2608
+ {
2609
+ "type": "object",
2610
+ "properties": {
2611
+ "kind": {
2612
+ "type": "string",
2613
+ "const": "numEq"
2614
+ },
2615
+ "value": {
2616
+ "type": "string",
2617
+ "description": "Exact numeric match. Plain number string (U256 semantics)."
2618
+ }
2619
+ },
2620
+ "required": [
2621
+ "kind",
2622
+ "value"
2623
+ ],
2624
+ "additionalProperties": false
2625
+ },
2626
+ {
2627
+ "type": "object",
2628
+ "properties": {
2629
+ "kind": {
2630
+ "type": "string",
2631
+ "const": "gt"
2632
+ },
2633
+ "value": {
2634
+ "type": "string",
2635
+ "description": "Greater than. Plain number string (U256 semantics)."
2636
+ }
2637
+ },
2638
+ "required": [
2639
+ "kind",
2640
+ "value"
2641
+ ],
2642
+ "additionalProperties": false
2643
+ },
2644
+ {
2645
+ "type": "object",
2646
+ "properties": {
2647
+ "kind": {
2648
+ "type": "string",
2649
+ "const": "gte"
2650
+ },
2651
+ "value": {
2652
+ "type": "string",
2653
+ "description": "Greater than or equal. Plain number string (U256 semantics)."
2654
+ }
2655
+ },
2656
+ "required": [
2657
+ "kind",
2658
+ "value"
2659
+ ],
2660
+ "additionalProperties": false
2661
+ },
2662
+ {
2663
+ "type": "object",
2664
+ "properties": {
2665
+ "kind": {
2666
+ "type": "string",
2667
+ "const": "lt"
2668
+ },
2669
+ "value": {
2670
+ "type": "string",
2671
+ "description": "Less than. Plain number string (U256 semantics)."
2672
+ }
2673
+ },
2674
+ "required": [
2675
+ "kind",
2676
+ "value"
2677
+ ],
2678
+ "additionalProperties": false
2679
+ },
2680
+ {
2681
+ "type": "object",
2682
+ "properties": {
2683
+ "kind": {
2684
+ "type": "string",
2685
+ "const": "lte"
2686
+ },
2687
+ "value": {
2688
+ "type": "string",
2689
+ "description": "Less than or equal. Plain number string (U256 semantics)."
2690
+ }
2691
+ },
2692
+ "required": [
2693
+ "kind",
2694
+ "value"
2695
+ ],
2696
+ "additionalProperties": false
2697
+ },
2698
+ {
2699
+ "type": "object",
2700
+ "properties": {
2701
+ "kind": {
2702
+ "type": "string",
2703
+ "const": "addressEq"
2704
+ },
2705
+ "identifier": {
2706
+ "type": "integer",
2707
+ "minimum": 0,
2708
+ "maximum": 255,
2709
+ "description": "Identifier of the Address-type table entry to compare against."
2710
+ }
2711
+ },
2712
+ "required": [
2713
+ "kind",
2714
+ "identifier"
2715
+ ],
2716
+ "additionalProperties": false
2717
+ },
2718
+ {
2719
+ "type": "object",
2720
+ "properties": {
2721
+ "kind": {
2722
+ "type": "string",
2723
+ "const": "stringEq"
2724
+ },
2725
+ "value": {
2726
+ "type": "string",
2727
+ "description": "Exact string match (byte equality, UTF-8)."
2728
+ }
2729
+ },
2730
+ "required": [
2731
+ "kind",
2732
+ "value"
2733
+ ],
2734
+ "additionalProperties": false
2735
+ },
2736
+ {
2737
+ "type": "object",
2738
+ "properties": {
2739
+ "kind": {
2740
+ "type": "string",
2741
+ "const": "stringContains"
2742
+ },
2743
+ "value": {
2744
+ "type": "string",
2745
+ "description": "Substring match, case-sensitive."
2746
+ }
2747
+ },
2748
+ "required": [
2749
+ "kind",
2750
+ "value"
2751
+ ],
2752
+ "additionalProperties": false
2753
+ },
2754
+ {
2755
+ "type": "object",
2756
+ "properties": {
2757
+ "kind": {
2758
+ "type": "string",
2759
+ "const": "stringNoCaseContains"
2760
+ },
2761
+ "value": {
2762
+ "type": "string",
2763
+ "description": "Substring match, case-insensitive."
2764
+ }
2765
+ },
2766
+ "required": [
2767
+ "kind",
2768
+ "value"
2769
+ ],
2770
+ "additionalProperties": false
2771
+ },
2772
+ {
2773
+ "type": "object",
2774
+ "properties": {
2775
+ "kind": {
2776
+ "type": "string",
2777
+ "const": "boolEq"
2778
+ },
2779
+ "value": {
2780
+ "type": "boolean",
2781
+ "description": "Boolean equality."
2782
+ }
2783
+ },
2784
+ "required": [
2785
+ "kind",
2786
+ "value"
2787
+ ],
2788
+ "additionalProperties": false
2789
+ }
2790
+ ],
2791
+ "description": "Predicate filter applied to each candidate's data value."
2792
+ }
2793
+ },
2794
+ "required": [
2795
+ "type",
2796
+ "object",
2797
+ "key",
2798
+ "ids",
2799
+ "where"
2800
+ ],
2801
+ "additionalProperties": false,
2802
+ "description": "Returns U256. Sums the numeric payloads of candidates whose stored value matches the predicate (on-chain checked add, overflow aborts). Non-numeric or mismatching entries contribute 0. Use logic_as_u256_* to compare the sum."
2803
+ },
2804
+ {
2805
+ "type": "object",
2806
+ "properties": {
2807
+ "type": {
2808
+ "type": "string",
2809
+ "const": "query_repository_data_find_where"
2810
+ },
2811
+ "object": {
2812
+ "type": "object",
2813
+ "properties": {
2814
+ "identifier": {
2815
+ "type": "integer",
2816
+ "minimum": 0,
2817
+ "maximum": 255,
2818
+ "description": "Identifier (0-255) for data lookup in Guard table."
2819
+ }
2820
+ },
2821
+ "required": [
2822
+ "identifier"
2823
+ ],
2824
+ "additionalProperties": false,
2825
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
2826
+ },
2827
+ "key": {
2828
+ "type": "object",
2829
+ "properties": {
2830
+ "identifier": {
2831
+ "type": "integer",
2832
+ "minimum": 0,
2833
+ "maximum": 255,
2834
+ "description": "Identifier (0-255) for data lookup in Guard table."
2835
+ }
2836
+ },
2837
+ "required": [
2838
+ "identifier"
2839
+ ],
2840
+ "additionalProperties": false,
2841
+ "description": "Reference to the policy key (String type table entry) whose data table is scanned."
2842
+ },
2843
+ "ids": {
2844
+ "type": "object",
2845
+ "properties": {
2846
+ "identifier": {
2847
+ "type": "integer",
2848
+ "minimum": 0,
2849
+ "maximum": 255,
2850
+ "description": "Identifier (0-255) for data lookup in Guard table."
2851
+ }
2852
+ },
2853
+ "required": [
2854
+ "identifier"
2855
+ ],
2856
+ "additionalProperties": false,
2857
+ "description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
2858
+ },
2859
+ "where": {
2860
+ "oneOf": [
2861
+ {
2862
+ "type": "object",
2863
+ "properties": {
2864
+ "kind": {
2865
+ "type": "string",
2866
+ "const": "range"
2867
+ },
2868
+ "valueMin": {
2869
+ "description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
2870
+ "type": "string"
2871
+ },
2872
+ "valueMax": {
2873
+ "description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
2874
+ "type": "string"
2875
+ },
2876
+ "minInclusive": {
2877
+ "description": "Default true. false makes the lower bound exclusive.",
2878
+ "type": "boolean"
2879
+ },
2880
+ "maxInclusive": {
2881
+ "description": "Default true. false makes the upper bound exclusive.",
2882
+ "type": "boolean"
2883
+ }
2884
+ },
2885
+ "required": [
2886
+ "kind"
2887
+ ],
2888
+ "additionalProperties": false,
2889
+ "description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
2890
+ },
2891
+ {
2892
+ "type": "object",
2893
+ "properties": {
2894
+ "kind": {
2895
+ "type": "string",
2896
+ "const": "numEq"
2897
+ },
2898
+ "value": {
2899
+ "type": "string",
2900
+ "description": "Exact numeric match. Plain number string (U256 semantics)."
2901
+ }
2902
+ },
2903
+ "required": [
2904
+ "kind",
2905
+ "value"
2906
+ ],
2907
+ "additionalProperties": false
2908
+ },
2909
+ {
2910
+ "type": "object",
2911
+ "properties": {
2912
+ "kind": {
2913
+ "type": "string",
2914
+ "const": "gt"
2915
+ },
2916
+ "value": {
2917
+ "type": "string",
2918
+ "description": "Greater than. Plain number string (U256 semantics)."
2919
+ }
2920
+ },
2921
+ "required": [
2922
+ "kind",
2923
+ "value"
2924
+ ],
2925
+ "additionalProperties": false
2926
+ },
2927
+ {
2928
+ "type": "object",
2929
+ "properties": {
2930
+ "kind": {
2931
+ "type": "string",
2932
+ "const": "gte"
2933
+ },
2934
+ "value": {
2935
+ "type": "string",
2936
+ "description": "Greater than or equal. Plain number string (U256 semantics)."
2937
+ }
2938
+ },
2939
+ "required": [
2940
+ "kind",
2941
+ "value"
2942
+ ],
2943
+ "additionalProperties": false
2944
+ },
2945
+ {
2946
+ "type": "object",
2947
+ "properties": {
2948
+ "kind": {
2949
+ "type": "string",
2950
+ "const": "lt"
2951
+ },
2952
+ "value": {
2953
+ "type": "string",
2954
+ "description": "Less than. Plain number string (U256 semantics)."
2955
+ }
2956
+ },
2957
+ "required": [
2958
+ "kind",
2959
+ "value"
2960
+ ],
2961
+ "additionalProperties": false
2962
+ },
2963
+ {
2964
+ "type": "object",
2965
+ "properties": {
2966
+ "kind": {
2967
+ "type": "string",
2968
+ "const": "lte"
2969
+ },
2970
+ "value": {
2971
+ "type": "string",
2972
+ "description": "Less than or equal. Plain number string (U256 semantics)."
2973
+ }
2974
+ },
2975
+ "required": [
2976
+ "kind",
2977
+ "value"
2978
+ ],
2979
+ "additionalProperties": false
2980
+ },
2981
+ {
2982
+ "type": "object",
2983
+ "properties": {
2984
+ "kind": {
2985
+ "type": "string",
2986
+ "const": "addressEq"
2987
+ },
2988
+ "identifier": {
2989
+ "type": "integer",
2990
+ "minimum": 0,
2991
+ "maximum": 255,
2992
+ "description": "Identifier of the Address-type table entry to compare against."
2993
+ }
2994
+ },
2995
+ "required": [
2996
+ "kind",
2997
+ "identifier"
2998
+ ],
2999
+ "additionalProperties": false
3000
+ },
3001
+ {
3002
+ "type": "object",
3003
+ "properties": {
3004
+ "kind": {
3005
+ "type": "string",
3006
+ "const": "stringEq"
3007
+ },
3008
+ "value": {
3009
+ "type": "string",
3010
+ "description": "Exact string match (byte equality, UTF-8)."
3011
+ }
3012
+ },
3013
+ "required": [
3014
+ "kind",
3015
+ "value"
3016
+ ],
3017
+ "additionalProperties": false
3018
+ },
3019
+ {
3020
+ "type": "object",
3021
+ "properties": {
3022
+ "kind": {
3023
+ "type": "string",
3024
+ "const": "stringContains"
3025
+ },
3026
+ "value": {
3027
+ "type": "string",
3028
+ "description": "Substring match, case-sensitive."
3029
+ }
3030
+ },
3031
+ "required": [
3032
+ "kind",
3033
+ "value"
3034
+ ],
3035
+ "additionalProperties": false
3036
+ },
3037
+ {
3038
+ "type": "object",
3039
+ "properties": {
3040
+ "kind": {
3041
+ "type": "string",
3042
+ "const": "stringNoCaseContains"
3043
+ },
3044
+ "value": {
3045
+ "type": "string",
3046
+ "description": "Substring match, case-insensitive."
3047
+ }
3048
+ },
3049
+ "required": [
3050
+ "kind",
3051
+ "value"
3052
+ ],
3053
+ "additionalProperties": false
3054
+ },
3055
+ {
3056
+ "type": "object",
3057
+ "properties": {
3058
+ "kind": {
3059
+ "type": "string",
3060
+ "const": "boolEq"
3061
+ },
3062
+ "value": {
3063
+ "type": "boolean",
3064
+ "description": "Boolean equality."
3065
+ }
3066
+ },
3067
+ "required": [
3068
+ "kind",
3069
+ "value"
3070
+ ],
3071
+ "additionalProperties": false
3072
+ }
3073
+ ],
3074
+ "description": "Predicate filter applied to each candidate's data value."
3075
+ }
3076
+ },
3077
+ "required": [
3078
+ "type",
3079
+ "object",
3080
+ "key",
3081
+ "ids",
3082
+ "where"
3083
+ ],
3084
+ "additionalProperties": false,
3085
+ "description": "Returns VecAddress. Lists the IDs of ALL matching candidates in candidate order. Compose: vec_length + logic_as_u256_greater_than_or_equal (existence/threshold), vec_indexof_address (first/last position), vec_contains_address (membership)."
3086
+ },
3087
+ {
3088
+ "type": "object",
3089
+ "properties": {
3090
+ "type": {
3091
+ "type": "string",
3092
+ "const": "query_repository_data_keys_where"
3093
+ },
3094
+ "object": {
3095
+ "type": "object",
3096
+ "properties": {
3097
+ "identifier": {
3098
+ "type": "integer",
3099
+ "minimum": 0,
3100
+ "maximum": 255,
3101
+ "description": "Identifier (0-255) for data lookup in Guard table."
3102
+ }
3103
+ },
3104
+ "required": [
3105
+ "identifier"
3106
+ ],
3107
+ "additionalProperties": false,
3108
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
3109
+ },
3110
+ "id": {
3111
+ "type": "object",
3112
+ "properties": {
3113
+ "identifier": {
3114
+ "type": "integer",
3115
+ "minimum": 0,
3116
+ "maximum": 255,
3117
+ "description": "Identifier (0-255) for data lookup in Guard table."
3118
+ }
3119
+ },
3120
+ "required": [
3121
+ "identifier"
3122
+ ],
3123
+ "additionalProperties": false,
3124
+ "description": "Reference to the single candidate ID (Address type table entry) to probe across policies."
3125
+ },
3126
+ "where": {
3127
+ "oneOf": [
3128
+ {
3129
+ "type": "object",
3130
+ "properties": {
3131
+ "kind": {
3132
+ "type": "string",
3133
+ "const": "range"
3134
+ },
3135
+ "valueMin": {
3136
+ "description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
3137
+ "type": "string"
3138
+ },
3139
+ "valueMax": {
3140
+ "description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
3141
+ "type": "string"
3142
+ },
3143
+ "minInclusive": {
3144
+ "description": "Default true. false makes the lower bound exclusive.",
3145
+ "type": "boolean"
3146
+ },
3147
+ "maxInclusive": {
3148
+ "description": "Default true. false makes the upper bound exclusive.",
3149
+ "type": "boolean"
3150
+ }
3151
+ },
3152
+ "required": [
3153
+ "kind"
3154
+ ],
3155
+ "additionalProperties": false,
3156
+ "description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
3157
+ },
3158
+ {
3159
+ "type": "object",
3160
+ "properties": {
3161
+ "kind": {
3162
+ "type": "string",
3163
+ "const": "numEq"
3164
+ },
3165
+ "value": {
3166
+ "type": "string",
3167
+ "description": "Exact numeric match. Plain number string (U256 semantics)."
3168
+ }
3169
+ },
3170
+ "required": [
3171
+ "kind",
3172
+ "value"
3173
+ ],
3174
+ "additionalProperties": false
3175
+ },
3176
+ {
3177
+ "type": "object",
3178
+ "properties": {
3179
+ "kind": {
3180
+ "type": "string",
3181
+ "const": "gt"
3182
+ },
3183
+ "value": {
3184
+ "type": "string",
3185
+ "description": "Greater than. Plain number string (U256 semantics)."
3186
+ }
3187
+ },
3188
+ "required": [
3189
+ "kind",
3190
+ "value"
3191
+ ],
3192
+ "additionalProperties": false
3193
+ },
3194
+ {
3195
+ "type": "object",
3196
+ "properties": {
3197
+ "kind": {
3198
+ "type": "string",
3199
+ "const": "gte"
3200
+ },
3201
+ "value": {
3202
+ "type": "string",
3203
+ "description": "Greater than or equal. Plain number string (U256 semantics)."
3204
+ }
3205
+ },
3206
+ "required": [
3207
+ "kind",
3208
+ "value"
3209
+ ],
3210
+ "additionalProperties": false
3211
+ },
3212
+ {
3213
+ "type": "object",
3214
+ "properties": {
3215
+ "kind": {
3216
+ "type": "string",
3217
+ "const": "lt"
3218
+ },
3219
+ "value": {
3220
+ "type": "string",
3221
+ "description": "Less than. Plain number string (U256 semantics)."
3222
+ }
3223
+ },
3224
+ "required": [
3225
+ "kind",
3226
+ "value"
3227
+ ],
3228
+ "additionalProperties": false
3229
+ },
3230
+ {
3231
+ "type": "object",
3232
+ "properties": {
3233
+ "kind": {
3234
+ "type": "string",
3235
+ "const": "lte"
3236
+ },
3237
+ "value": {
3238
+ "type": "string",
3239
+ "description": "Less than or equal. Plain number string (U256 semantics)."
3240
+ }
3241
+ },
3242
+ "required": [
3243
+ "kind",
3244
+ "value"
3245
+ ],
3246
+ "additionalProperties": false
3247
+ },
3248
+ {
3249
+ "type": "object",
3250
+ "properties": {
3251
+ "kind": {
3252
+ "type": "string",
3253
+ "const": "addressEq"
3254
+ },
3255
+ "identifier": {
3256
+ "type": "integer",
3257
+ "minimum": 0,
3258
+ "maximum": 255,
3259
+ "description": "Identifier of the Address-type table entry to compare against."
3260
+ }
3261
+ },
3262
+ "required": [
3263
+ "kind",
3264
+ "identifier"
3265
+ ],
3266
+ "additionalProperties": false
3267
+ },
3268
+ {
3269
+ "type": "object",
3270
+ "properties": {
3271
+ "kind": {
3272
+ "type": "string",
3273
+ "const": "stringEq"
3274
+ },
3275
+ "value": {
3276
+ "type": "string",
3277
+ "description": "Exact string match (byte equality, UTF-8)."
3278
+ }
3279
+ },
3280
+ "required": [
3281
+ "kind",
3282
+ "value"
3283
+ ],
3284
+ "additionalProperties": false
3285
+ },
3286
+ {
3287
+ "type": "object",
3288
+ "properties": {
3289
+ "kind": {
3290
+ "type": "string",
3291
+ "const": "stringContains"
3292
+ },
3293
+ "value": {
3294
+ "type": "string",
3295
+ "description": "Substring match, case-sensitive."
3296
+ }
3297
+ },
3298
+ "required": [
3299
+ "kind",
3300
+ "value"
3301
+ ],
3302
+ "additionalProperties": false
3303
+ },
3304
+ {
3305
+ "type": "object",
3306
+ "properties": {
3307
+ "kind": {
3308
+ "type": "string",
3309
+ "const": "stringNoCaseContains"
3310
+ },
3311
+ "value": {
3312
+ "type": "string",
3313
+ "description": "Substring match, case-insensitive."
3314
+ }
3315
+ },
3316
+ "required": [
3317
+ "kind",
3318
+ "value"
3319
+ ],
3320
+ "additionalProperties": false
3321
+ },
3322
+ {
3323
+ "type": "object",
3324
+ "properties": {
3325
+ "kind": {
3326
+ "type": "string",
3327
+ "const": "boolEq"
3328
+ },
3329
+ "value": {
3330
+ "type": "boolean",
3331
+ "description": "Boolean equality."
3332
+ }
3333
+ },
3334
+ "required": [
3335
+ "kind",
3336
+ "value"
3337
+ ],
3338
+ "additionalProperties": false
3339
+ }
3340
+ ],
3341
+ "description": "Predicate filter applied to the value stored under each policy key for this ID."
3342
+ }
3343
+ },
3344
+ "required": [
3345
+ "type",
3346
+ "object",
3347
+ "id",
3348
+ "where"
3349
+ ],
3350
+ "additionalProperties": false,
3351
+ "description": "Returns VecString. Reverse lookup: all policy keys whose stored value for the given ID matches the predicate (scans the policy schema and probes each key). Compose: vec_length (how many keys match), vec_indexof_string + logic_as_u256_equal (does a specific key match), vec_contains_string (specific key membership)."
3352
+ },
3353
+ {
3354
+ "type": "object",
3355
+ "properties": {
3356
+ "type": {
3357
+ "type": "string",
3358
+ "const": "query_repository_policies_keys"
3359
+ },
3360
+ "object": {
3361
+ "type": "object",
3362
+ "properties": {
3363
+ "identifier": {
3364
+ "type": "integer",
3365
+ "minimum": 0,
3366
+ "maximum": 255,
3367
+ "description": "Identifier (0-255) for data lookup in Guard table."
3368
+ }
3369
+ },
3370
+ "required": [
3371
+ "identifier"
3372
+ ],
3373
+ "additionalProperties": false,
3374
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
3375
+ }
3376
+ },
3377
+ "required": [
3378
+ "type",
3379
+ "object"
3380
+ ],
3381
+ "additionalProperties": false,
3382
+ "description": "Returns VecString. Lists ALL policy key names of the Repository (max 50). Use vec_length to bound per-key composite queries or vec_contains_string to assert a key exists."
2237
3383
  }
2238
3384
  ],
2239
3385
  "$ref": "#/definitions/__schema0"
@@ -2435,6 +3581,14 @@
2435
3581
  "description": "Phase 1 dry_run: when true, SIMULATE the transaction without signing or submitting. Returns effects + events showing what WOULD happen — no on-chain state is modified, no gas is charged. Use this to verify that an operation will succeed before committing. The returned digest will be 'dry_run:<timestamp>' and objectChanges will be empty (simulation only).",
2436
3582
  "type": "boolean"
2437
3583
  },
3584
+ "response_level": {
3585
+ "description": "Write-success response size. 'compact' (default) trims the structured result to key fields (digest + created object references); 'full' includes the complete raw result. Default: compact.",
3586
+ "type": "string",
3587
+ "enum": [
3588
+ "compact",
3589
+ "full"
3590
+ ]
3591
+ },
2438
3592
  "confirm_mode": {
2439
3593
  "description": "Confirmation frequency for this call. 'full': confirm every matched gate rule. 'streamlined' (client default): skip fail-open 'standard' level prompts — fail-closed levels (irreversible/publish/amount) ALWAYS still confirm. 'quiet': same hard floor as streamlined, for clients that batch/suppress repeat low-risk prompts in their own UI. This field NEVER downgrades fail-closed levels.",
2440
3594
  "type": "string",
@@ -3079,504 +4233,1161 @@
3079
4233
  "properties": {
3080
4234
  "type": {
3081
4235
  "type": "string",
3082
- "const": "convert_address_number"
4236
+ "const": "convert_address_number"
4237
+ },
4238
+ "node": {
4239
+ "$ref": "#/definitions/__schema0"
4240
+ }
4241
+ },
4242
+ "required": [
4243
+ "type",
4244
+ "node"
4245
+ ],
4246
+ "additionalProperties": false,
4247
+ "description": "Returns U256. Computed by converting the child node value from Address type to number type."
4248
+ },
4249
+ {
4250
+ "type": "object",
4251
+ "properties": {
4252
+ "type": {
4253
+ "type": "string",
4254
+ "const": "convert_number_string"
4255
+ },
4256
+ "node": {
4257
+ "$ref": "#/definitions/__schema0"
4258
+ }
4259
+ },
4260
+ "required": [
4261
+ "type",
4262
+ "node"
4263
+ ],
4264
+ "additionalProperties": false,
4265
+ "description": "Returns String. Computed by converting the child node value from number type to string type."
4266
+ },
4267
+ {
4268
+ "type": "object",
4269
+ "properties": {
4270
+ "type": {
4271
+ "type": "string",
4272
+ "const": "convert_string_number"
4273
+ },
4274
+ "node": {
4275
+ "$ref": "#/definitions/__schema0"
4276
+ }
4277
+ },
4278
+ "required": [
4279
+ "type",
4280
+ "node"
4281
+ ],
4282
+ "additionalProperties": false,
4283
+ "description": "Returns U256. Computed by parsing the child node value as a number. Throws exception if the string is not a valid number."
4284
+ },
4285
+ {
4286
+ "type": "object",
4287
+ "properties": {
4288
+ "type": {
4289
+ "type": "string",
4290
+ "const": "convert_safe_u8"
4291
+ },
4292
+ "node": {
4293
+ "$ref": "#/definitions/__schema0"
4294
+ }
4295
+ },
4296
+ "required": [
4297
+ "type",
4298
+ "node"
4299
+ ],
4300
+ "additionalProperties": false,
4301
+ "description": "Returns U8. Computed by converting the child node value to U8. Throws exception if value is out of U8 range (0-255)."
4302
+ },
4303
+ {
4304
+ "type": "object",
4305
+ "properties": {
4306
+ "type": {
4307
+ "type": "string",
4308
+ "const": "convert_safe_u16"
4309
+ },
4310
+ "node": {
4311
+ "$ref": "#/definitions/__schema0"
4312
+ }
4313
+ },
4314
+ "required": [
4315
+ "type",
4316
+ "node"
4317
+ ],
4318
+ "additionalProperties": false,
4319
+ "description": "Returns U16. Computed by converting the child node value to U16. Throws exception if value is out of U16 range (0-65535)."
4320
+ },
4321
+ {
4322
+ "type": "object",
4323
+ "properties": {
4324
+ "type": {
4325
+ "type": "string",
4326
+ "const": "convert_safe_u32"
4327
+ },
4328
+ "node": {
4329
+ "$ref": "#/definitions/__schema0"
4330
+ }
4331
+ },
4332
+ "required": [
4333
+ "type",
4334
+ "node"
4335
+ ],
4336
+ "additionalProperties": false,
4337
+ "description": "Returns U32. Computed by converting the child node value to U32. Throws exception if value is out of U32 range."
4338
+ },
4339
+ {
4340
+ "type": "object",
4341
+ "properties": {
4342
+ "type": {
4343
+ "type": "string",
4344
+ "const": "convert_safe_u64"
4345
+ },
4346
+ "node": {
4347
+ "$ref": "#/definitions/__schema0"
4348
+ }
4349
+ },
4350
+ "required": [
4351
+ "type",
4352
+ "node"
4353
+ ],
4354
+ "additionalProperties": false,
4355
+ "description": "Returns U64. Computed by converting the child node value to U64. Throws exception if value is out of U64 range."
4356
+ },
4357
+ {
4358
+ "type": "object",
4359
+ "properties": {
4360
+ "type": {
4361
+ "type": "string",
4362
+ "const": "convert_safe_u128"
4363
+ },
4364
+ "node": {
4365
+ "$ref": "#/definitions/__schema0"
4366
+ }
4367
+ },
4368
+ "required": [
4369
+ "type",
4370
+ "node"
4371
+ ],
4372
+ "additionalProperties": false,
4373
+ "description": "Returns U128. Computed by converting the child node value to U128. Throws exception if value is out of U128 range."
4374
+ },
4375
+ {
4376
+ "type": "object",
4377
+ "properties": {
4378
+ "type": {
4379
+ "type": "string",
4380
+ "const": "convert_safe_u256"
4381
+ },
4382
+ "node": {
4383
+ "$ref": "#/definitions/__schema0"
4384
+ }
4385
+ },
4386
+ "required": [
4387
+ "type",
4388
+ "node"
4389
+ ],
4390
+ "additionalProperties": false,
4391
+ "description": "Returns U256. Computed by converting the child node value to U256."
4392
+ },
4393
+ {
4394
+ "type": "object",
4395
+ "properties": {
4396
+ "type": {
4397
+ "type": "string",
4398
+ "const": "value_type"
4399
+ },
4400
+ "node": {
4401
+ "$ref": "#/definitions/__schema0"
4402
+ }
4403
+ },
4404
+ "required": [
4405
+ "type",
4406
+ "node"
4407
+ ],
4408
+ "additionalProperties": false,
4409
+ "description": "Returns U8. Computed by getting the type identifier (ValueType) of the child node value. Value type: can be specified as a string name (e.g., 'U64', 'Address', 'String') or a number (0-18). Supported types: Bool=0/'Bool', Address=1/'Address', String=2/'String', U8=3/'U8', U16=4/'U16', U32=5/'U32', U64=6/'U64', U128=7/'U128', U256=8/'U256', VecBool=9/'VecBool', VecAddress=10/'VecAddress', VecString=11/'VecString', VecU8=12/'VecU8', VecU16=13/'VecU16', VecU32=14/'VecU32', VecU64=15/'VecU64', VecU128=16/'VecU128', VecU256=17/'VecU256', VecVecU8=18/'VecVecU8'. Note: Value=19 is an INTERNAL type for wowok system use only and should NOT be used directly by users. String format is recommended for better readability."
4410
+ },
4411
+ {
4412
+ "type": "object",
4413
+ "properties": {
4414
+ "type": {
4415
+ "type": "string",
4416
+ "const": "vec_length"
4417
+ },
4418
+ "node": {
4419
+ "$ref": "#/definitions/__schema0"
4420
+ }
4421
+ },
4422
+ "required": [
4423
+ "type",
4424
+ "node"
4425
+ ],
4426
+ "additionalProperties": false,
4427
+ "description": "Returns U64. Computed by getting the length of the vector in the child node value. Child node must be one of Vec types: VecBool=9, VecAddress=10, VecString=11, VecU8=12, VecU16=13, VecU32=14, VecU64=15, VecU128=16, VecU256=17, VecVecU8=18, Value=19."
4428
+ },
4429
+ {
4430
+ "type": "object",
4431
+ "properties": {
4432
+ "type": {
4433
+ "type": "string",
4434
+ "const": "vec_contains_bool"
4435
+ },
4436
+ "nodes": {
4437
+ "minItems": 2,
4438
+ "maxItems": 8,
4439
+ "type": "array",
4440
+ "items": {
4441
+ "$ref": "#/definitions/__schema0"
4442
+ },
4443
+ "description": "First node must be VecBool (ValueType=9) or Value (ValueType=19), remaining nodes must be Bool (ValueType=0) or Value (ValueType=19)."
4444
+ }
4445
+ },
4446
+ "required": [
4447
+ "type",
4448
+ "nodes"
4449
+ ],
4450
+ "additionalProperties": false,
4451
+ "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL boolean values (subsequent nodes)."
4452
+ },
4453
+ {
4454
+ "type": "object",
4455
+ "properties": {
4456
+ "type": {
4457
+ "type": "string",
4458
+ "const": "vec_contains_address"
3083
4459
  },
3084
- "node": {
3085
- "$ref": "#/definitions/__schema0"
4460
+ "nodes": {
4461
+ "minItems": 2,
4462
+ "maxItems": 8,
4463
+ "type": "array",
4464
+ "items": {
4465
+ "$ref": "#/definitions/__schema0"
4466
+ },
4467
+ "description": "First node must be VecAddress (ValueType=10) or Value (ValueType=19), remaining nodes must be Address (ValueType=1) or Value (ValueType=19)."
3086
4468
  }
3087
4469
  },
3088
4470
  "required": [
3089
4471
  "type",
3090
- "node"
4472
+ "nodes"
3091
4473
  ],
3092
4474
  "additionalProperties": false,
3093
- "description": "Returns U256. Computed by converting the child node value from Address type to number type."
4475
+ "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL address values (subsequent nodes)."
3094
4476
  },
3095
4477
  {
3096
4478
  "type": "object",
3097
4479
  "properties": {
3098
4480
  "type": {
3099
4481
  "type": "string",
3100
- "const": "convert_number_string"
4482
+ "const": "vec_contains_string"
3101
4483
  },
3102
- "node": {
3103
- "$ref": "#/definitions/__schema0"
4484
+ "nodes": {
4485
+ "minItems": 2,
4486
+ "maxItems": 8,
4487
+ "type": "array",
4488
+ "items": {
4489
+ "$ref": "#/definitions/__schema0"
4490
+ },
4491
+ "description": "First node must be VecString (ValueType=11) or Value (ValueType=19), remaining nodes must be String (ValueType=2) or Value (ValueType=19)."
3104
4492
  }
3105
4493
  },
3106
4494
  "required": [
3107
4495
  "type",
3108
- "node"
4496
+ "nodes"
3109
4497
  ],
3110
4498
  "additionalProperties": false,
3111
- "description": "Returns String. Computed by converting the child node value from number type to string type."
4499
+ "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL string values (subsequent nodes)."
3112
4500
  },
3113
4501
  {
3114
4502
  "type": "object",
3115
4503
  "properties": {
3116
4504
  "type": {
3117
4505
  "type": "string",
3118
- "const": "convert_string_number"
4506
+ "const": "vec_contains_string_nocase"
3119
4507
  },
3120
- "node": {
3121
- "$ref": "#/definitions/__schema0"
4508
+ "nodes": {
4509
+ "minItems": 2,
4510
+ "maxItems": 8,
4511
+ "type": "array",
4512
+ "items": {
4513
+ "$ref": "#/definitions/__schema0"
4514
+ },
4515
+ "description": "First node must be VecString (ValueType=11) or Value (ValueType=19), remaining nodes must be String (ValueType=2) or Value (ValueType=19)."
3122
4516
  }
3123
4517
  },
3124
4518
  "required": [
3125
4519
  "type",
3126
- "node"
4520
+ "nodes"
3127
4521
  ],
3128
4522
  "additionalProperties": false,
3129
- "description": "Returns U256. Computed by parsing the child node value as a number. Throws exception if the string is not a valid number."
4523
+ "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL string values (subsequent nodes), using case-insensitive comparison."
3130
4524
  },
3131
4525
  {
3132
4526
  "type": "object",
3133
4527
  "properties": {
3134
4528
  "type": {
3135
4529
  "type": "string",
3136
- "const": "convert_safe_u8"
4530
+ "const": "vec_contains_number"
3137
4531
  },
3138
- "node": {
3139
- "$ref": "#/definitions/__schema0"
4532
+ "nodes": {
4533
+ "minItems": 2,
4534
+ "maxItems": 8,
4535
+ "type": "array",
4536
+ "items": {
4537
+ "$ref": "#/definitions/__schema0"
4538
+ },
4539
+ "description": "First node must be VecU8 (12), VecU16 (13), VecU32 (14), VecU64 (15), VecU128 (16), VecU256 (17) or Value (ValueType=19), remaining nodes must be U8 (3), U16 (4), U32 (5), U64 (6), U128 (7), U256 (8) or Value (ValueType=19)."
3140
4540
  }
3141
4541
  },
3142
4542
  "required": [
3143
4543
  "type",
3144
- "node"
4544
+ "nodes"
3145
4545
  ],
3146
4546
  "additionalProperties": false,
3147
- "description": "Returns U8. Computed by converting the child node value to U8. Throws exception if value is out of U8 range (0-255)."
4547
+ "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL number values (subsequent nodes)."
3148
4548
  },
3149
4549
  {
3150
4550
  "type": "object",
3151
4551
  "properties": {
3152
4552
  "type": {
3153
4553
  "type": "string",
3154
- "const": "convert_safe_u16"
4554
+ "const": "vec_indexof_bool"
3155
4555
  },
3156
- "node": {
4556
+ "nodeLeft": {
3157
4557
  "$ref": "#/definitions/__schema0"
4558
+ },
4559
+ "nodeRight": {
4560
+ "$ref": "#/definitions/__schema0"
4561
+ },
4562
+ "order": {
4563
+ "type": "string",
4564
+ "enum": [
4565
+ "forward",
4566
+ "backward"
4567
+ ],
4568
+ "description": "'forward' searches from index 0, 'backward' searches from last index."
3158
4569
  }
3159
4570
  },
3160
4571
  "required": [
3161
4572
  "type",
3162
- "node"
4573
+ "nodeLeft",
4574
+ "nodeRight",
4575
+ "order"
3163
4576
  ],
3164
4577
  "additionalProperties": false,
3165
- "description": "Returns U16. Computed by converting the child node value to U16. Throws exception if value is out of U16 range (0-65535)."
4578
+ "description": "Returns U64. Computed by searching for the second node value in the vector (first node). nodeLeft must be VecBool (ValueType=9) or Value (ValueType=19) type, nodeRight must be Bool (ValueType=0) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
3166
4579
  },
3167
4580
  {
3168
4581
  "type": "object",
3169
4582
  "properties": {
3170
4583
  "type": {
3171
4584
  "type": "string",
3172
- "const": "convert_safe_u32"
4585
+ "const": "vec_indexof_address"
3173
4586
  },
3174
- "node": {
4587
+ "nodeLeft": {
4588
+ "$ref": "#/definitions/__schema0"
4589
+ },
4590
+ "nodeRight": {
3175
4591
  "$ref": "#/definitions/__schema0"
4592
+ },
4593
+ "order": {
4594
+ "type": "string",
4595
+ "enum": [
4596
+ "forward",
4597
+ "backward"
4598
+ ],
4599
+ "description": "'forward' searches from index 0, 'backward' searches from last index."
3176
4600
  }
3177
4601
  },
3178
4602
  "required": [
3179
4603
  "type",
3180
- "node"
4604
+ "nodeLeft",
4605
+ "nodeRight",
4606
+ "order"
3181
4607
  ],
3182
4608
  "additionalProperties": false,
3183
- "description": "Returns U32. Computed by converting the child node value to U32. Throws exception if value is out of U32 range."
4609
+ "description": "Returns U64. Computed by searching for the second node value in the vector (first node). nodeLeft must be VecAddress (ValueType=10) or Value (ValueType=19) type, nodeRight must be Address (ValueType=1) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
3184
4610
  },
3185
4611
  {
3186
4612
  "type": "object",
3187
4613
  "properties": {
3188
4614
  "type": {
3189
4615
  "type": "string",
3190
- "const": "convert_safe_u64"
4616
+ "const": "vec_indexof_string"
3191
4617
  },
3192
- "node": {
4618
+ "nodeLeft": {
4619
+ "$ref": "#/definitions/__schema0"
4620
+ },
4621
+ "nodeRight": {
3193
4622
  "$ref": "#/definitions/__schema0"
4623
+ },
4624
+ "order": {
4625
+ "type": "string",
4626
+ "enum": [
4627
+ "forward",
4628
+ "backward"
4629
+ ],
4630
+ "description": "'forward' searches from index 0, 'backward' searches from last index."
3194
4631
  }
3195
4632
  },
3196
4633
  "required": [
3197
4634
  "type",
3198
- "node"
4635
+ "nodeLeft",
4636
+ "nodeRight",
4637
+ "order"
3199
4638
  ],
3200
4639
  "additionalProperties": false,
3201
- "description": "Returns U64. Computed by converting the child node value to U64. Throws exception if value is out of U64 range."
4640
+ "description": "Returns U64. Computed by searching for the second node value in the vector (first node). nodeLeft must be VecString (ValueType=11) or Value (ValueType=19) type, nodeRight must be String (ValueType=2) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
3202
4641
  },
3203
4642
  {
3204
4643
  "type": "object",
3205
4644
  "properties": {
3206
4645
  "type": {
3207
4646
  "type": "string",
3208
- "const": "convert_safe_u128"
4647
+ "const": "vec_indexof_string_nocase"
3209
4648
  },
3210
- "node": {
4649
+ "nodeLeft": {
4650
+ "$ref": "#/definitions/__schema0"
4651
+ },
4652
+ "nodeRight": {
3211
4653
  "$ref": "#/definitions/__schema0"
4654
+ },
4655
+ "order": {
4656
+ "type": "string",
4657
+ "enum": [
4658
+ "forward",
4659
+ "backward"
4660
+ ],
4661
+ "description": "'forward' searches from index 0, 'backward' searches from last index."
3212
4662
  }
3213
4663
  },
3214
4664
  "required": [
3215
4665
  "type",
3216
- "node"
4666
+ "nodeLeft",
4667
+ "nodeRight",
4668
+ "order"
3217
4669
  ],
3218
4670
  "additionalProperties": false,
3219
- "description": "Returns U128. Computed by converting the child node value to U128. Throws exception if value is out of U128 range."
4671
+ "description": "Returns U64. Computed by searching for the second node value in the vector (first node), using case-insensitive comparison. nodeLeft must be VecString (ValueType=11) or Value (ValueType=19) type, nodeRight must be String (ValueType=2) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
3220
4672
  },
3221
4673
  {
3222
4674
  "type": "object",
3223
4675
  "properties": {
3224
4676
  "type": {
3225
4677
  "type": "string",
3226
- "const": "convert_safe_u256"
4678
+ "const": "vec_indexof_number"
3227
4679
  },
3228
- "node": {
4680
+ "nodeLeft": {
3229
4681
  "$ref": "#/definitions/__schema0"
4682
+ },
4683
+ "nodeRight": {
4684
+ "$ref": "#/definitions/__schema0"
4685
+ },
4686
+ "order": {
4687
+ "type": "string",
4688
+ "enum": [
4689
+ "forward",
4690
+ "backward"
4691
+ ],
4692
+ "description": "'forward' searches from index 0, 'backward' searches from last index."
3230
4693
  }
3231
4694
  },
3232
4695
  "required": [
3233
4696
  "type",
3234
- "node"
4697
+ "nodeLeft",
4698
+ "nodeRight",
4699
+ "order"
3235
4700
  ],
3236
4701
  "additionalProperties": false,
3237
- "description": "Returns U256. Computed by converting the child node value to U256."
4702
+ "description": "Returns U64. Computed by searching for the second node value in the vector (first node). nodeLeft must be VecU8 (12), VecU16 (13), VecU32 (14), VecU64 (15), VecU128 (16), VecU256 (17) or Value (ValueType=19) type, nodeRight must be U8 (3), U16 (4), U32 (5), U64 (6), U128 (7), U256 (8) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
3238
4703
  },
3239
4704
  {
3240
4705
  "type": "object",
3241
4706
  "properties": {
3242
4707
  "type": {
3243
4708
  "type": "string",
3244
- "const": "value_type"
4709
+ "const": "context"
3245
4710
  },
3246
- "node": {
3247
- "$ref": "#/definitions/__schema0"
4711
+ "context": {
4712
+ "type": "string",
4713
+ "enum": [
4714
+ "Signer",
4715
+ "Clock",
4716
+ "Guard"
4717
+ ],
4718
+ "description": "System context type: Signer returns transaction sender address (Address), Clock returns current on-chain timestamp (U64), Guard returns current Guard object ID (Address)."
3248
4719
  }
3249
4720
  },
3250
4721
  "required": [
3251
4722
  "type",
3252
- "node"
4723
+ "context"
3253
4724
  ],
3254
4725
  "additionalProperties": false,
3255
- "description": "Returns U8. Computed by getting the type identifier (ValueType) of the child node value. Value type: can be specified as a string name (e.g., 'U64', 'Address', 'String') or a number (0-18). Supported types: Bool=0/'Bool', Address=1/'Address', String=2/'String', U8=3/'U8', U16=4/'U16', U32=5/'U32', U64=6/'U64', U128=7/'U128', U256=8/'U256', VecBool=9/'VecBool', VecAddress=10/'VecAddress', VecString=11/'VecString', VecU8=12/'VecU8', VecU16=13/'VecU16', VecU32=14/'VecU32', VecU64=15/'VecU64', VecU128=16/'VecU128', VecU256=17/'VecU256', VecVecU8=18/'VecVecU8'. Note: Value=19 is an INTERNAL type for wowok system use only and should NOT be used directly by users. String format is recommended for better readability."
4726
+ "description": "Signer returns transaction sender address (Address), Clock returns current on-chain timestamp (U64), Guard returns current Guard object ID (Address)."
3256
4727
  },
3257
4728
  {
3258
4729
  "type": "object",
3259
4730
  "properties": {
3260
4731
  "type": {
3261
4732
  "type": "string",
3262
- "const": "vec_length"
4733
+ "const": "query_reward_record_find"
3263
4734
  },
3264
- "node": {
3265
- "$ref": "#/definitions/__schema0"
4735
+ "object": {
4736
+ "type": "object",
4737
+ "properties": {
4738
+ "identifier": {
4739
+ "type": "integer",
4740
+ "minimum": 0,
4741
+ "maximum": 255,
4742
+ "description": "Identifier (0-255) for data lookup in Guard table."
4743
+ }
4744
+ },
4745
+ "required": [
4746
+ "identifier"
4747
+ ],
4748
+ "additionalProperties": false,
4749
+ "description": "Reference to the Reward object in the Guard table (must be Address type)."
4750
+ },
4751
+ "find": {
4752
+ "type": "string",
4753
+ "enum": [
4754
+ "first",
4755
+ "last"
4756
+ ],
4757
+ "description": "'first' finds the earliest matching record, 'last' finds the most recent matching record."
4758
+ },
4759
+ "recipient": {
4760
+ "description": "Optional: Identifier reference to the recipient address in the Guard table (must be Address type). If not specified, uses the transaction signer address.",
4761
+ "type": "object",
4762
+ "properties": {
4763
+ "identifier": {
4764
+ "type": "integer",
4765
+ "minimum": 0,
4766
+ "maximum": 255,
4767
+ "description": "Identifier (0-255) for data lookup in Guard table."
4768
+ }
4769
+ },
4770
+ "required": [
4771
+ "identifier"
4772
+ ],
4773
+ "additionalProperties": false
4774
+ },
4775
+ "where": {
4776
+ "type": "object",
4777
+ "properties": {
4778
+ "guard": {
4779
+ "description": "Optional filter: Guard object address constant to match.",
4780
+ "type": "string"
4781
+ },
4782
+ "timeMin": {
4783
+ "description": "Optional filter: minimum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
4784
+ "type": "string"
4785
+ },
4786
+ "timeMax": {
4787
+ "description": "Optional filter: maximum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
4788
+ "type": "string"
4789
+ },
4790
+ "amountMin": {
4791
+ "description": "Optional filter: minimum reward amount (inclusive). Use string to represent U64 value.",
4792
+ "type": "string"
4793
+ },
4794
+ "amountMax": {
4795
+ "description": "Optional filter: maximum reward amount (inclusive). Use string to represent U64 value.",
4796
+ "type": "string"
4797
+ },
4798
+ "storeFromId": {
4799
+ "description": "Optional filter: identifier reference to the store_from_id address in the Guard table (must be Address type). If not specified, the store_from_id field is ignored during matching. The server resolves this identifier to the actual address from the Guard table constants.",
4800
+ "type": "object",
4801
+ "properties": {
4802
+ "identifier": {
4803
+ "type": "integer",
4804
+ "minimum": 0,
4805
+ "maximum": 255,
4806
+ "description": "Identifier (0-255) for data lookup in Guard table."
4807
+ }
4808
+ },
4809
+ "required": [
4810
+ "identifier"
4811
+ ],
4812
+ "additionalProperties": false
4813
+ }
4814
+ },
4815
+ "additionalProperties": false,
4816
+ "description": "Filter conditions for the reward record query."
3266
4817
  }
3267
4818
  },
3268
4819
  "required": [
3269
4820
  "type",
3270
- "node"
4821
+ "object",
4822
+ "find",
4823
+ "where"
3271
4824
  ],
3272
4825
  "additionalProperties": false,
3273
- "description": "Returns U64. Computed by getting the length of the vector in the child node value. Child node must be one of Vec types: VecBool=9, VecAddress=10, VecString=11, VecU8=12, VecU16=13, VecU32=14, VecU64=15, VecU128=16, VecU256=17, VecVecU8=18, Value=19."
4826
+ "description": "Returns U64. Finds the index of the first or last reward record matching the specified recipient and filter conditions. Returns the record index (U64) if found. Throws error if no matching record is found (Guard validation fails). If recipient is not specified, uses the transaction signer address."
3274
4827
  },
3275
4828
  {
3276
4829
  "type": "object",
3277
4830
  "properties": {
3278
4831
  "type": {
3279
4832
  "type": "string",
3280
- "const": "vec_contains_bool"
4833
+ "const": "query_reward_record_count"
3281
4834
  },
3282
- "nodes": {
3283
- "minItems": 2,
3284
- "maxItems": 8,
3285
- "type": "array",
3286
- "items": {
3287
- "$ref": "#/definitions/__schema0"
4835
+ "object": {
4836
+ "type": "object",
4837
+ "properties": {
4838
+ "identifier": {
4839
+ "type": "integer",
4840
+ "minimum": 0,
4841
+ "maximum": 255,
4842
+ "description": "Identifier (0-255) for data lookup in Guard table."
4843
+ }
3288
4844
  },
3289
- "description": "First node must be VecBool (ValueType=9) or Value (ValueType=19), remaining nodes must be Bool (ValueType=0) or Value (ValueType=19)."
3290
- }
3291
- },
3292
- "required": [
3293
- "type",
3294
- "nodes"
3295
- ],
3296
- "additionalProperties": false,
3297
- "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL boolean values (subsequent nodes)."
3298
- },
3299
- {
3300
- "type": "object",
3301
- "properties": {
3302
- "type": {
3303
- "type": "string",
3304
- "const": "vec_contains_address"
4845
+ "required": [
4846
+ "identifier"
4847
+ ],
4848
+ "additionalProperties": false,
4849
+ "description": "Reference to the Reward object in the Guard table (must be Address type)."
3305
4850
  },
3306
- "nodes": {
3307
- "minItems": 2,
3308
- "maxItems": 8,
3309
- "type": "array",
3310
- "items": {
3311
- "$ref": "#/definitions/__schema0"
4851
+ "recipient": {
4852
+ "description": "Optional: Identifier reference to the recipient address in the Guard table (must be Address type). If not specified, uses the transaction signer address.",
4853
+ "type": "object",
4854
+ "properties": {
4855
+ "identifier": {
4856
+ "type": "integer",
4857
+ "minimum": 0,
4858
+ "maximum": 255,
4859
+ "description": "Identifier (0-255) for data lookup in Guard table."
4860
+ }
3312
4861
  },
3313
- "description": "First node must be VecAddress (ValueType=10) or Value (ValueType=19), remaining nodes must be Address (ValueType=1) or Value (ValueType=19)."
4862
+ "required": [
4863
+ "identifier"
4864
+ ],
4865
+ "additionalProperties": false
4866
+ },
4867
+ "where": {
4868
+ "type": "object",
4869
+ "properties": {
4870
+ "guard": {
4871
+ "description": "Optional filter: Guard object address constant to match.",
4872
+ "type": "string"
4873
+ },
4874
+ "timeMin": {
4875
+ "description": "Optional filter: minimum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
4876
+ "type": "string"
4877
+ },
4878
+ "timeMax": {
4879
+ "description": "Optional filter: maximum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
4880
+ "type": "string"
4881
+ },
4882
+ "amountMin": {
4883
+ "description": "Optional filter: minimum reward amount (inclusive). Use string to represent U64 value.",
4884
+ "type": "string"
4885
+ },
4886
+ "amountMax": {
4887
+ "description": "Optional filter: maximum reward amount (inclusive). Use string to represent U64 value.",
4888
+ "type": "string"
4889
+ },
4890
+ "storeFromId": {
4891
+ "description": "Optional filter: identifier reference to the store_from_id address in the Guard table (must be Address type). If not specified, the store_from_id field is ignored during matching. The server resolves this identifier to the actual address from the Guard table constants.",
4892
+ "type": "object",
4893
+ "properties": {
4894
+ "identifier": {
4895
+ "type": "integer",
4896
+ "minimum": 0,
4897
+ "maximum": 255,
4898
+ "description": "Identifier (0-255) for data lookup in Guard table."
4899
+ }
4900
+ },
4901
+ "required": [
4902
+ "identifier"
4903
+ ],
4904
+ "additionalProperties": false
4905
+ }
4906
+ },
4907
+ "additionalProperties": false,
4908
+ "description": "Filter conditions for the reward record count query."
3314
4909
  }
3315
4910
  },
3316
4911
  "required": [
3317
4912
  "type",
3318
- "nodes"
4913
+ "object",
4914
+ "where"
3319
4915
  ],
3320
4916
  "additionalProperties": false,
3321
- "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL address values (subsequent nodes)."
4917
+ "description": "Returns U64. Counts the number of reward records matching the specified recipient and filter conditions. If recipient is not specified, uses the transaction signer address."
3322
4918
  },
3323
4919
  {
3324
4920
  "type": "object",
3325
4921
  "properties": {
3326
4922
  "type": {
3327
4923
  "type": "string",
3328
- "const": "vec_contains_string"
4924
+ "const": "query_reward_record_exists"
3329
4925
  },
3330
- "nodes": {
3331
- "minItems": 2,
3332
- "maxItems": 8,
3333
- "type": "array",
3334
- "items": {
3335
- "$ref": "#/definitions/__schema0"
4926
+ "object": {
4927
+ "type": "object",
4928
+ "properties": {
4929
+ "identifier": {
4930
+ "type": "integer",
4931
+ "minimum": 0,
4932
+ "maximum": 255,
4933
+ "description": "Identifier (0-255) for data lookup in Guard table."
4934
+ }
3336
4935
  },
3337
- "description": "First node must be VecString (ValueType=11) or Value (ValueType=19), remaining nodes must be String (ValueType=2) or Value (ValueType=19)."
4936
+ "required": [
4937
+ "identifier"
4938
+ ],
4939
+ "additionalProperties": false,
4940
+ "description": "Reference to the Reward object in the Guard table (must be Address type)."
4941
+ },
4942
+ "recipient": {
4943
+ "description": "Optional: Identifier reference to the recipient address in the Guard table (must be Address type). If not specified, uses the transaction signer address.",
4944
+ "type": "object",
4945
+ "properties": {
4946
+ "identifier": {
4947
+ "type": "integer",
4948
+ "minimum": 0,
4949
+ "maximum": 255,
4950
+ "description": "Identifier (0-255) for data lookup in Guard table."
4951
+ }
4952
+ },
4953
+ "required": [
4954
+ "identifier"
4955
+ ],
4956
+ "additionalProperties": false
4957
+ },
4958
+ "where": {
4959
+ "type": "object",
4960
+ "properties": {
4961
+ "guard": {
4962
+ "description": "Optional filter: Guard object address constant to match.",
4963
+ "type": "string"
4964
+ },
4965
+ "timeMin": {
4966
+ "description": "Optional filter: minimum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
4967
+ "type": "string"
4968
+ },
4969
+ "timeMax": {
4970
+ "description": "Optional filter: maximum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
4971
+ "type": "string"
4972
+ },
4973
+ "amountMin": {
4974
+ "description": "Optional filter: minimum reward amount (inclusive). Use string to represent U64 value.",
4975
+ "type": "string"
4976
+ },
4977
+ "amountMax": {
4978
+ "description": "Optional filter: maximum reward amount (inclusive). Use string to represent U64 value.",
4979
+ "type": "string"
4980
+ },
4981
+ "storeFromId": {
4982
+ "description": "Optional filter: identifier reference to the store_from_id address in the Guard table (must be Address type). If not specified, the store_from_id field is ignored during matching. The server resolves this identifier to the actual address from the Guard table constants.",
4983
+ "type": "object",
4984
+ "properties": {
4985
+ "identifier": {
4986
+ "type": "integer",
4987
+ "minimum": 0,
4988
+ "maximum": 255,
4989
+ "description": "Identifier (0-255) for data lookup in Guard table."
4990
+ }
4991
+ },
4992
+ "required": [
4993
+ "identifier"
4994
+ ],
4995
+ "additionalProperties": false
4996
+ }
4997
+ },
4998
+ "additionalProperties": false,
4999
+ "description": "Filter conditions for the reward record existence query."
3338
5000
  }
3339
5001
  },
3340
5002
  "required": [
3341
5003
  "type",
3342
- "nodes"
5004
+ "object",
5005
+ "where"
3343
5006
  ],
3344
5007
  "additionalProperties": false,
3345
- "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL string values (subsequent nodes)."
5008
+ "description": "Returns Bool. Returns true if at least one reward record exists matching the specified recipient and filter conditions, otherwise false. If recipient is not specified, uses the transaction signer address."
3346
5009
  },
3347
5010
  {
3348
5011
  "type": "object",
3349
5012
  "properties": {
3350
5013
  "type": {
3351
5014
  "type": "string",
3352
- "const": "vec_contains_string_nocase"
5015
+ "const": "query_progress_history_find"
3353
5016
  },
3354
- "nodes": {
3355
- "minItems": 2,
3356
- "maxItems": 8,
3357
- "type": "array",
3358
- "items": {
3359
- "$ref": "#/definitions/__schema0"
5017
+ "object": {
5018
+ "type": "object",
5019
+ "properties": {
5020
+ "identifier": {
5021
+ "type": "integer",
5022
+ "minimum": 0,
5023
+ "maximum": 255,
5024
+ "description": "Identifier (0-255) for data lookup in Guard table."
5025
+ }
5026
+ },
5027
+ "required": [
5028
+ "identifier"
5029
+ ],
5030
+ "additionalProperties": false,
5031
+ "description": "Reference to the Progress object in the Guard table (must be Address type)."
5032
+ },
5033
+ "where": {
5034
+ "type": "object",
5035
+ "properties": {
5036
+ "node": {
5037
+ "description": "Optional filter: node name string to match.",
5038
+ "type": "string"
5039
+ },
5040
+ "nextNode": {
5041
+ "description": "Optional filter: next node name string to match.",
5042
+ "type": "string"
5043
+ },
5044
+ "timeMin": {
5045
+ "description": "Optional filter: minimum timestamp (inclusive) for history entry time. Use string to represent U64 value.",
5046
+ "type": "string"
5047
+ },
5048
+ "timeMax": {
5049
+ "description": "Optional filter: maximum timestamp (inclusive) for history entry time. Use string to represent U64 value.",
5050
+ "type": "string"
5051
+ },
5052
+ "indexMin": {
5053
+ "description": "Optional filter: minimum history index (inclusive) to search within. Use string to represent U64 value.",
5054
+ "type": "string"
5055
+ },
5056
+ "indexMax": {
5057
+ "description": "Optional filter: maximum history index (inclusive) to search within. Use string to represent U64 value.",
5058
+ "type": "string"
5059
+ }
3360
5060
  },
3361
- "description": "First node must be VecString (ValueType=11) or Value (ValueType=19), remaining nodes must be String (ValueType=2) or Value (ValueType=19)."
5061
+ "additionalProperties": false,
5062
+ "description": "Filter conditions for the progress history query."
5063
+ },
5064
+ "find": {
5065
+ "type": "string",
5066
+ "enum": [
5067
+ "first",
5068
+ "last"
5069
+ ],
5070
+ "description": "'first' finds the earliest matching history entry, 'last' finds the most recent matching history entry."
3362
5071
  }
3363
5072
  },
3364
5073
  "required": [
3365
5074
  "type",
3366
- "nodes"
5075
+ "object",
5076
+ "where",
5077
+ "find"
3367
5078
  ],
3368
5079
  "additionalProperties": false,
3369
- "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL string values (subsequent nodes), using case-insensitive comparison."
5080
+ "description": "Returns U64. Finds the index of the first or last history entry matching the filter conditions. Returns the history index (U64) if found. Throws error if no matching entry is found (Guard validation fails)."
3370
5081
  },
3371
5082
  {
3372
5083
  "type": "object",
3373
5084
  "properties": {
3374
5085
  "type": {
3375
5086
  "type": "string",
3376
- "const": "vec_contains_number"
5087
+ "const": "query_progress_history_session_find"
3377
5088
  },
3378
- "nodes": {
3379
- "minItems": 2,
3380
- "maxItems": 8,
3381
- "type": "array",
3382
- "items": {
3383
- "$ref": "#/definitions/__schema0"
5089
+ "object": {
5090
+ "type": "object",
5091
+ "properties": {
5092
+ "identifier": {
5093
+ "type": "integer",
5094
+ "minimum": 0,
5095
+ "maximum": 255,
5096
+ "description": "Identifier (0-255) for data lookup in Guard table."
5097
+ }
3384
5098
  },
3385
- "description": "First node must be VecU8 (12), VecU16 (13), VecU32 (14), VecU64 (15), VecU128 (16), VecU256 (17) or Value (ValueType=19), remaining nodes must be U8 (3), U16 (4), U32 (5), U64 (6), U128 (7), U256 (8) or Value (ValueType=19)."
3386
- }
3387
- },
3388
- "required": [
3389
- "type",
3390
- "nodes"
3391
- ],
3392
- "additionalProperties": false,
3393
- "description": "Returns Bool. Computed by checking if the vector (first node) contains ALL number values (subsequent nodes)."
3394
- },
3395
- {
3396
- "type": "object",
3397
- "properties": {
3398
- "type": {
3399
- "type": "string",
3400
- "const": "vec_indexof_bool"
5099
+ "required": [
5100
+ "identifier"
5101
+ ],
5102
+ "additionalProperties": false,
5103
+ "description": "Reference to the Progress object in the Guard table (must be Address type)."
3401
5104
  },
3402
- "nodeLeft": {
5105
+ "historyIdx": {
5106
+ "description": "GuardNode that returns the history index (U64 type) to search within. Typically an 'identifier' node referencing a U64 value from the Guard table.",
5107
+ "allOf": [
5108
+ {
5109
+ "$ref": "#/definitions/__schema1"
5110
+ }
5111
+ ],
3403
5112
  "$ref": "#/definitions/__schema0"
3404
5113
  },
3405
- "nodeRight": {
3406
- "$ref": "#/definitions/__schema0"
5114
+ "where": {
5115
+ "type": "object",
5116
+ "properties": {
5117
+ "nextNode": {
5118
+ "description": "Optional filter: next node name string to match.",
5119
+ "type": "string"
5120
+ }
5121
+ },
5122
+ "additionalProperties": false,
5123
+ "description": "Filter conditions for the progress history session query."
3407
5124
  },
3408
- "order": {
5125
+ "find": {
3409
5126
  "type": "string",
3410
5127
  "enum": [
3411
- "forward",
3412
- "backward"
5128
+ "first",
5129
+ "last"
3413
5130
  ],
3414
- "description": "'forward' searches from index 0, 'backward' searches from last index."
5131
+ "description": "'first' finds the earliest matching session, 'last' finds the most recent matching session."
3415
5132
  }
3416
5133
  },
3417
5134
  "required": [
3418
5135
  "type",
3419
- "nodeLeft",
3420
- "nodeRight",
3421
- "order"
5136
+ "object",
5137
+ "historyIdx",
5138
+ "where",
5139
+ "find"
3422
5140
  ],
3423
5141
  "additionalProperties": false,
3424
- "description": "Returns U64. Computed by searching for the second node value in the vector (first node). nodeLeft must be VecBool (ValueType=9) or Value (ValueType=19) type, nodeRight must be Bool (ValueType=0) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
5142
+ "description": "Returns U64. Finds the index of the first or last session within the specified history entry matching the filter conditions. Returns the session index (U64) if found. Throws error if no matching session is found (Guard validation fails)."
3425
5143
  },
3426
5144
  {
3427
5145
  "type": "object",
3428
5146
  "properties": {
3429
5147
  "type": {
3430
5148
  "type": "string",
3431
- "const": "vec_indexof_address"
5149
+ "const": "query_progress_history_session_forward_find"
3432
5150
  },
3433
- "nodeLeft": {
5151
+ "object": {
5152
+ "type": "object",
5153
+ "properties": {
5154
+ "identifier": {
5155
+ "type": "integer",
5156
+ "minimum": 0,
5157
+ "maximum": 255,
5158
+ "description": "Identifier (0-255) for data lookup in Guard table."
5159
+ }
5160
+ },
5161
+ "required": [
5162
+ "identifier"
5163
+ ],
5164
+ "additionalProperties": false,
5165
+ "description": "Reference to the Progress object in the Guard table (must be Address type)."
5166
+ },
5167
+ "historyIdx": {
5168
+ "description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
5169
+ "allOf": [
5170
+ {
5171
+ "$ref": "#/definitions/__schema1"
5172
+ }
5173
+ ],
3434
5174
  "$ref": "#/definitions/__schema0"
3435
5175
  },
3436
- "nodeRight": {
5176
+ "sessionIdx": {
5177
+ "description": "GuardNode that returns the session index (U64 type) within the history entry. Typically an 'identifier' node referencing a U64 value from the Guard table.",
5178
+ "allOf": [
5179
+ {
5180
+ "$ref": "#/definitions/__schema1"
5181
+ }
5182
+ ],
3437
5183
  "$ref": "#/definitions/__schema0"
3438
5184
  },
3439
- "order": {
5185
+ "where": {
5186
+ "type": "object",
5187
+ "properties": {
5188
+ "who": {
5189
+ "description": "Optional filter: operator address string to match.",
5190
+ "type": "string"
5191
+ },
5192
+ "operation": {
5193
+ "description": "Optional filter: operation name string to match.",
5194
+ "type": "string"
5195
+ },
5196
+ "accomplished": {
5197
+ "description": "Optional filter: whether the forward operation was accomplished.",
5198
+ "type": "boolean"
5199
+ },
5200
+ "timeMin": {
5201
+ "description": "Optional filter: minimum timestamp (inclusive) for forward operation time. Use string to represent U64 value.",
5202
+ "type": "string"
5203
+ },
5204
+ "timeMax": {
5205
+ "description": "Optional filter: maximum timestamp (inclusive) for forward operation time. Use string to represent U64 value.",
5206
+ "type": "string"
5207
+ }
5208
+ },
5209
+ "additionalProperties": false,
5210
+ "description": "Filter conditions for the progress history session forward query."
5211
+ },
5212
+ "find": {
3440
5213
  "type": "string",
3441
5214
  "enum": [
3442
- "forward",
3443
- "backward"
5215
+ "first",
5216
+ "last"
3444
5217
  ],
3445
- "description": "'forward' searches from index 0, 'backward' searches from last index."
5218
+ "description": "'first' finds the earliest matching forward operation, 'last' finds the most recent matching forward operation."
3446
5219
  }
3447
5220
  },
3448
5221
  "required": [
3449
5222
  "type",
3450
- "nodeLeft",
3451
- "nodeRight",
3452
- "order"
5223
+ "object",
5224
+ "historyIdx",
5225
+ "sessionIdx",
5226
+ "where",
5227
+ "find"
3453
5228
  ],
3454
5229
  "additionalProperties": false,
3455
- "description": "Returns U64. Computed by searching for the second node value in the vector (first node). nodeLeft must be VecAddress (ValueType=10) or Value (ValueType=19) type, nodeRight must be Address (ValueType=1) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
5230
+ "description": "Returns U64. Finds the index of the first or last forward operation within the specified history session matching the filter conditions. Returns the forward index (U64) if found. Throws error if no matching forward operation is found (Guard validation fails)."
3456
5231
  },
3457
5232
  {
3458
5233
  "type": "object",
3459
5234
  "properties": {
3460
5235
  "type": {
3461
5236
  "type": "string",
3462
- "const": "vec_indexof_string"
3463
- },
3464
- "nodeLeft": {
3465
- "$ref": "#/definitions/__schema0"
5237
+ "const": "query_progress_history_session_count"
3466
5238
  },
3467
- "nodeRight": {
3468
- "$ref": "#/definitions/__schema0"
5239
+ "object": {
5240
+ "type": "object",
5241
+ "properties": {
5242
+ "identifier": {
5243
+ "type": "integer",
5244
+ "minimum": 0,
5245
+ "maximum": 255,
5246
+ "description": "Identifier (0-255) for data lookup in Guard table."
5247
+ }
5248
+ },
5249
+ "required": [
5250
+ "identifier"
5251
+ ],
5252
+ "additionalProperties": false,
5253
+ "description": "Reference to the Progress object in the Guard table (must be Address type)."
3469
5254
  },
3470
- "order": {
3471
- "type": "string",
3472
- "enum": [
3473
- "forward",
3474
- "backward"
5255
+ "historyIdx": {
5256
+ "description": "GuardNode that returns the history index (U64 type) to count sessions for. Typically an 'identifier' node referencing a U64 value from the Guard table.",
5257
+ "allOf": [
5258
+ {
5259
+ "$ref": "#/definitions/__schema1"
5260
+ }
3475
5261
  ],
3476
- "description": "'forward' searches from index 0, 'backward' searches from last index."
5262
+ "$ref": "#/definitions/__schema0"
3477
5263
  }
3478
5264
  },
3479
5265
  "required": [
3480
5266
  "type",
3481
- "nodeLeft",
3482
- "nodeRight",
3483
- "order"
5267
+ "object",
5268
+ "historyIdx"
3484
5269
  ],
3485
5270
  "additionalProperties": false,
3486
- "description": "Returns U64. Computed by searching for the second node value in the vector (first node). nodeLeft must be VecString (ValueType=11) or Value (ValueType=19) type, nodeRight must be String (ValueType=2) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
5271
+ "description": "Returns U64. Counts the number of sessions within the specified history entry."
3487
5272
  },
3488
5273
  {
3489
5274
  "type": "object",
3490
5275
  "properties": {
3491
5276
  "type": {
3492
5277
  "type": "string",
3493
- "const": "vec_indexof_string_nocase"
5278
+ "const": "query_progress_history_session_forward_count"
3494
5279
  },
3495
- "nodeLeft": {
3496
- "$ref": "#/definitions/__schema0"
5280
+ "object": {
5281
+ "type": "object",
5282
+ "properties": {
5283
+ "identifier": {
5284
+ "type": "integer",
5285
+ "minimum": 0,
5286
+ "maximum": 255,
5287
+ "description": "Identifier (0-255) for data lookup in Guard table."
5288
+ }
5289
+ },
5290
+ "required": [
5291
+ "identifier"
5292
+ ],
5293
+ "additionalProperties": false,
5294
+ "description": "Reference to the Progress object in the Guard table (must be Address type)."
3497
5295
  },
3498
- "nodeRight": {
5296
+ "historyIdx": {
5297
+ "description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
5298
+ "allOf": [
5299
+ {
5300
+ "$ref": "#/definitions/__schema1"
5301
+ }
5302
+ ],
3499
5303
  "$ref": "#/definitions/__schema0"
3500
5304
  },
3501
- "order": {
3502
- "type": "string",
3503
- "enum": [
3504
- "forward",
3505
- "backward"
5305
+ "sessionIdx": {
5306
+ "description": "GuardNode that returns the session index (U64 type) within the history entry. Typically an 'identifier' node referencing a U64 value from the Guard table.",
5307
+ "allOf": [
5308
+ {
5309
+ "$ref": "#/definitions/__schema1"
5310
+ }
3506
5311
  ],
3507
- "description": "'forward' searches from index 0, 'backward' searches from last index."
5312
+ "$ref": "#/definitions/__schema0"
3508
5313
  }
3509
5314
  },
3510
5315
  "required": [
3511
5316
  "type",
3512
- "nodeLeft",
3513
- "nodeRight",
3514
- "order"
5317
+ "object",
5318
+ "historyIdx",
5319
+ "sessionIdx"
3515
5320
  ],
3516
5321
  "additionalProperties": false,
3517
- "description": "Returns U64. Computed by searching for the second node value in the vector (first node), using case-insensitive comparison. nodeLeft must be VecString (ValueType=11) or Value (ValueType=19) type, nodeRight must be String (ValueType=2) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
5322
+ "description": "Returns U64. Counts the number of forward operations within the specified history session."
3518
5323
  },
3519
5324
  {
3520
5325
  "type": "object",
3521
5326
  "properties": {
3522
5327
  "type": {
3523
5328
  "type": "string",
3524
- "const": "vec_indexof_number"
5329
+ "const": "query_progress_history_session_forward_retained_submission_count"
3525
5330
  },
3526
- "nodeLeft": {
3527
- "$ref": "#/definitions/__schema0"
5331
+ "object": {
5332
+ "type": "object",
5333
+ "properties": {
5334
+ "identifier": {
5335
+ "type": "integer",
5336
+ "minimum": 0,
5337
+ "maximum": 255,
5338
+ "description": "Identifier (0-255) for data lookup in Guard table."
5339
+ }
5340
+ },
5341
+ "required": [
5342
+ "identifier"
5343
+ ],
5344
+ "additionalProperties": false,
5345
+ "description": "Reference to the Progress object in the Guard table (must be Address type)."
3528
5346
  },
3529
- "nodeRight": {
5347
+ "historyIdx": {
5348
+ "description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
5349
+ "allOf": [
5350
+ {
5351
+ "$ref": "#/definitions/__schema1"
5352
+ }
5353
+ ],
3530
5354
  "$ref": "#/definitions/__schema0"
3531
5355
  },
3532
- "order": {
3533
- "type": "string",
3534
- "enum": [
3535
- "forward",
3536
- "backward"
5356
+ "sessionIdx": {
5357
+ "description": "GuardNode that returns the session index (U64 type) within the history entry. Typically an 'identifier' node referencing a U64 value from the Guard table.",
5358
+ "allOf": [
5359
+ {
5360
+ "$ref": "#/definitions/__schema1"
5361
+ }
3537
5362
  ],
3538
- "description": "'forward' searches from index 0, 'backward' searches from last index."
3539
- }
3540
- },
3541
- "required": [
3542
- "type",
3543
- "nodeLeft",
3544
- "nodeRight",
3545
- "order"
3546
- ],
3547
- "additionalProperties": false,
3548
- "description": "Returns U64. Computed by searching for the second node value in the vector (first node). nodeLeft must be VecU8 (12), VecU16 (13), VecU32 (14), VecU64 (15), VecU128 (16), VecU256 (17) or Value (ValueType=19) type, nodeRight must be U8 (3), U16 (4), U32 (5), U64 (6), U128 (7), U256 (8) or Value (ValueType=19) type. Returns index of first occurrence in the specified direction. If not found, returns u64::MAX (18446744073709551615)."
3549
- },
3550
- {
3551
- "type": "object",
3552
- "properties": {
3553
- "type": {
3554
- "type": "string",
3555
- "const": "context"
5363
+ "$ref": "#/definitions/__schema0"
3556
5364
  },
3557
- "context": {
3558
- "type": "string",
3559
- "enum": [
3560
- "Signer",
3561
- "Clock",
3562
- "Guard"
5365
+ "forwardIdx": {
5366
+ "description": "GuardNode that returns the forward operation index (U64 type) within the session. Typically an 'identifier' node referencing a U64 value from the Guard table.",
5367
+ "allOf": [
5368
+ {
5369
+ "$ref": "#/definitions/__schema1"
5370
+ }
3563
5371
  ],
3564
- "description": "System context type: Signer returns transaction sender address (Address), Clock returns current on-chain timestamp (U64), Guard returns current Guard object ID (Address)."
5372
+ "$ref": "#/definitions/__schema0"
3565
5373
  }
3566
5374
  },
3567
5375
  "required": [
3568
5376
  "type",
3569
- "context"
5377
+ "object",
5378
+ "historyIdx",
5379
+ "sessionIdx",
5380
+ "forwardIdx"
3570
5381
  ],
3571
5382
  "additionalProperties": false,
3572
- "description": "Signer returns transaction sender address (Address), Clock returns current on-chain timestamp (U64), Guard returns current Guard object ID (Address)."
5383
+ "description": "Returns U64. Counts the number of retained submissions within the specified forward operation."
3573
5384
  },
3574
5385
  {
3575
5386
  "type": "object",
3576
5387
  "properties": {
3577
5388
  "type": {
3578
5389
  "type": "string",
3579
- "const": "query_reward_record_find"
5390
+ "const": "query_repository_data_count_where"
3580
5391
  },
3581
5392
  "object": {
3582
5393
  "type": "object",
@@ -3592,18 +5403,25 @@
3592
5403
  "identifier"
3593
5404
  ],
3594
5405
  "additionalProperties": false,
3595
- "description": "Reference to the Reward object in the Guard table (must be Address type)."
5406
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
3596
5407
  },
3597
- "find": {
3598
- "type": "string",
3599
- "enum": [
3600
- "first",
3601
- "last"
5408
+ "key": {
5409
+ "type": "object",
5410
+ "properties": {
5411
+ "identifier": {
5412
+ "type": "integer",
5413
+ "minimum": 0,
5414
+ "maximum": 255,
5415
+ "description": "Identifier (0-255) for data lookup in Guard table."
5416
+ }
5417
+ },
5418
+ "required": [
5419
+ "identifier"
3602
5420
  ],
3603
- "description": "'first' finds the earliest matching record, 'last' finds the most recent matching record."
5421
+ "additionalProperties": false,
5422
+ "description": "Reference to the policy key (String type table entry) whose data table is scanned."
3604
5423
  },
3605
- "recipient": {
3606
- "description": "Optional: Identifier reference to the recipient address in the Guard table (must be Address type). If not specified, uses the transaction signer address.",
5424
+ "ids": {
3607
5425
  "type": "object",
3608
5426
  "properties": {
3609
5427
  "identifier": {
@@ -3616,67 +5434,243 @@
3616
5434
  "required": [
3617
5435
  "identifier"
3618
5436
  ],
3619
- "additionalProperties": false
5437
+ "additionalProperties": false,
5438
+ "description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
3620
5439
  },
3621
5440
  "where": {
3622
- "type": "object",
3623
- "properties": {
3624
- "guard": {
3625
- "description": "Optional filter: Guard object address constant to match.",
3626
- "type": "string"
5441
+ "oneOf": [
5442
+ {
5443
+ "type": "object",
5444
+ "properties": {
5445
+ "kind": {
5446
+ "type": "string",
5447
+ "const": "range"
5448
+ },
5449
+ "valueMin": {
5450
+ "description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
5451
+ "type": "string"
5452
+ },
5453
+ "valueMax": {
5454
+ "description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
5455
+ "type": "string"
5456
+ },
5457
+ "minInclusive": {
5458
+ "description": "Default true. false makes the lower bound exclusive.",
5459
+ "type": "boolean"
5460
+ },
5461
+ "maxInclusive": {
5462
+ "description": "Default true. false makes the upper bound exclusive.",
5463
+ "type": "boolean"
5464
+ }
5465
+ },
5466
+ "required": [
5467
+ "kind"
5468
+ ],
5469
+ "additionalProperties": false,
5470
+ "description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
3627
5471
  },
3628
- "timeMin": {
3629
- "description": "Optional filter: minimum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
3630
- "type": "string"
5472
+ {
5473
+ "type": "object",
5474
+ "properties": {
5475
+ "kind": {
5476
+ "type": "string",
5477
+ "const": "numEq"
5478
+ },
5479
+ "value": {
5480
+ "type": "string",
5481
+ "description": "Exact numeric match. Plain number string (U256 semantics)."
5482
+ }
5483
+ },
5484
+ "required": [
5485
+ "kind",
5486
+ "value"
5487
+ ],
5488
+ "additionalProperties": false
3631
5489
  },
3632
- "timeMax": {
3633
- "description": "Optional filter: maximum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
3634
- "type": "string"
5490
+ {
5491
+ "type": "object",
5492
+ "properties": {
5493
+ "kind": {
5494
+ "type": "string",
5495
+ "const": "gt"
5496
+ },
5497
+ "value": {
5498
+ "type": "string",
5499
+ "description": "Greater than. Plain number string (U256 semantics)."
5500
+ }
5501
+ },
5502
+ "required": [
5503
+ "kind",
5504
+ "value"
5505
+ ],
5506
+ "additionalProperties": false
3635
5507
  },
3636
- "amountMin": {
3637
- "description": "Optional filter: minimum reward amount (inclusive). Use string to represent U64 value.",
3638
- "type": "string"
5508
+ {
5509
+ "type": "object",
5510
+ "properties": {
5511
+ "kind": {
5512
+ "type": "string",
5513
+ "const": "gte"
5514
+ },
5515
+ "value": {
5516
+ "type": "string",
5517
+ "description": "Greater than or equal. Plain number string (U256 semantics)."
5518
+ }
5519
+ },
5520
+ "required": [
5521
+ "kind",
5522
+ "value"
5523
+ ],
5524
+ "additionalProperties": false
3639
5525
  },
3640
- "amountMax": {
3641
- "description": "Optional filter: maximum reward amount (inclusive). Use string to represent U64 value.",
3642
- "type": "string"
5526
+ {
5527
+ "type": "object",
5528
+ "properties": {
5529
+ "kind": {
5530
+ "type": "string",
5531
+ "const": "lt"
5532
+ },
5533
+ "value": {
5534
+ "type": "string",
5535
+ "description": "Less than. Plain number string (U256 semantics)."
5536
+ }
5537
+ },
5538
+ "required": [
5539
+ "kind",
5540
+ "value"
5541
+ ],
5542
+ "additionalProperties": false
3643
5543
  },
3644
- "storeFromId": {
3645
- "description": "Optional filter: identifier reference to the store_from_id address in the Guard table (must be Address type). If not specified, the store_from_id field is ignored during matching. The server resolves this identifier to the actual address from the Guard table constants.",
5544
+ {
5545
+ "type": "object",
5546
+ "properties": {
5547
+ "kind": {
5548
+ "type": "string",
5549
+ "const": "lte"
5550
+ },
5551
+ "value": {
5552
+ "type": "string",
5553
+ "description": "Less than or equal. Plain number string (U256 semantics)."
5554
+ }
5555
+ },
5556
+ "required": [
5557
+ "kind",
5558
+ "value"
5559
+ ],
5560
+ "additionalProperties": false
5561
+ },
5562
+ {
3646
5563
  "type": "object",
3647
5564
  "properties": {
5565
+ "kind": {
5566
+ "type": "string",
5567
+ "const": "addressEq"
5568
+ },
3648
5569
  "identifier": {
3649
5570
  "type": "integer",
3650
5571
  "minimum": 0,
3651
5572
  "maximum": 255,
3652
- "description": "Identifier (0-255) for data lookup in Guard table."
5573
+ "description": "Identifier of the Address-type table entry to compare against."
5574
+ }
5575
+ },
5576
+ "required": [
5577
+ "kind",
5578
+ "identifier"
5579
+ ],
5580
+ "additionalProperties": false
5581
+ },
5582
+ {
5583
+ "type": "object",
5584
+ "properties": {
5585
+ "kind": {
5586
+ "type": "string",
5587
+ "const": "stringEq"
5588
+ },
5589
+ "value": {
5590
+ "type": "string",
5591
+ "description": "Exact string match (byte equality, UTF-8)."
5592
+ }
5593
+ },
5594
+ "required": [
5595
+ "kind",
5596
+ "value"
5597
+ ],
5598
+ "additionalProperties": false
5599
+ },
5600
+ {
5601
+ "type": "object",
5602
+ "properties": {
5603
+ "kind": {
5604
+ "type": "string",
5605
+ "const": "stringContains"
5606
+ },
5607
+ "value": {
5608
+ "type": "string",
5609
+ "description": "Substring match, case-sensitive."
5610
+ }
5611
+ },
5612
+ "required": [
5613
+ "kind",
5614
+ "value"
5615
+ ],
5616
+ "additionalProperties": false
5617
+ },
5618
+ {
5619
+ "type": "object",
5620
+ "properties": {
5621
+ "kind": {
5622
+ "type": "string",
5623
+ "const": "stringNoCaseContains"
5624
+ },
5625
+ "value": {
5626
+ "type": "string",
5627
+ "description": "Substring match, case-insensitive."
5628
+ }
5629
+ },
5630
+ "required": [
5631
+ "kind",
5632
+ "value"
5633
+ ],
5634
+ "additionalProperties": false
5635
+ },
5636
+ {
5637
+ "type": "object",
5638
+ "properties": {
5639
+ "kind": {
5640
+ "type": "string",
5641
+ "const": "boolEq"
5642
+ },
5643
+ "value": {
5644
+ "type": "boolean",
5645
+ "description": "Boolean equality."
3653
5646
  }
3654
5647
  },
3655
5648
  "required": [
3656
- "identifier"
5649
+ "kind",
5650
+ "value"
3657
5651
  ],
3658
5652
  "additionalProperties": false
3659
5653
  }
3660
- },
3661
- "additionalProperties": false,
3662
- "description": "Filter conditions for the reward record query."
5654
+ ],
5655
+ "description": "Predicate filter applied to each candidate's data value."
3663
5656
  }
3664
5657
  },
3665
5658
  "required": [
3666
5659
  "type",
3667
5660
  "object",
3668
- "find",
5661
+ "key",
5662
+ "ids",
3669
5663
  "where"
3670
5664
  ],
3671
5665
  "additionalProperties": false,
3672
- "description": "Returns U64. Finds the index of the first or last reward record matching the specified recipient and filter conditions. Returns the record index (U64) if found. Throws error if no matching record is found (Guard validation fails). If recipient is not specified, uses the transaction signer address."
5666
+ "description": "Returns U64. Counts candidates whose stored value matches the predicate. Numeric predicates: U256 semantics (pass plain number strings). Range is closed interval per side (minInclusive/maxInclusive default true); a missing side is unbounded. numEq/gt/gte/lt/lte are sugar over range. Entries whose value type does not match the predicate kind are skipped (never error), so the count only reflects matching entries."
3673
5667
  },
3674
5668
  {
3675
5669
  "type": "object",
3676
5670
  "properties": {
3677
5671
  "type": {
3678
5672
  "type": "string",
3679
- "const": "query_reward_record_count"
5673
+ "const": "query_repository_data_sum_where"
3680
5674
  },
3681
5675
  "object": {
3682
5676
  "type": "object",
@@ -3692,10 +5686,9 @@
3692
5686
  "identifier"
3693
5687
  ],
3694
5688
  "additionalProperties": false,
3695
- "description": "Reference to the Reward object in the Guard table (must be Address type)."
5689
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
3696
5690
  },
3697
- "recipient": {
3698
- "description": "Optional: Identifier reference to the recipient address in the Guard table (must be Address type). If not specified, uses the transaction signer address.",
5691
+ "key": {
3699
5692
  "type": "object",
3700
5693
  "properties": {
3701
5694
  "identifier": {
@@ -3708,68 +5701,10 @@
3708
5701
  "required": [
3709
5702
  "identifier"
3710
5703
  ],
3711
- "additionalProperties": false
3712
- },
3713
- "where": {
3714
- "type": "object",
3715
- "properties": {
3716
- "guard": {
3717
- "description": "Optional filter: Guard object address constant to match.",
3718
- "type": "string"
3719
- },
3720
- "timeMin": {
3721
- "description": "Optional filter: minimum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
3722
- "type": "string"
3723
- },
3724
- "timeMax": {
3725
- "description": "Optional filter: maximum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
3726
- "type": "string"
3727
- },
3728
- "amountMin": {
3729
- "description": "Optional filter: minimum reward amount (inclusive). Use string to represent U64 value.",
3730
- "type": "string"
3731
- },
3732
- "amountMax": {
3733
- "description": "Optional filter: maximum reward amount (inclusive). Use string to represent U64 value.",
3734
- "type": "string"
3735
- },
3736
- "storeFromId": {
3737
- "description": "Optional filter: identifier reference to the store_from_id address in the Guard table (must be Address type). If not specified, the store_from_id field is ignored during matching. The server resolves this identifier to the actual address from the Guard table constants.",
3738
- "type": "object",
3739
- "properties": {
3740
- "identifier": {
3741
- "type": "integer",
3742
- "minimum": 0,
3743
- "maximum": 255,
3744
- "description": "Identifier (0-255) for data lookup in Guard table."
3745
- }
3746
- },
3747
- "required": [
3748
- "identifier"
3749
- ],
3750
- "additionalProperties": false
3751
- }
3752
- },
3753
5704
  "additionalProperties": false,
3754
- "description": "Filter conditions for the reward record count query."
3755
- }
3756
- },
3757
- "required": [
3758
- "type",
3759
- "object",
3760
- "where"
3761
- ],
3762
- "additionalProperties": false,
3763
- "description": "Returns U64. Counts the number of reward records matching the specified recipient and filter conditions. If recipient is not specified, uses the transaction signer address."
3764
- },
3765
- {
3766
- "type": "object",
3767
- "properties": {
3768
- "type": {
3769
- "type": "string",
3770
- "const": "query_reward_record_exists"
5705
+ "description": "Reference to the policy key (String type table entry) whose data table is scanned."
3771
5706
  },
3772
- "object": {
5707
+ "ids": {
3773
5708
  "type": "object",
3774
5709
  "properties": {
3775
5710
  "identifier": {
@@ -3783,154 +5718,242 @@
3783
5718
  "identifier"
3784
5719
  ],
3785
5720
  "additionalProperties": false,
3786
- "description": "Reference to the Reward object in the Guard table (must be Address type)."
3787
- },
3788
- "recipient": {
3789
- "description": "Optional: Identifier reference to the recipient address in the Guard table (must be Address type). If not specified, uses the transaction signer address.",
3790
- "type": "object",
3791
- "properties": {
3792
- "identifier": {
3793
- "type": "integer",
3794
- "minimum": 0,
3795
- "maximum": 255,
3796
- "description": "Identifier (0-255) for data lookup in Guard table."
3797
- }
3798
- },
3799
- "required": [
3800
- "identifier"
3801
- ],
3802
- "additionalProperties": false
5721
+ "description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
3803
5722
  },
3804
5723
  "where": {
3805
- "type": "object",
3806
- "properties": {
3807
- "guard": {
3808
- "description": "Optional filter: Guard object address constant to match.",
3809
- "type": "string"
5724
+ "oneOf": [
5725
+ {
5726
+ "type": "object",
5727
+ "properties": {
5728
+ "kind": {
5729
+ "type": "string",
5730
+ "const": "range"
5731
+ },
5732
+ "valueMin": {
5733
+ "description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
5734
+ "type": "string"
5735
+ },
5736
+ "valueMax": {
5737
+ "description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
5738
+ "type": "string"
5739
+ },
5740
+ "minInclusive": {
5741
+ "description": "Default true. false makes the lower bound exclusive.",
5742
+ "type": "boolean"
5743
+ },
5744
+ "maxInclusive": {
5745
+ "description": "Default true. false makes the upper bound exclusive.",
5746
+ "type": "boolean"
5747
+ }
5748
+ },
5749
+ "required": [
5750
+ "kind"
5751
+ ],
5752
+ "additionalProperties": false,
5753
+ "description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
3810
5754
  },
3811
- "timeMin": {
3812
- "description": "Optional filter: minimum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
3813
- "type": "string"
5755
+ {
5756
+ "type": "object",
5757
+ "properties": {
5758
+ "kind": {
5759
+ "type": "string",
5760
+ "const": "numEq"
5761
+ },
5762
+ "value": {
5763
+ "type": "string",
5764
+ "description": "Exact numeric match. Plain number string (U256 semantics)."
5765
+ }
5766
+ },
5767
+ "required": [
5768
+ "kind",
5769
+ "value"
5770
+ ],
5771
+ "additionalProperties": false
3814
5772
  },
3815
- "timeMax": {
3816
- "description": "Optional filter: maximum timestamp (inclusive) for record creation time. Use string to represent U64 value.",
3817
- "type": "string"
5773
+ {
5774
+ "type": "object",
5775
+ "properties": {
5776
+ "kind": {
5777
+ "type": "string",
5778
+ "const": "gt"
5779
+ },
5780
+ "value": {
5781
+ "type": "string",
5782
+ "description": "Greater than. Plain number string (U256 semantics)."
5783
+ }
5784
+ },
5785
+ "required": [
5786
+ "kind",
5787
+ "value"
5788
+ ],
5789
+ "additionalProperties": false
3818
5790
  },
3819
- "amountMin": {
3820
- "description": "Optional filter: minimum reward amount (inclusive). Use string to represent U64 value.",
3821
- "type": "string"
5791
+ {
5792
+ "type": "object",
5793
+ "properties": {
5794
+ "kind": {
5795
+ "type": "string",
5796
+ "const": "gte"
5797
+ },
5798
+ "value": {
5799
+ "type": "string",
5800
+ "description": "Greater than or equal. Plain number string (U256 semantics)."
5801
+ }
5802
+ },
5803
+ "required": [
5804
+ "kind",
5805
+ "value"
5806
+ ],
5807
+ "additionalProperties": false
3822
5808
  },
3823
- "amountMax": {
3824
- "description": "Optional filter: maximum reward amount (inclusive). Use string to represent U64 value.",
3825
- "type": "string"
5809
+ {
5810
+ "type": "object",
5811
+ "properties": {
5812
+ "kind": {
5813
+ "type": "string",
5814
+ "const": "lt"
5815
+ },
5816
+ "value": {
5817
+ "type": "string",
5818
+ "description": "Less than. Plain number string (U256 semantics)."
5819
+ }
5820
+ },
5821
+ "required": [
5822
+ "kind",
5823
+ "value"
5824
+ ],
5825
+ "additionalProperties": false
3826
5826
  },
3827
- "storeFromId": {
3828
- "description": "Optional filter: identifier reference to the store_from_id address in the Guard table (must be Address type). If not specified, the store_from_id field is ignored during matching. The server resolves this identifier to the actual address from the Guard table constants.",
5827
+ {
3829
5828
  "type": "object",
3830
5829
  "properties": {
5830
+ "kind": {
5831
+ "type": "string",
5832
+ "const": "lte"
5833
+ },
5834
+ "value": {
5835
+ "type": "string",
5836
+ "description": "Less than or equal. Plain number string (U256 semantics)."
5837
+ }
5838
+ },
5839
+ "required": [
5840
+ "kind",
5841
+ "value"
5842
+ ],
5843
+ "additionalProperties": false
5844
+ },
5845
+ {
5846
+ "type": "object",
5847
+ "properties": {
5848
+ "kind": {
5849
+ "type": "string",
5850
+ "const": "addressEq"
5851
+ },
3831
5852
  "identifier": {
3832
5853
  "type": "integer",
3833
5854
  "minimum": 0,
3834
5855
  "maximum": 255,
3835
- "description": "Identifier (0-255) for data lookup in Guard table."
5856
+ "description": "Identifier of the Address-type table entry to compare against."
3836
5857
  }
3837
5858
  },
3838
5859
  "required": [
5860
+ "kind",
3839
5861
  "identifier"
3840
5862
  ],
3841
5863
  "additionalProperties": false
3842
- }
3843
- },
3844
- "additionalProperties": false,
3845
- "description": "Filter conditions for the reward record existence query."
3846
- }
3847
- },
3848
- "required": [
3849
- "type",
3850
- "object",
3851
- "where"
3852
- ],
3853
- "additionalProperties": false,
3854
- "description": "Returns Bool. Returns true if at least one reward record exists matching the specified recipient and filter conditions, otherwise false. If recipient is not specified, uses the transaction signer address."
3855
- },
3856
- {
3857
- "type": "object",
3858
- "properties": {
3859
- "type": {
3860
- "type": "string",
3861
- "const": "query_progress_history_find"
3862
- },
3863
- "object": {
3864
- "type": "object",
3865
- "properties": {
3866
- "identifier": {
3867
- "type": "integer",
3868
- "minimum": 0,
3869
- "maximum": 255,
3870
- "description": "Identifier (0-255) for data lookup in Guard table."
3871
- }
3872
- },
3873
- "required": [
3874
- "identifier"
3875
- ],
3876
- "additionalProperties": false,
3877
- "description": "Reference to the Progress object in the Guard table (must be Address type)."
3878
- },
3879
- "where": {
3880
- "type": "object",
3881
- "properties": {
3882
- "node": {
3883
- "description": "Optional filter: node name string to match.",
3884
- "type": "string"
3885
- },
3886
- "nextNode": {
3887
- "description": "Optional filter: next node name string to match.",
3888
- "type": "string"
3889
- },
3890
- "timeMin": {
3891
- "description": "Optional filter: minimum timestamp (inclusive) for history entry time. Use string to represent U64 value.",
3892
- "type": "string"
3893
5864
  },
3894
- "timeMax": {
3895
- "description": "Optional filter: maximum timestamp (inclusive) for history entry time. Use string to represent U64 value.",
3896
- "type": "string"
5865
+ {
5866
+ "type": "object",
5867
+ "properties": {
5868
+ "kind": {
5869
+ "type": "string",
5870
+ "const": "stringEq"
5871
+ },
5872
+ "value": {
5873
+ "type": "string",
5874
+ "description": "Exact string match (byte equality, UTF-8)."
5875
+ }
5876
+ },
5877
+ "required": [
5878
+ "kind",
5879
+ "value"
5880
+ ],
5881
+ "additionalProperties": false
3897
5882
  },
3898
- "indexMin": {
3899
- "description": "Optional filter: minimum history index (inclusive) to search within. Use string to represent U64 value.",
3900
- "type": "string"
5883
+ {
5884
+ "type": "object",
5885
+ "properties": {
5886
+ "kind": {
5887
+ "type": "string",
5888
+ "const": "stringContains"
5889
+ },
5890
+ "value": {
5891
+ "type": "string",
5892
+ "description": "Substring match, case-sensitive."
5893
+ }
5894
+ },
5895
+ "required": [
5896
+ "kind",
5897
+ "value"
5898
+ ],
5899
+ "additionalProperties": false
3901
5900
  },
3902
- "indexMax": {
3903
- "description": "Optional filter: maximum history index (inclusive) to search within. Use string to represent U64 value.",
3904
- "type": "string"
5901
+ {
5902
+ "type": "object",
5903
+ "properties": {
5904
+ "kind": {
5905
+ "type": "string",
5906
+ "const": "stringNoCaseContains"
5907
+ },
5908
+ "value": {
5909
+ "type": "string",
5910
+ "description": "Substring match, case-insensitive."
5911
+ }
5912
+ },
5913
+ "required": [
5914
+ "kind",
5915
+ "value"
5916
+ ],
5917
+ "additionalProperties": false
5918
+ },
5919
+ {
5920
+ "type": "object",
5921
+ "properties": {
5922
+ "kind": {
5923
+ "type": "string",
5924
+ "const": "boolEq"
5925
+ },
5926
+ "value": {
5927
+ "type": "boolean",
5928
+ "description": "Boolean equality."
5929
+ }
5930
+ },
5931
+ "required": [
5932
+ "kind",
5933
+ "value"
5934
+ ],
5935
+ "additionalProperties": false
3905
5936
  }
3906
- },
3907
- "additionalProperties": false,
3908
- "description": "Filter conditions for the progress history query."
3909
- },
3910
- "find": {
3911
- "type": "string",
3912
- "enum": [
3913
- "first",
3914
- "last"
3915
5937
  ],
3916
- "description": "'first' finds the earliest matching history entry, 'last' finds the most recent matching history entry."
5938
+ "description": "Predicate filter applied to each candidate's data value."
3917
5939
  }
3918
5940
  },
3919
5941
  "required": [
3920
5942
  "type",
3921
5943
  "object",
3922
- "where",
3923
- "find"
5944
+ "key",
5945
+ "ids",
5946
+ "where"
3924
5947
  ],
3925
5948
  "additionalProperties": false,
3926
- "description": "Returns U64. Finds the index of the first or last history entry matching the filter conditions. Returns the history index (U64) if found. Throws error if no matching entry is found (Guard validation fails)."
5949
+ "description": "Returns U256. Sums the numeric payloads of candidates whose stored value matches the predicate (on-chain checked add, overflow aborts). Non-numeric or mismatching entries contribute 0. Use logic_as_u256_* to compare the sum."
3927
5950
  },
3928
5951
  {
3929
5952
  "type": "object",
3930
5953
  "properties": {
3931
5954
  "type": {
3932
5955
  "type": "string",
3933
- "const": "query_progress_history_session_find"
5956
+ "const": "query_repository_data_find_where"
3934
5957
  },
3935
5958
  "object": {
3936
5959
  "type": "object",
@@ -3946,55 +5969,25 @@
3946
5969
  "identifier"
3947
5970
  ],
3948
5971
  "additionalProperties": false,
3949
- "description": "Reference to the Progress object in the Guard table (must be Address type)."
3950
- },
3951
- "historyIdx": {
3952
- "description": "GuardNode that returns the history index (U64 type) to search within. Typically an 'identifier' node referencing a U64 value from the Guard table.",
3953
- "allOf": [
3954
- {
3955
- "$ref": "#/definitions/__schema1"
3956
- }
3957
- ],
3958
- "$ref": "#/definitions/__schema0"
5972
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
3959
5973
  },
3960
- "where": {
5974
+ "key": {
3961
5975
  "type": "object",
3962
5976
  "properties": {
3963
- "nextNode": {
3964
- "description": "Optional filter: next node name string to match.",
3965
- "type": "string"
5977
+ "identifier": {
5978
+ "type": "integer",
5979
+ "minimum": 0,
5980
+ "maximum": 255,
5981
+ "description": "Identifier (0-255) for data lookup in Guard table."
3966
5982
  }
3967
5983
  },
3968
- "additionalProperties": false,
3969
- "description": "Filter conditions for the progress history session query."
3970
- },
3971
- "find": {
3972
- "type": "string",
3973
- "enum": [
3974
- "first",
3975
- "last"
5984
+ "required": [
5985
+ "identifier"
3976
5986
  ],
3977
- "description": "'first' finds the earliest matching session, 'last' finds the most recent matching session."
3978
- }
3979
- },
3980
- "required": [
3981
- "type",
3982
- "object",
3983
- "historyIdx",
3984
- "where",
3985
- "find"
3986
- ],
3987
- "additionalProperties": false,
3988
- "description": "Returns U64. Finds the index of the first or last session within the specified history entry matching the filter conditions. Returns the session index (U64) if found. Throws error if no matching session is found (Guard validation fails)."
3989
- },
3990
- {
3991
- "type": "object",
3992
- "properties": {
3993
- "type": {
3994
- "type": "string",
3995
- "const": "query_progress_history_session_forward_find"
5987
+ "additionalProperties": false,
5988
+ "description": "Reference to the policy key (String type table entry) whose data table is scanned."
3996
5989
  },
3997
- "object": {
5990
+ "ids": {
3998
5991
  "type": "object",
3999
5992
  "properties": {
4000
5993
  "identifier": {
@@ -4008,79 +6001,242 @@
4008
6001
  "identifier"
4009
6002
  ],
4010
6003
  "additionalProperties": false,
4011
- "description": "Reference to the Progress object in the Guard table (must be Address type)."
6004
+ "description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
4012
6005
  },
4013
- "historyIdx": {
4014
- "description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
4015
- "allOf": [
6006
+ "where": {
6007
+ "oneOf": [
4016
6008
  {
4017
- "$ref": "#/definitions/__schema1"
4018
- }
4019
- ],
4020
- "$ref": "#/definitions/__schema0"
4021
- },
4022
- "sessionIdx": {
4023
- "description": "GuardNode that returns the session index (U64 type) within the history entry. Typically an 'identifier' node referencing a U64 value from the Guard table.",
4024
- "allOf": [
6009
+ "type": "object",
6010
+ "properties": {
6011
+ "kind": {
6012
+ "type": "string",
6013
+ "const": "range"
6014
+ },
6015
+ "valueMin": {
6016
+ "description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
6017
+ "type": "string"
6018
+ },
6019
+ "valueMax": {
6020
+ "description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
6021
+ "type": "string"
6022
+ },
6023
+ "minInclusive": {
6024
+ "description": "Default true. false makes the lower bound exclusive.",
6025
+ "type": "boolean"
6026
+ },
6027
+ "maxInclusive": {
6028
+ "description": "Default true. false makes the upper bound exclusive.",
6029
+ "type": "boolean"
6030
+ }
6031
+ },
6032
+ "required": [
6033
+ "kind"
6034
+ ],
6035
+ "additionalProperties": false,
6036
+ "description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
6037
+ },
4025
6038
  {
4026
- "$ref": "#/definitions/__schema1"
4027
- }
4028
- ],
4029
- "$ref": "#/definitions/__schema0"
4030
- },
4031
- "where": {
4032
- "type": "object",
4033
- "properties": {
4034
- "who": {
4035
- "description": "Optional filter: operator address string to match.",
4036
- "type": "string"
6039
+ "type": "object",
6040
+ "properties": {
6041
+ "kind": {
6042
+ "type": "string",
6043
+ "const": "numEq"
6044
+ },
6045
+ "value": {
6046
+ "type": "string",
6047
+ "description": "Exact numeric match. Plain number string (U256 semantics)."
6048
+ }
6049
+ },
6050
+ "required": [
6051
+ "kind",
6052
+ "value"
6053
+ ],
6054
+ "additionalProperties": false
4037
6055
  },
4038
- "operation": {
4039
- "description": "Optional filter: operation name string to match.",
4040
- "type": "string"
6056
+ {
6057
+ "type": "object",
6058
+ "properties": {
6059
+ "kind": {
6060
+ "type": "string",
6061
+ "const": "gt"
6062
+ },
6063
+ "value": {
6064
+ "type": "string",
6065
+ "description": "Greater than. Plain number string (U256 semantics)."
6066
+ }
6067
+ },
6068
+ "required": [
6069
+ "kind",
6070
+ "value"
6071
+ ],
6072
+ "additionalProperties": false
4041
6073
  },
4042
- "accomplished": {
4043
- "description": "Optional filter: whether the forward operation was accomplished.",
4044
- "type": "boolean"
6074
+ {
6075
+ "type": "object",
6076
+ "properties": {
6077
+ "kind": {
6078
+ "type": "string",
6079
+ "const": "gte"
6080
+ },
6081
+ "value": {
6082
+ "type": "string",
6083
+ "description": "Greater than or equal. Plain number string (U256 semantics)."
6084
+ }
6085
+ },
6086
+ "required": [
6087
+ "kind",
6088
+ "value"
6089
+ ],
6090
+ "additionalProperties": false
4045
6091
  },
4046
- "timeMin": {
4047
- "description": "Optional filter: minimum timestamp (inclusive) for forward operation time. Use string to represent U64 value.",
4048
- "type": "string"
6092
+ {
6093
+ "type": "object",
6094
+ "properties": {
6095
+ "kind": {
6096
+ "type": "string",
6097
+ "const": "lt"
6098
+ },
6099
+ "value": {
6100
+ "type": "string",
6101
+ "description": "Less than. Plain number string (U256 semantics)."
6102
+ }
6103
+ },
6104
+ "required": [
6105
+ "kind",
6106
+ "value"
6107
+ ],
6108
+ "additionalProperties": false
6109
+ },
6110
+ {
6111
+ "type": "object",
6112
+ "properties": {
6113
+ "kind": {
6114
+ "type": "string",
6115
+ "const": "lte"
6116
+ },
6117
+ "value": {
6118
+ "type": "string",
6119
+ "description": "Less than or equal. Plain number string (U256 semantics)."
6120
+ }
6121
+ },
6122
+ "required": [
6123
+ "kind",
6124
+ "value"
6125
+ ],
6126
+ "additionalProperties": false
6127
+ },
6128
+ {
6129
+ "type": "object",
6130
+ "properties": {
6131
+ "kind": {
6132
+ "type": "string",
6133
+ "const": "addressEq"
6134
+ },
6135
+ "identifier": {
6136
+ "type": "integer",
6137
+ "minimum": 0,
6138
+ "maximum": 255,
6139
+ "description": "Identifier of the Address-type table entry to compare against."
6140
+ }
6141
+ },
6142
+ "required": [
6143
+ "kind",
6144
+ "identifier"
6145
+ ],
6146
+ "additionalProperties": false
6147
+ },
6148
+ {
6149
+ "type": "object",
6150
+ "properties": {
6151
+ "kind": {
6152
+ "type": "string",
6153
+ "const": "stringEq"
6154
+ },
6155
+ "value": {
6156
+ "type": "string",
6157
+ "description": "Exact string match (byte equality, UTF-8)."
6158
+ }
6159
+ },
6160
+ "required": [
6161
+ "kind",
6162
+ "value"
6163
+ ],
6164
+ "additionalProperties": false
6165
+ },
6166
+ {
6167
+ "type": "object",
6168
+ "properties": {
6169
+ "kind": {
6170
+ "type": "string",
6171
+ "const": "stringContains"
6172
+ },
6173
+ "value": {
6174
+ "type": "string",
6175
+ "description": "Substring match, case-sensitive."
6176
+ }
6177
+ },
6178
+ "required": [
6179
+ "kind",
6180
+ "value"
6181
+ ],
6182
+ "additionalProperties": false
6183
+ },
6184
+ {
6185
+ "type": "object",
6186
+ "properties": {
6187
+ "kind": {
6188
+ "type": "string",
6189
+ "const": "stringNoCaseContains"
6190
+ },
6191
+ "value": {
6192
+ "type": "string",
6193
+ "description": "Substring match, case-insensitive."
6194
+ }
6195
+ },
6196
+ "required": [
6197
+ "kind",
6198
+ "value"
6199
+ ],
6200
+ "additionalProperties": false
4049
6201
  },
4050
- "timeMax": {
4051
- "description": "Optional filter: maximum timestamp (inclusive) for forward operation time. Use string to represent U64 value.",
4052
- "type": "string"
6202
+ {
6203
+ "type": "object",
6204
+ "properties": {
6205
+ "kind": {
6206
+ "type": "string",
6207
+ "const": "boolEq"
6208
+ },
6209
+ "value": {
6210
+ "type": "boolean",
6211
+ "description": "Boolean equality."
6212
+ }
6213
+ },
6214
+ "required": [
6215
+ "kind",
6216
+ "value"
6217
+ ],
6218
+ "additionalProperties": false
4053
6219
  }
4054
- },
4055
- "additionalProperties": false,
4056
- "description": "Filter conditions for the progress history session forward query."
4057
- },
4058
- "find": {
4059
- "type": "string",
4060
- "enum": [
4061
- "first",
4062
- "last"
4063
6220
  ],
4064
- "description": "'first' finds the earliest matching forward operation, 'last' finds the most recent matching forward operation."
6221
+ "description": "Predicate filter applied to each candidate's data value."
4065
6222
  }
4066
6223
  },
4067
6224
  "required": [
4068
6225
  "type",
4069
6226
  "object",
4070
- "historyIdx",
4071
- "sessionIdx",
4072
- "where",
4073
- "find"
6227
+ "key",
6228
+ "ids",
6229
+ "where"
4074
6230
  ],
4075
6231
  "additionalProperties": false,
4076
- "description": "Returns U64. Finds the index of the first or last forward operation within the specified history session matching the filter conditions. Returns the forward index (U64) if found. Throws error if no matching forward operation is found (Guard validation fails)."
6232
+ "description": "Returns VecAddress. Lists the IDs of ALL matching candidates in candidate order. Compose: vec_length + logic_as_u256_greater_than_or_equal (existence/threshold), vec_indexof_address (first/last position), vec_contains_address (membership)."
4077
6233
  },
4078
6234
  {
4079
6235
  "type": "object",
4080
6236
  "properties": {
4081
6237
  "type": {
4082
6238
  "type": "string",
4083
- "const": "query_progress_history_session_count"
6239
+ "const": "query_repository_data_keys_where"
4084
6240
  },
4085
6241
  "object": {
4086
6242
  "type": "object",
@@ -4096,34 +6252,9 @@
4096
6252
  "identifier"
4097
6253
  ],
4098
6254
  "additionalProperties": false,
4099
- "description": "Reference to the Progress object in the Guard table (must be Address type)."
4100
- },
4101
- "historyIdx": {
4102
- "description": "GuardNode that returns the history index (U64 type) to count sessions for. Typically an 'identifier' node referencing a U64 value from the Guard table.",
4103
- "allOf": [
4104
- {
4105
- "$ref": "#/definitions/__schema1"
4106
- }
4107
- ],
4108
- "$ref": "#/definitions/__schema0"
4109
- }
4110
- },
4111
- "required": [
4112
- "type",
4113
- "object",
4114
- "historyIdx"
4115
- ],
4116
- "additionalProperties": false,
4117
- "description": "Returns U64. Counts the number of sessions within the specified history entry."
4118
- },
4119
- {
4120
- "type": "object",
4121
- "properties": {
4122
- "type": {
4123
- "type": "string",
4124
- "const": "query_progress_history_session_forward_count"
6255
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
4125
6256
  },
4126
- "object": {
6257
+ "id": {
4127
6258
  "type": "object",
4128
6259
  "properties": {
4129
6260
  "identifier": {
@@ -4137,42 +6268,241 @@
4137
6268
  "identifier"
4138
6269
  ],
4139
6270
  "additionalProperties": false,
4140
- "description": "Reference to the Progress object in the Guard table (must be Address type)."
6271
+ "description": "Reference to the single candidate ID (Address type table entry) to probe across policies."
4141
6272
  },
4142
- "historyIdx": {
4143
- "description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
4144
- "allOf": [
6273
+ "where": {
6274
+ "oneOf": [
4145
6275
  {
4146
- "$ref": "#/definitions/__schema1"
4147
- }
4148
- ],
4149
- "$ref": "#/definitions/__schema0"
4150
- },
4151
- "sessionIdx": {
4152
- "description": "GuardNode that returns the session index (U64 type) within the history entry. Typically an 'identifier' node referencing a U64 value from the Guard table.",
4153
- "allOf": [
6276
+ "type": "object",
6277
+ "properties": {
6278
+ "kind": {
6279
+ "type": "string",
6280
+ "const": "range"
6281
+ },
6282
+ "valueMin": {
6283
+ "description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
6284
+ "type": "string"
6285
+ },
6286
+ "valueMax": {
6287
+ "description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
6288
+ "type": "string"
6289
+ },
6290
+ "minInclusive": {
6291
+ "description": "Default true. false makes the lower bound exclusive.",
6292
+ "type": "boolean"
6293
+ },
6294
+ "maxInclusive": {
6295
+ "description": "Default true. false makes the upper bound exclusive.",
6296
+ "type": "boolean"
6297
+ }
6298
+ },
6299
+ "required": [
6300
+ "kind"
6301
+ ],
6302
+ "additionalProperties": false,
6303
+ "description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
6304
+ },
4154
6305
  {
4155
- "$ref": "#/definitions/__schema1"
6306
+ "type": "object",
6307
+ "properties": {
6308
+ "kind": {
6309
+ "type": "string",
6310
+ "const": "numEq"
6311
+ },
6312
+ "value": {
6313
+ "type": "string",
6314
+ "description": "Exact numeric match. Plain number string (U256 semantics)."
6315
+ }
6316
+ },
6317
+ "required": [
6318
+ "kind",
6319
+ "value"
6320
+ ],
6321
+ "additionalProperties": false
6322
+ },
6323
+ {
6324
+ "type": "object",
6325
+ "properties": {
6326
+ "kind": {
6327
+ "type": "string",
6328
+ "const": "gt"
6329
+ },
6330
+ "value": {
6331
+ "type": "string",
6332
+ "description": "Greater than. Plain number string (U256 semantics)."
6333
+ }
6334
+ },
6335
+ "required": [
6336
+ "kind",
6337
+ "value"
6338
+ ],
6339
+ "additionalProperties": false
6340
+ },
6341
+ {
6342
+ "type": "object",
6343
+ "properties": {
6344
+ "kind": {
6345
+ "type": "string",
6346
+ "const": "gte"
6347
+ },
6348
+ "value": {
6349
+ "type": "string",
6350
+ "description": "Greater than or equal. Plain number string (U256 semantics)."
6351
+ }
6352
+ },
6353
+ "required": [
6354
+ "kind",
6355
+ "value"
6356
+ ],
6357
+ "additionalProperties": false
6358
+ },
6359
+ {
6360
+ "type": "object",
6361
+ "properties": {
6362
+ "kind": {
6363
+ "type": "string",
6364
+ "const": "lt"
6365
+ },
6366
+ "value": {
6367
+ "type": "string",
6368
+ "description": "Less than. Plain number string (U256 semantics)."
6369
+ }
6370
+ },
6371
+ "required": [
6372
+ "kind",
6373
+ "value"
6374
+ ],
6375
+ "additionalProperties": false
6376
+ },
6377
+ {
6378
+ "type": "object",
6379
+ "properties": {
6380
+ "kind": {
6381
+ "type": "string",
6382
+ "const": "lte"
6383
+ },
6384
+ "value": {
6385
+ "type": "string",
6386
+ "description": "Less than or equal. Plain number string (U256 semantics)."
6387
+ }
6388
+ },
6389
+ "required": [
6390
+ "kind",
6391
+ "value"
6392
+ ],
6393
+ "additionalProperties": false
6394
+ },
6395
+ {
6396
+ "type": "object",
6397
+ "properties": {
6398
+ "kind": {
6399
+ "type": "string",
6400
+ "const": "addressEq"
6401
+ },
6402
+ "identifier": {
6403
+ "type": "integer",
6404
+ "minimum": 0,
6405
+ "maximum": 255,
6406
+ "description": "Identifier of the Address-type table entry to compare against."
6407
+ }
6408
+ },
6409
+ "required": [
6410
+ "kind",
6411
+ "identifier"
6412
+ ],
6413
+ "additionalProperties": false
6414
+ },
6415
+ {
6416
+ "type": "object",
6417
+ "properties": {
6418
+ "kind": {
6419
+ "type": "string",
6420
+ "const": "stringEq"
6421
+ },
6422
+ "value": {
6423
+ "type": "string",
6424
+ "description": "Exact string match (byte equality, UTF-8)."
6425
+ }
6426
+ },
6427
+ "required": [
6428
+ "kind",
6429
+ "value"
6430
+ ],
6431
+ "additionalProperties": false
6432
+ },
6433
+ {
6434
+ "type": "object",
6435
+ "properties": {
6436
+ "kind": {
6437
+ "type": "string",
6438
+ "const": "stringContains"
6439
+ },
6440
+ "value": {
6441
+ "type": "string",
6442
+ "description": "Substring match, case-sensitive."
6443
+ }
6444
+ },
6445
+ "required": [
6446
+ "kind",
6447
+ "value"
6448
+ ],
6449
+ "additionalProperties": false
6450
+ },
6451
+ {
6452
+ "type": "object",
6453
+ "properties": {
6454
+ "kind": {
6455
+ "type": "string",
6456
+ "const": "stringNoCaseContains"
6457
+ },
6458
+ "value": {
6459
+ "type": "string",
6460
+ "description": "Substring match, case-insensitive."
6461
+ }
6462
+ },
6463
+ "required": [
6464
+ "kind",
6465
+ "value"
6466
+ ],
6467
+ "additionalProperties": false
6468
+ },
6469
+ {
6470
+ "type": "object",
6471
+ "properties": {
6472
+ "kind": {
6473
+ "type": "string",
6474
+ "const": "boolEq"
6475
+ },
6476
+ "value": {
6477
+ "type": "boolean",
6478
+ "description": "Boolean equality."
6479
+ }
6480
+ },
6481
+ "required": [
6482
+ "kind",
6483
+ "value"
6484
+ ],
6485
+ "additionalProperties": false
4156
6486
  }
4157
6487
  ],
4158
- "$ref": "#/definitions/__schema0"
6488
+ "description": "Predicate filter applied to the value stored under each policy key for this ID."
4159
6489
  }
4160
6490
  },
4161
6491
  "required": [
4162
6492
  "type",
4163
6493
  "object",
4164
- "historyIdx",
4165
- "sessionIdx"
6494
+ "id",
6495
+ "where"
4166
6496
  ],
4167
6497
  "additionalProperties": false,
4168
- "description": "Returns U64. Counts the number of forward operations within the specified history session."
6498
+ "description": "Returns VecString. Reverse lookup: all policy keys whose stored value for the given ID matches the predicate (scans the policy schema and probes each key). Compose: vec_length (how many keys match), vec_indexof_string + logic_as_u256_equal (does a specific key match), vec_contains_string (specific key membership)."
4169
6499
  },
4170
6500
  {
4171
6501
  "type": "object",
4172
6502
  "properties": {
4173
6503
  "type": {
4174
6504
  "type": "string",
4175
- "const": "query_progress_history_session_forward_retained_submission_count"
6505
+ "const": "query_repository_policies_keys"
4176
6506
  },
4177
6507
  "object": {
4178
6508
  "type": "object",
@@ -4188,45 +6518,15 @@
4188
6518
  "identifier"
4189
6519
  ],
4190
6520
  "additionalProperties": false,
4191
- "description": "Reference to the Progress object in the Guard table (must be Address type)."
4192
- },
4193
- "historyIdx": {
4194
- "description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
4195
- "allOf": [
4196
- {
4197
- "$ref": "#/definitions/__schema1"
4198
- }
4199
- ],
4200
- "$ref": "#/definitions/__schema0"
4201
- },
4202
- "sessionIdx": {
4203
- "description": "GuardNode that returns the session index (U64 type) within the history entry. Typically an 'identifier' node referencing a U64 value from the Guard table.",
4204
- "allOf": [
4205
- {
4206
- "$ref": "#/definitions/__schema1"
4207
- }
4208
- ],
4209
- "$ref": "#/definitions/__schema0"
4210
- },
4211
- "forwardIdx": {
4212
- "description": "GuardNode that returns the forward operation index (U64 type) within the session. Typically an 'identifier' node referencing a U64 value from the Guard table.",
4213
- "allOf": [
4214
- {
4215
- "$ref": "#/definitions/__schema1"
4216
- }
4217
- ],
4218
- "$ref": "#/definitions/__schema0"
6521
+ "description": "Reference to the Repository object in the Guard table (must be Address type)."
4219
6522
  }
4220
6523
  },
4221
6524
  "required": [
4222
6525
  "type",
4223
- "object",
4224
- "historyIdx",
4225
- "sessionIdx",
4226
- "forwardIdx"
6526
+ "object"
4227
6527
  ],
4228
6528
  "additionalProperties": false,
4229
- "description": "Returns U64. Counts the number of retained submissions within the specified forward operation."
6529
+ "description": "Returns VecString. Lists ALL policy key names of the Repository (max 50). Use vec_length to bound per-key composite queries or vec_contains_string to assert a key exists."
4230
6530
  }
4231
6531
  ]
4232
6532
  }