@wowok/agent-mcp 3.3.9 → 3.4.1
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/README.md +8 -0
- package/dist/chain-semantics/composition-truth.d.ts +102 -0
- package/dist/chain-semantics/composition-truth.js +1 -0
- package/dist/chain-semantics/eval-order.js +1 -1
- 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/blueprint-view.d.ts +3 -3
- package/dist/composition/blueprint-view.js +1 -1
- package/dist/composition/compile.d.ts +26 -4
- package/dist/composition/compile.js +1 -1
- package/dist/composition/emit-phases.d.ts +206 -0
- package/dist/composition/emit-phases.js +1 -0
- package/dist/composition/generate.d.ts +40 -0
- package/dist/composition/generate.js +1 -0
- package/dist/composition/guard-fill.d.ts +44 -0
- package/dist/composition/guard-fill.js +1 -0
- package/dist/composition/inflight.d.ts +26 -2
- package/dist/composition/inflight.js +1 -1
- package/dist/composition/input-normalize.d.ts +15 -0
- package/dist/composition/input-normalize.js +1 -0
- package/dist/composition/materialize.d.ts +22 -13
- package/dist/composition/materialize.js +1 -1
- package/dist/composition/mode-gates.d.ts +35 -0
- package/dist/composition/mode-gates.js +1 -0
- package/dist/composition/param-disclosure.d.ts +61 -0
- package/dist/composition/param-disclosure.js +1 -0
- package/dist/composition/plan-retry-ledger.d.ts +21 -0
- package/dist/composition/plan-retry-ledger.js +1 -0
- package/dist/composition/plan.d.ts +17 -2
- package/dist/composition/plan.js +1 -1
- package/dist/composition/product-card.d.ts +94 -0
- package/dist/composition/product-card.js +1 -0
- package/dist/composition/supply-chain-emit.d.ts +46 -0
- package/dist/composition/supply-chain-emit.js +1 -0
- package/dist/config/config-audit.spec.js +1 -1
- package/dist/config/config-warnings.d.ts +2 -0
- package/dist/config/config-warnings.js +1 -0
- package/dist/config/exposure.d.ts +2 -2
- package/dist/config/judgment.d.ts +31 -5
- package/dist/config/judgment.js +1 -1
- package/dist/config/judgment.spec.js +1 -1
- package/dist/config/match-policy-file.d.ts +34 -0
- package/dist/config/match-policy-file.js +1 -0
- package/dist/config/match-policy-file.spec.d.ts +1 -0
- package/dist/config/match-policy-file.spec.js +1 -0
- package/dist/config/rule-engine.d.ts +5 -5
- package/dist/config/rule-engine.js +1 -1
- package/dist/config/runtime.d.ts +0 -1
- package/dist/config/runtime.js +1 -1
- package/dist/config/severity.d.ts +0 -2
- package/dist/config/severity.js +1 -1
- package/dist/config/store-policy.spec.js +1 -1
- package/dist/config/template-params.d.ts +42 -0
- package/dist/config/template-params.js +1 -0
- package/dist/config/template-params.spec.d.ts +1 -0
- package/dist/config/template-params.spec.js +1 -0
- package/dist/customer/account-events.js +1 -1
- package/dist/data/api/api.spec.js +1 -1
- package/dist/data/api/cli.js +1 -1
- package/dist/data/api/server.d.ts +1 -0
- package/dist/data/api/server.js +1 -1
- package/dist/data/projection/store.d.ts +3 -1
- package/dist/data/projection/store.js +1 -1
- package/dist/data/projection/types.d.ts +32 -0
- package/dist/data/sync/cdc.d.ts +1 -2
- package/dist/data/sync/cdc.js +1 -1
- package/dist/data/sync/cdc.spec.js +1 -1
- package/dist/data/sync/store.d.ts +5 -0
- package/dist/data/sync/store.js +1 -1
- package/dist/data/sync/types.d.ts +2 -0
- package/dist/evaluation/acceptance.d.ts +8 -0
- package/dist/evaluation/acceptance.js +1 -1
- 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 +2 -0
- package/dist/evaluation/category-match-rules.d.ts +0 -1
- package/dist/evaluation/category-match-rules.js +1 -1
- package/dist/evaluation/composer.d.ts +25 -0
- package/dist/evaluation/composer.js +1 -1
- package/dist/evaluation/engine.js +1 -1
- package/dist/evaluation/extract.d.ts +7 -0
- package/dist/evaluation/extract.js +1 -1
- package/dist/evaluation/game-strategy.d.ts +0 -3
- package/dist/evaluation/game-strategy.js +1 -1
- package/dist/evaluation/guard-scan.js +1 -1
- package/dist/evaluation/match-operation.d.ts +9 -0
- package/dist/evaluation/match-operation.js +1 -1
- package/dist/evaluation/match-policy-resolver.d.ts +9 -0
- package/dist/evaluation/match-policy-resolver.js +1 -0
- package/dist/evaluation/match-policy.d.ts +3 -1
- package/dist/evaluation/match-policy.js +1 -1
- package/dist/evaluation/region.d.ts +0 -6
- package/dist/evaluation/region.js +1 -1
- package/dist/evaluation/standards.d.ts +2 -1
- package/dist/evaluation/standards.js +1 -1
- package/dist/evaluation/structured-lines.d.ts +8 -0
- package/dist/evaluation/structured-lines.js +1 -0
- package/dist/evaluation/types.d.ts +6 -0
- package/dist/experience/realtime-feedback.js +1 -1
- package/dist/extensions/capability-manifest.d.ts +1 -0
- package/dist/extensions/capability-manifest.js +1 -1
- package/dist/extensions/capability.d.ts +91 -0
- package/dist/extensions/capability.js +1 -0
- package/dist/extensions/industry-audit.spec.js +1 -1
- package/dist/extensions/industry-pack.d.ts +13 -0
- package/dist/extensions/industry-pack.js +1 -1
- package/dist/extensions/modes.js +1 -1
- package/dist/extensions/registry.d.ts +0 -2
- package/dist/extensions/registry.js +1 -1
- package/dist/goal/GoalEngine.js +1 -1
- package/dist/graph/onchain/analyze.js +1 -1
- package/dist/graph/onchain/expand.js +1 -1
- package/dist/graph/onchain/exposure.js +1 -1
- package/dist/graph/onchain/facts.js +1 -1
- package/dist/graph/onchain/order-status.d.ts +0 -1
- package/dist/graph/onchain/order-status.js +1 -1
- package/dist/harness/recover.js +1 -1
- package/dist/harness/verify.d.ts +0 -3
- package/dist/harness/verify.js +1 -1
- package/dist/index.js +1 -1
- package/dist/intent/types.d.ts +0 -1
- package/dist/intent/types.js +1 -1
- package/dist/keeper/detectors.js +1 -1
- package/dist/keeper/types.d.ts +0 -1
- package/dist/keeper/types.js +1 -1
- package/dist/knowledge/allocation-risk.d.ts +1 -0
- package/dist/knowledge/allocation-risk.js +1 -1
- package/dist/knowledge/allocation-templates.js +1 -1
- package/dist/knowledge/allocator-rail-verifier.d.ts +6 -1
- package/dist/knowledge/allocator-rail-verifier.js +1 -1
- package/dist/knowledge/arb-fund-facts.d.ts +1 -0
- package/dist/knowledge/arb-fund-facts.js +1 -1
- package/dist/knowledge/arbitration-ledger.js +1 -1
- package/dist/knowledge/arbitration-puzzle.js +1 -1
- package/dist/knowledge/arbitration-risk.d.ts +1 -0
- package/dist/knowledge/arbitration-risk.js +1 -1
- package/dist/knowledge/audit-rules.d.ts +2 -2
- package/dist/knowledge/audit-rules.js +1 -1
- package/dist/knowledge/baselines/judgment-baselines.json +21 -2
- package/dist/knowledge/baselines/rules/allocation.json +6 -6
- package/dist/knowledge/baselines/rules/arb.json +2 -2
- package/dist/knowledge/baselines/rules/guard.json +11 -11
- package/dist/knowledge/baselines/rules/oracle.json +120 -0
- package/dist/knowledge/baselines/rules/order.json +1 -1
- package/dist/knowledge/baselines/rules/plan.json +385 -18
- package/dist/knowledge/baselines/rules/progress.json +20 -2
- package/dist/knowledge/baselines/semantic-facts.js +1 -1
- package/dist/knowledge/builtin-templates.d.ts +25 -1
- package/dist/knowledge/builtin-templates.js +1 -1
- package/dist/knowledge/catalog-facts.d.ts +4 -0
- package/dist/knowledge/catalog-facts.js +1 -0
- package/dist/knowledge/commission-landing.js +1 -1
- package/dist/knowledge/component-schema.d.ts +64 -0
- package/dist/knowledge/component-schema.js +1 -0
- package/dist/knowledge/contact-templates.d.ts +0 -1
- package/dist/knowledge/contact-templates.js +1 -1
- package/dist/knowledge/dynamic-pricing.js +1 -1
- package/dist/knowledge/entity-recipient-guard.js +1 -1
- package/dist/knowledge/event-semantics.js +1 -1
- package/dist/knowledge/fee-param-bindings.d.ts +26 -0
- package/dist/knowledge/fee-param-bindings.js +1 -0
- package/dist/knowledge/fund-layer.d.ts +1 -0
- package/dist/knowledge/fund-layer.js +1 -1
- package/dist/knowledge/game-scenarios.js +1 -1
- package/dist/knowledge/getting-started.d.ts +2 -2
- package/dist/knowledge/getting-started.js +1 -1
- package/dist/knowledge/guard-anchor-reach.js +1 -1
- package/dist/knowledge/guard-binding-table.d.ts +52 -0
- package/dist/knowledge/guard-binding-table.js +1 -0
- package/dist/knowledge/guard-binding-verifier.d.ts +30 -0
- package/dist/knowledge/guard-binding-verifier.js +1 -0
- package/dist/knowledge/guard-bindings.js +1 -1
- package/dist/knowledge/guard-blueprint.d.ts +68 -0
- package/dist/knowledge/guard-blueprint.js +1 -0
- package/dist/knowledge/guard-design-patterns.d.ts +1 -1
- package/dist/knowledge/guard-design-patterns.js +1 -1
- package/dist/knowledge/guard-field-cognition.js +1 -1
- package/dist/knowledge/guard-host-context.d.ts +24 -0
- package/dist/knowledge/guard-host-context.js +1 -0
- package/dist/knowledge/guard-ledger.js +1 -1
- package/dist/knowledge/guard-lint.d.ts +1 -0
- package/dist/knowledge/guard-lint.js +1 -1
- package/dist/knowledge/guard-node-gates.d.ts +3 -0
- package/dist/knowledge/guard-node-gates.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-submission-prompt.d.ts +11 -0
- package/dist/knowledge/guard-submission-prompt.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.d.ts +1 -1
- package/dist/knowledge/index.js +1 -1
- package/dist/knowledge/industry-generalizer.d.ts +6 -1
- package/dist/knowledge/industry-generalizer.js +1 -1
- package/dist/knowledge/industry-registry.js +1 -1
- package/dist/knowledge/industry-strategy.js +1 -1
- package/dist/knowledge/jsonrpc-enum.d.ts +52 -3
- package/dist/knowledge/jsonrpc-enum.js +1 -1
- package/dist/knowledge/knob-docs.d.ts +5 -0
- package/dist/knowledge/knob-docs.js +1 -0
- package/dist/knowledge/machine-templates.js +1 -1
- package/dist/knowledge/machine-topology.js +1 -1
- package/dist/knowledge/machine-translation.js +1 -1
- package/dist/knowledge/object-dependency.d.ts +31 -0
- package/dist/knowledge/object-dependency.js +1 -0
- package/dist/knowledge/onchain-constants.d.ts +4 -0
- package/dist/knowledge/onchain-constants.js +1 -1
- package/dist/knowledge/order-ledger.js +1 -1
- package/dist/knowledge/param-schema.d.ts +93 -0
- package/dist/knowledge/param-schema.js +1 -0
- package/dist/knowledge/param-tiers.d.ts +25 -0
- package/dist/knowledge/param-tiers.js +1 -0
- package/dist/knowledge/passport-ledger.d.ts +1 -1
- package/dist/knowledge/passport-ledger.js +1 -1
- package/dist/knowledge/path-oracle/coverage.d.ts +16 -0
- package/dist/knowledge/path-oracle/coverage.js +1 -0
- package/dist/knowledge/path-oracle/index.d.ts +5 -0
- package/dist/knowledge/path-oracle/index.js +1 -0
- package/dist/knowledge/path-oracle/products/food-delivery.d.ts +2 -0
- package/dist/knowledge/path-oracle/products/food-delivery.js +1 -0
- package/dist/knowledge/path-oracle/schema.d.ts +188 -0
- package/dist/knowledge/path-oracle/schema.js +1 -0
- package/dist/knowledge/pattern-resolutions.d.ts +108 -0
- package/dist/knowledge/pattern-resolutions.js +1 -0
- package/dist/knowledge/progress-ledger.js +1 -1
- package/dist/knowledge/progress-risk.js +1 -1
- package/dist/knowledge/projection.spec.js +1 -1
- package/dist/knowledge/protocol-facts.js +1 -1
- package/dist/knowledge/requirement-families.d.ts +13 -0
- package/dist/knowledge/requirement-families.js +1 -0
- package/dist/knowledge/reward-ledger.js +1 -1
- package/dist/knowledge/safety-rules.js +1 -1
- package/dist/knowledge/scenario-modes.d.ts +2 -0
- package/dist/knowledge/scenario-modes.js +1 -1
- package/dist/knowledge/scenario-topology.js +1 -1
- package/dist/knowledge/semantic-ir.d.ts +4 -0
- package/dist/knowledge/semantic-ir.js +1 -1
- package/dist/knowledge/service-allocation-semantics.js +1 -1
- package/dist/knowledge/service-ledger.d.ts +1 -1
- package/dist/knowledge/service-ledger.js +1 -1
- package/dist/knowledge/service-templates.js +1 -1
- package/dist/knowledge/sku-name-gate.d.ts +17 -0
- package/dist/knowledge/sku-name-gate.js +1 -0
- package/dist/knowledge/strategy-manuals.d.ts +1 -1
- package/dist/knowledge/strategy-manuals.js +1 -1
- package/dist/knowledge/supply-chain.d.ts +9 -0
- package/dist/knowledge/supply-chain.js +1 -1
- package/dist/knowledge/template-loader.d.ts +114 -6
- package/dist/knowledge/template-loader.js +1 -1
- package/dist/knowledge/template-nav.d.ts +9 -0
- package/dist/knowledge/template-nav.js +1 -0
- package/dist/knowledge/template-prose.d.ts +1 -1
- package/dist/knowledge/template-registry.js +1 -1
- package/dist/knowledge/template-scanner.d.ts +95 -0
- package/dist/knowledge/template-scanner.js +1 -1
- package/dist/knowledge/template-test-profiles.d.ts +17 -0
- package/dist/knowledge/template-test-profiles.js +1 -0
- package/dist/knowledge/template-validation.d.ts +1 -0
- package/dist/knowledge/template-validation.js +1 -1
- package/dist/knowledge/tools-reference.js +1 -1
- package/dist/knowledge/treasury-templates.js +1 -1
- package/dist/knowledge/workflow-guidance.d.ts +5 -0
- package/dist/knowledge/workflow-guidance.js +1 -1
- package/dist/monitor/MonitorLoop.js +1 -1
- package/dist/participation/radar-core.js +1 -1
- package/dist/participation/time-window.d.ts +37 -0
- package/dist/participation/time-window.js +1 -0
- package/dist/persona/address-format.d.ts +0 -1
- package/dist/persona/address-format.js +1 -1
- package/dist/persona/bridge.js +1 -1
- package/dist/persona/index.d.ts +0 -2
- package/dist/persona/index.js +1 -1
- package/dist/persona/model.js +1 -1
- package/dist/persona/persona-audit.spec.js +1 -1
- package/dist/persona/types.d.ts +6 -0
- package/dist/playbooks/service-build/business-puzzle.js +1 -1
- package/dist/playbooks/service-build/game-theory.d.ts +2 -2
- package/dist/playbooks/service-build/intent-analyzer.js +1 -1
- package/dist/playbooks/service-build/machine-panorama.d.ts +1 -0
- package/dist/playbooks/service-build/machine-panorama.js +1 -1
- package/dist/playbooks/service-build/merchant-guide.d.ts +52 -22
- package/dist/playbooks/service-build/merchant-guide.js +1 -1
- package/dist/playbooks/service-build/migration-planner.d.ts +2 -0
- package/dist/playbooks/service-build/migration-planner.js +1 -1
- package/dist/playbooks/service-build/mode-actions.js +1 -1
- package/dist/playbooks/service-build/object-panorama.d.ts +8 -0
- package/dist/playbooks/service-build/object-panorama.js +1 -1
- package/dist/playbooks/service-build/participation-radar.d.ts +1 -0
- 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.d.ts +6 -0
- package/dist/playbooks/service-build/reverse-mapping.js +1 -1
- package/dist/playbooks/service-build/service-panorama.d.ts +2 -0
- 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/playbooks/service-build/workflow-design-assessment.d.ts +10 -1
- package/dist/playbooks/service-build/workflow-design-assessment.js +1 -1
- package/dist/relationship/registry.js +1 -1
- package/dist/review/index.js +1 -1
- package/dist/review/repository.js +1 -1
- package/dist/runtime/instance-registry.d.ts +7 -1
- package/dist/runtime/instance-registry.js +1 -1
- package/dist/safety/confirm-gate.js +1 -1
- package/dist/schema/benchmark-migration/index.d.ts +106 -0
- package/dist/schema/benchmark-migration/index.js +1 -1
- package/dist/schema/call/allocation.d.ts +15 -6
- package/dist/schema/call/allocation.js +1 -1
- package/dist/schema/call/arbitration.js +1 -1
- package/dist/schema/call/base.d.ts +264 -0
- package/dist/schema/call/base.js +1 -1
- package/dist/schema/call/bridge.d.ts +34 -6
- package/dist/schema/call/demand.d.ts +15 -6
- package/dist/schema/call/demand.js +1 -1
- package/dist/schema/call/error-codes.d.ts +1 -1
- package/dist/schema/call/error-codes.js +1 -1
- package/dist/schema/call/guard.d.ts +8 -8
- package/dist/schema/call/guard.js +1 -1
- package/dist/schema/call/handler.d.ts +3 -0
- package/dist/schema/call/handler.js +1 -1
- package/dist/schema/call/machine.d.ts +32 -8
- package/dist/schema/call/machine.js +1 -1
- package/dist/schema/call/order.d.ts +26 -8
- package/dist/schema/call/order.js +1 -1
- package/dist/schema/call/payment.d.ts +20 -8
- package/dist/schema/call/payment.js +1 -1
- package/dist/schema/call/permission-handler.js +1 -1
- package/dist/schema/call/permission.d.ts +330 -114
- package/dist/schema/call/permission.js +1 -1
- package/dist/schema/call/personal.d.ts +10 -4
- package/dist/schema/call/personal.js +1 -1
- package/dist/schema/call/progress.d.ts +16 -4
- package/dist/schema/call/reward.d.ts +10 -4
- package/dist/schema/call/reward.js +1 -1
- package/dist/schema/call/semantic.d.ts +1 -0
- package/dist/schema/call/semantic.js +1 -1
- package/dist/schema/call/service.d.ts +131 -43
- package/dist/schema/call/service.js +1 -1
- package/dist/schema/call/treasury.d.ts +15 -6
- package/dist/schema/call/treasury.js +1 -1
- package/dist/schema/common/index.js +1 -1
- package/dist/schema/config/index.d.ts +61 -0
- package/dist/schema/config/index.js +1 -1
- package/dist/schema/envelope-unify.d.ts +4 -0
- package/dist/schema/envelope-unify.js +1 -0
- package/dist/schema/evaluation/index.d.ts +224 -19
- package/dist/schema/evaluation/index.js +1 -1
- package/dist/schema/goal/index.d.ts +47 -0
- package/dist/schema/goal/planning.d.ts +116 -1
- package/dist/schema/goal/planning.js +1 -1
- package/dist/schema/industry-pack/index.d.ts +166 -6
- package/dist/schema/industry-pack/index.js +1 -1
- package/dist/schema/industry-pack/modes.d.ts +6 -6
- package/dist/schema/keeper/index.d.ts +26 -0
- package/dist/schema/local/index.d.ts +157 -0
- package/dist/schema/local/index.js +1 -1
- package/dist/schema/local/wip.d.ts +6 -0
- package/dist/schema/local/wip.js +1 -1
- package/dist/schema/messenger/index.d.ts +28 -0
- package/dist/schema/messenger/index.js +1 -1
- package/dist/schema/operations.d.ts +343 -84
- package/dist/schema/operations.js +1 -1
- package/dist/schema/persona/index.d.ts +2907 -640
- package/dist/schema/persona/index.js +1 -1
- package/dist/schema/query/bi.d.ts +251 -4
- package/dist/schema/query/bi.js +1 -1
- package/dist/schema/query/index.d.ts +271 -78
- package/dist/schema/query/index.js +1 -1
- package/dist/schema/schema-query/index.d.ts +1 -1
- package/dist/schema/schema-query/index.js +1 -1
- package/dist/schema/schema-version.js +1 -1
- package/dist/schema/utils/permission-machine-check.d.ts +2 -0
- package/dist/schema/utils/permission-machine-check.js +1 -1
- package/dist/schema/watch/index.d.ts +16 -0
- package/dist/schema/watch/index.js +1 -1
- package/dist/schema/workflow/index.d.ts +2 -2
- package/dist/schema/workflow/index.js +1 -1
- package/dist/schema-query-impl/index.d.ts +1 -1
- package/dist/schema-query-impl/index.js +1 -1
- package/dist/schemas/account_operation.output.json +98 -2
- package/dist/schemas/benchmark_migration_operation.output.json +341 -12
- package/dist/schemas/benchmark_migration_operation.schema.json +42 -3
- package/dist/schemas/bridge_operation.output.json +98 -2
- package/dist/schemas/bridge_operation.schema.json +5 -5
- package/dist/schemas/config_operation.output.json +352 -0
- package/dist/schemas/config_operation.schema.json +20 -2
- package/dist/schemas/evaluation_operation.output.json +586 -4
- package/dist/schemas/evaluation_operation.schema.json +194 -3
- package/dist/schemas/goal_operation.schema.json +183 -0
- package/dist/schemas/guard2file.schema.json +1 -1
- package/dist/schemas/index.json +1 -1
- package/dist/schemas/industry_pack_operation.output.json +771 -1
- package/dist/schemas/industry_pack_operation.schema.json +28 -4
- package/dist/schemas/keeper_operation.output.json +96 -2
- package/dist/schemas/local_cache_operation.output.json +98 -2
- package/dist/schemas/local_history_operation.output.json +98 -2
- package/dist/schemas/local_info_operation.output.json +98 -2
- package/dist/schemas/local_mark_operation.output.json +98 -2
- package/dist/schemas/machineNode2file.schema.json +1 -1
- package/dist/schemas/messenger_operation.output.json +107 -2
- package/dist/schemas/messenger_operation.schema.json +41 -34
- package/dist/schemas/monitor_events.output.json +96 -2
- package/dist/schemas/monitor_subscription.output.json +96 -2
- package/dist/schemas/onchain_events.output.json +108 -14
- package/dist/schemas/onchain_operations.output.json +326 -11
- package/dist/schemas/onchain_operations.schema.json +1343 -734
- package/dist/schemas/onchain_operations_allocation.schema.json +35 -19
- package/dist/schemas/onchain_operations_arbitration.schema.json +16 -8
- package/dist/schemas/onchain_operations_contact.schema.json +12 -4
- package/dist/schemas/onchain_operations_demand.schema.json +33 -17
- package/dist/schemas/onchain_operations_gen_passport.schema.json +12 -4
- package/dist/schemas/onchain_operations_gen_proof.schema.json +1 -1
- package/dist/schemas/onchain_operations_guard.schema.json +297 -111
- package/dist/schemas/onchain_operations_machine.schema.json +56 -39
- package/dist/schemas/onchain_operations_order.schema.json +67 -42
- package/dist/schemas/onchain_operations_payment.schema.json +27 -12
- package/dist/schemas/onchain_operations_permission.schema.json +363 -232
- package/dist/schemas/onchain_operations_personal.schema.json +43 -28
- package/dist/schemas/onchain_operations_progress.schema.json +49 -32
- package/dist/schemas/onchain_operations_proof.schema.json +12 -4
- package/dist/schemas/onchain_operations_repository.schema.json +17 -8
- package/dist/schemas/onchain_operations_reward.schema.json +36 -20
- package/dist/schemas/onchain_operations_service.schema.json +230 -130
- package/dist/schemas/onchain_operations_treasury.schema.json +36 -20
- package/dist/schemas/onchain_table_data.output.json +276 -19
- package/dist/schemas/onchain_table_data.schema.json +104 -64
- package/dist/schemas/persona_operation.output.json +7752 -0
- package/dist/schemas/persona_operation.schema.json +1232 -4
- package/dist/schemas/query_toolkit.output.json +1054 -146
- package/dist/schemas/query_toolkit.schema.json +144 -13
- package/dist/schemas/schema_query.schema.json +1 -1
- package/dist/schemas/watch_operation.output.json +86 -3
- package/dist/schemas/wip_file.output.json +8 -0
- package/dist/schemas/workflow_operation.schema.json +5 -4
- package/dist/schemas/wowok_buildin_info.schema.json +1 -1
- package/dist/task/playbook.js +1 -1
- package/dist/tools/handlers/benchmark-migration.d.ts +12 -3
- 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/industry-pack.js +1 -1
- package/dist/tools/handlers/messenger.js +1 -1
- package/dist/tools/handlers/onchain.d.ts +24 -0
- package/dist/tools/handlers/onchain.js +1 -1
- package/dist/tools/handlers/persona.js +1 -1
- package/dist/tools/handlers/query.d.ts +8 -0
- package/dist/tools/handlers/query.js +1 -1
- package/dist/tools/handlers/winner-derivation.d.ts +20 -0
- package/dist/tools/handlers/winner-derivation.js +1 -0
- package/dist/tools/handlers/wip-upload.js +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.js +1 -1
- package/dist/tools/registry/business.js +1 -1
- package/dist/tools/registry/config.js +1 -1
- package/dist/tools/registry/evaluation.js +1 -1
- package/dist/tools/registry/identity.js +1 -1
- package/dist/tools/registry/onchain.js +1 -1
- package/dist/tools/registry/query.js +1 -1
- package/dist/tools/sanitize-output.js +1 -1
- package/dist/tools/sanitize-output.spec.js +1 -1
- package/dist/tools/transport-integrity.d.ts +7 -0
- package/dist/tools/transport-integrity.js +1 -0
- package/dist/tools/types.d.ts +1 -0
- package/dist/tools/upgrade-check.d.ts +22 -0
- package/dist/tools/upgrade-check.js +1 -1
- package/dist/tools/wrap.d.ts +6 -1
- package/dist/tools/wrap.js +1 -1
- package/package.json +7 -6
- package/dist/extensions/business-modules.d.ts +0 -54
- package/dist/extensions/business-modules.js +0 -1
- package/dist/schemas/guard-templates.json +0 -379
|
@@ -393,6 +393,41 @@
|
|
|
393
393
|
"_balance_scope_note": {
|
|
394
394
|
"description": "Semantic scope note for the balance figure: the total is aggregation-only; independently owned Coin objects may exist outside it. Follow the note (transaction digest or coin-objects query) before concluding funds arrived.",
|
|
395
395
|
"type": "string"
|
|
396
|
+
},
|
|
397
|
+
"_balance_read_freshness": {
|
|
398
|
+
"description": "Freshness provenance for the balance/coin figures: always a LIVE indexer read stamped with fetched_at and the resolved network. Figures can differ between reads moments apart — reconcile via the note's path, never treat one read as settled state.",
|
|
399
|
+
"type": "object",
|
|
400
|
+
"properties": {
|
|
401
|
+
"source": {
|
|
402
|
+
"type": "string",
|
|
403
|
+
"const": "live",
|
|
404
|
+
"description": "Always 'live' — the balance path has no MCP/SDK cache."
|
|
405
|
+
},
|
|
406
|
+
"cached": {
|
|
407
|
+
"type": "boolean",
|
|
408
|
+
"description": "Always false — present so a caller can audit freshness without inferring from absence."
|
|
409
|
+
},
|
|
410
|
+
"network": {
|
|
411
|
+
"type": "string",
|
|
412
|
+
"description": "Resolved network the figures were read from."
|
|
413
|
+
},
|
|
414
|
+
"fetched_at": {
|
|
415
|
+
"type": "string",
|
|
416
|
+
"description": "ISO timestamp of the read — compare across re-reads to resolve discrepancies."
|
|
417
|
+
},
|
|
418
|
+
"note": {
|
|
419
|
+
"type": "string",
|
|
420
|
+
"description": "Why figures can differ between reads moments apart (F-RQ-12) + the reconciliation path (re-read/fetched_at, coin objects, transaction digest)."
|
|
421
|
+
}
|
|
422
|
+
},
|
|
423
|
+
"required": [
|
|
424
|
+
"source",
|
|
425
|
+
"cached",
|
|
426
|
+
"network",
|
|
427
|
+
"fetched_at",
|
|
428
|
+
"note"
|
|
429
|
+
],
|
|
430
|
+
"additionalProperties": false
|
|
396
431
|
}
|
|
397
432
|
},
|
|
398
433
|
"additionalProperties": false,
|
|
@@ -985,7 +1020,7 @@
|
|
|
985
1020
|
}
|
|
986
1021
|
},
|
|
987
1022
|
"additionalProperties": false,
|
|
988
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
1023
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
989
1024
|
},
|
|
990
1025
|
{
|
|
991
1026
|
"type": "string"
|
|
@@ -1010,6 +1045,7 @@
|
|
|
1010
1045
|
"type": "object",
|
|
1011
1046
|
"properties": {
|
|
1012
1047
|
"entities": {
|
|
1048
|
+
"minItems": 1,
|
|
1013
1049
|
"type": "array",
|
|
1014
1050
|
"items": {
|
|
1015
1051
|
"type": "object",
|
|
@@ -1024,7 +1060,7 @@
|
|
|
1024
1060
|
}
|
|
1025
1061
|
},
|
|
1026
1062
|
"additionalProperties": false,
|
|
1027
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
1063
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
1028
1064
|
}
|
|
1029
1065
|
},
|
|
1030
1066
|
"check_all_founded": {
|
|
@@ -1473,7 +1509,7 @@
|
|
|
1473
1509
|
"type": "integer",
|
|
1474
1510
|
"minimum": 0,
|
|
1475
1511
|
"maximum": 255,
|
|
1476
|
-
"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
|
|
1512
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
1477
1513
|
},
|
|
1478
1514
|
{
|
|
1479
1515
|
"type": "null"
|
|
@@ -1487,7 +1523,7 @@
|
|
|
1487
1523
|
"type": "integer",
|
|
1488
1524
|
"minimum": 0,
|
|
1489
1525
|
"maximum": 255,
|
|
1490
|
-
"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
|
|
1526
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
1491
1527
|
},
|
|
1492
1528
|
{
|
|
1493
1529
|
"type": "null"
|
|
@@ -1523,7 +1559,7 @@
|
|
|
1523
1559
|
"type": "integer",
|
|
1524
1560
|
"minimum": 0,
|
|
1525
1561
|
"maximum": 255,
|
|
1526
|
-
"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
|
|
1562
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
1527
1563
|
},
|
|
1528
1564
|
{
|
|
1529
1565
|
"type": "null"
|
|
@@ -2360,7 +2396,7 @@
|
|
|
2360
2396
|
"properties": {
|
|
2361
2397
|
"name": {
|
|
2362
2398
|
"type": "string",
|
|
2363
|
-
"description": "Name of the product or service for sale"
|
|
2399
|
+
"description": "Name of the product or service for sale. ⚠️ 64-BYTE BUY LIMIT (F-RQ-01): the chain lists this name up to 256 bytes but validates the BUYER-SENT item name at only 64 bytes at buy time. A name of 65–256 bytes lists fine yet makes the SKU PERMANENTLY unbuyable — every order aborts E_NAME_LENGTH_EXCEEDED (abort 1). Keep SKU names ≤ 64 bytes (UTF-8); renaming cannot fix a dead SKU (the buy path matches items by EXACT name — a new name is a NEW SKU). service_quote.buyable reports this per item."
|
|
2364
2400
|
},
|
|
2365
2401
|
"price": {
|
|
2366
2402
|
"anyOf": [
|
|
@@ -2393,8 +2429,9 @@
|
|
|
2393
2429
|
"description": "WIP file URL. EMPTY string \"\" skips verification (TESTING ONLY). Production MUST use a real HTTP URL pointing to a .wip file generated by the wip_file tool. ⚠️ NETWORK DEPLOYMENT REQUIRED: the URL is stored ON-CHAIN and every customer fetches it when placing an order. A local file path (C:\\..., /path/file.wip), a localhost/loopback URL or a LAN private-IP URL is unreachable by customers on other machines — it passes the merchant-side set-time verification but makes order_new abort 100% for customers. Either deploy the .wip file to a public endpoint (GitHub Pages / IPFS / your own website) and set this to the public URL, or leave it empty (\"\") to skip WIP verification (TESTING ONLY). Example: \"https://cdn.example.com/products/phone_v1.wip\""
|
|
2394
2430
|
},
|
|
2395
2431
|
"wip_hash": {
|
|
2396
|
-
"
|
|
2397
|
-
"description": "The 'meta.hash' field INSIDE the sale's WIP file (a content hash of the file's JSON payload), committed on-chain by the merchant. NOT the SHA-256 of the .wip file bytes — hashing the downloaded file (shasum -a 256) yields a DIFFERENT value and fails verification; use the hash embedded in the file's meta section (wip_file verify reports it). BUY RULE: if this is NON-EMPTY, the buyer MUST pass this exact value as wip_hash when creating an order (ServiceBuyItem.wip_hash) — NEVER use \"\". Pinning the on-chain hash prevents the merchant from replacing the WIP file (a legitimate update) between the buyer's view and order placement, ensuring 'what you see is what you get'. EMPTY means no hash was committed (TESTING ONLY, no delivery-integrity guarantee)."
|
|
2432
|
+
"default": "",
|
|
2433
|
+
"description": "The 'meta.hash' field INSIDE the sale's WIP file (a content hash of the file's JSON payload), committed on-chain by the merchant. NOT the SHA-256 of the .wip file bytes — hashing the downloaded file (shasum -a 256) yields a DIFFERENT value and fails verification; use the hash embedded in the file's meta section (wip_file verify reports it). BUY RULE: if this is NON-EMPTY, the buyer MUST pass this exact value as wip_hash when creating an order (ServiceBuyItem.wip_hash) — NEVER use \"\". Pinning the on-chain hash prevents the merchant from replacing the WIP file (a legitimate update) between the buyer's view and order placement, ensuring 'what you see is what you get'. EMPTY means no hash was committed (TESTING ONLY, no delivery-integrity guarantee).",
|
|
2434
|
+
"type": "string"
|
|
2398
2435
|
}
|
|
2399
2436
|
},
|
|
2400
2437
|
"required": [
|
|
@@ -2470,7 +2507,7 @@
|
|
|
2470
2507
|
"type": "string"
|
|
2471
2508
|
}
|
|
2472
2509
|
],
|
|
2473
|
-
"description": "Compensation fund BALANCE (NOT a Treasury address). This field reports the total amount of funds currently held in the Service's compensation pool. To ADD funds, use `service.compensation_fund_add`. To
|
|
2510
|
+
"description": "Compensation fund BALANCE (NOT a Treasury address). This field reports the total amount of funds currently held in the Service's compensation pool. To ADD funds, use `service.compensation_fund_add`. To CLAIM a compensated award (as the ORDER OWNER, after an arbitration ruling won), use the ORDER op `order.arb_claim_compensation` — the service-side compensation claim pays the order owner and needs no special permission; `service.compensation_fund_receive` is the MERCHANT-side receive op, it will NOT deliver a buyer's award. P2-03 clarification: this is a balance value (e.g. {balance: '1000000000', token_type: '0x2::wow::WOW'}), NOT the Treasury object address. The Treasury address (if bound) is queried separately via the Service's `repositories` or `order_allocators` configuration."
|
|
2474
2511
|
},
|
|
2475
2512
|
"paused_time": {
|
|
2476
2513
|
"anyOf": [
|
|
@@ -2523,7 +2560,7 @@
|
|
|
2523
2560
|
"properties": {
|
|
2524
2561
|
"guard": {
|
|
2525
2562
|
"type": "string",
|
|
2526
|
-
"description": "Guard object ID or name. A distribution call submits ONE guard; EVERY Allocator bound to that guard fires — in vector order, each against the balance left by the previous (
|
|
2563
|
+
"description": "Guard object ID or name. A distribution call submits ONE guard; EVERY Allocator bound to that guard fires — in vector order, each against the balance left by the previous (the distribution loop matches the submitted guard address, it does NOT evaluate guards competitively). NOT first-match-wins: Allocators with different guards are alternative distribution paths selected by the caller's choice of guard (e.g., a refund guard vs a damage guard), and mutual exclusion must be expressed inside the Guard conditions themselves, never assumed from ordering."
|
|
2527
2564
|
},
|
|
2528
2565
|
"sharing": {
|
|
2529
2566
|
"type": "array",
|
|
@@ -2539,7 +2576,7 @@
|
|
|
2539
2576
|
"type": "integer",
|
|
2540
2577
|
"minimum": 0,
|
|
2541
2578
|
"maximum": 255,
|
|
2542
|
-
"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
|
|
2579
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
2543
2580
|
}
|
|
2544
2581
|
},
|
|
2545
2582
|
"required": [
|
|
@@ -2552,26 +2589,34 @@
|
|
|
2552
2589
|
"type": "object",
|
|
2553
2590
|
"properties": {
|
|
2554
2591
|
"Entity": {
|
|
2555
|
-
"
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
"type": "string",
|
|
2559
|
-
"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)."
|
|
2592
|
+
"anyOf": [
|
|
2593
|
+
{
|
|
2594
|
+
"description": "Account name, address (0x...), or mark name. When using string format, local marks are searched first. EXAMPLE: 'alice' - searches local marks first, then global; EXAMPLE: '0x2...' (64 hex chars) - uses address directly; EXAMPLE: '' - uses the default local account"
|
|
2560
2595
|
},
|
|
2561
|
-
|
|
2562
|
-
"
|
|
2563
|
-
"
|
|
2596
|
+
{
|
|
2597
|
+
"type": "object",
|
|
2598
|
+
"properties": {
|
|
2599
|
+
"name_or_address": {
|
|
2600
|
+
"type": "string",
|
|
2601
|
+
"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)."
|
|
2602
|
+
},
|
|
2603
|
+
"local_mark_first": {
|
|
2604
|
+
"description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks",
|
|
2605
|
+
"type": "boolean"
|
|
2606
|
+
}
|
|
2607
|
+
},
|
|
2608
|
+
"additionalProperties": false,
|
|
2609
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
2564
2610
|
}
|
|
2565
|
-
|
|
2566
|
-
"
|
|
2567
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
2611
|
+
],
|
|
2612
|
+
"description": "Account or address lookup. Can be a simple string (recommended for AI) or full object with explicit local_mark_first control. String form auto-converts to { name_or_address: <string>, local_mark_first: true }."
|
|
2568
2613
|
}
|
|
2569
2614
|
},
|
|
2570
2615
|
"required": [
|
|
2571
2616
|
"Entity"
|
|
2572
2617
|
],
|
|
2573
2618
|
"additionalProperties": false,
|
|
2574
|
-
"description": "Static address resolved via LocalMark. Format: {Entity: {name_or_address: 'mark_name'}}
|
|
2619
|
+
"description": "Static address resolved via LocalMark. Format: {Entity: 'mark_name'} (string shorthand) or {Entity: {name_or_address: 'mark_name'}} (full object).F-RQ-11 (rq2 promotion): string shorthand accepted — the FIX-005 transform resolves local marks first."
|
|
2575
2620
|
},
|
|
2576
2621
|
{
|
|
2577
2622
|
"type": "object",
|
|
@@ -3749,7 +3794,7 @@
|
|
|
3749
3794
|
}
|
|
3750
3795
|
},
|
|
3751
3796
|
"additionalProperties": false,
|
|
3752
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
3797
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
3753
3798
|
},
|
|
3754
3799
|
{
|
|
3755
3800
|
"type": "string"
|
|
@@ -3774,6 +3819,7 @@
|
|
|
3774
3819
|
"type": "object",
|
|
3775
3820
|
"properties": {
|
|
3776
3821
|
"entities": {
|
|
3822
|
+
"minItems": 1,
|
|
3777
3823
|
"type": "array",
|
|
3778
3824
|
"items": {
|
|
3779
3825
|
"type": "object",
|
|
@@ -3788,7 +3834,7 @@
|
|
|
3788
3834
|
}
|
|
3789
3835
|
},
|
|
3790
3836
|
"additionalProperties": false,
|
|
3791
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
3837
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
3792
3838
|
}
|
|
3793
3839
|
},
|
|
3794
3840
|
"check_all_founded": {
|
|
@@ -4186,7 +4232,7 @@
|
|
|
4186
4232
|
"type": "integer",
|
|
4187
4233
|
"minimum": 0,
|
|
4188
4234
|
"maximum": 255,
|
|
4189
|
-
"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
|
|
4235
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
4190
4236
|
},
|
|
4191
4237
|
{
|
|
4192
4238
|
"type": "null"
|
|
@@ -4472,7 +4518,7 @@
|
|
|
4472
4518
|
"type": "integer",
|
|
4473
4519
|
"minimum": 0,
|
|
4474
4520
|
"maximum": 255,
|
|
4475
|
-
"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
|
|
4521
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
4476
4522
|
}
|
|
4477
4523
|
},
|
|
4478
4524
|
"required": [
|
|
@@ -4799,7 +4845,7 @@
|
|
|
4799
4845
|
"properties": {
|
|
4800
4846
|
"guard": {
|
|
4801
4847
|
"type": "string",
|
|
4802
|
-
"description": "Guard object ID or name. A distribution call submits ONE guard; EVERY Allocator bound to that guard fires — in vector order, each against the balance left by the previous (
|
|
4848
|
+
"description": "Guard object ID or name. A distribution call submits ONE guard; EVERY Allocator bound to that guard fires — in vector order, each against the balance left by the previous (the distribution loop matches the submitted guard address, it does NOT evaluate guards competitively). NOT first-match-wins: Allocators with different guards are alternative distribution paths selected by the caller's choice of guard (e.g., a refund guard vs a damage guard), and mutual exclusion must be expressed inside the Guard conditions themselves, never assumed from ordering."
|
|
4803
4849
|
},
|
|
4804
4850
|
"sharing": {
|
|
4805
4851
|
"type": "array",
|
|
@@ -4815,7 +4861,7 @@
|
|
|
4815
4861
|
"type": "integer",
|
|
4816
4862
|
"minimum": 0,
|
|
4817
4863
|
"maximum": 255,
|
|
4818
|
-
"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
|
|
4864
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
4819
4865
|
}
|
|
4820
4866
|
},
|
|
4821
4867
|
"required": [
|
|
@@ -4828,26 +4874,34 @@
|
|
|
4828
4874
|
"type": "object",
|
|
4829
4875
|
"properties": {
|
|
4830
4876
|
"Entity": {
|
|
4831
|
-
"
|
|
4832
|
-
|
|
4833
|
-
|
|
4834
|
-
"type": "string",
|
|
4835
|
-
"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)."
|
|
4877
|
+
"anyOf": [
|
|
4878
|
+
{
|
|
4879
|
+
"description": "Account name, address (0x...), or mark name. When using string format, local marks are searched first. EXAMPLE: 'alice' - searches local marks first, then global; EXAMPLE: '0x2...' (64 hex chars) - uses address directly; EXAMPLE: '' - uses the default local account"
|
|
4836
4880
|
},
|
|
4837
|
-
|
|
4838
|
-
"
|
|
4839
|
-
"
|
|
4881
|
+
{
|
|
4882
|
+
"type": "object",
|
|
4883
|
+
"properties": {
|
|
4884
|
+
"name_or_address": {
|
|
4885
|
+
"type": "string",
|
|
4886
|
+
"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)."
|
|
4887
|
+
},
|
|
4888
|
+
"local_mark_first": {
|
|
4889
|
+
"description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks",
|
|
4890
|
+
"type": "boolean"
|
|
4891
|
+
}
|
|
4892
|
+
},
|
|
4893
|
+
"additionalProperties": false,
|
|
4894
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
4840
4895
|
}
|
|
4841
|
-
|
|
4842
|
-
"
|
|
4843
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
4896
|
+
],
|
|
4897
|
+
"description": "Account or address lookup. Can be a simple string (recommended for AI) or full object with explicit local_mark_first control. String form auto-converts to { name_or_address: <string>, local_mark_first: true }."
|
|
4844
4898
|
}
|
|
4845
4899
|
},
|
|
4846
4900
|
"required": [
|
|
4847
4901
|
"Entity"
|
|
4848
4902
|
],
|
|
4849
4903
|
"additionalProperties": false,
|
|
4850
|
-
"description": "Static address resolved via LocalMark. Format: {Entity: {name_or_address: 'mark_name'}}
|
|
4904
|
+
"description": "Static address resolved via LocalMark. Format: {Entity: 'mark_name'} (string shorthand) or {Entity: {name_or_address: 'mark_name'}} (full object).F-RQ-11 (rq2 promotion): string shorthand accepted — the FIX-005 transform resolves local marks first."
|
|
4851
4905
|
},
|
|
4852
4906
|
{
|
|
4853
4907
|
"type": "object",
|
|
@@ -5254,7 +5308,7 @@
|
|
|
5254
5308
|
"type": "integer",
|
|
5255
5309
|
"minimum": 0,
|
|
5256
5310
|
"maximum": 255,
|
|
5257
|
-
"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
|
|
5311
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
5258
5312
|
}
|
|
5259
5313
|
},
|
|
5260
5314
|
"required": [
|
|
@@ -5267,26 +5321,34 @@
|
|
|
5267
5321
|
"type": "object",
|
|
5268
5322
|
"properties": {
|
|
5269
5323
|
"Entity": {
|
|
5270
|
-
"
|
|
5271
|
-
|
|
5272
|
-
|
|
5273
|
-
"type": "string",
|
|
5274
|
-
"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)."
|
|
5324
|
+
"anyOf": [
|
|
5325
|
+
{
|
|
5326
|
+
"description": "Account name, address (0x...), or mark name. When using string format, local marks are searched first. EXAMPLE: 'alice' - searches local marks first, then global; EXAMPLE: '0x2...' (64 hex chars) - uses address directly; EXAMPLE: '' - uses the default local account"
|
|
5275
5327
|
},
|
|
5276
|
-
|
|
5277
|
-
"
|
|
5278
|
-
"
|
|
5328
|
+
{
|
|
5329
|
+
"type": "object",
|
|
5330
|
+
"properties": {
|
|
5331
|
+
"name_or_address": {
|
|
5332
|
+
"type": "string",
|
|
5333
|
+
"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)."
|
|
5334
|
+
},
|
|
5335
|
+
"local_mark_first": {
|
|
5336
|
+
"description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks",
|
|
5337
|
+
"type": "boolean"
|
|
5338
|
+
}
|
|
5339
|
+
},
|
|
5340
|
+
"additionalProperties": false,
|
|
5341
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
5279
5342
|
}
|
|
5280
|
-
|
|
5281
|
-
"
|
|
5282
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
5343
|
+
],
|
|
5344
|
+
"description": "Account or address lookup. Can be a simple string (recommended for AI) or full object with explicit local_mark_first control. String form auto-converts to { name_or_address: <string>, local_mark_first: true }."
|
|
5283
5345
|
}
|
|
5284
5346
|
},
|
|
5285
5347
|
"required": [
|
|
5286
5348
|
"Entity"
|
|
5287
5349
|
],
|
|
5288
5350
|
"additionalProperties": false,
|
|
5289
|
-
"description": "Static address resolved via LocalMark. Format: {Entity: {name_or_address: 'mark_name'}}
|
|
5351
|
+
"description": "Static address resolved via LocalMark. Format: {Entity: 'mark_name'} (string shorthand) or {Entity: {name_or_address: 'mark_name'}} (full object).F-RQ-11 (rq2 promotion): string shorthand accepted — the FIX-005 transform resolves local marks first."
|
|
5290
5352
|
},
|
|
5291
5353
|
{
|
|
5292
5354
|
"type": "object",
|
|
@@ -5318,7 +5380,7 @@
|
|
|
5318
5380
|
"type": "integer",
|
|
5319
5381
|
"minimum": 0,
|
|
5320
5382
|
"maximum": 255,
|
|
5321
|
-
"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
|
|
5383
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
5322
5384
|
}
|
|
5323
5385
|
},
|
|
5324
5386
|
"required": [
|
|
@@ -5368,7 +5430,7 @@
|
|
|
5368
5430
|
"type": "integer",
|
|
5369
5431
|
"minimum": 0,
|
|
5370
5432
|
"maximum": 255,
|
|
5371
|
-
"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
|
|
5433
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
5372
5434
|
},
|
|
5373
5435
|
{
|
|
5374
5436
|
"type": "null"
|
|
@@ -6366,7 +6428,7 @@
|
|
|
6366
6428
|
"type": "integer",
|
|
6367
6429
|
"minimum": 0,
|
|
6368
6430
|
"maximum": 255,
|
|
6369
|
-
"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
|
|
6431
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
6370
6432
|
},
|
|
6371
6433
|
"b_submission": {
|
|
6372
6434
|
"type": "boolean",
|
|
@@ -6683,7 +6745,7 @@
|
|
|
6683
6745
|
}
|
|
6684
6746
|
},
|
|
6685
6747
|
"additionalProperties": false,
|
|
6686
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
6748
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
6687
6749
|
},
|
|
6688
6750
|
{
|
|
6689
6751
|
"type": "string"
|
|
@@ -6708,6 +6770,7 @@
|
|
|
6708
6770
|
"type": "object",
|
|
6709
6771
|
"properties": {
|
|
6710
6772
|
"entities": {
|
|
6773
|
+
"minItems": 1,
|
|
6711
6774
|
"type": "array",
|
|
6712
6775
|
"items": {
|
|
6713
6776
|
"type": "object",
|
|
@@ -6722,7 +6785,7 @@
|
|
|
6722
6785
|
}
|
|
6723
6786
|
},
|
|
6724
6787
|
"additionalProperties": false,
|
|
6725
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
6788
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
6726
6789
|
}
|
|
6727
6790
|
},
|
|
6728
6791
|
"check_all_founded": {
|
|
@@ -7109,7 +7172,7 @@
|
|
|
7109
7172
|
"type": "integer",
|
|
7110
7173
|
"minimum": 0,
|
|
7111
7174
|
"maximum": 255,
|
|
7112
|
-
"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
|
|
7175
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
7113
7176
|
}
|
|
7114
7177
|
},
|
|
7115
7178
|
"required": [
|
|
@@ -7122,26 +7185,34 @@
|
|
|
7122
7185
|
"type": "object",
|
|
7123
7186
|
"properties": {
|
|
7124
7187
|
"Entity": {
|
|
7125
|
-
"
|
|
7126
|
-
|
|
7127
|
-
|
|
7128
|
-
"type": "string",
|
|
7129
|
-
"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)."
|
|
7188
|
+
"anyOf": [
|
|
7189
|
+
{
|
|
7190
|
+
"description": "Account name, address (0x...), or mark name. When using string format, local marks are searched first. EXAMPLE: 'alice' - searches local marks first, then global; EXAMPLE: '0x2...' (64 hex chars) - uses address directly; EXAMPLE: '' - uses the default local account"
|
|
7130
7191
|
},
|
|
7131
|
-
|
|
7132
|
-
"
|
|
7133
|
-
"
|
|
7192
|
+
{
|
|
7193
|
+
"type": "object",
|
|
7194
|
+
"properties": {
|
|
7195
|
+
"name_or_address": {
|
|
7196
|
+
"type": "string",
|
|
7197
|
+
"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)."
|
|
7198
|
+
},
|
|
7199
|
+
"local_mark_first": {
|
|
7200
|
+
"description": "Whether to prioritize local marks, if true, prioritize local marks, otherwise prioritize global marks",
|
|
7201
|
+
"type": "boolean"
|
|
7202
|
+
}
|
|
7203
|
+
},
|
|
7204
|
+
"additionalProperties": false,
|
|
7205
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
7134
7206
|
}
|
|
7135
|
-
|
|
7136
|
-
"
|
|
7137
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
7207
|
+
],
|
|
7208
|
+
"description": "Account or address lookup. Can be a simple string (recommended for AI) or full object with explicit local_mark_first control. String form auto-converts to { name_or_address: <string>, local_mark_first: true }."
|
|
7138
7209
|
}
|
|
7139
7210
|
},
|
|
7140
7211
|
"required": [
|
|
7141
7212
|
"Entity"
|
|
7142
7213
|
],
|
|
7143
7214
|
"additionalProperties": false,
|
|
7144
|
-
"description": "Static address resolved via LocalMark. Format: {Entity: {name_or_address: 'mark_name'}}
|
|
7215
|
+
"description": "Static address resolved via LocalMark. Format: {Entity: 'mark_name'} (string shorthand) or {Entity: {name_or_address: 'mark_name'}} (full object).F-RQ-11 (rq2 promotion): string shorthand accepted — the FIX-005 transform resolves local marks first."
|
|
7145
7216
|
},
|
|
7146
7217
|
{
|
|
7147
7218
|
"type": "object",
|
|
@@ -7856,7 +7927,7 @@
|
|
|
7856
7927
|
}
|
|
7857
7928
|
},
|
|
7858
7929
|
"additionalProperties": false,
|
|
7859
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
7930
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
7860
7931
|
},
|
|
7861
7932
|
{
|
|
7862
7933
|
"type": "string"
|
|
@@ -7881,6 +7952,7 @@
|
|
|
7881
7952
|
"type": "object",
|
|
7882
7953
|
"properties": {
|
|
7883
7954
|
"entities": {
|
|
7955
|
+
"minItems": 1,
|
|
7884
7956
|
"type": "array",
|
|
7885
7957
|
"items": {
|
|
7886
7958
|
"type": "object",
|
|
@@ -7895,7 +7967,7 @@
|
|
|
7895
7967
|
}
|
|
7896
7968
|
},
|
|
7897
7969
|
"additionalProperties": false,
|
|
7898
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
7970
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
7899
7971
|
}
|
|
7900
7972
|
},
|
|
7901
7973
|
"check_all_founded": {
|
|
@@ -10211,7 +10283,7 @@
|
|
|
10211
10283
|
}
|
|
10212
10284
|
},
|
|
10213
10285
|
"additionalProperties": false,
|
|
10214
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
10286
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
10215
10287
|
},
|
|
10216
10288
|
{
|
|
10217
10289
|
"type": "string"
|
|
@@ -10236,6 +10308,7 @@
|
|
|
10236
10308
|
"type": "object",
|
|
10237
10309
|
"properties": {
|
|
10238
10310
|
"entities": {
|
|
10311
|
+
"minItems": 1,
|
|
10239
10312
|
"type": "array",
|
|
10240
10313
|
"items": {
|
|
10241
10314
|
"type": "object",
|
|
@@ -10250,7 +10323,7 @@
|
|
|
10250
10323
|
}
|
|
10251
10324
|
},
|
|
10252
10325
|
"additionalProperties": false,
|
|
10253
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
10326
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
10254
10327
|
}
|
|
10255
10328
|
},
|
|
10256
10329
|
"check_all_founded": {
|
|
@@ -11633,7 +11706,7 @@
|
|
|
11633
11706
|
}
|
|
11634
11707
|
},
|
|
11635
11708
|
"additionalProperties": false,
|
|
11636
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
11709
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
11637
11710
|
},
|
|
11638
11711
|
{
|
|
11639
11712
|
"type": "string"
|
|
@@ -11658,6 +11731,7 @@
|
|
|
11658
11731
|
"type": "object",
|
|
11659
11732
|
"properties": {
|
|
11660
11733
|
"entities": {
|
|
11734
|
+
"minItems": 1,
|
|
11661
11735
|
"type": "array",
|
|
11662
11736
|
"items": {
|
|
11663
11737
|
"type": "object",
|
|
@@ -11672,7 +11746,7 @@
|
|
|
11672
11746
|
}
|
|
11673
11747
|
},
|
|
11674
11748
|
"additionalProperties": false,
|
|
11675
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
11749
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
11676
11750
|
}
|
|
11677
11751
|
},
|
|
11678
11752
|
"check_all_founded": {
|
|
@@ -12622,7 +12696,7 @@
|
|
|
12622
12696
|
}
|
|
12623
12697
|
},
|
|
12624
12698
|
"additionalProperties": false,
|
|
12625
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
12699
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
12626
12700
|
},
|
|
12627
12701
|
{
|
|
12628
12702
|
"type": "string"
|
|
@@ -12647,6 +12721,7 @@
|
|
|
12647
12721
|
"type": "object",
|
|
12648
12722
|
"properties": {
|
|
12649
12723
|
"entities": {
|
|
12724
|
+
"minItems": 1,
|
|
12650
12725
|
"type": "array",
|
|
12651
12726
|
"items": {
|
|
12652
12727
|
"type": "object",
|
|
@@ -12661,7 +12736,7 @@
|
|
|
12661
12736
|
}
|
|
12662
12737
|
},
|
|
12663
12738
|
"additionalProperties": false,
|
|
12664
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
12739
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
12665
12740
|
}
|
|
12666
12741
|
},
|
|
12667
12742
|
"check_all_founded": {
|
|
@@ -14979,7 +15054,7 @@
|
|
|
14979
15054
|
}
|
|
14980
15055
|
},
|
|
14981
15056
|
"additionalProperties": false,
|
|
14982
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
15057
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
14983
15058
|
},
|
|
14984
15059
|
{
|
|
14985
15060
|
"type": "string"
|
|
@@ -15004,6 +15079,7 @@
|
|
|
15004
15079
|
"type": "object",
|
|
15005
15080
|
"properties": {
|
|
15006
15081
|
"entities": {
|
|
15082
|
+
"minItems": 1,
|
|
15007
15083
|
"type": "array",
|
|
15008
15084
|
"items": {
|
|
15009
15085
|
"type": "object",
|
|
@@ -15018,7 +15094,7 @@
|
|
|
15018
15094
|
}
|
|
15019
15095
|
},
|
|
15020
15096
|
"additionalProperties": false,
|
|
15021
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
15097
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
15022
15098
|
}
|
|
15023
15099
|
},
|
|
15024
15100
|
"check_all_founded": {
|
|
@@ -16227,6 +16303,97 @@
|
|
|
16227
16303
|
"result"
|
|
16228
16304
|
],
|
|
16229
16305
|
"additionalProperties": false
|
|
16306
|
+
},
|
|
16307
|
+
{
|
|
16308
|
+
"type": "object",
|
|
16309
|
+
"properties": {
|
|
16310
|
+
"query_type": {
|
|
16311
|
+
"type": "string",
|
|
16312
|
+
"const": "recover_created_objects"
|
|
16313
|
+
},
|
|
16314
|
+
"result": {
|
|
16315
|
+
"type": "object",
|
|
16316
|
+
"properties": {
|
|
16317
|
+
"label": {
|
|
16318
|
+
"type": "string",
|
|
16319
|
+
"description": "The account name or address whose recovery state was assembled"
|
|
16320
|
+
},
|
|
16321
|
+
"resolved_address": {
|
|
16322
|
+
"description": "Resolved 0x address (present when the label resolved locally or was already an address)",
|
|
16323
|
+
"type": "string"
|
|
16324
|
+
},
|
|
16325
|
+
"inflight_markers": {
|
|
16326
|
+
"type": "array",
|
|
16327
|
+
"items": {
|
|
16328
|
+
"type": "object",
|
|
16329
|
+
"propertyNames": {
|
|
16330
|
+
"type": "string"
|
|
16331
|
+
},
|
|
16332
|
+
"additionalProperties": {}
|
|
16333
|
+
},
|
|
16334
|
+
"description": "Open in-flight markers of THIS process — operations whose commit state was never observed (op, service/allocation, buyer, items_count, started_at, digests). Each is a recovery candidate: verify on-chain before any resubmit."
|
|
16335
|
+
},
|
|
16336
|
+
"returned_digests": {
|
|
16337
|
+
"type": "array",
|
|
16338
|
+
"items": {
|
|
16339
|
+
"type": "object",
|
|
16340
|
+
"propertyNames": {
|
|
16341
|
+
"type": "string"
|
|
16342
|
+
},
|
|
16343
|
+
"additionalProperties": {}
|
|
16344
|
+
},
|
|
16345
|
+
"description": "Digests this process recently RETURNED as executed receipts (newest first) — a marker digest that appears here already landed."
|
|
16346
|
+
},
|
|
16347
|
+
"landed_tombstones": {
|
|
16348
|
+
"type": "array",
|
|
16349
|
+
"items": {
|
|
16350
|
+
"type": "object",
|
|
16351
|
+
"propertyNames": {
|
|
16352
|
+
"type": "string"
|
|
16353
|
+
},
|
|
16354
|
+
"additionalProperties": {}
|
|
16355
|
+
},
|
|
16356
|
+
"description": "Recently landed transactions whose objects may not be readable yet (index-lag window) — a 'not found' inside this window is a lag suspect, not absence."
|
|
16357
|
+
},
|
|
16358
|
+
"onchain_activity": {
|
|
16359
|
+
"description": "The account's on-chain sent activity (same shape as onchain_address_activity 'sent'), or null when the activity lookup failed (see onchain_activity_error).",
|
|
16360
|
+
"anyOf": [
|
|
16361
|
+
{
|
|
16362
|
+
"type": "object",
|
|
16363
|
+
"propertyNames": {
|
|
16364
|
+
"type": "string"
|
|
16365
|
+
},
|
|
16366
|
+
"additionalProperties": {}
|
|
16367
|
+
},
|
|
16368
|
+
{
|
|
16369
|
+
"type": "null"
|
|
16370
|
+
}
|
|
16371
|
+
]
|
|
16372
|
+
},
|
|
16373
|
+
"onchain_activity_error": {
|
|
16374
|
+
"description": "Why the on-chain activity leg failed (markers/digests above are still authoritative for this process)",
|
|
16375
|
+
"type": "string"
|
|
16376
|
+
},
|
|
16377
|
+
"recovery_guidance": {
|
|
16378
|
+
"type": "string",
|
|
16379
|
+
"description": "The decision rule applied to the joined sources: adopt-what-landed, verify-digest-first, resubmit-only-when-confirmed-absent"
|
|
16380
|
+
}
|
|
16381
|
+
},
|
|
16382
|
+
"required": [
|
|
16383
|
+
"label",
|
|
16384
|
+
"inflight_markers",
|
|
16385
|
+
"returned_digests",
|
|
16386
|
+
"landed_tombstones",
|
|
16387
|
+
"recovery_guidance"
|
|
16388
|
+
],
|
|
16389
|
+
"additionalProperties": false
|
|
16390
|
+
}
|
|
16391
|
+
},
|
|
16392
|
+
"required": [
|
|
16393
|
+
"query_type",
|
|
16394
|
+
"result"
|
|
16395
|
+
],
|
|
16396
|
+
"additionalProperties": false
|
|
16230
16397
|
}
|
|
16231
16398
|
]
|
|
16232
16399
|
},
|
|
@@ -16343,6 +16510,57 @@
|
|
|
16343
16510
|
"suspended": {
|
|
16344
16511
|
"type": "boolean",
|
|
16345
16512
|
"description": "True when the sale is suspended — a suspended item cannot be bought."
|
|
16513
|
+
},
|
|
16514
|
+
"stock": {
|
|
16515
|
+
"anyOf": [
|
|
16516
|
+
{
|
|
16517
|
+
"type": "string"
|
|
16518
|
+
},
|
|
16519
|
+
{
|
|
16520
|
+
"type": "null"
|
|
16521
|
+
}
|
|
16522
|
+
],
|
|
16523
|
+
"description": "S4-03 (F-20): remaining units on the shelf for this sale — the EXACT value the chain checks against the requested quantity at buy (service:16 E_STOCK_NOT_ENOUGH). null when the chain read could not decode it (unknown, NOT zero)."
|
|
16524
|
+
},
|
|
16525
|
+
"stock_ok": {
|
|
16526
|
+
"anyOf": [
|
|
16527
|
+
{
|
|
16528
|
+
"type": "boolean"
|
|
16529
|
+
},
|
|
16530
|
+
{
|
|
16531
|
+
"type": "null"
|
|
16532
|
+
}
|
|
16533
|
+
],
|
|
16534
|
+
"description": "S4-03 (F-20): true when stock >= this line's quantity (the basket line is purchasable); false = the buy WILL abort stock_exhausted at the requested quantity; null = stock unreadable (verify before checkout)."
|
|
16535
|
+
},
|
|
16536
|
+
"buyable": {
|
|
16537
|
+
"anyOf": [
|
|
16538
|
+
{
|
|
16539
|
+
"type": "boolean"
|
|
16540
|
+
},
|
|
16541
|
+
{
|
|
16542
|
+
"type": "null"
|
|
16543
|
+
}
|
|
16544
|
+
],
|
|
16545
|
+
"description": "F-RQ-01 buy verdict for this line: false = a known hard blocker exists (name over the on-chain 64-byte quote limit, suspended sale, or stock short) — the buy WILL abort; null = no known blocker but stock unreadable (verify before checkout); true = passes every known gate. The chain aborts E_NAME_LENGTH_EXCEEDED (abort 1) on an over-limit name BEFORE any other check, so a quoted price on a buyable:false line is a false promise, not a price."
|
|
16546
|
+
},
|
|
16547
|
+
"buyable_blockers": {
|
|
16548
|
+
"type": "array",
|
|
16549
|
+
"items": {
|
|
16550
|
+
"type": "string"
|
|
16551
|
+
},
|
|
16552
|
+
"description": "The concrete hard blockers when buyable is false (empty otherwise) — e.g. 'name over the 64-byte buy limit (80 bytes)', 'sale is suspended (merchant sale_suspension)', 'stock 2 < requested quantity 5'. Fix lies with the merchant (rename = NEW SKU, unsuspend, restock)."
|
|
16553
|
+
},
|
|
16554
|
+
"wip": {
|
|
16555
|
+
"anyOf": [
|
|
16556
|
+
{
|
|
16557
|
+
"type": "string"
|
|
16558
|
+
},
|
|
16559
|
+
{
|
|
16560
|
+
"type": "null"
|
|
16561
|
+
}
|
|
16562
|
+
],
|
|
16563
|
+
"description": "ks7 F-10: the WIP commitment hash this SKU will bind into the order at buy (the on-chain sales.wip_hash — order_new REQUIRES it whenever the sale carries one, so the buy would fail without it). Exposed here so the buyer sees BEFORE paying which immutable detail file they will be held to; verify it via wip verify (meta.hash is the CANONICAL commitment hash, not the file's sha256 — see the WIP hash dual-semantics note). null when the sale carries no WIP."
|
|
16346
16564
|
}
|
|
16347
16565
|
},
|
|
16348
16566
|
"required": [
|
|
@@ -16351,11 +16569,50 @@
|
|
|
16351
16569
|
"unit_price",
|
|
16352
16570
|
"unit_price_display",
|
|
16353
16571
|
"line_total",
|
|
16354
|
-
"suspended"
|
|
16572
|
+
"suspended",
|
|
16573
|
+
"stock",
|
|
16574
|
+
"stock_ok",
|
|
16575
|
+
"buyable",
|
|
16576
|
+
"buyable_blockers",
|
|
16577
|
+
"wip"
|
|
16355
16578
|
],
|
|
16356
16579
|
"additionalProperties": false
|
|
16357
16580
|
}
|
|
16358
16581
|
},
|
|
16582
|
+
"buyable": {
|
|
16583
|
+
"type": "object",
|
|
16584
|
+
"properties": {
|
|
16585
|
+
"purchasable": {
|
|
16586
|
+
"anyOf": [
|
|
16587
|
+
{
|
|
16588
|
+
"type": "boolean"
|
|
16589
|
+
},
|
|
16590
|
+
{
|
|
16591
|
+
"type": "null"
|
|
16592
|
+
}
|
|
16593
|
+
],
|
|
16594
|
+
"description": "Basket-level verdict: false = at least one line has a hard blocker, or the Service is paused, or the total is zero (dead basket) — EVERY order attempt will abort; null = no known blocker but a line's stock is unreadable; true = all lines pass the known gates. Never promise a checkout against false."
|
|
16595
|
+
},
|
|
16596
|
+
"blocked_items": {
|
|
16597
|
+
"type": "array",
|
|
16598
|
+
"items": {
|
|
16599
|
+
"type": "string"
|
|
16600
|
+
},
|
|
16601
|
+
"description": "SKU names of the lines with hard blockers (empty when purchasable is not false)."
|
|
16602
|
+
},
|
|
16603
|
+
"note": {
|
|
16604
|
+
"type": "string",
|
|
16605
|
+
"description": "The blocker detail in buyer language — an over-limit SKU name spells out the F-RQ-01 semantics (listable at 256 bytes, unbuyable past 64, renaming = new SKU); a suspended/stock line names its blocker; the null case asks for a stock verification."
|
|
16606
|
+
}
|
|
16607
|
+
},
|
|
16608
|
+
"required": [
|
|
16609
|
+
"purchasable",
|
|
16610
|
+
"blocked_items",
|
|
16611
|
+
"note"
|
|
16612
|
+
],
|
|
16613
|
+
"additionalProperties": false,
|
|
16614
|
+
"description": "F-RQ-01 (rq-tn-261030-8693be) basket buy verdict — the read path's answer to 'can this quote actually be ORDERED'. Exists because the listing side (256-byte names) and the buy side (64-byte names) diverge on-chain: a Service can carry SKUs that quote and stock-check fine yet abort E_NAME_LENGTH_EXCEEDED (abort 1) on every order. Buyability is a pre-check disclosure, not a chain state — re-verify before large orders."
|
|
16615
|
+
},
|
|
16359
16616
|
"total_pay": {
|
|
16360
16617
|
"type": "object",
|
|
16361
16618
|
"properties": {
|
|
@@ -16368,7 +16625,7 @@
|
|
|
16368
16625
|
},
|
|
16369
16626
|
"note": {
|
|
16370
16627
|
"type": "string",
|
|
16371
|
-
"description": "FLOOR semantics (bs29 R-17,
|
|
16628
|
+
"description": "FLOOR semantics (bs29 R-17, the published buy contract): total_pay is a MINIMUM — an under-funded total aborts (E_COIN_NOT_ENOUGH); an over-funded one succeeds but the ORDER still escrows exactly Σ(unit_price × quantity) − discount (the excess is split back, never escrowed). Pass exactly this balance; without a discount you may omit total_pay entirely (the buy auto-derives this exact total, M-K17). Prefixed with the paused warning when the Service is paused (R-16)."
|
|
16372
16629
|
}
|
|
16373
16630
|
},
|
|
16374
16631
|
"required": [
|
|
@@ -16433,7 +16690,7 @@
|
|
|
16433
16690
|
},
|
|
16434
16691
|
"benchmark_met": {
|
|
16435
16692
|
"type": "boolean",
|
|
16436
|
-
"description": "False when the list total is below benchmark — the chain quote is then issued at FULL price WITHOUT stamping the coupon
|
|
16693
|
+
"description": "False when the list total is below benchmark — the on-chain quote is then issued at FULL price WITHOUT stamping the coupon, so attaching the coupon at buy aborts (E_DISCOUNT_COUPON_UNEXPECTED, full rollback, nothing paid, coupon PRESERVED). Drop the coupon to buy at full price and keep it; raise the basket to actually use it."
|
|
16437
16694
|
},
|
|
16438
16695
|
"applied": {
|
|
16439
16696
|
"type": "boolean",
|
|
@@ -16739,18 +16996,43 @@
|
|
|
16739
16996
|
],
|
|
16740
16997
|
"description": "Rating condition detected in the claim guard (F-AOF-4): 'like' or 'dislike' = the claim ONLY pays for that rating (any other rating aborts the claim); '>= N' / '> N' / '== N' = a numeric rating floor decoded from the claim guard's structured root (F-AOF-4 v2, bkg15 F17 / klk15 C-05 — the claim only pays at or above N stars); 'unknown' = a rating condition EXISTS but its shape could not be parsed — check the guard before promising the incentive; null = no rating condition detected."
|
|
16741
16998
|
},
|
|
16742
|
-
"
|
|
16999
|
+
"min_rows": {
|
|
16743
17000
|
"anyOf": [
|
|
16744
17001
|
{
|
|
16745
|
-
"type": "
|
|
16746
|
-
|
|
16747
|
-
|
|
16748
|
-
|
|
16749
|
-
|
|
16750
|
-
|
|
16751
|
-
|
|
16752
|
-
|
|
16753
|
-
|
|
17002
|
+
"type": "number"
|
|
17003
|
+
},
|
|
17004
|
+
{
|
|
17005
|
+
"type": "null"
|
|
17006
|
+
}
|
|
17007
|
+
],
|
|
17008
|
+
"description": "AGGREGATE rating-gate row threshold (ddmc2 F-09): when the floor gate is count_where(rating >= N) >= M, min_rating carries the INNER star floor (N) and THIS field carries the OUTER row-count threshold (M) — kept separate so the row count is never mistaken for the star floor. null = the gate is not an aggregate form (or no threshold decoded)."
|
|
17009
|
+
},
|
|
17010
|
+
"unreadable_legs": {
|
|
17011
|
+
"anyOf": [
|
|
17012
|
+
{
|
|
17013
|
+
"type": "array",
|
|
17014
|
+
"items": {
|
|
17015
|
+
"type": "string"
|
|
17016
|
+
}
|
|
17017
|
+
},
|
|
17018
|
+
{
|
|
17019
|
+
"type": "null"
|
|
17020
|
+
}
|
|
17021
|
+
],
|
|
17022
|
+
"description": "W5-11③ (ks7 F-09) fail-honest boundary, made STRUCTURED: the recognized-but-not-statically-decodable guard legs behind min_rating 'unknown' — e.g. a rating/contribution gate expressed as set membership (query repository.data find_where 1176 feeding vec_contains_address). Each entry names the exact shape so a buyer sees precisely what stays unverified instead of a bare 'unknown'. null = nothing unrecognized (the floor decoded, the polarity matched, or the guard carries no rating signal at all)."
|
|
17023
|
+
},
|
|
17024
|
+
"claim_window": {
|
|
17025
|
+
"anyOf": [
|
|
17026
|
+
{
|
|
17027
|
+
"type": "object",
|
|
17028
|
+
"properties": {
|
|
17029
|
+
"opens_after_s": {
|
|
17030
|
+
"anyOf": [
|
|
17031
|
+
{
|
|
17032
|
+
"type": "number"
|
|
17033
|
+
},
|
|
17034
|
+
{
|
|
17035
|
+
"type": "null"
|
|
16754
17036
|
}
|
|
16755
17037
|
],
|
|
16756
17038
|
"description": "Seconds after the anchor event before the claim window opens (the guard's time lower bound); null = no lower bound decoded."
|
|
@@ -16783,6 +17065,22 @@
|
|
|
16783
17065
|
}
|
|
16784
17066
|
],
|
|
16785
17067
|
"description": "R-09 (bs29): the claim window decoded from the claim guard's time constants — the object-level expiration_time above is usually null, the REAL '60–600s after grant'-style window lives HERE. null = the guard's raw payload was unreadable or carries no Clock comparison (fail-honest: window NOT decoded; check the claim guard before promising a timing to the buyer)."
|
|
17068
|
+
},
|
|
17069
|
+
"claim_state": {
|
|
17070
|
+
"type": "string",
|
|
17071
|
+
"enum": [
|
|
17072
|
+
"delayed_window",
|
|
17073
|
+
"delayed_open_ended",
|
|
17074
|
+
"open_window",
|
|
17075
|
+
"open_ended",
|
|
17076
|
+
"expired",
|
|
17077
|
+
"unknown"
|
|
17078
|
+
],
|
|
17079
|
+
"description": "bsw4 F-11 readable claimable state, derived from claim_window + the pool-level expiry: 'delayed_window' = opens after a delay AND closes (a real bounded window); 'delayed_open_ended' = opens after a delay and NEVER closes (the v76 archetype defect — any 'N days to claim' wording is fictional); 'open_window' = claimable at the anchor event until the close; 'open_ended' = claimable at the anchor event and never closes; 'expired' = the pool-level entry had already expired at quote time; 'unknown' = the guard's window was not decoded."
|
|
17080
|
+
},
|
|
17081
|
+
"claim_state_note": {
|
|
17082
|
+
"type": "string",
|
|
17083
|
+
"description": "bsw4 F-11: the window in buyer language — when it opens, how long it stays claimable, and the hard deadline (or its explicit absence). Populated from the decoded claim_window; the 'unknown' state explains what could not be decoded."
|
|
16786
17084
|
}
|
|
16787
17085
|
},
|
|
16788
17086
|
"required": [
|
|
@@ -16794,7 +17092,11 @@
|
|
|
16794
17092
|
"expiration_display",
|
|
16795
17093
|
"expired",
|
|
16796
17094
|
"min_rating",
|
|
16797
|
-
"
|
|
17095
|
+
"min_rows",
|
|
17096
|
+
"unreadable_legs",
|
|
17097
|
+
"claim_window",
|
|
17098
|
+
"claim_state",
|
|
17099
|
+
"claim_state_note"
|
|
16798
17100
|
],
|
|
16799
17101
|
"additionalProperties": false
|
|
16800
17102
|
}
|
|
@@ -16830,6 +17132,50 @@
|
|
|
16830
17132
|
"additionalProperties": false,
|
|
16831
17133
|
"description": "R2-06(b) once-scope disclosure (gf27 P0-03): do not promise a per-order bounty unless scope is once_per_order."
|
|
16832
17134
|
},
|
|
17135
|
+
"rating_floor": {
|
|
17136
|
+
"anyOf": [
|
|
17137
|
+
{
|
|
17138
|
+
"type": "number"
|
|
17139
|
+
},
|
|
17140
|
+
{
|
|
17141
|
+
"type": "null"
|
|
17142
|
+
}
|
|
17143
|
+
],
|
|
17144
|
+
"description": "ddmc4 B-33 (W5-11): the numeric rating floor the compiled claim guard enforces, decoded from the guard's structured root (F-AOF-4 v2) — read this instead of parsing the description prose. null = no numeric floor decoded (a like/dislike polarity, an unrecognized shape, or no rating leg at all)."
|
|
17145
|
+
},
|
|
17146
|
+
"opens_after_days": {
|
|
17147
|
+
"anyOf": [
|
|
17148
|
+
{
|
|
17149
|
+
"type": "number"
|
|
17150
|
+
},
|
|
17151
|
+
{
|
|
17152
|
+
"type": "null"
|
|
17153
|
+
}
|
|
17154
|
+
],
|
|
17155
|
+
"description": "ddmc4 B-33: DAYS after the claim-allowed anchor before the claim window OPENS (the compiled lower bound, day-denominated); null = no lower bound decoded or a non-whole-day offset (read claims[].claim_window for the raw bounds)."
|
|
17156
|
+
},
|
|
17157
|
+
"closes_after_days": {
|
|
17158
|
+
"anyOf": [
|
|
17159
|
+
{
|
|
17160
|
+
"type": "number"
|
|
17161
|
+
},
|
|
17162
|
+
{
|
|
17163
|
+
"type": "null"
|
|
17164
|
+
}
|
|
17165
|
+
],
|
|
17166
|
+
"description": "ddmc4 B-33: DAYS the window stays claimable after it OPENS — the claimable SPAN counted from the window open (the bsw4 F-11 convention, matching the compiled closes_after_days knob); null = the window never closes or a non-whole-day offset."
|
|
17167
|
+
},
|
|
17168
|
+
"per_order_limit": {
|
|
17169
|
+
"anyOf": [
|
|
17170
|
+
{
|
|
17171
|
+
"type": "number"
|
|
17172
|
+
},
|
|
17173
|
+
{
|
|
17174
|
+
"type": "null"
|
|
17175
|
+
}
|
|
17176
|
+
],
|
|
17177
|
+
"description": "ddmc4 B-33: the compiled per-order claim cap — 1 when every mounted claim entry stamps the submitted-Order slot 0 (the once_per_order replay scope, R2-06(b)); null = no compiled per-order cap (per-life / per-stamp / unknown scope — read replay_scope for what is actually once-scoped)."
|
|
17178
|
+
},
|
|
16833
17179
|
"coverage": {
|
|
16834
17180
|
"anyOf": [
|
|
16835
17181
|
{
|
|
@@ -16850,6 +17196,10 @@
|
|
|
16850
17196
|
"record_count",
|
|
16851
17197
|
"claims",
|
|
16852
17198
|
"replay_scope",
|
|
17199
|
+
"rating_floor",
|
|
17200
|
+
"opens_after_days",
|
|
17201
|
+
"closes_after_days",
|
|
17202
|
+
"per_order_limit",
|
|
16853
17203
|
"coverage"
|
|
16854
17204
|
],
|
|
16855
17205
|
"additionalProperties": false
|
|
@@ -16884,6 +17234,7 @@
|
|
|
16884
17234
|
"paused",
|
|
16885
17235
|
"payment_token",
|
|
16886
17236
|
"items",
|
|
17237
|
+
"buyable",
|
|
16887
17238
|
"total_pay",
|
|
16888
17239
|
"discount",
|
|
16889
17240
|
"allocation_preview",
|
|
@@ -17245,6 +17596,10 @@
|
|
|
17245
17596
|
"type": "string",
|
|
17246
17597
|
"description": "Resolved account address."
|
|
17247
17598
|
},
|
|
17599
|
+
"now_ms": {
|
|
17600
|
+
"type": "number",
|
|
17601
|
+
"description": "S12-④(b): local wall-clock at read time (ms epoch) — the chain exposes no clock query face, so diff this against time_window boundaries / deadlines to answer 'is the window still open?'."
|
|
17602
|
+
},
|
|
17248
17603
|
"orders_analyzed": {
|
|
17249
17604
|
"type": "number"
|
|
17250
17605
|
},
|
|
@@ -17373,7 +17728,7 @@
|
|
|
17373
17728
|
"description": "Input path inside the tool data payload."
|
|
17374
17729
|
},
|
|
17375
17730
|
"reason": {
|
|
17376
|
-
"description": "Chain-authoritative routing reason, including the Guard passport requirement when the forward binds one, and the standalone-Progress limitation for namedOperator='' forwards (abort
|
|
17731
|
+
"description": "Chain-authoritative routing reason, including the Guard passport requirement when the forward binds one, and the standalone-Progress limitation for namedOperator='' forwards (abort 13 — no payer to name, fail-closed). May be absent when the caller requested response_level 'compact', which trims templated routing prose from NON-recommended options (F44/docs#49).",
|
|
17377
17732
|
"type": "string"
|
|
17378
17733
|
}
|
|
17379
17734
|
},
|
|
@@ -17675,6 +18030,106 @@
|
|
|
17675
18030
|
],
|
|
17676
18031
|
"additionalProperties": false
|
|
17677
18032
|
}
|
|
18033
|
+
},
|
|
18034
|
+
"time_window": {
|
|
18035
|
+
"description": "S12-④(b) derived time window of the order's CURRENT state (ksk4 F-33 family, mtw3 F-09): resolvable epoch-ms boundaries read from the guards on the current node's outgoing transitions. earliest_allowed_ms = first instant an outgoing action opens (opening gate); deadline_ms = last instant the state still allows acting (closing window). Absolute and current-node-anchored windows resolve; boundaries anchored at OTHER nodes are listed with an unresolved_note (their historical entry time is not carried by progress.current_time). null fields = no resolvable boundary of that direction; the block is absent when the current node has no guarded outgoing transition.",
|
|
18036
|
+
"type": "object",
|
|
18037
|
+
"properties": {
|
|
18038
|
+
"earliest_allowed_ms": {
|
|
18039
|
+
"anyOf": [
|
|
18040
|
+
{
|
|
18041
|
+
"type": "number"
|
|
18042
|
+
},
|
|
18043
|
+
{
|
|
18044
|
+
"type": "null"
|
|
18045
|
+
}
|
|
18046
|
+
]
|
|
18047
|
+
},
|
|
18048
|
+
"deadline_ms": {
|
|
18049
|
+
"anyOf": [
|
|
18050
|
+
{
|
|
18051
|
+
"type": "number"
|
|
18052
|
+
},
|
|
18053
|
+
{
|
|
18054
|
+
"type": "null"
|
|
18055
|
+
}
|
|
18056
|
+
]
|
|
18057
|
+
},
|
|
18058
|
+
"boundaries": {
|
|
18059
|
+
"type": "array",
|
|
18060
|
+
"items": {
|
|
18061
|
+
"type": "object",
|
|
18062
|
+
"properties": {
|
|
18063
|
+
"direction": {
|
|
18064
|
+
"type": "string",
|
|
18065
|
+
"enum": [
|
|
18066
|
+
"opens",
|
|
18067
|
+
"closes"
|
|
18068
|
+
]
|
|
18069
|
+
},
|
|
18070
|
+
"boundary_ms": {
|
|
18071
|
+
"type": "number"
|
|
18072
|
+
},
|
|
18073
|
+
"anchor": {
|
|
18074
|
+
"type": "string",
|
|
18075
|
+
"enum": [
|
|
18076
|
+
"absolute",
|
|
18077
|
+
"node_entry"
|
|
18078
|
+
]
|
|
18079
|
+
},
|
|
18080
|
+
"anchor_node": {
|
|
18081
|
+
"anyOf": [
|
|
18082
|
+
{
|
|
18083
|
+
"type": "string"
|
|
18084
|
+
},
|
|
18085
|
+
{
|
|
18086
|
+
"type": "null"
|
|
18087
|
+
}
|
|
18088
|
+
]
|
|
18089
|
+
},
|
|
18090
|
+
"guard": {
|
|
18091
|
+
"anyOf": [
|
|
18092
|
+
{
|
|
18093
|
+
"type": "string"
|
|
18094
|
+
},
|
|
18095
|
+
{
|
|
18096
|
+
"type": "null"
|
|
18097
|
+
}
|
|
18098
|
+
]
|
|
18099
|
+
},
|
|
18100
|
+
"forward": {
|
|
18101
|
+
"anyOf": [
|
|
18102
|
+
{
|
|
18103
|
+
"type": "string"
|
|
18104
|
+
},
|
|
18105
|
+
{
|
|
18106
|
+
"type": "null"
|
|
18107
|
+
}
|
|
18108
|
+
]
|
|
18109
|
+
},
|
|
18110
|
+
"unresolved_note": {
|
|
18111
|
+
"type": "string"
|
|
18112
|
+
}
|
|
18113
|
+
},
|
|
18114
|
+
"required": [
|
|
18115
|
+
"direction",
|
|
18116
|
+
"boundary_ms",
|
|
18117
|
+
"anchor"
|
|
18118
|
+
],
|
|
18119
|
+
"additionalProperties": false
|
|
18120
|
+
}
|
|
18121
|
+
},
|
|
18122
|
+
"note": {
|
|
18123
|
+
"type": "string"
|
|
18124
|
+
}
|
|
18125
|
+
},
|
|
18126
|
+
"required": [
|
|
18127
|
+
"earliest_allowed_ms",
|
|
18128
|
+
"deadline_ms",
|
|
18129
|
+
"boundaries",
|
|
18130
|
+
"note"
|
|
18131
|
+
],
|
|
18132
|
+
"additionalProperties": false
|
|
17678
18133
|
}
|
|
17679
18134
|
},
|
|
17680
18135
|
"required": [
|
|
@@ -17819,7 +18274,7 @@
|
|
|
17819
18274
|
"description": "Input path inside the tool data payload."
|
|
17820
18275
|
},
|
|
17821
18276
|
"reason": {
|
|
17822
|
-
"description": "Chain-authoritative routing reason, including the Guard passport requirement when the forward binds one, and the standalone-Progress limitation for namedOperator='' forwards (abort
|
|
18277
|
+
"description": "Chain-authoritative routing reason, including the Guard passport requirement when the forward binds one, and the standalone-Progress limitation for namedOperator='' forwards (abort 13 — no payer to name, fail-closed). May be absent when the caller requested response_level 'compact', which trims templated routing prose from NON-recommended options (F44/docs#49).",
|
|
17823
18278
|
"type": "string"
|
|
17824
18279
|
}
|
|
17825
18280
|
},
|
|
@@ -18121,6 +18576,106 @@
|
|
|
18121
18576
|
],
|
|
18122
18577
|
"additionalProperties": false
|
|
18123
18578
|
}
|
|
18579
|
+
},
|
|
18580
|
+
"time_window": {
|
|
18581
|
+
"description": "S12-④(b) derived time window of the order's CURRENT state (ksk4 F-33 family, mtw3 F-09): resolvable epoch-ms boundaries read from the guards on the current node's outgoing transitions. earliest_allowed_ms = first instant an outgoing action opens (opening gate); deadline_ms = last instant the state still allows acting (closing window). Absolute and current-node-anchored windows resolve; boundaries anchored at OTHER nodes are listed with an unresolved_note (their historical entry time is not carried by progress.current_time). null fields = no resolvable boundary of that direction; the block is absent when the current node has no guarded outgoing transition.",
|
|
18582
|
+
"type": "object",
|
|
18583
|
+
"properties": {
|
|
18584
|
+
"earliest_allowed_ms": {
|
|
18585
|
+
"anyOf": [
|
|
18586
|
+
{
|
|
18587
|
+
"type": "number"
|
|
18588
|
+
},
|
|
18589
|
+
{
|
|
18590
|
+
"type": "null"
|
|
18591
|
+
}
|
|
18592
|
+
]
|
|
18593
|
+
},
|
|
18594
|
+
"deadline_ms": {
|
|
18595
|
+
"anyOf": [
|
|
18596
|
+
{
|
|
18597
|
+
"type": "number"
|
|
18598
|
+
},
|
|
18599
|
+
{
|
|
18600
|
+
"type": "null"
|
|
18601
|
+
}
|
|
18602
|
+
]
|
|
18603
|
+
},
|
|
18604
|
+
"boundaries": {
|
|
18605
|
+
"type": "array",
|
|
18606
|
+
"items": {
|
|
18607
|
+
"type": "object",
|
|
18608
|
+
"properties": {
|
|
18609
|
+
"direction": {
|
|
18610
|
+
"type": "string",
|
|
18611
|
+
"enum": [
|
|
18612
|
+
"opens",
|
|
18613
|
+
"closes"
|
|
18614
|
+
]
|
|
18615
|
+
},
|
|
18616
|
+
"boundary_ms": {
|
|
18617
|
+
"type": "number"
|
|
18618
|
+
},
|
|
18619
|
+
"anchor": {
|
|
18620
|
+
"type": "string",
|
|
18621
|
+
"enum": [
|
|
18622
|
+
"absolute",
|
|
18623
|
+
"node_entry"
|
|
18624
|
+
]
|
|
18625
|
+
},
|
|
18626
|
+
"anchor_node": {
|
|
18627
|
+
"anyOf": [
|
|
18628
|
+
{
|
|
18629
|
+
"type": "string"
|
|
18630
|
+
},
|
|
18631
|
+
{
|
|
18632
|
+
"type": "null"
|
|
18633
|
+
}
|
|
18634
|
+
]
|
|
18635
|
+
},
|
|
18636
|
+
"guard": {
|
|
18637
|
+
"anyOf": [
|
|
18638
|
+
{
|
|
18639
|
+
"type": "string"
|
|
18640
|
+
},
|
|
18641
|
+
{
|
|
18642
|
+
"type": "null"
|
|
18643
|
+
}
|
|
18644
|
+
]
|
|
18645
|
+
},
|
|
18646
|
+
"forward": {
|
|
18647
|
+
"anyOf": [
|
|
18648
|
+
{
|
|
18649
|
+
"type": "string"
|
|
18650
|
+
},
|
|
18651
|
+
{
|
|
18652
|
+
"type": "null"
|
|
18653
|
+
}
|
|
18654
|
+
]
|
|
18655
|
+
},
|
|
18656
|
+
"unresolved_note": {
|
|
18657
|
+
"type": "string"
|
|
18658
|
+
}
|
|
18659
|
+
},
|
|
18660
|
+
"required": [
|
|
18661
|
+
"direction",
|
|
18662
|
+
"boundary_ms",
|
|
18663
|
+
"anchor"
|
|
18664
|
+
],
|
|
18665
|
+
"additionalProperties": false
|
|
18666
|
+
}
|
|
18667
|
+
},
|
|
18668
|
+
"note": {
|
|
18669
|
+
"type": "string"
|
|
18670
|
+
}
|
|
18671
|
+
},
|
|
18672
|
+
"required": [
|
|
18673
|
+
"earliest_allowed_ms",
|
|
18674
|
+
"deadline_ms",
|
|
18675
|
+
"boundaries",
|
|
18676
|
+
"note"
|
|
18677
|
+
],
|
|
18678
|
+
"additionalProperties": false
|
|
18124
18679
|
}
|
|
18125
18680
|
},
|
|
18126
18681
|
"required": [
|
|
@@ -18195,6 +18750,7 @@
|
|
|
18195
18750
|
"required": [
|
|
18196
18751
|
"action",
|
|
18197
18752
|
"account",
|
|
18753
|
+
"now_ms",
|
|
18198
18754
|
"orders_analyzed",
|
|
18199
18755
|
"actionable",
|
|
18200
18756
|
"waiting",
|
|
@@ -18212,6 +18768,120 @@
|
|
|
18212
18768
|
],
|
|
18213
18769
|
"additionalProperties": false
|
|
18214
18770
|
},
|
|
18771
|
+
{
|
|
18772
|
+
"type": "object",
|
|
18773
|
+
"properties": {
|
|
18774
|
+
"query_type": {
|
|
18775
|
+
"type": "string",
|
|
18776
|
+
"const": "order_aggregate"
|
|
18777
|
+
},
|
|
18778
|
+
"result": {
|
|
18779
|
+
"type": "object",
|
|
18780
|
+
"properties": {
|
|
18781
|
+
"action": {
|
|
18782
|
+
"type": "string",
|
|
18783
|
+
"const": "order_aggregate"
|
|
18784
|
+
},
|
|
18785
|
+
"chain_id": {
|
|
18786
|
+
"type": "string"
|
|
18787
|
+
},
|
|
18788
|
+
"kind": {
|
|
18789
|
+
"type": "string"
|
|
18790
|
+
},
|
|
18791
|
+
"group": {
|
|
18792
|
+
"type": "string"
|
|
18793
|
+
},
|
|
18794
|
+
"group_id": {
|
|
18795
|
+
"anyOf": [
|
|
18796
|
+
{
|
|
18797
|
+
"type": "string"
|
|
18798
|
+
},
|
|
18799
|
+
{
|
|
18800
|
+
"type": "null"
|
|
18801
|
+
}
|
|
18802
|
+
]
|
|
18803
|
+
},
|
|
18804
|
+
"metric": {
|
|
18805
|
+
"type": "string"
|
|
18806
|
+
},
|
|
18807
|
+
"exclude_claimed": {
|
|
18808
|
+
"type": "boolean"
|
|
18809
|
+
},
|
|
18810
|
+
"rows": {
|
|
18811
|
+
"type": "array",
|
|
18812
|
+
"items": {
|
|
18813
|
+
"type": "object",
|
|
18814
|
+
"properties": {
|
|
18815
|
+
"group_id": {
|
|
18816
|
+
"type": "string"
|
|
18817
|
+
},
|
|
18818
|
+
"count": {
|
|
18819
|
+
"type": "number"
|
|
18820
|
+
},
|
|
18821
|
+
"metric_sum": {
|
|
18822
|
+
"type": "string"
|
|
18823
|
+
},
|
|
18824
|
+
"max_checkpoint": {
|
|
18825
|
+
"type": "string"
|
|
18826
|
+
}
|
|
18827
|
+
},
|
|
18828
|
+
"required": [
|
|
18829
|
+
"group_id",
|
|
18830
|
+
"count",
|
|
18831
|
+
"metric_sum",
|
|
18832
|
+
"max_checkpoint"
|
|
18833
|
+
],
|
|
18834
|
+
"additionalProperties": false
|
|
18835
|
+
},
|
|
18836
|
+
"description": "One row per group value; metric_sum is an EXACT decimal string (never a JS float)."
|
|
18837
|
+
},
|
|
18838
|
+
"totals": {
|
|
18839
|
+
"type": "object",
|
|
18840
|
+
"properties": {
|
|
18841
|
+
"count": {
|
|
18842
|
+
"type": "number"
|
|
18843
|
+
},
|
|
18844
|
+
"metric_sum": {
|
|
18845
|
+
"type": "string"
|
|
18846
|
+
}
|
|
18847
|
+
},
|
|
18848
|
+
"required": [
|
|
18849
|
+
"count",
|
|
18850
|
+
"metric_sum"
|
|
18851
|
+
],
|
|
18852
|
+
"additionalProperties": false,
|
|
18853
|
+
"description": "Full-set count + sum across ALL groups (never limited)."
|
|
18854
|
+
},
|
|
18855
|
+
"truncated": {
|
|
18856
|
+
"type": "boolean",
|
|
18857
|
+
"description": "True when group rows exist beyond the limit (totals still cover the full set)."
|
|
18858
|
+
},
|
|
18859
|
+
"coverage": {
|
|
18860
|
+
"description": "Projection reconciliation watermark (mode/complete/reconciled_through/degraded_reasons) — cite it together with any funding-target verdict (the aggregate is only as trustworthy as the projection that served it)."
|
|
18861
|
+
}
|
|
18862
|
+
},
|
|
18863
|
+
"required": [
|
|
18864
|
+
"action",
|
|
18865
|
+
"chain_id",
|
|
18866
|
+
"kind",
|
|
18867
|
+
"group",
|
|
18868
|
+
"group_id",
|
|
18869
|
+
"metric",
|
|
18870
|
+
"exclude_claimed",
|
|
18871
|
+
"rows",
|
|
18872
|
+
"totals",
|
|
18873
|
+
"truncated",
|
|
18874
|
+
"coverage"
|
|
18875
|
+
],
|
|
18876
|
+
"additionalProperties": false
|
|
18877
|
+
}
|
|
18878
|
+
},
|
|
18879
|
+
"required": [
|
|
18880
|
+
"query_type",
|
|
18881
|
+
"result"
|
|
18882
|
+
],
|
|
18883
|
+
"additionalProperties": false
|
|
18884
|
+
},
|
|
18215
18885
|
{
|
|
18216
18886
|
"type": "object",
|
|
18217
18887
|
"properties": {
|
|
@@ -19358,7 +20028,7 @@
|
|
|
19358
20028
|
"description": "Input path inside the tool data payload."
|
|
19359
20029
|
},
|
|
19360
20030
|
"reason": {
|
|
19361
|
-
"description": "Chain-authoritative routing reason, including the Guard passport requirement when the forward binds one, and the standalone-Progress limitation for namedOperator='' forwards (abort
|
|
20031
|
+
"description": "Chain-authoritative routing reason, including the Guard passport requirement when the forward binds one, and the standalone-Progress limitation for namedOperator='' forwards (abort 13 — no payer to name, fail-closed). May be absent when the caller requested response_level 'compact', which trims templated routing prose from NON-recommended options (F44/docs#49).",
|
|
19362
20032
|
"type": "string"
|
|
19363
20033
|
}
|
|
19364
20034
|
},
|
|
@@ -20179,6 +20849,35 @@
|
|
|
20179
20849
|
"type": "string"
|
|
20180
20850
|
}
|
|
20181
20851
|
},
|
|
20852
|
+
"red_flag_basis": {
|
|
20853
|
+
"description": "Evidence-basis classification of each red flag (same order/length as red_flags when present).",
|
|
20854
|
+
"type": "array",
|
|
20855
|
+
"items": {
|
|
20856
|
+
"type": "object",
|
|
20857
|
+
"properties": {
|
|
20858
|
+
"flag": {
|
|
20859
|
+
"type": "string",
|
|
20860
|
+
"description": "The flag text (identical to the corresponding red_flags entry)."
|
|
20861
|
+
},
|
|
20862
|
+
"basis": {
|
|
20863
|
+
"type": "string",
|
|
20864
|
+
"enum": [
|
|
20865
|
+
"object_defect",
|
|
20866
|
+
"requirement_unmet"
|
|
20867
|
+
]
|
|
20868
|
+
},
|
|
20869
|
+
"rule_id": {
|
|
20870
|
+
"description": "The rule that fired (object_defect) or the clause target (requirement_unmet).",
|
|
20871
|
+
"type": "string"
|
|
20872
|
+
}
|
|
20873
|
+
},
|
|
20874
|
+
"required": [
|
|
20875
|
+
"flag",
|
|
20876
|
+
"basis"
|
|
20877
|
+
],
|
|
20878
|
+
"additionalProperties": false
|
|
20879
|
+
}
|
|
20880
|
+
},
|
|
20182
20881
|
"blocked": {
|
|
20183
20882
|
"type": "boolean"
|
|
20184
20883
|
},
|
|
@@ -20410,6 +21109,35 @@
|
|
|
20410
21109
|
"type": "string"
|
|
20411
21110
|
}
|
|
20412
21111
|
},
|
|
21112
|
+
"red_flag_basis": {
|
|
21113
|
+
"description": "Evidence-basis classification of each red flag (same order/length as red_flags when present).",
|
|
21114
|
+
"type": "array",
|
|
21115
|
+
"items": {
|
|
21116
|
+
"type": "object",
|
|
21117
|
+
"properties": {
|
|
21118
|
+
"flag": {
|
|
21119
|
+
"type": "string",
|
|
21120
|
+
"description": "The flag text (identical to the corresponding red_flags entry)."
|
|
21121
|
+
},
|
|
21122
|
+
"basis": {
|
|
21123
|
+
"type": "string",
|
|
21124
|
+
"enum": [
|
|
21125
|
+
"object_defect",
|
|
21126
|
+
"requirement_unmet"
|
|
21127
|
+
]
|
|
21128
|
+
},
|
|
21129
|
+
"rule_id": {
|
|
21130
|
+
"description": "The rule that fired (object_defect) or the clause target (requirement_unmet).",
|
|
21131
|
+
"type": "string"
|
|
21132
|
+
}
|
|
21133
|
+
},
|
|
21134
|
+
"required": [
|
|
21135
|
+
"flag",
|
|
21136
|
+
"basis"
|
|
21137
|
+
],
|
|
21138
|
+
"additionalProperties": false
|
|
21139
|
+
}
|
|
21140
|
+
},
|
|
20413
21141
|
"blocked": {
|
|
20414
21142
|
"type": "boolean"
|
|
20415
21143
|
},
|
|
@@ -20877,7 +21605,7 @@
|
|
|
20877
21605
|
"type": "string"
|
|
20878
21606
|
},
|
|
20879
21607
|
"threshold": {
|
|
20880
|
-
"description": "Card-highlight hint from the persona
|
|
21608
|
+
"description": "Card-highlight hint from the persona and request lens — never an engine gate.",
|
|
20881
21609
|
"type": "number"
|
|
20882
21610
|
}
|
|
20883
21611
|
},
|
|
@@ -22387,6 +23115,92 @@
|
|
|
22387
23115
|
"top_risks"
|
|
22388
23116
|
],
|
|
22389
23117
|
"additionalProperties": false
|
|
23118
|
+
},
|
|
23119
|
+
"blueprint_verdict": {
|
|
23120
|
+
"description": "Creation-time blueprint verdict: business intent + host rich semantics + logic tree composed and run through the full per-host verification battery BEFORE the guard create tx. Present when binding_hint maps to a catalog host; absent when no host is known (add binding_hint to enable).",
|
|
23121
|
+
"type": "object",
|
|
23122
|
+
"properties": {
|
|
23123
|
+
"host": {
|
|
23124
|
+
"type": "string",
|
|
23125
|
+
"description": "Catalog host id this guard was verified against (guard-host-context)."
|
|
23126
|
+
},
|
|
23127
|
+
"status": {
|
|
23128
|
+
"type": "string",
|
|
23129
|
+
"enum": [
|
|
23130
|
+
"blocked",
|
|
23131
|
+
"proceed_with_warnings",
|
|
23132
|
+
"proceed"
|
|
23133
|
+
],
|
|
23134
|
+
"description": "Single authority over create readiness. blocked = structural defect, fix BEFORE create (guards are immutable after create)."
|
|
23135
|
+
},
|
|
23136
|
+
"statement": {
|
|
23137
|
+
"type": "string",
|
|
23138
|
+
"description": "One authoritative verdict statement naming the finding codes."
|
|
23139
|
+
},
|
|
23140
|
+
"findings": {
|
|
23141
|
+
"type": "array",
|
|
23142
|
+
"items": {
|
|
23143
|
+
"type": "object",
|
|
23144
|
+
"properties": {
|
|
23145
|
+
"source": {
|
|
23146
|
+
"type": "string",
|
|
23147
|
+
"description": "Which verifier produced the finding (verifyGuardBinding / auditGuardRelies / auditQuoteGuardCandidate / blueprint)."
|
|
23148
|
+
},
|
|
23149
|
+
"code": {
|
|
23150
|
+
"type": "string",
|
|
23151
|
+
"description": "Stable finding id (e.g. MF_SLOT_IDENTITY_ANCHOR, RC_NO_ORDER_ANCHOR)."
|
|
23152
|
+
},
|
|
23153
|
+
"level": {
|
|
23154
|
+
"type": "string",
|
|
23155
|
+
"enum": [
|
|
23156
|
+
"critical",
|
|
23157
|
+
"warning",
|
|
23158
|
+
"info"
|
|
23159
|
+
]
|
|
23160
|
+
},
|
|
23161
|
+
"detail": {
|
|
23162
|
+
"type": "string"
|
|
23163
|
+
}
|
|
23164
|
+
},
|
|
23165
|
+
"required": [
|
|
23166
|
+
"source",
|
|
23167
|
+
"code",
|
|
23168
|
+
"level",
|
|
23169
|
+
"detail"
|
|
23170
|
+
],
|
|
23171
|
+
"additionalProperties": false
|
|
23172
|
+
},
|
|
23173
|
+
"description": "All findings from the composed verification battery."
|
|
23174
|
+
},
|
|
23175
|
+
"host_context": {
|
|
23176
|
+
"description": "The host rich semantics this guard inherits — inlined so the design dialogue argues from facts, not memory.",
|
|
23177
|
+
"type": "object",
|
|
23178
|
+
"properties": {
|
|
23179
|
+
"signer_subject": {
|
|
23180
|
+
"type": "string"
|
|
23181
|
+
},
|
|
23182
|
+
"order_anchor": {
|
|
23183
|
+
"type": "string"
|
|
23184
|
+
},
|
|
23185
|
+
"identity_obligation": {
|
|
23186
|
+
"type": "string"
|
|
23187
|
+
}
|
|
23188
|
+
},
|
|
23189
|
+
"required": [
|
|
23190
|
+
"signer_subject",
|
|
23191
|
+
"order_anchor",
|
|
23192
|
+
"identity_obligation"
|
|
23193
|
+
],
|
|
23194
|
+
"additionalProperties": false
|
|
23195
|
+
}
|
|
23196
|
+
},
|
|
23197
|
+
"required": [
|
|
23198
|
+
"host",
|
|
23199
|
+
"status",
|
|
23200
|
+
"statement",
|
|
23201
|
+
"findings"
|
|
23202
|
+
],
|
|
23203
|
+
"additionalProperties": false
|
|
22390
23204
|
}
|
|
22391
23205
|
},
|
|
22392
23206
|
"additionalProperties": false
|
|
@@ -22503,7 +23317,7 @@
|
|
|
22503
23317
|
"description": "ALL reachable next-node directions (every operator/permission/guard disclosed)."
|
|
22504
23318
|
},
|
|
22505
23319
|
"recommendation": {
|
|
22506
|
-
"description": "Recommended option with rationale (K3 Game intent
|
|
23320
|
+
"description": "Recommended option with rationale (K3 Game intent and interests).",
|
|
22507
23321
|
"type": "object",
|
|
22508
23322
|
"properties": {
|
|
22509
23323
|
"best": {
|
|
@@ -22750,7 +23564,7 @@
|
|
|
22750
23564
|
"description": "ALL reachable next-node directions (every operator/permission/guard disclosed)."
|
|
22751
23565
|
},
|
|
22752
23566
|
"recommendation": {
|
|
22753
|
-
"description": "Recommended option with rationale (K3 Game intent
|
|
23567
|
+
"description": "Recommended option with rationale (K3 Game intent and interests).",
|
|
22754
23568
|
"type": "object",
|
|
22755
23569
|
"properties": {
|
|
22756
23570
|
"best": {
|
|
@@ -22782,6 +23596,14 @@
|
|
|
22782
23596
|
"note": {
|
|
22783
23597
|
"description": "Additional note.",
|
|
22784
23598
|
"type": "string"
|
|
23599
|
+
},
|
|
23600
|
+
"digest": {
|
|
23601
|
+
"description": "REAL transaction digest of this operation (ddmc4 B-37) — paste into onchain_transaction or a block explorer to audit. Absent under dry-run/simulation.",
|
|
23602
|
+
"type": "string"
|
|
23603
|
+
},
|
|
23604
|
+
"signer": {
|
|
23605
|
+
"description": "Signing account's on-chain address — a SEPARATE field from digest ({signer, digest}), never occupying the digest slot.",
|
|
23606
|
+
"type": "string"
|
|
22785
23607
|
}
|
|
22786
23608
|
},
|
|
22787
23609
|
"required": [
|
|
@@ -23191,7 +24013,7 @@
|
|
|
23191
24013
|
}
|
|
23192
24014
|
},
|
|
23193
24015
|
"additionalProperties": false,
|
|
23194
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
24016
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
23195
24017
|
},
|
|
23196
24018
|
{
|
|
23197
24019
|
"type": "string"
|
|
@@ -23216,6 +24038,7 @@
|
|
|
23216
24038
|
"type": "object",
|
|
23217
24039
|
"properties": {
|
|
23218
24040
|
"entities": {
|
|
24041
|
+
"minItems": 1,
|
|
23219
24042
|
"type": "array",
|
|
23220
24043
|
"items": {
|
|
23221
24044
|
"type": "object",
|
|
@@ -23230,7 +24053,7 @@
|
|
|
23230
24053
|
}
|
|
23231
24054
|
},
|
|
23232
24055
|
"additionalProperties": false,
|
|
23233
|
-
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account."
|
|
24056
|
+
"description": "Account or address lookup object. Use this to specify which account to use for an operation. EXAMPLE: { name_or_address: 'testor2' } - looks up account by name; EXAMPLE: { name_or_address: '0x1234...' } - uses address directly; If name_or_address is empty string '', uses the default local account. name_or_address is REQUIRED — {} resolves to nothing useful and is rejected."
|
|
23234
24057
|
}
|
|
23235
24058
|
},
|
|
23236
24059
|
"check_all_founded": {
|
|
@@ -23305,7 +24128,7 @@
|
|
|
23305
24128
|
"type": "integer",
|
|
23306
24129
|
"minimum": 0,
|
|
23307
24130
|
"maximum": 255,
|
|
23308
|
-
"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
|
|
24131
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
23309
24132
|
}
|
|
23310
24133
|
},
|
|
23311
24134
|
"required": [
|
|
@@ -23342,7 +24165,7 @@
|
|
|
23342
24165
|
"type": "integer",
|
|
23343
24166
|
"minimum": 0,
|
|
23344
24167
|
"maximum": 255,
|
|
23345
|
-
"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
|
|
24168
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
23346
24169
|
},
|
|
23347
24170
|
"convert_witness": {
|
|
23348
24171
|
"anyOf": [
|
|
@@ -24698,7 +25521,7 @@
|
|
|
24698
25521
|
"type": "integer",
|
|
24699
25522
|
"minimum": 0,
|
|
24700
25523
|
"maximum": 255,
|
|
24701
|
-
"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
|
|
25524
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24702
25525
|
}
|
|
24703
25526
|
},
|
|
24704
25527
|
"required": [
|
|
@@ -24723,7 +25546,7 @@
|
|
|
24723
25546
|
"type": "integer",
|
|
24724
25547
|
"minimum": 0,
|
|
24725
25548
|
"maximum": 255,
|
|
24726
|
-
"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
|
|
25549
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24727
25550
|
}
|
|
24728
25551
|
},
|
|
24729
25552
|
"required": [
|
|
@@ -24762,7 +25585,7 @@
|
|
|
24762
25585
|
"type": "integer",
|
|
24763
25586
|
"minimum": 0,
|
|
24764
25587
|
"maximum": 255,
|
|
24765
|
-
"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
|
|
25588
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24766
25589
|
}
|
|
24767
25590
|
},
|
|
24768
25591
|
"required": [
|
|
@@ -24798,7 +25621,7 @@
|
|
|
24798
25621
|
"type": "integer",
|
|
24799
25622
|
"minimum": 0,
|
|
24800
25623
|
"maximum": 255,
|
|
24801
|
-
"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
|
|
25624
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24802
25625
|
}
|
|
24803
25626
|
},
|
|
24804
25627
|
"required": [
|
|
@@ -24815,7 +25638,7 @@
|
|
|
24815
25638
|
"type": "integer",
|
|
24816
25639
|
"minimum": 0,
|
|
24817
25640
|
"maximum": 255,
|
|
24818
|
-
"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
|
|
25641
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24819
25642
|
}
|
|
24820
25643
|
},
|
|
24821
25644
|
"required": [
|
|
@@ -24854,7 +25677,7 @@
|
|
|
24854
25677
|
"type": "integer",
|
|
24855
25678
|
"minimum": 0,
|
|
24856
25679
|
"maximum": 255,
|
|
24857
|
-
"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
|
|
25680
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24858
25681
|
}
|
|
24859
25682
|
},
|
|
24860
25683
|
"required": [
|
|
@@ -24889,7 +25712,7 @@
|
|
|
24889
25712
|
"type": "integer",
|
|
24890
25713
|
"minimum": 0,
|
|
24891
25714
|
"maximum": 255,
|
|
24892
|
-
"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
|
|
25715
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24893
25716
|
}
|
|
24894
25717
|
},
|
|
24895
25718
|
"required": [
|
|
@@ -24906,7 +25729,7 @@
|
|
|
24906
25729
|
"type": "integer",
|
|
24907
25730
|
"minimum": 0,
|
|
24908
25731
|
"maximum": 255,
|
|
24909
|
-
"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
|
|
25732
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24910
25733
|
}
|
|
24911
25734
|
},
|
|
24912
25735
|
"required": [
|
|
@@ -24945,7 +25768,7 @@
|
|
|
24945
25768
|
"type": "integer",
|
|
24946
25769
|
"minimum": 0,
|
|
24947
25770
|
"maximum": 255,
|
|
24948
|
-
"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
|
|
25771
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24949
25772
|
}
|
|
24950
25773
|
},
|
|
24951
25774
|
"required": [
|
|
@@ -24980,7 +25803,7 @@
|
|
|
24980
25803
|
"type": "integer",
|
|
24981
25804
|
"minimum": 0,
|
|
24982
25805
|
"maximum": 255,
|
|
24983
|
-
"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
|
|
25806
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
24984
25807
|
},
|
|
24985
25808
|
"convert_witness": {
|
|
24986
25809
|
"description": "Optional witness to derive the Progress object from the submitted Order (e.g. 'OrderProgress'): the table object is the ORDER address and the chain resolves its per-order Progress — one Guard serves every order. Omit when the table object is a concrete Progress address.",
|
|
@@ -25065,7 +25888,7 @@
|
|
|
25065
25888
|
"type": "integer",
|
|
25066
25889
|
"minimum": 0,
|
|
25067
25890
|
"maximum": 255,
|
|
25068
|
-
"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
|
|
25891
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25069
25892
|
},
|
|
25070
25893
|
"convert_witness": {
|
|
25071
25894
|
"description": "Optional witness to derive the Progress object from the submitted Order (e.g. 'OrderProgress'): the table object is the ORDER address and the chain resolves its per-order Progress — one Guard serves every order. Omit when the table object is a concrete Progress address.",
|
|
@@ -25095,7 +25918,7 @@
|
|
|
25095
25918
|
"type": "string"
|
|
25096
25919
|
},
|
|
25097
25920
|
"nextNode": {
|
|
25098
|
-
"description": "Optional filter: next node name string to match — the canonical time anchor is where:{nextNode:'<node>'}, find:'last', which returns the IMMUTABLE moment that node was entered (1280 history.time is written once on entry and never rewritten, unlike the 1272 current-time read which refreshes on re-entry). An empty where {} with find:'last' returns the entry time of the CURRENT node — safe for node-SET gates.",
|
|
25921
|
+
"description": "Optional filter: next node name string to match — the canonical time anchor is where:{nextNode:'<node>'}, find:'last' for SINGLE-ENTRY states, which returns the IMMUTABLE moment that node was entered (1280 history.time is written once on entry and never rewritten, unlike the 1272 current-time read which refreshes on re-entry). For a RE-ENTERABLE closing-window state (withdrawal/return request nodes the buyer can re-enter) the anchor MUST be find:'first' — find:'last' lets every re-entry re-arm the window (tbs7 O16/O17 live reset exploit). An empty where {} with find:'last' returns the entry time of the CURRENT node — safe for node-SET gates.",
|
|
25099
25922
|
"type": "string"
|
|
25100
25923
|
},
|
|
25101
25924
|
"timeMin": {
|
|
@@ -25136,6 +25959,91 @@
|
|
|
25136
25959
|
"additionalProperties": false,
|
|
25137
25960
|
"description": "Returns U64. Returns the TIMESTAMP (ms) of the first or last history entry matching the filter conditions — the immutable entry moment of a node (query 1280 progress.history.time). Preferred over query 1272 progress.current_time for time anchors: 1272 reads the node's CURRENT time and refreshes on re-entry (drift-prone), while 1280 is written once on entering next_node and never rewritten. Throws error if no matching entry is found (Guard validation fails)."
|
|
25138
25961
|
},
|
|
25962
|
+
{
|
|
25963
|
+
"type": "object",
|
|
25964
|
+
"properties": {
|
|
25965
|
+
"type": {
|
|
25966
|
+
"type": "string",
|
|
25967
|
+
"const": "query_progress_history_time_or_zero"
|
|
25968
|
+
},
|
|
25969
|
+
"object": {
|
|
25970
|
+
"type": "object",
|
|
25971
|
+
"properties": {
|
|
25972
|
+
"identifier": {
|
|
25973
|
+
"type": "integer",
|
|
25974
|
+
"minimum": 0,
|
|
25975
|
+
"maximum": 255,
|
|
25976
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25977
|
+
},
|
|
25978
|
+
"convert_witness": {
|
|
25979
|
+
"description": "Optional witness to derive the Progress object from the submitted Order (e.g. 'OrderProgress'): the table object is the ORDER address and the chain resolves its per-order Progress — one Guard serves every order. Omit when the table object is a concrete Progress address.",
|
|
25980
|
+
"anyOf": [
|
|
25981
|
+
{
|
|
25982
|
+
"type": "integer",
|
|
25983
|
+
"minimum": -9007199254740991,
|
|
25984
|
+
"maximum": 9007199254740991
|
|
25985
|
+
},
|
|
25986
|
+
{
|
|
25987
|
+
"type": "string"
|
|
25988
|
+
}
|
|
25989
|
+
]
|
|
25990
|
+
}
|
|
25991
|
+
},
|
|
25992
|
+
"required": [
|
|
25993
|
+
"identifier"
|
|
25994
|
+
],
|
|
25995
|
+
"additionalProperties": false,
|
|
25996
|
+
"description": "Reference to the queried object in the Guard table: a Progress address, or an Order address when convert_witness is set."
|
|
25997
|
+
},
|
|
25998
|
+
"where": {
|
|
25999
|
+
"type": "object",
|
|
26000
|
+
"properties": {
|
|
26001
|
+
"node": {
|
|
26002
|
+
"description": "Optional filter: node name string to match.",
|
|
26003
|
+
"type": "string"
|
|
26004
|
+
},
|
|
26005
|
+
"nextNode": {
|
|
26006
|
+
"description": "Optional filter: next node name string to match — same anchor semantics as query_progress_history_time (where:{nextNode:'<node>'}, find:'last' = the IMMUTABLE moment that node was entered; find:'first' for RE-ENTERABLE states).",
|
|
26007
|
+
"type": "string"
|
|
26008
|
+
},
|
|
26009
|
+
"timeMin": {
|
|
26010
|
+
"description": "Optional filter: minimum timestamp (inclusive) for history entry time. Use string to represent U64 value.",
|
|
26011
|
+
"type": "string"
|
|
26012
|
+
},
|
|
26013
|
+
"timeMax": {
|
|
26014
|
+
"description": "Optional filter: maximum timestamp (inclusive) for history entry time. Use string to represent U64 value.",
|
|
26015
|
+
"type": "string"
|
|
26016
|
+
},
|
|
26017
|
+
"indexMin": {
|
|
26018
|
+
"description": "Optional filter: minimum history index (inclusive) to search within. Use string to represent U64 value.",
|
|
26019
|
+
"type": "string"
|
|
26020
|
+
},
|
|
26021
|
+
"indexMax": {
|
|
26022
|
+
"description": "Optional filter: maximum history index (inclusive) to search within. Use string to represent U64 value.",
|
|
26023
|
+
"type": "string"
|
|
26024
|
+
}
|
|
26025
|
+
},
|
|
26026
|
+
"additionalProperties": false,
|
|
26027
|
+
"description": "Filter conditions for the progress history time query."
|
|
26028
|
+
},
|
|
26029
|
+
"find": {
|
|
26030
|
+
"type": "string",
|
|
26031
|
+
"enum": [
|
|
26032
|
+
"first",
|
|
26033
|
+
"last"
|
|
26034
|
+
],
|
|
26035
|
+
"description": "'first' finds the earliest matching history entry, 'last' finds the most recent matching history entry."
|
|
26036
|
+
}
|
|
26037
|
+
},
|
|
26038
|
+
"required": [
|
|
26039
|
+
"type",
|
|
26040
|
+
"object",
|
|
26041
|
+
"where",
|
|
26042
|
+
"find"
|
|
26043
|
+
],
|
|
26044
|
+
"additionalProperties": false,
|
|
26045
|
+
"description": "Returns U64. S17-D (F-RQD2-04): the NO-MATCH twin of query 1280 progress.history.time — identical conditions, identical wire shape; when NO history entry matches it returns the sentinel 0 (the 'anchor node never entered' state) instead of throwing the runtime error that 1280 throws. Purpose: goal-missed / never-entered rails that 1280's abort turns into stranded funds (rqd2 O2: a 'refund when target not reached' rail anchored on nextNode:'funded' crashes for an order that never reached funded — the exact state the rail exists to protect). Sentinel 0 is unambiguous: a matched entry's time is always a real validator-clock timestamp > 0. Polarity: lesser_or_equal[or_zero, T] PASSES on never-entered; greater_or_equal FAILS. 'refund when never entered OR window elapsed' = logic_or[logic_equal(or_zero, 0), clock >= or_zero + window]. Choose 1280 when a missing anchor MUST fail the guard (delivery-window settlement legs); choose this when a missing anchor is a legitimate business state."
|
|
26046
|
+
},
|
|
25139
26047
|
{
|
|
25140
26048
|
"type": "object",
|
|
25141
26049
|
"properties": {
|
|
@@ -25150,7 +26058,7 @@
|
|
|
25150
26058
|
"type": "integer",
|
|
25151
26059
|
"minimum": 0,
|
|
25152
26060
|
"maximum": 255,
|
|
25153
|
-
"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
|
|
26061
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25154
26062
|
}
|
|
25155
26063
|
},
|
|
25156
26064
|
"required": [
|
|
@@ -25211,7 +26119,7 @@
|
|
|
25211
26119
|
"type": "integer",
|
|
25212
26120
|
"minimum": 0,
|
|
25213
26121
|
"maximum": 255,
|
|
25214
|
-
"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
|
|
26122
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25215
26123
|
}
|
|
25216
26124
|
},
|
|
25217
26125
|
"required": [
|
|
@@ -25297,7 +26205,7 @@
|
|
|
25297
26205
|
"type": "integer",
|
|
25298
26206
|
"minimum": 0,
|
|
25299
26207
|
"maximum": 255,
|
|
25300
|
-
"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
|
|
26208
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25301
26209
|
}
|
|
25302
26210
|
},
|
|
25303
26211
|
"required": [
|
|
@@ -25337,7 +26245,7 @@
|
|
|
25337
26245
|
"type": "integer",
|
|
25338
26246
|
"minimum": 0,
|
|
25339
26247
|
"maximum": 255,
|
|
25340
|
-
"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
|
|
26248
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25341
26249
|
}
|
|
25342
26250
|
},
|
|
25343
26251
|
"required": [
|
|
@@ -25386,7 +26294,7 @@
|
|
|
25386
26294
|
"type": "integer",
|
|
25387
26295
|
"minimum": 0,
|
|
25388
26296
|
"maximum": 255,
|
|
25389
|
-
"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
|
|
26297
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25390
26298
|
}
|
|
25391
26299
|
},
|
|
25392
26300
|
"required": [
|
|
@@ -25444,7 +26352,7 @@
|
|
|
25444
26352
|
"type": "integer",
|
|
25445
26353
|
"minimum": 0,
|
|
25446
26354
|
"maximum": 255,
|
|
25447
|
-
"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
|
|
26355
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25448
26356
|
}
|
|
25449
26357
|
},
|
|
25450
26358
|
"required": [
|
|
@@ -25511,7 +26419,7 @@
|
|
|
25511
26419
|
"type": "integer",
|
|
25512
26420
|
"minimum": 0,
|
|
25513
26421
|
"maximum": 255,
|
|
25514
|
-
"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
|
|
26422
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25515
26423
|
}
|
|
25516
26424
|
},
|
|
25517
26425
|
"required": [
|
|
@@ -25527,7 +26435,7 @@
|
|
|
25527
26435
|
"type": "integer",
|
|
25528
26436
|
"minimum": 0,
|
|
25529
26437
|
"maximum": 255,
|
|
25530
|
-
"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
|
|
26438
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25531
26439
|
}
|
|
25532
26440
|
},
|
|
25533
26441
|
"required": [
|
|
@@ -25543,7 +26451,7 @@
|
|
|
25543
26451
|
"type": "integer",
|
|
25544
26452
|
"minimum": 0,
|
|
25545
26453
|
"maximum": 255,
|
|
25546
|
-
"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
|
|
26454
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25547
26455
|
}
|
|
25548
26456
|
},
|
|
25549
26457
|
"required": [
|
|
@@ -25794,7 +26702,7 @@
|
|
|
25794
26702
|
"type": "integer",
|
|
25795
26703
|
"minimum": 0,
|
|
25796
26704
|
"maximum": 255,
|
|
25797
|
-
"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
|
|
26705
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25798
26706
|
}
|
|
25799
26707
|
},
|
|
25800
26708
|
"required": [
|
|
@@ -25810,7 +26718,7 @@
|
|
|
25810
26718
|
"type": "integer",
|
|
25811
26719
|
"minimum": 0,
|
|
25812
26720
|
"maximum": 255,
|
|
25813
|
-
"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
|
|
26721
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25814
26722
|
}
|
|
25815
26723
|
},
|
|
25816
26724
|
"required": [
|
|
@@ -25826,7 +26734,7 @@
|
|
|
25826
26734
|
"type": "integer",
|
|
25827
26735
|
"minimum": 0,
|
|
25828
26736
|
"maximum": 255,
|
|
25829
|
-
"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
|
|
26737
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
25830
26738
|
}
|
|
25831
26739
|
},
|
|
25832
26740
|
"required": [
|
|
@@ -26077,7 +26985,7 @@
|
|
|
26077
26985
|
"type": "integer",
|
|
26078
26986
|
"minimum": 0,
|
|
26079
26987
|
"maximum": 255,
|
|
26080
|
-
"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
|
|
26988
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26081
26989
|
}
|
|
26082
26990
|
},
|
|
26083
26991
|
"required": [
|
|
@@ -26093,7 +27001,7 @@
|
|
|
26093
27001
|
"type": "integer",
|
|
26094
27002
|
"minimum": 0,
|
|
26095
27003
|
"maximum": 255,
|
|
26096
|
-
"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
|
|
27004
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26097
27005
|
}
|
|
26098
27006
|
},
|
|
26099
27007
|
"required": [
|
|
@@ -26109,7 +27017,7 @@
|
|
|
26109
27017
|
"type": "integer",
|
|
26110
27018
|
"minimum": 0,
|
|
26111
27019
|
"maximum": 255,
|
|
26112
|
-
"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
|
|
27020
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26113
27021
|
}
|
|
26114
27022
|
},
|
|
26115
27023
|
"required": [
|
|
@@ -26344,7 +27252,7 @@
|
|
|
26344
27252
|
"where"
|
|
26345
27253
|
],
|
|
26346
27254
|
"additionalProperties": false,
|
|
26347
|
-
"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
|
|
27255
|
+
"description": "Returns U256. ESCROW-BOUND sum (query 1179, live cap v139): per-row min(row_value, order.amount, LIVE allocation.balance of the Order the row id names) — only funds still in escrow right now count, so a refunded or already-disbursed order contributes 0 naturally; a row whose Order has no allocation link also contributes 0, while an unreadable allocation object aborts the query (corruption is never a silent 0). 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 escrow actually bound to it — the forgery-proof aggregate for threshold gates and Formula pricing. Use logic_as_u256_* to compare the sum."
|
|
26348
27256
|
},
|
|
26349
27257
|
{
|
|
26350
27258
|
"type": "object",
|
|
@@ -26360,7 +27268,7 @@
|
|
|
26360
27268
|
"type": "integer",
|
|
26361
27269
|
"minimum": 0,
|
|
26362
27270
|
"maximum": 255,
|
|
26363
|
-
"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
|
|
27271
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26364
27272
|
}
|
|
26365
27273
|
},
|
|
26366
27274
|
"required": [
|
|
@@ -26376,7 +27284,7 @@
|
|
|
26376
27284
|
"type": "integer",
|
|
26377
27285
|
"minimum": 0,
|
|
26378
27286
|
"maximum": 255,
|
|
26379
|
-
"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
|
|
27287
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26380
27288
|
}
|
|
26381
27289
|
},
|
|
26382
27290
|
"required": [
|
|
@@ -26392,7 +27300,7 @@
|
|
|
26392
27300
|
"type": "integer",
|
|
26393
27301
|
"minimum": 0,
|
|
26394
27302
|
"maximum": 255,
|
|
26395
|
-
"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
|
|
27303
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26396
27304
|
}
|
|
26397
27305
|
},
|
|
26398
27306
|
"required": [
|
|
@@ -26643,7 +27551,7 @@
|
|
|
26643
27551
|
"type": "integer",
|
|
26644
27552
|
"minimum": 0,
|
|
26645
27553
|
"maximum": 255,
|
|
26646
|
-
"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
|
|
27554
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26647
27555
|
}
|
|
26648
27556
|
},
|
|
26649
27557
|
"required": [
|
|
@@ -26659,7 +27567,7 @@
|
|
|
26659
27567
|
"type": "integer",
|
|
26660
27568
|
"minimum": 0,
|
|
26661
27569
|
"maximum": 255,
|
|
26662
|
-
"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
|
|
27570
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26663
27571
|
}
|
|
26664
27572
|
},
|
|
26665
27573
|
"required": [
|
|
@@ -26909,7 +27817,7 @@
|
|
|
26909
27817
|
"type": "integer",
|
|
26910
27818
|
"minimum": 0,
|
|
26911
27819
|
"maximum": 255,
|
|
26912
|
-
"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
|
|
27820
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26913
27821
|
}
|
|
26914
27822
|
},
|
|
26915
27823
|
"required": [
|
|
@@ -26940,7 +27848,7 @@
|
|
|
26940
27848
|
"type": "integer",
|
|
26941
27849
|
"minimum": 0,
|
|
26942
27850
|
"maximum": 255,
|
|
26943
|
-
"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
|
|
27851
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26944
27852
|
}
|
|
26945
27853
|
},
|
|
26946
27854
|
"required": [
|
|
@@ -26971,7 +27879,7 @@
|
|
|
26971
27879
|
"type": "integer",
|
|
26972
27880
|
"minimum": 0,
|
|
26973
27881
|
"maximum": 255,
|
|
26974
|
-
"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
|
|
27882
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26975
27883
|
}
|
|
26976
27884
|
},
|
|
26977
27885
|
"required": [
|
|
@@ -26987,7 +27895,7 @@
|
|
|
26987
27895
|
"type": "integer",
|
|
26988
27896
|
"minimum": 0,
|
|
26989
27897
|
"maximum": 255,
|
|
26990
|
-
"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
|
|
27898
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
26991
27899
|
}
|
|
26992
27900
|
},
|
|
26993
27901
|
"required": [
|
|
@@ -27025,7 +27933,7 @@
|
|
|
27025
27933
|
"type": "integer",
|
|
27026
27934
|
"minimum": 0,
|
|
27027
27935
|
"maximum": 255,
|
|
27028
|
-
"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
|
|
27936
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
27029
27937
|
}
|
|
27030
27938
|
},
|
|
27031
27939
|
"required": [
|
|
@@ -27041,7 +27949,7 @@
|
|
|
27041
27949
|
"type": "integer",
|
|
27042
27950
|
"minimum": 0,
|
|
27043
27951
|
"maximum": 255,
|
|
27044
|
-
"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
|
|
27952
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
27045
27953
|
}
|
|
27046
27954
|
},
|
|
27047
27955
|
"required": [
|
|
@@ -27065,7 +27973,7 @@
|
|
|
27065
27973
|
"type": "integer",
|
|
27066
27974
|
"minimum": 0,
|
|
27067
27975
|
"maximum": 255,
|
|
27068
|
-
"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
|
|
27976
|
+
"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 whose payee is NOT the order itself, such as settlement releases and incentive/bounty claims). NEVER arm 254 on a refund rail: a refund pays the submitted Order through user slot 0, and a refund leg re-entered in a later renewal period would abort E_ONCE_TRIGGERED (16) forever — refund once-ness comes from the terminal-node topology, never from a once slot. 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)."
|
|
27069
27977
|
}
|
|
27070
27978
|
},
|
|
27071
27979
|
"required": [
|