@wowok/agent-mcp 3.1.0 → 3.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/runtime.js +1 -1
- package/dist/customer/index.d.ts +3 -9
- package/dist/customer/index.js +1 -1
- package/dist/customer/industry-risks.d.ts +3 -17
- package/dist/customer/industry-risks.js +1 -1
- package/dist/customer/types.d.ts +1 -165
- package/dist/customer/types.js +1 -1
- package/dist/customer/user-preferences.d.ts +0 -49
- package/dist/customer/user-preferences.js +1 -1
- package/dist/evaluation/arbitration-game.js +1 -1
- package/dist/evaluation/architecture.spec.d.ts +1 -0
- package/dist/evaluation/architecture.spec.js +1 -0
- package/dist/evaluation/builtins/graph-service.d.ts +16 -0
- package/dist/evaluation/builtins/graph-service.js +1 -0
- package/dist/evaluation/builtins/graph-service.spec.d.ts +1 -0
- package/dist/evaluation/builtins/graph-service.spec.js +1 -0
- package/dist/evaluation/builtins/index.d.ts +1 -1
- package/dist/evaluation/builtins/index.js +1 -1
- package/dist/evaluation/builtins/purity.spec.d.ts +1 -0
- package/dist/evaluation/builtins/purity.spec.js +1 -0
- package/dist/evaluation/engine.js +1 -1
- package/dist/evaluation/facets/catalog.d.ts +19 -0
- package/dist/evaluation/facets/catalog.js +1 -0
- package/dist/evaluation/guard-scan.d.ts +10 -0
- package/dist/evaluation/guard-scan.js +1 -0
- package/dist/evaluation/location-match.js +1 -1
- package/dist/evaluation/standards.d.ts +31 -0
- package/dist/evaluation/standards.js +1 -0
- package/dist/evaluation/standards.spec.d.ts +1 -0
- package/dist/evaluation/standards.spec.js +1 -0
- package/dist/evaluation/types.d.ts +9 -0
- package/dist/experience/realtime-feedback.js +1 -1
- package/dist/extensions/index.d.ts +1 -1
- package/dist/extensions/index.js +1 -1
- package/dist/extensions/industry-layers.d.ts +6 -5
- package/dist/extensions/industry-layers.js +1 -1
- package/dist/extensions/industry-pack.js +1 -1
- package/dist/goal/GoalClassifier.js +1 -1
- package/dist/graph/onchain/analyze.d.ts +16 -3
- package/dist/graph/onchain/analyze.js +1 -1
- package/dist/graph/onchain/analyze.spec.js +1 -1
- package/dist/graph/onchain/dataplane.d.ts +1 -1
- package/dist/graph/onchain/dataplane.js +1 -1
- package/dist/graph/onchain/edge-batch.spec.d.ts +1 -0
- package/dist/graph/onchain/edge-batch.spec.js +1 -0
- package/dist/graph/onchain/edge-schema.d.ts +11 -3
- package/dist/graph/onchain/edge-schema.js +1 -1
- package/dist/graph/onchain/entity-profile.spec.d.ts +1 -0
- package/dist/graph/onchain/entity-profile.spec.js +1 -0
- package/dist/graph/onchain/event-history.spec.d.ts +1 -0
- package/dist/graph/onchain/event-history.spec.js +1 -0
- package/dist/graph/onchain/expand.js +1 -1
- package/dist/graph/onchain/extract-deep.spec.d.ts +1 -0
- package/dist/graph/onchain/extract-deep.spec.js +1 -0
- package/dist/graph/onchain/extract.d.ts +11 -3
- package/dist/graph/onchain/extract.js +1 -1
- package/dist/graph/onchain/facet-projection.d.ts +99 -0
- package/dist/graph/onchain/facet-projection.js +1 -0
- package/dist/graph/onchain/facet-projection.spec.d.ts +1 -0
- package/dist/graph/onchain/facet-projection.spec.js +1 -0
- package/dist/graph/onchain/facts.d.ts +103 -0
- package/dist/graph/onchain/facts.js +1 -0
- package/dist/graph/onchain/facts.spec.d.ts +1 -0
- package/dist/graph/onchain/facts.spec.js +1 -0
- package/dist/graph/onchain/field-manifest.d.ts +29 -0
- package/dist/graph/onchain/field-manifest.js +1 -0
- package/dist/graph/onchain/field-manifest.spec.d.ts +1 -0
- package/dist/graph/onchain/field-manifest.spec.js +1 -0
- package/dist/graph/onchain/fixtures.d.ts +80 -0
- package/dist/graph/onchain/fixtures.js +1 -0
- package/dist/graph/onchain/fixtures.spec.d.ts +1 -0
- package/dist/graph/onchain/fixtures.spec.js +1 -0
- package/dist/graph/onchain/index.d.ts +8 -2
- package/dist/graph/onchain/index.js +1 -1
- package/dist/graph/onchain/interest.js +1 -1
- package/dist/graph/onchain/label-lint.spec.d.ts +1 -0
- package/dist/graph/onchain/label-lint.spec.js +1 -0
- package/dist/graph/onchain/names.d.ts +23 -0
- package/dist/graph/onchain/names.js +1 -0
- package/dist/graph/onchain/names.spec.d.ts +1 -0
- package/dist/graph/onchain/names.spec.js +1 -0
- package/dist/graph/onchain/onchain.spec.js +1 -1
- package/dist/graph/onchain/proposal-graph.d.ts +11 -0
- package/dist/graph/onchain/proposal-graph.js +1 -0
- package/dist/graph/onchain/proposal-graph.spec.d.ts +1 -0
- package/dist/graph/onchain/proposal-graph.spec.js +1 -0
- package/dist/graph/onchain/sdk-batch.d.ts +5 -1
- package/dist/graph/onchain/sdk-batch.js +1 -1
- package/dist/graph/onchain/sdk-dataplane.js +1 -1
- package/dist/graph/onchain/strategy.d.ts +16 -0
- package/dist/graph/onchain/strategy.js +1 -1
- package/dist/graph/onchain/strategy.spec.js +1 -1
- package/dist/graph/onchain/table-ledger.spec.d.ts +1 -0
- package/dist/graph/onchain/table-ledger.spec.js +1 -0
- package/dist/graph/onchain/types.d.ts +51 -11
- package/dist/graph/onchain/viewport.d.ts +1 -0
- package/dist/graph/onchain/viewport.js +1 -1
- package/dist/harness/index.d.ts +1 -5
- package/dist/harness/index.js +1 -1
- package/dist/harness/verify.d.ts +6 -1
- package/dist/harness/verify.js +1 -1
- package/dist/index.js +1 -1
- package/dist/knowledge/allocation-ledger.d.ts +2 -0
- package/dist/knowledge/allocation-ledger.js +1 -1
- package/dist/knowledge/allocation-puzzle.js +1 -1
- package/dist/knowledge/allocation-risk.d.ts +2 -3
- package/dist/knowledge/allocation-risk.js +1 -1
- package/dist/knowledge/arb-risk.d.ts +0 -1
- package/dist/knowledge/arb-risk.js +1 -1
- package/dist/knowledge/arbitration-risk.d.ts +0 -2
- package/dist/knowledge/arbitration-risk.js +1 -1
- package/dist/knowledge/baselines/evaluation-baselines.json +79 -0
- package/dist/knowledge/baselines/guard-lint-baseline.spec.d.ts +1 -0
- package/dist/knowledge/baselines/guard-lint-baseline.spec.js +1 -0
- package/dist/knowledge/baselines/risk-baselines.spec.d.ts +1 -0
- package/dist/knowledge/baselines/risk-baselines.spec.js +1 -0
- package/dist/knowledge/baselines/risk-cases.d.ts +8 -0
- package/dist/knowledge/baselines/risk-cases.js +1 -0
- package/dist/knowledge/bridge-risk.d.ts +0 -1
- package/dist/knowledge/bridge-risk.js +1 -1
- package/dist/knowledge/contact-risk.d.ts +0 -1
- package/dist/knowledge/contact-risk.js +1 -1
- package/dist/knowledge/contract-invariants.d.ts +1 -0
- package/dist/knowledge/contract-invariants.js +1 -1
- package/dist/knowledge/demand-risk.d.ts +0 -1
- package/dist/knowledge/demand-risk.js +1 -1
- package/dist/knowledge/getting-started.js +1 -1
- package/dist/knowledge/guard-design-patterns.js +1 -1
- package/dist/knowledge/guard-eval.d.ts +15 -0
- package/dist/knowledge/guard-eval.js +1 -0
- package/dist/knowledge/guard-eval.spec.d.ts +1 -0
- package/dist/knowledge/guard-eval.spec.js +1 -0
- package/dist/knowledge/guard-field-cognition.d.ts +48 -0
- package/dist/knowledge/guard-field-cognition.js +1 -0
- package/dist/knowledge/guard-lint.d.ts +1 -1
- package/dist/knowledge/guard-lint.js +1 -1
- package/dist/knowledge/guard-risk.d.ts +4 -19
- package/dist/knowledge/guard-risk.js +1 -1
- package/dist/knowledge/index.d.ts +42 -43
- package/dist/knowledge/index.js +1 -1
- package/dist/knowledge/industry-registry.js +1 -1
- package/dist/knowledge/industry-rule-node.d.ts +7 -0
- package/dist/knowledge/industry-rule-node.js +1 -0
- package/dist/knowledge/industry-strategy.js +1 -1
- package/dist/knowledge/jsonrpc-enum.js +1 -1
- package/dist/knowledge/machine-risk.d.ts +0 -6
- package/dist/knowledge/machine-risk.js +1 -1
- package/dist/knowledge/order-risk.d.ts +1 -9
- package/dist/knowledge/order-risk.js +1 -1
- package/dist/knowledge/payment-risk.d.ts +0 -1
- package/dist/knowledge/payment-risk.js +1 -1
- package/dist/knowledge/permission-risk.d.ts +0 -3
- package/dist/knowledge/permission-risk.js +1 -1
- package/dist/knowledge/personal-risk.d.ts +0 -1
- package/dist/knowledge/personal-risk.js +1 -1
- package/dist/knowledge/progress-risk.d.ts +0 -2
- package/dist/knowledge/progress-risk.js +1 -1
- package/dist/knowledge/proof-risk.d.ts +0 -1
- package/dist/knowledge/proof-risk.js +1 -1
- package/dist/knowledge/puzzle-projections.d.ts +11 -0
- package/dist/knowledge/puzzle-projections.js +1 -0
- package/dist/knowledge/recipient-constraint.d.ts +6 -1
- package/dist/knowledge/recipient-constraint.js +1 -1
- package/dist/knowledge/registrar-risk.d.ts +0 -1
- package/dist/knowledge/registrar-risk.js +1 -1
- package/dist/knowledge/repository-risk.d.ts +0 -1
- package/dist/knowledge/repository-risk.js +1 -1
- package/dist/knowledge/resource-risk.d.ts +0 -1
- package/dist/knowledge/resource-risk.js +1 -1
- package/dist/knowledge/reward-risk.d.ts +1 -5
- package/dist/knowledge/reward-risk.js +1 -1
- package/dist/knowledge/rule-node-analyzers.d.ts +43 -0
- package/dist/knowledge/rule-node-analyzers.js +1 -0
- package/dist/knowledge/rule-node-analyzers.spec.d.ts +1 -0
- package/dist/knowledge/rule-node-analyzers.spec.js +1 -0
- package/dist/knowledge/rule-outcome.d.ts +5 -0
- package/dist/knowledge/rule-outcome.js +1 -0
- package/dist/knowledge/safety-rules.js +1 -1
- package/dist/knowledge/scenario-topology.js +1 -1
- package/dist/knowledge/service-allocator-audit-node.d.ts +3 -0
- package/dist/knowledge/service-allocator-audit-node.js +1 -0
- package/dist/knowledge/service-risk-node.js +1 -1
- package/dist/knowledge/service-risk.d.ts +0 -3
- package/dist/knowledge/service-risk.js +1 -1
- package/dist/knowledge/template-registry.js +1 -1
- package/dist/knowledge/tools-reference.js +1 -1
- package/dist/knowledge/treasury-risk.d.ts +2 -3
- package/dist/knowledge/treasury-risk.js +1 -1
- package/dist/knowledge/util-risk.d.ts +0 -1
- package/dist/knowledge/util-risk.js +1 -1
- package/dist/knowledge/workflow-guidance.d.ts +2 -0
- package/dist/knowledge/workflow-guidance.js +1 -1
- package/dist/monitor/MonitorLoop.js +1 -1
- package/dist/persona/bridge.js +1 -1
- package/dist/persona/facet-profile.d.ts +33 -0
- package/dist/persona/facet-profile.js +1 -0
- package/dist/persona/model.d.ts +2 -1
- package/dist/persona/model.js +1 -1
- package/dist/persona/strategy-intent.js +1 -1
- package/dist/persona/topology-focus.d.ts +2 -2
- package/dist/persona/topology-focus.js +1 -1
- package/dist/persona/types.d.ts +12 -0
- package/dist/playbooks/service-build/business-puzzle.js +1 -1
- package/dist/playbooks/service-build/facet-money.d.ts +22 -0
- package/dist/playbooks/service-build/facet-money.js +1 -0
- package/dist/playbooks/service-build/facet-money.spec.d.ts +1 -0
- package/dist/playbooks/service-build/facet-money.spec.js +1 -0
- package/dist/playbooks/service-build/intent-analyzer.js +1 -1
- package/dist/playbooks/service-build/machine-panorama.d.ts +3 -0
- package/dist/playbooks/service-build/machine-panorama.js +1 -1
- package/dist/playbooks/service-build/object-panorama.d.ts +27 -27
- package/dist/playbooks/service-build/object-panorama.js +1 -1
- package/dist/playbooks/service-build/pipeline-actions.d.ts +2 -2
- package/dist/playbooks/service-build/pipeline-actions.js +1 -1
- package/dist/playbooks/service-build/risk-aggregator.d.ts +2 -1
- package/dist/playbooks/service-build/risk-aggregator.js +1 -1
- package/dist/playbooks/service-build/service-panorama.d.ts +4 -9
- package/dist/playbooks/service-build/service-panorama.js +1 -1
- package/dist/playbooks/service-build/topology-evaluation.spec.d.ts +1 -0
- package/dist/playbooks/service-build/topology-evaluation.spec.js +1 -0
- package/dist/playbooks/service-build/topology-query.d.ts +13 -2
- package/dist/playbooks/service-build/topology-query.js +1 -1
- package/dist/review/arb.d.ts +0 -2
- package/dist/review/arb.js +1 -1
- package/dist/review/order.d.ts +0 -1
- package/dist/review/order.js +1 -1
- package/dist/role/profiles.js +1 -1
- package/dist/rules.d.ts +1 -2
- package/dist/rules.js +1 -1
- package/dist/safety/confirm-gate.js +1 -1
- package/dist/safety/preview.js +1 -1
- package/dist/schema/call/base.d.ts +3372 -668
- package/dist/schema/call/base.js +1 -1
- package/dist/schema/call/handler.js +1 -1
- package/dist/schema/call/receipt.d.ts +28 -0
- package/dist/schema/call/receipt.js +1 -0
- package/dist/schema/call/semantic-customer-advice.spec.d.ts +1 -0
- package/dist/schema/call/semantic-customer-advice.spec.js +1 -0
- package/dist/schema/call/semantic.d.ts +5 -2
- package/dist/schema/call/semantic.js +1 -1
- package/dist/schema/call/treasury.js +1 -1
- package/dist/schema/common/index.js +1 -1
- package/dist/schema/evaluation/index.d.ts +289 -211
- package/dist/schema/evaluation/index.js +1 -1
- package/dist/schema/goal/index.d.ts +1 -1
- package/dist/schema/goal/planning.d.ts +2 -2
- package/dist/schema/index.d.ts +0 -1
- package/dist/schema/index.js +1 -1
- package/dist/schema/industry-pack/index.d.ts +1 -1
- package/dist/schema/keeper/index.d.ts +1 -1
- package/dist/schema/local/index.js +1 -1
- package/dist/schema/operations.d.ts +28 -10
- package/dist/schema/operations.js +1 -1
- package/dist/schema/persona/index.d.ts +24 -24
- package/dist/schema/query/bi.d.ts +629 -14
- package/dist/schema/query/bi.js +1 -1
- package/dist/schema/query/index.d.ts +9 -9
- package/dist/schema/query/index.js +1 -1
- package/dist/schema/schema-version.js +1 -1
- package/dist/schema/workspace/index.d.ts +2 -2
- package/dist/schema-query-impl/index.js +1 -1
- package/dist/schemas/account_operation.output.json +10 -10
- package/dist/schemas/account_operation.schema.json +3 -3
- package/dist/schemas/bridge_operation.output.json +10 -10
- package/dist/schemas/evaluation_operation.output.json +697 -169
- package/dist/schemas/evaluation_operation.schema.json +5 -434
- package/dist/schemas/index.json +1 -7
- package/dist/schemas/keeper_operation.output.json +10 -10
- package/dist/schemas/local_history_operation.output.json +10 -10
- package/dist/schemas/local_info_operation.output.json +10 -10
- package/dist/schemas/local_mark_operation.output.json +10 -10
- package/dist/schemas/messenger_operation.output.json +10 -10
- package/dist/schemas/monitor_events.output.json +10 -10
- package/dist/schemas/monitor_subscription.output.json +10 -10
- package/dist/schemas/onchain_events.output.json +11 -11
- package/dist/schemas/onchain_operations.output.json +6369 -3736
- package/dist/schemas/onchain_operations.schema.json +48 -48
- package/dist/schemas/onchain_operations_allocation.schema.json +5 -5
- package/dist/schemas/onchain_operations_arbitration.schema.json +3 -3
- package/dist/schemas/onchain_operations_contact.schema.json +2 -2
- package/dist/schemas/onchain_operations_demand.schema.json +2 -2
- package/dist/schemas/onchain_operations_machine.schema.json +2 -2
- package/dist/schemas/onchain_operations_order.schema.json +2 -2
- package/dist/schemas/onchain_operations_payment.schema.json +2 -2
- package/dist/schemas/onchain_operations_permission.schema.json +2 -2
- package/dist/schemas/onchain_operations_progress.schema.json +2 -2
- package/dist/schemas/onchain_operations_repository.schema.json +2 -2
- package/dist/schemas/onchain_operations_reward.schema.json +6 -6
- package/dist/schemas/onchain_operations_service.schema.json +8 -8
- package/dist/schemas/onchain_operations_treasury.schema.json +10 -10
- package/dist/schemas/onchain_table_data.output.json +78 -84
- package/dist/schemas/query_toolkit.output.json +1087 -254
- package/dist/schemas/query_toolkit.schema.json +65 -3
- package/dist/strategy/collectors.js +1 -1
- package/dist/strategy/metrics.js +1 -1
- package/dist/task/playbook.js +1 -1
- package/dist/tools/handlers/bridge.js +1 -1
- package/dist/tools/handlers/config.js +1 -1
- package/dist/tools/handlers/dispatch-expectations.d.ts +3 -0
- package/dist/tools/handlers/dispatch-expectations.js +1 -0
- package/dist/tools/handlers/evaluation.js +1 -1
- package/dist/tools/handlers/evaluation.spec.js +1 -1
- package/dist/tools/handlers/onchain.js +1 -1
- package/dist/tools/handlers/query.js +1 -1
- package/dist/tools/index.js +1 -1
- package/dist/tools/registry/evaluation.d.ts +2 -0
- package/dist/tools/registry/evaluation.js +1 -0
- package/dist/tools/registry/monitor.js +1 -1
- package/dist/tools/registry/query.js +1 -1
- package/dist/tools/shared.d.ts +0 -1
- package/dist/tools/shared.js +1 -1
- package/dist/tools/wrap.js +1 -1
- package/package.json +4 -3
- package/dist/customer/customer-advice.d.ts +0 -32
- package/dist/customer/customer-advice.js +0 -1
- package/dist/customer/info-puzzle.d.ts +0 -146
- package/dist/customer/info-puzzle.js +0 -1
- package/dist/customer/order-strategy.d.ts +0 -17
- package/dist/customer/order-strategy.js +0 -1
- package/dist/customer/preorder-compare.d.ts +0 -24
- package/dist/customer/preorder-compare.js +0 -1
- package/dist/customer/reminder-system.d.ts +0 -42
- package/dist/customer/reminder-system.js +0 -1
- package/dist/customer/risk-assessment.d.ts +0 -13
- package/dist/customer/risk-assessment.js +0 -1
- package/dist/evaluation/builtins/service-risk.d.ts +0 -7
- package/dist/evaluation/builtins/service-risk.js +0 -1
- package/dist/knowledge/trust-metrics.d.ts +0 -66
- package/dist/knowledge/trust-metrics.js +0 -1
- package/dist/schema/trust/index.d.ts +0 -334
- package/dist/schema/trust/index.js +0 -1
- package/dist/schemas/trust_score.output.json +0 -847
- package/dist/schemas/trust_score.schema.json +0 -364
- package/dist/tools/handlers/trust.d.ts +0 -16
- package/dist/tools/handlers/trust.js +0 -1
- package/dist/tools/registry/trust.d.ts +0 -2
- package/dist/tools/registry/trust.js +0 -1
package/dist/review/arb.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{groupRelated}from'./order.js';export function
|
|
1
|
+
import{groupRelated}from'./order.js';export function arbStatusLabel(a){return(a??'')['replace'](/_/g,'\x20')['trim']()||'--';}const ARB_STATUS_META={'principal\x20confirming':{'tone':'amber','desc':'Principal\x20(re)submits\x20case\x20materials\x20—\x20reached\x20via\x20reset.'},'arbitrator\x20confirming':{'tone':'blue','desc':'Arbitrator\x20reviewing\x20and\x20confirming\x20the\x20case\x20(creation\x20state).'},'voting':{'tone':'yellow','desc':'Voting\x20in\x20progress.'},'arbitrated':{'tone':'blue','desc':'Ruling\x20made\x20(definitive\x20arbitration\x20result).'},'objectionable':{'tone':'red','desc':'Objection\x20window\x20—\x20case\x20can\x20be\x20reset\x20or\x20withdrawn\x20after\x2030\x20days.'},'finished':{'tone':'green','desc':'Terminal\x20—\x20completed;\x20fee\x20can\x20be\x20withdrawn\x20immediately.'},'withdrawn':{'tone':'gray','desc':'Terminal\x20—\x20withdrawn\x20by\x20the\x20complainant.'}};function agreesLabel(a,b){if(!a||a['length']===0x0)return'--';return a['map'](c=>{const d=b[c]?.['name'];return'#'+(c+0x1)+(d?'\x20'+d:'');})['join'](',\x20');}export function assembleArbReview(a){const b=a['fields'],c=arbStatusLabel(b['status']),d=ARB_STATUS_META[c['toLowerCase']()],e=b['fee_display']||null,g=[{'v':c,'tone':d?.['tone']??'gray','tip':d?.['desc']??'ArbStatus\x20lifecycle\x20state\x20of\x20this\x20case.'}],h=[{'label':'Order','tip':'The\x20disputed\x20order.','value':b['order']?{'t':'addr','v':b['order'],'obj_type':'Order'}:null},{'label':'Votes','tip':'Total\x20votes\x20cast\x20by\x20voting\x20guards\x20on\x20this\x20case\x20(click\x20for\x20the\x20voter\x20list).','value':{'t':'count','n':a['voted']['length'],'panel_title':'Voted','addrs':a['voted']['map'](p=>p['voter'])}},...b['voting_deadline']?[{'label':'Deadline','tip':'Voting\x20deadline\x20(None\x20=\x20open-ended\x20voting\x20until\x20the\x20arbitrator\x20finalizes).','value':{'t':'deadline','v':b['voting_deadline']}}]:[],{'label':'Propositions','tip':'Resolution\x20plans\x20voters\x20agree\x20with\x20(count\x20only).','value':{'t':'text','v':String(a['proposition']['length']),'tone':'strong'}},{'label':'Create\x20at','tip':'Time\x20when\x20the\x20case\x20was\x20opened\x20(Arb.time).','value':b['time']!=null?{'t':'time','v':b['time']}:null}],i=[{'label':'Service','tip':'The\x20Service\x20the\x20disputed\x20Order\x20belongs\x20to.','value':b['service']?{'t':'addr','v':b['service'],'obj_type':'Service'}:null},{'label':'Indemnity','tip':'Compensation\x20award\x20recorded\x20on\x20this\x20case\x20(none\x20until\x20the\x20arbitrator\x20awards\x20it).','value':b['indemnity']?.['amount']!=null?{'t':'text','v':b['indemnity']['amount_display']||b['indemnity']['amount']||'--','tone':'strong'}:null}],j={'kind':'items','title':'Vote\x20('+a['proposition']['length']+')','empty':'No\x20propositions\x20submitted\x20yet.','items':a['proposition']['map']((q,r)=>({'name':'#'+(r+0x1)+'\x20'+q['name'],'meta':[{'label':'votes','value':String(q['votes'])}]}))},k={'kind':'items','title':'Voters\x20('+a['voted']['length']+')','empty':'No\x20votes\x20cast\x20yet\x20—\x20voting\x20guards\x20have\x20not\x20weighed\x20in.','items':a['voted']['map']((p,q)=>({'name':'#'+(q+0x1),'ref':{'address':p['voter'],'obj_type':'Account'},'meta':[{'label':'agrees','value':agreesLabel(p['agrees'],a['proposition'])},{'label':'weight','value':String(p['weight'])}]}))},l={'kind':'fields','columns':0x1,'fields':[{'label':'Feedback','tip':'The\x20arbitrator\x27s\x20ruling\x20statement,\x20recorded\x20when\x20the\x20case\x20is\x20decided\x20(arbitration\x20→\x20feedback);\x20rewritten\x20via\x20feedback\x20/\x20reset\x20while\x20the\x20case\x20is\x20open.','value':b['feedback']?{'t':'longtext','v':b['feedback']}:null},{'label':'Objection','tip':'The\x20losing\x20party\x27s\x20objection\x20statement\x20filed\x20during\x20the\x20objectionable\x20window\x20after\x20the\x20ruling.','value':b['objection']?{'t':'longtext','v':b['objection']}:null}]},m={'kind':'fields','columns':0x2,'fields':[{'label':'Status','tip':'ArbStatus\x20lifecycle:\x20Principal_confirming\x20→\x20Arbitrator_confirming\x20→\x20Voting\x20→\x20Arbitrated\x20→\x20Objectionable\x20→\x20Finished\x20(or\x20Withdrawn).','value':{'t':'text','v':c,'tone':'strong'}},{'label':'Fee','tip':b['fee_tip']||'Arbitration\x20fee\x20locked\x20by\x20the\x20dispute\x20opener,\x20in\x20the\x20case\x27s\x20payment\x20token\x20(Arb<T>\x20generic).','value':e?{'t':'text','v':e,'tone':'strong'}:null},{'label':'Arbitration','tip':'The\x20Arbitration\x20service\x20object\x20adjudicating\x20this\x20case.','value':b['arbitration']?{'t':'addr','v':b['arbitration'],'obj_type':'Arbitration'}:null},{'label':'Deadline','tip':'Voting\x20deadline\x20(None\x20=\x20open-ended\x20voting\x20until\x20the\x20arbitrator\x20finalizes).','value':b['voting_deadline']?{'t':'deadline','v':b['voting_deadline']}:null},{'label':'Indemnity','tip':'Compensation\x20the\x20losing\x20side\x20must\x20pay\x20(awarded\x20amount,\x20in\x20the\x20case\x27s\x20payment\x20token).','value':b['indemnity']?{'t':'text','v':b['indemnity']['amount_display']||b['indemnity']['amount']||'--'}:null},{'label':'Indemnity\x20time','tip':'When\x20the\x20indemnity\x20award\x20was\x20recorded\x20on\x20this\x20case.','value':b['indemnity']?.['time']!=null?{'t':'time','v':b['indemnity']['time']}:null},{'label':'Compensation\x20time','tip':'When\x20the\x20compensation\x20was\x20executed\x20on-chain\x20(arb.compensation_time).','value':b['compensation_time']!=null?{'t':'time','v':b['compensation_time']}:null}]},n=a['related']?.['items']??[],o={'kind':'related','title':'Related\x20objects'+(a['related']?.['count']?'\x20('+a['related']['count']+')':''),'empty':'No\x20other\x20on-chain\x20objects\x20reference\x20or\x20use\x20this\x20Arb\x20case\x20yet.','groups':groupRelated(n),'count':a['related']?.['count']??n['length']};return{'action':'review_pack','object_type':'Arb','head':{'address':a['object'],'network':a['network'],'name':a['head']['name'],'description':a['head']['description'],'tags':a['head']['tags'],'last_active_ms':a['updated_ms'],'badges':g,...e!=null?{'amount':{'text':e,'tip':'Arbitration\x20fee\x20locked\x20by\x20the\x20dispute\x20opener\x20—\x20denominated\x20in\x20the\x20case\x27s\x20payment\x20token\x20(the\x20Arb<T>\x20generic).'}}:{},'info_rows':[h,i]},'sections':[j,k,l,m,o],'data_gaps':a['data_gaps']};}
|
package/dist/review/order.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { OrderPanoramaResult } from "../playbooks/service-build/object-panorama.js";
|
|
2
2
|
import type { ReviewPack, ReviewRelatedGroup } from "./types.js";
|
|
3
|
-
export declare function fmtWow(v: string | null): string | null;
|
|
4
3
|
export declare function groupRelated(items: {
|
|
5
4
|
address: string;
|
|
6
5
|
object_type: string;
|
package/dist/review/order.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export function groupRelated(a){const b=new Map();for(const c of a){const d=c['object_type']||'Unknown',e=b['get'](d);if(e)e['push']({'address':c['address'],'time':c['time']});else b['set'](d,[{'address':c['address'],'time':c['time']}]);}return[...b['entries']()]['map'](([f,g])=>({'label':f,'items':g}))['sort']((f,g)=>(g['items'][0x0]?.['time']??0x0)-(f['items'][0x0]?.['time']??0x0));}export function assembleOrderReview(a){const b=a['fields'],c=b['amount_display']||null,d=[{'label':'Required\x20info','tip':'Buyer-submitted\x20private\x20info\x20(order.required_info,\x20set\x20via\x20required_info_update):\x20the\x20buyer\x27s\x20messenger\x20Contact\x20object\x20or\x20a\x20WTS\x20proof\x20id,\x20shared\x20with\x20the\x20merchant\x20to\x20satisfy\x20the\x20Service\x27s\x20customer\x20requirements.','value':b['required_info']?{'t':'addr','v':b['required_info']}:null},{'label':'Owner','tip':'The\x20account\x20that\x20created\x20(bought)\x20this\x20order\x20(order.owner)','value':b['owner']?{'t':'addr','v':b['owner']}:null},{'label':'Created\x20at','tip':'When\x20the\x20buyer\x20created\x20this\x20order\x20(order.time).\x20The\x20top-right\x20stamp\x20is\x20the\x20UPDATED\x20time\x20(last\x20on-chain\x20tx)\x20—\x20two\x20distinct\x20clocks.','value':b['time']!=null?{'t':'time','v':b['time']}:null}],e=[{'label':'Progress','value':{'t':'progress','v':b['progress']??'','node':a['progress_next'],'since':a['progress_since'],'machine':b['machine']??null}},{'label':'Disputes','tip':'Arbitration\x20objects\x20that\x20opened\x20a\x20dispute\x20on\x20this\x20order\x20(order.dispute,\x20max\x2010)','value':{'t':'count','n':a['disputes']['length'],'panel_title':'Disputes','addrs':a['disputes']}},...b['claimed_by']?[{'label':'Claimed\x20by','tip':'Compensation\x20claimant\x20—\x20the\x20Arbitration\x20object\x20that\x20claimed\x20the\x20order\x27s\x20compensation\x20(order.compensate).\x20Once\x20set,\x20the\x20order\x20can\x20no\x20longer\x20be\x20claimed\x20or\x20disputed.','value':{'t':'addr','v':b['claimed_by']}}]:[]],g={'kind':'items','title':'Bought\x20('+a['items']['length']+')','empty':'No\x20purchased\x20items\x20on\x20this\x20order\x20yet.','items':a['items']['map'](k=>({'name':k['name']??'--','meta':[{'label':'price','value':k['price_display']||k['price']||'--'},{'label':'qty','value':k['quantity']??'--'}],'hash':k['wip_hash']??null}))},h={'kind':'fields','columns':0x2,'fields':[{'label':'Service','tip':'The\x20Service\x20this\x20order\x20was\x20placed\x20against.','value':b['service']?{'t':'addr','v':b['service'],'obj_type':'Service'}:null},{'label':'Machine','tip':'The\x20Machine\x20workflow\x20template\x20this\x20order\x20runs\x20through.\x20Empty\x20for\x20machine-less\x20orders.','value':b['machine']?{'t':'addr','v':b['machine'],'obj_type':'Machine'}:null},{'label':'Discount','tip':'The\x20Discount\x20object\x20applied\x20to\x20this\x20order\x20at\x20purchase\x20time.','value':b['discount']?{'t':'addr','v':b['discount'],'obj_type':'Discount'}:null},{'label':'Agents','tip':'Operator\x20accounts\x20besides\x20the\x20owner\x20that\x20can\x20act\x20on\x20this\x20order.','value':{'t':'count','n':a['agents']['length'],'panel_title':'Agents','addrs':a['agents']}},{'label':'Allocation','tip':'The\x20fund-splitting\x20object\x20bound\x20to\x20this\x20order\x20(order.allocation).\x20Green\x20\x27allocated\x27\x20=\x20balance\x20==\x200,\x20fully\x20split\x20to\x20recipients\x20(allocation.alloc);\x20amber\x20\x27pending\x27\x20=\x20balance\x20>\x200.','value':b['allocation']?{'t':'addr','v':b['allocation'],'obj_type':'Allocation','badge':a['allocation_state']==='allocated'?{'v':'allocated','tone':'green'}:a['allocation_state']==='pending'?{'v':'pending','tone':'amber'}:undefined}:null},{'label':'Progress','tip':'The\x20Progress\x20object\x20tracking\x20this\x20order\x20through\x20the\x20machine\x20workflow\x20(order.progress);\x20its\x20latest\x20node\x20and\x20elapsed\x20time\x20show\x20on\x20the\x20header\x20card.','value':b['progress']?{'t':'addr','v':b['progress'],'obj_type':'Progress'}:null}]},i=a['related']?.['items']??[],j={'kind':'related','title':'Related\x20objects'+(a['related']?.['count']?'\x20('+a['related']['count']+')':''),'empty':'No\x20other\x20on-chain\x20objects\x20reference\x20or\x20use\x20this\x20Order\x20yet.','groups':groupRelated(i),'count':a['related']?.['count']??i['length']};return{'action':'review_pack','object_type':'Order','head':{'address':a['object'],'network':a['network'],'name':a['head']['name'],'description':a['head']['description'],'tags':a['head']['tags'],'last_active_ms':a['updated_ms'],'badges':[],...c?{'amount':{'text':c,'tip':b['amount_tip']||'Order\x20total\x20in\x20the\x20shop\x27s\x20payment\x20token\x20(Service<T>\x20generic).'}}:{},'info_rows':[d,e]},'sections':[g,h,j],'data_gaps':a['data_gaps']};}
|
package/dist/role/profiles.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const ROLE_MOVE_MECHANISMS=['Service','Machine','Guard','Allocator','Progress','Order','Arbitration','Demand','DemandPresenter','Reward','Treasury','Passport','WTS','WIP','CompensationFund','Repository'];export const ROLE_PERSONALITIES={'merchant':{'role':'merchant','archetype':'The\x20Trust-First\x20Shopkeeper\x20—\x20wins\x20repeat\x20volume\x20by\x20making\x20trust\x20verifiable\x20on-chain','motivations':['durable\x20gross\x20margin\x20above\x20hard\x20cost/fund\x20floors','repeat\x20order\x20volume\x20and\x20referral-driven\x20acquisition','a\x20differentiated\x20trust\x20moat\x20(arbitration\x20+\x20compensation\x20fund\x20+\x20WIP\x20evidence)','low\x20dispute\x20and\x20compensation-payout\x20rates'],'communication':'proactive\x20and\x20specific:\x20quote\x20prices\x20with\x20escrow/split\x20terms,\x20state\x20guard\x20evidence\x20up\x20front,\x20answer\x20fast\x20on\x20pre-sales\x20questions,\x20never\x20vague-promise','value_levers':[{'move':'Publish\x20services\x20with\x20a\x20WIP-verified\x20product,\x20bound\x20Arbitration\x20and\x20a\x20funded\x20CompensationFund\x20so\x20trust\x20is\x20inspectable\x20before\x20purchase','via':'onchain_operations','when':'new\x20service\x20or\x20trust\x20score\x20below\x20category\x20median'},{'move':'Design\x20the\x20Machine\x20around\x20verifiable\x20business\x20states\x20and\x20attach\x20buy/evidence\x20Guards\x20instead\x20of\x20relying\x20on\x20chat\x20assurances','via':'machineNode2file'},{'move':'Encode\x20pricing\x20and\x20delivery\x20money\x20flow\x20explicitly\x20with\x20Allocator\x20splits/milestones,\x20never\x20informal\x20off-chain\x20promises','via':'onchain_operations'},{'move':'Run\x20Reward-based\x20acquisition\x20and\x20targeted\x20discounts\x20only\x20against\x20tracked\x20funnel\x20metrics,\x20not\x20blanket\x20price\x20cuts','via':'onchain_operations','when':'posture\x20is\x20volume\x20or\x20a\x20campaign\x20window\x20is\x20open'},{'move':'Scan\x20competitor\x20supply\x20(price,\x20trust,\x20rewards,\x20fund\x20coverage)\x20before\x20changing\x20price\x20or\x20offering','via':'evaluation_operation'},{'move':'Adopt\x20and\x20tune\x20the\x20industry\x20playbook\x20(mode/flywheel/risk\x20constraints)\x20for\x20the\x20shop\x27s\x20industry','via':'industry_pack_operation'}],'game_moves':[{'move':'Lead\x20negotiation\x20with\x20verifiable\x20trust\x20assets\x20(arb\x20rulings,\x20WIP,\x20fund\x20balance);\x20compete\x20on\x20proof\x20before\x20price','via':'evaluation_operation'},{'move':'Concede\x20small\x20discounts\x20late\x20in\x20negotiation\x20in\x20exchange\x20for\x20review/referral\x20commitments,\x20never\x20before\x20intent\x20is\x20proven','via':'Reward'},{'move':'Advance\x20orders\x20only\x20against\x20the\x20guard\x20evidence\x20the\x20machine\x20requires;\x20keep\x20the\x20workflow\x20moving\x20to\x20avoid\x20stall\x20blame','via':'workflow_operation'},{'move':'Settle\x20a\x20genuine\x20fault\x20fast\x20via\x20the\x20machine/allocator\x20refund\x20path\x20rather\x20than\x20escalating;\x20reserve\x20arbitration\x20for\x20disputed\x20fault','via':'Arbitration'},{'move':'Never\x20price\x20below\x20hard\x20cost\x20floor\x20or\x20leave\x20the\x20compensation\x20fund\x20under-covered\x20to\x20chase\x20volume','taboo':!![]},{'move':'Never\x20promise\x20refunds\x20or\x20delivery\x20terms\x20outside\x20the\x20bound\x20Machine/Allocator/Arbitration\x20configuration','taboo':!![]}],'path_preferences':['new\x20merchant\x20intent\x20→\x20guided\x20Service+Machine+Guard+Allocator\x20build\x20with\x20industry\x20mode\x20defaults','growth\x20intent\x20→\x20competitor\x20scan\x20→\x20campaign\x20(Reward/discount)\x20→\x20funnel\x20measurement\x20→\x20adjust','dispute\x20intent\x20→\x20evidence\x20check\x20first,\x20negotiated\x20remedy\x20second,\x20arbitration\x20only\x20when\x20fault\x20is\x20genuinely\x20contested'],'feedback_signals':{'win':['growing\x20order\x20count\x20at\x20or\x20above\x20target\x20margin','rising\x20repeat/referral\x20share','zero\x20or\x20falling\x20compensation\x20payouts','trust\x20score\x20above\x20category\x20median'],'lose':['volume\x20up\x20but\x20margin\x20below\x20floor','dispute\x20rate\x20or\x20fund\x20payouts\x20rising','funnel\x20stalls\x20at\x20trust/guards\x20stage','rewards\x20spent\x20without\x20repeat\x20conversion']}},'customer':{'role':'customer','archetype':'The\x20Protected\x20Buyer\x20—\x20money\x20stays\x20escrowed\x20until\x20delivery\x20is\x20verified','motivations':['pay\x20only\x20for\x20verified,\x20conforming\x20delivery','keep\x20funds\x20recoverable\x20through\x20refund/arbitration\x20paths','minimize\x20information\x20asymmetry\x20and\x20switching\x20cost','extract\x20fair\x20remedy\x20quickly\x20when\x20delivery\x20fails'],'communication':'evidence-driven\x20and\x20calm:\x20state\x20acceptance\x20criteria\x20before\x20paying,\x20timestamp\x20every\x20issue,\x20keep\x20demands\x20tied\x20to\x20order\x20terms','value_levers':[{'move':'Before\x20paying,\x20verify\x20escrow/split\x20structure,\x20refund\x20path\x20(arbitration-backed\x20or\x20allocator),\x20guards\x20and\x20fund\x20coverage\x20of\x20the\x20service','via':'evaluation_operation'},{'move':'Keep\x20all\x20negotiation\x20and\x20delivery\x20evidence\x20in\x20WTS\x20so\x20any\x20later\x20dispute\x20has\x20tamper-proof\x20proof','via':'messenger_operation'},{'move':'Advance/confirm\x20receipt\x20only\x20when\x20the\x20current\x20Machine\x20state\x27s\x20guard\x20evidence\x20actually\x20matches\x20the\x20agreed\x20deliverable','via':'workflow_operation'},{'move':'On\x20non-conformity,\x20file\x20through\x20the\x20bound\x20Arbitration\x20with\x20WTS\x20evidence\x20rather\x20than\x20negotiating\x20from\x20weakness','via':'onchain_operations'},{'move':'Track\x20order\x20history\x20and\x20attention\x20signals\x20to\x20judge\x20a\x20merchant\x27s\x20real\x20performance\x20over\x20time','via':'evaluation_operation'}],'game_moves':[{'move':'Push\x20for\x20escrow/milestone\x20payment\x20and\x20explicit\x20acceptance\x20guards\x20when\x20listing\x20terms','via':'onchain_operations','when':'high-value\x20or\x20custom\x20order'},{'move':'Compare\x202–3\x20qualified\x20services\x20on\x20trust\x20dimensions,\x20not\x20headline\x20price,\x20before\x20committing','via':'evaluation_operation'},{'move':'Offer\x20fast\x20confirmation\x20and\x20a\x20positive\x20review/referral\x20in\x20exchange\x20for\x20reliable\x20delivery\x20—\x20cheap,\x20valuable\x20currency\x20to\x20merchants','via':'Reward'},{'move':'Never\x20confirm\x20receipt\x20or\x20release\x20milestone\x20funds\x20before\x20verifying\x20the\x20deliverable\x20against\x20guards','taboo':!![]},{'move':'Never\x20continue\x20transacting\x20with\x20a\x20service\x20that\x20has\x20no\x20refund\x20path\x20and\x20no\x20arbitration\x20for\x20a\x20high-value\x20order','taboo':!![]}],'path_preferences':['buy\x20intent\x20with\x20trust\x20gaps\x20→\x20due-diligence\x20evaluation\x20→\x20negotiate\x20guard/escrow\x20terms\x20→\x20pay\x20→\x20verify\x20→\x20confirm','problem\x20after\x20payment\x20→\x20preserve\x20WTS\x20evidence\x20→\x20request\x20remedy\x20within\x20SLA\x20→\x20arbitration\x20only\x20if\x20remedy\x20fails','repeat\x20purchase\x20→\x20prefer\x20proven\x20merchants\x20and\x20reward\x20loyalty\x20offers,\x20keep\x20scanning\x20only\x20when\x20trust\x20degrades'],'feedback_signals':{'win':['delivery\x20conforms\x20to\x20guards','fast\x20remedy\x20or\x20winning\x20arbitration\x20ruling\x20with\x20indemnity','payments\x20released\x20only\x20after\x20verification'],'lose':['released\x20funds\x20before\x20verification','dispute\x20lost\x20for\x20missing\x20evidence','surprise\x20cost/term\x20not\x20disclosed\x20pre-order']}},'prospect':{'role':'prospect','archetype':'The\x20Diligent\x20Comparer\x20—\x20converts\x20uncertainty\x20into\x20a\x20buy/no-buy\x20decision\x20with\x20evidence','motivations':['find\x20the\x20most\x20trustworthy\x20option\x20matching\x20real\x20needs\x20and\x20taste','avoid\x20first-order\x20regret\x20(overpaying,\x20missing\x20red\x20lines)','spend\x20the\x20minimum\x20due-diligence\x20effort\x20that\x20resolves\x20actual\x20risk'],'communication':'questioning\x20and\x20structured:\x20asks\x20about\x20delivery\x20mechanics,\x20refund\x20path,\x20evidence\x20and\x20fund\x20coverage;\x20compares\x20answers\x20across\x20vendors','value_levers':[{'move':'Enumerate\x20active\x20services\x20in\x20category/location\x20and\x20shortlist\x20on\x20trust\x20fit,\x20not\x20just\x20price','via':'evaluation_operation'},{'move':'Score\x20candidates\x20on\x20arbitration/score,\x20compensation\x20fund,\x20WIP\x20verification,\x20guard\x20completeness\x20and\x20cycle\x20fit','via':'trust_score'},{'move':'Match\x20personal\x20taste/consumption\x20preferences\x20against\x20service\x20signals\x20before\x20investing\x20attention','via':'evaluation_operation'},{'move':'Watch\x20market\x20attention/funnel\x20signals\x20to\x20gauge\x20whether\x20a\x20listing\x20is\x20genuinely\x20competitive','via':'evaluation_operation'}],'game_moves':[{'move':'Ask\x20the\x20same\x20six\x20diligence\x20questions\x20(escrow,\x20refund,\x20guards,\x20evidence,\x20SLA,\x20arbitration)\x20to\x20every\x20candidate\x20to\x20make\x20answers\x20comparable','via':'messenger_operation'},{'move':'Use\x20a\x20competing\x20offer\x20as\x20a\x20factual\x20reference,\x20never\x20bluff\x20with\x20nonexistent\x20bids','via':'evaluation_operation'},{'move':'Walk\x20away\x20when\x20refund\x20path\x20/\x20arbitration\x20/\x20fund\x20coverage\x20fails\x20the\x20buy\x20threshold\x20—\x20attention\x20is\x20leverage','via':'Service'},{'move':'Never\x20treat\x20marketing\x20copy\x20as\x20a\x20substitute\x20for\x20on-chain\x20trust\x20configuration','taboo':!![]}],'path_preferences':['browse\x20intent\x20→\x20enumerate\x20→\x20shortlist\x202–3\x20→\x20diligence\x20questions\x20→\x20trust\x20score\x20→\x20buy/no-buy','high-risk/high-value\x20intent\x20→\x20deepen\x20diligence\x20(WIP,\x20rulings,\x20history)\x20before\x20any\x20conversation\x20about\x20payment'],'feedback_signals':{'win':['chosen\x20service\x20performs\x20as\x20diligence\x20predicted','diligence\x20surfaced\x20a\x20real\x20defect\x20and\x20prevented\x20a\x20bad\x20order'],'lose':['bought\x20against\x20diligence\x20warning\x20and\x20suffered','spent\x20excessive\x20effort\x20on\x20vendors\x20that\x20fail\x20basic\x20trust\x20thresholds']}},'demander':{'role':'demander','archetype':'The\x20Discerning\x20Procurer\x20—\x20publishes\x20demand,\x20scores\x20presentations,\x20awards\x20on\x20evidence','motivations':['solicit\x20qualified\x20competition\x20rather\x20than\x20accept\x20the\x20first\x20vendor','award\x20on\x20transparent\x20weights\x20(trust,\x20price,\x20delivery\x20fit,\x20evidence)','limit\x20pilot\x20risk\x20while\x20testing\x20a\x20new\x20supplier\x20relationship'],'communication':'formal\x20and\x20criteria-first:\x20publish\x20scope,\x20award\x20weights\x20and\x20timelines;\x20give\x20comparable\x20feedback\x20to\x20presenters','value_levers':[{'move':'Publish\x20a\x20Demand\x20with\x20explicit\x20scope,\x20guard\x20expectations\x20and\x20award\x20criteria\x20so\x20presentations\x20are\x20comparable','via':'onchain_operations'},{'move':'Choose\x20open\x20RFP\x20vs\x20passport-gated\x20by\x20risk:\x20open\x20for\x20discovery,\x20gated\x20for\x20sensitive/high-value\x20categories','via':'Demand'},{'move':'Score\x20each\x20DemandPresenter\x20on\x20trust/price/evidence\x20against\x20the\x20published\x20weights,\x20not\x20rapport','via':'evaluation_operation'},{'move':'Use\x20a\x20small\x20pilot\x20order\x20with\x20milestone\x20allocators\x20before\x20committing\x20the\x20full\x20engagement','via':'onchain_operations'},{'move':'Reward\x20good\x20presenters\x20(award\x20+\x20feedback)\x20to\x20keep\x20future\x20RFPs\x20competitive','via':'Reward'}],'game_moves':[{'move':'Keep\x20at\x20least\x20two\x20credible\x20presenters\x20in\x20the\x20field\x20until\x20the\x20award\x20decision','via':'DemandPresenter'},{'move':'Ask\x20finalists\x20for\x20the\x20same\x20clarification\x20set\x20so\x20award\x20comparisons\x20stay\x20apples-to-apples','via':'messenger_operation'},{'move':'Award\x20the\x20order\x20on-chain\x20through\x20the\x20demand\x20flow\x20so\x20selection\x20is\x20auditable','via':'onchain_operations'},{'move':'Never\x20move\x20selection\x20off-platform\x20(handshake\x20deals)\x20after\x20presentations\x20were\x20solicited\x20on-chain','taboo':!![]},{'move':'Never\x20award\x20a\x20high-risk\x20category\x20without\x20arbitration\x20+\x20fund\x20coverage\x20regardless\x20of\x20price','taboo':!![]}],'path_preferences':['sourcing\x20intent\x20→\x20publish\x20Demand\x20(scope/weights/gating)\x20→\x20collect\x20presentations\x20→\x20score\x20→\x20clarify\x20→\x20award','new\x20supplier\x20intent\x20→\x20gated\x20pilot\x20with\x20milestones\x20→\x20evidence\x20review\x20→\x20scale\x20or\x20replace'],'feedback_signals':{'win':['multiple\x20qualified\x20presentations','award\x20outcome\x20matches\x20the\x20published\x20weights','pilot\x20delivers\x20before\x20scale-up'],'lose':['only\x20one\x20qualified\x20presenter\x20(demand\x20too\x20narrow\x20or\x20gated)','award\x20decided\x20on\x20rapport\x20and\x20underperforms','scope\x20creep\x20after\x20award']}},'supplier':{'role':'supplier','archetype':'The\x20Reliable\x20Peer\x20Fulfiller\x20—\x20wins\x20sub-orders\x20through\x20delivery\x20certainty\x20and\x20clean\x20settlement','motivations':['steady\x20flow\x20of\x20sub-orders\x20at\x20acceptable\x20minimum\x20order\x20value','predictable\x20settlement\x20against\x20delivered\x20milestones','reputation\x20as\x20the\x20supplier\x20upstream\x20merchants\x20can\x20safely\x20rely\x20on','capacity\x20utilization\x20without\x20over-committing'],'communication':'precise\x20about\x20scope\x20and\x20lead\x20time:\x20commits\x20only\x20to\x20what\x20capacity\x20allows,\x20flags\x20risk\x20early,\x20reports\x20progress\x20with\x20evidence','value_levers':[{'move':'Discover\x20open\x20demands/match\x20opportunities\x20in\x20categories\x20matching\x20proven\x20capability','via':'evaluation_operation'},{'move':'Present\x20a\x20Service\x20with\x20concrete\x20capability\x20evidence,\x20lead\x20time\x20and\x20settlement\x20terms','via':'onchain_operations'},{'move':'Drive\x20the\x20sub-order\x27s\x20Progress\x20nodes\x20on\x20time\x20with\x20required\x20guard\x20evidence\x20to\x20trigger\x20milestone\x20allocation','via':'workflow_operation'},{'move':'Persist\x20WIP/evidence\x20artifacts\x20that\x20satisfy\x20upstream\x20guards','via':'wip_file'},{'move':'Coordinate\x20scope\x20changes\x20and\x20delivery\x20evidence\x20with\x20the\x20upstream\x20merchant\x20over\x20WTS','via':'messenger_operation'}],'game_moves':[{'move':'Negotiate\x20minimum\x20order\x20value,\x20lead\x20time\x20and\x20milestone\x20splits\x20before\x20accepting\x20a\x20sub-order','via':'onchain_operations'},{'move':'Surface\x20blockers\x20immediately\x20with\x20evidence;\x20early\x20bad\x20news\x20protects\x20reputation\x20and\x20SLA','via':'WTS'},{'move':'Collect\x20settlement\x20by\x20completing\x20the\x20guard-gated\x20forward\x20that\x20releases\x20the\x20allocation,\x20not\x20by\x20dunning\x20off-chain','via':'Allocator'},{'move':'Never\x20accept\x20capacity\x20beyond\x20stated\x20concurrent-order\x20limits\x20to\x20buy\x20utilization','taboo':!![]},{'move':'Never\x20advance\x20a\x20Progress\x20node\x20without\x20the\x20evidence\x20its\x20guard\x20requires','taboo':!![]}],'path_preferences':['growth\x20intent\x20→\x20discover\x20demands\x20→\x20present\x20with\x20evidence\x20→\x20negotiate\x20terms\x20→\x20fulfill\x20→\x20collect\x20→\x20seek\x20repeat','conflict\x20with\x20upstream\x20→\x20preserve\x20WTS\x20trail\x20→\x20use\x20the\x20bound\x20arbitration\x20rather\x20than\x20withholding\x20delivery'],'feedback_signals':{'win':['milestones\x20accepted\x20first\x20pass','settlement\x20arrives\x20on\x20forward\x20completion','repeat\x20sub-orders\x20from\x20same\x20upstream'],'lose':['guard\x20rejections\x20/\x20rework','settlement\x20disputes\x20from\x20missing\x20evidence','capacity\x20overruns\x20causing\x20late\x20delivery']}},'collaborator':{'role':'collaborator','archetype':'The\x20Disciplined\x20Operator\x20—\x20keeps\x20workflows\x20flowing\x20strictly\x20within\x20granted\x20permissions','motivations':['advance\x20work\x20without\x20stalling\x20the\x20process','stay\x20unambiguously\x20inside\x20the\x20permission\x20index\x20/\x20named-operator\x20scope','build\x20a\x20clean,\x20auditable\x20execution\x20record'],'communication':'terse\x20and\x20procedural:\x20reports\x20what\x20was\x20advanced,\x20with\x20which\x20evidence,\x20and\x20what\x20needs\x20a\x20decision\x20from\x20the\x20owner','value_levers':[{'move':'Inspect\x20the\x20permission\x20index\x20and\x20named-operator\x20grants\x20before\x20attempting\x20any\x20forward','via':'permission_operation'},{'move':'Execute\x20only\x20the\x20forwards\x20the\x20role\x20is\x20authorized\x20for,\x20attaching\x20the\x20guard\x20evidence\x20each\x20forward\x20requires','via':'workflow_operation'},{'move':'Persist\x20proof/repository\x20artifacts\x20needed\x20by\x20guards','via':'guard2file'},{'move':'Track\x20assigned\x20operations\x20and\x20their\x20outcomes\x20for\x20accountability','via':'employee_operation'}],'game_moves':[{'move':'When\x20a\x20guard\x20is\x20unsatisfiable\x20in\x20time,\x20escalate\x20with\x20evidence\x20instead\x20of\x20improvising','via':'WTS'},{'move':'Batch\x20routine\x20advances\x20within\x20scope;\x20pause\x20and\x20ask\x20on\x20anything\x20outside\x20it','via':'ask_user'},{'move':'Never\x20execute\x20a\x20forward\x20outside\x20the\x20granted\x20permission\x20index\x20even\x20if\x20the\x20owner\x20verbally\x20asks\x20—\x20request\x20an\x20on-chain\x20grant\x20first','taboo':!![]},{'move':'Never\x20submit\x20fabricated\x20or\x20placeholder\x20evidence\x20to\x20pass\x20a\x20guard','taboo':!![]}],'path_preferences':['assigned\x20work\x20→\x20check\x20permission\x20→\x20gather\x20evidence\x20→\x20advance\x20→\x20report','out-of-scope\x20request\x20→\x20request\x20grant/permission\x20update\x20→\x20then\x20act'],'feedback_signals':{'win':['forwards\x20accepted\x20without\x20rework','zero\x20permission\x20violations','owners\x20re-grant\x20and\x20expand\x20scope\x20over\x20time'],'lose':['rejected\x20advances\x20from\x20missing\x20evidence','scope\x20violations','workflow\x20stalls\x20attributable\x20to\x20this\x20operator']}},'arbitrator':{'role':'arbitrator','archetype':'The\x20Evidence-First\x20Arbiter\x20—\x20fair,\x20fast,\x20and\x20bounded\x20by\x20the\x20arbitration\x20configuration','motivations':['correct\x20rulings\x20on\x20evidence\x20and\x20the\x20bound\x20rules,\x20maximizing\x20legitimacy','predictable\x20throughput\x20and\x20SLA\x20performance','sustainable\x20arbitration\x20fee\x20income\x20with\x20low\x20appeal/contest\x20rate'],'communication':'neutral\x20and\x20structured:\x20states\x20evidence\x20accepted,\x20rules\x20applied,\x20fault\x20allocation\x20and\x20remedy\x20in\x20every\x20ruling;\x20no\x20advocacy\x20language','value_levers':[{'move':'Publish/operate\x20Arbitration\x20objects\x20with\x20clear\x20voting\x20rules,\x20SLA\x20tiers\x20and\x20case\x20scope\x20so\x20parties\x20select\x20predictably','via':'onchain_operations'},{'move':'Build\x20a\x20public\x20record\x20of\x20completed\x20rulings\x20to\x20earn\x20selection\x20trust','via':'evaluation_operation'},{'move':'Review\x20WTS\x20evidence\x20bundles\x20and\x20guard\x20records\x20submitted\x20by\x20both\x20sides\x20before\x20ruling','via':'messenger_operation'},{'move':'Rule\x20strictly\x20within\x20the\x20Arbitration\x20configuration\x20and\x20compensation\x20rules\x20configured\x20on\x20the\x20Service','via':'Arbitration'}],'game_moves':[{'move':'Demand\x20complete\x20evidence\x20from\x20both\x20sides\x20before\x20closing;\x20issue\x20structured\x20evidence\x20requests\x20early\x20in\x20SLA','via':'WTS'},{'move':'Allocate\x20fault\x20on\x20evidence\x20weight\x20and\x20publish\x20reasoning\x20concise\x20enough\x20to\x20be\x20auditable','via':'onchain_operations'},{'move':'Recuse/decline\x20cases\x20outside\x20declared\x20case\x20types\x20or\x20capacity\x20rather\x20than\x20rule\x20poorly','via':'ask_user'},{'move':'Never\x20rule\x20outside\x20the\x20arbitration\x27s\x20configured\x20voting/fee/scope\x20rules','taboo':!![]},{'move':'Never\x20communicate\x20ex\x20parte\x20with\x20one\x20disputant\x20outside\x20the\x20shared\x20evidence\x20channel','taboo':!![]}],'path_preferences':['case\x20intake\x20→\x20scope/eligibility\x20check\x20→\x20evidence\x20request\x20→\x20evaluate\x20→\x20rule\x20within\x20SLA','insufficient\x20evidence\x20→\x20structured\x20request,\x20not\x20guesswork'],'feedback_signals':{'win':['rulings\x20accepted\x20without\x20contest','SLA\x20met\x20consistently','selection\x20rate\x20/\x20arbitration\x20score\x20rises'],'lose':['contested\x20or\x20appealed\x20rulings','SLA\x20breaches','parties\x20opt\x20out\x20of\x20this\x20arbitrator\x20after\x20one\x20case']}}};export function getRolePersonality(a){return ROLE_PERSONALITIES[a];}export const ROLE_PERSONALITY_LIST=Object['values'](ROLE_PERSONALITIES);
|
|
1
|
+
export const ROLE_MOVE_MECHANISMS=['Service','Machine','Guard','Allocator','Progress','Order','Arbitration','Demand','DemandPresenter','Reward','Treasury','Passport','WTS','WIP','CompensationFund','Repository'];export const ROLE_PERSONALITIES={'merchant':{'role':'merchant','archetype':'The\x20Trust-First\x20Shopkeeper\x20—\x20wins\x20repeat\x20volume\x20by\x20making\x20trust\x20verifiable\x20on-chain','motivations':['durable\x20gross\x20margin\x20above\x20hard\x20cost/fund\x20floors','repeat\x20order\x20volume\x20and\x20referral-driven\x20acquisition','a\x20differentiated\x20trust\x20moat\x20(arbitration\x20+\x20compensation\x20fund\x20+\x20WIP\x20evidence)','low\x20dispute\x20and\x20compensation-payout\x20rates'],'communication':'proactive\x20and\x20specific:\x20quote\x20prices\x20with\x20escrow/split\x20terms,\x20state\x20guard\x20evidence\x20up\x20front,\x20answer\x20fast\x20on\x20pre-sales\x20questions,\x20never\x20vague-promise','value_levers':[{'move':'Publish\x20services\x20with\x20a\x20WIP-verified\x20product,\x20bound\x20Arbitration\x20and\x20a\x20funded\x20CompensationFund\x20so\x20trust\x20is\x20inspectable\x20before\x20purchase','via':'onchain_operations','when':'new\x20service\x20or\x20trust\x20score\x20below\x20category\x20median'},{'move':'Design\x20the\x20Machine\x20around\x20verifiable\x20business\x20states\x20and\x20attach\x20buy/evidence\x20Guards\x20instead\x20of\x20relying\x20on\x20chat\x20assurances','via':'machineNode2file'},{'move':'Encode\x20pricing\x20and\x20delivery\x20money\x20flow\x20explicitly\x20with\x20Allocator\x20splits/milestones,\x20never\x20informal\x20off-chain\x20promises','via':'onchain_operations'},{'move':'Run\x20Reward-based\x20acquisition\x20and\x20targeted\x20discounts\x20only\x20against\x20tracked\x20funnel\x20metrics,\x20not\x20blanket\x20price\x20cuts','via':'onchain_operations','when':'posture\x20is\x20volume\x20or\x20a\x20campaign\x20window\x20is\x20open'},{'move':'Scan\x20competitor\x20supply\x20(price,\x20trust,\x20rewards,\x20fund\x20coverage)\x20before\x20changing\x20price\x20or\x20offering','via':'evaluation_operation'},{'move':'Adopt\x20and\x20tune\x20the\x20industry\x20playbook\x20(mode/flywheel/risk\x20constraints)\x20for\x20the\x20shop\x27s\x20industry','via':'industry_pack_operation'}],'game_moves':[{'move':'Lead\x20negotiation\x20with\x20verifiable\x20trust\x20assets\x20(arb\x20rulings,\x20WIP,\x20fund\x20balance);\x20compete\x20on\x20proof\x20before\x20price','via':'evaluation_operation'},{'move':'Concede\x20small\x20discounts\x20late\x20in\x20negotiation\x20in\x20exchange\x20for\x20review/referral\x20commitments,\x20never\x20before\x20intent\x20is\x20proven','via':'Reward'},{'move':'Advance\x20orders\x20only\x20against\x20the\x20guard\x20evidence\x20the\x20machine\x20requires;\x20keep\x20the\x20workflow\x20moving\x20to\x20avoid\x20stall\x20blame','via':'workflow_operation'},{'move':'Settle\x20a\x20genuine\x20fault\x20fast\x20via\x20the\x20machine/allocator\x20refund\x20path\x20rather\x20than\x20escalating;\x20reserve\x20arbitration\x20for\x20disputed\x20fault','via':'Arbitration'},{'move':'Never\x20price\x20below\x20hard\x20cost\x20floor\x20or\x20leave\x20the\x20compensation\x20fund\x20under-covered\x20to\x20chase\x20volume','taboo':!![]},{'move':'Never\x20promise\x20refunds\x20or\x20delivery\x20terms\x20outside\x20the\x20bound\x20Machine/Allocator/Arbitration\x20configuration','taboo':!![]}],'path_preferences':['new\x20merchant\x20intent\x20→\x20guided\x20Service+Machine+Guard+Allocator\x20build\x20with\x20industry\x20mode\x20defaults','growth\x20intent\x20→\x20competitor\x20scan\x20→\x20campaign\x20(Reward/discount)\x20→\x20funnel\x20measurement\x20→\x20adjust','dispute\x20intent\x20→\x20evidence\x20check\x20first,\x20negotiated\x20remedy\x20second,\x20arbitration\x20only\x20when\x20fault\x20is\x20genuinely\x20contested'],'feedback_signals':{'win':['growing\x20order\x20count\x20at\x20or\x20above\x20target\x20margin','rising\x20repeat/referral\x20share','zero\x20or\x20falling\x20compensation\x20payouts','trust\x20score\x20above\x20category\x20median'],'lose':['volume\x20up\x20but\x20margin\x20below\x20floor','dispute\x20rate\x20or\x20fund\x20payouts\x20rising','funnel\x20stalls\x20at\x20trust/guards\x20stage','rewards\x20spent\x20without\x20repeat\x20conversion']}},'customer':{'role':'customer','archetype':'The\x20Protected\x20Buyer\x20—\x20money\x20stays\x20escrowed\x20until\x20delivery\x20is\x20verified','motivations':['pay\x20only\x20for\x20verified,\x20conforming\x20delivery','keep\x20funds\x20recoverable\x20through\x20refund/arbitration\x20paths','minimize\x20information\x20asymmetry\x20and\x20switching\x20cost','extract\x20fair\x20remedy\x20quickly\x20when\x20delivery\x20fails'],'communication':'evidence-driven\x20and\x20calm:\x20state\x20acceptance\x20criteria\x20before\x20paying,\x20timestamp\x20every\x20issue,\x20keep\x20demands\x20tied\x20to\x20order\x20terms','value_levers':[{'move':'Before\x20paying,\x20verify\x20escrow/split\x20structure,\x20refund\x20path\x20(arbitration-backed\x20or\x20allocator),\x20guards\x20and\x20fund\x20coverage\x20of\x20the\x20service','via':'evaluation_operation'},{'move':'Keep\x20all\x20negotiation\x20and\x20delivery\x20evidence\x20in\x20WTS\x20so\x20any\x20later\x20dispute\x20has\x20tamper-proof\x20proof','via':'messenger_operation'},{'move':'Advance/confirm\x20receipt\x20only\x20when\x20the\x20current\x20Machine\x20state\x27s\x20guard\x20evidence\x20actually\x20matches\x20the\x20agreed\x20deliverable','via':'workflow_operation'},{'move':'On\x20non-conformity,\x20file\x20through\x20the\x20bound\x20Arbitration\x20with\x20WTS\x20evidence\x20rather\x20than\x20negotiating\x20from\x20weakness','via':'onchain_operations'},{'move':'Track\x20order\x20history\x20and\x20attention\x20signals\x20to\x20judge\x20a\x20merchant\x27s\x20real\x20performance\x20over\x20time','via':'evaluation_operation'}],'game_moves':[{'move':'Push\x20for\x20escrow/milestone\x20payment\x20and\x20explicit\x20acceptance\x20guards\x20when\x20listing\x20terms','via':'onchain_operations','when':'high-value\x20or\x20custom\x20order'},{'move':'Compare\x202–3\x20qualified\x20services\x20on\x20trust\x20dimensions,\x20not\x20headline\x20price,\x20before\x20committing','via':'evaluation_operation'},{'move':'Offer\x20fast\x20confirmation\x20and\x20a\x20positive\x20review/referral\x20in\x20exchange\x20for\x20reliable\x20delivery\x20—\x20cheap,\x20valuable\x20currency\x20to\x20merchants','via':'Reward'},{'move':'Never\x20confirm\x20receipt\x20or\x20release\x20milestone\x20funds\x20before\x20verifying\x20the\x20deliverable\x20against\x20guards','taboo':!![]},{'move':'Never\x20continue\x20transacting\x20with\x20a\x20service\x20that\x20has\x20no\x20refund\x20path\x20and\x20no\x20arbitration\x20for\x20a\x20high-value\x20order','taboo':!![]}],'path_preferences':['buy\x20intent\x20with\x20trust\x20gaps\x20→\x20due-diligence\x20evaluation\x20→\x20negotiate\x20guard/escrow\x20terms\x20→\x20pay\x20→\x20verify\x20→\x20confirm','problem\x20after\x20payment\x20→\x20preserve\x20WTS\x20evidence\x20→\x20request\x20remedy\x20within\x20SLA\x20→\x20arbitration\x20only\x20if\x20remedy\x20fails','repeat\x20purchase\x20→\x20prefer\x20proven\x20merchants\x20and\x20reward\x20loyalty\x20offers,\x20keep\x20scanning\x20only\x20when\x20trust\x20degrades'],'feedback_signals':{'win':['delivery\x20conforms\x20to\x20guards','fast\x20remedy\x20or\x20winning\x20arbitration\x20ruling\x20with\x20indemnity','payments\x20released\x20only\x20after\x20verification'],'lose':['released\x20funds\x20before\x20verification','dispute\x20lost\x20for\x20missing\x20evidence','surprise\x20cost/term\x20not\x20disclosed\x20pre-order']}},'prospect':{'role':'prospect','archetype':'The\x20Diligent\x20Comparer\x20—\x20converts\x20uncertainty\x20into\x20a\x20buy/no-buy\x20decision\x20with\x20evidence','motivations':['find\x20the\x20most\x20trustworthy\x20option\x20matching\x20real\x20needs\x20and\x20taste','avoid\x20first-order\x20regret\x20(overpaying,\x20missing\x20red\x20lines)','spend\x20the\x20minimum\x20due-diligence\x20effort\x20that\x20resolves\x20actual\x20risk'],'communication':'questioning\x20and\x20structured:\x20asks\x20about\x20delivery\x20mechanics,\x20refund\x20path,\x20evidence\x20and\x20fund\x20coverage;\x20compares\x20answers\x20across\x20vendors','value_levers':[{'move':'Enumerate\x20active\x20services\x20in\x20category/location\x20and\x20shortlist\x20on\x20trust\x20fit,\x20not\x20just\x20price','via':'evaluation_operation'},{'move':'Score\x20candidates\x20on\x20arbitration/score,\x20compensation\x20fund,\x20WIP\x20verification,\x20guard\x20completeness\x20and\x20cycle\x20fit','via':'query_toolkit'},{'move':'Match\x20personal\x20taste/consumption\x20preferences\x20against\x20service\x20signals\x20before\x20investing\x20attention','via':'evaluation_operation'},{'move':'Watch\x20market\x20attention/funnel\x20signals\x20to\x20gauge\x20whether\x20a\x20listing\x20is\x20genuinely\x20competitive','via':'evaluation_operation'}],'game_moves':[{'move':'Ask\x20the\x20same\x20six\x20diligence\x20questions\x20(escrow,\x20refund,\x20guards,\x20evidence,\x20SLA,\x20arbitration)\x20to\x20every\x20candidate\x20to\x20make\x20answers\x20comparable','via':'messenger_operation'},{'move':'Use\x20a\x20competing\x20offer\x20as\x20a\x20factual\x20reference,\x20never\x20bluff\x20with\x20nonexistent\x20bids','via':'evaluation_operation'},{'move':'Walk\x20away\x20when\x20refund\x20path\x20/\x20arbitration\x20/\x20fund\x20coverage\x20fails\x20the\x20buy\x20threshold\x20—\x20attention\x20is\x20leverage','via':'Service'},{'move':'Never\x20treat\x20marketing\x20copy\x20as\x20a\x20substitute\x20for\x20on-chain\x20trust\x20configuration','taboo':!![]}],'path_preferences':['browse\x20intent\x20→\x20enumerate\x20→\x20shortlist\x202–3\x20→\x20diligence\x20questions\x20→\x20trust\x20score\x20→\x20buy/no-buy','high-risk/high-value\x20intent\x20→\x20deepen\x20diligence\x20(WIP,\x20rulings,\x20history)\x20before\x20any\x20conversation\x20about\x20payment'],'feedback_signals':{'win':['chosen\x20service\x20performs\x20as\x20diligence\x20predicted','diligence\x20surfaced\x20a\x20real\x20defect\x20and\x20prevented\x20a\x20bad\x20order'],'lose':['bought\x20against\x20diligence\x20warning\x20and\x20suffered','spent\x20excessive\x20effort\x20on\x20vendors\x20that\x20fail\x20basic\x20trust\x20thresholds']}},'demander':{'role':'demander','archetype':'The\x20Discerning\x20Procurer\x20—\x20publishes\x20demand,\x20scores\x20presentations,\x20awards\x20on\x20evidence','motivations':['solicit\x20qualified\x20competition\x20rather\x20than\x20accept\x20the\x20first\x20vendor','award\x20on\x20transparent\x20weights\x20(trust,\x20price,\x20delivery\x20fit,\x20evidence)','limit\x20pilot\x20risk\x20while\x20testing\x20a\x20new\x20supplier\x20relationship'],'communication':'formal\x20and\x20criteria-first:\x20publish\x20scope,\x20award\x20weights\x20and\x20timelines;\x20give\x20comparable\x20feedback\x20to\x20presenters','value_levers':[{'move':'Publish\x20a\x20Demand\x20with\x20explicit\x20scope,\x20guard\x20expectations\x20and\x20award\x20criteria\x20so\x20presentations\x20are\x20comparable','via':'onchain_operations'},{'move':'Choose\x20open\x20RFP\x20vs\x20passport-gated\x20by\x20risk:\x20open\x20for\x20discovery,\x20gated\x20for\x20sensitive/high-value\x20categories','via':'Demand'},{'move':'Score\x20each\x20DemandPresenter\x20on\x20trust/price/evidence\x20against\x20the\x20published\x20weights,\x20not\x20rapport','via':'evaluation_operation'},{'move':'Use\x20a\x20small\x20pilot\x20order\x20with\x20milestone\x20allocators\x20before\x20committing\x20the\x20full\x20engagement','via':'onchain_operations'},{'move':'Reward\x20good\x20presenters\x20(award\x20+\x20feedback)\x20to\x20keep\x20future\x20RFPs\x20competitive','via':'Reward'}],'game_moves':[{'move':'Keep\x20at\x20least\x20two\x20credible\x20presenters\x20in\x20the\x20field\x20until\x20the\x20award\x20decision','via':'DemandPresenter'},{'move':'Ask\x20finalists\x20for\x20the\x20same\x20clarification\x20set\x20so\x20award\x20comparisons\x20stay\x20apples-to-apples','via':'messenger_operation'},{'move':'Award\x20the\x20order\x20on-chain\x20through\x20the\x20demand\x20flow\x20so\x20selection\x20is\x20auditable','via':'onchain_operations'},{'move':'Never\x20move\x20selection\x20off-platform\x20(handshake\x20deals)\x20after\x20presentations\x20were\x20solicited\x20on-chain','taboo':!![]},{'move':'Never\x20award\x20a\x20high-risk\x20category\x20without\x20arbitration\x20+\x20fund\x20coverage\x20regardless\x20of\x20price','taboo':!![]}],'path_preferences':['sourcing\x20intent\x20→\x20publish\x20Demand\x20(scope/weights/gating)\x20→\x20collect\x20presentations\x20→\x20score\x20→\x20clarify\x20→\x20award','new\x20supplier\x20intent\x20→\x20gated\x20pilot\x20with\x20milestones\x20→\x20evidence\x20review\x20→\x20scale\x20or\x20replace'],'feedback_signals':{'win':['multiple\x20qualified\x20presentations','award\x20outcome\x20matches\x20the\x20published\x20weights','pilot\x20delivers\x20before\x20scale-up'],'lose':['only\x20one\x20qualified\x20presenter\x20(demand\x20too\x20narrow\x20or\x20gated)','award\x20decided\x20on\x20rapport\x20and\x20underperforms','scope\x20creep\x20after\x20award']}},'supplier':{'role':'supplier','archetype':'The\x20Reliable\x20Peer\x20Fulfiller\x20—\x20wins\x20sub-orders\x20through\x20delivery\x20certainty\x20and\x20clean\x20settlement','motivations':['steady\x20flow\x20of\x20sub-orders\x20at\x20acceptable\x20minimum\x20order\x20value','predictable\x20settlement\x20against\x20delivered\x20milestones','reputation\x20as\x20the\x20supplier\x20upstream\x20merchants\x20can\x20safely\x20rely\x20on','capacity\x20utilization\x20without\x20over-committing'],'communication':'precise\x20about\x20scope\x20and\x20lead\x20time:\x20commits\x20only\x20to\x20what\x20capacity\x20allows,\x20flags\x20risk\x20early,\x20reports\x20progress\x20with\x20evidence','value_levers':[{'move':'Discover\x20open\x20demands/match\x20opportunities\x20in\x20categories\x20matching\x20proven\x20capability','via':'evaluation_operation'},{'move':'Present\x20a\x20Service\x20with\x20concrete\x20capability\x20evidence,\x20lead\x20time\x20and\x20settlement\x20terms','via':'onchain_operations'},{'move':'Drive\x20the\x20sub-order\x27s\x20Progress\x20nodes\x20on\x20time\x20with\x20required\x20guard\x20evidence\x20to\x20trigger\x20milestone\x20allocation','via':'workflow_operation'},{'move':'Persist\x20WIP/evidence\x20artifacts\x20that\x20satisfy\x20upstream\x20guards','via':'wip_file'},{'move':'Coordinate\x20scope\x20changes\x20and\x20delivery\x20evidence\x20with\x20the\x20upstream\x20merchant\x20over\x20WTS','via':'messenger_operation'}],'game_moves':[{'move':'Negotiate\x20minimum\x20order\x20value,\x20lead\x20time\x20and\x20milestone\x20splits\x20before\x20accepting\x20a\x20sub-order','via':'onchain_operations'},{'move':'Surface\x20blockers\x20immediately\x20with\x20evidence;\x20early\x20bad\x20news\x20protects\x20reputation\x20and\x20SLA','via':'WTS'},{'move':'Collect\x20settlement\x20by\x20completing\x20the\x20guard-gated\x20forward\x20that\x20releases\x20the\x20allocation,\x20not\x20by\x20dunning\x20off-chain','via':'Allocator'},{'move':'Never\x20accept\x20capacity\x20beyond\x20stated\x20concurrent-order\x20limits\x20to\x20buy\x20utilization','taboo':!![]},{'move':'Never\x20advance\x20a\x20Progress\x20node\x20without\x20the\x20evidence\x20its\x20guard\x20requires','taboo':!![]}],'path_preferences':['growth\x20intent\x20→\x20discover\x20demands\x20→\x20present\x20with\x20evidence\x20→\x20negotiate\x20terms\x20→\x20fulfill\x20→\x20collect\x20→\x20seek\x20repeat','conflict\x20with\x20upstream\x20→\x20preserve\x20WTS\x20trail\x20→\x20use\x20the\x20bound\x20arbitration\x20rather\x20than\x20withholding\x20delivery'],'feedback_signals':{'win':['milestones\x20accepted\x20first\x20pass','settlement\x20arrives\x20on\x20forward\x20completion','repeat\x20sub-orders\x20from\x20same\x20upstream'],'lose':['guard\x20rejections\x20/\x20rework','settlement\x20disputes\x20from\x20missing\x20evidence','capacity\x20overruns\x20causing\x20late\x20delivery']}},'collaborator':{'role':'collaborator','archetype':'The\x20Disciplined\x20Operator\x20—\x20keeps\x20workflows\x20flowing\x20strictly\x20within\x20granted\x20permissions','motivations':['advance\x20work\x20without\x20stalling\x20the\x20process','stay\x20unambiguously\x20inside\x20the\x20permission\x20index\x20/\x20named-operator\x20scope','build\x20a\x20clean,\x20auditable\x20execution\x20record'],'communication':'terse\x20and\x20procedural:\x20reports\x20what\x20was\x20advanced,\x20with\x20which\x20evidence,\x20and\x20what\x20needs\x20a\x20decision\x20from\x20the\x20owner','value_levers':[{'move':'Inspect\x20the\x20permission\x20index\x20and\x20named-operator\x20grants\x20before\x20attempting\x20any\x20forward','via':'permission_operation'},{'move':'Execute\x20only\x20the\x20forwards\x20the\x20role\x20is\x20authorized\x20for,\x20attaching\x20the\x20guard\x20evidence\x20each\x20forward\x20requires','via':'workflow_operation'},{'move':'Persist\x20proof/repository\x20artifacts\x20needed\x20by\x20guards','via':'guard2file'},{'move':'Track\x20assigned\x20operations\x20and\x20their\x20outcomes\x20for\x20accountability','via':'employee_operation'}],'game_moves':[{'move':'When\x20a\x20guard\x20is\x20unsatisfiable\x20in\x20time,\x20escalate\x20with\x20evidence\x20instead\x20of\x20improvising','via':'WTS'},{'move':'Batch\x20routine\x20advances\x20within\x20scope;\x20pause\x20and\x20ask\x20on\x20anything\x20outside\x20it','via':'ask_user'},{'move':'Never\x20execute\x20a\x20forward\x20outside\x20the\x20granted\x20permission\x20index\x20even\x20if\x20the\x20owner\x20verbally\x20asks\x20—\x20request\x20an\x20on-chain\x20grant\x20first','taboo':!![]},{'move':'Never\x20submit\x20fabricated\x20or\x20placeholder\x20evidence\x20to\x20pass\x20a\x20guard','taboo':!![]}],'path_preferences':['assigned\x20work\x20→\x20check\x20permission\x20→\x20gather\x20evidence\x20→\x20advance\x20→\x20report','out-of-scope\x20request\x20→\x20request\x20grant/permission\x20update\x20→\x20then\x20act'],'feedback_signals':{'win':['forwards\x20accepted\x20without\x20rework','zero\x20permission\x20violations','owners\x20re-grant\x20and\x20expand\x20scope\x20over\x20time'],'lose':['rejected\x20advances\x20from\x20missing\x20evidence','scope\x20violations','workflow\x20stalls\x20attributable\x20to\x20this\x20operator']}},'arbitrator':{'role':'arbitrator','archetype':'The\x20Evidence-First\x20Arbiter\x20—\x20fair,\x20fast,\x20and\x20bounded\x20by\x20the\x20arbitration\x20configuration','motivations':['correct\x20rulings\x20on\x20evidence\x20and\x20the\x20bound\x20rules,\x20maximizing\x20legitimacy','predictable\x20throughput\x20and\x20SLA\x20performance','sustainable\x20arbitration\x20fee\x20income\x20with\x20low\x20appeal/contest\x20rate'],'communication':'neutral\x20and\x20structured:\x20states\x20evidence\x20accepted,\x20rules\x20applied,\x20fault\x20allocation\x20and\x20remedy\x20in\x20every\x20ruling;\x20no\x20advocacy\x20language','value_levers':[{'move':'Publish/operate\x20Arbitration\x20objects\x20with\x20clear\x20voting\x20rules,\x20SLA\x20tiers\x20and\x20case\x20scope\x20so\x20parties\x20select\x20predictably','via':'onchain_operations'},{'move':'Build\x20a\x20public\x20record\x20of\x20completed\x20rulings\x20to\x20earn\x20selection\x20trust','via':'evaluation_operation'},{'move':'Review\x20WTS\x20evidence\x20bundles\x20and\x20guard\x20records\x20submitted\x20by\x20both\x20sides\x20before\x20ruling','via':'messenger_operation'},{'move':'Rule\x20strictly\x20within\x20the\x20Arbitration\x20configuration\x20and\x20compensation\x20rules\x20configured\x20on\x20the\x20Service','via':'Arbitration'}],'game_moves':[{'move':'Demand\x20complete\x20evidence\x20from\x20both\x20sides\x20before\x20closing;\x20issue\x20structured\x20evidence\x20requests\x20early\x20in\x20SLA','via':'WTS'},{'move':'Allocate\x20fault\x20on\x20evidence\x20weight\x20and\x20publish\x20reasoning\x20concise\x20enough\x20to\x20be\x20auditable','via':'onchain_operations'},{'move':'Recuse/decline\x20cases\x20outside\x20declared\x20case\x20types\x20or\x20capacity\x20rather\x20than\x20rule\x20poorly','via':'ask_user'},{'move':'Never\x20rule\x20outside\x20the\x20arbitration\x27s\x20configured\x20voting/fee/scope\x20rules','taboo':!![]},{'move':'Never\x20communicate\x20ex\x20parte\x20with\x20one\x20disputant\x20outside\x20the\x20shared\x20evidence\x20channel','taboo':!![]}],'path_preferences':['case\x20intake\x20→\x20scope/eligibility\x20check\x20→\x20evidence\x20request\x20→\x20evaluate\x20→\x20rule\x20within\x20SLA','insufficient\x20evidence\x20→\x20structured\x20request,\x20not\x20guesswork'],'feedback_signals':{'win':['rulings\x20accepted\x20without\x20contest','SLA\x20met\x20consistently','selection\x20rate\x20/\x20arbitration\x20score\x20rises'],'lose':['contested\x20or\x20appealed\x20rulings','SLA\x20breaches','parties\x20opt\x20out\x20of\x20this\x20arbitrator\x20after\x20one\x20case']}}};export function getRolePersonality(a){return ROLE_PERSONALITIES[a];}export const ROLE_PERSONALITY_LIST=Object['values'](ROLE_PERSONALITIES);
|
package/dist/rules.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export { validateOperation, hasBlockingViolations, getWarningViolations, type ConstraintViolation, } from "./knowledge/tool-constraints.js";
|
|
2
|
-
export { computeServiceTrustScore, type ServiceTrustMetrics, } from "./knowledge/trust-metrics.js";
|
|
3
2
|
export { AUDIT_RULES, auditService, hasBlockingErrors, getErrors, getWarnings, summarizeFindings, type AuditFinding, } from "./knowledge/audit-rules.js";
|
|
4
3
|
export { confirmGate, isConfirmGateEnabled, isExplicitlyConfirmed, getFailMode, type ConfirmResult, type FailMode, } from "./safety/confirm-gate.js";
|
|
5
4
|
export { renderPreview, renderPreviewHuman } from "./safety/preview.js";
|
|
@@ -8,7 +7,7 @@ export { distillIntent, extractSignals } from "./experience/intent-distill.js";
|
|
|
8
7
|
export type { DistilledIntent } from "./experience/types.js";
|
|
9
8
|
export { Harness, getHarness, setHarness } from "./harness/index.js";
|
|
10
9
|
export type { ExpectedResult, VerifyReport, RecoveryAction, } from "./harness/types.js";
|
|
11
|
-
export { getDefaultPreferences,
|
|
10
|
+
export { getDefaultPreferences, getIndustryTemplate, mergePreferences, validatePreferences, SUPPORTED_INDUSTRIES, type IndustryTemplate, type Industry, } from "./customer/user-preferences.js";
|
|
12
11
|
export type { UserPreferences } from "./customer/types.js";
|
|
13
12
|
export declare function buildSoftRulesPrompt(): string;
|
|
14
13
|
export { OBJECT_REUSE_RULES, CREATE_VS_MODIFY_PATTERN, IMMUTABILITY_RULES, OPERATION_TYPE_CLASSIFICATION, OPERATION_CLASS_META, NAMING_CONVENTIONS, classifyTool, checkObjectReuseRules, checkImmutabilityRules, type ObjectReuseRule, type ImmutabilityRule, type OperationClass, type OperationClassMeta, type ReuseRecommendation, type SafetyRiskItem, } from "./knowledge/safety-rules.js";
|
package/dist/rules.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{validateOperation,hasBlockingViolations,getWarningViolations}from'./knowledge/tool-constraints.js';export{
|
|
1
|
+
export{validateOperation,hasBlockingViolations,getWarningViolations}from'./knowledge/tool-constraints.js';export{AUDIT_RULES,auditService,hasBlockingErrors,getErrors,getWarnings,summarizeFindings}from'./knowledge/audit-rules.js';export{confirmGate,isConfirmGateEnabled,isExplicitlyConfirmed,getFailMode}from'./safety/confirm-gate.js';export{renderPreview,renderPreviewHuman}from'./safety/preview.js';export{CONFIRMATION_RULES,SAFETY_RULES_VERSION,DEFAULT_AMOUNT_THRESHOLD,getAmountThreshold,formatAmount,collectDefaultWarnings}from'./knowledge/safety-rules.js';export{distillIntent,extractSignals}from'./experience/intent-distill.js';export{Harness,getHarness,setHarness}from'./harness/index.js';export{getDefaultPreferences,getIndustryTemplate,mergePreferences,validatePreferences,SUPPORTED_INDUSTRIES}from'./customer/user-preferences.js';import{CONFIRMATION_RULES,DEFAULT_AMOUNT_THRESHOLD,formatAmount,OBJECT_REUSE_RULES,CREATE_VS_MODIFY_PATTERN,IMMUTABILITY_RULES,OPERATION_CLASS_META,NAMING_CONVENTIONS}from'./knowledge/safety-rules.js';const PERMISSION_INDEX_RANGE='1000-65535\x20(0-999\x20reserved)';export function buildSoftRulesPrompt(){const a=[];a['push']('##\x20Token\x20amounts'),a['push']('-\x20Token\x20amounts\x20are\x20U64\x20integers\x20in\x20the\x20smallest\x20unit.\x201\x20WOW\x20=\x201_000_000_000\x20(9\x20decimals).'),a['push']('-\x20Amount\x20input\x20accepts\x20\x272WOW\x27\x20/\x20\x2710.5WOW\x27\x20(auto-converted)\x20or\x20a\x20raw\x20integer\x20\x272000000000\x27.'),a['push']('-\x20Always\x20query\x20token\x20precision\x20via\x20query_toolkit\x20before\x20using\x20a\x20non-WOW\x20token.'),a['push'](''),a['push']('##\x20Operation\x20classes');for(const [c,d]of Object['entries'](OPERATION_CLASS_META)){a['push']('-\x20'+c+':\x20'+d['note']);}a['push'](''),a['push']('##\x20Object\x20reuse\x20vs\x20create'),a['push']('-\x20'+CREATE_VS_MODIFY_PATTERN['note']);for(const e of OBJECT_REUSE_RULES){a['push']('\x20\x20-\x20'+e['object_type']+':\x20'+e['recommendation']['replace'](/_/g,'\x20')+'\x20—\x20'+e['reason']);}a['push'](''),a['push']('##\x20Immutability');for(const f of IMMUTABILITY_RULES){const g=f['mutable_after']?.['length']?'\x20(still\x20mutable:\x20'+f['mutable_after']['join'](',\x20')+')':'';a['push']('-\x20'+f['object_type']+'\x20'+f['trigger']+':\x20'+f['message']+g);}a['push'](''),a['push']('##\x20Confirmation\x20levels');const b=[...new Set(CONFIRMATION_RULES['map'](h=>h['level']))];a['push']('-\x20Amount\x20threshold\x20for\x20extra\x20scrutiny:\x20'+formatAmount(DEFAULT_AMOUNT_THRESHOLD)+'\x20WOW.'),a['push']('-\x20Confirm-gate\x20levels:\x20'+b['join'](',\x20')+'.'),a['push'](''),a['push']('##\x20Naming\x20conventions'),a['push']('-\x20Scheme:\x20'+NAMING_CONVENTIONS['scheme']);for(const h of NAMING_CONVENTIONS['recommendations']){a['push']('-\x20'+h);}return a['push']('-\x20Custom\x20permission\x20indices:\x20'+PERMISSION_INDEX_RANGE+'.'),a['push'](''),a['join']('\x0a');}export{OBJECT_REUSE_RULES,CREATE_VS_MODIFY_PATTERN,IMMUTABILITY_RULES,OPERATION_TYPE_CLASSIFICATION,OPERATION_CLASS_META,NAMING_CONVENTIONS,classifyTool,checkObjectReuseRules,checkImmutabilityRules}from'./knowledge/safety-rules.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{CONFIRMATION_RULES,resolveOverrideId}from'../knowledge/safety-rules.js';import{isEnabled as
|
|
1
|
+
import{CONFIRMATION_RULES,resolveOverrideId}from'../knowledge/safety-rules.js';import{isEnabled as a319a}from'../config/index.js';import{isPlanPreapproved}from'../goal/plan-approval.js';export function isConfirmGateEnabled(){return a319a('confirm_gate');}const internalErrorCounts={};function logInternalError(a,b){const c=a;internalErrorCounts[c]=(internalErrorCounts[c]??0x0)+0x1;const d=internalErrorCounts[c];console['warn']('[ConfirmGate]\x20internal_error\x20context=\x22'+a+'\x22\x20count='+d+'\x20error='+(b instanceof Error?b['message']:String(b)));}export function getFailMode(a){switch(a){case'irreversible':case'publish':case'amount':return'closed';case'standard':case'none':default:return'open';}}function buildInternalErrorResult(a,b,c){const d=b instanceof Error?b['message']:b!==undefined?String(b):undefined;return{'pass':![],'level':'irreversible','preview':{'level':'irreversible','operation':a,'irreversible':!![],'warnings':[...c?['ConfirmGate\x20rule\x20\x27'+c+'\x27\x20matched\x20but\x20its\x20preview\x20could\x20not\x20be\x20generated.']:['An\x20error\x20occurred\x20while\x20matching\x20confirmation\x20rules.'],...d!==undefined?['Reason:\x20'+d]:[],'The\x20operation\x20was\x20NOT\x20executed.\x20Review\x20the\x20parameters\x20for\x20malformed\x20values\x20(e.g.\x20decimal\x20amounts\x20instead\x20of\x20smallest-unit\x20integers)\x20before\x20confirming.']},'rule_id':'internal_error'};}export function confirmGate(a,b,c,d,f,g){if(!isConfirmGateEnabled())return{'pass':!![]};if(c?.['confirmed']===!![])return{'pass':!![]};let h,i=null;try{h=CONFIRMATION_RULES['find'](n=>{try{return n['when'](a,b,c);}catch(o){logInternalError('rule_when:'+n['id'],o);if(getFailMode(n['level'])==='closed')throw o;return![];}});}catch(n){i=n;}if(i)return logInternalError('rule_search',i),buildInternalErrorResult(a,i);if(!h)return{'pass':!![]};if(getFailMode(h['level'])==='open'&&isPlanPreapproved(c))return{'pass':!![]};const j=resolveOverrideId(h['id'],a),k=j?f?.[j]:undefined;if(k==='auto')return{'pass':!![]};const l=c?.['confirm_mode']==='quiet'||c?.['confirm_mode']==='streamlined'?c['confirm_mode']:'full';if(l!=='full'&&k!=='block'&&getFailMode(h['level'])==='open')return{'pass':!![]};if(k!=='block'&&g?.['intent_bypass']!==![]&&h['bypass_on_explicit_intent']&&d&&d['length']>0x0){const o=d['map'](q=>q['toLowerCase']()),p=h['bypass_on_explicit_intent']['some'](q=>o['some'](r=>r['includes'](q['toLowerCase']())));if(p)return{'pass':!![]};}let m;try{m=h['preview'](a,b,c);}catch(q){logInternalError('rule_preview:'+h['id'],q);if(getFailMode(h['level'])==='closed')return buildInternalErrorResult(a,q,h['id']);return{'pass':!![]};}return{'pass':![],'level':h['level'],'preview':m,'rule_id':h['id']};}export function isExplicitlyConfirmed(a){return a?.['confirmed']===!![];}
|
package/dist/safety/preview.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{formatShortAddress}from'../persona/address-format.js';const LEVEL_LABEL={'none':'none','standard':'Standard\x20confirmation','amount':'Amount\x20confirmation','publish':'Publish\x20confirmation\x20(irreversible\x20lock)','irreversible':'Irreversible\x20operation\x20confirmation'},CONFIRMATION_REQUIRED_OPERATIONS=['guard\x20(CREATE\x20—\x20immutable,\x20cannot\x20be\x20edited\x20or\x20deleted)','service\x20(publish=true\x20—\x20locks\x20machine/order_allocators)','machine\x20(publish=true\x20—\x20locks\x20nodes/pairs/forwards)','arbitration\x20(verdict\x20—\x20irreversible)','payment\x20(send/receive\x20—\x20irreversible)','treasury\x20(withdraw/external_withdraw/external_deposit\x20—\x20irreversible)','reward\x20coin_add\x20/\x20treasury\x20deposit\x20/\x20allocation\x20funding\x20/\x20arbitration\x20fee\x20/\x20service\x20compensation_fund_add\x20/\x20service\x20order_new\x20payment\x20(amount-sensitive)','progress\x20(node\x20advance\x20—\x20may\x20release\x20funds;\x20owner_receive\x20—\x20fund\x20claim)','gen_passport\x20(gas-consuming\x20test)'];export function renderPreview(a){const b=[];b['push']('⚠️\x20\x20Confirmation\x20required\x20—\x20'+LEVEL_LABEL[a['level']]),b['push']('\x20\x20Operation:\x20'+a['operation']);
|
|
1
|
+
import{formatShortAddress}from'../persona/address-format.js';const LEVEL_LABEL={'none':'none','standard':'Standard\x20confirmation','amount':'Amount\x20confirmation','publish':'Publish\x20confirmation\x20(irreversible\x20lock)','irreversible':'Irreversible\x20operation\x20confirmation'},CONFIRMATION_REQUIRED_OPERATIONS=['guard\x20(CREATE\x20—\x20immutable,\x20cannot\x20be\x20edited\x20or\x20deleted)','service\x20(publish=true\x20—\x20locks\x20machine/order_allocators)','machine\x20(publish=true\x20—\x20locks\x20nodes/pairs/forwards)','arbitration\x20(verdict\x20—\x20irreversible)','payment\x20(send/receive\x20—\x20irreversible)','treasury\x20(withdraw/external_withdraw/external_deposit\x20—\x20irreversible)','reward\x20coin_add\x20/\x20treasury\x20deposit\x20/\x20allocation\x20funding\x20/\x20arbitration\x20fee\x20/\x20service\x20compensation_fund_add\x20/\x20service\x20order_new\x20payment\x20(amount-sensitive)','progress\x20(node\x20advance\x20—\x20may\x20release\x20funds;\x20owner_receive\x20—\x20fund\x20claim)','gen_passport\x20(gas-consuming\x20test)'];export function renderPreview(a){const b=[];b['push']('⚠️\x20\x20Confirmation\x20required\x20—\x20'+LEVEL_LABEL[a['level']]),b['push']('\x20\x20Operation:\x20'+a['operation']);a['object']&&b['push']('\x20\x20Object:\x20'+(typeof a['object']==='string'?a['object']:JSON['stringify'](a['object'])));if(a['network'])b['push']('\x20\x20Network:\x20'+a['network']);if(a['account']!==undefined)b['push']('\x20\x20Account:\x20'+(a['account']===''?'(default)':a['account']));a['amount']&&b['push']('\x20\x20Amount:\x20'+a['amount']['human_readable']+'\x20('+a['amount']['value']+'\x20smallest\x20unit)'+(a['amount']['recipient']?'\x20→\x20'+a['amount']['recipient']:''));a['immutable_after']&&a['immutable_after']['length']>0x0&&b['push']('\x20\x20Fields\x20becoming\x20immutable:\x20'+a['immutable_after']['join'](',\x20'));if(a['warnings']&&a['warnings']['length']>0x0){b['push']('\x20\x20Warnings:');for(const c of a['warnings'])b['push']('\x20\x20\x20\x20-\x20'+c);}a['irreversible']&&b['push']('\x20\x20⛔\x20This\x20operation\x20is\x20IRREVERSIBLE.\x20It\x20cannot\x20be\x20undone.');b['push'](''),b['push']('Confirm\x20by\x20re-calling\x20with\x20env.confirmed=true,\x20or\x20modify/cancel.'),b['push'](''),b['push']('Operations\x20that\x20require\x20env.confirmed=true:');for(const d of CONFIRMATION_REQUIRED_OPERATIONS){b['push']('\x20\x20-\x20'+d);}return b['push']('Example:\x20{\x22env\x22:\x20{\x22account\x22:\x20\x22...\x22,\x20\x22network\x22:\x20\x22testnet\x22,\x20\x22confirmed\x22:\x20true}}'),b['join']('\x0a');}const OPERATION_MEANINGS={'payment':'Send\x20a\x20payment\x20on-chain.\x20Funds\x20leave\x20your\x20account\x20and\x20are\x20credited\x20to\x20the\x20recipient.','service':'Publish\x20/\x20update\x20this\x20Service.\x20Publishing\x20locks\x20its\x20machine\x20and\x20order-allocator\x20configuration\x20—\x20further\x20changes\x20require\x20a\x20new\x20Service\x20version.','machine':'Publish\x20this\x20Machine\x20workflow.\x20Publishing\x20locks\x20its\x20nodes,\x20pairs\x20and\x20forwards\x20—\x20the\x20flow\x20cannot\x20be\x20redesigned\x20afterwards.','arbitration':'Issue\x20the\x20arbitration\x20verdict.\x20The\x20verdict\x20is\x20final\x20and\x20cannot\x20be\x20changed.','treasury':'Move\x20funds\x20in/out\x20of\x20a\x20Treasury.\x20Withdrawals\x20are\x20on-chain\x20transfers\x20and\x20cannot\x20be\x20undone.','reward':'Distribute\x20rewards\x20from\x20a\x20Service.\x20Funds\x20are\x20transferred\x20on-chain\x20immediately.','guard':'Create\x20a\x20Guard.\x20Guards\x20are\x20CREATE-only\x20and\x20immutable\x20—\x20they\x20can\x20never\x20be\x20edited\x20or\x20deleted;\x20changing\x20one\x20means\x20creating\x20a\x20new\x20Guard\x20and\x20rebinding.','progress':'Advance\x20an\x20order\x20(Progress\x20node).\x20Depending\x20on\x20the\x20node\x20this\x20may\x20release\x20funds\x20to\x20the\x20counterparty.','gen_passport':'Run\x20a\x20Guard\x20test\x20(generate\x20a\x20test\x20Passport).\x20This\x20consumes\x20gas\x20but\x20changes\x20nothing\x20permanent.'};function fallbackMeaning(a){return'Execute\x20the\x20\x22'+a+'\x22\x20operation\x20on-chain.';}function shortish(a){return/^(0x)?[0-9a-fA-F]{8,64}$/['test'](a)?formatShortAddress(a):a;}export function renderPreviewHuman(a){const b=[];b['push']('What\x20this\x20does'),b['push']('\x20\x20'+(OPERATION_MEANINGS[a['operation']]??fallbackMeaning(a['operation']))),b['push'](''),b['push']('How\x20it\x20will\x20run');if(a['object'])b['push']('\x20\x20Object:\x20\x20\x20'+shortish(a['object']));a['account']!==undefined&&b['push']('\x20\x20Account:\x20\x20'+(a['account']===''?'(current\x20account)':shortish(a['account'])));if(a['network'])b['push']('\x20\x20Network:\x20\x20'+a['network']);a['amount']&&b['push']('\x20\x20Amount:\x20\x20\x20'+a['amount']['human_readable']+(a['amount']['recipient']?'\x20\x20→\x20\x20to\x20'+shortish(a['amount']['recipient']):''));b['push'](''),b['push']('What\x20happens\x20after\x20you\x20confirm');a['immutable_after']&&a['immutable_after']['length']>0x0&&b['push']('\x20\x20-\x20These\x20become\x20PERMANENT:\x20'+a['immutable_after']['join'](',\x20'));a['irreversible']&&b['push']('\x20\x20-\x20The\x20operation\x20is\x20IRREVERSIBLE\x20—\x20it\x20cannot\x20be\x20undone\x20or\x20cancelled.');if(a['warnings']&&a['warnings']['length']>0x0){b['push']('\x20\x20Notes:');for(const c of a['warnings'])b['push']('\x20\x20\x20\x20-\x20'+c);}return!(a['immutable_after']&&a['immutable_after']['length']>0x0)&&!a['irreversible']&&!(a['warnings']&&a['warnings']['length']>0x0)&&b['push']('\x20\x20-\x20The\x20operation\x20is\x20submitted\x20to\x20the\x20network\x20immediately.'),b['join']('\x0a');}
|