@wowok/agent-mcp 3.3.1 → 3.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chain-semantics/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/object-graph.js +1 -1
- package/dist/composition/audit.d.ts +5 -0
- package/dist/composition/audit.js +1 -1
- package/dist/composition/blueprint-view.d.ts +0 -1
- package/dist/composition/blueprint-view.js +1 -1
- package/dist/composition/compile.d.ts +4 -2
- package/dist/composition/compile.js +1 -1
- package/dist/composition/inflight.d.ts +8 -4
- package/dist/composition/inflight.js +1 -1
- package/dist/customer/industry-risks.js +1 -1
- package/dist/customer/user-preferences.js +1 -1
- package/dist/extensions/business-modules.d.ts +7 -2
- package/dist/extensions/business-modules.js +1 -1
- package/dist/extensions/industry-audit.spec.js +1 -1
- package/dist/extensions/industry-pack.d.ts +3 -2
- package/dist/extensions/industry-pack.js +1 -1
- package/dist/extensions/modes.js +1 -1
- package/dist/graph/onchain/project-relationship.js +1 -1
- package/dist/knowledge/acquisition-flywheel.js +1 -1
- package/dist/knowledge/allocation-ledger.d.ts +4 -1
- package/dist/knowledge/allocation-ledger.js +1 -1
- package/dist/knowledge/allocation-puzzle.d.ts +1 -0
- package/dist/knowledge/allocation-puzzle.js +1 -1
- package/dist/knowledge/allocation-risk.d.ts +1 -1
- package/dist/knowledge/allocation-risk.js +1 -1
- package/dist/knowledge/arb-fund-facts.d.ts +5 -0
- package/dist/knowledge/arb-fund-facts.js +1 -1
- package/dist/knowledge/audit-rules.d.ts +4 -3
- package/dist/knowledge/audit-rules.js +1 -1
- package/dist/knowledge/baselines/rules/plan.json +48 -2
- package/dist/knowledge/baselines/rules/reward.json +1 -1
- package/dist/knowledge/builtin-templates.d.ts +9 -1
- package/dist/knowledge/builtin-templates.js +1 -1
- package/dist/knowledge/discount-threshold.js +1 -1
- package/dist/knowledge/guard-bindings.js +1 -1
- package/dist/knowledge/guard-design-patterns.js +1 -1
- package/dist/knowledge/guard-field-cognition.js +1 -1
- package/dist/knowledge/guard-lint.js +1 -1
- package/dist/knowledge/guard-submission-brief.d.ts +5 -0
- package/dist/knowledge/guard-submission-brief.js +1 -1
- package/dist/knowledge/guard-submission-prompt.d.ts +2 -1
- 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/industry-generalizer.js +1 -1
- package/dist/knowledge/industry-registry.js +1 -1
- package/dist/knowledge/industry-strategy.js +1 -1
- package/dist/knowledge/reward-ledger.js +1 -1
- package/dist/knowledge/reward-puzzle.d.ts +1 -1
- package/dist/knowledge/reward-risk.d.ts +1 -1
- package/dist/knowledge/scenario-modes.d.ts +2 -2
- package/dist/knowledge/scenario-modes.js +1 -1
- package/dist/knowledge/scenario-topology.js +1 -1
- package/dist/knowledge/strategy-manuals.js +1 -1
- package/dist/knowledge/template-index.d.ts +19 -0
- package/dist/knowledge/template-index.js +1 -0
- package/dist/knowledge/template-loader.d.ts +36 -0
- package/dist/knowledge/template-loader.js +1 -1
- package/dist/knowledge/template-registry.js +1 -1
- package/dist/knowledge/template-scanner.d.ts +7 -0
- package/dist/knowledge/template-scanner.js +1 -1
- package/dist/knowledge/tool-constraints.js +1 -1
- package/dist/knowledge/workflow-guidance.js +1 -1
- package/dist/monitor/MonitorLoop.js +1 -1
- package/dist/participation/radar-core.d.ts +1 -0
- package/dist/participation/radar-core.js +1 -1
- package/dist/persona/defaults.js +1 -1
- package/dist/persona/topology-focus.js +1 -1
- package/dist/playbooks/service-build/business-puzzle.js +1 -1
- package/dist/playbooks/service-build/game-theory.d.ts +4 -1
- package/dist/playbooks/service-build/game-theory.js +1 -1
- package/dist/playbooks/service-build/machine-panorama.js +1 -1
- package/dist/playbooks/service-build/merchant-guide.d.ts +25 -1
- package/dist/playbooks/service-build/merchant-guide.js +1 -1
- package/dist/playbooks/service-build/migration-planner.js +1 -1
- package/dist/playbooks/service-build/object-panorama.js +1 -1
- package/dist/playbooks/service-build/participation-radar.js +1 -1
- package/dist/playbooks/service-build/pipeline-actions.d.ts +4 -1
- package/dist/playbooks/service-build/pipeline-actions.js +1 -1
- package/dist/playbooks/service-build/relationship-profile.js +1 -1
- package/dist/playbooks/service-build/service-panorama.d.ts +4 -0
- package/dist/playbooks/service-build/service-panorama.js +1 -1
- package/dist/playbooks/service-build/service-quote.js +1 -1
- package/dist/relationship/derivation.d.ts +1 -1
- package/dist/review/index.js +1 -1
- package/dist/safety/confirm-gate.js +1 -1
- package/dist/schema/benchmark-migration/index.d.ts +35 -0
- package/dist/schema/benchmark-migration/index.js +1 -1
- package/dist/schema/call/allocation.d.ts +46 -3
- package/dist/schema/call/allocation.js +1 -1
- package/dist/schema/call/contact.js +1 -1
- package/dist/schema/call/guard.js +1 -1
- package/dist/schema/call/handler.js +1 -1
- package/dist/schema/call/order.js +1 -1
- package/dist/schema/call/progress.d.ts +6 -3
- package/dist/schema/call/progress.js +1 -1
- package/dist/schema/call/repository.js +1 -1
- package/dist/schema/call/reward.d.ts +2 -2
- package/dist/schema/call/reward.js +1 -1
- package/dist/schema/call/semantic.js +1 -1
- package/dist/schema/call/service.d.ts +8 -4
- package/dist/schema/call/service.js +1 -1
- package/dist/schema/common/index.js +1 -1
- package/dist/schema/goal/index.d.ts +54 -0
- package/dist/schema/goal/planning.d.ts +86 -0
- package/dist/schema/goal/planning.js +1 -1
- package/dist/schema/local/index.d.ts +39 -0
- package/dist/schema/local/index.js +1 -1
- package/dist/schema/operations.d.ts +20 -5
- package/dist/schema/operations.js +1 -1
- package/dist/schema/query/bi.d.ts +2 -0
- package/dist/schema/query/bi.js +1 -1
- package/dist/schema/query/index.d.ts +24 -12
- package/dist/schema/query/index.js +1 -1
- package/dist/schema/schema-version.d.ts +1 -1
- package/dist/schema/schema-version.js +1 -1
- package/dist/schema-query-impl/index.js +1 -1
- package/dist/schemas/account_operation.output.json +28 -3
- package/dist/schemas/benchmark_migration_operation.schema.json +87 -0
- package/dist/schemas/goal_operation.schema.json +94 -0
- package/dist/schemas/index.json +1 -1
- package/dist/schemas/onchain_operations.output.json +1 -1
- package/dist/schemas/onchain_operations.schema.json +409 -119
- package/dist/schemas/onchain_operations_allocation.schema.json +290 -6
- package/dist/schemas/onchain_operations_arbitration.schema.json +2 -2
- package/dist/schemas/onchain_operations_contact.schema.json +2 -2
- package/dist/schemas/onchain_operations_demand.schema.json +3 -3
- package/dist/schemas/onchain_operations_gen_passport.schema.json +1 -1
- package/dist/schemas/onchain_operations_guard.schema.json +63 -63
- package/dist/schemas/onchain_operations_machine.schema.json +1 -1
- package/dist/schemas/onchain_operations_order.schema.json +2 -2
- package/dist/schemas/onchain_operations_progress.schema.json +7 -3
- package/dist/schemas/onchain_operations_proof.schema.json +1 -1
- package/dist/schemas/onchain_operations_repository.schema.json +2 -2
- package/dist/schemas/onchain_operations_reward.schema.json +8 -8
- package/dist/schemas/onchain_operations_service.schema.json +20 -18
- package/dist/schemas/onchain_operations_treasury.schema.json +7 -7
- package/dist/schemas/query_toolkit.output.json +67 -53
- package/dist/schemas/workflow_operation.schema.json +1 -1
- package/dist/tools/handlers/benchmark-migration.js +1 -1
- package/dist/tools/handlers/config.js +1 -1
- package/dist/tools/handlers/file-export.js +1 -1
- package/dist/tools/handlers/industry-pack.d.ts +1 -0
- package/dist/tools/handlers/industry-pack.js +1 -1
- package/dist/tools/handlers/local.js +1 -1
- package/dist/tools/handlers/onchain.d.ts +24 -0
- package/dist/tools/handlers/onchain.js +1 -1
- package/dist/tools/handlers/query.js +1 -1
- package/dist/tools/handlers/review-chain.d.ts +1 -1
- package/dist/tools/handlers/review-chain.js +1 -1
- package/dist/tools/handlers/schema-query.js +1 -1
- package/dist/tools/handlers/workflow.js +1 -1
- package/dist/tools/registry/agent.js +1 -1
- package/dist/tools/wip-deploy-assist.js +1 -1
- package/dist/tools/wrap.js +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
function toBigInt(a){if(a===null||a===undefined)return null;if(typeof a==='bigint')return a;if(typeof a==='number')return Number['isFinite'](a)?BigInt(Math['trunc'](a)):null;if(typeof a==='string'){const b=a['trim']();if(b==='')return null;if(!/^\d+$/['test'](b)){const c=b['match'](/^(\d+)/);return c?BigInt(c[0x1]):null;}return BigInt(b);}return null;}export function evaluateDiscountThreshold(a,b){const c=toBigInt(a)??0x0n,d=toBigInt(b);return{'listTotal':c,'benchmark':d,'applies':d===null?!![]:c>=d};}function quantityOf(a){const b=a?.['quantity']??a?.['stock'],c=toBigInt(b);return c===null||c<0x0n?0x0n:c;}export function describeBenchmarkIssueRisk(a){const b=toBigInt(a);if(b===null||b===0x0n)return null;return'Coupon\x20threshold\x20set\x20to\x20'+b+'\x20(smallest\x20units):\x20the\x20discount\x20applies\x20ONLY\x20to\x20orders\x20'+('whose\x20total\x20is\x20>=\x20'+b+'.\x20An\x20order\x20below\x20that\x20threshold\x20CANNOT\x20use\x20this\x20coupon:\x20')+'attaching\x20it\x20at\x20buy\x20aborts\x20(error\x2038\x20—\x20the\x20transaction\x20rolls\x20back,\x20nothing\x20is\x20paid,\x20'+'and\x20the\x20coupon\x20is\x20preserved),\x20while\x20dropping\x20it\x20means\x20the\x20buyer\x20pays\x20FULL\x20price\x20'+'and\x20keeps\x20the\x20coupon\x20for\x20a\x20future\x20order.\x20'+'Leave\x20\x27benchmark\x27\x20unset\x20for\x20an\x20unconditional\x20discount.';}export async function checkDiscountThresholdBeforeBuy(a,b,c){const d=a?.['order_new']?.['buy'],e=d?.['discount'];if(typeof e!=='string'||e['trim']()==='')return null;const f=Array['isArray'](d?.['items'])?d['items']:[];if(f['length']===0x0)return null;let g,h;try{g=await c['resolveAddress'](String(a?.['object']??'')),h=await c['resolveAddress'](e);}catch{return null;}if(!g||!h)return null;let i;try{i=await c['fetchObjects']([g,h],b);}catch{return null;}const j=new Map();for(const v of i??[]){if(v?.['object'])j['set'](String(v['object'])['toLowerCase'](),v);}const k=j['get'](g['toLowerCase']()),l=j['get'](h['toLowerCase']());if(!k||!l)return null;const m=Array['isArray'](k['sales'])?k['sales']:[];if(m['length']===0x0)return null;const n=new Map();for(const w of m){if(typeof w?.['name']!=='string')continue;const x=toBigInt(w['price']);if(x!==null)n['set'](w['name'],x);}let q=0x0n,r=!![];for(const y of f){const z=typeof y?.['name']==='string'?n['get'](y['name']):undefined;if(z===undefined){r=![];break;}q+=z*quantityOf(y);}if(!r)return null;const t=l['benchmark'];if(t===null||t===undefined)return null;const u=evaluateDiscountThreshold(q,t);if(u['applies'])return null;return'⛔\x20THIS\x20COUPON\x20CANNOT\x20APPLY\x20TO\x20THIS\x20ORDER\x20—\x20order\x20not\x20placed\x0a\x0a'+('Coupon\x20'+e+'\x20carries\x20a\x20threshold\x20of\x20'+u['benchmark']+'\x20(smallest\x20units).\x0a')+('This\x20order\x20totals\x20'+u['listTotal']+'\x20before\x20discount,\x20which\x20is\x20BELOW\x20the\x20threshold.\x0a\x0a')+'What\x20would\x20happen\x20on\x20chain:\x20with\x20the\x20coupon\x20attached,\x20buy\x20aborts\x20(error\x2038)\x20and\x20the\x20whole\x20'+'transaction\x20rolls\x20back\x20—\x20nothing\x20is\x20paid\x20and\x20the\x20coupon\x20is\x20preserved.\x20Without\x20the\x20coupon,\x20'+'the\x20order\x20completes\x20at\x20FULL\x20price\x20and\x20the\x20coupon\x20survives\x20for\x20a\x20future\x20order.\x0a\x0a'+'Fixes\x20(pick\x20one):\x0a'+('\x20\x20•\x20Raise\x20this\x20order\x27s\x20total\x20to\x20>=\x20'+u['benchmark']+'\x20(add\x20items\x20/\x20buy\x20a\x20larger\x20quantity).\x0a')+('\x20\x20•\x20Drop\x20\x27discount\x27\x20from\x20this\x20order\x20and\x20pay\x20the\x20list\x20price\x20'+u['listTotal']+',\x20keeping\x20the\x20coupon.\x0a')+'\x20\x20•\x20Use\x20a\x20coupon\x20issued\x20WITHOUT\x20a\x20threshold\x20(unconditional).\x0a'+'Note:\x20a\x20coupon\x20with\x20NO\x20threshold\x20always\x20applies\x20—\x20omitting\x20it\x20is\x20not\x20the\x20problem\x20here.';}export function simulateCouponFinal(a,b,c){const d=toBigInt(a)??0x0n,e=toBigInt(c)??0x0n;if(Number(b)===0x0){const f=d*e/0x2710n;return d>f?d-f:0x0n;}return d>e?d-e:0x0n;}export function evaluateDiscountFloor(a,b,c,d){const e=Array['isArray'](a)?a:[];let f=null;for(const g of e){const h=toBigInt(g?.['price']);if(h===null)continue;if(f===null||h<f)f=h;}if(f===null)return{'cheapestPrice':null,'finalOnCheapest':null,'freeTierDeclared':d};return{'cheapestPrice':f,'finalOnCheapest':simulateCouponFinal(f,b,c),'freeTierDeclared':d};}export async function checkDiscountFloorBeforeIssue(a,b,c){const d=a?.['discount'];if(d==null||typeof d!=='object')return{'block':null,'warning':null};const e=d['allow_zero_total']===!![];let f;try{f=await c['resolveAddress'](String(a?.['object']??''));}catch{f=undefined;}if(!f)return{'block':null,'warning':null};let g=null;try{const
|
|
1
|
+
function toBigInt(a){if(a===null||a===undefined)return null;if(typeof a==='bigint')return a;if(typeof a==='number')return Number['isFinite'](a)?BigInt(Math['trunc'](a)):null;if(typeof a==='string'){const b=a['trim']();if(b==='')return null;if(!/^\d+$/['test'](b)){const c=b['match'](/^(\d+)/);return c?BigInt(c[0x1]):null;}return BigInt(b);}return null;}export function evaluateDiscountThreshold(a,b){const c=toBigInt(a)??0x0n,d=toBigInt(b);return{'listTotal':c,'benchmark':d,'applies':d===null?!![]:c>=d};}function quantityOf(a){const b=a?.['quantity']??a?.['stock'],c=toBigInt(b);return c===null||c<0x0n?0x0n:c;}export function describeBenchmarkIssueRisk(a){const b=toBigInt(a);if(b===null||b===0x0n)return null;return'Coupon\x20threshold\x20set\x20to\x20'+b+'\x20(smallest\x20units):\x20the\x20discount\x20applies\x20ONLY\x20to\x20orders\x20'+('whose\x20total\x20is\x20>=\x20'+b+'.\x20An\x20order\x20below\x20that\x20threshold\x20CANNOT\x20use\x20this\x20coupon:\x20')+'attaching\x20it\x20at\x20buy\x20aborts\x20(error\x2038\x20—\x20the\x20transaction\x20rolls\x20back,\x20nothing\x20is\x20paid,\x20'+'and\x20the\x20coupon\x20is\x20preserved),\x20while\x20dropping\x20it\x20means\x20the\x20buyer\x20pays\x20FULL\x20price\x20'+'and\x20keeps\x20the\x20coupon\x20for\x20a\x20future\x20order.\x20'+'Leave\x20\x27benchmark\x27\x20unset\x20for\x20an\x20unconditional\x20discount.';}export async function checkDiscountThresholdBeforeBuy(a,b,c){const d=a?.['order_new']?.['buy'],e=d?.['discount'];if(typeof e!=='string'||e['trim']()==='')return null;const f=Array['isArray'](d?.['items'])?d['items']:[];if(f['length']===0x0)return null;let g,h;try{g=await c['resolveAddress'](String(a?.['object']??'')),h=await c['resolveAddress'](e);}catch{return null;}if(!g||!h)return null;let i;try{i=await c['fetchObjects']([g,h],b);}catch{return null;}const j=new Map();for(const v of i??[]){if(v?.['object'])j['set'](String(v['object'])['toLowerCase'](),v);}const k=j['get'](g['toLowerCase']()),l=j['get'](h['toLowerCase']());if(!k||!l)return null;const m=Array['isArray'](k['sales'])?k['sales']:[];if(m['length']===0x0)return null;const n=new Map();for(const w of m){if(typeof w?.['name']!=='string')continue;const x=toBigInt(w['price']);if(x!==null)n['set'](w['name'],x);}let q=0x0n,r=!![];for(const y of f){const z=typeof y?.['name']==='string'?n['get'](y['name']):undefined;if(z===undefined){r=![];break;}q+=z*quantityOf(y);}if(!r)return null;const t=l['benchmark'];if(t===null||t===undefined)return null;const u=evaluateDiscountThreshold(q,t);if(u['applies'])return null;return'⛔\x20THIS\x20COUPON\x20CANNOT\x20APPLY\x20TO\x20THIS\x20ORDER\x20—\x20order\x20not\x20placed\x0a\x0a'+('Coupon\x20'+e+'\x20carries\x20a\x20threshold\x20of\x20'+u['benchmark']+'\x20(smallest\x20units).\x0a')+('This\x20order\x20totals\x20'+u['listTotal']+'\x20before\x20discount,\x20which\x20is\x20BELOW\x20the\x20threshold.\x0a\x0a')+'What\x20would\x20happen\x20on\x20chain:\x20with\x20the\x20coupon\x20attached,\x20buy\x20aborts\x20(error\x2038)\x20and\x20the\x20whole\x20'+'transaction\x20rolls\x20back\x20—\x20nothing\x20is\x20paid\x20and\x20the\x20coupon\x20is\x20preserved.\x20Without\x20the\x20coupon,\x20'+'the\x20order\x20completes\x20at\x20FULL\x20price\x20and\x20the\x20coupon\x20survives\x20for\x20a\x20future\x20order.\x0a\x0a'+'Fixes\x20(pick\x20one):\x0a'+('\x20\x20•\x20Raise\x20this\x20order\x27s\x20total\x20to\x20>=\x20'+u['benchmark']+'\x20(add\x20items\x20/\x20buy\x20a\x20larger\x20quantity).\x0a')+('\x20\x20•\x20Drop\x20\x27discount\x27\x20from\x20this\x20order\x20and\x20pay\x20the\x20list\x20price\x20'+u['listTotal']+',\x20keeping\x20the\x20coupon.\x0a')+'\x20\x20•\x20Use\x20a\x20coupon\x20issued\x20WITHOUT\x20a\x20threshold\x20(unconditional).\x0a'+'Note:\x20a\x20coupon\x20with\x20NO\x20threshold\x20always\x20applies\x20—\x20omitting\x20it\x20is\x20not\x20the\x20problem\x20here.';}export function simulateCouponFinal(a,b,c){const d=toBigInt(a)??0x0n,e=toBigInt(c)??0x0n;if(Number(b)===0x0){const f=d*e/0x2710n;return d>f?d-f:0x0n;}return d>e?d-e:0x0n;}export function evaluateDiscountFloor(a,b,c,d){const e=Array['isArray'](a)?a:[];let f=null;for(const g of e){const h=toBigInt(g?.['price']);if(h===null)continue;if(f===null||h<f)f=h;}if(f===null)return{'cheapestPrice':null,'finalOnCheapest':null,'freeTierDeclared':d};return{'cheapestPrice':f,'finalOnCheapest':simulateCouponFinal(f,b,c),'freeTierDeclared':d};}export async function checkDiscountFloorBeforeIssue(a,b,c){const d=a?.['discount'];if(d==null||typeof d!=='object')return{'block':null,'warning':null};const e=d['allow_zero_total']===!![];let f;try{f=await c['resolveAddress'](String(a?.['object']??''));}catch{f=undefined;}if(!f)return{'block':null,'warning':null};let g=null;try{const k=await c['fetchObjects']([f],b);g=(k??[])['find'](l=>l?.['object']&&String(l['object'])['toLowerCase']()===f['toLowerCase']())??null;}catch{g=null;}const h=evaluateDiscountFloor(g?.['sales'],d['discount_type'],d['discount_value'],e);if(h['finalOnCheapest']===null||h['finalOnCheapest']>0x0n)return{'block':null,'warning':null};const i='Coupon\x20\x22'+(d['name']??'<unnamed>')+'\x22\x20zeroes\x20the\x20cheapest\x20SKU\x20of\x20this\x20Service\x20'+('(cheapest\x20sale\x20price\x20'+h['cheapestPrice']+',\x20simulated\x20final\x20total\x200\x20smallest\x20units).\x0a')+'A\x20zero-total\x20order\x20holds\x20an\x20EMPTY\x20escrow,\x20and\x20reward/incentive\x20rails\x20exclude\x20zero-total\x20'+'orders\x20(template\x20policy\x20v55)\x20—\x20a\x20free\x20buy\x20can\x20never\x20claim\x20a\x20bounty,\x20but\x20it\x20also\x20delivers\x20'+'nothing\x20to\x20settle\x20on.\x0a\x0a';if(e){const l=d['discount_type']===0x0?'If\x20it\x20was\x20meant\x20to\x20be\x20a\x20discount\x20instead,\x20lower\x20the\x20RATES\x20value\x20further\x20'+'or\x20lower\x20the\x20cheapest\x20SKU\x27s\x20sale\x20price\x20so\x20the\x20discounted\x20total\x20pays\x20at\x20least\x201\x20smallest\x20unit.':'If\x20it\x20was\x20meant\x20to\x20be\x20a\x20discount\x20instead,\x20lower\x20discount_value\x20(MINUS)\x20or\x20use\x20a\x20RATES\x20value\x20below\x2010000.';return{'block':null,'warning':'FREE\x20TIER\x20DECLARED\x20(allow_zero_total):\x20'+i+l};}const j=d['discount_type']===0x0?'\x20\x20•\x20Lower\x20the\x20RATES\x20value\x20further\x20(it\x20is\x20'+d['discount_value']+';\x20keep\x20it\x20below\x2010000\x20AND\x20still\x20leave\x20>=\x201\x20smallest\x20unit\x20on\x20the\x20cheapest\x20SKU).\x0a'+'\x20\x20•\x20Lower\x20the\x20cheapest\x20SKU\x27s\x20sale\x20price\x20so\x20the\x20discounted\x20total\x20pays\x20>=\x201\x20smallest\x20unit.\x0a':'\x20\x20•\x20Switch\x20to\x20discount_type\x200\x20(RATES)\x20with\x20a\x20value\x20below\x2010000.\x0a';return{'block':'⛔\x20COUPON\x20ISSUANCE\x20BLOCKED\x20—\x20zero\x20floor\x20(BKN-P2)\x0a\x0a'+i+'Fixes\x20(pick\x20one):\x0a'+'\x20\x20•\x20Lower\x20discount_value\x20so\x20the\x20cheapest\x20SKU\x20still\x20pays\x20>=\x201\x20smallest\x20unit.\x0a'+j+'\x20\x20•\x20If\x20a\x20FREE\x20product\x20is\x20the\x20intent,\x20set\x20allow_zero_total:\x20true\x20on\x20the\x20discount\x20to\x20'+'declare\x20the\x20free\x20tier\x20explicitly.','warning':null};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export const OWNER_RECEIVE_COGNITION='owner_receive\x20extracts\x20objects\x20RECEIVED\x20via\x20transfer\x20(Receiving<CoinWrapper<K>>\x20with\x20ANY\x20token\x20K,\x20'+'or\x20any\x20K:key+store\x20object\x20such\x20as\x20an\x20NFT)\x20and\x20sends\x20them\x20to\x20the\x20Permission\x20owner\x20—\x20it\x20never\x20touches\x20the\x20'+'object\x27s\x20balance\x20field.\x20The\x20balance\x20field\x27s\x20only\x20exits\x20are:\x20Reward\x20→\x20guard-gated\x20claim;\x20Treasury\x20→\x20'+'permission-gated\x20withdraw\x20/\x20guard-gated\x20external_withdraw.\x20receive(154)\x20is\x20what\x20joins\x20a\x20received\x20payment\x20'+'INTO\x20the\x20balance.';export const GUARD_BINDING_REGISTRY=[{'id':'reward.recipient.guard_identifier','object':'Reward','slot':'RewardGuard.recipient\x20=\x20Recipient::GuardIdentifier(identifier)','preset_kind':'recipient','submission_type':'address','asserted_at':'reward.move\x20L102-104\x20(is_identifier_address)','consumed_at':'reward.move\x20L154-156\x20(de_address\x20→\x20claim\x20payee)','neutral':'The\x20claim\x20payee\x20is\x20resolved\x20from\x20the\x20claimer\x27s\x20submission\x20for\x20this\x20identifier.','creator':'Design\x20lever:\x20dynamic\x20payee\x20—\x20the\x20guard\x20decides\x20who\x20gets\x20paid\x20(e.g.\x20reimbursement\x20to\x20the\x20address\x20the\x20'+'guard\x20derives,\x20proxy\x20claims).\x20Alternative\x20presets:\x20Entity\x20(fixed\x20payee)\x20or\x20Signer\x20(payer\x20=\x20the\x20tx\x20sender\x20who\x20passed\x20the\x20guard).','user':'Who\x20receives\x20the\x20reward\x20is\x20determined\x20by\x20the\x20submitted\x20address\x20for\x20this\x20slot\x20—\x20not\x20necessarily\x20you,\x20even\x20if\x20you\x20triggered\x20the\x20claim.','risk_hooks':['R-R-2-01']},{'id':'reward.amount.guard_u64_identifier','object':'Reward','slot':'RewardGuard.amount\x20=\x20Amount::GuardU64Identifier(identifier)','preset_kind':'amount','submission_type':'u64','asserted_at':'reward.move\x20L107-113\x20(submission\x20value\x20type\x20must\x20be\x20u64)','consumed_at':'reward.move\x20L165-168\x20(de_u64\x20→\x20claim\x20amount;\x20L174\x20asserts\x20amount\x20≤\x20balance)','neutral':'The\x20claim\x20amount\x20is\x20resolved\x20from\x20the\x20claimer\x27s\x20submission\x20for\x20this\x20identifier.','creator':'Design\x20lever:\x20credential-based\x20dynamic\x20amounts\x20(marketing:\x20submit\x20receipt\x20→\x20get\x20proportional\x20cashback;\x20'+'fund\x20recovery:\x20owner\x20escape\x20hatch\x20submits\x20the\x20FULL\x20remaining\x20balance\x20to\x20recover\x20100%).\x20'+'Alternative\x20preset:\x20Fixed(u64).','user':'You\x20claim\x20exactly\x20what\x20you\x20submit\x20(bounded\x20by\x20the\x20reward\x20balance)\x20—\x20check\x20whether\x20the\x20guard\x20validates\x20your\x20submitted\x20amount\x20against\x20other\x20evidence.','risk_hooks':['R-R-7-01']},{'id':'reward.expiration_time','object':'Reward','slot':'RewardGuard.expiration_time:\x20Option<u64>','preset_kind':'deadline','submission_type':'any','consumed_at':'reward.move\x20L147-150\x20(claim\x20asserts\x20clock\x20≤\x20expiration_time),\x20guard_add\x20L247-249','neutral':'Time\x20window\x20of\x20the\x20guard:\x20after\x20it\x20elapses\x20the\x20guard\x20no\x20longer\x20opens\x20(claim\x20aborts\x20E_GUARD_EXPIRED).','creator':'Dual\x20meaning\x20by\x20design:\x20for\x20MARKETING\x20guards\x20it\x20is\x20the\x20campaign\x20deadline;\x20for\x20an\x20OWNER\x20ESCAPE\x20guard\x20'+'(recipient=Signer,\x20amount=GuardU64Identifier)\x20it\x20is\x20the\x20FUND\x20LOCK\x20PERIOD\x20—\x20set\x20it\x20in\x20the\x20future\x20(e.g.\x2030\x20days)\x20'+'and\x20after\x20expiry\x20you\x20reclaim\x20the\x20residual\x20balance\x20by\x20submitting\x20the\x20full\x20amount\x20(R-R-7-01).','user':'This\x20is\x20your\x20claim\x20deadline\x20—\x20after\x20expiration_time\x20the\x20guard\x20cannot\x20be\x20claimed\x20and\x20is\x20removed\x20by\x20guard_remove_expired.','risk_hooks':['R-R-4-01']},{'id':'reward.store_from_id','object':'Reward','slot':'RewardGuard.store_from_id:\x20Option<u8>','preset_kind':'source','submission_type':'address','asserted_at':'reward.move\x20L36-38\x20/\x20reward.ts\x20schema\x20(address-compatible\x20identifier)','consumed_at':'reward.move\x20L175-178\x20(de_address_compatible\x20→\x20Record.store_from_id;\x20an\x20absent\x20slot\x20persists\x20none,\x20which\x20matches\x20no\x20store_from_id\x20predicate)','neutral':'Each\x20claim\x20record\x20is\x20tagged\x20with\x20an\x20origin\x20object\x20address\x20submitted\x20at\x20claim\x20time.','creator':'Audit\x20lever:\x20tie\x20every\x20payout\x20to\x20its\x20campaign/repo/order\x20source\x20—\x20the\x20Record\x20table\x20then\x20answers\x20\x27what\x20did\x20this\x20campaign\x20actually\x20pay\x20out\x27.','user':'Your\x20claim\x20is\x20permanently\x20tagged\x20with\x20the\x20source\x20you\x20submitted\x20—\x20use\x20it\x20to\x20prove\x20your\x20payout\x20came\x20from\x20a\x20specific\x20campaign.'},{'id':'allocation.who.guard_identifier','object':'Allocation','slot':'Sharing.who\x20=\x20Recipient::GuardIdentifier(identifier)','preset_kind':'recipient','submission_type':'address','asserted_at':'allocation.move\x20L150-151\x20(is_identifier_address)','consumed_at':'allocation.move\x20L232-233\x20(de_address\x20→\x20payout\x20recipient)','neutral':'The\x20revenue-split\x20payee\x20is\x20resolved\x20from\x20the\x20alloc\x20caller\x27s\x20submission.','creator':'Design\x20lever:\x20dynamic\x20split\x20counterparties\x20—\x20e.g.\x20the\x20guard\x20derives\x20\x27the\x20order\x27s\x20actual\x20supplier\x27\x20from\x20evidence.\x20'+'Alternatives:\x20Entity\x20(fixed\x20payee)\x20or\x20Signer\x20(payer\x20=\x20whoever\x20executes\x20the\x20guard-gated\x20alloc).','user':'The\x20split\x20payee\x20comes\x20from\x20the\x20submission\x20resolved\x20at\x20alloc\x20time\x20—\x20verify\x20the\x20guard\x20logic\x20to\x20know\x20who\x20it\x20resolves\x20to.'},{'id':'allocation.mode_and_sharing','object':'Allocation','slot':'Sharing\x20{\x20mode:\x20Amount|Rate|Surplus|RateGross,\x20sharing:\x20u64\x20}','preset_kind':'amount','submission_type':'u64','asserted_at':'allocation.move\x20L224-256\x20(rate\x20invariants:\x20NET\x20Rate\x20and\x20RateGross\x20share\x20one\x20total_rate\x20counter;\x20without\x20Surplus\x20the\x20rates\x20must\x20sum\x20to\x20exactly\x2010000;\x20a\x20pure-RateGross\x20plan\x20also\x20caps\x20fix\x20+\x20rates\x20x\x20max)','consumed_at':'allocation.move\x20L280-405\x20(alloc:\x20Amount\x20splits\x20a\x20fixed\x20value\x20/\x20Rate\x20computes\x20basis\x20points\x20of\x20pool-fix\x20/\x20RateGross\x20computes\x20basis\x20points\x20of\x20the\x20full\x20pool\x20or\x20the\x20max\x20cap\x20/\x20Surplus\x20takes\x20the\x20remainder)','neutral':'How\x20much\x20each\x20sharing\x20entry\x20receives\x20from\x20an\x20allocated\x20payment.','creator':'Design\x20lever:\x20fixed\x20amounts\x20(Amount),\x20proportional\x20splits\x20on\x20the\x20net\x20pool\x20(Rate,\x20basis\x20points\x20over\x20pool-fix,\x20must\x20complete\x2010000\x20unless\x20a\x20Surplus\x20remainder\x20exists),\x20'+'proportional\x20splits\x20on\x20the\x20gross\x20pool\x20(RateGross,\x20basis\x20points\x20over\x20the\x20full\x20pool\x20or\x20max\x20cap\x20—\x20expresses\x20\x27fixed\x20fee\x20+\x20commission\x20on\x20the\x20order\x20total\x27),\x20'+'or\x20residual\x20beneficiary\x20(Surplus\x20—\x20exactly\x20one,\x20takes\x20what\x20is\x20left).','user':'Your\x20Rate/RateGross\x20sharing\x20is\x20in\x20basis\x20points\x20(3000\x20=\x2030%);\x20a\x20Surplus\x20entry\x20receives\x20whatever\x20the\x20other\x20entries\x20did\x20not\x20consume.'},{'id':'demand.service_identifier','object':'Demand','slot':'ServiceGuard.service_identifier:\x20Option<u8>','preset_kind':'service','submission_type':'address','consumed_at':'demand.move\x20L132-133\x20(de_address\x20→\x20the\x20service\x20being\x20presented)','neutral':'Which\x20service\x20a\x20presenter\x20is\x20presenting\x20for\x20is\x20resolved\x20from\x20their\x20passport\x20submission.','creator':'Design\x20lever:\x20qualification-gated\x20presentation\x20—\x20only\x20guards\x20that\x20resolve\x20to\x20approved\x20services\x20let\x20suppliers\x20present\x20'+'(e.g.\x20whitelist,\x20passport,\x20or\x20proof-of-capability\x20guards).','user':'You\x20may\x20only\x20present\x20the\x20service\x20your\x20submission\x20resolves\x20to\x20—\x20the\x20guard\x20defines\x20which\x20services\x20you\x20are\x20eligible\x20to\x20present.'},{'id':'treasury.deposit.identifier','object':'Treasury','slot':'AmountFromDepositGuard.identifier:\x20Option<u8>','preset_kind':'amount','submission_type':'number','asserted_at':'treasury.move\x20L138-141\x20(submission\x20value\x20type\x20must\x20be\x20a\x20number)','consumed_at':'treasury.move\x20L371-385\x20(de_number\x20→\x20deposit\x20amount;\x20excess\x20is\x20refunded\x20to\x20the\x20depositor)','neutral':'The\x20amount\x20actually\x20deposited\x20is\x20resolved\x20from\x20the\x20depositor\x27s\x20submission.','creator':'Design\x20lever:\x20guard-driven\x20external\x20inflow\x20—\x20outside\x20parties\x20deposit\x20against\x20a\x20guard\x20(e.g.\x20invoice-backed\x20payment:\x20'+'the\x20guard\x20validates\x20the\x20invoice,\x20the\x20submission\x20states\x20the\x20amount).','user':'You\x20deposit\x20the\x20amount\x20you\x20submit;\x20anything\x20beyond\x20it\x20is\x20transferred\x20back\x20to\x20you\x20in\x20the\x20same\x20call.'},{'id':'treasury.withdraw.identifier','object':'Treasury','slot':'AmountFromWithdrawGuard.identifier:\x20u8','preset_kind':'amount','submission_type':'number','consumed_at':'treasury.move\x20L409-410\x20(de_number\x20→\x20withdraw\x20amount,\x20asserted\x20≤\x20balance)','neutral':'The\x20amount\x20withdrawn\x20by\x20an\x20outside\x20party\x20is\x20resolved\x20from\x20their\x20submission.','creator':'Design\x20lever:\x20guard-driven\x20external\x20outflow\x20—\x20NOTE\x20this\x20is\x20a\x20PAYMENT\x20AUTHORIZATION:\x20whoever\x20satisfies\x20the\x20guard\x20can\x20'+'withdraw\x20up\x20to\x20the\x20balance.\x20Treat\x20the\x20guard\x20design\x20as\x20the\x20spending\x20boundary.','user':'You\x20receive\x20the\x20amount\x20you\x20submit\x20(bounded\x20by\x20the\x20treasury\x20balance).'},{'id':'treasury.store_from_id','object':'Treasury','slot':'AmountFrom{Deposit,Withdraw}Guard.store_from_id:\x20Option<u8>','preset_kind':'source','submission_type':'address','asserted_at':'treasury.move\x20L143-145\x20(is_identifier_address_compatible)','consumed_at':'treasury.move\x20L367-369\x20/\x20L412-414\x20(de_address_compatible\x20→\x20Record.store_from_id)','neutral':'Each\x20external\x20deposit/withdraw\x20record\x20is\x20tagged\x20with\x20a\x20submitted\x20origin\x20address.','creator':'Audit\x20lever:\x20reconcile\x20external\x20flows\x20against\x20their\x20origin\x20(invoice,\x20order,\x20campaign).','user':'Your\x20flow\x20is\x20permanently\x20tagged\x20with\x20the\x20source\x20you\x20submitted.'},{'id':'repository.id_from_submission','object':'Repository','slot':'PolicyGuard.id_from_submission:\x20Option<u8>','preset_kind':'row_key','submission_type':'address','asserted_at':'repository.move\x20L90-92\x20(is_identifier_address_compatible)','consumed_at':'repository.move\x20L346/L393\x20(submission_get\x20→\x20table\x20row\x20identity)','neutral':'Which\x20table\x20row\x20a\x20guarded\x20write\x20targets\x20is\x20resolved\x20from\x20the\x20writer\x27s\x20submission.','creator':'Design\x20lever:\x20dynamic\x20rows\x20—\x20or\x20pin\x20the\x20row\x20statically\x20via\x20PolicyRule.id_from\x20(which\x20then\x20takes\x20priority\x20over\x20this\x20slot).','user':'Your\x20write\x20lands\x20on\x20the\x20row\x20your\x20submitted\x20address\x20identifies.'},{'id':'repository.data_from_submission','object':'Repository','slot':'PolicyGuard.data_from_submission:\x20Option<u8>','preset_kind':'row_data','submission_type':'any','asserted_at':'repository.move\x20L93-96\x20(has_identifier\x20—\x20ANY\x20value\x20type\x20is\x20supported)','consumed_at':'repository.move\x20L350/L361/L215\x20(submission_get\x20→\x20the\x20value\x20written)','neutral':'The\x20value\x20written\x20into\x20the\x20row\x20IS\x20the\x20writer\x27s\x20submission\x20(any\x20type).','creator':'Design\x20lever:\x20the\x20guard\x20itself\x20becomes\x20the\x20data\x20format\x20—\x20reviews,\x20scores,\x20attestations\x20written\x20by\x20qualified\x20parties.\x20'+'The\x20write\x20policy\x27s\x20value_type\x20constrains\x20what\x20is\x20storable.','user':'What\x20you\x20submit\x20is\x20what\x20gets\x20stored\x20—\x20the\x20guard\x20decides\x20whether\x20your\x20data\x20qualifies,\x20not\x20the\x20object.'},{'id':'arbitration.vote_weight.guard_identifier','object':'Arbitration','slot':'VotingGuard.vote_weight\x20=\x20VoteValue::GuardIdentifier(identifier)','preset_kind':'vote_weight','submission_type':'number','asserted_at':'arbitration.move\x20L125-126\x20(submission\x20value\x20type\x20must\x20be\x20a\x20number)','consumed_at':'arbitration.move\x20L288-289\x20(de_number\x20→\x20ballot\x20weight)','neutral':'Each\x20voter\x27s\x20ballot\x20weight\x20is\x20resolved\x20from\x20their\x20own\x20submission.','creator':'Design\x20lever:\x20stake/role-weighted\x20voting\x20—\x20the\x20guard\x20derives\x20the\x20weight\x20(e.g.\x20token-balance\x20tier,\x20credential\x20level).\x20'+'Alternative\x20preset:\x20FixedValue(u32)\x20for\x20flat-weight\x20open\x20voting\x20(an\x20EMPTY\x20voting_guard\x20is\x20NOT\x20open\x20voting\x20—\x20plain\x20votes\x20then\x20hard-require\x20the\x20vote\x20permission\x20358,\x20admin-only\x20by\x20default,\x20and\x20disputes\x20dead-lock;\x20R-ARB-VOTE-LOCK,\x20crs9-F-36).','user':'The\x20number\x20you\x20submit\x20IS\x20your\x20vote\x27s\x20weight\x20—\x20the\x20guard\x20defines\x20what\x20qualifies\x20you\x20to\x20claim\x20that\x20weight.'},{'id':'arbitration.usage_guard','object':'Arbitration','slot':'usage_guard:\x20Option<address>','preset_kind':'evidence','submission_type':'any','consumed_at':'arbitration.move\x20L324/L330-331\x20(checked\x20when\x20dispute\x20filing\x20reaches\x20the\x20package-internal\x20channels\x20dispute_for_service\x20L323-326\x20/\x20dispute_for_service_with_passport\x20L328-335,\x20which\x20are\x20only\x20reachable\x20via\x20service::dispute_v2\x20/\x20dispute_v2_with_passport):\x20the\x20no-passport\x20channel\x20requires\x20the\x20usage_guard\x20to\x20be\x20None;\x20the\x20passport\x20channel\x20verifies\x20it\x20in\x20the\x20same\x20transaction','neutral':'Who\x20may\x20OPEN\x20a\x20dispute\x20at\x20this\x20arbitration\x20—\x20disputants\x20must\x20satisfy\x20this\x20guard.','creator':'Design\x20lever:\x20qualification\x20gate\x20for\x20disputants\x20(reputation/kyc/holding\x20guards)\x20—\x20keeps\x20frivolous\x20disputes\x20out.\x20'+'Set\x20to\x20None\x20for\x20open\x20access.','user':'To\x20open\x20a\x20dispute\x20at\x20this\x20arbitration\x20you\x20must\x20pass\x20its\x20usage_guard;\x20without\x20a\x20passport\x20the\x20arbitration\x20refuses\x20disputes\x20outright.'},{'id':'machine.forward.retained_submission','object':'MachineForward','slot':'ForwardGuard.retained_submission:\x20vector<u8>','preset_kind':'evidence','submission_type':'any','asserted_at':'machine.move\x20L80-81\x20(has_submissions\x20—\x20every\x20id\x20must\x20be\x20a\x20submission\x20slot\x20of\x20the\x20guard)','consumed_at':'progress.move\x20L471-474\x20(submissions_get\x20→\x20values\x20stored\x20into\x20the\x20session\x20history)','neutral':'Progressing\x20along\x20this\x20forward\x20REQUIRES\x20submitting\x20these\x20guard\x20slots;\x20the\x20submitted\x20values\x20are\x20persisted\x20into\x20the\x20workflow\x20session\x20history.','creator':'Design\x20lever:\x20evidence-carrying\x20workflow\x20steps\x20—\x20the\x20step\x20cannot\x20advance\x20without\x20the\x20proof,\x20and\x20the\x20proof\x20is\x20'+'permanently\x20recorded\x20in\x20the\x20session\x20(auditable\x20trail,\x20usable\x20later\x20by\x20downstream\x20guards/arb).','user':'You\x20cannot\x20advance\x20this\x20step\x20without\x20submitting\x20the\x20required\x20evidence\x20—\x20and\x20what\x20you\x20submit\x20becomes\x20part\x20of\x20the\x20on-chain\x20record.'}];export const GUARD_BINDINGS_VERSION='1.0.0';export function getGuardBindingsByObject(a){return GUARD_BINDING_REGISTRY['filter'](c=>c['object']===a);}export function getGuardBinding(a){return GUARD_BINDING_REGISTRY['find'](c=>c['id']===a);}export function summarizeGuardBinding(a){return'['+a['object']+']\x20'+a['slot']+'\x20—\x20creator:\x20'+a['creator']['split']('\x20—\x20')[0x0]+'\x20|\x20user:\x20'+a['user'];}
|
|
1
|
+
export const OWNER_RECEIVE_COGNITION='owner_receive\x20extracts\x20objects\x20RECEIVED\x20via\x20transfer\x20(Receiving<CoinWrapper<K>>\x20with\x20ANY\x20token\x20K,\x20'+'or\x20any\x20K:key+store\x20object\x20such\x20as\x20an\x20NFT)\x20and\x20sends\x20them\x20to\x20the\x20Permission\x20owner\x20—\x20it\x20never\x20touches\x20the\x20'+'object\x27s\x20balance\x20field.\x20The\x20balance\x20field\x27s\x20only\x20exits\x20are:\x20Reward\x20→\x20guard-gated\x20claim;\x20Treasury\x20→\x20'+'permission-gated\x20withdraw\x20/\x20guard-gated\x20external_withdraw.\x20receive(154)\x20is\x20what\x20joins\x20a\x20received\x20payment\x20'+'INTO\x20the\x20balance.';export const GUARD_BINDING_REGISTRY=[{'id':'reward.recipient.guard_identifier','object':'Reward','slot':'RewardGuard.recipient\x20=\x20Recipient::GuardIdentifier(identifier)','preset_kind':'recipient','submission_type':'address','asserted_at':'reward.move\x20L102-104\x20(is_identifier_address)','consumed_at':'reward.move\x20L154-156\x20(de_address\x20→\x20claim\x20payee)','neutral':'The\x20claim\x20payee\x20is\x20resolved\x20from\x20the\x20claimer\x27s\x20submission\x20for\x20this\x20identifier.','creator':'Design\x20lever:\x20dynamic\x20payee\x20—\x20the\x20guard\x20decides\x20who\x20gets\x20paid\x20(e.g.\x20reimbursement\x20to\x20the\x20address\x20the\x20'+'guard\x20derives,\x20proxy\x20claims).\x20Alternative\x20presets:\x20Entity\x20(fixed\x20payee)\x20or\x20Signer\x20(payer\x20=\x20the\x20tx\x20sender\x20who\x20passed\x20the\x20guard).','user':'Who\x20receives\x20the\x20reward\x20is\x20determined\x20by\x20the\x20submitted\x20address\x20for\x20this\x20slot\x20—\x20not\x20necessarily\x20you,\x20even\x20if\x20you\x20triggered\x20the\x20claim.','risk_hooks':['R-R-2-01']},{'id':'reward.amount.guard_u64_identifier','object':'Reward','slot':'RewardGuard.amount\x20=\x20Amount::GuardU64Identifier(identifier)','preset_kind':'amount','submission_type':'u64','asserted_at':'reward.move\x20L107-113\x20(submission\x20value\x20type\x20must\x20be\x20u64)','consumed_at':'reward.move\x20L165-168\x20(de_u64\x20→\x20claim\x20amount;\x20L174\x20asserts\x20amount\x20≤\x20balance)','neutral':'The\x20claim\x20amount\x20is\x20resolved\x20from\x20the\x20claimer\x27s\x20submission\x20for\x20this\x20identifier.','creator':'Design\x20lever:\x20credential-based\x20dynamic\x20amounts\x20(marketing:\x20submit\x20receipt\x20→\x20get\x20proportional\x20cashback;\x20'+'fund\x20recovery:\x20owner\x20escape\x20hatch\x20submits\x20the\x20FULL\x20remaining\x20balance\x20to\x20recover\x20100%).\x20'+'Alternative\x20preset:\x20Fixed(u64).','user':'You\x20claim\x20exactly\x20what\x20you\x20submit\x20(bounded\x20by\x20the\x20reward\x20balance)\x20—\x20check\x20whether\x20the\x20guard\x20validates\x20your\x20submitted\x20amount\x20against\x20other\x20evidence.','risk_hooks':['R-R-7-01']},{'id':'reward.expiration_time','object':'Reward','slot':'RewardGuard.expiration_time:\x20Option<u64>','preset_kind':'deadline','submission_type':'any','consumed_at':'reward.move\x20L147-150\x20(claim\x20asserts\x20clock\x20≤\x20expiration_time),\x20guard_add\x20L247-249','neutral':'Time\x20window\x20of\x20the\x20guard:\x20after\x20it\x20elapses\x20the\x20guard\x20no\x20longer\x20opens\x20(claim\x20aborts\x20E_GUARD_EXPIRED).','creator':'Dual\x20meaning\x20by\x20design:\x20for\x20MARKETING\x20guards\x20it\x20is\x20the\x20campaign\x20deadline;\x20for\x20an\x20OWNER\x20ESCAPE\x20guard\x20'+'(recipient=Signer,\x20amount=GuardU64Identifier)\x20it\x20is\x20the\x20FUND\x20LOCK\x20PERIOD\x20—\x20set\x20it\x20in\x20the\x20future\x20(e.g.\x2030\x20days)\x20'+'and\x20after\x20expiry\x20you\x20reclaim\x20the\x20residual\x20balance\x20by\x20submitting\x20the\x20full\x20amount\x20(R-R-7-01).','user':'This\x20is\x20your\x20claim\x20deadline\x20—\x20after\x20expiration_time\x20the\x20guard\x20cannot\x20be\x20claimed\x20and\x20is\x20swept\x20away\x20by\x20the\x20owner\x27s\x20expired-guard\x20cleanup.','risk_hooks':['R-R-4-01']},{'id':'reward.store_from_id','object':'Reward','slot':'RewardGuard.store_from_id:\x20Option<u8>','preset_kind':'source','submission_type':'address','asserted_at':'reward.move\x20L36-38\x20/\x20reward.ts\x20schema\x20(address-compatible\x20identifier)','consumed_at':'reward.move\x20L175-178\x20(de_address_compatible\x20→\x20Record.store_from_id;\x20an\x20absent\x20slot\x20persists\x20none,\x20which\x20matches\x20no\x20store_from_id\x20predicate)','neutral':'Each\x20claim\x20record\x20is\x20tagged\x20with\x20an\x20origin\x20object\x20address\x20submitted\x20at\x20claim\x20time.','creator':'Audit\x20lever:\x20tie\x20every\x20payout\x20to\x20its\x20campaign/repo/order\x20source\x20—\x20the\x20Record\x20table\x20then\x20answers\x20\x27what\x20did\x20this\x20campaign\x20actually\x20pay\x20out\x27.','user':'Your\x20claim\x20is\x20permanently\x20tagged\x20with\x20the\x20source\x20you\x20submitted\x20—\x20use\x20it\x20to\x20prove\x20your\x20payout\x20came\x20from\x20a\x20specific\x20campaign.'},{'id':'allocation.who.guard_identifier','object':'Allocation','slot':'Sharing.who\x20=\x20Recipient::GuardIdentifier(identifier)','preset_kind':'recipient','submission_type':'address','asserted_at':'allocation.move\x20L150-151\x20(is_identifier_address)','consumed_at':'allocation.move\x20L232-233\x20(de_address\x20→\x20payout\x20recipient)','neutral':'The\x20revenue-split\x20payee\x20is\x20resolved\x20from\x20the\x20alloc\x20caller\x27s\x20submission.','creator':'Design\x20lever:\x20dynamic\x20split\x20counterparties\x20—\x20e.g.\x20the\x20guard\x20derives\x20\x27the\x20order\x27s\x20actual\x20supplier\x27\x20from\x20evidence.\x20'+'Alternatives:\x20Entity\x20(fixed\x20payee)\x20or\x20Signer\x20(payer\x20=\x20whoever\x20executes\x20the\x20guard-gated\x20alloc).','user':'The\x20split\x20payee\x20comes\x20from\x20the\x20submission\x20resolved\x20at\x20alloc\x20time\x20—\x20verify\x20the\x20guard\x20logic\x20to\x20know\x20who\x20it\x20resolves\x20to.'},{'id':'allocation.mode_and_sharing','object':'Allocation','slot':'Sharing\x20{\x20mode:\x20Amount|Rate|Surplus|RateGross,\x20sharing:\x20u64\x20}','preset_kind':'amount','submission_type':'u64','asserted_at':'allocation.move\x20L224-256\x20(rate\x20invariants:\x20NET\x20Rate\x20and\x20RateGross\x20share\x20one\x20total_rate\x20counter;\x20without\x20Surplus\x20the\x20rates\x20must\x20sum\x20to\x20exactly\x2010000;\x20a\x20pure-RateGross\x20plan\x20also\x20caps\x20fix\x20+\x20rates\x20x\x20max)','consumed_at':'allocation.move\x20L280-405\x20(alloc:\x20Amount\x20splits\x20a\x20fixed\x20value\x20/\x20Rate\x20computes\x20basis\x20points\x20of\x20pool-fix\x20/\x20RateGross\x20computes\x20basis\x20points\x20of\x20the\x20full\x20pool\x20or\x20the\x20max\x20cap\x20/\x20Surplus\x20takes\x20the\x20remainder)','neutral':'How\x20much\x20each\x20sharing\x20entry\x20receives\x20from\x20an\x20allocated\x20payment.','creator':'Design\x20lever:\x20fixed\x20amounts\x20(Amount),\x20proportional\x20splits\x20on\x20the\x20net\x20pool\x20(Rate,\x20basis\x20points\x20over\x20pool-fix,\x20must\x20complete\x2010000\x20unless\x20a\x20Surplus\x20remainder\x20exists),\x20'+'proportional\x20splits\x20on\x20the\x20gross\x20pool\x20(RateGross,\x20basis\x20points\x20over\x20the\x20full\x20pool\x20or\x20max\x20cap\x20—\x20expresses\x20\x27fixed\x20fee\x20+\x20commission\x20on\x20the\x20order\x20total\x27),\x20'+'or\x20residual\x20beneficiary\x20(Surplus\x20—\x20exactly\x20one,\x20takes\x20what\x20is\x20left).','user':'Your\x20Rate/RateGross\x20sharing\x20is\x20in\x20basis\x20points\x20(3000\x20=\x2030%);\x20a\x20Surplus\x20entry\x20receives\x20whatever\x20the\x20other\x20entries\x20did\x20not\x20consume.'},{'id':'demand.service_identifier','object':'Demand','slot':'ServiceGuard.service_identifier:\x20Option<u8>','preset_kind':'service','submission_type':'address','consumed_at':'demand.move\x20L132-133\x20(de_address\x20→\x20the\x20service\x20being\x20presented)','neutral':'Which\x20service\x20a\x20presenter\x20is\x20presenting\x20for\x20is\x20resolved\x20from\x20their\x20passport\x20submission.','creator':'Design\x20lever:\x20qualification-gated\x20presentation\x20—\x20only\x20guards\x20that\x20resolve\x20to\x20approved\x20services\x20let\x20suppliers\x20present\x20'+'(e.g.\x20whitelist,\x20passport,\x20or\x20proof-of-capability\x20guards).','user':'You\x20may\x20only\x20present\x20the\x20service\x20your\x20submission\x20resolves\x20to\x20—\x20the\x20guard\x20defines\x20which\x20services\x20you\x20are\x20eligible\x20to\x20present.'},{'id':'treasury.deposit.identifier','object':'Treasury','slot':'AmountFromDepositGuard.identifier:\x20Option<u8>','preset_kind':'amount','submission_type':'number','asserted_at':'treasury.move\x20L138-141\x20(submission\x20value\x20type\x20must\x20be\x20a\x20number)','consumed_at':'treasury.move\x20L371-385\x20(de_number\x20→\x20deposit\x20amount;\x20excess\x20is\x20refunded\x20to\x20the\x20depositor)','neutral':'The\x20amount\x20actually\x20deposited\x20is\x20resolved\x20from\x20the\x20depositor\x27s\x20submission.','creator':'Design\x20lever:\x20guard-driven\x20external\x20inflow\x20—\x20outside\x20parties\x20deposit\x20against\x20a\x20guard\x20(e.g.\x20invoice-backed\x20payment:\x20'+'the\x20guard\x20validates\x20the\x20invoice,\x20the\x20submission\x20states\x20the\x20amount).','user':'You\x20deposit\x20the\x20amount\x20you\x20submit;\x20anything\x20beyond\x20it\x20is\x20transferred\x20back\x20to\x20you\x20in\x20the\x20same\x20call.'},{'id':'treasury.withdraw.identifier','object':'Treasury','slot':'AmountFromWithdrawGuard.identifier:\x20u8','preset_kind':'amount','submission_type':'number','consumed_at':'treasury.move\x20L409-410\x20(de_number\x20→\x20withdraw\x20amount,\x20asserted\x20≤\x20balance)','neutral':'The\x20amount\x20withdrawn\x20by\x20an\x20outside\x20party\x20is\x20resolved\x20from\x20their\x20submission.','creator':'Design\x20lever:\x20guard-driven\x20external\x20outflow\x20—\x20NOTE\x20this\x20is\x20a\x20PAYMENT\x20AUTHORIZATION:\x20whoever\x20satisfies\x20the\x20guard\x20can\x20'+'withdraw\x20up\x20to\x20the\x20balance.\x20Treat\x20the\x20guard\x20design\x20as\x20the\x20spending\x20boundary.','user':'You\x20receive\x20the\x20amount\x20you\x20submit\x20(bounded\x20by\x20the\x20treasury\x20balance).'},{'id':'treasury.store_from_id','object':'Treasury','slot':'AmountFrom{Deposit,Withdraw}Guard.store_from_id:\x20Option<u8>','preset_kind':'source','submission_type':'address','asserted_at':'treasury.move\x20L143-145\x20(is_identifier_address_compatible)','consumed_at':'treasury.move\x20L367-369\x20/\x20L412-414\x20(de_address_compatible\x20→\x20Record.store_from_id)','neutral':'Each\x20external\x20deposit/withdraw\x20record\x20is\x20tagged\x20with\x20a\x20submitted\x20origin\x20address.','creator':'Audit\x20lever:\x20reconcile\x20external\x20flows\x20against\x20their\x20origin\x20(invoice,\x20order,\x20campaign).','user':'Your\x20flow\x20is\x20permanently\x20tagged\x20with\x20the\x20source\x20you\x20submitted.'},{'id':'repository.id_from_submission','object':'Repository','slot':'PolicyGuard.id_from_submission:\x20Option<u8>','preset_kind':'row_key','submission_type':'address','asserted_at':'repository.move\x20L90-92\x20(is_identifier_address_compatible)','consumed_at':'repository.move\x20L346/L393\x20(submission_get\x20→\x20table\x20row\x20identity)','neutral':'Which\x20table\x20row\x20a\x20guarded\x20write\x20targets\x20is\x20resolved\x20from\x20the\x20writer\x27s\x20submission.','creator':'Design\x20lever:\x20dynamic\x20rows\x20—\x20or\x20pin\x20the\x20row\x20statically\x20via\x20PolicyRule.id_from\x20(which\x20then\x20takes\x20priority\x20over\x20this\x20slot).','user':'Your\x20write\x20lands\x20on\x20the\x20row\x20your\x20submitted\x20address\x20identifies.'},{'id':'repository.data_from_submission','object':'Repository','slot':'PolicyGuard.data_from_submission:\x20Option<u8>','preset_kind':'row_data','submission_type':'any','asserted_at':'repository.move\x20L93-96\x20(has_identifier\x20—\x20ANY\x20value\x20type\x20is\x20supported)','consumed_at':'repository.move\x20L350/L361/L215\x20(submission_get\x20→\x20the\x20value\x20written)','neutral':'The\x20value\x20written\x20into\x20the\x20row\x20IS\x20the\x20writer\x27s\x20submission\x20(any\x20type).','creator':'Design\x20lever:\x20the\x20guard\x20itself\x20becomes\x20the\x20data\x20format\x20—\x20reviews,\x20scores,\x20attestations\x20written\x20by\x20qualified\x20parties.\x20'+'The\x20write\x20policy\x27s\x20value_type\x20constrains\x20what\x20is\x20storable.','user':'What\x20you\x20submit\x20is\x20what\x20gets\x20stored\x20—\x20the\x20guard\x20decides\x20whether\x20your\x20data\x20qualifies,\x20not\x20the\x20object.'},{'id':'arbitration.vote_weight.guard_identifier','object':'Arbitration','slot':'VotingGuard.vote_weight\x20=\x20VoteValue::GuardIdentifier(identifier)','preset_kind':'vote_weight','submission_type':'number','asserted_at':'arbitration.move\x20L125-126\x20(submission\x20value\x20type\x20must\x20be\x20a\x20number)','consumed_at':'arbitration.move\x20L288-289\x20(de_number\x20→\x20ballot\x20weight)','neutral':'Each\x20voter\x27s\x20ballot\x20weight\x20is\x20resolved\x20from\x20their\x20own\x20submission.','creator':'Design\x20lever:\x20stake/role-weighted\x20voting\x20—\x20the\x20guard\x20derives\x20the\x20weight\x20(e.g.\x20token-balance\x20tier,\x20credential\x20level).\x20'+'Alternative\x20preset:\x20FixedValue(u32)\x20for\x20flat-weight\x20open\x20voting\x20(an\x20EMPTY\x20voting_guard\x20is\x20NOT\x20open\x20voting\x20—\x20plain\x20votes\x20then\x20hard-require\x20the\x20vote\x20permission\x20358,\x20admin-only\x20by\x20default,\x20and\x20disputes\x20dead-lock;\x20R-ARB-VOTE-LOCK,\x20crs9-F-36).','user':'The\x20number\x20you\x20submit\x20IS\x20your\x20vote\x27s\x20weight\x20—\x20the\x20guard\x20defines\x20what\x20qualifies\x20you\x20to\x20claim\x20that\x20weight.'},{'id':'arbitration.usage_guard','object':'Arbitration','slot':'usage_guard:\x20Option<address>','preset_kind':'evidence','submission_type':'any','consumed_at':'arbitration.move\x20L324/L330-331\x20(checked\x20when\x20dispute\x20filing\x20reaches\x20the\x20package-internal\x20channels\x20dispute_for_service\x20L323-326\x20/\x20dispute_for_service_with_passport\x20L328-335,\x20which\x20are\x20only\x20reachable\x20via\x20service::dispute_v2\x20/\x20dispute_v2_with_passport):\x20the\x20no-passport\x20channel\x20requires\x20the\x20usage_guard\x20to\x20be\x20None;\x20the\x20passport\x20channel\x20verifies\x20it\x20in\x20the\x20same\x20transaction','neutral':'Who\x20may\x20OPEN\x20a\x20dispute\x20at\x20this\x20arbitration\x20—\x20disputants\x20must\x20satisfy\x20this\x20guard.','creator':'Design\x20lever:\x20qualification\x20gate\x20for\x20disputants\x20(reputation/kyc/holding\x20guards)\x20—\x20keeps\x20frivolous\x20disputes\x20out.\x20'+'Set\x20to\x20None\x20for\x20open\x20access.','user':'To\x20open\x20a\x20dispute\x20at\x20this\x20arbitration\x20you\x20must\x20pass\x20its\x20usage_guard;\x20without\x20a\x20passport\x20the\x20arbitration\x20refuses\x20disputes\x20outright.'},{'id':'machine.forward.retained_submission','object':'MachineForward','slot':'ForwardGuard.retained_submission:\x20vector<u8>','preset_kind':'evidence','submission_type':'any','asserted_at':'machine.move\x20L80-81\x20(has_submissions\x20—\x20every\x20id\x20must\x20be\x20a\x20submission\x20slot\x20of\x20the\x20guard)','consumed_at':'progress.move\x20L471-474\x20(submissions_get\x20→\x20values\x20stored\x20into\x20the\x20session\x20history)','neutral':'Progressing\x20along\x20this\x20forward\x20REQUIRES\x20submitting\x20these\x20guard\x20slots;\x20the\x20submitted\x20values\x20are\x20persisted\x20into\x20the\x20workflow\x20session\x20history.','creator':'Design\x20lever:\x20evidence-carrying\x20workflow\x20steps\x20—\x20the\x20step\x20cannot\x20advance\x20without\x20the\x20proof,\x20and\x20the\x20proof\x20is\x20'+'permanently\x20recorded\x20in\x20the\x20session\x20(auditable\x20trail,\x20usable\x20later\x20by\x20downstream\x20guards/arb).','user':'You\x20cannot\x20advance\x20this\x20step\x20without\x20submitting\x20the\x20required\x20evidence\x20—\x20and\x20what\x20you\x20submit\x20becomes\x20part\x20of\x20the\x20on-chain\x20record.'}];export const GUARD_BINDINGS_VERSION='1.0.0';export function getGuardBindingsByObject(a){return GUARD_BINDING_REGISTRY['filter'](c=>c['object']===a);}export function getGuardBinding(a){return GUARD_BINDING_REGISTRY['find'](c=>c['id']===a);}export function summarizeGuardBinding(a){return'['+a['object']+']\x20'+a['slot']+'\x20—\x20creator:\x20'+a['creator']['split']('\x20—\x20')[0x0]+'\x20|\x20user:\x20'+a['user'];}
|