@wowok/agent-mcp 3.3.5 → 3.3.7
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.
- package/dist/chain-semantics/eval-order.d.ts +17 -0
- package/dist/chain-semantics/eval-order.js +1 -0
- package/dist/chain-semantics/field-capability.js +1 -1
- package/dist/chain-semantics/freeze-map.js +1 -1
- package/dist/chain-semantics/fund-flow.js +1 -1
- package/dist/chain-semantics/guard-verbs.js +1 -1
- package/dist/chain-semantics/index.d.ts +1 -0
- package/dist/chain-semantics/index.js +1 -1
- package/dist/chain-semantics/object-graph.js +1 -1
- package/dist/composition/audit.js +1 -1
- package/dist/composition/compile.d.ts +2 -1
- package/dist/composition/compile.js +1 -1
- package/dist/composition/materialize.js +1 -1
- package/dist/data/api/api.spec.d.ts +1 -0
- package/dist/data/api/api.spec.js +1 -0
- package/dist/data/api/cli.d.ts +1 -0
- package/dist/data/api/cli.js +1 -0
- package/dist/data/api/head.d.ts +16 -0
- package/dist/data/api/head.js +1 -0
- package/dist/data/api/head.spec.d.ts +1 -0
- package/dist/data/api/head.spec.js +1 -0
- package/dist/data/api/index.d.ts +2 -0
- package/dist/data/api/index.js +1 -0
- package/dist/data/api/match.d.ts +69 -0
- package/dist/data/api/match.js +1 -0
- package/dist/data/api/match.spec.d.ts +1 -0
- package/dist/data/api/match.spec.js +1 -0
- package/dist/data/api/server.d.ts +12 -0
- package/dist/data/api/server.js +1 -0
- package/dist/data/projection/cli.d.ts +1 -0
- package/dist/data/projection/cli.js +1 -0
- package/dist/data/projection/edges.d.ts +8 -0
- package/dist/data/projection/edges.js +1 -0
- package/dist/data/projection/edges.spec.d.ts +1 -0
- package/dist/data/projection/edges.spec.js +1 -0
- package/dist/data/projection/facets.d.ts +18 -0
- package/dist/data/projection/facets.js +1 -0
- package/dist/data/projection/facets.spec.d.ts +1 -0
- package/dist/data/projection/facets.spec.js +1 -0
- package/dist/data/projection/facts.d.ts +40 -0
- package/dist/data/projection/facts.js +1 -0
- package/dist/data/projection/index.d.ts +6 -0
- package/dist/data/projection/index.js +1 -0
- package/dist/data/projection/project.d.ts +10 -0
- package/dist/data/projection/project.js +1 -0
- package/dist/data/projection/projection.spec.d.ts +1 -0
- package/dist/data/projection/projection.spec.js +1 -0
- package/dist/data/projection/schema.d.ts +1 -0
- package/dist/data/projection/schema.js +1 -0
- package/dist/data/projection/store.d.ts +49 -0
- package/dist/data/projection/store.js +1 -0
- package/dist/data/projection/types.d.ts +137 -0
- package/dist/data/projection/types.js +1 -0
- package/dist/data/sync/cdc.d.ts +34 -0
- package/dist/data/sync/cdc.js +1 -0
- package/dist/data/sync/cdc.spec.d.ts +1 -0
- package/dist/data/sync/cdc.spec.js +1 -0
- package/dist/data/sync/graphql-source.d.ts +16 -0
- package/dist/data/sync/graphql-source.js +1 -0
- package/dist/data/sync/index.d.ts +5 -0
- package/dist/data/sync/index.js +1 -0
- package/dist/data/sync/reconciler.d.ts +14 -0
- package/dist/data/sync/reconciler.js +1 -0
- package/dist/data/sync/reconciler.spec.d.ts +1 -0
- package/dist/data/sync/reconciler.spec.js +1 -0
- package/dist/data/sync/schema.d.ts +1 -0
- package/dist/data/sync/schema.js +1 -0
- package/dist/data/sync/store.d.ts +19 -0
- package/dist/data/sync/store.js +1 -0
- package/dist/data/sync/sync.spec.d.ts +1 -0
- package/dist/data/sync/sync.spec.js +1 -0
- package/dist/data/sync/synchronizer.d.ts +10 -0
- package/dist/data/sync/synchronizer.js +1 -0
- package/dist/data/sync/types.d.ts +162 -0
- package/dist/data/sync/types.js +1 -0
- package/dist/evaluation/builtins/demand-match.js +1 -1
- package/dist/evaluation/builtins/graph-service.spec.js +1 -1
- package/dist/evaluation/capability.d.ts +1 -0
- package/dist/evaluation/engine.js +1 -1
- package/dist/evaluation/extract.d.ts +7 -1
- package/dist/evaluation/extract.js +1 -1
- package/dist/evaluation/match-policy.d.ts +142 -0
- package/dist/evaluation/match-policy.js +1 -0
- package/dist/evaluation/match-policy.spec.d.ts +1 -0
- package/dist/evaluation/match-policy.spec.js +1 -0
- package/dist/experience/realtime-feedback.js +1 -1
- package/dist/extensions/business-modules.js +1 -1
- package/dist/graph/onchain/expand.js +1 -1
- package/dist/graph/onchain/exposure.js +1 -1
- package/dist/harness/recover.js +1 -1
- package/dist/intent/types.d.ts +1 -1
- package/dist/intent/types.js +1 -1
- package/dist/keeper/detectors.d.ts +3 -0
- package/dist/keeper/detectors.js +1 -1
- package/dist/keeper/keeper.spec.js +1 -1
- package/dist/knowledge/allocator-rail-verifier.js +1 -1
- package/dist/knowledge/arbitration-ledger.js +1 -1
- package/dist/knowledge/audit-rules.js +1 -1
- package/dist/knowledge/baselines/rules/plan.json +113 -3
- package/dist/knowledge/builtin-templates.d.ts +6 -1
- package/dist/knowledge/builtin-templates.js +1 -1
- package/dist/knowledge/event-semantics.js +1 -1
- package/dist/knowledge/getting-started.js +1 -1
- package/dist/knowledge/guard-design-patterns.d.ts +1 -1
- package/dist/knowledge/guard-design-patterns.js +1 -1
- package/dist/knowledge/guard-ledger.js +1 -1
- package/dist/knowledge/guard-puzzle.js +1 -1
- package/dist/knowledge/guard-render.js +1 -1
- package/dist/knowledge/guard-risk.js +1 -1
- package/dist/knowledge/guard-templates.d.ts +1 -1
- package/dist/knowledge/guard-templates.js +1 -1
- package/dist/knowledge/guard-translation.js +1 -1
- package/dist/knowledge/index.js +1 -1
- package/dist/knowledge/industry-generalizer.d.ts +4 -0
- package/dist/knowledge/industry-generalizer.js +1 -1
- package/dist/knowledge/industry-registry.js +1 -1
- package/dist/knowledge/jsonrpc-enum.d.ts +26 -10
- package/dist/knowledge/jsonrpc-enum.js +1 -1
- package/dist/knowledge/projection.d.ts +54 -0
- package/dist/knowledge/projection.js +1 -0
- package/dist/knowledge/projection.spec.d.ts +1 -0
- package/dist/knowledge/projection.spec.js +1 -0
- package/dist/knowledge/recipient-constraint.d.ts +1 -1
- package/dist/knowledge/recipient-constraint.js +1 -1
- package/dist/knowledge/semantic-ir.d.ts +113 -0
- package/dist/knowledge/semantic-ir.js +1 -0
- package/dist/knowledge/service-ledger.d.ts +1 -1
- package/dist/knowledge/service-ledger.js +1 -1
- package/dist/knowledge/strategy-manuals.js +1 -1
- package/dist/knowledge/template-loader.d.ts +34 -0
- package/dist/knowledge/template-loader.js +1 -1
- package/dist/knowledge/template-prose.d.ts +50 -0
- package/dist/knowledge/template-prose.js +1 -0
- package/dist/knowledge/template-registry.js +1 -1
- package/dist/knowledge/template-scanner.d.ts +1 -1
- package/dist/knowledge/template-scanner.js +1 -1
- package/dist/knowledge/tools-reference.js +1 -1
- package/dist/monitor/MonitorLoop.js +1 -1
- package/dist/monitor/normalize.d.ts +1 -1
- package/dist/monitor/normalize.js +1 -1
- package/dist/monitor/types.js +1 -1
- package/dist/playbooks/service-build/business-puzzle.js +1 -1
- package/dist/playbooks/service-build/machine-panorama.js +1 -1
- package/dist/playbooks/service-build/merchant-guide.d.ts +4 -0
- package/dist/playbooks/service-build/merchant-guide.js +1 -1
- package/dist/playbooks/service-build/migration-planner.d.ts +2 -1
- package/dist/playbooks/service-build/migration-planner.js +1 -1
- package/dist/playbooks/service-build/mode-actions.d.ts +7 -0
- package/dist/playbooks/service-build/mode-actions.js +1 -1
- package/dist/playbooks/service-build/object-panorama.d.ts +22 -1
- package/dist/playbooks/service-build/object-panorama.js +1 -1
- package/dist/playbooks/service-build/participation-radar.js +1 -1
- package/dist/playbooks/service-build/relationship-profile.js +1 -1
- package/dist/playbooks/service-build/reverse-mapping-nk4.spec.js +1 -1
- package/dist/playbooks/service-build/reverse-mapping.d.ts +1 -0
- package/dist/playbooks/service-build/reverse-mapping.js +1 -1
- package/dist/playbooks/service-build/service-panorama.js +1 -1
- package/dist/playbooks/service-build/service-quote.js +1 -1
- package/dist/playbooks/service-build/service-quote.spec.js +1 -1
- package/dist/review/index.js +1 -1
- package/dist/role/profiles.js +1 -1
- package/dist/safety/confirm-gate.js +1 -1
- package/dist/schema/benchmark-migration/index.d.ts +64 -10
- package/dist/schema/benchmark-migration/index.js +1 -1
- package/dist/schema/call/allocation.js +1 -1
- package/dist/schema/call/arbitration.js +1 -1
- package/dist/schema/call/base.d.ts +8 -0
- package/dist/schema/call/bridge.d.ts +2 -0
- package/dist/schema/call/error-codes.d.ts +1 -1
- package/dist/schema/call/error-codes.js +1 -1
- package/dist/schema/call/proof.js +1 -1
- package/dist/schema/call/reward.d.ts +10 -0
- package/dist/schema/call/reward.js +1 -1
- package/dist/schema/call/semantic.js +1 -1
- package/dist/schema/call/service.js +1 -1
- package/dist/schema/common/index.js +1 -1
- package/dist/schema/evaluation/index.d.ts +341 -0
- package/dist/schema/evaluation/index.js +1 -1
- package/dist/schema/goal/index.d.ts +2 -0
- package/dist/schema/goal/planning.d.ts +3 -0
- package/dist/schema/goal/planning.js +1 -1
- package/dist/schema/industry-pack/index.d.ts +62 -0
- package/dist/schema/industry-pack/modes.d.ts +62 -0
- package/dist/schema/industry-pack/modes.js +1 -1
- package/dist/schema/intent-radar/index.d.ts +3 -0
- package/dist/schema/intent-radar/index.js +1 -1
- package/dist/schema/local/index.d.ts +20 -0
- package/dist/schema/local/index.js +1 -1
- package/dist/schema/operations.d.ts +5 -0
- package/dist/schema/query/bi.d.ts +4 -0
- package/dist/schema/query/bi.js +1 -1
- package/dist/schema/query/index.d.ts +145 -47
- package/dist/schema/query/index.js +1 -1
- package/dist/schema/schema-version.js +1 -1
- package/dist/schema-query-impl/index.js +1 -1
- package/dist/schemas/account_operation.output.json +2 -0
- package/dist/schemas/benchmark_migration_operation.output.json +42 -0
- package/dist/schemas/benchmark_migration_operation.schema.json +208 -5
- package/dist/schemas/bridge_operation.output.json +2 -0
- package/dist/schemas/evaluation_operation.output.json +624 -2
- package/dist/schemas/evaluation_operation.schema.json +598 -4
- package/dist/schemas/goal_operation.schema.json +18 -10
- package/dist/schemas/index.json +1 -1
- package/dist/schemas/industry_pack_operation.output.json +86 -2
- package/dist/schemas/industry_pack_operation.schema.json +199 -0
- package/dist/schemas/intent_radar.output.json +2 -0
- package/dist/schemas/intent_radar.schema.json +1 -0
- package/dist/schemas/local_cache_operation.output.json +2 -0
- package/dist/schemas/local_history_operation.output.json +2 -0
- package/dist/schemas/local_info_operation.output.json +2 -0
- package/dist/schemas/local_mark_operation.output.json +2 -0
- package/dist/schemas/onchain_events.output.json +281 -11
- package/dist/schemas/onchain_events.schema.json +5 -1
- package/dist/schemas/onchain_operations.output.json +2 -0
- package/dist/schemas/onchain_operations.schema.json +914 -314
- package/dist/schemas/onchain_operations_allocation.schema.json +1 -1
- package/dist/schemas/onchain_operations_arbitration.schema.json +1 -1
- package/dist/schemas/onchain_operations_gen_proof.schema.json +1 -1
- package/dist/schemas/onchain_operations_guard.schema.json +660 -94
- package/dist/schemas/onchain_operations_reward.schema.json +35 -1
- package/dist/schemas/onchain_operations_service.schema.json +4 -4
- package/dist/schemas/query_toolkit.output.json +333 -0
- package/dist/tools/handlers/benchmark-migration.d.ts +5 -2
- package/dist/tools/handlers/benchmark-migration.js +1 -1
- package/dist/tools/handlers/config.js +1 -1
- package/dist/tools/handlers/evaluation.js +1 -1
- package/dist/tools/handlers/evaluation.spec.js +1 -1
- package/dist/tools/handlers/intent-radar.js +1 -1
- package/dist/tools/handlers/messenger.d.ts +1 -0
- package/dist/tools/handlers/messenger.js +1 -1
- package/dist/tools/handlers/onchain.d.ts +2 -0
- package/dist/tools/handlers/onchain.js +1 -1
- package/dist/tools/handlers/query.js +1 -1
- package/dist/tools/handlers/wip.js +1 -1
- package/dist/tools/index.js +1 -1
- package/dist/tools/registry/agent.js +1 -1
- package/dist/tools/registry/business.js +1 -1
- package/dist/tools/registry/query.js +1 -1
- package/dist/tools/wip-verify-ledger.d.ts +14 -0
- package/dist/tools/wip-verify-ledger.js +1 -0
- package/dist/tools/wrap.d.ts +4 -0
- package/dist/tools/wrap.js +1 -1
- package/package.json +7 -2
|
@@ -672,7 +672,7 @@
|
|
|
672
672
|
]
|
|
673
673
|
},
|
|
674
674
|
"restock": {
|
|
675
|
-
"description": "Refund restocking (permission 305 SERVICE_SALES). op:'flag' opts ONE live product into restock-on-refund; op:'order' puts the units a REFUNDED order purchased back on shelf. The order path is all-or-nothing: every purchased line must be flagged and still live before any unit moves (otherwise the chain aborts 46/32), so half a restock is impossible. Do NOT fake a restock with stock_add when the order carries several lines — use op:'order' so quantities come from the order itself.",
|
|
675
|
+
"description": "Refund restocking (permission 305 SERVICE_SALES). op:'flag' opts ONE live product into restock-on-refund; op:'order' puts the units a REFUNDED order purchased back on shelf. The order path is all-or-nothing: every purchased line must be flagged and still live before any unit moves (otherwise the chain aborts 46/32), so half a restock is impossible. The order path is once-per-order (replay aborts 49) and bound to THIS service (foreign order aborts 26). Do NOT fake a restock with stock_add when the order carries several lines — use op:'order' so quantities come from the order itself. DISCLOSURE: restock reopens sales — if the machine (or its template) has no refund-terminal gate, orders inside their refund window may lose refund eligibility or create fund-accounting ambiguity once restocked units are resold; confirm the machine's refund rail remains reachable after restocking.",
|
|
676
676
|
"oneOf": [
|
|
677
677
|
{
|
|
678
678
|
"type": "object",
|
|
@@ -696,7 +696,7 @@
|
|
|
696
696
|
"flagged"
|
|
697
697
|
],
|
|
698
698
|
"additionalProperties": false,
|
|
699
|
-
"description": "Opt ONE live product in/out of restock-on-refund. An unknown sale_name aborts on chain (code 32); delisting the product is the kill switch. Without the flag, the order-level restock op refuses that line (code 46)."
|
|
699
|
+
"description": "Opt ONE live product in/out of restock-on-refund. An unknown sale_name aborts on chain (code 32); delisting the product is the kill switch. Without the flag, the order-level restock op refuses that line (code 46). Flagging a SKU does not itself touch stock — the order-level op below does the restoration, and it is once-per-order per order (code 49) and bound to orders of THIS service (foreign orders abort code 26)."
|
|
700
700
|
},
|
|
701
701
|
{
|
|
702
702
|
"type": "object",
|
|
@@ -708,7 +708,7 @@
|
|
|
708
708
|
"order": {
|
|
709
709
|
"type": "string",
|
|
710
710
|
"minLength": 1,
|
|
711
|
-
"description": "Address or local name of the REFUNDED order whose purchased units go back on shelf."
|
|
711
|
+
"description": "Address or local name of the REFUNDED order whose purchased units go back on shelf. Must be an order of THIS service (a foreign order aborts code 26), and each order can be restocked exactly once — a second call for the same order aborts code 49 (no retry succeeds; the restoration is already complete)."
|
|
712
712
|
}
|
|
713
713
|
},
|
|
714
714
|
"required": [
|
|
@@ -716,7 +716,7 @@
|
|
|
716
716
|
"order"
|
|
717
717
|
],
|
|
718
718
|
"additionalProperties": false,
|
|
719
|
-
"description": "Put back the units one refunded order purchased, read from the order's own purchase lines (the caller cannot add extra units). Two-pass all-or-nothing on chain: every line must be restock-flagged and still live before the first unit moves (unflagged → code 46, delisted → code 32), so a partial restock is impossible. Emits one stock-restocked event per line."
|
|
719
|
+
"description": "Put back the units one refunded order purchased, read from the order's own purchase lines (the caller cannot add extra units). Two-pass all-or-nothing on chain: every line must be restock-flagged and still live before the first unit moves (unflagged → code 46, delisted → code 32), so a partial restock is impossible. Once-per-order (code 49 on replay) and ownership-bound (a foreign order aborts code 26); the applied state is queryable via the restock_applied read. Emits one stock-restocked event per line."
|
|
720
720
|
}
|
|
721
721
|
]
|
|
722
722
|
},
|
|
@@ -7305,7 +7305,7 @@
|
|
|
7305
7305
|
"additionalProperties": false
|
|
7306
7306
|
},
|
|
7307
7307
|
"fees_transfer": {
|
|
7308
|
-
"description": "Distribute the withdrawn arbitration fees. Moves the Arbitration's ENTIRE balance in ONE call — there is NO amount parameter. The balance leaves as a CoinWrapper owned by the target
|
|
7308
|
+
"description": "Distribute the withdrawn arbitration fees. SHAPE (exact — a malformed shape aborts on-chain with CommandArgumentError TypeMismatch, observed on testnet): 'to' is a SINGLE-KEY object with EXACTLY ONE of {allocation: '<Allocation object ID or registered name>'} or {treasury: '<Treasury object ID or registered name>'}. The value must reference an actual Allocation / Treasury OBJECT (its on-chain address or LocalMark name) — a plain wallet address, the Arb case, or the Arbitration registration object is NOT a valid target. payment_index is REQUIRED and must name an existing fee payment record in the Arb case's fees table (list the fees and their indices via onchain_operations type 'q' / onchain_table_data on the Arb case). Moves the Arbitration's ENTIRE balance pool in ONE call — there is NO amount parameter; the pool must be funded first with arb_withdraw. The balance leaves as a CoinWrapper owned by the target; for a treasury target, intake it with treasury receive: \"recently\" (permission 253) — see the 'to' field description.",
|
|
7309
7309
|
"type": "object",
|
|
7310
7310
|
"properties": {
|
|
7311
7311
|
"to": {
|
|
@@ -10973,7 +10973,7 @@
|
|
|
10973
10973
|
]
|
|
10974
10974
|
},
|
|
10975
10975
|
"guard_add": {
|
|
10976
|
-
"description": "Add Guard to Reward object. IDIOMS (F08 — these differ from Service allocation, follow THIS shape here): recipient is ONE OF {GuardIdentifier: <u8>} | {Entity: {name_or_address: 'mark'}} | {Signer: 'signer'} (string const INSIDE the key, NOT a bare string) — BUT on the REWARD claim rail the recipient MUST equal the transaction sender (chain assert, abort 14), so {Signer: 'signer'} is the canonical form and {Entity} also passes (SDK replaces it with the claimant's account at claim time); a {GuardIdentifier} recipient resolves to the submitted Order and is STRUCTURALLY UNPAYABLE (every claim aborts 14) — the tool gate rejects it (crs-mn-261015 F-12). amount is {type: 'Fixed', value: '0.1WOW'} — value accepts a display string with token symbol ('0.1WOW') or a smallest-unit integer ('100000000'), NOT the plain balance string used by allocation `sharing`. FULL EXAMPLE: [{guard: '0xabc...', recipient: {Signer: 'signer'}, amount: {type: 'Fixed', value: '0.1WOW'}}].",
|
|
10976
|
+
"description": "Add Guard to Reward object. IDIOMS (F08 — these differ from Service allocation, follow THIS shape here): recipient is ONE OF {GuardIdentifier: <u8>} | {Entity: {name_or_address: 'mark'}} | {Signer: 'signer'} (string const INSIDE the key, NOT a bare string) — BUT on the REWARD claim rail the recipient MUST equal the transaction sender (chain assert, abort 14), so {Signer: 'signer'} is the canonical form and {Entity} also passes (SDK replaces it with the claimant's account at claim time); a {GuardIdentifier} recipient resolves to the submitted Order and is STRUCTURALLY UNPAYABLE (every claim aborts 14) — the tool gate rejects it (crs-mn-261015 F-12). amount is {type: 'Fixed', value: '0.1WOW'} — value accepts a display string with token symbol ('0.1WOW') or a smallest-unit integer ('100000000'), NOT the plain balance string used by allocation `sharing`. FULL EXAMPLE: [{guard: '0xabc...', recipient: {Signer: 'signer'}, amount: {type: 'Fixed', value: '0.1WOW'}}]. OPTIONAL EVIDENCE BINDING (ksk9d2-tn-261026 F-01): an entry may carry evidence {repo, key, predicate} — a claim-time attestation pin that counts ONLY repository rows tied to THIS claim's own store_from value (the submitted order), so borrowed/foreign rows never satisfy the bounty; it requires store_from_id on the same guard (a missing pin aborts 16 at build time) and a claim whose order has no matching attestation row aborts 15.",
|
|
10977
10977
|
"type": "array",
|
|
10978
10978
|
"items": {
|
|
10979
10979
|
"type": "object",
|
|
@@ -11111,6 +11111,40 @@
|
|
|
11111
11111
|
"type": "null"
|
|
11112
11112
|
}
|
|
11113
11113
|
]
|
|
11114
|
+
},
|
|
11115
|
+
"evidence": {
|
|
11116
|
+
"description": "ksk9d2-tn-261026 F-01 claim-time attestation pin (reward::evidence_bind). REQUIRES store_from_id on the SAME guard — the binding reads THE pinned store_from row, so the chain aborts 16 (E_EVIDENCE_NEEDS_STORE_FROM) at build time without it. At claim the chain counts repository rows under (repo, key) matching the predicate for the claim's OWN store_from value (the submitted order) via the native evidence_count and aborts 15 (E_EVIDENCE_NOT_OWNED) when none — a borrowed foreign row can never pay.",
|
|
11117
|
+
"type": "object",
|
|
11118
|
+
"properties": {
|
|
11119
|
+
"repo": {
|
|
11120
|
+
"type": "string",
|
|
11121
|
+
"description": "Repository object ID or name holding the attestation rows."
|
|
11122
|
+
},
|
|
11123
|
+
"key": {
|
|
11124
|
+
"type": "array",
|
|
11125
|
+
"items": {
|
|
11126
|
+
"type": "integer",
|
|
11127
|
+
"minimum": 0,
|
|
11128
|
+
"maximum": 255
|
|
11129
|
+
},
|
|
11130
|
+
"description": "Repository data key bytes (the policy name the rows live under, e.g. UTF-8 bytes of 'rating')."
|
|
11131
|
+
},
|
|
11132
|
+
"predicate": {
|
|
11133
|
+
"type": "array",
|
|
11134
|
+
"items": {
|
|
11135
|
+
"type": "integer",
|
|
11136
|
+
"minimum": 0,
|
|
11137
|
+
"maximum": 255
|
|
11138
|
+
},
|
|
11139
|
+
"description": "BCS-encoded RepositoryDataPredicateWire bytes — the same predicate blob the repository read channel uses."
|
|
11140
|
+
}
|
|
11141
|
+
},
|
|
11142
|
+
"required": [
|
|
11143
|
+
"repo",
|
|
11144
|
+
"key",
|
|
11145
|
+
"predicate"
|
|
11146
|
+
],
|
|
11147
|
+
"additionalProperties": false
|
|
11114
11148
|
}
|
|
11115
11149
|
},
|
|
11116
11150
|
"required": [
|
|
@@ -12402,7 +12436,7 @@
|
|
|
12402
12436
|
"type": "string"
|
|
12403
12437
|
},
|
|
12404
12438
|
"acknowledge_dual_payout": {
|
|
12405
|
-
"description": "A-1 (amz9-ln-261023) explicit opt-in for a KNOWN double payout: when a submitted order already received arbitration compensation (order.claimed_by set) and this call would ALSO release its escrow (refund track), the call is REFUSED unless this flag is true. The two payout tracks are independent by design — the chain will not stop the second payout,
|
|
12439
|
+
"description": "A-1 (amz9-ln-261023) explicit opt-in for a KNOWN double payout: when a submitted order already received arbitration compensation (order.claimed_by set) and this call would ALSO release its escrow (refund track), the call is REFUSED unless this flag is true. The two payout tracks are independent by design — the chain will not net or stop the second payout (the escrow receive path has no claimed_by gate), BUT a rail paired on order.claimed_by (refund none / recover some) may guard-reject the second payout on-chain; that rejection is the designed mutual exclusion, and the escrow exits via the paired rail. Buyer NET view: total received = compensation + escrow refund. Leave unset for normal refunds of un-awarded orders.",
|
|
12406
12440
|
"type": "boolean"
|
|
12407
12441
|
},
|
|
12408
12442
|
"formula_spec_set": {
|
|
@@ -17206,7 +17240,7 @@
|
|
|
17206
17240
|
"properties": {
|
|
17207
17241
|
"type": {
|
|
17208
17242
|
"type": "string",
|
|
17209
|
-
"const": "
|
|
17243
|
+
"const": "query_repository_data_sum_where_bound"
|
|
17210
17244
|
},
|
|
17211
17245
|
"object": {
|
|
17212
17246
|
"type": "object",
|
|
@@ -17254,7 +17288,7 @@
|
|
|
17254
17288
|
"identifier"
|
|
17255
17289
|
],
|
|
17256
17290
|
"additionalProperties": false,
|
|
17257
|
-
"description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
|
|
17291
|
+
"description": "Reference to the candidate ID list (VecAddress type table entry). Each id should be an ORDER address (e.g. order-keyed contribution rows). Duplicates are deduped; max 100 candidates."
|
|
17258
17292
|
},
|
|
17259
17293
|
"where": {
|
|
17260
17294
|
"oneOf": [
|
|
@@ -17482,14 +17516,14 @@
|
|
|
17482
17516
|
"where"
|
|
17483
17517
|
],
|
|
17484
17518
|
"additionalProperties": false,
|
|
17485
|
-
"description": "Returns
|
|
17519
|
+
"description": "Returns U256. ESCROW-BOUND sum (query 1179): per-row min(row_value, order.amount of the Order the row id names); a row keyed by anything that is not an Order contributes 0 (fail-closed). Unlike query_repository_data_sum_where (self-reported row values), a record cannot claim more than the Order actually escrowed — the forgery-proof aggregate for threshold gates and Formula pricing. Use logic_as_u256_* to compare the sum."
|
|
17486
17520
|
},
|
|
17487
17521
|
{
|
|
17488
17522
|
"type": "object",
|
|
17489
17523
|
"properties": {
|
|
17490
17524
|
"type": {
|
|
17491
17525
|
"type": "string",
|
|
17492
|
-
"const": "
|
|
17526
|
+
"const": "query_repository_data_find_where"
|
|
17493
17527
|
},
|
|
17494
17528
|
"object": {
|
|
17495
17529
|
"type": "object",
|
|
@@ -17507,7 +17541,7 @@
|
|
|
17507
17541
|
"additionalProperties": false,
|
|
17508
17542
|
"description": "Reference to the Repository object in the Guard table (must be Address type)."
|
|
17509
17543
|
},
|
|
17510
|
-
"
|
|
17544
|
+
"key": {
|
|
17511
17545
|
"type": "object",
|
|
17512
17546
|
"properties": {
|
|
17513
17547
|
"identifier": {
|
|
@@ -17521,7 +17555,23 @@
|
|
|
17521
17555
|
"identifier"
|
|
17522
17556
|
],
|
|
17523
17557
|
"additionalProperties": false,
|
|
17524
|
-
"description": "Reference to the
|
|
17558
|
+
"description": "Reference to the policy key (String type table entry) whose data table is scanned."
|
|
17559
|
+
},
|
|
17560
|
+
"ids": {
|
|
17561
|
+
"type": "object",
|
|
17562
|
+
"properties": {
|
|
17563
|
+
"identifier": {
|
|
17564
|
+
"type": "integer",
|
|
17565
|
+
"minimum": 0,
|
|
17566
|
+
"maximum": 255,
|
|
17567
|
+
"description": "Identifier (0-255) for data lookup in Guard table. Slot consensus (enforced on-chain at guard table construction): 0-220 = user slots (free for business guards); 221-253 = PROTOCOL-RESERVED (rejected on-chain — reserved so future protocol features get fixed slots without colliding with published guards); 255 = ONCE replay-protection slot on Allocation (byte-keyed, the submitted bytes are the once-key — use for per-period keys like period-<N>); 254 = ONCE-FOR-OBJECT slot on Allocation (chain-derived key = bcs(the Allocation's payment_info.for_object); the submitted bytes are ignored and the submission only arms the slot — use for one-shot per-order rails such as full refunds). SLOT 0 SEMANTICS: slot 0 carries the transacted Order address by convention. As a submission slot it is legal on order/allocation/machine rails (the order exists when those verify), but FORBIDDEN on a Service buy_guard — the order does not exist when the buy-time passport is verified, so the mount is refused (service abort 43)."
|
|
17568
|
+
}
|
|
17569
|
+
},
|
|
17570
|
+
"required": [
|
|
17571
|
+
"identifier"
|
|
17572
|
+
],
|
|
17573
|
+
"additionalProperties": false,
|
|
17574
|
+
"description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
|
|
17525
17575
|
},
|
|
17526
17576
|
"where": {
|
|
17527
17577
|
"oneOf": [
|
|
@@ -17738,24 +17788,25 @@
|
|
|
17738
17788
|
"additionalProperties": false
|
|
17739
17789
|
}
|
|
17740
17790
|
],
|
|
17741
|
-
"description": "Predicate filter applied to
|
|
17791
|
+
"description": "Predicate filter applied to each candidate's data value."
|
|
17742
17792
|
}
|
|
17743
17793
|
},
|
|
17744
17794
|
"required": [
|
|
17745
17795
|
"type",
|
|
17746
17796
|
"object",
|
|
17747
|
-
"
|
|
17797
|
+
"key",
|
|
17798
|
+
"ids",
|
|
17748
17799
|
"where"
|
|
17749
17800
|
],
|
|
17750
17801
|
"additionalProperties": false,
|
|
17751
|
-
"description": "Returns
|
|
17802
|
+
"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)."
|
|
17752
17803
|
},
|
|
17753
17804
|
{
|
|
17754
17805
|
"type": "object",
|
|
17755
17806
|
"properties": {
|
|
17756
17807
|
"type": {
|
|
17757
17808
|
"type": "string",
|
|
17758
|
-
"const": "
|
|
17809
|
+
"const": "query_repository_data_keys_where"
|
|
17759
17810
|
},
|
|
17760
17811
|
"object": {
|
|
17761
17812
|
"type": "object",
|
|
@@ -17772,208 +17823,474 @@
|
|
|
17772
17823
|
],
|
|
17773
17824
|
"additionalProperties": false,
|
|
17774
17825
|
"description": "Reference to the Repository object in the Guard table (must be Address type)."
|
|
17775
|
-
}
|
|
17776
|
-
|
|
17777
|
-
|
|
17778
|
-
|
|
17779
|
-
|
|
17780
|
-
|
|
17781
|
-
|
|
17782
|
-
|
|
17783
|
-
|
|
17784
|
-
|
|
17785
|
-
|
|
17786
|
-
|
|
17787
|
-
|
|
17788
|
-
|
|
17789
|
-
|
|
17790
|
-
|
|
17791
|
-
|
|
17792
|
-
|
|
17793
|
-
|
|
17794
|
-
|
|
17795
|
-
|
|
17796
|
-
|
|
17797
|
-
|
|
17798
|
-
|
|
17799
|
-
|
|
17800
|
-
|
|
17801
|
-
|
|
17802
|
-
|
|
17803
|
-
|
|
17804
|
-
|
|
17805
|
-
|
|
17806
|
-
|
|
17807
|
-
|
|
17808
|
-
|
|
17809
|
-
|
|
17810
|
-
|
|
17811
|
-
|
|
17812
|
-
|
|
17813
|
-
|
|
17814
|
-
|
|
17815
|
-
|
|
17816
|
-
|
|
17817
|
-
|
|
17818
|
-
|
|
17819
|
-
|
|
17820
|
-
|
|
17821
|
-
|
|
17822
|
-
|
|
17823
|
-
|
|
17824
|
-
|
|
17825
|
-
|
|
17826
|
-
|
|
17827
|
-
|
|
17828
|
-
|
|
17829
|
-
|
|
17830
|
-
|
|
17831
|
-
|
|
17832
|
-
|
|
17833
|
-
|
|
17834
|
-
|
|
17835
|
-
|
|
17836
|
-
|
|
17837
|
-
|
|
17838
|
-
|
|
17839
|
-
|
|
17840
|
-
|
|
17841
|
-
|
|
17842
|
-
|
|
17843
|
-
|
|
17844
|
-
|
|
17845
|
-
|
|
17846
|
-
|
|
17847
|
-
|
|
17848
|
-
|
|
17849
|
-
|
|
17850
|
-
|
|
17851
|
-
|
|
17852
|
-
|
|
17853
|
-
|
|
17854
|
-
|
|
17855
|
-
|
|
17856
|
-
|
|
17857
|
-
|
|
17858
|
-
|
|
17859
|
-
|
|
17860
|
-
|
|
17861
|
-
|
|
17862
|
-
|
|
17863
|
-
|
|
17864
|
-
|
|
17865
|
-
|
|
17866
|
-
|
|
17867
|
-
|
|
17868
|
-
|
|
17869
|
-
|
|
17870
|
-
|
|
17871
|
-
|
|
17872
|
-
|
|
17873
|
-
|
|
17874
|
-
|
|
17875
|
-
|
|
17876
|
-
|
|
17877
|
-
|
|
17878
|
-
|
|
17879
|
-
|
|
17880
|
-
|
|
17881
|
-
|
|
17882
|
-
|
|
17883
|
-
|
|
17884
|
-
|
|
17885
|
-
|
|
17886
|
-
|
|
17887
|
-
|
|
17888
|
-
|
|
17889
|
-
|
|
17890
|
-
|
|
17891
|
-
|
|
17892
|
-
|
|
17893
|
-
|
|
17894
|
-
|
|
17895
|
-
|
|
17896
|
-
|
|
17897
|
-
|
|
17898
|
-
|
|
17899
|
-
|
|
17900
|
-
|
|
17901
|
-
|
|
17902
|
-
|
|
17903
|
-
|
|
17904
|
-
|
|
17905
|
-
|
|
17906
|
-
|
|
17907
|
-
|
|
17908
|
-
|
|
17909
|
-
|
|
17910
|
-
|
|
17911
|
-
|
|
17912
|
-
|
|
17913
|
-
|
|
17914
|
-
|
|
17915
|
-
|
|
17916
|
-
|
|
17917
|
-
|
|
17918
|
-
|
|
17919
|
-
|
|
17920
|
-
|
|
17921
|
-
|
|
17922
|
-
|
|
17923
|
-
|
|
17924
|
-
|
|
17925
|
-
|
|
17926
|
-
|
|
17927
|
-
|
|
17928
|
-
|
|
17929
|
-
|
|
17930
|
-
|
|
17931
|
-
|
|
17932
|
-
|
|
17933
|
-
|
|
17934
|
-
|
|
17935
|
-
|
|
17936
|
-
|
|
17937
|
-
|
|
17938
|
-
|
|
17939
|
-
|
|
17940
|
-
|
|
17941
|
-
|
|
17942
|
-
|
|
17943
|
-
|
|
17944
|
-
|
|
17945
|
-
|
|
17946
|
-
|
|
17947
|
-
|
|
17948
|
-
|
|
17949
|
-
|
|
17950
|
-
|
|
17951
|
-
|
|
17952
|
-
|
|
17953
|
-
|
|
17954
|
-
|
|
17955
|
-
|
|
17956
|
-
|
|
17957
|
-
|
|
17958
|
-
|
|
17959
|
-
|
|
17960
|
-
|
|
17961
|
-
|
|
17962
|
-
|
|
17963
|
-
|
|
17964
|
-
|
|
17965
|
-
|
|
17966
|
-
|
|
17967
|
-
|
|
17968
|
-
|
|
17969
|
-
|
|
17970
|
-
|
|
17971
|
-
|
|
17972
|
-
|
|
17973
|
-
|
|
17974
|
-
|
|
17975
|
-
|
|
17976
|
-
|
|
17826
|
+
},
|
|
17827
|
+
"id": {
|
|
17828
|
+
"type": "object",
|
|
17829
|
+
"properties": {
|
|
17830
|
+
"identifier": {
|
|
17831
|
+
"type": "integer",
|
|
17832
|
+
"minimum": 0,
|
|
17833
|
+
"maximum": 255,
|
|
17834
|
+
"description": "Identifier (0-255) for data lookup in Guard table. Slot consensus (enforced on-chain at guard table construction): 0-220 = user slots (free for business guards); 221-253 = PROTOCOL-RESERVED (rejected on-chain — reserved so future protocol features get fixed slots without colliding with published guards); 255 = ONCE replay-protection slot on Allocation (byte-keyed, the submitted bytes are the once-key — use for per-period keys like period-<N>); 254 = ONCE-FOR-OBJECT slot on Allocation (chain-derived key = bcs(the Allocation's payment_info.for_object); the submitted bytes are ignored and the submission only arms the slot — use for one-shot per-order rails such as full refunds). SLOT 0 SEMANTICS: slot 0 carries the transacted Order address by convention. As a submission slot it is legal on order/allocation/machine rails (the order exists when those verify), but FORBIDDEN on a Service buy_guard — the order does not exist when the buy-time passport is verified, so the mount is refused (service abort 43)."
|
|
17835
|
+
}
|
|
17836
|
+
},
|
|
17837
|
+
"required": [
|
|
17838
|
+
"identifier"
|
|
17839
|
+
],
|
|
17840
|
+
"additionalProperties": false,
|
|
17841
|
+
"description": "Reference to the single candidate ID (Address type table entry) to probe across policies."
|
|
17842
|
+
},
|
|
17843
|
+
"where": {
|
|
17844
|
+
"oneOf": [
|
|
17845
|
+
{
|
|
17846
|
+
"type": "object",
|
|
17847
|
+
"properties": {
|
|
17848
|
+
"kind": {
|
|
17849
|
+
"type": "string",
|
|
17850
|
+
"const": "range"
|
|
17851
|
+
},
|
|
17852
|
+
"valueMin": {
|
|
17853
|
+
"description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
|
|
17854
|
+
"type": "string"
|
|
17855
|
+
},
|
|
17856
|
+
"valueMax": {
|
|
17857
|
+
"description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
|
|
17858
|
+
"type": "string"
|
|
17859
|
+
},
|
|
17860
|
+
"minInclusive": {
|
|
17861
|
+
"description": "Default true. false makes the lower bound exclusive.",
|
|
17862
|
+
"type": "boolean"
|
|
17863
|
+
},
|
|
17864
|
+
"maxInclusive": {
|
|
17865
|
+
"description": "Default true. false makes the upper bound exclusive.",
|
|
17866
|
+
"type": "boolean"
|
|
17867
|
+
}
|
|
17868
|
+
},
|
|
17869
|
+
"required": [
|
|
17870
|
+
"kind"
|
|
17871
|
+
],
|
|
17872
|
+
"additionalProperties": false,
|
|
17873
|
+
"description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
|
|
17874
|
+
},
|
|
17875
|
+
{
|
|
17876
|
+
"type": "object",
|
|
17877
|
+
"properties": {
|
|
17878
|
+
"kind": {
|
|
17879
|
+
"type": "string",
|
|
17880
|
+
"const": "numEq"
|
|
17881
|
+
},
|
|
17882
|
+
"value": {
|
|
17883
|
+
"type": "string",
|
|
17884
|
+
"description": "Exact numeric match. Plain number string (U256 semantics)."
|
|
17885
|
+
}
|
|
17886
|
+
},
|
|
17887
|
+
"required": [
|
|
17888
|
+
"kind",
|
|
17889
|
+
"value"
|
|
17890
|
+
],
|
|
17891
|
+
"additionalProperties": false
|
|
17892
|
+
},
|
|
17893
|
+
{
|
|
17894
|
+
"type": "object",
|
|
17895
|
+
"properties": {
|
|
17896
|
+
"kind": {
|
|
17897
|
+
"type": "string",
|
|
17898
|
+
"const": "gt"
|
|
17899
|
+
},
|
|
17900
|
+
"value": {
|
|
17901
|
+
"type": "string",
|
|
17902
|
+
"description": "Greater than. Plain number string (U256 semantics)."
|
|
17903
|
+
}
|
|
17904
|
+
},
|
|
17905
|
+
"required": [
|
|
17906
|
+
"kind",
|
|
17907
|
+
"value"
|
|
17908
|
+
],
|
|
17909
|
+
"additionalProperties": false
|
|
17910
|
+
},
|
|
17911
|
+
{
|
|
17912
|
+
"type": "object",
|
|
17913
|
+
"properties": {
|
|
17914
|
+
"kind": {
|
|
17915
|
+
"type": "string",
|
|
17916
|
+
"const": "gte"
|
|
17917
|
+
},
|
|
17918
|
+
"value": {
|
|
17919
|
+
"type": "string",
|
|
17920
|
+
"description": "Greater than or equal. Plain number string (U256 semantics)."
|
|
17921
|
+
}
|
|
17922
|
+
},
|
|
17923
|
+
"required": [
|
|
17924
|
+
"kind",
|
|
17925
|
+
"value"
|
|
17926
|
+
],
|
|
17927
|
+
"additionalProperties": false
|
|
17928
|
+
},
|
|
17929
|
+
{
|
|
17930
|
+
"type": "object",
|
|
17931
|
+
"properties": {
|
|
17932
|
+
"kind": {
|
|
17933
|
+
"type": "string",
|
|
17934
|
+
"const": "lt"
|
|
17935
|
+
},
|
|
17936
|
+
"value": {
|
|
17937
|
+
"type": "string",
|
|
17938
|
+
"description": "Less than. Plain number string (U256 semantics)."
|
|
17939
|
+
}
|
|
17940
|
+
},
|
|
17941
|
+
"required": [
|
|
17942
|
+
"kind",
|
|
17943
|
+
"value"
|
|
17944
|
+
],
|
|
17945
|
+
"additionalProperties": false
|
|
17946
|
+
},
|
|
17947
|
+
{
|
|
17948
|
+
"type": "object",
|
|
17949
|
+
"properties": {
|
|
17950
|
+
"kind": {
|
|
17951
|
+
"type": "string",
|
|
17952
|
+
"const": "lte"
|
|
17953
|
+
},
|
|
17954
|
+
"value": {
|
|
17955
|
+
"type": "string",
|
|
17956
|
+
"description": "Less than or equal. Plain number string (U256 semantics)."
|
|
17957
|
+
}
|
|
17958
|
+
},
|
|
17959
|
+
"required": [
|
|
17960
|
+
"kind",
|
|
17961
|
+
"value"
|
|
17962
|
+
],
|
|
17963
|
+
"additionalProperties": false
|
|
17964
|
+
},
|
|
17965
|
+
{
|
|
17966
|
+
"type": "object",
|
|
17967
|
+
"properties": {
|
|
17968
|
+
"kind": {
|
|
17969
|
+
"type": "string",
|
|
17970
|
+
"const": "addressEq"
|
|
17971
|
+
},
|
|
17972
|
+
"identifier": {
|
|
17973
|
+
"type": "integer",
|
|
17974
|
+
"minimum": 0,
|
|
17975
|
+
"maximum": 255,
|
|
17976
|
+
"description": "Identifier of the Address-type table entry to compare against."
|
|
17977
|
+
}
|
|
17978
|
+
},
|
|
17979
|
+
"required": [
|
|
17980
|
+
"kind",
|
|
17981
|
+
"identifier"
|
|
17982
|
+
],
|
|
17983
|
+
"additionalProperties": false
|
|
17984
|
+
},
|
|
17985
|
+
{
|
|
17986
|
+
"type": "object",
|
|
17987
|
+
"properties": {
|
|
17988
|
+
"kind": {
|
|
17989
|
+
"type": "string",
|
|
17990
|
+
"const": "stringEq"
|
|
17991
|
+
},
|
|
17992
|
+
"value": {
|
|
17993
|
+
"type": "string",
|
|
17994
|
+
"description": "Exact string match (byte equality, UTF-8)."
|
|
17995
|
+
}
|
|
17996
|
+
},
|
|
17997
|
+
"required": [
|
|
17998
|
+
"kind",
|
|
17999
|
+
"value"
|
|
18000
|
+
],
|
|
18001
|
+
"additionalProperties": false
|
|
18002
|
+
},
|
|
18003
|
+
{
|
|
18004
|
+
"type": "object",
|
|
18005
|
+
"properties": {
|
|
18006
|
+
"kind": {
|
|
18007
|
+
"type": "string",
|
|
18008
|
+
"const": "stringContains"
|
|
18009
|
+
},
|
|
18010
|
+
"value": {
|
|
18011
|
+
"type": "string",
|
|
18012
|
+
"description": "Substring match, case-sensitive."
|
|
18013
|
+
}
|
|
18014
|
+
},
|
|
18015
|
+
"required": [
|
|
18016
|
+
"kind",
|
|
18017
|
+
"value"
|
|
18018
|
+
],
|
|
18019
|
+
"additionalProperties": false
|
|
18020
|
+
},
|
|
18021
|
+
{
|
|
18022
|
+
"type": "object",
|
|
18023
|
+
"properties": {
|
|
18024
|
+
"kind": {
|
|
18025
|
+
"type": "string",
|
|
18026
|
+
"const": "stringNoCaseContains"
|
|
18027
|
+
},
|
|
18028
|
+
"value": {
|
|
18029
|
+
"type": "string",
|
|
18030
|
+
"description": "Substring match, case-insensitive."
|
|
18031
|
+
}
|
|
18032
|
+
},
|
|
18033
|
+
"required": [
|
|
18034
|
+
"kind",
|
|
18035
|
+
"value"
|
|
18036
|
+
],
|
|
18037
|
+
"additionalProperties": false
|
|
18038
|
+
},
|
|
18039
|
+
{
|
|
18040
|
+
"type": "object",
|
|
18041
|
+
"properties": {
|
|
18042
|
+
"kind": {
|
|
18043
|
+
"type": "string",
|
|
18044
|
+
"const": "boolEq"
|
|
18045
|
+
},
|
|
18046
|
+
"value": {
|
|
18047
|
+
"type": "boolean",
|
|
18048
|
+
"description": "Boolean equality."
|
|
18049
|
+
}
|
|
18050
|
+
},
|
|
18051
|
+
"required": [
|
|
18052
|
+
"kind",
|
|
18053
|
+
"value"
|
|
18054
|
+
],
|
|
18055
|
+
"additionalProperties": false
|
|
18056
|
+
}
|
|
18057
|
+
],
|
|
18058
|
+
"description": "Predicate filter applied to the value stored under each policy key for this ID."
|
|
18059
|
+
}
|
|
18060
|
+
},
|
|
18061
|
+
"required": [
|
|
18062
|
+
"type",
|
|
18063
|
+
"object",
|
|
18064
|
+
"id",
|
|
18065
|
+
"where"
|
|
18066
|
+
],
|
|
18067
|
+
"additionalProperties": false,
|
|
18068
|
+
"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)."
|
|
18069
|
+
},
|
|
18070
|
+
{
|
|
18071
|
+
"type": "object",
|
|
18072
|
+
"properties": {
|
|
18073
|
+
"type": {
|
|
18074
|
+
"type": "string",
|
|
18075
|
+
"const": "query_repository_policies_keys"
|
|
18076
|
+
},
|
|
18077
|
+
"object": {
|
|
18078
|
+
"type": "object",
|
|
18079
|
+
"properties": {
|
|
18080
|
+
"identifier": {
|
|
18081
|
+
"type": "integer",
|
|
18082
|
+
"minimum": 0,
|
|
18083
|
+
"maximum": 255,
|
|
18084
|
+
"description": "Identifier (0-255) for data lookup in Guard table. Slot consensus (enforced on-chain at guard table construction): 0-220 = user slots (free for business guards); 221-253 = PROTOCOL-RESERVED (rejected on-chain — reserved so future protocol features get fixed slots without colliding with published guards); 255 = ONCE replay-protection slot on Allocation (byte-keyed, the submitted bytes are the once-key — use for per-period keys like period-<N>); 254 = ONCE-FOR-OBJECT slot on Allocation (chain-derived key = bcs(the Allocation's payment_info.for_object); the submitted bytes are ignored and the submission only arms the slot — use for one-shot per-order rails such as full refunds). SLOT 0 SEMANTICS: slot 0 carries the transacted Order address by convention. As a submission slot it is legal on order/allocation/machine rails (the order exists when those verify), but FORBIDDEN on a Service buy_guard — the order does not exist when the buy-time passport is verified, so the mount is refused (service abort 43)."
|
|
18085
|
+
}
|
|
18086
|
+
},
|
|
18087
|
+
"required": [
|
|
18088
|
+
"identifier"
|
|
18089
|
+
],
|
|
18090
|
+
"additionalProperties": false,
|
|
18091
|
+
"description": "Reference to the Repository object in the Guard table (must be Address type)."
|
|
18092
|
+
}
|
|
18093
|
+
},
|
|
18094
|
+
"required": [
|
|
18095
|
+
"type",
|
|
18096
|
+
"object"
|
|
18097
|
+
],
|
|
18098
|
+
"additionalProperties": false,
|
|
18099
|
+
"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."
|
|
18100
|
+
}
|
|
18101
|
+
],
|
|
18102
|
+
"$ref": "#/definitions/__schema2"
|
|
18103
|
+
},
|
|
18104
|
+
{
|
|
18105
|
+
"type": "object",
|
|
18106
|
+
"properties": {
|
|
18107
|
+
"type": {
|
|
18108
|
+
"type": "string",
|
|
18109
|
+
"const": "file"
|
|
18110
|
+
},
|
|
18111
|
+
"file_path": {
|
|
18112
|
+
"type": "string",
|
|
18113
|
+
"description": "ABSOLUTE path to JSON or Markdown file containing Guard definition. Field name is `file_path` (NOT `file`). File can define: namedNew, description, table, root, rely."
|
|
18114
|
+
},
|
|
18115
|
+
"format": {
|
|
18116
|
+
"default": "json",
|
|
18117
|
+
"description": "File format: 'json' or 'markdown'. Default is 'json'.",
|
|
18118
|
+
"type": "string",
|
|
18119
|
+
"enum": [
|
|
18120
|
+
"json",
|
|
18121
|
+
"markdown"
|
|
18122
|
+
]
|
|
18123
|
+
}
|
|
18124
|
+
},
|
|
18125
|
+
"required": [
|
|
18126
|
+
"type",
|
|
18127
|
+
"file_path",
|
|
18128
|
+
"format"
|
|
18129
|
+
],
|
|
18130
|
+
"additionalProperties": false
|
|
18131
|
+
}
|
|
18132
|
+
],
|
|
18133
|
+
"description": "Root definition: either a direct GuardNode (must be a logical operation returning Bool) or a file reference (type='file'). When type='file', the file can define all Guard fields (namedNew, description, table, root, rely), and schema fields override file content."
|
|
18134
|
+
},
|
|
18135
|
+
"rely": {
|
|
18136
|
+
"description": "All Guard objects that the new Guard object depends on. If logic_or is true, the execution result of the new Guard object is the logical OR of the execution results of all dependent Guard objects; otherwise, it is logical AND. When using root.type='file', this field OVERRIDES rely in the file.",
|
|
18137
|
+
"type": "object",
|
|
18138
|
+
"properties": {
|
|
18139
|
+
"guards": {
|
|
18140
|
+
"type": "array",
|
|
18141
|
+
"items": {
|
|
18142
|
+
"type": "string",
|
|
18143
|
+
"description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters)."
|
|
18144
|
+
},
|
|
18145
|
+
"description": "List of dependent Guard object IDs or names."
|
|
18146
|
+
},
|
|
18147
|
+
"logic_or": {
|
|
18148
|
+
"description": "Whether to use logical OR operator.",
|
|
18149
|
+
"type": "boolean"
|
|
18150
|
+
}
|
|
18151
|
+
},
|
|
18152
|
+
"required": [
|
|
18153
|
+
"guards"
|
|
18154
|
+
],
|
|
18155
|
+
"additionalProperties": false
|
|
18156
|
+
},
|
|
18157
|
+
"binding_hint": {
|
|
18158
|
+
"description": "Phase 5 Guard capability hint. Provides semantic context (action + host_object + binding_field + optional rule/failure_conditions) for puzzle derivation. When provided, the response will include complete guard_advice (puzzle_status, matched_scene, suggested_patterns, confirmation_text, pending_questions). When absent, puzzle_status intent/binding dimensions are marked incomplete.",
|
|
18159
|
+
"type": "object",
|
|
18160
|
+
"properties": {
|
|
18161
|
+
"action": {
|
|
18162
|
+
"type": "string",
|
|
18163
|
+
"enum": [
|
|
18164
|
+
"buy",
|
|
18165
|
+
"forward",
|
|
18166
|
+
"allocate",
|
|
18167
|
+
"claim_reward",
|
|
18168
|
+
"vote",
|
|
18169
|
+
"dispute",
|
|
18170
|
+
"write_repository",
|
|
18171
|
+
"submit_progress",
|
|
18172
|
+
"gen_passport",
|
|
18173
|
+
"custom"
|
|
18174
|
+
],
|
|
18175
|
+
"description": "Protected action type. Example: 'buy' for Service buy_guard, 'forward' for Machine Forward.guard."
|
|
18176
|
+
},
|
|
18177
|
+
"host_object": {
|
|
18178
|
+
"type": "string",
|
|
18179
|
+
"enum": [
|
|
18180
|
+
"Service",
|
|
18181
|
+
"Machine",
|
|
18182
|
+
"Arbitration",
|
|
18183
|
+
"Reward",
|
|
18184
|
+
"Repository",
|
|
18185
|
+
"Progress",
|
|
18186
|
+
"Demand",
|
|
18187
|
+
"Standalone"
|
|
18188
|
+
],
|
|
18189
|
+
"description": "Host object type. Example: 'Service', 'Machine'."
|
|
18190
|
+
},
|
|
18191
|
+
"binding_field": {
|
|
18192
|
+
"type": "string",
|
|
18193
|
+
"enum": [
|
|
18194
|
+
"buy_guard",
|
|
18195
|
+
"order_allocators",
|
|
18196
|
+
"Forward.guard",
|
|
18197
|
+
"submission",
|
|
18198
|
+
"guard",
|
|
18199
|
+
"write_guard",
|
|
18200
|
+
"usage_guard",
|
|
18201
|
+
"voting_guard",
|
|
18202
|
+
"ServiceGuard",
|
|
18203
|
+
"none"
|
|
18204
|
+
],
|
|
18205
|
+
"description": "Binding field. Example: 'buy_guard', 'Forward.guard'."
|
|
18206
|
+
},
|
|
18207
|
+
"rule_sentence": {
|
|
18208
|
+
"description": "One-sentence description of the validation rule (human-readable). Example: 'Only the author can purchase this service'.",
|
|
18209
|
+
"type": "string"
|
|
18210
|
+
},
|
|
18211
|
+
"failure_conditions": {
|
|
18212
|
+
"description": "List of conditions under which the Guard should FAIL. Example: ['Signer is not in allowlist','Order is already completed'].",
|
|
18213
|
+
"type": "array",
|
|
18214
|
+
"items": {
|
|
18215
|
+
"type": "string"
|
|
18216
|
+
}
|
|
18217
|
+
},
|
|
18218
|
+
"circular_reference": {
|
|
18219
|
+
"description": "Whether the Guard references the Host Object itself (circular reference pattern). true=Guard queries the Host Object it binds to.",
|
|
18220
|
+
"type": "boolean"
|
|
18221
|
+
}
|
|
18222
|
+
},
|
|
18223
|
+
"required": [
|
|
18224
|
+
"action",
|
|
18225
|
+
"host_object",
|
|
18226
|
+
"binding_field"
|
|
18227
|
+
],
|
|
18228
|
+
"additionalProperties": false
|
|
18229
|
+
}
|
|
18230
|
+
},
|
|
18231
|
+
"required": [
|
|
18232
|
+
"root"
|
|
18233
|
+
],
|
|
18234
|
+
"additionalProperties": false,
|
|
18235
|
+
"description": "On-chain Guard creation. IMPORTANT: All defined data (include all submitted data) must be defined in the 'table' field. USAGE: Set 'namedNew' field with {name, tags?, onChain?} to name the new Guard (you may also use 'object' as an alias for 'namedNew' — the MCP preprocess will convert it automatically). The Guard is immutable once created. Define the validation logic in 'root' field. When root.type='file', the file can contain all Guard fields, and any fields defined in the schema will OVERRIDE the file content."
|
|
18236
|
+
},
|
|
18237
|
+
"env": {
|
|
18238
|
+
"type": "object",
|
|
18239
|
+
"properties": {
|
|
18240
|
+
"account": {
|
|
18241
|
+
"default": "",
|
|
18242
|
+
"type": "string",
|
|
18243
|
+
"description": "Account/Object name or ID. If specifying an account, use empty string '' for the default account. If it starts with '0x', it will be treated as an ID. Otherwise, it will be treated as a name (max 64 bcs characters)."
|
|
18244
|
+
},
|
|
18245
|
+
"permission_guard": {
|
|
18246
|
+
"description": "List of permission guard IDs. Used to extend additional operation permissions (requires verification and configuration in the Permission object).",
|
|
18247
|
+
"type": "array",
|
|
18248
|
+
"items": {
|
|
18249
|
+
"type": "string"
|
|
18250
|
+
}
|
|
18251
|
+
},
|
|
18252
|
+
"no_cache": {
|
|
18253
|
+
"description": "Whether to disable caching.",
|
|
18254
|
+
"type": "boolean"
|
|
18255
|
+
},
|
|
18256
|
+
"network": {
|
|
18257
|
+
"description": "Omit in client/chat contexts — the runtime stamps the user's CURRENT network (the client's UI selection). Standalone MCP/CLI: omit to use the current network; set ONLY when the user explicitly names a different network (a mismatch pauses for user confirmation). Never guess or hardcode a network.",
|
|
18258
|
+
"type": "string",
|
|
18259
|
+
"enum": [
|
|
18260
|
+
"localnet",
|
|
18261
|
+
"testnet",
|
|
18262
|
+
"mainnet"
|
|
18263
|
+
]
|
|
18264
|
+
},
|
|
18265
|
+
"referrer": {
|
|
18266
|
+
"description": "Referrer ID. If the user is using the network for the first time, the referrer ID will be recorded (also applied when the SDK auto-registers the sender in the global Entity table).",
|
|
18267
|
+
"type": "string"
|
|
18268
|
+
},
|
|
18269
|
+
"no_auto_register": {
|
|
18270
|
+
"description": "Opt-out of SDK-level Entity auto-registration. By default, a business transaction whose sender has no entry in the global Entity table automatically appends an entity registration: the sender gets registered and receives an owned Resource object (their on-chain mark book) in the wallet. Set true ONLY when the user explicitly cancelled their entity registration or demands that the transaction not touch the Entity table.",
|
|
18271
|
+
"type": "boolean"
|
|
18272
|
+
},
|
|
18273
|
+
"confirmed": {
|
|
18274
|
+
"description": "Phase 2 ConfirmGate: set to true to proceed after a 'pending_confirmation' result. The operation is NOT executed until you re-call with confirmed=true after user consent.",
|
|
18275
|
+
"type": "boolean"
|
|
18276
|
+
},
|
|
18277
|
+
"user_intent_phrases": {
|
|
18278
|
+
"description": "Phase 2 ConfirmGate: explicit user intent phrases collected from conversation context (e.g. 'use default account', 'force publish'). Used to bypass confirmation rules whose bypass_on_explicit_intent matches.",
|
|
18279
|
+
"type": "array",
|
|
18280
|
+
"items": {
|
|
18281
|
+
"type": "string"
|
|
18282
|
+
}
|
|
18283
|
+
},
|
|
18284
|
+
"plan_approval": {
|
|
18285
|
+
"description": "K3 24 PlanApproval: id of a goal whose plan was approved via goal_operation action='approve'. When set: 1) the ConfirmGate treats fail-open rules (standard/none levels) as pre-approved for operations under this goal's plan; 2) after successful CREATION operations, the created objects are auto-registered into the goal (GoalRecord.objects + its TaskProcess manifest — ACT station 'execution registers'). Fail-closed levels (irreversible/publish/amount) still require per-operation confirmation with env.confirmed=true.",
|
|
18286
|
+
"type": "string"
|
|
18287
|
+
},
|
|
18288
|
+
"client_schema_version": {
|
|
18289
|
+
"description": "Client-side schema version (semver, e.g. '1.0.0'). When provided, the server checks compatibility and attaches warnings if mismatched.",
|
|
18290
|
+
"type": "string"
|
|
18291
|
+
},
|
|
18292
|
+
"schema_strict_mode": {
|
|
18293
|
+
"default": false,
|
|
17977
18294
|
"description": "When true, schema incompatibility returns an error instead of a warning. Default: false (warn mode).",
|
|
17978
18295
|
"type": "boolean"
|
|
17979
18296
|
},
|
|
@@ -22839,7 +23156,7 @@
|
|
|
22839
23156
|
]
|
|
22840
23157
|
},
|
|
22841
23158
|
"about_address": {
|
|
22842
|
-
"description": "About binding (K3 contract): ONLY the counterparty ACCOUNT address (address first byte = account type) or a Proof object address (first byte = Proof type) — a messenger contact record. NEVER a business object (Progress/Order/Arb) and never a guard decision condition. Accepts null/undefined (→ Move Option::none). When provided, must be a raw 0x-prefixed address (NOT a name).",
|
|
23159
|
+
"description": "About binding (K3 contract): ONLY the counterparty ACCOUNT address (address first byte = account type) or a Proof object address (first byte = Proof type) — a messenger contact record. NEVER a business object (Progress/Order/Arb) and never a guard decision condition. ONE EXCEPTION (bstn-tn-261024 F-30, live-proven): a Proof intended for order.required_info_bind MUST carry about = the ORDER's own address, with the Proof creator = the order owner (the owner-signed contact/attn proof the bind entry demands; the messenger-contact restriction does not apply to that flow). Accepts null/undefined (→ Move Option::none). When provided, must be a raw 0x-prefixed address (NOT a name).",
|
|
22843
23160
|
"anyOf": [
|
|
22844
23161
|
{
|
|
22845
23162
|
"type": "string",
|
|
@@ -25251,117 +25568,400 @@
|
|
|
25251
25568
|
"description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
|
|
25252
25569
|
"allOf": [
|
|
25253
25570
|
{
|
|
25254
|
-
"$ref": "#/definitions/__schema3"
|
|
25255
|
-
}
|
|
25256
|
-
],
|
|
25257
|
-
"$ref": "#/definitions/__schema2"
|
|
25258
|
-
},
|
|
25259
|
-
"sessionIdx": {
|
|
25260
|
-
"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.",
|
|
25261
|
-
"allOf": [
|
|
25571
|
+
"$ref": "#/definitions/__schema3"
|
|
25572
|
+
}
|
|
25573
|
+
],
|
|
25574
|
+
"$ref": "#/definitions/__schema2"
|
|
25575
|
+
},
|
|
25576
|
+
"sessionIdx": {
|
|
25577
|
+
"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.",
|
|
25578
|
+
"allOf": [
|
|
25579
|
+
{
|
|
25580
|
+
"$ref": "#/definitions/__schema3"
|
|
25581
|
+
}
|
|
25582
|
+
],
|
|
25583
|
+
"$ref": "#/definitions/__schema2"
|
|
25584
|
+
},
|
|
25585
|
+
"forwardIdx": {
|
|
25586
|
+
"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.",
|
|
25587
|
+
"allOf": [
|
|
25588
|
+
{
|
|
25589
|
+
"$ref": "#/definitions/__schema3"
|
|
25590
|
+
}
|
|
25591
|
+
],
|
|
25592
|
+
"$ref": "#/definitions/__schema2"
|
|
25593
|
+
}
|
|
25594
|
+
},
|
|
25595
|
+
"required": [
|
|
25596
|
+
"type",
|
|
25597
|
+
"object",
|
|
25598
|
+
"historyIdx",
|
|
25599
|
+
"sessionIdx",
|
|
25600
|
+
"forwardIdx"
|
|
25601
|
+
],
|
|
25602
|
+
"additionalProperties": false,
|
|
25603
|
+
"description": "Returns U64. Counts the number of retained submissions within the specified forward operation."
|
|
25604
|
+
},
|
|
25605
|
+
{
|
|
25606
|
+
"type": "object",
|
|
25607
|
+
"properties": {
|
|
25608
|
+
"type": {
|
|
25609
|
+
"type": "string",
|
|
25610
|
+
"const": "query_progress_history_session_forward_retained_submission_value"
|
|
25611
|
+
},
|
|
25612
|
+
"object": {
|
|
25613
|
+
"type": "object",
|
|
25614
|
+
"properties": {
|
|
25615
|
+
"identifier": {
|
|
25616
|
+
"type": "integer",
|
|
25617
|
+
"minimum": 0,
|
|
25618
|
+
"maximum": 255,
|
|
25619
|
+
"description": "Identifier (0-255) for data lookup in Guard table. Slot consensus (enforced on-chain at guard table construction): 0-220 = user slots (free for business guards); 221-253 = PROTOCOL-RESERVED (rejected on-chain — reserved so future protocol features get fixed slots without colliding with published guards); 255 = ONCE replay-protection slot on Allocation (byte-keyed, the submitted bytes are the once-key — use for per-period keys like period-<N>); 254 = ONCE-FOR-OBJECT slot on Allocation (chain-derived key = bcs(the Allocation's payment_info.for_object); the submitted bytes are ignored and the submission only arms the slot — use for one-shot per-order rails such as full refunds). SLOT 0 SEMANTICS: slot 0 carries the transacted Order address by convention. As a submission slot it is legal on order/allocation/machine rails (the order exists when those verify), but FORBIDDEN on a Service buy_guard — the order does not exist when the buy-time passport is verified, so the mount is refused (service abort 43)."
|
|
25620
|
+
}
|
|
25621
|
+
},
|
|
25622
|
+
"required": [
|
|
25623
|
+
"identifier"
|
|
25624
|
+
],
|
|
25625
|
+
"additionalProperties": false,
|
|
25626
|
+
"description": "Reference to the Progress object in the Guard table (must be Address type)."
|
|
25627
|
+
},
|
|
25628
|
+
"historyIdx": {
|
|
25629
|
+
"description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
|
|
25630
|
+
"allOf": [
|
|
25631
|
+
{
|
|
25632
|
+
"$ref": "#/definitions/__schema3"
|
|
25633
|
+
}
|
|
25634
|
+
],
|
|
25635
|
+
"$ref": "#/definitions/__schema2"
|
|
25636
|
+
},
|
|
25637
|
+
"sessionIdx": {
|
|
25638
|
+
"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.",
|
|
25639
|
+
"allOf": [
|
|
25640
|
+
{
|
|
25641
|
+
"$ref": "#/definitions/__schema3"
|
|
25642
|
+
}
|
|
25643
|
+
],
|
|
25644
|
+
"$ref": "#/definitions/__schema2"
|
|
25645
|
+
},
|
|
25646
|
+
"forwardIdx": {
|
|
25647
|
+
"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.",
|
|
25648
|
+
"allOf": [
|
|
25649
|
+
{
|
|
25650
|
+
"$ref": "#/definitions/__schema3"
|
|
25651
|
+
}
|
|
25652
|
+
],
|
|
25653
|
+
"$ref": "#/definitions/__schema2"
|
|
25654
|
+
},
|
|
25655
|
+
"identifier": {
|
|
25656
|
+
"description": "GuardNode that returns the submission identifier (U8 type) — which retained submission of the forward to read. Typically an 'identifier' node referencing a U8 value from the Guard table.",
|
|
25657
|
+
"allOf": [
|
|
25658
|
+
{
|
|
25659
|
+
"$ref": "#/definitions/__schema3"
|
|
25660
|
+
}
|
|
25661
|
+
],
|
|
25662
|
+
"$ref": "#/definitions/__schema2"
|
|
25663
|
+
}
|
|
25664
|
+
},
|
|
25665
|
+
"required": [
|
|
25666
|
+
"type",
|
|
25667
|
+
"object",
|
|
25668
|
+
"historyIdx",
|
|
25669
|
+
"sessionIdx",
|
|
25670
|
+
"forwardIdx",
|
|
25671
|
+
"identifier"
|
|
25672
|
+
],
|
|
25673
|
+
"additionalProperties": false,
|
|
25674
|
+
"description": "Returns VecU8 (the ONLY history query that does not return U64). Value of the specified retained submission of a HISTORY record (query 1281) — the history-side counterpart of the ACTIVE-SESSION-ONLY 1268 read, which goes blind once the session migrates into history. Use 1274/1275 to discover the history/session/forward indexes first. Throws error when the record carries no submission for the identifier (Guard validation fails)."
|
|
25675
|
+
},
|
|
25676
|
+
{
|
|
25677
|
+
"type": "object",
|
|
25678
|
+
"properties": {
|
|
25679
|
+
"type": {
|
|
25680
|
+
"type": "string",
|
|
25681
|
+
"const": "query_repository_data_count_where"
|
|
25682
|
+
},
|
|
25683
|
+
"object": {
|
|
25684
|
+
"type": "object",
|
|
25685
|
+
"properties": {
|
|
25686
|
+
"identifier": {
|
|
25687
|
+
"type": "integer",
|
|
25688
|
+
"minimum": 0,
|
|
25689
|
+
"maximum": 255,
|
|
25690
|
+
"description": "Identifier (0-255) for data lookup in Guard table. Slot consensus (enforced on-chain at guard table construction): 0-220 = user slots (free for business guards); 221-253 = PROTOCOL-RESERVED (rejected on-chain — reserved so future protocol features get fixed slots without colliding with published guards); 255 = ONCE replay-protection slot on Allocation (byte-keyed, the submitted bytes are the once-key — use for per-period keys like period-<N>); 254 = ONCE-FOR-OBJECT slot on Allocation (chain-derived key = bcs(the Allocation's payment_info.for_object); the submitted bytes are ignored and the submission only arms the slot — use for one-shot per-order rails such as full refunds). SLOT 0 SEMANTICS: slot 0 carries the transacted Order address by convention. As a submission slot it is legal on order/allocation/machine rails (the order exists when those verify), but FORBIDDEN on a Service buy_guard — the order does not exist when the buy-time passport is verified, so the mount is refused (service abort 43)."
|
|
25691
|
+
}
|
|
25692
|
+
},
|
|
25693
|
+
"required": [
|
|
25694
|
+
"identifier"
|
|
25695
|
+
],
|
|
25696
|
+
"additionalProperties": false,
|
|
25697
|
+
"description": "Reference to the Repository object in the Guard table (must be Address type)."
|
|
25698
|
+
},
|
|
25699
|
+
"key": {
|
|
25700
|
+
"type": "object",
|
|
25701
|
+
"properties": {
|
|
25702
|
+
"identifier": {
|
|
25703
|
+
"type": "integer",
|
|
25704
|
+
"minimum": 0,
|
|
25705
|
+
"maximum": 255,
|
|
25706
|
+
"description": "Identifier (0-255) for data lookup in Guard table. Slot consensus (enforced on-chain at guard table construction): 0-220 = user slots (free for business guards); 221-253 = PROTOCOL-RESERVED (rejected on-chain — reserved so future protocol features get fixed slots without colliding with published guards); 255 = ONCE replay-protection slot on Allocation (byte-keyed, the submitted bytes are the once-key — use for per-period keys like period-<N>); 254 = ONCE-FOR-OBJECT slot on Allocation (chain-derived key = bcs(the Allocation's payment_info.for_object); the submitted bytes are ignored and the submission only arms the slot — use for one-shot per-order rails such as full refunds). SLOT 0 SEMANTICS: slot 0 carries the transacted Order address by convention. As a submission slot it is legal on order/allocation/machine rails (the order exists when those verify), but FORBIDDEN on a Service buy_guard — the order does not exist when the buy-time passport is verified, so the mount is refused (service abort 43)."
|
|
25707
|
+
}
|
|
25708
|
+
},
|
|
25709
|
+
"required": [
|
|
25710
|
+
"identifier"
|
|
25711
|
+
],
|
|
25712
|
+
"additionalProperties": false,
|
|
25713
|
+
"description": "Reference to the policy key (String type table entry) whose data table is scanned."
|
|
25714
|
+
},
|
|
25715
|
+
"ids": {
|
|
25716
|
+
"type": "object",
|
|
25717
|
+
"properties": {
|
|
25718
|
+
"identifier": {
|
|
25719
|
+
"type": "integer",
|
|
25720
|
+
"minimum": 0,
|
|
25721
|
+
"maximum": 255,
|
|
25722
|
+
"description": "Identifier (0-255) for data lookup in Guard table. Slot consensus (enforced on-chain at guard table construction): 0-220 = user slots (free for business guards); 221-253 = PROTOCOL-RESERVED (rejected on-chain — reserved so future protocol features get fixed slots without colliding with published guards); 255 = ONCE replay-protection slot on Allocation (byte-keyed, the submitted bytes are the once-key — use for per-period keys like period-<N>); 254 = ONCE-FOR-OBJECT slot on Allocation (chain-derived key = bcs(the Allocation's payment_info.for_object); the submitted bytes are ignored and the submission only arms the slot — use for one-shot per-order rails such as full refunds). SLOT 0 SEMANTICS: slot 0 carries the transacted Order address by convention. As a submission slot it is legal on order/allocation/machine rails (the order exists when those verify), but FORBIDDEN on a Service buy_guard — the order does not exist when the buy-time passport is verified, so the mount is refused (service abort 43)."
|
|
25723
|
+
}
|
|
25724
|
+
},
|
|
25725
|
+
"required": [
|
|
25726
|
+
"identifier"
|
|
25727
|
+
],
|
|
25728
|
+
"additionalProperties": false,
|
|
25729
|
+
"description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
|
|
25730
|
+
},
|
|
25731
|
+
"where": {
|
|
25732
|
+
"oneOf": [
|
|
25733
|
+
{
|
|
25734
|
+
"type": "object",
|
|
25735
|
+
"properties": {
|
|
25736
|
+
"kind": {
|
|
25737
|
+
"type": "string",
|
|
25738
|
+
"const": "range"
|
|
25739
|
+
},
|
|
25740
|
+
"valueMin": {
|
|
25741
|
+
"description": "Optional lower bound (inclusive unless minInclusive=false). Plain number string (U256 semantics).",
|
|
25742
|
+
"type": "string"
|
|
25743
|
+
},
|
|
25744
|
+
"valueMax": {
|
|
25745
|
+
"description": "Optional upper bound (inclusive unless maxInclusive=false). Plain number string (U256 semantics).",
|
|
25746
|
+
"type": "string"
|
|
25747
|
+
},
|
|
25748
|
+
"minInclusive": {
|
|
25749
|
+
"description": "Default true. false makes the lower bound exclusive.",
|
|
25750
|
+
"type": "boolean"
|
|
25751
|
+
},
|
|
25752
|
+
"maxInclusive": {
|
|
25753
|
+
"description": "Default true. false makes the upper bound exclusive.",
|
|
25754
|
+
"type": "boolean"
|
|
25755
|
+
}
|
|
25756
|
+
},
|
|
25757
|
+
"required": [
|
|
25758
|
+
"kind"
|
|
25759
|
+
],
|
|
25760
|
+
"additionalProperties": false,
|
|
25761
|
+
"description": "Numeric closed/open range. min=max inclusive is an equality match. At least one bound required."
|
|
25762
|
+
},
|
|
25763
|
+
{
|
|
25764
|
+
"type": "object",
|
|
25765
|
+
"properties": {
|
|
25766
|
+
"kind": {
|
|
25767
|
+
"type": "string",
|
|
25768
|
+
"const": "numEq"
|
|
25769
|
+
},
|
|
25770
|
+
"value": {
|
|
25771
|
+
"type": "string",
|
|
25772
|
+
"description": "Exact numeric match. Plain number string (U256 semantics)."
|
|
25773
|
+
}
|
|
25774
|
+
},
|
|
25775
|
+
"required": [
|
|
25776
|
+
"kind",
|
|
25777
|
+
"value"
|
|
25778
|
+
],
|
|
25779
|
+
"additionalProperties": false
|
|
25780
|
+
},
|
|
25781
|
+
{
|
|
25782
|
+
"type": "object",
|
|
25783
|
+
"properties": {
|
|
25784
|
+
"kind": {
|
|
25785
|
+
"type": "string",
|
|
25786
|
+
"const": "gt"
|
|
25787
|
+
},
|
|
25788
|
+
"value": {
|
|
25789
|
+
"type": "string",
|
|
25790
|
+
"description": "Greater than. Plain number string (U256 semantics)."
|
|
25791
|
+
}
|
|
25792
|
+
},
|
|
25793
|
+
"required": [
|
|
25794
|
+
"kind",
|
|
25795
|
+
"value"
|
|
25796
|
+
],
|
|
25797
|
+
"additionalProperties": false
|
|
25798
|
+
},
|
|
25799
|
+
{
|
|
25800
|
+
"type": "object",
|
|
25801
|
+
"properties": {
|
|
25802
|
+
"kind": {
|
|
25803
|
+
"type": "string",
|
|
25804
|
+
"const": "gte"
|
|
25805
|
+
},
|
|
25806
|
+
"value": {
|
|
25807
|
+
"type": "string",
|
|
25808
|
+
"description": "Greater than or equal. Plain number string (U256 semantics)."
|
|
25809
|
+
}
|
|
25810
|
+
},
|
|
25811
|
+
"required": [
|
|
25812
|
+
"kind",
|
|
25813
|
+
"value"
|
|
25814
|
+
],
|
|
25815
|
+
"additionalProperties": false
|
|
25816
|
+
},
|
|
25262
25817
|
{
|
|
25263
|
-
"
|
|
25264
|
-
|
|
25265
|
-
|
|
25266
|
-
|
|
25267
|
-
|
|
25268
|
-
|
|
25269
|
-
|
|
25270
|
-
|
|
25818
|
+
"type": "object",
|
|
25819
|
+
"properties": {
|
|
25820
|
+
"kind": {
|
|
25821
|
+
"type": "string",
|
|
25822
|
+
"const": "lt"
|
|
25823
|
+
},
|
|
25824
|
+
"value": {
|
|
25825
|
+
"type": "string",
|
|
25826
|
+
"description": "Less than. Plain number string (U256 semantics)."
|
|
25827
|
+
}
|
|
25828
|
+
},
|
|
25829
|
+
"required": [
|
|
25830
|
+
"kind",
|
|
25831
|
+
"value"
|
|
25832
|
+
],
|
|
25833
|
+
"additionalProperties": false
|
|
25834
|
+
},
|
|
25271
25835
|
{
|
|
25272
|
-
"
|
|
25273
|
-
|
|
25274
|
-
|
|
25275
|
-
|
|
25276
|
-
|
|
25277
|
-
|
|
25278
|
-
|
|
25279
|
-
|
|
25280
|
-
|
|
25281
|
-
|
|
25282
|
-
|
|
25283
|
-
|
|
25284
|
-
|
|
25285
|
-
|
|
25286
|
-
|
|
25287
|
-
|
|
25288
|
-
|
|
25289
|
-
"type": "object",
|
|
25290
|
-
"properties": {
|
|
25291
|
-
"type": {
|
|
25292
|
-
"type": "string",
|
|
25293
|
-
"const": "query_progress_history_session_forward_retained_submission_value"
|
|
25294
|
-
},
|
|
25295
|
-
"object": {
|
|
25296
|
-
"type": "object",
|
|
25297
|
-
"properties": {
|
|
25298
|
-
"identifier": {
|
|
25299
|
-
"type": "integer",
|
|
25300
|
-
"minimum": 0,
|
|
25301
|
-
"maximum": 255,
|
|
25302
|
-
"description": "Identifier (0-255) for data lookup in Guard table. Slot consensus (enforced on-chain at guard table construction): 0-220 = user slots (free for business guards); 221-253 = PROTOCOL-RESERVED (rejected on-chain — reserved so future protocol features get fixed slots without colliding with published guards); 255 = ONCE replay-protection slot on Allocation (byte-keyed, the submitted bytes are the once-key — use for per-period keys like period-<N>); 254 = ONCE-FOR-OBJECT slot on Allocation (chain-derived key = bcs(the Allocation's payment_info.for_object); the submitted bytes are ignored and the submission only arms the slot — use for one-shot per-order rails such as full refunds). SLOT 0 SEMANTICS: slot 0 carries the transacted Order address by convention. As a submission slot it is legal on order/allocation/machine rails (the order exists when those verify), but FORBIDDEN on a Service buy_guard — the order does not exist when the buy-time passport is verified, so the mount is refused (service abort 43)."
|
|
25303
|
-
}
|
|
25304
|
-
},
|
|
25305
|
-
"required": [
|
|
25306
|
-
"identifier"
|
|
25307
|
-
],
|
|
25308
|
-
"additionalProperties": false,
|
|
25309
|
-
"description": "Reference to the Progress object in the Guard table (must be Address type)."
|
|
25310
|
-
},
|
|
25311
|
-
"historyIdx": {
|
|
25312
|
-
"description": "GuardNode that returns the history index (U64 type). Typically an 'identifier' node referencing a U64 value from the Guard table.",
|
|
25313
|
-
"allOf": [
|
|
25836
|
+
"type": "object",
|
|
25837
|
+
"properties": {
|
|
25838
|
+
"kind": {
|
|
25839
|
+
"type": "string",
|
|
25840
|
+
"const": "lte"
|
|
25841
|
+
},
|
|
25842
|
+
"value": {
|
|
25843
|
+
"type": "string",
|
|
25844
|
+
"description": "Less than or equal. Plain number string (U256 semantics)."
|
|
25845
|
+
}
|
|
25846
|
+
},
|
|
25847
|
+
"required": [
|
|
25848
|
+
"kind",
|
|
25849
|
+
"value"
|
|
25850
|
+
],
|
|
25851
|
+
"additionalProperties": false
|
|
25852
|
+
},
|
|
25314
25853
|
{
|
|
25315
|
-
"
|
|
25316
|
-
|
|
25317
|
-
|
|
25318
|
-
|
|
25319
|
-
|
|
25320
|
-
|
|
25321
|
-
|
|
25322
|
-
|
|
25854
|
+
"type": "object",
|
|
25855
|
+
"properties": {
|
|
25856
|
+
"kind": {
|
|
25857
|
+
"type": "string",
|
|
25858
|
+
"const": "addressEq"
|
|
25859
|
+
},
|
|
25860
|
+
"identifier": {
|
|
25861
|
+
"type": "integer",
|
|
25862
|
+
"minimum": 0,
|
|
25863
|
+
"maximum": 255,
|
|
25864
|
+
"description": "Identifier of the Address-type table entry to compare against."
|
|
25865
|
+
}
|
|
25866
|
+
},
|
|
25867
|
+
"required": [
|
|
25868
|
+
"kind",
|
|
25869
|
+
"identifier"
|
|
25870
|
+
],
|
|
25871
|
+
"additionalProperties": false
|
|
25872
|
+
},
|
|
25323
25873
|
{
|
|
25324
|
-
"
|
|
25325
|
-
|
|
25326
|
-
|
|
25327
|
-
|
|
25328
|
-
|
|
25329
|
-
|
|
25330
|
-
|
|
25331
|
-
|
|
25874
|
+
"type": "object",
|
|
25875
|
+
"properties": {
|
|
25876
|
+
"kind": {
|
|
25877
|
+
"type": "string",
|
|
25878
|
+
"const": "stringEq"
|
|
25879
|
+
},
|
|
25880
|
+
"value": {
|
|
25881
|
+
"type": "string",
|
|
25882
|
+
"description": "Exact string match (byte equality, UTF-8)."
|
|
25883
|
+
}
|
|
25884
|
+
},
|
|
25885
|
+
"required": [
|
|
25886
|
+
"kind",
|
|
25887
|
+
"value"
|
|
25888
|
+
],
|
|
25889
|
+
"additionalProperties": false
|
|
25890
|
+
},
|
|
25332
25891
|
{
|
|
25333
|
-
"
|
|
25334
|
-
|
|
25335
|
-
|
|
25336
|
-
|
|
25337
|
-
|
|
25338
|
-
|
|
25339
|
-
|
|
25340
|
-
|
|
25892
|
+
"type": "object",
|
|
25893
|
+
"properties": {
|
|
25894
|
+
"kind": {
|
|
25895
|
+
"type": "string",
|
|
25896
|
+
"const": "stringContains"
|
|
25897
|
+
},
|
|
25898
|
+
"value": {
|
|
25899
|
+
"type": "string",
|
|
25900
|
+
"description": "Substring match, case-sensitive."
|
|
25901
|
+
}
|
|
25902
|
+
},
|
|
25903
|
+
"required": [
|
|
25904
|
+
"kind",
|
|
25905
|
+
"value"
|
|
25906
|
+
],
|
|
25907
|
+
"additionalProperties": false
|
|
25908
|
+
},
|
|
25341
25909
|
{
|
|
25342
|
-
"
|
|
25910
|
+
"type": "object",
|
|
25911
|
+
"properties": {
|
|
25912
|
+
"kind": {
|
|
25913
|
+
"type": "string",
|
|
25914
|
+
"const": "stringNoCaseContains"
|
|
25915
|
+
},
|
|
25916
|
+
"value": {
|
|
25917
|
+
"type": "string",
|
|
25918
|
+
"description": "Substring match, case-insensitive."
|
|
25919
|
+
}
|
|
25920
|
+
},
|
|
25921
|
+
"required": [
|
|
25922
|
+
"kind",
|
|
25923
|
+
"value"
|
|
25924
|
+
],
|
|
25925
|
+
"additionalProperties": false
|
|
25926
|
+
},
|
|
25927
|
+
{
|
|
25928
|
+
"type": "object",
|
|
25929
|
+
"properties": {
|
|
25930
|
+
"kind": {
|
|
25931
|
+
"type": "string",
|
|
25932
|
+
"const": "boolEq"
|
|
25933
|
+
},
|
|
25934
|
+
"value": {
|
|
25935
|
+
"type": "boolean",
|
|
25936
|
+
"description": "Boolean equality."
|
|
25937
|
+
}
|
|
25938
|
+
},
|
|
25939
|
+
"required": [
|
|
25940
|
+
"kind",
|
|
25941
|
+
"value"
|
|
25942
|
+
],
|
|
25943
|
+
"additionalProperties": false
|
|
25343
25944
|
}
|
|
25344
25945
|
],
|
|
25345
|
-
"
|
|
25946
|
+
"description": "Predicate filter applied to each candidate's data value."
|
|
25346
25947
|
}
|
|
25347
25948
|
},
|
|
25348
25949
|
"required": [
|
|
25349
25950
|
"type",
|
|
25350
25951
|
"object",
|
|
25351
|
-
"
|
|
25352
|
-
"
|
|
25353
|
-
"
|
|
25354
|
-
"identifier"
|
|
25952
|
+
"key",
|
|
25953
|
+
"ids",
|
|
25954
|
+
"where"
|
|
25355
25955
|
],
|
|
25356
25956
|
"additionalProperties": false,
|
|
25357
|
-
"description": "Returns
|
|
25957
|
+
"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."
|
|
25358
25958
|
},
|
|
25359
25959
|
{
|
|
25360
25960
|
"type": "object",
|
|
25361
25961
|
"properties": {
|
|
25362
25962
|
"type": {
|
|
25363
25963
|
"type": "string",
|
|
25364
|
-
"const": "
|
|
25964
|
+
"const": "query_repository_data_sum_where"
|
|
25365
25965
|
},
|
|
25366
25966
|
"object": {
|
|
25367
25967
|
"type": "object",
|
|
@@ -25637,14 +26237,14 @@
|
|
|
25637
26237
|
"where"
|
|
25638
26238
|
],
|
|
25639
26239
|
"additionalProperties": false,
|
|
25640
|
-
"description": "Returns
|
|
26240
|
+
"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."
|
|
25641
26241
|
},
|
|
25642
26242
|
{
|
|
25643
26243
|
"type": "object",
|
|
25644
26244
|
"properties": {
|
|
25645
26245
|
"type": {
|
|
25646
26246
|
"type": "string",
|
|
25647
|
-
"const": "
|
|
26247
|
+
"const": "query_repository_data_sum_where_bound"
|
|
25648
26248
|
},
|
|
25649
26249
|
"object": {
|
|
25650
26250
|
"type": "object",
|
|
@@ -25692,7 +26292,7 @@
|
|
|
25692
26292
|
"identifier"
|
|
25693
26293
|
],
|
|
25694
26294
|
"additionalProperties": false,
|
|
25695
|
-
"description": "Reference to the candidate ID list (VecAddress type table entry). Duplicates are deduped; max 100 candidates."
|
|
26295
|
+
"description": "Reference to the candidate ID list (VecAddress type table entry). Each id should be an ORDER address (e.g. order-keyed contribution rows). Duplicates are deduped; max 100 candidates."
|
|
25696
26296
|
},
|
|
25697
26297
|
"where": {
|
|
25698
26298
|
"oneOf": [
|
|
@@ -25920,7 +26520,7 @@
|
|
|
25920
26520
|
"where"
|
|
25921
26521
|
],
|
|
25922
26522
|
"additionalProperties": false,
|
|
25923
|
-
"description": "Returns U256.
|
|
26523
|
+
"description": "Returns U256. ESCROW-BOUND sum (query 1179): per-row min(row_value, order.amount of the Order the row id names); a row keyed by anything that is not an Order contributes 0 (fail-closed). Unlike query_repository_data_sum_where (self-reported row values), a record cannot claim more than the Order actually escrowed — the forgery-proof aggregate for threshold gates and Formula pricing. Use logic_as_u256_* to compare the sum."
|
|
25924
26524
|
},
|
|
25925
26525
|
{
|
|
25926
26526
|
"type": "object",
|