@wowok/agent-mcp 3.4.4 → 3.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. package/dist/.build-stamp.json +3 -3
  2. package/dist/chain-semantics/composition-truth.js +1 -1
  3. package/dist/composition/audit.js +1 -1
  4. package/dist/composition/compile.js +1 -1
  5. package/dist/composition/emit-phases.js +1 -1
  6. package/dist/composition/guard-fill.js +1 -1
  7. package/dist/composition/input-normalize.js +1 -1
  8. package/dist/composition/materialize.js +1 -1
  9. package/dist/composition/mode-gates.js +1 -1
  10. package/dist/composition/param-disclosure.js +1 -1
  11. package/dist/composition/plan-run-store.js +1 -0
  12. package/dist/composition/reflux.js +1 -1
  13. package/dist/composition/role-bindings.js +1 -0
  14. package/dist/composition/shape-expand.js +1 -1
  15. package/dist/composition/supply-chain-emit.js +1 -1
  16. package/dist/config/judgment.d.ts +13 -25
  17. package/dist/config/judgment.js +1 -1
  18. package/dist/config/match-policy-file.js +1 -1
  19. package/dist/config/rule-engine.d.ts +4 -10
  20. package/dist/config/rule-engine.js +1 -1
  21. package/dist/config/template-params.js +1 -1
  22. package/dist/evaluation/engine.js +1 -1
  23. package/dist/experience/realtime-feedback.js +1 -1
  24. package/dist/extensions/capability.js +1 -1
  25. package/dist/graph/onchain/expand.js +1 -1
  26. package/dist/graph/onchain/exposure.js +1 -1
  27. package/dist/harness/forward-roster-preflight.js +1 -0
  28. package/dist/keeper/detectors.js +1 -1
  29. package/dist/knowledge/allocator-rail-verifier.js +1 -1
  30. package/dist/knowledge/arb-operation-face.js +1 -1
  31. package/dist/knowledge/arbitration-rail-verifier.js +1 -1
  32. package/dist/knowledge/audit-rules.d.ts +17 -1
  33. package/dist/knowledge/audit-rules.js +1 -1
  34. package/dist/knowledge/baselines/rules/alloc_audit.json.good.sha256 +1 -0
  35. package/dist/knowledge/baselines/rules/allocation.json.good.sha256 +1 -0
  36. package/dist/knowledge/baselines/rules/arb.json.good.sha256 +1 -0
  37. package/dist/knowledge/baselines/rules/arbitration.json.good.sha256 +1 -0
  38. package/dist/knowledge/baselines/rules/bridge.json.good.sha256 +1 -0
  39. package/dist/knowledge/baselines/rules/contact.json.good.sha256 +1 -0
  40. package/dist/knowledge/baselines/rules/demand.json.good.sha256 +1 -0
  41. package/dist/knowledge/baselines/rules/graph.json.good.sha256 +1 -0
  42. package/dist/knowledge/baselines/rules/guard.json.good.sha256 +1 -0
  43. package/dist/knowledge/baselines/rules/machine.json.good.sha256 +1 -0
  44. package/dist/knowledge/baselines/rules/oracle.json.good.sha256 +1 -0
  45. package/dist/knowledge/baselines/rules/order.json.good.sha256 +1 -0
  46. package/dist/knowledge/baselines/rules/payment.json.good.sha256 +1 -0
  47. package/dist/knowledge/baselines/rules/permission.json.good.sha256 +1 -0
  48. package/dist/knowledge/baselines/rules/personal.json.good.sha256 +1 -0
  49. package/dist/knowledge/baselines/rules/plan.json +153 -33
  50. package/dist/knowledge/baselines/rules/plan.json.good +153 -33
  51. package/dist/knowledge/baselines/rules/plan.json.good.sha256 +1 -0
  52. package/dist/knowledge/baselines/rules/progress.json.good.sha256 +1 -0
  53. package/dist/knowledge/baselines/rules/proof.json.good.sha256 +1 -0
  54. package/dist/knowledge/baselines/rules/registrar.json.good.sha256 +1 -0
  55. package/dist/knowledge/baselines/rules/repository.json.good.sha256 +1 -0
  56. package/dist/knowledge/baselines/rules/resource.json.good.sha256 +1 -0
  57. package/dist/knowledge/baselines/rules/reward.json.good.sha256 +1 -0
  58. package/dist/knowledge/baselines/rules/service.json.good.sha256 +1 -0
  59. package/dist/knowledge/baselines/rules/treasury.json.good.sha256 +1 -0
  60. package/dist/knowledge/baselines/rules/util.json.good.sha256 +1 -0
  61. package/dist/knowledge/builtin-templates.d.ts +1 -1
  62. package/dist/knowledge/builtin-templates.js +1 -1
  63. package/dist/knowledge/discount-threshold.js +1 -1
  64. package/dist/knowledge/fee-param-bindings.js +1 -1
  65. package/dist/knowledge/getting-started.js +1 -1
  66. package/dist/knowledge/guard-binding-table.js +1 -1
  67. package/dist/knowledge/guard-design-patterns.js +1 -1
  68. package/dist/knowledge/guard-templates.d.ts +3 -2
  69. package/dist/knowledge/guard-templates.js +1 -1
  70. package/dist/knowledge/index.js +1 -1
  71. package/dist/knowledge/industry-registry.js +1 -1
  72. package/dist/knowledge/jsonrpc-enum.js +1 -1
  73. package/dist/knowledge/knob-docs.js +1 -1
  74. package/dist/knowledge/machine-topology.js +1 -1
  75. package/dist/knowledge/param-schema.js +1 -1
  76. package/dist/knowledge/param-tiers.js +1 -1
  77. package/dist/knowledge/path-oracle/products/alibaba-1688.js +1 -1
  78. package/dist/knowledge/path-oracle/products/amazon.js +1 -1
  79. package/dist/knowledge/path-oracle/products/booking-com.js +1 -1
  80. package/dist/knowledge/path-oracle/products/contra.js +1 -1
  81. package/dist/knowledge/path-oracle/products/costco.js +1 -1
  82. package/dist/knowledge/path-oracle/products/duoduo-maicai.js +1 -1
  83. package/dist/knowledge/path-oracle/products/etsy.js +1 -1
  84. package/dist/knowledge/path-oracle/products/gamefound.js +1 -1
  85. package/dist/knowledge/path-oracle/products/gofundme.js +1 -1
  86. package/dist/knowledge/path-oracle/products/klook.js +1 -1
  87. package/dist/knowledge/path-oracle/products/ninety-nine-designs.js +1 -1
  88. package/dist/knowledge/path-oracle/products/pinduoduo-kuaituantuan.js +1 -1
  89. package/dist/knowledge/path-oracle/products/shansong.js +1 -1
  90. package/dist/knowledge/path-oracle/products/taobao-presale.js +1 -1
  91. package/dist/knowledge/path-oracle/products/upwork-catalog.js +1 -1
  92. package/dist/knowledge/path-oracle/products/upwork.js +1 -1
  93. package/dist/knowledge/pattern-resolutions.js +1 -1
  94. package/dist/knowledge/protocol-facts.js +1 -1
  95. package/dist/knowledge/publish-gate.js +1 -1
  96. package/dist/knowledge/publish-surface-contract.js +1 -1
  97. package/dist/knowledge/template-loader.js +1 -1
  98. package/dist/knowledge/template-registry.js +1 -1
  99. package/dist/knowledge/template-scanner.js +1 -1
  100. package/dist/knowledge/time-units.js +1 -0
  101. package/dist/knowledge/tools-reference.js +1 -1
  102. package/dist/knowledge/workflow-guidance.js +1 -1
  103. package/dist/monitor/MonitorLoop.js +1 -1
  104. package/dist/participation/radar-core.js +1 -1
  105. package/dist/playbooks/service-build/business-puzzle.js +1 -1
  106. package/dist/playbooks/service-build/machine-panorama.js +1 -1
  107. package/dist/playbooks/service-build/merchant-guide.js +1 -1
  108. package/dist/playbooks/service-build/migration-planner.js +1 -1
  109. package/dist/playbooks/service-build/object-panorama.js +1 -1
  110. package/dist/playbooks/service-build/participation-radar.js +1 -1
  111. package/dist/playbooks/service-build/relationship-profile.js +1 -1
  112. package/dist/playbooks/service-build/service-panorama.js +1 -1
  113. package/dist/playbooks/service-build/service-quote.js +1 -1
  114. package/dist/review/index.js +1 -1
  115. package/dist/safety/confirm-gate.js +1 -1
  116. package/dist/schema/benchmark-migration/index.d.ts +110 -2
  117. package/dist/schema/benchmark-migration/index.js +1 -1
  118. package/dist/schema/boundary-coercion.js +1 -0
  119. package/dist/schema/call/arbitration.js +1 -1
  120. package/dist/schema/call/base.js +1 -1
  121. package/dist/schema/call/handler.js +1 -1
  122. package/dist/schema/call/machine.d.ts +56 -8
  123. package/dist/schema/call/order.d.ts +37 -10
  124. package/dist/schema/call/order.js +1 -1
  125. package/dist/schema/call/permission.d.ts +210 -30
  126. package/dist/schema/call/personal.d.ts +56 -8
  127. package/dist/schema/call/progress.d.ts +28 -4
  128. package/dist/schema/call/semantic.js +1 -1
  129. package/dist/schema/call/service.d.ts +84 -12
  130. package/dist/schema/common/index.d.ts +14 -2
  131. package/dist/schema/common/index.js +1 -1
  132. package/dist/schema/evaluation/index.js +1 -1
  133. package/dist/schema/goal/index.d.ts +1 -1
  134. package/dist/schema/goal/planning.js +1 -1
  135. package/dist/schema/local/index.js +1 -1
  136. package/dist/schema/messenger/index.d.ts +168 -24
  137. package/dist/schema/messenger/index.js +1 -1
  138. package/dist/schema/operations.d.ts +655 -22
  139. package/dist/schema/operations.js +1 -1
  140. package/dist/schema/persona/index.d.ts +22 -110
  141. package/dist/schema/query/index.js +1 -1
  142. package/dist/schema/schema-version.js +1 -1
  143. package/dist/schema/workflow/index.d.ts +4 -0
  144. package/dist/schema/workflow/index.js +1 -1
  145. package/dist/schema-query-impl/index.js +1 -1
  146. package/dist/schemas/benchmark_migration_operation.schema.json +1 -1
  147. package/dist/schemas/evaluation_operation.schema.json +1 -1
  148. package/dist/schemas/goal_operation.schema.json +1 -1
  149. package/dist/schemas/guard_rebind_replacement.schema.json +1 -0
  150. package/dist/schemas/index.json +1 -1
  151. package/dist/schemas/messenger_operation.schema.json +1 -1
  152. package/dist/schemas/onchain_operations.schema.json +1 -1
  153. package/dist/schemas/onchain_operations_allocation.schema.json +1 -1
  154. package/dist/schemas/onchain_operations_arbitration.schema.json +1 -1
  155. package/dist/schemas/onchain_operations_contact.schema.json +1 -1
  156. package/dist/schemas/onchain_operations_demand.schema.json +1 -1
  157. package/dist/schemas/onchain_operations_gen_passport.schema.json +1 -1
  158. package/dist/schemas/onchain_operations_machine.schema.json +1 -1
  159. package/dist/schemas/onchain_operations_order.schema.json +1 -1
  160. package/dist/schemas/onchain_operations_permission.schema.json +1 -1
  161. package/dist/schemas/onchain_operations_personal.schema.json +1 -1
  162. package/dist/schemas/onchain_operations_progress.schema.json +1 -1
  163. package/dist/schemas/onchain_operations_proof.schema.json +1 -1
  164. package/dist/schemas/onchain_operations_repository.schema.json +1 -1
  165. package/dist/schemas/onchain_operations_reward.schema.json +1 -1
  166. package/dist/schemas/onchain_operations_service.schema.json +1 -1
  167. package/dist/schemas/onchain_operations_treasury.schema.json +1 -1
  168. package/dist/schemas/persona_operation.schema.json +1 -1
  169. package/dist/schemas/time_convert.schema.json +1 -0
  170. package/dist/schemas/wip_file.schema.json +1 -1
  171. package/dist/schemas/workflow_operation.schema.json +1 -1
  172. package/dist/tools/handlers/benchmark-migration.js +1 -1
  173. package/dist/tools/handlers/config.js +1 -1
  174. package/dist/tools/handlers/fund-rail-recipe.js +1 -1
  175. package/dist/tools/handlers/guard-rebind-replacement.js +1 -0
  176. package/dist/tools/handlers/local.js +1 -1
  177. package/dist/tools/handlers/mark-namespace.js +1 -1
  178. package/dist/tools/handlers/onchain.js +1 -1
  179. package/dist/tools/handlers/query.js +1 -1
  180. package/dist/tools/handlers/settle-sweep.js +1 -1
  181. package/dist/tools/handlers/time-convert.js +1 -0
  182. package/dist/tools/handlers/wip.js +1 -1
  183. package/dist/tools/handlers/workflow.js +1 -1
  184. package/dist/tools/index.d.ts +1 -0
  185. package/dist/tools/index.js +1 -1
  186. package/dist/tools/registry/business.js +1 -1
  187. package/dist/tools/registry/local.js +1 -1
  188. package/dist/tools/registry/onchain.js +1 -1
  189. package/dist/tools/wip-verify-ledger.js +1 -1
  190. package/dist/tools/wrap.js +1 -1
  191. package/package.json +6 -5
@@ -1 +1 @@
1
- export const UPWORK_CATALOG_ORACLE={'productRef':'upwork-catalog','products':['upwork-project-catalog','fiverr','contra-services','freelancer-services'],'oracleVersion':'1.1.0','steps':[{'id':'M1','class':'offchain','name':'Buyer\x20browses\x20the\x20catalog\x20and\x20picks\x20a\x20tier\x20(search,\x20reviews,\x20portfolio)','actor':'buyer','precondition':[],'onchain':'not_applicable','commercialSemantics':'Catalog\x20discovery\x20is\x20off-chain\x20content\x20ranking.\x20The\x20tier\x20selection\x20becomes\x20the\x20sale\x20item\x20at\x20buy\x20time;\x20no\x20demand\x20object\x20or\x20search\x20primitive\x20exists\x20on-chain\x20—\x20discovery\x20is\x20eliminated,\x20not\x20modeled.','evidence':[]},{'id':'M2','class':'main','name':'Purchase\x20at\x20the\x20tiered\x20price\x20—\x20full\x20escrow\x20in\x20one\x20atomic\x20buy','actor':'buyer','precondition':['M1'],'onchain':'expressible','chainFootprint':{'node':'in_progress','moneyEffect':'escrow_in'},'commercialSemantics':'The\x20catalog\x20ENTRY\x20pair\x20is\x20in_progress\x20itself:\x20buying\x20and\x20starting\x20work\x20are\x20one\x20state\x20—\x20the\x20delivery\x20clock\x20starts\x20at\x20requirement\x20submission,\x20not\x20at\x20seller\x20acceptance.\x20Commission\x20is\x200\x20(the\x20incumbent\x27s\x20freelancer\x20fee\x20of\x20a\x20variable\x200-15%\x20is\x20exactly\x20what\x20the\x20zero-commission\x20model\x20exists\x20to\x20eliminate);\x20the\x20client-side\x20marketplace\x20fee\x20has\x20no\x20allocator\x20leg\x20and\x20is\x20documented\x20off-chain.','evidence':[{'file':'service.move','line':0x1d2,'pattern':'public\x20fun\x20buy2'},{'file':'order.move','line':0x21,'pattern':'public\x20struct\x20SaleItem'}]},{'id':'M3','class':'main','name':'Buyer\x20submits\x20requirement\x20answers\x20(brief\x20via\x20the\x20service\x20Contact)','actor':'buyer','precondition':['M2'],'onchain':'disclosure_only','commercialSemantics':'The\x20buyer\x27s\x20requirement\x20answers\x20travel\x20over\x20the\x20service\x27s\x20Contact\x20(Messenger),\x20as\x20an\x20IM\x20user\x20address\x20or\x20an\x20on-chain\x20WTS\x20proof.\x20The\x20corpus\x20is\x20explicit\x20that\x20declaring\x20customer_required\x20labels\x20alone\x20does\x20NOT\x20block\x20the\x20order\x20—\x20enforcement\x20requires\x20binding\x20pattern.required_info_evidence_gate\x20on\x20the\x20first\x20seller-side\x20forward,\x20and\x20the\x20required-info\x20message\x20shares\x20the\x20buyer\x27s\x20single\x20stranger-message\x20quota\x20(QUOTA\x20COUPLING).','disclosureProbe':'customer_required|required_info_evidence_gate|QUOTA\x20COUPLING','evidence':[{'file':'progress.move','line':0x48,'pattern':'TASK_BINDING_IDENTIFIER'}]},{'id':'M4','class':'main','name':'Seller\x20works\x20the\x20order\x20(same\x20in_progress\x20state\x20as\x20the\x20entry)','actor':'fulfiller','precondition':['M3'],'onchain':'expressible','chainFootprint':{'node':'in_progress','moneyEffect':'none'},'commercialSemantics':'There\x20is\x20no\x20separate\x20accept\x20transition:\x20the\x20entry\x20pair\x20means\x20work\x20starts\x20immediately\x20after\x20funding.\x20The\x20seller\x27s\x20exits\x20from\x20a\x20bad\x20order\x20(cancel/refund\x20requests,\x20E2/E4)\x20and\x20the\x20buyer\x27s\x20instant-cancel\x20window\x20(E1)\x20all\x20hang\x20off\x20this\x20single\x20state.','evidence':[]},{'id':'M5','class':'exception','name':'Requirements\x20never\x20arrive\x20—\x20keeper\x20auto-cancels\x20after\x2048h\x20(full\x20refund)','actor':'keeper','precondition':['M2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'RequirementsTimeout','prev':'in_progress','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'The\x2048h\x20requirements\x20timeout\x20(requirements_timeout_hours)\x20protects\x20the\x20seller\x20from\x20a\x20buyer\x20who\x20funds\x20and\x20ghosts:\x20keeper\x20slot\x201000\x20cancels\x20into\x20the\x20refund\x20terminal\x20and\x20the\x20order-anchored\x20allocator\x20pays\x20the\x20buyer\x20back\x20whole\x20—\x20first-class\x20on\x20this\x20template,\x20a\x20support\x20ticket\x20on\x20the\x20real\x20product.','guardKeyProbe':'requirements_timeout_48h','evidence':[]},{'id':'M6','class':'main','name':'Seller\x20submits\x20work\x20—\x20deliverable\x20WIP\x20hash\x20retained\x20as\x20evidence','actor':'fulfiller','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'delivered','moneyEffect':'none'},'commercialSemantics':'Delivery\x20gates\x20on\x20the\x20deliver_work\x20evidence\x20check\x20and\x20retains\x20the\x20WIP\x20hash\x20into\x20progress\x20history\x20—\x20\x27the\x20work\x20was\x20delivered\x27\x20becomes\x20an\x20on-chain\x20fact,\x20with\x20no\x20content\x20claim\x20(existence\x20is\x20not\x20trust).','guardKeyProbe':'deliver_work','evidence':[]},{'id':'M7','class':'main','name':'Buyer\x20approves\x20(Accept\x20&\x20Pay\x20signature)','actor':'buyer','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'accepted','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20manual\x20branch\x20is\x20the\x20buyer\x27s\x20own\x20signature\x20(order_payer\x20identity\x20edge)\x20—\x20the\x20seller\x20can\x20never\x20self-accept\x20(trust\x20mechanism\x20R4).\x20Its\x20sibling\x20timeout\x20branch\x20is\x20M8.','evidence':[]},{'id':'M8','class':'exception','name':'Acceptance\x20timeout\x20—\x20keeper\x20auto-accepts\x20a\x20silent\x20buyer\x20(14\x20days)','actor':'keeper','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'accepted','forward':'AutoAcceptByKeeper','prev':'delivered','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Distinct\x20forward\x20names\x20are\x20mandatory\x20on\x20sibling\x20edges\x20sharing\x20a\x20prev\x20(E_DUPLICATE_FORWARD_NAME,\x20audit-261012\x20B1)\x20—\x20the\x20two\x20acceptance\x20branches\x20are\x20explicit\x20edges\x20within\x20one\x20pair.\x20The\x20key_risk\x20names\x20this\x20the\x20template\x27s\x20unblock\x20rail\x20for\x20freelancer\x20payment.','guardKeyProbe':'accept_timeout','evidence':[]},{'id':'M9','class':'main','name':'Buyer\x20reviews\x20the\x20delivery\x20(window-gated\x20side\x20action)','actor':'buyer','precondition':['M8'],'onchain':'expressible','chainFootprint':{'node':'reviewed','forward':'Review','prev':'accepted','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'Review\x20is\x20a\x20reputation\x20rail,\x20never\x20a\x20settlement\x20gateway:\x20completed\x20is\x20reachable\x20from\x20accepted\x20directly,\x20so\x20a\x20silent\x20reviewer\x20cannot\x20strand\x20the\x20escrow.','guardKeyProbe':'review_window','evidence':[]},{'id':'M10','class':'main','name':'Settlement\x20after\x20review\x20—\x20seller\x20withdraws\x20(zero\x20commission)','actor':'merchant','precondition':['M9'],'onchain':'expressible','chainFootprint':{'node':'completed','forward':'CompleteAfterReview','prev':'reviewed','identity':'permission_index','moneyEffect':'release'},'commercialSemantics':'The\x20settlement\x20allocator\x20pays\x20the\x20freelancer\x20the\x20full\x20pool\x20(commission\x20rows\x20are\x200).\x20The\x20incumbent\x27s\x20tier\x20pricing\x20lives\x20in\x20the\x20sale\x20items\x20(M2),\x20not\x20in\x20any\x20post-settlement\x20split.','evidence':[]},{'id':'M11','class':'exception','name':'Review-settle\x20clock\x20—\x20keeper\x20auto-completes\x20after\x20the\x20settle\x20delay\x20(7\x20days)','actor':'keeper','precondition':['M9'],'onchain':'expressible','chainFootprint':{'node':'completed','forward':'AutoCompleteAfterReview','prev':'reviewed','identity':'permission_index','moneyEffect':'release'},'commercialSemantics':'GF2-09\x20cure:\x20after\x20settlement_delay_days\x20past\x20the\x20reviewed\x20entry\x20the\x20order\x20auto-completes,\x20so\x20a\x20stalled\x20review\x20can\x20never\x20strand\x20the\x20escrow\x20at\x20reviewed\x20(the\x20mainnet\x202.38\x20incident\x27s\x20lesson,\x20baked\x20into\x20both\x20freelance\x20templates).','guardKeyProbe':'review_settle_clock','evidence':[]},{'id':'M12','class':'main','name':'Positive\x20feedback\x20(praise\x20rail)','actor':'buyer','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'wonder','forward':'Praise','prev':'completed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20catalog\x20equivalent\x20of\x20the\x205-star\x20public\x20review\x20—\x20post-settlement,\x20write-once,\x20immune\x20to\x20the\x20real\x20product\x27s\x20limited\x20edit\x20window\x20(P2).','evidence':[]},{'id':'M13','class':'main','name':'Negative\x20feedback\x20(complain\x20rail)','actor':'buyer','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'no_wonder','forward':'Complain','prev':'completed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'Dissatisfaction\x20recorded\x20after\x20settlement\x20—\x20the\x20money\x20is\x20home;\x20on\x20the\x20real\x20product\x20this\x20is\x20the\x20public\x20review\x20with\x20no\x20funds\x20attached\x20either.','evidence':[]},{'id':'E1','class':'exception','name':'Instant\x20cancel\x20inside\x2024h\x20(buyer-side,\x20no\x20seller\x20consent)','actor':'buyer','precondition':['M2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'InstantCancel','prev':'in_progress','identity':'order_holder','moneyEffect':'refund'},'commercialSemantics':'The\x20incumbent\x27s\x2024h\x20instant\x20cancel\x20is\x20a\x20first-class\x20guarded\x20buyer\x20edge:\x20Clock\x20<=\x20order\x20time\x20+\x20instant_cancel_hours\x20(24),\x20project-bound,\x20straight\x20from\x20the\x20entry\x20state\x20into\x20the\x20100%\x20order-anchored\x20refund\x20terminal.\x20After\x2024h\x20the\x20request\x20rails\x20(E2/E4)\x20take\x20over.','guardKeyProbe':'instant_cancel_24h','evidence':[]},{'id':'E2','class':'exception','name':'Cancel\x20requested\x20mid-work\x20(seller\x20approves\x20/\x20declines\x20/\x20ignores)','actor':'buyer','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'cancel_requested','moneyEffect':'none'},'commercialSemantics':'After\x20the\x20instant\x20window\x20closes,\x20cancellation\x20becomes\x20a\x20request:\x20the\x20buyer\x20asks,\x20the\x20seller\x20decides\x20(GrantCancelBySeller),\x20and\x20seller\x20silence\x20resolves\x20in\x20the\x20buyer\x27s\x20favour\x20after\x20response_timeout_hours\x20via\x20the\x20keeper\x20(E3).\x20Granting\x20is\x20the\x20SELLER\x27s\x20decision\x20on\x20a\x20merchant-operator\x20edge\x20—\x20the\x20P1\x20fix\x20that\x20stopped\x20buyers\x20skipping\x20the\x2024h\x20gate\x20through\x20the\x20request\x20rails.','evidence':[]},{'id':'E3','class':'exception','name':'Cancel-response\x20timeout\x20—\x20keeper\x20auto-cancels\x20in\x20the\x20buyer\x27s\x20favour\x20(72h)','actor':'keeper','precondition':['E2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'CancelTimeoutByKeeper','prev':'cancel_requested','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'Seller\x20non-response\x20after\x20response_timeout_hours\x20(72)\x20auto-cancels:\x20a\x20silent\x20seller\x20cannot\x20strand\x20a\x20buyer\x20mid-work\x20once\x20the\x2024h\x20window\x20has\x20closed\x20—\x20the\x20prose-promised\x20keeper\x20duty\x20this\x20template\x20actually\x20ships.','guardKeyProbe':'cancel_response_timeout','evidence':[]},{'id':'E4','class':'exception','name':'Refund\x20requested\x20in-progress\x20(seller\x20grant\x20/\x20decline\x20/\x20silence)','actor':'buyer','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'refund_requested','moneyEffect':'none'},'commercialSemantics':'The\x20refund-request\x20rail\x20mirrors\x20the\x20cancel\x20rail:\x20buyer\x20asks\x20from\x20in_progress,\x20seller\x20grants\x20into\x20the\x20refund\x20terminal\x20(GrantRefundBySeller)\x20or\x20declines\x20back\x20to\x20the\x20work\x20state.\x20Same\x20seller-resolved\x20operator\x20fix\x20as\x20E2.','evidence':[]},{'id':'E5','class':'exception','name':'Refund\x20requested\x20post-delivery\x20/\x20post-acceptance\x20(window-gated\x20mirror)','actor':'buyer','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'refund_requested','moneyEffect':'none'},'commercialSemantics':'The\x20same\x20rail\x20is\x20reachable\x20from\x20delivered,\x20and\x20the\x20F-37(a)\x20mirror\x20keeps\x20it\x20alive\x20after\x20auto-accept:\x20PostAcceptRefund\x20from\x20accepted\x20rides\x20post_accept_refund_window\x20(post_accept_refund_days,\x20anchored\x20on\x20the\x20delivered\x20entry\x20so\x20the\x20total\x20remediation\x20horizon\x20is\x20independent\x20of\x20when\x20the\x20keeper\x20fired).','evidence':[]},{'id':'E6','class':'exception','name':'Revision\x20requested\x20(blocks\x20payment\x20until\x20redelivery)','actor':'buyer','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'revision_requested','moneyEffect':'none'},'commercialSemantics':'The\x20revision\x20loop:\x20the\x20request\x20parks\x20the\x20order\x20until\x20redelivery\x20returns\x20it\x20to\x20delivered,\x20and\x20each\x20redelivery\x20restarts\x20the\x20review\x20window.\x20The\x20F-37(a)\x20post-acceptance\x20mirror\x20(PostAcceptRevision,\x2021d\x20window)\x20keeps\x20the\x20track\x20alive\x20after\x20the\x20auto-accept\x20clock\x20has\x20moved\x20the\x20order\x20to\x20accepted\x20—\x20without\x20it\x20a\x20silent\x20buyer\x20who\x20wakes\x20up\x20after\x2014\x20days\x20finds\x20the\x20revision\x20track\x20topology-gone.','evidence':[]},{'id':'E7','class':'exception','name':'Revision\x20rounds\x20exhausted\x20(cap\x20declared,\x20not\x20a\x20contract\x20mechanism)','actor':'merchant','precondition':['E6'],'onchain':'disclosure_only','commercialSemantics':'The\x20catalog\x20sells\x20a\x20bounded\x20revision\x20count;\x20this\x20template\x20declares\x20\x27unlimited\x27\x20because\x20that\x20is\x20both\x20the\x20real\x20catalog\x27s\x20floor\x20policy\x20and\x20the\x20only\x20thing\x20the\x20current\x20contract\x20shape\x20can\x20honour\x20—\x20REVISION\x20CAP\x20IS\x20NOT\x20A\x20CONTRACT\x20MECHANISM,\x20disclosed\x20verbatim\x20in\x20the\x20trust\x20mechanisms.','disclosureProbe':'REVISION\x20CAP\x20IS\x20NOT\x20A\x20CONTRACT\x20MECHANISM|KEEP\x20\x27unlimited\x27','evidence':[]},{'id':'E8','class':'exception','name':'Late\x20delivery\x20beyond\x20the\x20promised\x20deadline\x20(late\x20penalty\x20/\x20priority)','actor':'buyer','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20prices\x20delivery\x20deadlines\x20(extra-fast\x20tiers)\x20and\x20compensates\x20lateness.\x20The\x20chain\x20has\x20no\x20delivery-deadline\x20primitive\x20—\x20the\x20entry\x20clock\x20starts\x20at\x20requirement\x20submission\x20but\x20nothing\x20aborts\x20or\x20compensates\x20on\x20lateness,\x20so\x20the\x20step\x20is\x20eliminated;\x20the\x20honest\x20substitutes\x20are\x20the\x20cancel/refund\x20rails\x20and\x20arbitration.','evidence':[]},{'id':'E9','class':'exception','name':'Buyer\x20ghosts\x20after\x20funding\x20(routes\x20to\x20the\x20requirements\x20timeout)','actor':'keeper','precondition':['M2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'RequirementsTimeout','prev':'in_progress','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'The\x20buyer-ghost\x20case\x20IS\x20the\x20M5\x20rail\x20—\x20the\x20exception\x20view\x20of\x20the\x20same\x20keeper\x20edge.\x20The\x20seller\x20is\x20made\x20whole\x20by\x20construction:\x20the\x20escrow\x20refunds\x20before\x20any\x20work\x20starts.','guardKeyProbe':'requirements_timeout_48h','evidence':[]},{'id':'E10','class':'exception','name':'Scope\x20change\x20demanded\x20mid-order\x20(out-of-tier\x20additions)','actor':'buyer','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20monetizes\x20scope\x20via\x20add-on\x20purchases\x20or\x20a\x20new\x20order.\x20There\x20is\x20no\x20scope-amendment\x20primitive\x20on-chain\x20and\x20the\x20order\x27s\x20items\x20are\x20fixed\x20at\x20buy\x20time\x20—\x20resolution\x20is\x20the\x20revision\x20loop\x20(E6)\x20plus\x20off-chain\x20negotiation,\x20then\x20a\x20fresh\x20order;\x20the\x20step\x20is\x20eliminated.','evidence':[]},{'id':'E11','class':'exception','name':'Cancellation\x20demanded\x20after\x20delivery\x20(routes\x20to\x20the\x20refund\x20request\x20rail)','actor':'buyer','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'refund_requested','moneyEffect':'none'},'commercialSemantics':'Post-delivery\x20the\x20cancel\x20rail\x20no\x20longer\x20applies;\x20the\x20demand\x20routes\x20onto\x20E5\x27s\x20refund-request\x20rail\x20with\x20its\x20window\x20guards.\x20The\x20seller\x27s\x20decline\x20returns\x20the\x20order\x20to\x20delivered\x20—\x20the\x20real\x20product\x27s\x20\x27rejection\x20denied,\x20open\x20a\x20dispute\x27\x20fork.','evidence':[]},{'id':'E12','class':'exception','name':'Buyer\x20abandons\x20pre-work\x20(abandoned\x20order\x20exit)','actor':'buyer','precondition':['M2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'A\x20buyer\x20who\x20walks\x20before\x20work\x20starts\x20exits\x20through\x20the\x20same\x20terminal\x20—\x20instant\x20cancel\x20inside\x2024h\x20(E1),\x20the\x20request\x20rails\x20after,\x20or\x20the\x20requirements\x20timeout\x20(M5)\x20if\x20it\x20was\x20requirements\x20they\x20never\x20sent.\x20The\x20escrow\x20always\x20refunds\x20whole.','evidence':[]},{'id':'E13','class':'exception','name':'Partial\x20refund\x20negotiated\x20(split\x20of\x20the\x20escrow)','actor':'merchant','precondition':['E5'],'onchain':'disclosure_only','commercialSemantics':'The\x20real\x20catalog\x20resolves\x20many\x20disputes\x20at\x20a\x20partial\x20(e.g.\x20partial\x20delivery\x20for\x20partial\x20pay).\x20The\x20allocator\x20rails\x20are\x20binary\x20—\x20rate\x20sums\x20are\x2010000\x20with\x20a\x2010000/0\x20full-refund\x20shape\x20—\x20so\x20a\x20fraction\x20is\x20not\x20expressible;\x20the\x20corpus\x20states\x20the\x20rate-sum\x20rule,\x20and\x20the\x20honest\x20workaround\x20is\x20a\x20separate\x20Payment\x20object\x20off-template.','disclosureProbe':'Rate\x20sums\x20=\x2010000|Rate[^\x22]{0,6}10000','evidence':[]},{'id':'E14','class':'exception','name':'Buyer\x20account\x20banned\x20mid-order\x20(platform\x20enforcement)','actor':'platform','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'Account\x20bans\x20are\x20platform-database\x20enforcement;\x20the\x20escrow\x20is\x20bound\x20to\x20the\x20ORDER\x20and\x20the\x20rails\x20to\x20rosters,\x20so\x20a\x20ban\x20cannot\x20freeze\x20funds.\x20The\x20keeper\x20rails\x20(M5,\x20E3,\x20E5,\x20M8,\x20M11)\x20resolve\x20the\x20order\x20without\x20the\x20banned\x20identity\x20—\x20eliminated,\x20not\x20disclosed.','evidence':[]},{'id':'E15','class':'exception','name':'Seller\x20account\x20banned\x20mid-order\x20(platform\x20enforcement)','actor':'platform','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'Mirror\x20of\x20E14:\x20the\x20buyer\x20is\x20protected\x20by\x20the\x20timeout\x20rails\x20(requirements\x20timeout,\x20refund/cancel\x20keeper\x20exits)\x20and\x20the\x20award\x20edge,\x20not\x20by\x20the\x20seller\x27s\x20account\x20standing\x20—\x20eliminated.','evidence':[]},{'id':'E16','class':'exception','name':'Off-platform\x20payment\x20solicitation\x20(TOS\x20violation\x20by\x20the\x20seller)','actor':'platform','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20bans\x20solicitation\x20to\x20move\x20payment\x20off-platform.\x20On-chain,\x20buy2\x20is\x20the\x20only\x20escrow\x20entry\x20—\x20an\x20off-platform\x20deal\x20is\x20simply\x20outside\x20this\x20template\x27s\x20universe\x20and\x20produces\x20no\x20order\x20to\x20police;\x20the\x20step\x20is\x20eliminated.','evidence':[]},{'id':'E17','class':'exception','name':'Seller\x20stalls\x20a\x20refund/cancel\x20request\x20(keeper\x20resolves\x20in\x20the\x20buyer\x27s\x20favour)','actor':'keeper','precondition':['E4'],'onchain':'expressible_with_gap','chainFootprint':{'node':'closed_cancel','forward':'RefundTimeoutByKeeper','prev':'refund_requested','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'The\x20F-42\x20cure\x20(upw2-mn-261102):\x20a\x20buyer\x20parked\x20on\x20refund_requested\x20while\x20the\x20seller\x20ignores\x20it\x20had\x20zero\x20executable\x20forwards\x20and\x20no\x20clock\x20(R-DEAD-END:\x200/3\x20executable\x20edges\x20measured\x20live).\x20After\x20refund_response_hours\x20(72)\x20the\x20keeper\x20resolves\x20it\x20in\x20the\x20buyer\x27s\x20favour;\x20the\x20keeper\x20duty\x27s\x20miss_consequence\x20names\x20the\x20stranded-buyer\x20failure\x20mode\x20it\x20exists\x20to\x20prevent.','guardKeyProbe':'refund_response_timeout','gapPredicate':{'probe':'zero\x20executable\x20forwards|strands'},'evidence':[]},{'id':'E18','class':'exception','name':'Dispute\x20withdrawn\x20—\x20settled\x20out-of-band,\x20claim\x20pulled\x20before\x20ruling','actor':'buyer','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'delivered','forward':'WithdrawClaim','prev':'claim_filed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20real\x20catalog\x20lets\x20a\x20buyer\x20close\x20their\x20own\x20dispute.\x20Mounted\x20at\x20v206\x20(stage2\x20#23):\x20WithdrawClaim\x20(claim_filed\x20->\x20delivered,\x20order_payer,\x20ZERO\x20money\x20legs)\x20is\x20the\x20identity-only\x20exit\x20—\x20re-entry\x20appends\x20a\x20fresh\x20delivered\x20entry\x20and\x20re-anchors\x20the\x20accept\x20clock,\x20both\x20PostAccept\x20mirrors\x20and\x20the\x20filing\x20window\x20(find=last).\x20R27\x20rule\x203\x20unfreeze\x20order:\x20the\x20withdrawal\x20moves\x20Progress\x20ONLY\x20and\x20never\x20clears\x20the\x20Arb\x20case\x20—\x20the\x20buyer\x20concludes\x20the\x20case\x20on\x20the\x20venue\x20first,\x20then\x20withdraws.\x20Residual,\x20standing-disclosed:\x20the\x20identity\x20root\x20ships\x20no\x20arbitration\x20case-binding\x20leg\x20(ssng6-mn-261101\x20family)\x20—\x20replay/phantom-case\x20checks\x20ride\x20the\x20waypoint\x20structure\x20(only\x20an\x20order\x20that\x20passed\x20the\x20claim_filed\x20gate\x20can\x20sit\x20at\x20claim_filed),\x20never\x20an\x20arb.status\x20leg\x20(TRANSIENT-STATE\x20TRAP).','guardKeyProbe':'withdraw_claim','evidence':[]},{'id':'R1','class':'remedy','name':'File\x20a\x20dispute\x20(off-Machine\x20Arbitration\x20object)','actor':'buyer','precondition':['M6'],'onchain':'disclosure_only','commercialSemantics':'Disputes\x20never\x20touch\x20machine\x20nodes:\x20they\x20ride\x20the\x20independent\x20Arbitration\x20object.\x20The\x20venue\x20must\x20be\x20bound\x20only\x20when\x20operational\x20—\x20a\x20fresh\x20Arbitration\x20ships\x20paused\x20and\x20a\x20paused\x20venue\x20rejects\x20every\x20dispute\x20with\x20E_PAUSED\x20(the\x20MCP\x20pre-publish\x20scan\x20hard-blocks\x20binding\x20a\x20paused\x20venue).','disclosureProbe':'venue\x20readiness|E_PAUSED|paused\x20venue','evidence':[{'file':'arbitration.move','line':0x169,'pattern':'assert_op_permission'}]},{'id':'R2','class':'remedy','name':'Buyer-won\x20ruling\x20re-routes\x20the\x20stalled\x20order\x20into\x20the\x20refund\x20terminal','actor':'arbitrator','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'ArbRefund','prev':'delivered','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'GF2-31\x20award-settle:\x20the\x20ruling\x20alone\x20only\x20writes\x20case\x20status\x20and\x20never\x20moves\x20money\x20—\x20the\x20ArbRefund\x20edge\x20(dedicated\x20refund-rail\x20slot\x201001,\x20never\x20the\x201002\x20settle\x20bucket,\x20W5-14)\x20lets\x20the\x20refund_gate\x20rail\x20actually\x20pay\x20the\x20escrowed\x20principal.\x20The\x20zero-award\x20exclusion\x20leg\x20keeps\x20a\x20dismissed\x20claim\x20off\x20this\x20edge.\x20Since\x20v206\x20the\x20design\x20has\x20TWO\x20instances\x20of\x20this\x20guard\x20(M-T2\x20one\x20instance\x20per\x20exit\x20edge):\x20this\x20prev=delivered\x20edge\x20(keeper-down\x20fallback\x20when\x20the\x20FileDispute\x20record\x20edge\x20was\x20never\x20driven)\x20and\x20the\x20claim_filed\x20->\x20closed_cancel\x20instance\x20(arb_refund_filed)\x20for\x20a\x20ruling\x20on\x20a\x20RECORDED\x20claim.','guardKeyProbe':'arb_refund','evidence':[]},{'id':'R3','class':'remedy','name':'Arbitration\x20indemnity\x20paid\x20from\x20the\x20compensation\x20fund','actor':'arbitrator','precondition':['R1'],'onchain':'disclosure_only','commercialSemantics':'Indemnity\x20pays\x20from\x20the\x20pre-locked\x20compensation\x20fund,\x20capped\x20at\x203x\x20the\x20escrowed\x20amount\x20(MAX_INDEMNITY_MULTIPLE)\x20—\x20the\x20cap\x20multiplies\x20the\x20ESCROW,\x20never\x20the\x20gig\x27s\x20face\x20value,\x20and\x20the\x20fund\x20must\x20be\x20non-zero\x20at\x20publish\x20whenever\x20the\x20template\x20declares\x20it.','disclosureProbe':'compensation\x20fund|MAX_INDEMNITY_MULTIPLE|indemnity','evidence':[{'file':'arb.move','line':0x15,'pattern':'MAX_INDEMNITY_MULTIPLE'},{'file':'service.move','line':0x24c,'pattern':'public\x20fun\x20compensation_claim'}]},{'id':'R4','class':'remedy','name':'Arbitration\x2030-day\x20silence\x20=\x20acceptance\x20(case-fee\x20release)','actor':'platform','precondition':['R2'],'onchain':'not_applicable','commercialSemantics':'Protocol-level\x20arb-object\x20finality\x20(WITHDRAW_DURATION_TIME,\x20silence\x20treated\x20as\x20acceptance)\x20releasing\x20the\x20case\x20fee.\x20The\x20real\x20catalog\x27s\x20CS\x20ruling\x20executes\x20immediately\x20—\x20no\x20analog\x20step\x20—\x20and\x20this\x20template\x27s\x20machine\x20refund\x20rail\x20keys\x20on\x20the\x20ruling\x20state\x20directly,\x20so\x20the\x20window\x20never\x20touches\x20the\x20buyer\x20path.','evidence':[{'file':'arb.move','line':0x10,'pattern':'WITHDRAW_DURATION_TIME'}]},{'id':'R5','class':'remedy','name':'Escrow-exit\x20invariant\x20—\x20every\x20terminal\x20drains,\x20awarded\x20orders\x20included','actor':'merchant','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'Both\x20terminals\x20drain:\x20settlement\x20via\x20the\x20settle_gate\x20node\x20set\x20(completed\x20/\x20wonder\x20/\x20no_wonder),\x20refunds\x20via\x20the\x20order-anchored\x20refund_gate\x20at\x20closed_cancel,\x20and\x20a\x20stalled\x20delivered\x20order\x20via\x20the\x20award\x20edge\x20(R2).\x20The\x20build\x20note\x20was\x20rewritten\x20post-H1B\x20(v206):\x20the\x20former\x20recover_gate\x20rail\x20is\x20deleted\x20and\x20closed_cancel\x20is\x20the\x20sole\x20non-settlement\x20exit\x20—\x20the\x20invariant\x20holds\x20via\x20the\x20routes\x20listed\x20here.','evidence':[]},{'id':'R6','class':'remedy','name':'Seller\x20makes\x20it\x20right\x20with\x20a\x20partial\x20Payment\x20(off-allocator\x20workaround)','actor':'merchant','precondition':['E13'],'onchain':'disclosure_only','commercialSemantics':'The\x20corpus\x27s\x20own\x20suggested\x20route\x20for\x20money\x20the\x20allocator\x20cannot\x20express:\x20document\x20client-side\x20fees\x20and\x20goodwill\x20off-chain\x20or\x20via\x20a\x20separate\x20Payment\x20object.\x20A\x20Payment\x20is\x20a\x20permissionless\x20kernel\x20object\x20outside\x20this\x20template\x20—\x20the\x20disclosure\x20is\x20the\x20remedy\x20the\x20template\x20offers.','disclosureProbe':'separate\x20Payment|off-chain','evidence':[{'file':'payment.move','line':0x5d,'pattern':'struct\x20Payment'}]},{'id':'R7','class':'remedy','name':'Keeper\x20downtime\x20—\x20order\x20stalls,\x20manual\x20confirmation\x20fallback','actor':'keeper','precondition':['M8'],'onchain':'disclosure_only','commercialSemantics':'The\x20timeout\x20rails\x20depend\x20on\x20a\x20live\x20keeper\x20(the\x20keeper_dependencies\x20list\x20is\x20first-class:\x20requirements\x20timeout,\x20acceptance\x20timeout,\x20seller\x20non-response).\x20Downtime\x20reverts\x20every\x20auto-rail\x20to\x20manual\x20confirmation\x20—\x20the\x20corpus\x27s\x20keeper\x20prose\x20is\x20the\x20disclosure.','disclosureProbe':'keeper','evidence':[]},{'id':'R8','class':'remedy','name':'Ruling\x20dismissed\x20—\x20order\x20resumes\x20at\x20delivered\x20(re-dispute\x20window\x20re-armed)','actor':'merchant','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'delivered','forward':'ResumeAfterDismissal','prev':'claim_filed','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Mounted\x20at\x20v206\x20(stage2\x20#23):\x20ResumeAfterDismissal\x20(claim_filed\x20->\x20delivered,\x20tpl_forward_arb_ruling_dismissed\x20zero-award\x20polarity,\x20merchant\x20arbitration-execution\x20slot\x201004\x20—\x20the\x20family\x20arb\x20bucket,\x20kept\x20OFF\x20the\x201002\x20settle/keeper\x20rail).\x20The\x20dismissed\x20buyer\x20keeps\x20the\x20refund/revision/review\x20rails;\x20the\x20re-entry\x20appends\x20a\x20fresh\x20delivered\x20entry\x20and\x20re-anchors\x20the\x20windows\x20(find=last),\x20so\x20the\x20re-dispute\x20window\x20re-arms.\x20Venue\x20binding\x20rides\x20identifier\x203\x20—\x20deliberately\x20asymmetric\x20with\x20the\x20won\x20root\x27s\x20identifier\x204\x20(K3\x20C12).','guardKeyProbe':'arb_dismissed_resume','evidence':[]},{'id':'P1','class':'post','name':'Review-reward\x20claim\x20paid\x20from\x20the\x20pre-funded\x20pool','actor':'platform','precondition':['M9'],'onchain':'expressible','chainFootprint':{'node':'reviewed','moneyEffect':'reward'},'commercialSemantics':'Sale-time\x20reward\x20planning\x20shared\x20with\x20the\x20sibling\x20template:\x20a\x20pre-funded\x20review_reward_pool\x20pays\x20review_reward_per_claim\x20per\x20accepted\x20review,\x20claims\x20closing\x20reward_claim_closes_after_days\x20after\x20the\x20window\x20—\x20the\x20catalog\x20review\x20economy\x20with\x20money\x20instead\x20of\x20badges.','evidence':[{'file':'reward.move','line':0xe3,'pattern':'public\x20fun\x20claim'}]},{'id':'P2','class':'post','name':'Simultaneous\x20reviews\x20on\x20one\x20delivery\x20(first\x20write\x20wins,\x20both\x20immutable)','actor':'buyer','precondition':['M9'],'onchain':'expressible','chainFootprint':{'node':'reviewed','moneyEffect':'none'},'commercialSemantics':'Both\x20parties\x20may\x20review\x20the\x20same\x20delivery:\x20praise/complain\x20columns\x20are\x20write-once\x20(E_POLICY_WRITE_ONCE_CONFLICT\x20on\x20overwrite)\x20and\x20independent\x20—\x20the\x20chain\x20holds\x20no\x20edit\x20window\x20to\x20arbitrate\x20(see\x20P2\x20of\x20the\x20sibling\x20oracle\x20for\x20the\x20incumbent\x27s\x2014-day\x20edit\x20contrast).','evidence':[{'file':'repository.move','line':0x3c,'pattern':'E_POLICY_WRITE_ONCE_CONFLICT'}]},{'id':'P3','class':'post','name':'Repeat\x20purchase\x20/\x20multi-gig\x20project\x20(no\x20bundle,\x20one\x20order\x20per\x20gig)','actor':'buyer','precondition':['M10'],'onchain':'expressible_with_gap','chainFootprint':{'node':'in_progress','moneyEffect':'escrow_in'},'commercialSemantics':'Repeat\x20work\x20re-enters\x20at\x20the\x20entry\x20pair:\x20a\x20fresh\x20escrow\x20per\x20gig.\x20The\x20disclosed\x20gap\x20(differences\x20text):\x20NO\x20milestones\x20—\x20a\x20single\x20funded\x20order\x20per\x20catalog\x20purchase,\x20so\x20a\x20multi-gig\x20project\x20is\x20invisible\x20on-chain\x20except\x20as\x20order\x20history.','gapPredicate':{'probe':'single\x20funded\x20order|NO\x20milestones'},'evidence':[]},{'id':'P4','class':'post','name':'Seller\x20level\x20/\x20badge\x20progression\x20from\x20ratings','actor':'platform','precondition':['P1'],'onchain':'not_applicable','commercialSemantics':'Level\x20thresholds\x20are\x20platform-side\x20computations\x20over\x20rating\x20history.\x20No\x20on-chain\x20primitive\x20computes\x20aggregates\x20—\x20eliminated;\x20the\x20truthful\x20signal\x20remains\x20the\x20immutable\x20review\x20and\x20reward\x20rows.','evidence':[]},{'id':'P5','class':'post','name':'Clearing\x20period\x20before\x20payout\x20(settlement\x20delay\x20vs\x20the\x20incumbent\x27s\x2014\x20days)','actor':'merchant','precondition':['M11'],'onchain':'expressible','chainFootprint':{'node':'completed','moneyEffect':'release'},'commercialSemantics':'The\x20settle\x20clock\x20(settlement_delay_days\x20=\x207)\x20is\x20the\x20clearing\x20period\x20—\x20half\x20the\x20marketplace\x27s\x2014-day\x20cycle,\x20expressed\x20natively\x20by\x20the\x20same\x20GF2-09\x20keeper\x20edge\x20that\x20guarantees\x20the\x20exit\x20(M11).','evidence':[]}],'invariants':[{'id':'INV-UC-1','statement':'The\x20instant-cancel\x20promise\x20(24h,\x20buyer-side,\x20full\x20refund)\x20must\x20exist\x20as\x20a\x20guarded\x20machine\x20edge:\x20if\x20the\x20InstantCancel\x20forward\x20is\x20removed\x20while\x20instant_cancel_hours\x20>\x200,\x20the\x20corpus\x20sells\x20a\x20window\x20that\x20does\x20not\x20exist\x20and\x20every\x20early\x20exit\x20funnels\x20through\x20seller-approved\x20request\x20rails.','jurisdiction':'EU\x20Consumer\x20Rights\x20Directive\x202011/83\x20art.\x2012\x20(14-day\x20withdrawal\x20analogue,\x20shortened\x20by\x20the\x20platform\x27s\x20own\x2024h\x20policy);\x20Fiverr/Upwork\x20catalog\x20cancellation\x20terms.','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20the\x20template\x20ships\x20InstantCancel\x20(in_progress\x20->\x20closed_cancel,\x20instant_cancel_24h,\x20project-bound\x20Clock\x20window).\x20Removing\x20the\x20forward\x20while\x20the\x20knob\x20stays\x20configured\x20re-fires\x20this\x20invariant.','violation':{'requiresFeeParamNonZero':'instant_cancel_hours','whileMissingForward':'InstantCancel'}},{'id':'INV-UC-2','statement':'A\x20silent\x20seller\x20must\x20not\x20strand\x20a\x20buyer\x20mid-work:\x20every\x20request\x20rail\x20the\x20buyer\x20can\x20enter\x20needs\x20a\x20resolution\x20clock.\x20If\x20the\x20refund-request\x20keeper\x20exit\x20is\x20removed\x20while\x20response_timeout_hours\x20>\x200,\x20a\x20parked\x20refund_requested\x20has\x20zero\x20executable\x20forwards\x20and\x20no\x20clock\x20(the\x20F-42\x20R-DEAD-END,\x20measured\x20live\x20at\x200/3\x20executable\x20edges).','jurisdiction':'EU\x20PWD\x202024/2831\x20art.\x206\x20(prompt\x20payment);\x20NYC\x20FIFA\x20§\x2020-927\x20analogue\x20for\x20catalog\x20gigs.','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20the\x20template\x20ships\x20RefundTimeoutByKeeper\x20(refund_requested\x20->\x20closed_cancel,\x20refund_response_timeout,\x20F-42).\x20Removing\x20the\x20forward\x20while\x20the\x20response\x20knob\x20stays\x20configured\x20re-fires\x20this\x20invariant.','violation':{'requiresFeeParamNonZero':'response_timeout_hours','whileMissingForward':'RefundTimeoutByKeeper'}},{'id':'INV-UC-3','statement':'The\x20revision\x20cap\x20must\x20not\x20be\x20sold\x20as\x20a\x20contract\x20mechanism:\x20the\x20catalog\x20sells\x20bounded\x20revisions,\x20the\x20chain\x20has\x20no\x20revision\x20counter,\x20and\x20the\x20template\x20declares\x20\x27unlimited\x27\x20as\x20the\x20only\x20honest\x20value.','jurisdiction':'FTC\x20Act\x20§\x205\x20(deceptive\x20listing\x20claims);\x20EU\x20Unfair\x20Commercial\x20Practices\x20Directive\x202005/29\x20art.\x206.','chainConflict':'Text-only:\x20the\x20corpus\x20discloses\x20it\x20verbatim\x20(REVISION\x20CAP\x20IS\x20NOT\x20A\x20CONTRACT\x20MECHANISM)\x20and\x20no\x20fee_params\x20key\x20can\x20test\x20the\x20honesty\x20mechanically\x20—\x20revision_rounds_max\x20is\x20the\x20string\x20\x27unlimited\x27,\x20deliberately\x20not\x20a\x20number.'},{'id':'INV-UC-4','statement':'An\x20open\x20dispute\x20must\x20structurally\x20pause\x20the\x20acceptance\x20clock\x20and\x20the\x20delivered-anchored\x20post-acceptance\x20mirrors:\x20if\x20the\x20claim_filed\x20waypoint\x20is\x20removed\x20(FileDispute\x20edges\x20bypass\x20to\x20delivered)\x20while\x20AutoAcceptByKeeper\x20exists,\x20a\x20filed\x20case\x20can\x20be\x20auto-accepted\x20away\x20and\x20the\x20buyer-won\x20rail\x20permanently\x20loses\x20its\x20trigger\x20node\x20(the\x20§2-P5\x20race).','jurisdiction':'EU\x20PWD\x202024/2831\x20art.\x208\x20(right\x20to\x20an\x20effective\x20remedy\x20while\x20a\x20dispute\x20is\x20pending);\x20ADR\x20Directive\x202013/11/EU\x20(dispute\x20stays\x20between\x20filing\x20and\x20ruling).','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20since\x20v206\x20the\x20template\x20ships\x20the\x20claim_filed\x20waypoint\x20—\x20the\x20parked\x20order\x20leaves\x20delivered,\x20so\x20the\x20accept_timeout\x20opening\x20lock\x20and\x20both\x20PostAccept\x20mirrors\x20(anchored\x20on\x20the\x20delivered\x20ENTRY,\x20find=last)\x20cannot\x20advance\x20it;\x20the\x20mirrors\x20re-arm\x20on\x20withdrawal\x20or\x20zero-award\x20resume.\x20Removing\x20the\x20waypoint\x20(or\x20re-anchoring\x20the\x20mirrors\x20on\x20anything\x20but\x20the\x20delivered\x20entry)\x20re-fires\x20this\x20invariant.','violation':{'requiresFeeParamNonZero':'escrow_release_days','whileMissingForward':'FileDispute'}}]};
1
+ export const UPWORK_CATALOG_ORACLE={'productRef':'upwork-catalog','products':['upwork-project-catalog','fiverr','contra-services','freelancer-services'],'oracleVersion':'1.1.0','steps':[{'id':'M1','class':'offchain','name':'Buyer\x20browses\x20the\x20catalog\x20and\x20picks\x20a\x20tier\x20(search,\x20reviews,\x20portfolio)','actor':'buyer','precondition':[],'onchain':'not_applicable','commercialSemantics':'Catalog\x20discovery\x20is\x20off-chain\x20content\x20ranking.\x20The\x20tier\x20selection\x20becomes\x20the\x20sale\x20item\x20at\x20buy\x20time;\x20no\x20demand\x20object\x20or\x20search\x20primitive\x20exists\x20on-chain\x20—\x20discovery\x20is\x20eliminated,\x20not\x20modeled.','evidence':[]},{'id':'M2','class':'main','name':'Purchase\x20at\x20the\x20tiered\x20price\x20—\x20full\x20escrow\x20in\x20one\x20atomic\x20buy','actor':'buyer','precondition':['M1'],'onchain':'expressible','chainFootprint':{'node':'in_progress','moneyEffect':'escrow_in'},'commercialSemantics':'The\x20catalog\x20ENTRY\x20pair\x20is\x20in_progress\x20itself:\x20buying\x20and\x20starting\x20work\x20are\x20one\x20state\x20—\x20the\x20delivery\x20clock\x20starts\x20at\x20requirement\x20submission,\x20not\x20at\x20seller\x20acceptance.\x20Commission\x20is\x200\x20(the\x20incumbent\x27s\x20freelancer\x20fee\x20of\x20a\x20variable\x200-15%\x20is\x20exactly\x20what\x20the\x20zero-commission\x20model\x20exists\x20to\x20eliminate);\x20the\x20client-side\x20marketplace\x20fee\x20has\x20no\x20allocator\x20leg\x20and\x20is\x20documented\x20off-chain.','evidence':[{'file':'service.move','line':0x1d2,'pattern':'public\x20fun\x20buy2'},{'file':'order.move','line':0x21,'pattern':'public\x20struct\x20SaleItem'}]},{'id':'M3','class':'main','name':'Buyer\x20submits\x20requirement\x20answers\x20(brief\x20via\x20the\x20service\x20Contact)','actor':'buyer','precondition':['M2'],'onchain':'disclosure_only','commercialSemantics':'The\x20buyer\x27s\x20requirement\x20answers\x20travel\x20over\x20the\x20service\x27s\x20Contact\x20(Messenger),\x20as\x20an\x20IM\x20user\x20address\x20or\x20an\x20on-chain\x20WTS\x20proof.\x20The\x20corpus\x20is\x20explicit\x20that\x20declaring\x20customer_required\x20labels\x20alone\x20does\x20NOT\x20block\x20the\x20order\x20—\x20enforcement\x20requires\x20binding\x20pattern.required_info_evidence_gate\x20on\x20the\x20first\x20seller-side\x20forward,\x20and\x20the\x20required-info\x20message\x20shares\x20the\x20buyer\x27s\x20single\x20stranger-message\x20quota\x20(QUOTA\x20COUPLING).','disclosureProbe':'customer_required|required_info_evidence_gate|QUOTA\x20COUPLING','evidence':[{'file':'progress.move','line':0x48,'pattern':'TASK_BINDING_IDENTIFIER'}]},{'id':'M4','class':'main','name':'Seller\x20works\x20the\x20order\x20(same\x20in_progress\x20state\x20as\x20the\x20entry)','actor':'fulfiller','precondition':['M3'],'onchain':'expressible','chainFootprint':{'node':'in_progress','moneyEffect':'none'},'commercialSemantics':'There\x20is\x20no\x20separate\x20accept\x20transition:\x20the\x20entry\x20pair\x20means\x20work\x20starts\x20immediately\x20after\x20funding.\x20The\x20seller\x27s\x20exits\x20from\x20a\x20bad\x20order\x20(cancel/refund\x20requests,\x20E2/E4)\x20and\x20the\x20buyer\x27s\x20instant-cancel\x20window\x20(E1)\x20all\x20hang\x20off\x20this\x20single\x20state.','evidence':[]},{'id':'M5','class':'exception','name':'Requirements\x20never\x20arrive\x20—\x20keeper\x20auto-cancels\x20after\x2048h\x20(full\x20refund)','actor':'keeper','precondition':['M2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'RequirementsTimeout','prev':'in_progress','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'The\x2048h\x20requirements\x20timeout\x20(requirements_timeout_hours)\x20protects\x20the\x20seller\x20from\x20a\x20buyer\x20who\x20funds\x20and\x20ghosts:\x20keeper\x20slot\x201000\x20cancels\x20into\x20the\x20refund\x20terminal\x20and\x20the\x20order-anchored\x20allocator\x20pays\x20the\x20buyer\x20back\x20whole\x20—\x20first-class\x20on\x20this\x20template,\x20a\x20support\x20ticket\x20on\x20the\x20real\x20product.','guardKeyProbe':'requirements_timeout_48h','evidence':[]},{'id':'M6','class':'main','name':'Seller\x20submits\x20work\x20—\x20deliverable\x20WIP\x20hash\x20retained\x20as\x20evidence','actor':'fulfiller','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'delivered','moneyEffect':'none'},'commercialSemantics':'Delivery\x20gates\x20on\x20the\x20deliver_work\x20evidence\x20check\x20and\x20retains\x20the\x20WIP\x20hash\x20into\x20progress\x20history\x20—\x20\x27the\x20work\x20was\x20delivered\x27\x20becomes\x20an\x20on-chain\x20fact,\x20with\x20no\x20content\x20claim\x20(existence\x20is\x20not\x20trust).','guardKeyProbe':'deliver_work','evidence':[]},{'id':'M7','class':'main','name':'Buyer\x20approves\x20(Accept\x20&\x20Pay\x20signature)','actor':'buyer','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'accepted','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20manual\x20branch\x20is\x20the\x20buyer\x27s\x20own\x20signature\x20(order_payer\x20identity\x20edge)\x20—\x20the\x20seller\x20can\x20never\x20self-accept\x20(trust\x20mechanism\x20R4).\x20Its\x20sibling\x20timeout\x20branch\x20is\x20M8.','evidence':[]},{'id':'M8','class':'exception','name':'Acceptance\x20timeout\x20—\x20keeper\x20auto-accepts\x20a\x20silent\x20buyer\x20(14\x20days)','actor':'keeper','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'accepted','forward':'AutoAcceptByKeeper','prev':'delivered','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Distinct\x20forward\x20names\x20are\x20mandatory\x20on\x20sibling\x20edges\x20sharing\x20a\x20prev\x20(E_DUPLICATE_FORWARD_NAME,\x20audit-261012\x20B1)\x20—\x20the\x20two\x20acceptance\x20branches\x20are\x20explicit\x20edges\x20within\x20one\x20pair.\x20The\x20key_risk\x20names\x20this\x20the\x20template\x27s\x20unblock\x20rail\x20for\x20freelancer\x20payment.','guardKeyProbe':'accept_timeout','evidence':[]},{'id':'M9','class':'main','name':'Buyer\x20reviews\x20the\x20delivery\x20(window-gated\x20side\x20action)','actor':'buyer','precondition':['M8'],'onchain':'expressible','chainFootprint':{'node':'reviewed','forward':'Review','prev':'accepted','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'Review\x20is\x20a\x20reputation\x20rail,\x20never\x20a\x20settlement\x20gateway:\x20completed\x20is\x20reachable\x20from\x20accepted\x20directly,\x20so\x20a\x20silent\x20reviewer\x20cannot\x20strand\x20the\x20escrow.','guardKeyProbe':'review_window','evidence':[]},{'id':'M10','class':'main','name':'Settlement\x20after\x20review\x20—\x20seller\x20withdraws\x20(zero\x20commission)','actor':'merchant','precondition':['M9'],'onchain':'expressible','chainFootprint':{'node':'completed','forward':'CompleteAfterReview','prev':'reviewed','identity':'permission_index','moneyEffect':'release'},'commercialSemantics':'The\x20settlement\x20allocator\x20pays\x20the\x20freelancer\x20the\x20full\x20pool\x20(commission\x20rows\x20are\x200).\x20The\x20incumbent\x27s\x20tier\x20pricing\x20lives\x20in\x20the\x20sale\x20items\x20(M2),\x20not\x20in\x20any\x20post-settlement\x20split.','evidence':[]},{'id':'M11','class':'exception','name':'Review-settle\x20clock\x20—\x20keeper\x20auto-completes\x20after\x20the\x20settle\x20delay\x20(7\x20days)','actor':'keeper','precondition':['M9'],'onchain':'expressible','chainFootprint':{'node':'completed','forward':'AutoCompleteAfterReview','prev':'reviewed','identity':'permission_index','moneyEffect':'release'},'commercialSemantics':'GF2-09\x20cure:\x20after\x20settlement_delay_days\x20past\x20the\x20reviewed\x20entry\x20the\x20order\x20auto-completes,\x20so\x20a\x20stalled\x20review\x20can\x20never\x20strand\x20the\x20escrow\x20at\x20reviewed\x20(the\x20mainnet\x202.38\x20incident\x27s\x20lesson,\x20baked\x20into\x20both\x20freelance\x20templates).','guardKeyProbe':'review_settle_clock','evidence':[]},{'id':'M12','class':'main','name':'Positive\x20feedback\x20(praise\x20rail)','actor':'buyer','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'wonder','forward':'Praise','prev':'completed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20catalog\x20equivalent\x20of\x20the\x205-star\x20public\x20review\x20—\x20post-settlement,\x20write-once,\x20immune\x20to\x20the\x20real\x20product\x27s\x20limited\x20edit\x20window\x20(P2).','evidence':[]},{'id':'M13','class':'main','name':'Negative\x20feedback\x20(complain\x20rail)','actor':'buyer','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'no_wonder','forward':'Complain','prev':'completed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'Dissatisfaction\x20recorded\x20after\x20settlement\x20—\x20the\x20money\x20is\x20home;\x20on\x20the\x20real\x20product\x20this\x20is\x20the\x20public\x20review\x20with\x20no\x20funds\x20attached\x20either.','evidence':[]},{'id':'E1','class':'exception','name':'Instant\x20cancel\x20inside\x2024h\x20(buyer-side,\x20no\x20seller\x20consent)','actor':'buyer','precondition':['M2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'InstantCancel','prev':'in_progress','identity':'order_holder','moneyEffect':'refund'},'commercialSemantics':'The\x20incumbent\x27s\x2024h\x20instant\x20cancel\x20is\x20a\x20first-class\x20guarded\x20buyer\x20edge:\x20Clock\x20<=\x20order\x20time\x20+\x20instant_cancel_hours\x20(24),\x20project-bound,\x20straight\x20from\x20the\x20entry\x20state\x20into\x20the\x20100%\x20order-anchored\x20refund\x20terminal.\x20After\x2024h\x20the\x20request\x20rails\x20(E2/E4)\x20take\x20over.','guardKeyProbe':'instant_cancel_24h','evidence':[]},{'id':'E2','class':'exception','name':'Cancel\x20requested\x20mid-work\x20(seller\x20approves\x20/\x20declines\x20/\x20ignores)','actor':'buyer','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'cancel_requested','moneyEffect':'none'},'commercialSemantics':'After\x20the\x20instant\x20window\x20closes,\x20cancellation\x20becomes\x20a\x20request:\x20the\x20buyer\x20asks,\x20the\x20seller\x20decides\x20(GrantCancelBySeller),\x20and\x20seller\x20silence\x20resolves\x20in\x20the\x20buyer\x27s\x20favour\x20after\x20response_timeout_hours\x20via\x20the\x20keeper\x20(E3).\x20Granting\x20is\x20the\x20SELLER\x27s\x20decision\x20on\x20a\x20merchant-operator\x20edge\x20—\x20the\x20P1\x20fix\x20that\x20stopped\x20buyers\x20skipping\x20the\x2024h\x20gate\x20through\x20the\x20request\x20rails.','evidence':[]},{'id':'E3','class':'exception','name':'Cancel-response\x20timeout\x20—\x20keeper\x20auto-cancels\x20in\x20the\x20buyer\x27s\x20favour\x20(72h)','actor':'keeper','precondition':['E2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'CancelTimeoutByKeeper','prev':'cancel_requested','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'Seller\x20non-response\x20after\x20response_timeout_hours\x20(72)\x20auto-cancels:\x20a\x20silent\x20seller\x20cannot\x20strand\x20a\x20buyer\x20mid-work\x20once\x20the\x2024h\x20window\x20has\x20closed\x20—\x20the\x20prose-promised\x20keeper\x20duty\x20this\x20template\x20actually\x20ships.','guardKeyProbe':'cancel_response_timeout','evidence':[]},{'id':'E4','class':'exception','name':'Refund\x20requested\x20in-progress\x20(seller\x20grant\x20/\x20decline\x20/\x20silence)','actor':'buyer','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'refund_requested','moneyEffect':'none'},'commercialSemantics':'The\x20refund-request\x20rail\x20mirrors\x20the\x20cancel\x20rail:\x20buyer\x20asks\x20from\x20in_progress,\x20seller\x20grants\x20into\x20the\x20refund\x20terminal\x20(GrantRefundBySeller)\x20or\x20declines\x20back\x20to\x20the\x20work\x20state.\x20Same\x20seller-resolved\x20operator\x20fix\x20as\x20E2.','evidence':[]},{'id':'E5','class':'exception','name':'Refund\x20requested\x20post-delivery\x20/\x20post-acceptance\x20(window-gated\x20mirror)','actor':'buyer','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'refund_requested','moneyEffect':'none'},'commercialSemantics':'The\x20same\x20rail\x20is\x20reachable\x20from\x20delivered,\x20and\x20the\x20F-37(a)\x20mirror\x20keeps\x20it\x20alive\x20after\x20auto-accept:\x20PostAcceptRefund\x20from\x20accepted\x20rides\x20post_accept_refund_window\x20(post_accept_refund_days,\x20anchored\x20on\x20the\x20delivered\x20entry\x20so\x20the\x20total\x20remediation\x20horizon\x20is\x20independent\x20of\x20when\x20the\x20keeper\x20fired).','evidence':[]},{'id':'E6','class':'exception','name':'Revision\x20requested\x20(blocks\x20payment\x20until\x20redelivery)','actor':'buyer','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'revision_requested','moneyEffect':'none'},'commercialSemantics':'The\x20revision\x20loop:\x20the\x20request\x20parks\x20the\x20order\x20until\x20redelivery\x20returns\x20it\x20to\x20delivered,\x20and\x20each\x20redelivery\x20restarts\x20the\x20review\x20window.\x20The\x20F-37(a)\x20post-acceptance\x20mirror\x20(PostAcceptRevision,\x2021d\x20window)\x20keeps\x20the\x20track\x20alive\x20after\x20the\x20auto-accept\x20clock\x20has\x20moved\x20the\x20order\x20to\x20accepted\x20—\x20without\x20it\x20a\x20silent\x20buyer\x20who\x20wakes\x20up\x20after\x2014\x20days\x20finds\x20the\x20revision\x20track\x20topology-gone.','evidence':[]},{'id':'E7','class':'exception','name':'Revision\x20rounds\x20exhausted\x20(cap\x20declared,\x20not\x20a\x20contract\x20mechanism)','actor':'merchant','precondition':['E6'],'onchain':'disclosure_only','commercialSemantics':'The\x20catalog\x20sells\x20a\x20bounded\x20revision\x20count;\x20this\x20template\x20declares\x20\x27unlimited\x27\x20because\x20that\x20is\x20both\x20the\x20real\x20catalog\x27s\x20floor\x20policy\x20and\x20the\x20only\x20thing\x20the\x20current\x20contract\x20shape\x20can\x20honour\x20—\x20REVISION\x20CAP\x20IS\x20NOT\x20A\x20CONTRACT\x20MECHANISM,\x20disclosed\x20verbatim\x20in\x20the\x20trust\x20mechanisms.','disclosureProbe':'REVISION\x20CAP\x20IS\x20NOT\x20A\x20CONTRACT\x20MECHANISM|KEEP\x20\x27unlimited\x27','evidence':[]},{'id':'E8','class':'exception','name':'Late\x20delivery\x20beyond\x20the\x20promised\x20deadline\x20(late\x20penalty\x20/\x20priority)','actor':'buyer','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20prices\x20delivery\x20deadlines\x20(extra-fast\x20tiers)\x20and\x20compensates\x20lateness.\x20The\x20chain\x20has\x20no\x20delivery-deadline\x20primitive\x20—\x20the\x20entry\x20clock\x20starts\x20at\x20requirement\x20submission\x20but\x20nothing\x20aborts\x20or\x20compensates\x20on\x20lateness,\x20so\x20the\x20step\x20is\x20eliminated;\x20the\x20honest\x20substitutes\x20are\x20the\x20cancel/refund\x20rails\x20and\x20arbitration.','evidence':[]},{'id':'E9','class':'exception','name':'Buyer\x20ghosts\x20after\x20funding\x20(routes\x20to\x20the\x20requirements\x20timeout)','actor':'keeper','precondition':['M2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'RequirementsTimeout','prev':'in_progress','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'The\x20buyer-ghost\x20case\x20IS\x20the\x20M5\x20rail\x20—\x20the\x20exception\x20view\x20of\x20the\x20same\x20keeper\x20edge.\x20The\x20seller\x20is\x20made\x20whole\x20by\x20construction:\x20the\x20escrow\x20refunds\x20before\x20any\x20work\x20starts.','guardKeyProbe':'requirements_timeout_48h','evidence':[]},{'id':'E10','class':'exception','name':'Scope\x20change\x20demanded\x20mid-order\x20(out-of-tier\x20additions)','actor':'buyer','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20monetizes\x20scope\x20via\x20add-on\x20purchases\x20or\x20a\x20new\x20order.\x20There\x20is\x20no\x20scope-amendment\x20primitive\x20on-chain\x20and\x20the\x20order\x27s\x20items\x20are\x20fixed\x20at\x20buy\x20time\x20—\x20resolution\x20is\x20the\x20revision\x20loop\x20(E6)\x20plus\x20off-chain\x20negotiation,\x20then\x20a\x20fresh\x20order;\x20the\x20step\x20is\x20eliminated.','evidence':[]},{'id':'E11','class':'exception','name':'Cancellation\x20demanded\x20after\x20delivery\x20(routes\x20to\x20the\x20refund\x20request\x20rail)','actor':'buyer','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'refund_requested','moneyEffect':'none'},'commercialSemantics':'Post-delivery\x20the\x20cancel\x20rail\x20no\x20longer\x20applies;\x20the\x20demand\x20routes\x20onto\x20E5\x27s\x20refund-request\x20rail\x20with\x20its\x20window\x20guards.\x20The\x20seller\x27s\x20decline\x20returns\x20the\x20order\x20to\x20delivered\x20—\x20the\x20real\x20product\x27s\x20\x27rejection\x20denied,\x20open\x20a\x20dispute\x27\x20fork.','evidence':[]},{'id':'E12','class':'exception','name':'Buyer\x20abandons\x20pre-work\x20(abandoned\x20order\x20exit)','actor':'buyer','precondition':['M2'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'A\x20buyer\x20who\x20walks\x20before\x20work\x20starts\x20exits\x20through\x20the\x20same\x20terminal\x20—\x20instant\x20cancel\x20inside\x2024h\x20(E1),\x20the\x20request\x20rails\x20after,\x20or\x20the\x20requirements\x20timeout\x20(M5)\x20if\x20it\x20was\x20requirements\x20they\x20never\x20sent.\x20The\x20escrow\x20always\x20refunds\x20whole.','evidence':[]},{'id':'E13','class':'exception','name':'Partial\x20refund\x20negotiated\x20(split\x20of\x20the\x20escrow)','actor':'merchant','precondition':['E5'],'onchain':'disclosure_only','commercialSemantics':'The\x20real\x20catalog\x20resolves\x20many\x20disputes\x20at\x20a\x20partial\x20(e.g.\x20partial\x20delivery\x20for\x20partial\x20pay).\x20The\x20allocator\x20rails\x20are\x20binary\x20—\x20rate\x20sums\x20are\x2010000\x20with\x20a\x2010000/0\x20full-refund\x20shape\x20—\x20so\x20a\x20fraction\x20is\x20not\x20expressible;\x20the\x20corpus\x20states\x20the\x20rate-sum\x20rule,\x20and\x20the\x20honest\x20workaround\x20is\x20a\x20separate\x20Payment\x20object\x20off-template.','disclosureProbe':'Rate\x20sums\x20=\x2010000|Rate[^\x22]{0,6}10000','evidence':[]},{'id':'E14','class':'exception','name':'Buyer\x20account\x20banned\x20mid-order\x20(platform\x20enforcement)','actor':'platform','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'Account\x20bans\x20are\x20platform-database\x20enforcement;\x20the\x20escrow\x20is\x20bound\x20to\x20the\x20ORDER\x20and\x20the\x20rails\x20to\x20rosters,\x20so\x20a\x20ban\x20cannot\x20freeze\x20funds.\x20The\x20keeper\x20rails\x20(M5,\x20E3,\x20E5,\x20M8,\x20M11)\x20resolve\x20the\x20order\x20without\x20the\x20banned\x20identity\x20—\x20eliminated,\x20not\x20disclosed.','evidence':[]},{'id':'E15','class':'exception','name':'Seller\x20account\x20banned\x20mid-order\x20(platform\x20enforcement)','actor':'platform','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'Mirror\x20of\x20E14:\x20the\x20buyer\x20is\x20protected\x20by\x20the\x20timeout\x20rails\x20(requirements\x20timeout,\x20refund/cancel\x20keeper\x20exits)\x20and\x20the\x20award\x20edge,\x20not\x20by\x20the\x20seller\x27s\x20account\x20standing\x20—\x20eliminated.','evidence':[]},{'id':'E16','class':'exception','name':'Off-platform\x20payment\x20solicitation\x20(TOS\x20violation\x20by\x20the\x20seller)','actor':'platform','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20bans\x20solicitation\x20to\x20move\x20payment\x20off-platform.\x20On-chain,\x20buy2\x20is\x20the\x20only\x20escrow\x20entry\x20—\x20an\x20off-platform\x20deal\x20is\x20simply\x20outside\x20this\x20template\x27s\x20universe\x20and\x20produces\x20no\x20order\x20to\x20police;\x20the\x20step\x20is\x20eliminated.','evidence':[]},{'id':'E17','class':'exception','name':'Seller\x20stalls\x20a\x20refund/cancel\x20request\x20(keeper\x20resolves\x20in\x20the\x20buyer\x27s\x20favour)','actor':'keeper','precondition':['E4'],'onchain':'expressible_with_gap','chainFootprint':{'node':'closed_cancel','forward':'RefundTimeoutByKeeper','prev':'refund_requested','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'The\x20F-42\x20cure\x20(upw2-mn-261102):\x20a\x20buyer\x20parked\x20on\x20refund_requested\x20while\x20the\x20seller\x20ignores\x20it\x20had\x20zero\x20executable\x20forwards\x20and\x20no\x20clock\x20(R-DEAD-END:\x200/3\x20executable\x20edges\x20measured\x20live).\x20After\x20refund_response_hours\x20(72)\x20the\x20keeper\x20resolves\x20it\x20in\x20the\x20buyer\x27s\x20favour;\x20the\x20keeper\x20duty\x27s\x20miss_consequence\x20names\x20the\x20stranded-buyer\x20failure\x20mode\x20it\x20exists\x20to\x20prevent.','guardKeyProbe':'refund_response_timeout','gapPredicate':{'probe':'zero\x20executable\x20forwards|strands'},'evidence':[]},{'id':'E18','class':'exception','name':'Dispute\x20withdrawn\x20—\x20settled\x20out-of-band,\x20claim\x20pulled\x20before\x20ruling\x20(BANNED\x20-\x20D2\x20no-withdraw\x20doctrine:\x20a\x20filed\x20claim\x20reaches\x20a\x20RULING\x20instead)','actor':'buyer','precondition':['R1'],'onchain':'not_applicable','chainFootprint':{'node':'delivered','prev':'claim_filed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20real\x20catalog\x20lets\x20a\x20buyer\x20close\x20their\x20own\x20dispute.\x20Mounted\x20at\x20v206\x20(stage2\x20#23):\x20WithdrawClaim\x20(claim_filed\x20->\x20delivered,\x20order_payer,\x20ZERO\x20money\x20legs)\x20is\x20the\x20identity-only\x20exit\x20—\x20re-entry\x20appends\x20a\x20fresh\x20delivered\x20entry\x20and\x20re-anchors\x20the\x20accept\x20clock,\x20both\x20PostAccept\x20mirrors\x20and\x20the\x20filing\x20window\x20(find=last).\x20R27\x20rule\x203\x20unfreeze\x20order:\x20the\x20withdrawal\x20moves\x20Progress\x20ONLY\x20and\x20never\x20clears\x20the\x20Arb\x20case\x20—\x20the\x20buyer\x20concludes\x20the\x20case\x20on\x20the\x20venue\x20first,\x20then\x20withdraws.\x20Residual,\x20standing-disclosed:\x20the\x20identity\x20root\x20ships\x20no\x20arbitration\x20case-binding\x20leg\x20(ssng6-mn-261101\x20family)\x20—\x20replay/phantom-case\x20checks\x20ride\x20the\x20waypoint\x20structure\x20(only\x20an\x20order\x20that\x20passed\x20the\x20claim_filed\x20gate\x20can\x20sit\x20at\x20claim_filed),\x20never\x20an\x20arb.status\x20leg\x20(TRANSIENT-STATE\x20TRAP).','guardKeyProbe':'withdraw_claim','evidence':[]},{'id':'R1','class':'remedy','name':'File\x20a\x20dispute\x20(off-Machine\x20Arbitration\x20object)','actor':'buyer','precondition':['M6'],'onchain':'disclosure_only','commercialSemantics':'Disputes\x20never\x20touch\x20machine\x20nodes:\x20they\x20ride\x20the\x20independent\x20Arbitration\x20object.\x20The\x20venue\x20must\x20be\x20bound\x20only\x20when\x20operational\x20—\x20a\x20fresh\x20Arbitration\x20ships\x20paused\x20and\x20a\x20paused\x20venue\x20rejects\x20every\x20dispute\x20with\x20E_PAUSED\x20(the\x20MCP\x20pre-publish\x20scan\x20hard-blocks\x20binding\x20a\x20paused\x20venue).','disclosureProbe':'venue\x20readiness|E_PAUSED|paused\x20venue','evidence':[{'file':'arbitration.move','line':0x169,'pattern':'assert_op_permission'}]},{'id':'R2','class':'remedy','name':'Buyer-won\x20ruling\x20re-routes\x20the\x20stalled\x20order\x20into\x20the\x20refund\x20terminal','actor':'arbitrator','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'ArbRefund','prev':'delivered','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'GF2-31\x20award-settle:\x20the\x20ruling\x20alone\x20only\x20writes\x20case\x20status\x20and\x20never\x20moves\x20money\x20—\x20the\x20ArbRefund\x20edge\x20(dedicated\x20refund-rail\x20slot\x201001,\x20never\x20the\x201002\x20settle\x20bucket,\x20W5-14)\x20lets\x20the\x20refund_gate\x20rail\x20actually\x20pay\x20the\x20escrowed\x20principal.\x20The\x20zero-award\x20exclusion\x20leg\x20keeps\x20a\x20dismissed\x20claim\x20off\x20this\x20edge.\x20Since\x20v206\x20the\x20design\x20has\x20TWO\x20instances\x20of\x20this\x20guard\x20(M-T2\x20one\x20instance\x20per\x20exit\x20edge):\x20this\x20prev=delivered\x20edge\x20(keeper-down\x20fallback\x20when\x20the\x20FileDispute\x20record\x20edge\x20was\x20never\x20driven)\x20and\x20the\x20claim_filed\x20->\x20closed_cancel\x20instance\x20(arb_refund_filed)\x20for\x20a\x20ruling\x20on\x20a\x20RECORDED\x20claim.','guardKeyProbe':'arb_refund','evidence':[]},{'id':'R3','class':'remedy','name':'Arbitration\x20indemnity\x20paid\x20from\x20the\x20compensation\x20fund','actor':'arbitrator','precondition':['R1'],'onchain':'disclosure_only','commercialSemantics':'Indemnity\x20pays\x20from\x20the\x20pre-locked\x20compensation\x20fund,\x20capped\x20at\x203x\x20the\x20escrowed\x20amount\x20(MAX_INDEMNITY_MULTIPLE)\x20—\x20the\x20cap\x20multiplies\x20the\x20ESCROW,\x20never\x20the\x20gig\x27s\x20face\x20value,\x20and\x20the\x20fund\x20must\x20be\x20non-zero\x20at\x20publish\x20whenever\x20the\x20template\x20declares\x20it.','disclosureProbe':'compensation\x20fund|MAX_INDEMNITY_MULTIPLE|indemnity','evidence':[{'file':'arb.move','line':0x15,'pattern':'MAX_INDEMNITY_MULTIPLE'},{'file':'service.move','line':0x24c,'pattern':'public\x20fun\x20compensation_claim'}]},{'id':'R4','class':'remedy','name':'Arbitration\x2030-day\x20silence\x20=\x20acceptance\x20(case-fee\x20release)','actor':'platform','precondition':['R2'],'onchain':'not_applicable','commercialSemantics':'Protocol-level\x20arb-object\x20finality\x20(WITHDRAW_DURATION_TIME,\x20silence\x20treated\x20as\x20acceptance)\x20releasing\x20the\x20case\x20fee.\x20The\x20real\x20catalog\x27s\x20CS\x20ruling\x20executes\x20immediately\x20—\x20no\x20analog\x20step\x20—\x20and\x20this\x20template\x27s\x20machine\x20refund\x20rail\x20keys\x20on\x20the\x20ruling\x20state\x20directly,\x20so\x20the\x20window\x20never\x20touches\x20the\x20buyer\x20path.','evidence':[{'file':'arb.move','line':0x10,'pattern':'WITHDRAW_DURATION_TIME'}]},{'id':'R5','class':'remedy','name':'Escrow-exit\x20invariant\x20—\x20every\x20terminal\x20drains,\x20awarded\x20orders\x20included','actor':'merchant','precondition':['M6'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'Both\x20terminals\x20drain:\x20settlement\x20via\x20the\x20settle_gate\x20node\x20set\x20(completed\x20/\x20wonder\x20/\x20no_wonder),\x20refunds\x20via\x20the\x20order-anchored\x20refund_gate\x20at\x20closed_cancel,\x20and\x20a\x20stalled\x20delivered\x20order\x20via\x20the\x20award\x20edge\x20(R2).\x20The\x20build\x20note\x20was\x20rewritten\x20post-H1B\x20(v206):\x20the\x20former\x20recover_gate\x20rail\x20is\x20deleted\x20and\x20closed_cancel\x20is\x20the\x20sole\x20non-settlement\x20exit\x20—\x20the\x20invariant\x20holds\x20via\x20the\x20routes\x20listed\x20here.','evidence':[]},{'id':'R6','class':'remedy','name':'Seller\x20makes\x20it\x20right\x20with\x20a\x20partial\x20Payment\x20(off-allocator\x20workaround)','actor':'merchant','precondition':['E13'],'onchain':'disclosure_only','commercialSemantics':'The\x20corpus\x27s\x20own\x20suggested\x20route\x20for\x20money\x20the\x20allocator\x20cannot\x20express:\x20document\x20client-side\x20fees\x20and\x20goodwill\x20off-chain\x20or\x20via\x20a\x20separate\x20Payment\x20object.\x20A\x20Payment\x20is\x20a\x20permissionless\x20kernel\x20object\x20outside\x20this\x20template\x20—\x20the\x20disclosure\x20is\x20the\x20remedy\x20the\x20template\x20offers.','disclosureProbe':'separate\x20Payment|off-chain','evidence':[{'file':'payment.move','line':0x5d,'pattern':'struct\x20Payment'}]},{'id':'R7','class':'remedy','name':'Keeper\x20downtime\x20—\x20order\x20stalls,\x20manual\x20confirmation\x20fallback','actor':'keeper','precondition':['M8'],'onchain':'disclosure_only','commercialSemantics':'The\x20timeout\x20rails\x20depend\x20on\x20a\x20live\x20keeper\x20(the\x20keeper_dependencies\x20list\x20is\x20first-class:\x20requirements\x20timeout,\x20acceptance\x20timeout,\x20seller\x20non-response).\x20Downtime\x20reverts\x20every\x20auto-rail\x20to\x20manual\x20confirmation\x20—\x20the\x20corpus\x27s\x20keeper\x20prose\x20is\x20the\x20disclosure.','disclosureProbe':'keeper','evidence':[]},{'id':'R8','class':'remedy','name':'Ruling\x20dismissed\x20—\x20order\x20resumes\x20at\x20delivered\x20(re-dispute\x20window\x20re-armed)','actor':'merchant','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'delivered','forward':'ResumeAfterDismissal','prev':'claim_filed','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Mounted\x20at\x20v206\x20(stage2\x20#23):\x20ResumeAfterDismissal\x20(claim_filed\x20->\x20delivered,\x20tpl_forward_arb_ruling_dismissed\x20zero-award\x20polarity,\x20merchant\x20arbitration-execution\x20slot\x201004\x20—\x20the\x20family\x20arb\x20bucket,\x20kept\x20OFF\x20the\x201002\x20settle/keeper\x20rail).\x20The\x20dismissed\x20buyer\x20keeps\x20the\x20refund/revision/review\x20rails;\x20the\x20re-entry\x20appends\x20a\x20fresh\x20delivered\x20entry\x20and\x20re-anchors\x20the\x20windows\x20(find=last),\x20so\x20the\x20re-dispute\x20window\x20re-arms.\x20Venue\x20binding\x20rides\x20identifier\x203\x20—\x20deliberately\x20asymmetric\x20with\x20the\x20won\x20root\x27s\x20identifier\x204\x20(K3\x20C12).','guardKeyProbe':'arb_dismissed_resume','evidence':[]},{'id':'P1','class':'post','name':'Review-reward\x20claim\x20paid\x20from\x20the\x20pre-funded\x20pool','actor':'platform','precondition':['M9'],'onchain':'expressible','chainFootprint':{'node':'reviewed','moneyEffect':'reward'},'commercialSemantics':'Sale-time\x20reward\x20planning\x20shared\x20with\x20the\x20sibling\x20template:\x20a\x20pre-funded\x20review_reward_pool\x20pays\x20review_reward_per_claim\x20per\x20accepted\x20review,\x20claims\x20closing\x20reward_claim_closes_after_days\x20after\x20the\x20window\x20—\x20the\x20catalog\x20review\x20economy\x20with\x20money\x20instead\x20of\x20badges.','evidence':[{'file':'reward.move','line':0xe3,'pattern':'public\x20fun\x20claim'}]},{'id':'P2','class':'post','name':'Simultaneous\x20reviews\x20on\x20one\x20delivery\x20(first\x20write\x20wins,\x20both\x20immutable)','actor':'buyer','precondition':['M9'],'onchain':'expressible','chainFootprint':{'node':'reviewed','moneyEffect':'none'},'commercialSemantics':'Both\x20parties\x20may\x20review\x20the\x20same\x20delivery:\x20praise/complain\x20columns\x20are\x20write-once\x20(E_POLICY_WRITE_ONCE_CONFLICT\x20on\x20overwrite)\x20and\x20independent\x20—\x20the\x20chain\x20holds\x20no\x20edit\x20window\x20to\x20arbitrate\x20(see\x20P2\x20of\x20the\x20sibling\x20oracle\x20for\x20the\x20incumbent\x27s\x2014-day\x20edit\x20contrast).','evidence':[{'file':'repository.move','line':0x3c,'pattern':'E_POLICY_WRITE_ONCE_CONFLICT'}]},{'id':'P3','class':'post','name':'Repeat\x20purchase\x20/\x20multi-gig\x20project\x20(no\x20bundle,\x20one\x20order\x20per\x20gig)','actor':'buyer','precondition':['M10'],'onchain':'expressible_with_gap','chainFootprint':{'node':'in_progress','moneyEffect':'escrow_in'},'commercialSemantics':'Repeat\x20work\x20re-enters\x20at\x20the\x20entry\x20pair:\x20a\x20fresh\x20escrow\x20per\x20gig.\x20The\x20disclosed\x20gap\x20(differences\x20text):\x20NO\x20milestones\x20—\x20a\x20single\x20funded\x20order\x20per\x20catalog\x20purchase,\x20so\x20a\x20multi-gig\x20project\x20is\x20invisible\x20on-chain\x20except\x20as\x20order\x20history.','gapPredicate':{'probe':'single\x20funded\x20order|NO\x20milestones'},'evidence':[]},{'id':'P4','class':'post','name':'Seller\x20level\x20/\x20badge\x20progression\x20from\x20ratings','actor':'platform','precondition':['P1'],'onchain':'not_applicable','commercialSemantics':'Level\x20thresholds\x20are\x20platform-side\x20computations\x20over\x20rating\x20history.\x20No\x20on-chain\x20primitive\x20computes\x20aggregates\x20—\x20eliminated;\x20the\x20truthful\x20signal\x20remains\x20the\x20immutable\x20review\x20and\x20reward\x20rows.','evidence':[]},{'id':'P5','class':'post','name':'Clearing\x20period\x20before\x20payout\x20(settlement\x20delay\x20vs\x20the\x20incumbent\x27s\x2014\x20days)','actor':'merchant','precondition':['M11'],'onchain':'expressible','chainFootprint':{'node':'completed','moneyEffect':'release'},'commercialSemantics':'The\x20settle\x20clock\x20(settlement_delay_days\x20=\x207)\x20is\x20the\x20clearing\x20period\x20—\x20half\x20the\x20marketplace\x27s\x2014-day\x20cycle,\x20expressed\x20natively\x20by\x20the\x20same\x20GF2-09\x20keeper\x20edge\x20that\x20guarantees\x20the\x20exit\x20(M11).','evidence':[]}],'invariants':[{'id':'INV-UC-1','statement':'The\x20instant-cancel\x20promise\x20(24h,\x20buyer-side,\x20full\x20refund)\x20must\x20exist\x20as\x20a\x20guarded\x20machine\x20edge:\x20if\x20the\x20InstantCancel\x20forward\x20is\x20removed\x20while\x20instant_cancel_hours\x20>\x200,\x20the\x20corpus\x20sells\x20a\x20window\x20that\x20does\x20not\x20exist\x20and\x20every\x20early\x20exit\x20funnels\x20through\x20seller-approved\x20request\x20rails.','jurisdiction':'EU\x20Consumer\x20Rights\x20Directive\x202011/83\x20art.\x2012\x20(14-day\x20withdrawal\x20analogue,\x20shortened\x20by\x20the\x20platform\x27s\x20own\x2024h\x20policy);\x20Fiverr/Upwork\x20catalog\x20cancellation\x20terms.','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20the\x20template\x20ships\x20InstantCancel\x20(in_progress\x20->\x20closed_cancel,\x20instant_cancel_24h,\x20project-bound\x20Clock\x20window).\x20Removing\x20the\x20forward\x20while\x20the\x20knob\x20stays\x20configured\x20re-fires\x20this\x20invariant.','violation':{'requiresFeeParamNonZero':'instant_cancel_hours','whileMissingForward':'InstantCancel'}},{'id':'INV-UC-2','statement':'A\x20silent\x20seller\x20must\x20not\x20strand\x20a\x20buyer\x20mid-work:\x20every\x20request\x20rail\x20the\x20buyer\x20can\x20enter\x20needs\x20a\x20resolution\x20clock.\x20If\x20the\x20refund-request\x20keeper\x20exit\x20is\x20removed\x20while\x20response_timeout_hours\x20>\x200,\x20a\x20parked\x20refund_requested\x20has\x20zero\x20executable\x20forwards\x20and\x20no\x20clock\x20(the\x20F-42\x20R-DEAD-END,\x20measured\x20live\x20at\x200/3\x20executable\x20edges).','jurisdiction':'EU\x20PWD\x202024/2831\x20art.\x206\x20(prompt\x20payment);\x20NYC\x20FIFA\x20§\x2020-927\x20analogue\x20for\x20catalog\x20gigs.','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20the\x20template\x20ships\x20RefundTimeoutByKeeper\x20(refund_requested\x20->\x20closed_cancel,\x20refund_response_timeout,\x20F-42).\x20Removing\x20the\x20forward\x20while\x20the\x20response\x20knob\x20stays\x20configured\x20re-fires\x20this\x20invariant.','violation':{'requiresFeeParamNonZero':'response_timeout_hours','whileMissingForward':'RefundTimeoutByKeeper'}},{'id':'INV-UC-3','statement':'The\x20revision\x20cap\x20must\x20not\x20be\x20sold\x20as\x20a\x20contract\x20mechanism:\x20the\x20catalog\x20sells\x20bounded\x20revisions,\x20the\x20chain\x20has\x20no\x20revision\x20counter,\x20and\x20the\x20template\x20declares\x20\x27unlimited\x27\x20as\x20the\x20only\x20honest\x20value.','jurisdiction':'FTC\x20Act\x20§\x205\x20(deceptive\x20listing\x20claims);\x20EU\x20Unfair\x20Commercial\x20Practices\x20Directive\x202005/29\x20art.\x206.','chainConflict':'Text-only:\x20the\x20corpus\x20discloses\x20it\x20verbatim\x20(REVISION\x20CAP\x20IS\x20NOT\x20A\x20CONTRACT\x20MECHANISM)\x20and\x20no\x20fee_params\x20key\x20can\x20test\x20the\x20honesty\x20mechanically\x20—\x20revision_rounds_max\x20is\x20the\x20string\x20\x27unlimited\x27,\x20deliberately\x20not\x20a\x20number.'},{'id':'INV-UC-4','statement':'An\x20open\x20dispute\x20must\x20structurally\x20pause\x20the\x20acceptance\x20clock\x20and\x20the\x20delivered-anchored\x20post-acceptance\x20mirrors:\x20if\x20the\x20claim_filed\x20waypoint\x20is\x20removed\x20(FileDispute\x20edges\x20bypass\x20to\x20delivered)\x20while\x20AutoAcceptByKeeper\x20exists,\x20a\x20filed\x20case\x20can\x20be\x20auto-accepted\x20away\x20and\x20the\x20buyer-won\x20rail\x20permanently\x20loses\x20its\x20trigger\x20node\x20(the\x20§2-P5\x20race).','jurisdiction':'EU\x20PWD\x202024/2831\x20art.\x208\x20(right\x20to\x20an\x20effective\x20remedy\x20while\x20a\x20dispute\x20is\x20pending);\x20ADR\x20Directive\x202013/11/EU\x20(dispute\x20stays\x20between\x20filing\x20and\x20ruling).','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20since\x20v206\x20the\x20template\x20ships\x20the\x20claim_filed\x20waypoint\x20—\x20the\x20parked\x20order\x20leaves\x20delivered,\x20so\x20the\x20accept_timeout\x20opening\x20lock\x20and\x20both\x20PostAccept\x20mirrors\x20(anchored\x20on\x20the\x20delivered\x20ENTRY,\x20find=last)\x20cannot\x20advance\x20it;\x20the\x20mirrors\x20re-arm\x20on\x20withdrawal\x20or\x20zero-award\x20resume.\x20Removing\x20the\x20waypoint\x20(or\x20re-anchoring\x20the\x20mirrors\x20on\x20anything\x20but\x20the\x20delivered\x20entry)\x20re-fires\x20this\x20invariant.','violation':{'requiresFeeParamNonZero':'escrow_release_days','whileMissingForward':'FileDispute'}}]};
@@ -1 +1 @@
1
- export const UPWORK_ORACLE={'productRef':'upwork','products':['upwork','freelancer','guru','zbj','epwk'],'oracleVersion':'1.1.0','steps':[{'id':'M1','class':'offchain','name':'Client\x20posts\x20a\x20job\x20(scope,\x20budget\x20range,\x20skill\x20requirements)','actor':'buyer','precondition':[],'onchain':'not_applicable','commercialSemantics':'Job\x20posting\x20is\x20pure\x20off-chain\x20content\x20on\x20the\x20real\x20product:\x20the\x20description\x20lives\x20in\x20the\x20platform\x20database\x20and\x20search\x20index.\x20This\x20template\x20has\x20no\x20demand\x20object\x20—\x20discovery\x20happens\x20outside\x20the\x20machine\x20entirely.','evidence':[]},{'id':'M2','class':'offchain','name':'Freelancer\x20submits\x20proposals\x20(Connects\x20spent\x20per\x20bid)','actor':'fulfiller','precondition':['M1'],'onchain':'not_applicable','commercialSemantics':'Bidding\x20consumes\x20Connects\x20(a\x20paid\x20off-chain\x20attention\x20currency).\x20The\x20chain\x20holds\x20no\x20proposal\x20objects\x20and\x20no\x20bid\x20fee\x20rail\x20—\x20attention\x20economics\x20stay\x20off-chain\x20by\x20design.','evidence':[]},{'id':'M3','class':'offchain','name':'Interview\x20and\x20contract\x20negotiation\x20(rate,\x20milestones,\x20terms)','actor':'buyer','precondition':['M2'],'onchain':'not_applicable','commercialSemantics':'Interviews\x20and\x20term\x20negotiation\x20are\x20Messenger/off-chain\x20acts.\x20Their\x20only\x20product\x20is\x20the\x20contract\x20the\x20escrow\x20step\x20(M4)\x20encodes:\x20one\x20fixed-price\x20order,\x20milestones\x20as\x20chained\x20orders.','evidence':[]},{'id':'M6','class':'offchain','name':'Hourly-contract\x20variant\x20with\x20a\x20work-diary\x20(time\x20tracking\x20with\x20screenshots)','actor':'fulfiller','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'Hourly\x20contracts\x20with\x20an\x20automatic\x20work-diary\x20are\x20a\x20separate\x20billing\x20mode\x20on\x20the\x20real\x20product.\x20This\x20template\x20models\x20the\x20incumbent\x27s\x20fixed-price\x20contracts\x20only\x20(its\x20own\x20build_notes\x20say\x20so);\x20there\x20is\x20no\x20hourly\x20primitive,\x20no\x20timer\x20metering\x20and\x20no\x20diary\x20—\x20the\x20variant\x20is\x20eliminated,\x20not\x20disclosed.','evidence':[]},{'id':'E6','class':'offchain','name':'Hourly-contract\x20dispute\x20over\x20logged\x20time\x20(screenshot\x20evidence\x20review)','actor':'buyer','precondition':['M6'],'onchain':'not_applicable','commercialSemantics':'Hourly-billing\x20disputes\x20are\x20adjudicated\x20in-app\x20against\x20diary\x20screenshots.\x20With\x20no\x20hourly\x20mode\x20(M6)\x20the\x20chain\x20never\x20sees\x20logged\x20time,\x20so\x20this\x20dispute\x20class\x20cannot\x20exist\x20on\x20the\x20machine\x20—\x20the\x20dispute\x20rails\x20(R1/R2)\x20cover\x20fixed-price\x20deliveries\x20only.','evidence':[]},{'id':'M4','class':'main','name':'Contract\x20signed\x20and\x20the\x20full\x20price\x20escrowed\x20(one\x20atomic\x20buy)','actor':'buyer','precondition':['M3'],'onchain':'expressible','chainFootprint':{'node':'paid','moneyEffect':'escrow_in'},'commercialSemantics':'The\x20fixed-price\x20contract\x20is\x20funded\x20in\x20one\x20atomic\x20transaction\x20at\x20the\x20machine\x20entry\x20—\x20there\x20is\x20no\x20separate\x20offer/accept\x20handshake.\x20The\x20real\x20product\x27s\x20initiation\x20fee\x20and\x20the\x20client-side\x20marketplace\x20fee\x20have\x20no\x20allocator\x20leg:\x20commission_rate_bps\x20is\x200\x20and\x20stays\x200\x20(MERCHANT\x20FREEDOM\x20is\x20the\x20template\x27s\x20reason\x20to\x20exist).','evidence':[{'file':'service.move','line':0x1d2,'pattern':'public\x20fun\x20buy2'}]},{'id':'M5','class':'main','name':'Freelancer\x20accepts\x20(permission\x20slot)\x20and\x20works','actor':'fulfiller','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'in_progress','moneyEffect':'none'},'commercialSemantics':'Acceptance\x20is\x20a\x20permission-index\x20act,\x20not\x20a\x20signature\x20—\x20roster\x20membership\x20IS\x20admission\x20power.\x20Work-in-progress\x20status\x20is\x20the\x20state\x20the\x20client\x27s\x20cancel\x20primitive\x20(E4)\x20can\x20reach;\x20the\x20work\x20itself\x20is\x20off-chain.','evidence':[]},{'id':'M7','class':'main','name':'Deliverable\x20submitted\x20with\x20a\x20WIP-hash\x20evidence\x20row','actor':'fulfiller','precondition':['M5'],'onchain':'expressible','chainFootprint':{'node':'delivered','forward':'SubmitDeliverable','prev':'in_progress','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Delivery\x20is\x20gated\x20on\x20an\x20order-keyed\x20evidence\x20row:\x20the\x20WIP\x20hash\x20is\x20the\x20on-chain\x20fact\x20\x27a\x20deliverable\x20exists\x27,\x20queryable\x20by\x20the\x20client\x20—\x20never\x20the\x20deliverable\x20content\x20itself.\x20Existence\x20is\x20not\x20trust\x20(R-X1-17).','guardKeyProbe':'submit_evidence','evidence':[{'file':'repository.move','line':0x3c,'pattern':'E_POLICY_WRITE_ONCE_CONFLICT'}]},{'id':'M8','class':'main','name':'Client\x20confirms\x20acceptance\x20(manual\x20signature)','actor':'buyer','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'accepted','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'Acceptance\x20is\x20the\x20kernel-injected\x20order-holder\x20signature\x20edge\x20—\x20the\x20freelancer\x20can\x20never\x20self-accept\x20(trust\x20mechanism\x20R4).\x20The\x20manual\x20branch\x20and\x20the\x20timeout\x20branch\x20(M9)\x20live\x20on\x20distinct\x20edges\x20because\x20their\x20signer\x20sets\x20are\x20disjoint.','evidence':[]},{'id':'M9','class':'exception','name':'Acceptance\x20timeout\x20—\x20keeper\x20auto-advances\x20a\x20silent\x20client\x20(14\x20days)','actor':'keeper','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'accepted','forward':'AcceptTimeout','prev':'delivered','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'A\x20silent\x20client\x20cannot\x20strand\x20the\x20escrow\x20at\x20delivered:\x20the\x2014-day\x20timeout\x20(escrow_release_days)\x20moves\x20the\x20order\x20to\x20accepted\x20on\x20a\x20separate\x20merchant-side\x20keeper\x20edge.\x20The\x20real\x20product\x20has\x20no\x20such\x20rail\x20—\x20silence\x20is\x20resolved\x20by\x20support\x20tickets.','guardKeyProbe':'accept_timeout','evidence':[]},{'id':'M10','class':'main','name':'Client\x20reviews\x20the\x20delivery\x20(side\x20action,\x20window-gated)','actor':'buyer','precondition':['M8'],'onchain':'expressible','chainFootprint':{'node':'reviewed','forward':'Review','prev':'accepted','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'Review\x20is\x20an\x20optional\x20reputation\x20side-stop\x20inside\x20the\x2014-day\x20review\x20window\x20—\x20never\x20a\x20settlement\x20gateway:\x20the\x20order\x20can\x20complete\x20from\x20accepted\x20directly\x20(M11)\x20so\x20a\x20silent\x20reviewer\x20cannot\x20strand\x20the\x20escrow.','guardKeyProbe':'review_window','evidence':[]},{'id':'M11','class':'main','name':'Settlement\x20—\x20freelancer\x20withdraws\x20released\x20funds','actor':'merchant','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'completed','forward':'CompleteAfterReview','prev':'reviewed','identity':'permission_index','moneyEffect':'release'},'commercialSemantics':'The\x20settle\x20allocator\x20pays\x20the\x20freelancer\x20leg\x20at\x20rate\x2010000\x20(zero\x20commission)\x20with\x20a\x20rate-0\x20order-anchor\x20row\x20binding\x20the\x20guard\x20to\x20the\x20paying\x20order\x20(CR-01).\x20The\x20real\x20product\x20deducts\x20a\x20variable\x20freelancer\x20service\x20fee\x20(0-15%)\x20plus\x20a\x20client-side\x20marketplace\x20fee\x20—\x20both\x20eliminated\x20here.','evidence':[]},{'id':'M12','class':'exception','name':'Review-settle\x20clock\x20—\x20keeper\x20auto-completes\x20after\x20the\x20settle\x20delay\x20(7\x20days)','actor':'keeper','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'completed','forward':'AutoCompleteAfterReview','prev':'reviewed','identity':'permission_index','moneyEffect':'release'},'commercialSemantics':'GF2-09:\x20after\x20settlement_delay_days\x20past\x20the\x20reviewed\x20entry\x20the\x20order\x20auto-completes,\x20so\x20a\x20stalled\x20review\x20can\x20never\x20strand\x20the\x20escrow\x20at\x20reviewed\x20(the\x20mainnet\x202.38\x20incident\x27s\x20cure).\x20Same\x20terminal\x20as\x20M11.','guardKeyProbe':'review_settle_clock','evidence':[]},{'id':'M13','class':'main','name':'Positive\x20feedback\x20(praise\x20rail)','actor':'buyer','precondition':['M11'],'onchain':'expressible','chainFootprint':{'node':'wonder','forward':'Praise','prev':'completed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20praise\x20edge\x20is\x20the\x20client\x27s\x20post-settlement\x20endorsement\x20—\x20the\x20on-chain\x20counterpart\x20of\x20the\x20real\x20product\x27s\x205-star\x20public\x20feedback,\x20structurally\x20immune\x20to\x20retroactive\x20editing.','evidence':[]},{'id':'M14','class':'main','name':'Negative\x20feedback\x20(complain\x20rail)','actor':'buyer','precondition':['M11'],'onchain':'expressible','chainFootprint':{'node':'no_wonder','forward':'Complain','prev':'completed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20complain\x20edge\x20records\x20dissatisfaction\x20without\x20touching\x20settled\x20funds\x20—\x20the\x20money\x20is\x20already\x20home;\x20the\x20real\x20product\x27s\x20dispute-after-payment\x20has\x20no\x20on-chain\x20clawback\x20to\x20reach\x20for\x20either.','evidence':[]},{'id':'E1','class':'exception','name':'Proposal\x20not\x20selected\x20(bid\x20rejected)','actor':'buyer','precondition':['M2'],'onchain':'not_applicable','commercialSemantics':'Bid\x20rejection\x20is\x20an\x20off-chain\x20attention\x20event\x20(Connects\x20are\x20spent\x20either\x20way).\x20No\x20order\x20exists\x20yet,\x20so\x20the\x20machine\x20has\x20nothing\x20to\x20eliminate\x20—\x20the\x20step\x20lives\x20entirely\x20outside\x20the\x20template.','evidence':[]},{'id':'E2','class':'exception','name':'Job\x20posting\x20withdrawn\x20before\x20award','actor':'buyer','precondition':['M1'],'onchain':'not_applicable','commercialSemantics':'The\x20client\x20closes\x20the\x20posting\x20pre-award;\x20again\x20no\x20order\x20exists.\x20The\x20template\x27s\x20pre-work\x20cancellation\x20(E3)\x20only\x20exists\x20after\x20escrow,\x20which\x20is\x20the\x20honest\x20boundary.','evidence':[]},{'id':'E3','class':'exception','name':'Pre-work\x20cancellation\x20(full\x20refund\x20from\x20the\x20paid\x20entry)','actor':'buyer','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'The\x20paid\x20->\x20closed_cancel\x20edge\x20cancels\x20before\x20work\x20starts\x20and\x20the\x20order-anchored\x20refund\x20allocator\x20pays\x20the\x20client\x20back\x20whole.\x20The\x20real\x20product\x20refunds\x20the\x20escrowed\x20milestone\x20minus\x20nothing\x20at\x20this\x20stage\x20—\x20a\x20faithful\x20match.','evidence':[]},{'id':'E4','class':'exception','name':'Client\x20unilaterally\x20cancels\x20a\x20RUNNING\x20order\x20(cancel-from-in-progress\x20primitive)','actor':'buyer','precondition':['M5'],'onchain':'expressible_with_gap','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'Live-proven\x20(ctra2-mn-261020\x20E7):\x20the\x20chain\x27s\x20cancel-from-in-progress\x20primitive\x20needs\x20NO\x20freelancer\x20consent,\x20bypasses\x20the\x20declared\x20paid-only\x20cancel\x20edge,\x20and\x20the\x20order-anchored\x20rail\x20refunds\x20the\x20FULL\x20escrow.\x20The\x20gap\x20is\x20real\x20and\x20disclosed:\x20the\x20freelancer\x20has\x20zero\x20on-chain\x20protection\x20for\x20work\x20already\x20spent,\x20and\x20a\x20cancellation\x20fee\x20or\x20non-refundable\x20prepay\x20is\x20NOT\x20expressible\x20with\x20these\x20rails.','gapPredicate':{'probe':'ZERO\x20on-chain\x20protection|cancellation\x20fee\x20or\x20non-refundable\x20prepay\x20is\x20NOT\x20expressible'},'evidence':[]},{'id':'E5','class':'exception','name':'Milestone\x20dispute\x20—\x20buyer\x20escalates\x20a\x20rejected\x20deliverable\x20to\x20arbitration','actor':'buyer','precondition':['M7'],'onchain':'expressible','chainFootprint':{'forward':'ArbRefund','moneyEffect':'refund'},'commercialSemantics':'Filing\x20happens\x20on\x20the\x20off-Machine\x20Arbitration\x20object;\x20its\x20machine-visible\x20consequence\x20is\x20the\x20award\x20edge:\x20a\x20buyer-won\x20ruling\x20re-routes\x20the\x20stalled\x20delivered\x20order\x20into\x20closed_cancel\x20(GF2-31),\x20where\x20the\x20refund\x20allocator\x20moves\x20the\x20escrowed\x20principal.\x20Disputes\x20never\x20touch\x20intermediate\x20machine\x20nodes\x20(R-M1-11).','guardKeyProbe':'arb_refund','evidence':[]},{'id':'E7','class':'exception','name':'Delivery\x20rejected\x20—\x20revision\x20loop\x20returns\x20the\x20order\x20to\x20in_progress','actor':'buyer','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'in_progress','moneyEffect':'none'},'commercialSemantics':'A\x20rejection\x20re-opens\x20work:\x20the\x20revision\x20loop\x20returns\x20the\x20order\x20to\x20in_progress\x20and\x20every\x20re-delivery\x20re-enters\x20through\x20M7,\x20naturally\x20refreshing\x20the\x20progress\x20clock.\x20Round\x20counting\x20(max\x202)\x20is\x20off-chain\x20discipline\x20—\x20see\x20E8.','evidence':[]},{'id':'E8','class':'exception','name':'Revision\x20rounds\x20exhausted\x20(cap\x20enforced\x20off-chain)','actor':'merchant','precondition':['E7'],'onchain':'disclosure_only','commercialSemantics':'The\x20real\x20product\x20locks\x20further\x20revisions\x20after\x20the\x20purchased\x20count.\x20On-chain\x20there\x20is\x20no\x20revision-counter\x20primitive\x20—\x20the\x20cap\x20(revision_rounds_max,\x20default\x202)\x20is\x20counted\x20off-chain\x20and\x20disclosed\x20as\x20such\x20in\x20the\x20user-input\x20note.\x20The\x20honest\x20remedy\x20beyond\x20the\x20cap\x20is\x20the\x20dispute\x20rails\x20(E5).','disclosureProbe':'revision_rounds_max|Revision\x20round\x20cap|counted\x20off-chain','evidence':[]},{'id':'E9','class':'exception','name':'Client\x20unresponsive\x20after\x20delivery\x20(routes\x20to\x20the\x20acceptance\x20timeout)','actor':'keeper','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'accepted','forward':'AcceptTimeout','prev':'delivered','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Client\x20silence\x20is\x20the\x20M9\x20rail\x20itself\x20—\x20the\x20exception\x20is\x20the\x20mainline\x20keeper\x20clock\x20wearing\x20an\x20exception\x20hat.\x20The\x20key_risk\x20names\x20it:\x20the\x2014-day\x20timeout\x20unblocks\x20freelancer\x20payment.','guardKeyProbe':'accept_timeout','evidence':[]},{'id':'E10','class':'exception','name':'Escrow\x20dispute\x20over\x20fund\x20ownership\x20(redirected-refund\x20attack)','actor':'arbitrator','precondition':['M5'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'The\x20refund\x20recipient\x20is\x20the\x20ORDER\x20object\x20(order-anchored),\x20and\x20an\x20allocation\x20recipient\x20bound\x20to\x20an\x20object\x20the\x20submitted\x20order\x20is\x20not\x20the\x20owner\x20of\x20aborts\x20(ERECIPIENT_NOT_FOR_OBJECT)\x20—\x20the\x20redirect\x20attack\x20dies\x20at\x20the\x20allocator.\x20The\x20two-step\x20client\x20receive\x20flow\x20is\x20the\x20only\x20path\x20out.','evidence':[{'file':'allocation.move','line':0x26d,'pattern':'ERECIPIENT_NOT_FOR_OBJECT'}]},{'id':'E11','class':'exception','name':'Freelancer\x20account\x20banned\x20mid-contract\x20(platform\x20enforcement)','actor':'platform','precondition':['M5'],'onchain':'not_applicable','commercialSemantics':'Account\x20bans\x20are\x20platform-database\x20enforcement;\x20the\x20chain\x20has\x20no\x20account\x20to\x20ban\x20—\x20only\x20permission\x20rosters\x20the\x20merchant\x20controls.\x20The\x20substitution\x20is\x20roster\x20revocation,\x20which\x20is\x20a\x20management\x20act\x20this\x20template\x27s\x20permission\x20model\x20already\x20covers,\x20so\x20the\x20step\x20is\x20eliminated\x20rather\x20than\x20disclosed.','evidence':[]},{'id':'E12','class':'exception','name':'Client\x20account\x20banned\x20mid-contract\x20(escrow\x20continuity)','actor':'platform','precondition':['M5'],'onchain':'not_applicable','commercialSemantics':'Same\x20as\x20E11\x20from\x20the\x20client\x20side:\x20the\x20escrow\x20is\x20bound\x20to\x20the\x20ORDER,\x20not\x20to\x20a\x20platform\x20account,\x20so\x20a\x20ban\x20cannot\x20freeze\x20funds.\x20Roster/keeper\x20rails\x20(M9,\x20M12)\x20resolve\x20the\x20stalled\x20order\x20without\x20the\x20banned\x20identity\x20—\x20eliminated,\x20not\x20disclosed.','evidence':[]},{'id':'E13','class':'exception','name':'Freelancer\x20abandonment\x20mid-work\x20(client\x27s\x20exit\x20from\x20a\x20stalled\x20in_progress)','actor':'buyer','precondition':['M5'],'onchain':'expressible_with_gap','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'The\x20same\x20cancel-from-in-progress\x20primitive\x20(E4)\x20is\x20also\x20the\x20client\x27s\x20remedy\x20for\x20a\x20vanished\x20freelancer:\x20unilateral\x20cancel,\x20full\x20refund,\x20no\x20arbitration\x20needed.\x20The\x20disclosed\x20gap\x20cuts\x20the\x20other\x20way\x20here:\x20zero\x20on-chain\x20protection\x20means\x20no\x20partial\x20payment\x20for\x20partial\x20work,\x20and\x20there\x20is\x20no\x20stall-detection\x20clock\x20—\x20an\x20idle\x20in_progress\x20order\x20triggers\x20nothing\x20until\x20someone\x20acts.','gapPredicate':{'probe':'unilaterally\x20cancel\x20a\x20RUNNING\x20order|ZERO\x20on-chain\x20protection'},'evidence':[]},{'id':'E14','class':'exception','name':'Dispute\x20withdrawn\x20—\x20settled\x20out-of-band,\x20claim\x20pulled\x20before\x20ruling','actor':'buyer','precondition':['E5'],'onchain':'expressible','chainFootprint':{'node':'claim_filed','forward':'WithdrawClaim','prev':'delivered','moneyEffect':'none'},'commercialSemantics':'The\x20real\x20product\x20lets\x20a\x20customer\x20close\x20their\x20own\x20ticket.\x20Mounted\x20at\x20v205:\x20the\x20buyer\x20files\x20through\x20the\x20claim_filed\x20waypoint\x20and\x20withdraws\x20through\x20WithdrawClaim\x20(claim_filed\x20->\x20delivered,\x20identity-only\x20zero-money\x20legs,\x20guard\x20key\x20withdraw_claim)\x20—\x20the\x20re-entry\x20appends\x20a\x20fresh\x20delivered\x20entry\x20and\x20re-anchors\x20the\x20acceptance\x20clock\x20(find=last),\x20so\x20the\x20windows\x20re-arm.\x20R27\x20rule\x203\x20unfreeze\x20order\x20is\x20disclosed\x20in-machine:\x20the\x20withdrawal\x20moves\x20Progress\x20ONLY\x20and\x20never\x20clears\x20the\x20Arb\x20case\x20—\x20conclude\x20the\x20case\x20on\x20the\x20venue\x20first,\x20then\x20withdraw.\x20Standing\x20residual\x20(ssng6-mn-261101\x20family):\x20the\x20identity\x20root\x20ships\x20no\x20arbitration\x20case-binding\x20leg;\x20the\x20waypoint\x20structure\x20(only\x20an\x20order\x20that\x20passed\x20the\x20claim_filed\x20gate\x20can\x20sit\x20at\x20claim_filed)\x20is\x20the\x20phantom-case\x20backstop\x20until\x20a\x20kernel\x20case-binding\x20forward\x20guard\x20lands\x20—\x20deleting\x20the\x20withdraw_claim\x20purpose\x20re-fires\x20this\x20probe.','guardKeyProbe':'withdraw_claim','evidence':[]},{'id':'R1','class':'remedy','name':'File\x20a\x20dispute\x20(off-Machine\x20Arbitration\x20object)','actor':'buyer','precondition':['M7'],'onchain':'disclosure_only','commercialSemantics':'Disputes\x20live\x20on\x20the\x20independent\x20Arbitration\x20object\x20—\x20the\x20ruling\x20is\x20NEVER\x20judged\x20in\x20the\x20Machine\x20(R-M1-11).\x20The\x20claim_filed\x20waypoint\x20(v205)\x20RECORDS\x20that\x20a\x20case\x20exists\x20and\x20structurally\x20pauses\x20the\x20auto-accept\x20rail\x20while\x20it\x20is\x20open;\x20the\x207-day\x20dispute-response\x20timeout\x20is\x20a\x20keeper\x20obligation\x20over\x20the\x20arbitration\x20case,\x20not\x20a\x20machine\x20guard,\x20and\x20the\x20venue\x20must\x20be\x20operational\x20before\x20binding\x20(a\x20fresh\x20Arbitration\x20ships\x20paused;\x20a\x20paused\x20venue\x20rejects\x20every\x20dispute\x20with\x20E_PAUSED).','disclosureProbe':'Disputes\x20live\x20on\x20the\x20Arbitration\x20object|NEVER\x20judged\x20in\x20the\x20Machine|E_PAUSED','evidence':[{'file':'arbitration.move','line':0x169,'pattern':'assert_op_permission'}]},{'id':'R2','class':'remedy','name':'Buyer-won\x20ruling\x20executes\x20the\x20full\x20refund\x20(ArbRefund\x20award\x20edge)','actor':'arbitrator','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'ArbRefund','prev':'delivered','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'GF2-31\x20award-settle:\x20a\x20ruling\x20that\x20awarded\x20the\x20buyer\x20re-routes\x20the\x20stalled\x20delivered\x20order\x20into\x20the\x20refund\x20terminal\x20so\x20the\x20refund_gate\x20rail\x20actually\x20MOVES\x20the\x20escrowed\x20principal\x20—\x20the\x20ruling\x20alone\x20only\x20writes\x20case\x20state.\x20Keeper/merchant\x20slot\x201001\x20advances\x20it;\x20the\x20zero-award\x20exclusion\x20leg\x20keeps\x20a\x20dismissed\x20claim\x20off\x20this\x20edge.','guardKeyProbe':'arb_refund','evidence':[]},{'id':'R3','class':'remedy','name':'Arbitration\x20indemnity\x20paid\x20from\x20the\x20compensation\x20fund','actor':'arbitrator','precondition':['R1'],'onchain':'disclosure_only','commercialSemantics':'When\x20the\x20venue\x20carries\x20a\x20funded\x20compensation\x20pool,\x20indemnity\x20pays\x20the\x20order\x20owner\x20capped\x20at\x203x\x20the\x20escrowed\x20amount\x20(MAX_INDEMNITY_MULTIPLE)\x20—\x20trust-claim\x20prose\x20is\x20not\x20a\x20chain\x20anchor,\x20and\x20the\x20fund\x20must\x20be\x20non-zero\x20at\x20publish\x20whenever\x20the\x20template\x20declares\x20it.\x20The\x20cap\x20multiplies\x20the\x20ESCROW,\x20never\x20the\x20contract\x20value.','disclosureProbe':'compensation\x20fund|MAX_INDEMNITY_MULTIPLE|indemnity','evidence':[{'file':'arb.move','line':0x15,'pattern':'MAX_INDEMNITY_MULTIPLE'},{'file':'service.move','line':0x24c,'pattern':'public\x20fun\x20compensation_claim'}]},{'id':'R4','class':'remedy','name':'Arbitration\x2030-day\x20silence\x20=\x20acceptance\x20(case-fee\x20release)','actor':'platform','precondition':['R2'],'onchain':'not_applicable','commercialSemantics':'Protocol-level\x20arb-object\x20finality\x20(WITHDRAW_DURATION_TIME,\x20silence\x20treated\x20as\x20acceptance).\x20The\x20real\x20product\x27s\x20CS\x20ruling\x20executes\x20immediately\x20and\x20has\x20no\x20analog\x20step;\x20this\x20template\x27s\x20machine\x20refund\x20rail\x20keys\x20on\x20the\x20ruling\x20state\x20directly,\x20so\x20the\x20window\x20never\x20touches\x20the\x20buyer\x20path.','evidence':[{'file':'arb.move','line':0x10,'pattern':'WITHDRAW_DURATION_TIME'}]},{'id':'R5','class':'remedy','name':'Negotiated\x20partial\x20refund\x20(fraction\x20of\x20the\x20escrow\x20back)','actor':'merchant','precondition':['E5'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20settles\x20many\x20disputes\x20at\x20a\x20split\x20(e.g.\x2070/30).\x20The\x20chain\x27s\x20refund\x20vocabulary\x20is\x20two-valued\x20—\x20the\x20allocator\x20rails\x20express\x20only\x20full-refund\x20(rate\x2010000)\x20or\x20nothing\x20—\x20so\x20a\x20negotiated\x20fraction\x20is\x20eliminated\x20inside\x20the\x20machine;\x20the\x20off-rails\x20workaround\x20is\x20a\x20permissionless\x20Payment\x20object\x20outside\x20this\x20template,\x20followed\x20by\x20a\x20withdraw.','evidence':[]},{'id':'R6','class':'remedy','name':'Dispute-response\x20timeout\x20—\x20keeper\x20escalates\x20an\x20unanswered\x20case\x20(7\x20days)','actor':'keeper','precondition':['R1'],'onchain':'disclosure_only','commercialSemantics':'The\x207-day\x20dispute\x20response\x20timeout\x20(dispute_timeout_days)\x20is\x20a\x20KEEPER\x20obligation\x20over\x20the\x20Arbitration\x20case\x20—\x20the\x20machine\x20has\x20no\x20timer\x20for\x20it\x20and\x20no\x20guard\x20enforces\x20it.\x20Keeper\x20downtime\x20degrades\x20to\x20manual\x20follow-up,\x20which\x20the\x20corpus\x20states\x20plainly.','disclosureProbe':'dispute\x20response\x20timeout|dispute-response\x20timeout|dispute_timeout_days','evidence':[]},{'id':'R7','class':'remedy','name':'Escrow-exit\x20invariant\x20—\x20every\x20stalled\x20order\x20keeps\x20a\x20drain\x20path','actor':'merchant','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'Both\x20terminals\x20drain:\x20settlement\x20exits\x20via\x20the\x20settle_gate\x20node\x20set\x20(completed\x20/\x20wonder\x20/\x20no_wonder),\x20refund\x20exits\x20via\x20the\x20order-anchored\x20refund_gate\x20at\x20closed_cancel,\x20and\x20a\x20stalled\x20delivered\x20order\x20exits\x20via\x20the\x20award\x20edge\x20(E5/R2).\x20Exactly\x20one\x20leg\x20can\x20ever\x20pass\x20—\x20the\x20invariant\x20the\x20mainnet\x202.38\x20incident\x20bought.','evidence':[]},{'id':'R8','class':'remedy','name':'Ruling\x20dismissed\x20—\x20order\x20resumes\x20at\x20delivered\x20(re-dispute\x20window\x20re-armed)','actor':'merchant','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'claim_filed','forward':'ResumeAfterDismissal','prev':'delivered','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Mounted\x20at\x20v205\x20(tpl_forward_arb_ruling_dismissed,\x20key\x20arb_dismissed_resume):\x20a\x20zero-award\x20(merchant-favor)\x20ruling\x20resumes\x20the\x20disputed\x20order\x20back\x20to\x20delivered\x20—\x20the\x20dismissed\x20buyer\x20keeps\x20the\x20normal\x20review/settlement/return\x20rights\x20and\x20the\x20re-dispute\x20window\x20re-arms\x20via\x20the\x20fresh\x20delivered\x20entry\x20(find=last).\x20ZERO\x20money\x20legs;\x20the\x20zero-award\x20polarity\x20is\x20the\x20SAME\x20exclusion\x20fact\x20that\x20keeps\x20this\x20edge\x20off\x20the\x20award\x20rail.\x20Merchant\x20arbitration-execution\x20slot\x201004\x20(the\x20family\x20arb\x20bucket,\x20kept\x20off\x20the\x201002\x20settle/keeper\x20rail);\x20venue\x20binding\x20rides\x20identifier\x203,\x20deliberately\x20asymmetric\x20with\x20the\x20award\x20rail\x27s\x20identifier\x204\x20(do\x20not\x20normalize).\x20Before\x20v205\x20a\x20dismissal\x20left\x20the\x20order\x20parked\x20at\x20delivered\x20with\x20the\x20award\x20edge\x20as\x20its\x20only\x20exit\x20—\x20the\x20strict\x20probes\x20keep\x20that\x20regression\x20from\x20returning.','guardKeyProbe':'arb_dismissed_resume','evidence':[]},{'id':'M15','class':'post','name':'Multi-milestone\x20contracts\x20=\x20chained\x20independent\x20orders','actor':'merchant','precondition':['M11'],'onchain':'disclosure_only','commercialSemantics':'The\x20real\x20product\x20splits\x20a\x20contract\x20into\x20milestones\x20funded\x20one\x20at\x20a\x20time.\x20The\x20template\x27s\x20stated\x20modeling\x20is\x20multiple\x20chained\x20Orders,\x20each\x20with\x20an\x20independent\x20Allocation,\x20with\x20leftover\x20balance\x20recharged\x20into\x20the\x20next\x20Order\x20pool\x20—\x20a\x20composition\x20pattern,\x20not\x20a\x20machine\x20feature,\x20disclosed\x20in\x20the\x20build_notes.','disclosureProbe':'Milestones|chained\x20Orders|next\x20Order\x20pool','evidence':[]},{'id':'P1','class':'post','name':'Job\x20Success\x20Score\x20/\x20reputation\x20index\x20update','actor':'platform','precondition':['M13'],'onchain':'not_applicable','commercialSemantics':'The\x20JSS\x20is\x20a\x20platform-side\x20weighted\x20score\x20over\x20feedback\x20history.\x20On-chain\x20the\x20reputation\x20surface\x20is\x20the\x20review\x20rows\x20themselves;\x20no\x20composite\x20score\x20primitive\x20exists,\x20so\x20the\x20index\x20is\x20eliminated\x20(the\x20raw\x20reviews\x20remain).','evidence':[]},{'id':'P2','class':'post','name':'Repeat\x20engagement\x20/\x20long-term\x20client\x20relationship','actor':'buyer','precondition':['M11'],'onchain':'expressible_with_gap','chainFootprint':{'node':'paid','moneyEffect':'escrow_in'},'commercialSemantics':'Repeat\x20work\x20is\x20a\x20fresh\x20funnel\x20pass:\x20a\x20new\x20order\x20at\x20the\x20same\x20entry,\x20same\x20rails.\x20The\x20gap\x20(disclosed\x20via\x20the\x20chained-orders\x20note)\x20is\x20that\x20there\x20is\x20no\x20parent/bundle\x20object\x20—\x20the\x20relationship\x20is\x20invisible\x20on-chain\x20except\x20as\x20order\x20history.','gapPredicate':{'probe':'chained\x20Orders|next\x20Order\x20pool|no\x20parent'},'evidence':[]},{'id':'P3','class':'post','name':'Review-reward\x20claim\x20paid\x20from\x20the\x20pre-funded\x20pool','actor':'platform','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'reviewed','moneyEffect':'reward'},'commercialSemantics':'The\x20sale-time\x20reward\x20planning:\x20a\x20pre-funded\x20review_reward_pool\x20pays\x20review_reward_per_claim\x20per\x20accepted\x20review,\x20claims\x20closing\x20reward_claim_closes_after_days\x20after\x20the\x20window\x20—\x20the\x20incentive\x20rail\x20the\x20real\x20product\x20runs\x20with\x20karma/badges\x20instead\x20of\x20money.','evidence':[{'file':'reward.move','line':0xe3,'pattern':'public\x20fun\x20claim'}]},{'id':'P4','class':'post','name':'Feedback\x20edited\x20or\x20removed\x20within\x2014\x20days\x20(real\x20product\x27s\x20edit\x20window)','actor':'buyer','precondition':['M10'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20allows\x20feedback\x20edits\x20for\x2014\x20days.\x20On-chain\x20repository\x20rows\x20are\x20write-once\x20(E_POLICY_WRITE_ONCE_CONFLICT\x20on\x20overwrite)\x20—\x20the\x20edit\x20window\x20is\x20eliminated\x20by\x20construction,\x20a\x20privacy/integrity\x20FEATURE\x20the\x20chain\x20holds\x20structurally\x20over\x20the\x20incumbent.','evidence':[{'file':'repository.move','line':0xa9,'pattern':'write_once:\x20bool'}]},{'id':'P5','class':'post','name':'Top\x20Rated\x20/\x20badge\x20achievement\x20from\x20rolling\x20stats','actor':'platform','precondition':['P1'],'onchain':'not_applicable','commercialSemantics':'Badges\x20are\x20derived\x20platform-side\x20labels\x20over\x20the\x20JSS.\x20No\x20on-chain\x20primitive\x20computes\x20rolling\x20aggregates\x20—\x20eliminated\x20like\x20P1;\x20the\x20truthful\x20on-chain\x20signal\x20remains\x20the\x20immutable\x20review\x20and\x20reward\x20history.','evidence':[]}],'invariants':[{'id':'INV-UPW-1','statement':'A\x20freelancer\x20must\x20receive\x20payment\x20no\x20later\x20than\x2030\x20days\x20after\x20invoicing\x20(New\x20York\x20Freelance\x20Isn\x27t\x20Free\x20Act:\x20statutory\x2030-day\x20payment\x20clock,\x20double-damages\x20remedy).','jurisdiction':'NYC\x20FIFA\x20(Admin.\x20Code\x20§\x2020-927);\x20EU\x20Platform\x20Work\x20Directive\x202024/2831\x20art.\x206\x20(prompt\x20payment).','chainConflict':'No\x20conflict\x20on\x20the\x20happy\x20path:\x20the\x20shipped\x20defaults\x20settle\x20in\x20settlement_delay_days\x20(7)\x20past\x20acceptance\x20with\x20escrow_release_days\x20(14)\x20bounding\x20client\x20silence\x20—\x2021\x20days\x20worst\x20case,\x20inside\x20the\x2030-day\x20clock\x20WITHOUT\x20any\x20keeper\x20action.\x20The\x2030-day\x20clock\x20is\x20a\x20sum\x20inequality\x20the\x20mechanical\x20predicate\x20cannot\x20express\x20(requiresFeeParamNonZero\x20only),\x20so\x20this\x20invariant\x20stays\x20text-only\x20and\x20is\x20re-checked\x20by\x20hand\x20whenever\x20the\x20two\x20knobs\x20move.'},{'id':'INV-UPW-2','statement':'A\x20dispute\x20rail\x20with\x20a\x20live\x20response\x20clock\x20must\x20keep\x20a\x20machine-executed\x20buyer-won-ruling\x20exit:\x20if\x20the\x20award\x20edge\x20is\x20removed\x20while\x20dispute_timeout_days\x20>\x200,\x20a\x20won\x20ruling\x20writes\x20case\x20state\x20but\x20never\x20moves\x20the\x20escrowed\x20principal\x20—\x20the\x20buyer\x27s\x20only\x20remedy\x20evaporates\x20after\x20delivery.','jurisdiction':'NYC\x20FIFA\x20§\x2020-927\x20(timely\x20payment\x20on\x20contract\x20completion);\x20EU\x20PWD\x202024/2831\x20art.\x206.','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20the\x20template\x20ships\x20the\x20ArbRefund\x20award\x20edge\x20(delivered\x20->\x20closed_cancel,\x20GF2-31)\x20whose\x20refund_gate\x20leg\x20actually\x20moves\x20the\x20principal,\x20PLUS\x20the\x20second\x20claim_filed\x20exit\x20(arb_refund_filed)\x20so\x20a\x20ruling\x20on\x20a\x20RECORDED\x20claim\x20reaches\x20the\x20same\x20terminal.\x20Removing\x20either\x20forward\x20while\x20the\x20dispute\x20clock\x20stays\x20configured\x20re-fires\x20this\x20invariant.\x20Race\x20face\x20(FLOWS\x20§5a-2,\x20structurally\x20closed\x20at\x20v205):\x20before\x20the\x20claim_filed\x20waypoint\x20an\x20open\x20case\x20left\x20the\x20order\x20at\x20delivered,\x20where\x20the\x2014-day\x20accept_timeout\x20could\x20advance\x20it\x20to\x20accepted\x20and\x20permanently\x20orphan\x20the\x20award\x20edge\x27s\x20trigger\x20node\x20—\x20the\x20waypoint\x20park\x20(the\x20order\x20sits\x20at\x20claim_filed\x20while\x20the\x20case\x20is\x20open)\x20makes\x20that\x20advance\x20unreachable;\x20the\x20standing\x20check\x20remains\x20as\x20the\x20anti-regression\x20tripwire.','violation':{'requiresFeeParamNonZero':'dispute_timeout_days','whileMissingForward':'ArbRefund'}},{'id':'INV-UPW-3','statement':'A\x20reviewer-silence\x20horizon\x20must\x20keep\x20a\x20machine\x20exit\x20to\x20settlement:\x20if\x20the\x20keeper\x20auto-complete\x20edge\x20is\x20removed\x20while\x20settlement_delay_days\x20>\x200,\x20a\x20client\x20who\x20accepts\x20but\x20never\x20reviews\x20strands\x20the\x20escrow\x20at\x20reviewed\x20forever\x20(the\x20mainnet\x202.38\x20incident,\x20az-mn-261007\x20T5).','jurisdiction':'EU\x20PWD\x202024/2831\x20art.\x206\x20(prompt\x20payment);\x20NYC\x20FIFA\x20§\x2020-927.','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20the\x20template\x20ships\x20AutoCompleteAfterReview\x20(reviewed\x20->\x20completed,\x20review_settle_clock,\x20GF2-09).\x20Removing\x20the\x20forward\x20while\x20the\x20settle\x20delay\x20stays\x20configured\x20re-fires\x20this\x20invariant.','violation':{'requiresFeeParamNonZero':'settlement_delay_days','whileMissingForward':'AutoCompleteAfterReview'}},{'id':'INV-UPW-4','statement':'Arbitration\x20indemnity\x20protects\x20the\x20BUYER\x20only:\x20the\x20compensation-fund\x20payout\x20path\x20pays\x20the\x20order\x20owner\x20(the\x20client)\x20—\x20there\x20is\x20no\x20on-chain\x20path\x20to\x20indemnify\x20the\x20freelancer,\x20even\x20for\x20a\x20ruling\x20won\x20against\x20a\x20malicious\x20non-paying\x20client.','jurisdiction':'Shansong-vs-upwork\x20analogy:\x20platform\x20purchase\x20protection\x20covers\x20the\x20paying\x20side;\x20EU\x20PWD\x202024/2831\x20art.\x204\x20(information\x20to\x20the\x20fulfiller).','chainConflict':'The\x20recipient\x20is\x20fixed\x20at\x20the\x20contract\x20layer\x20(indemnity\x20is\x20paid\x20to\x20the\x20order\x20owner);\x20the\x20arbitration\x20layer\x20caps\x20the\x20indemnity\x20at\x20a\x20protocol\x20multiple\x20of\x20the\x20order\x20VALUE\x20—\x20both\x20facts\x20close\x20the\x20freelancer\x20out\x20of\x20the\x20fund.\x20Text-only:\x20the\x20corpus\x20discloses\x20the\x20limitation\x20and\x20no\x20fee_params\x20key\x20can\x20make\x20it\x20mechanical.','evidence':[{'file':'service.move','line':0x265,'pattern':'order::owner(order)'},{'file':'arb.move','line':0x21d,'pattern':'indemnity_cap_base'}]}]};
1
+ export const UPWORK_ORACLE={'productRef':'upwork','products':['upwork','freelancer','guru','zbj','epwk'],'oracleVersion':'1.1.0','steps':[{'id':'M1','class':'offchain','name':'Client\x20posts\x20a\x20job\x20(scope,\x20budget\x20range,\x20skill\x20requirements)','actor':'buyer','precondition':[],'onchain':'not_applicable','commercialSemantics':'Job\x20posting\x20is\x20pure\x20off-chain\x20content\x20on\x20the\x20real\x20product:\x20the\x20description\x20lives\x20in\x20the\x20platform\x20database\x20and\x20search\x20index.\x20This\x20template\x20has\x20no\x20demand\x20object\x20—\x20discovery\x20happens\x20outside\x20the\x20machine\x20entirely.','evidence':[]},{'id':'M2','class':'offchain','name':'Freelancer\x20submits\x20proposals\x20(Connects\x20spent\x20per\x20bid)','actor':'fulfiller','precondition':['M1'],'onchain':'not_applicable','commercialSemantics':'Bidding\x20consumes\x20Connects\x20(a\x20paid\x20off-chain\x20attention\x20currency).\x20The\x20chain\x20holds\x20no\x20proposal\x20objects\x20and\x20no\x20bid\x20fee\x20rail\x20—\x20attention\x20economics\x20stay\x20off-chain\x20by\x20design.','evidence':[]},{'id':'M3','class':'offchain','name':'Interview\x20and\x20contract\x20negotiation\x20(rate,\x20milestones,\x20terms)','actor':'buyer','precondition':['M2'],'onchain':'not_applicable','commercialSemantics':'Interviews\x20and\x20term\x20negotiation\x20are\x20Messenger/off-chain\x20acts.\x20Their\x20only\x20product\x20is\x20the\x20contract\x20the\x20escrow\x20step\x20(M4)\x20encodes:\x20one\x20fixed-price\x20order,\x20milestones\x20as\x20chained\x20orders.','evidence':[]},{'id':'M6','class':'offchain','name':'Hourly-contract\x20variant\x20with\x20a\x20work-diary\x20(time\x20tracking\x20with\x20screenshots)','actor':'fulfiller','precondition':['M4'],'onchain':'not_applicable','commercialSemantics':'Hourly\x20contracts\x20with\x20an\x20automatic\x20work-diary\x20are\x20a\x20separate\x20billing\x20mode\x20on\x20the\x20real\x20product.\x20This\x20template\x20models\x20the\x20incumbent\x27s\x20fixed-price\x20contracts\x20only\x20(its\x20own\x20build_notes\x20say\x20so);\x20there\x20is\x20no\x20hourly\x20primitive,\x20no\x20timer\x20metering\x20and\x20no\x20diary\x20—\x20the\x20variant\x20is\x20eliminated,\x20not\x20disclosed.','evidence':[]},{'id':'E6','class':'offchain','name':'Hourly-contract\x20dispute\x20over\x20logged\x20time\x20(screenshot\x20evidence\x20review)','actor':'buyer','precondition':['M6'],'onchain':'not_applicable','commercialSemantics':'Hourly-billing\x20disputes\x20are\x20adjudicated\x20in-app\x20against\x20diary\x20screenshots.\x20With\x20no\x20hourly\x20mode\x20(M6)\x20the\x20chain\x20never\x20sees\x20logged\x20time,\x20so\x20this\x20dispute\x20class\x20cannot\x20exist\x20on\x20the\x20machine\x20—\x20the\x20dispute\x20rails\x20(R1/R2)\x20cover\x20fixed-price\x20deliveries\x20only.','evidence':[]},{'id':'M4','class':'main','name':'Contract\x20signed\x20and\x20the\x20full\x20price\x20escrowed\x20(one\x20atomic\x20buy)','actor':'buyer','precondition':['M3'],'onchain':'expressible','chainFootprint':{'node':'paid','moneyEffect':'escrow_in'},'commercialSemantics':'The\x20fixed-price\x20contract\x20is\x20funded\x20in\x20one\x20atomic\x20transaction\x20at\x20the\x20machine\x20entry\x20—\x20there\x20is\x20no\x20separate\x20offer/accept\x20handshake.\x20The\x20real\x20product\x27s\x20initiation\x20fee\x20and\x20the\x20client-side\x20marketplace\x20fee\x20have\x20no\x20allocator\x20leg:\x20commission_rate_bps\x20is\x200\x20and\x20stays\x200\x20(MERCHANT\x20FREEDOM\x20is\x20the\x20template\x27s\x20reason\x20to\x20exist).','evidence':[{'file':'service.move','line':0x1d2,'pattern':'public\x20fun\x20buy2'}]},{'id':'M5','class':'main','name':'Freelancer\x20accepts\x20(permission\x20slot)\x20and\x20works','actor':'fulfiller','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'in_progress','moneyEffect':'none'},'commercialSemantics':'Acceptance\x20is\x20a\x20permission-index\x20act,\x20not\x20a\x20signature\x20—\x20roster\x20membership\x20IS\x20admission\x20power.\x20Work-in-progress\x20status\x20is\x20the\x20state\x20the\x20client\x27s\x20cancel\x20primitive\x20(E4)\x20can\x20reach;\x20the\x20work\x20itself\x20is\x20off-chain.','evidence':[]},{'id':'M7','class':'main','name':'Deliverable\x20submitted\x20with\x20a\x20WIP-hash\x20evidence\x20row','actor':'fulfiller','precondition':['M5'],'onchain':'expressible','chainFootprint':{'node':'delivered','forward':'SubmitDeliverable','prev':'in_progress','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Delivery\x20is\x20gated\x20on\x20an\x20order-keyed\x20evidence\x20row:\x20the\x20WIP\x20hash\x20is\x20the\x20on-chain\x20fact\x20\x27a\x20deliverable\x20exists\x27,\x20queryable\x20by\x20the\x20client\x20—\x20never\x20the\x20deliverable\x20content\x20itself.\x20Existence\x20is\x20not\x20trust\x20(R-X1-17).','guardKeyProbe':'submit_evidence','evidence':[{'file':'repository.move','line':0x3c,'pattern':'E_POLICY_WRITE_ONCE_CONFLICT'}]},{'id':'M8','class':'main','name':'Client\x20confirms\x20acceptance\x20(manual\x20signature)','actor':'buyer','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'accepted','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'Acceptance\x20is\x20the\x20kernel-injected\x20order-holder\x20signature\x20edge\x20—\x20the\x20freelancer\x20can\x20never\x20self-accept\x20(trust\x20mechanism\x20R4).\x20The\x20manual\x20branch\x20and\x20the\x20timeout\x20branch\x20(M9)\x20live\x20on\x20distinct\x20edges\x20because\x20their\x20signer\x20sets\x20are\x20disjoint.','evidence':[]},{'id':'M9','class':'exception','name':'Acceptance\x20timeout\x20—\x20keeper\x20auto-advances\x20a\x20silent\x20client\x20(14\x20days)','actor':'keeper','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'accepted','forward':'AcceptTimeout','prev':'delivered','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'A\x20silent\x20client\x20cannot\x20strand\x20the\x20escrow\x20at\x20delivered:\x20the\x2014-day\x20timeout\x20(escrow_release_days)\x20moves\x20the\x20order\x20to\x20accepted\x20on\x20a\x20separate\x20merchant-side\x20keeper\x20edge.\x20The\x20real\x20product\x20has\x20no\x20such\x20rail\x20—\x20silence\x20is\x20resolved\x20by\x20support\x20tickets.','guardKeyProbe':'accept_timeout','evidence':[]},{'id':'M10','class':'main','name':'Client\x20reviews\x20the\x20delivery\x20(side\x20action,\x20window-gated)','actor':'buyer','precondition':['M8'],'onchain':'expressible','chainFootprint':{'node':'reviewed','forward':'Review','prev':'accepted','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'Review\x20is\x20an\x20optional\x20reputation\x20side-stop\x20inside\x20the\x2014-day\x20review\x20window\x20—\x20never\x20a\x20settlement\x20gateway:\x20the\x20order\x20can\x20complete\x20from\x20accepted\x20directly\x20(M11)\x20so\x20a\x20silent\x20reviewer\x20cannot\x20strand\x20the\x20escrow.','guardKeyProbe':'review_window','evidence':[]},{'id':'M11','class':'main','name':'Settlement\x20—\x20freelancer\x20withdraws\x20released\x20funds','actor':'merchant','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'completed','forward':'CompleteAfterReview','prev':'reviewed','identity':'permission_index','moneyEffect':'release'},'commercialSemantics':'The\x20settle\x20allocator\x20pays\x20the\x20freelancer\x20leg\x20at\x20rate\x2010000\x20(zero\x20commission)\x20with\x20a\x20rate-0\x20order-anchor\x20row\x20binding\x20the\x20guard\x20to\x20the\x20paying\x20order\x20(CR-01).\x20The\x20real\x20product\x20deducts\x20a\x20variable\x20freelancer\x20service\x20fee\x20(0-15%)\x20plus\x20a\x20client-side\x20marketplace\x20fee\x20—\x20both\x20eliminated\x20here.','evidence':[]},{'id':'M12','class':'exception','name':'Review-settle\x20clock\x20—\x20keeper\x20auto-completes\x20after\x20the\x20settle\x20delay\x20(7\x20days)','actor':'keeper','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'completed','forward':'AutoCompleteAfterReview','prev':'reviewed','identity':'permission_index','moneyEffect':'release'},'commercialSemantics':'GF2-09:\x20after\x20settlement_delay_days\x20past\x20the\x20reviewed\x20entry\x20the\x20order\x20auto-completes,\x20so\x20a\x20stalled\x20review\x20can\x20never\x20strand\x20the\x20escrow\x20at\x20reviewed\x20(the\x20mainnet\x202.38\x20incident\x27s\x20cure).\x20Same\x20terminal\x20as\x20M11.','guardKeyProbe':'review_settle_clock','evidence':[]},{'id':'M13','class':'main','name':'Positive\x20feedback\x20(praise\x20rail)','actor':'buyer','precondition':['M11'],'onchain':'expressible','chainFootprint':{'node':'wonder','forward':'Praise','prev':'completed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20praise\x20edge\x20is\x20the\x20client\x27s\x20post-settlement\x20endorsement\x20—\x20the\x20on-chain\x20counterpart\x20of\x20the\x20real\x20product\x27s\x205-star\x20public\x20feedback,\x20structurally\x20immune\x20to\x20retroactive\x20editing.','evidence':[]},{'id':'M14','class':'main','name':'Negative\x20feedback\x20(complain\x20rail)','actor':'buyer','precondition':['M11'],'onchain':'expressible','chainFootprint':{'node':'no_wonder','forward':'Complain','prev':'completed','identity':'order_holder','moneyEffect':'none'},'commercialSemantics':'The\x20complain\x20edge\x20records\x20dissatisfaction\x20without\x20touching\x20settled\x20funds\x20—\x20the\x20money\x20is\x20already\x20home;\x20the\x20real\x20product\x27s\x20dispute-after-payment\x20has\x20no\x20on-chain\x20clawback\x20to\x20reach\x20for\x20either.','evidence':[]},{'id':'E1','class':'exception','name':'Proposal\x20not\x20selected\x20(bid\x20rejected)','actor':'buyer','precondition':['M2'],'onchain':'not_applicable','commercialSemantics':'Bid\x20rejection\x20is\x20an\x20off-chain\x20attention\x20event\x20(Connects\x20are\x20spent\x20either\x20way).\x20No\x20order\x20exists\x20yet,\x20so\x20the\x20machine\x20has\x20nothing\x20to\x20eliminate\x20—\x20the\x20step\x20lives\x20entirely\x20outside\x20the\x20template.','evidence':[]},{'id':'E2','class':'exception','name':'Job\x20posting\x20withdrawn\x20before\x20award','actor':'buyer','precondition':['M1'],'onchain':'not_applicable','commercialSemantics':'The\x20client\x20closes\x20the\x20posting\x20pre-award;\x20again\x20no\x20order\x20exists.\x20The\x20template\x27s\x20pre-work\x20cancellation\x20(E3)\x20only\x20exists\x20after\x20escrow,\x20which\x20is\x20the\x20honest\x20boundary.','evidence':[]},{'id':'E3','class':'exception','name':'Pre-work\x20cancellation\x20(full\x20refund\x20from\x20the\x20paid\x20entry)','actor':'buyer','precondition':['M4'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'The\x20paid\x20->\x20closed_cancel\x20edge\x20cancels\x20before\x20work\x20starts\x20and\x20the\x20order-anchored\x20refund\x20allocator\x20pays\x20the\x20client\x20back\x20whole.\x20The\x20real\x20product\x20refunds\x20the\x20escrowed\x20milestone\x20minus\x20nothing\x20at\x20this\x20stage\x20—\x20a\x20faithful\x20match.','evidence':[]},{'id':'E4','class':'exception','name':'Client\x20unilaterally\x20cancels\x20a\x20RUNNING\x20order\x20(cancel-from-in-progress\x20primitive)','actor':'buyer','precondition':['M5'],'onchain':'expressible_with_gap','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'Live-proven\x20(ctra2-mn-261020\x20E7):\x20the\x20chain\x27s\x20cancel-from-in-progress\x20primitive\x20needs\x20NO\x20freelancer\x20consent,\x20bypasses\x20the\x20declared\x20paid-only\x20cancel\x20edge,\x20and\x20the\x20order-anchored\x20rail\x20refunds\x20the\x20FULL\x20escrow.\x20The\x20gap\x20is\x20real\x20and\x20disclosed:\x20the\x20freelancer\x20has\x20zero\x20on-chain\x20protection\x20for\x20work\x20already\x20spent,\x20and\x20a\x20cancellation\x20fee\x20or\x20non-refundable\x20prepay\x20is\x20NOT\x20expressible\x20with\x20these\x20rails.','gapPredicate':{'probe':'ZERO\x20on-chain\x20protection|cancellation\x20fee\x20or\x20non-refundable\x20prepay\x20is\x20NOT\x20expressible'},'evidence':[]},{'id':'E5','class':'exception','name':'Milestone\x20dispute\x20—\x20buyer\x20escalates\x20a\x20rejected\x20deliverable\x20to\x20arbitration','actor':'buyer','precondition':['M7'],'onchain':'expressible','chainFootprint':{'forward':'ArbRefund','moneyEffect':'refund'},'commercialSemantics':'Filing\x20happens\x20on\x20the\x20off-Machine\x20Arbitration\x20object;\x20its\x20machine-visible\x20consequence\x20is\x20the\x20award\x20edge:\x20a\x20buyer-won\x20ruling\x20re-routes\x20the\x20stalled\x20delivered\x20order\x20into\x20closed_cancel\x20(GF2-31),\x20where\x20the\x20refund\x20allocator\x20moves\x20the\x20escrowed\x20principal.\x20Disputes\x20never\x20touch\x20intermediate\x20machine\x20nodes\x20(R-M1-11).','guardKeyProbe':'arb_refund','evidence':[]},{'id':'E7','class':'exception','name':'Delivery\x20rejected\x20—\x20revision\x20loop\x20returns\x20the\x20order\x20to\x20in_progress','actor':'buyer','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'in_progress','moneyEffect':'none'},'commercialSemantics':'A\x20rejection\x20re-opens\x20work:\x20the\x20revision\x20loop\x20returns\x20the\x20order\x20to\x20in_progress\x20and\x20every\x20re-delivery\x20re-enters\x20through\x20M7,\x20naturally\x20refreshing\x20the\x20progress\x20clock.\x20Round\x20counting\x20(max\x202)\x20is\x20off-chain\x20discipline\x20—\x20see\x20E8.','evidence':[]},{'id':'E8','class':'exception','name':'Revision\x20rounds\x20exhausted\x20(cap\x20enforced\x20off-chain)','actor':'merchant','precondition':['E7'],'onchain':'disclosure_only','commercialSemantics':'The\x20real\x20product\x20locks\x20further\x20revisions\x20after\x20the\x20purchased\x20count.\x20On-chain\x20there\x20is\x20no\x20revision-counter\x20primitive\x20—\x20the\x20cap\x20(revision_rounds_max,\x20default\x202)\x20is\x20counted\x20off-chain\x20and\x20disclosed\x20as\x20such\x20in\x20the\x20user-input\x20note.\x20The\x20honest\x20remedy\x20beyond\x20the\x20cap\x20is\x20the\x20dispute\x20rails\x20(E5).','disclosureProbe':'revision_rounds_max|Revision\x20round\x20cap|counted\x20off-chain','evidence':[]},{'id':'E9','class':'exception','name':'Client\x20unresponsive\x20after\x20delivery\x20(routes\x20to\x20the\x20acceptance\x20timeout)','actor':'keeper','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'accepted','forward':'AcceptTimeout','prev':'delivered','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Client\x20silence\x20is\x20the\x20M9\x20rail\x20itself\x20—\x20the\x20exception\x20is\x20the\x20mainline\x20keeper\x20clock\x20wearing\x20an\x20exception\x20hat.\x20The\x20key_risk\x20names\x20it:\x20the\x2014-day\x20timeout\x20unblocks\x20freelancer\x20payment.','guardKeyProbe':'accept_timeout','evidence':[]},{'id':'E10','class':'exception','name':'Escrow\x20dispute\x20over\x20fund\x20ownership\x20(redirected-refund\x20attack)','actor':'arbitrator','precondition':['M5'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'The\x20refund\x20recipient\x20is\x20the\x20ORDER\x20object\x20(order-anchored),\x20and\x20an\x20allocation\x20recipient\x20bound\x20to\x20an\x20object\x20the\x20submitted\x20order\x20is\x20not\x20the\x20owner\x20of\x20aborts\x20(ERECIPIENT_NOT_FOR_OBJECT)\x20—\x20the\x20redirect\x20attack\x20dies\x20at\x20the\x20allocator.\x20The\x20two-step\x20client\x20receive\x20flow\x20is\x20the\x20only\x20path\x20out.','evidence':[{'file':'allocation.move','line':0x26d,'pattern':'ERECIPIENT_NOT_FOR_OBJECT'}]},{'id':'E11','class':'exception','name':'Freelancer\x20account\x20banned\x20mid-contract\x20(platform\x20enforcement)','actor':'platform','precondition':['M5'],'onchain':'not_applicable','commercialSemantics':'Account\x20bans\x20are\x20platform-database\x20enforcement;\x20the\x20chain\x20has\x20no\x20account\x20to\x20ban\x20—\x20only\x20permission\x20rosters\x20the\x20merchant\x20controls.\x20The\x20substitution\x20is\x20roster\x20revocation,\x20which\x20is\x20a\x20management\x20act\x20this\x20template\x27s\x20permission\x20model\x20already\x20covers,\x20so\x20the\x20step\x20is\x20eliminated\x20rather\x20than\x20disclosed.','evidence':[]},{'id':'E12','class':'exception','name':'Client\x20account\x20banned\x20mid-contract\x20(escrow\x20continuity)','actor':'platform','precondition':['M5'],'onchain':'not_applicable','commercialSemantics':'Same\x20as\x20E11\x20from\x20the\x20client\x20side:\x20the\x20escrow\x20is\x20bound\x20to\x20the\x20ORDER,\x20not\x20to\x20a\x20platform\x20account,\x20so\x20a\x20ban\x20cannot\x20freeze\x20funds.\x20Roster/keeper\x20rails\x20(M9,\x20M12)\x20resolve\x20the\x20stalled\x20order\x20without\x20the\x20banned\x20identity\x20—\x20eliminated,\x20not\x20disclosed.','evidence':[]},{'id':'E13','class':'exception','name':'Freelancer\x20abandonment\x20mid-work\x20(client\x27s\x20exit\x20from\x20a\x20stalled\x20in_progress)','actor':'buyer','precondition':['M5'],'onchain':'expressible_with_gap','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'The\x20same\x20cancel-from-in-progress\x20primitive\x20(E4)\x20is\x20also\x20the\x20client\x27s\x20remedy\x20for\x20a\x20vanished\x20freelancer:\x20unilateral\x20cancel,\x20full\x20refund,\x20no\x20arbitration\x20needed.\x20The\x20disclosed\x20gap\x20cuts\x20the\x20other\x20way\x20here:\x20zero\x20on-chain\x20protection\x20means\x20no\x20partial\x20payment\x20for\x20partial\x20work,\x20and\x20there\x20is\x20no\x20stall-detection\x20clock\x20—\x20an\x20idle\x20in_progress\x20order\x20triggers\x20nothing\x20until\x20someone\x20acts.','gapPredicate':{'probe':'unilaterally\x20cancel\x20a\x20RUNNING\x20order|ZERO\x20on-chain\x20protection'},'evidence':[]},{'id':'E14','class':'exception','name':'Dispute\x20withdrawn\x20—\x20settled\x20out-of-band,\x20claim\x20pulled\x20before\x20ruling\x20(BANNED\x20-\x20D2\x20no-withdraw\x20doctrine:\x20a\x20filed\x20claim\x20reaches\x20a\x20RULING\x20instead)','actor':'buyer','precondition':['E5'],'onchain':'not_applicable','chainFootprint':{'node':'claim_filed','prev':'delivered','moneyEffect':'none'},'commercialSemantics':'The\x20real\x20product\x20lets\x20a\x20customer\x20close\x20their\x20own\x20ticket.\x20Mounted\x20at\x20v205:\x20the\x20buyer\x20files\x20through\x20the\x20claim_filed\x20waypoint\x20and\x20withdraws\x20through\x20WithdrawClaim\x20(claim_filed\x20->\x20delivered,\x20identity-only\x20zero-money\x20legs,\x20guard\x20key\x20withdraw_claim)\x20—\x20the\x20re-entry\x20appends\x20a\x20fresh\x20delivered\x20entry\x20and\x20re-anchors\x20the\x20acceptance\x20clock\x20(find=last),\x20so\x20the\x20windows\x20re-arm.\x20R27\x20rule\x203\x20unfreeze\x20order\x20is\x20disclosed\x20in-machine:\x20the\x20withdrawal\x20moves\x20Progress\x20ONLY\x20and\x20never\x20clears\x20the\x20Arb\x20case\x20—\x20conclude\x20the\x20case\x20on\x20the\x20venue\x20first,\x20then\x20withdraw.\x20Standing\x20residual\x20(ssng6-mn-261101\x20family):\x20the\x20identity\x20root\x20ships\x20no\x20arbitration\x20case-binding\x20leg;\x20the\x20waypoint\x20structure\x20(only\x20an\x20order\x20that\x20passed\x20the\x20claim_filed\x20gate\x20can\x20sit\x20at\x20claim_filed)\x20is\x20the\x20phantom-case\x20backstop\x20until\x20a\x20kernel\x20case-binding\x20forward\x20guard\x20lands\x20—\x20deleting\x20the\x20withdraw_claim\x20purpose\x20re-fires\x20this\x20probe.','guardKeyProbe':'withdraw_claim','evidence':[]},{'id':'R1','class':'remedy','name':'File\x20a\x20dispute\x20(off-Machine\x20Arbitration\x20object)','actor':'buyer','precondition':['M7'],'onchain':'disclosure_only','commercialSemantics':'Disputes\x20live\x20on\x20the\x20independent\x20Arbitration\x20object\x20—\x20the\x20ruling\x20is\x20NEVER\x20judged\x20in\x20the\x20Machine\x20(R-M1-11).\x20The\x20claim_filed\x20waypoint\x20(v205)\x20RECORDS\x20that\x20a\x20case\x20exists\x20and\x20structurally\x20pauses\x20the\x20auto-accept\x20rail\x20while\x20it\x20is\x20open;\x20the\x207-day\x20dispute-response\x20timeout\x20is\x20a\x20keeper\x20obligation\x20over\x20the\x20arbitration\x20case,\x20not\x20a\x20machine\x20guard,\x20and\x20the\x20venue\x20must\x20be\x20operational\x20before\x20binding\x20(a\x20fresh\x20Arbitration\x20ships\x20paused;\x20a\x20paused\x20venue\x20rejects\x20every\x20dispute\x20with\x20E_PAUSED).','disclosureProbe':'Disputes\x20live\x20on\x20the\x20Arbitration\x20object|NEVER\x20judged\x20in\x20the\x20Machine|E_PAUSED','evidence':[{'file':'arbitration.move','line':0x169,'pattern':'assert_op_permission'}]},{'id':'R2','class':'remedy','name':'Buyer-won\x20ruling\x20executes\x20the\x20full\x20refund\x20(ArbRefund\x20award\x20edge)','actor':'arbitrator','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','forward':'ArbRefund','prev':'delivered','identity':'permission_index','moneyEffect':'refund'},'commercialSemantics':'GF2-31\x20award-settle:\x20a\x20ruling\x20that\x20awarded\x20the\x20buyer\x20re-routes\x20the\x20stalled\x20delivered\x20order\x20into\x20the\x20refund\x20terminal\x20so\x20the\x20refund_gate\x20rail\x20actually\x20MOVES\x20the\x20escrowed\x20principal\x20—\x20the\x20ruling\x20alone\x20only\x20writes\x20case\x20state.\x20Keeper/merchant\x20slot\x201001\x20advances\x20it;\x20the\x20zero-award\x20exclusion\x20leg\x20keeps\x20a\x20dismissed\x20claim\x20off\x20this\x20edge.','guardKeyProbe':'arb_refund','evidence':[]},{'id':'R3','class':'remedy','name':'Arbitration\x20indemnity\x20paid\x20from\x20the\x20compensation\x20fund','actor':'arbitrator','precondition':['R1'],'onchain':'disclosure_only','commercialSemantics':'When\x20the\x20venue\x20carries\x20a\x20funded\x20compensation\x20pool,\x20indemnity\x20pays\x20the\x20order\x20owner\x20capped\x20at\x203x\x20the\x20escrowed\x20amount\x20(MAX_INDEMNITY_MULTIPLE)\x20—\x20trust-claim\x20prose\x20is\x20not\x20a\x20chain\x20anchor,\x20and\x20the\x20fund\x20must\x20be\x20non-zero\x20at\x20publish\x20whenever\x20the\x20template\x20declares\x20it.\x20The\x20cap\x20multiplies\x20the\x20ESCROW,\x20never\x20the\x20contract\x20value.','disclosureProbe':'compensation\x20fund|MAX_INDEMNITY_MULTIPLE|indemnity','evidence':[{'file':'arb.move','line':0x15,'pattern':'MAX_INDEMNITY_MULTIPLE'},{'file':'service.move','line':0x24c,'pattern':'public\x20fun\x20compensation_claim'}]},{'id':'R4','class':'remedy','name':'Arbitration\x2030-day\x20silence\x20=\x20acceptance\x20(case-fee\x20release)','actor':'platform','precondition':['R2'],'onchain':'not_applicable','commercialSemantics':'Protocol-level\x20arb-object\x20finality\x20(WITHDRAW_DURATION_TIME,\x20silence\x20treated\x20as\x20acceptance).\x20The\x20real\x20product\x27s\x20CS\x20ruling\x20executes\x20immediately\x20and\x20has\x20no\x20analog\x20step;\x20this\x20template\x27s\x20machine\x20refund\x20rail\x20keys\x20on\x20the\x20ruling\x20state\x20directly,\x20so\x20the\x20window\x20never\x20touches\x20the\x20buyer\x20path.','evidence':[{'file':'arb.move','line':0x10,'pattern':'WITHDRAW_DURATION_TIME'}]},{'id':'R5','class':'remedy','name':'Negotiated\x20partial\x20refund\x20(fraction\x20of\x20the\x20escrow\x20back)','actor':'merchant','precondition':['E5'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20settles\x20many\x20disputes\x20at\x20a\x20split\x20(e.g.\x2070/30).\x20The\x20chain\x27s\x20refund\x20vocabulary\x20is\x20two-valued\x20—\x20the\x20allocator\x20rails\x20express\x20only\x20full-refund\x20(rate\x2010000)\x20or\x20nothing\x20—\x20so\x20a\x20negotiated\x20fraction\x20is\x20eliminated\x20inside\x20the\x20machine;\x20the\x20off-rails\x20workaround\x20is\x20a\x20permissionless\x20Payment\x20object\x20outside\x20this\x20template,\x20followed\x20by\x20a\x20withdraw.','evidence':[]},{'id':'R6','class':'remedy','name':'Dispute-response\x20timeout\x20—\x20keeper\x20escalates\x20an\x20unanswered\x20case\x20(7\x20days)','actor':'keeper','precondition':['R1'],'onchain':'disclosure_only','commercialSemantics':'The\x207-day\x20dispute\x20response\x20timeout\x20(dispute_timeout_days)\x20is\x20a\x20KEEPER\x20obligation\x20over\x20the\x20Arbitration\x20case\x20—\x20the\x20machine\x20has\x20no\x20timer\x20for\x20it\x20and\x20no\x20guard\x20enforces\x20it.\x20Keeper\x20downtime\x20degrades\x20to\x20manual\x20follow-up,\x20which\x20the\x20corpus\x20states\x20plainly.','disclosureProbe':'dispute\x20response\x20timeout|dispute-response\x20timeout|dispute_timeout_days','evidence':[]},{'id':'R7','class':'remedy','name':'Escrow-exit\x20invariant\x20—\x20every\x20stalled\x20order\x20keeps\x20a\x20drain\x20path','actor':'merchant','precondition':['M7'],'onchain':'expressible','chainFootprint':{'node':'closed_cancel','moneyEffect':'refund'},'commercialSemantics':'Both\x20terminals\x20drain:\x20settlement\x20exits\x20via\x20the\x20settle_gate\x20node\x20set\x20(completed\x20/\x20wonder\x20/\x20no_wonder),\x20refund\x20exits\x20via\x20the\x20order-anchored\x20refund_gate\x20at\x20closed_cancel,\x20and\x20a\x20stalled\x20delivered\x20order\x20exits\x20via\x20the\x20award\x20edge\x20(E5/R2).\x20Exactly\x20one\x20leg\x20can\x20ever\x20pass\x20—\x20the\x20invariant\x20the\x20mainnet\x202.38\x20incident\x20bought.','evidence':[]},{'id':'R8','class':'remedy','name':'Ruling\x20dismissed\x20—\x20order\x20resumes\x20at\x20delivered\x20(re-dispute\x20window\x20re-armed)','actor':'merchant','precondition':['R1'],'onchain':'expressible','chainFootprint':{'node':'claim_filed','forward':'ResumeAfterDismissal','prev':'delivered','identity':'permission_index','moneyEffect':'none'},'commercialSemantics':'Mounted\x20at\x20v205\x20(tpl_forward_arb_ruling_dismissed,\x20key\x20arb_dismissed_resume):\x20a\x20zero-award\x20(merchant-favor)\x20ruling\x20resumes\x20the\x20disputed\x20order\x20back\x20to\x20delivered\x20—\x20the\x20dismissed\x20buyer\x20keeps\x20the\x20normal\x20review/settlement/return\x20rights\x20and\x20the\x20re-dispute\x20window\x20re-arms\x20via\x20the\x20fresh\x20delivered\x20entry\x20(find=last).\x20ZERO\x20money\x20legs;\x20the\x20zero-award\x20polarity\x20is\x20the\x20SAME\x20exclusion\x20fact\x20that\x20keeps\x20this\x20edge\x20off\x20the\x20award\x20rail.\x20Merchant\x20arbitration-execution\x20slot\x201004\x20(the\x20family\x20arb\x20bucket,\x20kept\x20off\x20the\x201002\x20settle/keeper\x20rail);\x20venue\x20binding\x20rides\x20identifier\x203,\x20deliberately\x20asymmetric\x20with\x20the\x20award\x20rail\x27s\x20identifier\x204\x20(do\x20not\x20normalize).\x20Before\x20v205\x20a\x20dismissal\x20left\x20the\x20order\x20parked\x20at\x20delivered\x20with\x20the\x20award\x20edge\x20as\x20its\x20only\x20exit\x20—\x20the\x20strict\x20probes\x20keep\x20that\x20regression\x20from\x20returning.','guardKeyProbe':'arb_dismissed_resume','evidence':[]},{'id':'M15','class':'post','name':'Multi-milestone\x20contracts\x20=\x20chained\x20independent\x20orders','actor':'merchant','precondition':['M11'],'onchain':'disclosure_only','commercialSemantics':'The\x20real\x20product\x20splits\x20a\x20contract\x20into\x20milestones\x20funded\x20one\x20at\x20a\x20time.\x20The\x20template\x27s\x20stated\x20modeling\x20is\x20multiple\x20chained\x20Orders,\x20each\x20with\x20an\x20independent\x20Allocation,\x20with\x20leftover\x20balance\x20recharged\x20into\x20the\x20next\x20Order\x20pool\x20—\x20a\x20composition\x20pattern,\x20not\x20a\x20machine\x20feature,\x20disclosed\x20in\x20the\x20build_notes.','disclosureProbe':'Milestones|chained\x20Orders|next\x20Order\x20pool','evidence':[]},{'id':'P1','class':'post','name':'Job\x20Success\x20Score\x20/\x20reputation\x20index\x20update','actor':'platform','precondition':['M13'],'onchain':'not_applicable','commercialSemantics':'The\x20JSS\x20is\x20a\x20platform-side\x20weighted\x20score\x20over\x20feedback\x20history.\x20On-chain\x20the\x20reputation\x20surface\x20is\x20the\x20review\x20rows\x20themselves;\x20no\x20composite\x20score\x20primitive\x20exists,\x20so\x20the\x20index\x20is\x20eliminated\x20(the\x20raw\x20reviews\x20remain).','evidence':[]},{'id':'P2','class':'post','name':'Repeat\x20engagement\x20/\x20long-term\x20client\x20relationship','actor':'buyer','precondition':['M11'],'onchain':'expressible_with_gap','chainFootprint':{'node':'paid','moneyEffect':'escrow_in'},'commercialSemantics':'Repeat\x20work\x20is\x20a\x20fresh\x20funnel\x20pass:\x20a\x20new\x20order\x20at\x20the\x20same\x20entry,\x20same\x20rails.\x20The\x20gap\x20(disclosed\x20via\x20the\x20chained-orders\x20note)\x20is\x20that\x20there\x20is\x20no\x20parent/bundle\x20object\x20—\x20the\x20relationship\x20is\x20invisible\x20on-chain\x20except\x20as\x20order\x20history.','gapPredicate':{'probe':'chained\x20Orders|next\x20Order\x20pool|no\x20parent'},'evidence':[]},{'id':'P3','class':'post','name':'Review-reward\x20claim\x20paid\x20from\x20the\x20pre-funded\x20pool','actor':'platform','precondition':['M10'],'onchain':'expressible','chainFootprint':{'node':'reviewed','moneyEffect':'reward'},'commercialSemantics':'The\x20sale-time\x20reward\x20planning:\x20a\x20pre-funded\x20review_reward_pool\x20pays\x20review_reward_per_claim\x20per\x20accepted\x20review,\x20claims\x20closing\x20reward_claim_closes_after_days\x20after\x20the\x20window\x20—\x20the\x20incentive\x20rail\x20the\x20real\x20product\x20runs\x20with\x20karma/badges\x20instead\x20of\x20money.','evidence':[{'file':'reward.move','line':0xe3,'pattern':'public\x20fun\x20claim'}]},{'id':'P4','class':'post','name':'Feedback\x20edited\x20or\x20removed\x20within\x2014\x20days\x20(real\x20product\x27s\x20edit\x20window)','actor':'buyer','precondition':['M10'],'onchain':'not_applicable','commercialSemantics':'The\x20real\x20product\x20allows\x20feedback\x20edits\x20for\x2014\x20days.\x20On-chain\x20repository\x20rows\x20are\x20write-once\x20(E_POLICY_WRITE_ONCE_CONFLICT\x20on\x20overwrite)\x20—\x20the\x20edit\x20window\x20is\x20eliminated\x20by\x20construction,\x20a\x20privacy/integrity\x20FEATURE\x20the\x20chain\x20holds\x20structurally\x20over\x20the\x20incumbent.','evidence':[{'file':'repository.move','line':0xa9,'pattern':'write_once:\x20bool'}]},{'id':'P5','class':'post','name':'Top\x20Rated\x20/\x20badge\x20achievement\x20from\x20rolling\x20stats','actor':'platform','precondition':['P1'],'onchain':'not_applicable','commercialSemantics':'Badges\x20are\x20derived\x20platform-side\x20labels\x20over\x20the\x20JSS.\x20No\x20on-chain\x20primitive\x20computes\x20rolling\x20aggregates\x20—\x20eliminated\x20like\x20P1;\x20the\x20truthful\x20on-chain\x20signal\x20remains\x20the\x20immutable\x20review\x20and\x20reward\x20history.','evidence':[]}],'invariants':[{'id':'INV-UPW-1','statement':'A\x20freelancer\x20must\x20receive\x20payment\x20no\x20later\x20than\x2030\x20days\x20after\x20invoicing\x20(New\x20York\x20Freelance\x20Isn\x27t\x20Free\x20Act:\x20statutory\x2030-day\x20payment\x20clock,\x20double-damages\x20remedy).','jurisdiction':'NYC\x20FIFA\x20(Admin.\x20Code\x20§\x2020-927);\x20EU\x20Platform\x20Work\x20Directive\x202024/2831\x20art.\x206\x20(prompt\x20payment).','chainConflict':'No\x20conflict\x20on\x20the\x20happy\x20path:\x20the\x20shipped\x20defaults\x20settle\x20in\x20settlement_delay_days\x20(7)\x20past\x20acceptance\x20with\x20escrow_release_days\x20(14)\x20bounding\x20client\x20silence\x20—\x2021\x20days\x20worst\x20case,\x20inside\x20the\x2030-day\x20clock\x20WITHOUT\x20any\x20keeper\x20action.\x20The\x2030-day\x20clock\x20is\x20a\x20sum\x20inequality\x20the\x20mechanical\x20predicate\x20cannot\x20express\x20(requiresFeeParamNonZero\x20only),\x20so\x20this\x20invariant\x20stays\x20text-only\x20and\x20is\x20re-checked\x20by\x20hand\x20whenever\x20the\x20two\x20knobs\x20move.'},{'id':'INV-UPW-2','statement':'A\x20dispute\x20rail\x20with\x20a\x20live\x20response\x20clock\x20must\x20keep\x20a\x20machine-executed\x20buyer-won-ruling\x20exit:\x20if\x20the\x20award\x20edge\x20is\x20removed\x20while\x20dispute_timeout_days\x20>\x200,\x20a\x20won\x20ruling\x20writes\x20case\x20state\x20but\x20never\x20moves\x20the\x20escrowed\x20principal\x20—\x20the\x20buyer\x27s\x20only\x20remedy\x20evaporates\x20after\x20delivery.','jurisdiction':'NYC\x20FIFA\x20§\x2020-927\x20(timely\x20payment\x20on\x20contract\x20completion);\x20EU\x20PWD\x202024/2831\x20art.\x206.','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20the\x20template\x20ships\x20the\x20ArbRefund\x20award\x20edge\x20(delivered\x20->\x20closed_cancel,\x20GF2-31)\x20whose\x20refund_gate\x20leg\x20actually\x20moves\x20the\x20principal,\x20PLUS\x20the\x20second\x20claim_filed\x20exit\x20(arb_refund_filed)\x20so\x20a\x20ruling\x20on\x20a\x20RECORDED\x20claim\x20reaches\x20the\x20same\x20terminal.\x20Removing\x20either\x20forward\x20while\x20the\x20dispute\x20clock\x20stays\x20configured\x20re-fires\x20this\x20invariant.\x20Race\x20face\x20(FLOWS\x20§5a-2,\x20structurally\x20closed\x20at\x20v205):\x20before\x20the\x20claim_filed\x20waypoint\x20an\x20open\x20case\x20left\x20the\x20order\x20at\x20delivered,\x20where\x20the\x2014-day\x20accept_timeout\x20could\x20advance\x20it\x20to\x20accepted\x20and\x20permanently\x20orphan\x20the\x20award\x20edge\x27s\x20trigger\x20node\x20—\x20the\x20waypoint\x20park\x20(the\x20order\x20sits\x20at\x20claim_filed\x20while\x20the\x20case\x20is\x20open)\x20makes\x20that\x20advance\x20unreachable;\x20the\x20standing\x20check\x20remains\x20as\x20the\x20anti-regression\x20tripwire.','violation':{'requiresFeeParamNonZero':'dispute_timeout_days','whileMissingForward':'ArbRefund'}},{'id':'INV-UPW-3','statement':'A\x20reviewer-silence\x20horizon\x20must\x20keep\x20a\x20machine\x20exit\x20to\x20settlement:\x20if\x20the\x20keeper\x20auto-complete\x20edge\x20is\x20removed\x20while\x20settlement_delay_days\x20>\x200,\x20a\x20client\x20who\x20accepts\x20but\x20never\x20reviews\x20strands\x20the\x20escrow\x20at\x20reviewed\x20forever\x20(the\x20mainnet\x202.38\x20incident,\x20az-mn-261007\x20T5).','jurisdiction':'EU\x20PWD\x202024/2831\x20art.\x206\x20(prompt\x20payment);\x20NYC\x20FIFA\x20§\x2020-927.','chainConflict':'Standing\x20check\x20(not\x20currently\x20violated):\x20the\x20template\x20ships\x20AutoCompleteAfterReview\x20(reviewed\x20->\x20completed,\x20review_settle_clock,\x20GF2-09).\x20Removing\x20the\x20forward\x20while\x20the\x20settle\x20delay\x20stays\x20configured\x20re-fires\x20this\x20invariant.','violation':{'requiresFeeParamNonZero':'settlement_delay_days','whileMissingForward':'AutoCompleteAfterReview'}},{'id':'INV-UPW-4','statement':'Arbitration\x20indemnity\x20protects\x20the\x20BUYER\x20only:\x20the\x20compensation-fund\x20payout\x20path\x20pays\x20the\x20order\x20owner\x20(the\x20client)\x20—\x20there\x20is\x20no\x20on-chain\x20path\x20to\x20indemnify\x20the\x20freelancer,\x20even\x20for\x20a\x20ruling\x20won\x20against\x20a\x20malicious\x20non-paying\x20client.','jurisdiction':'Shansong-vs-upwork\x20analogy:\x20platform\x20purchase\x20protection\x20covers\x20the\x20paying\x20side;\x20EU\x20PWD\x202024/2831\x20art.\x204\x20(information\x20to\x20the\x20fulfiller).','chainConflict':'The\x20recipient\x20is\x20fixed\x20at\x20the\x20contract\x20layer\x20(indemnity\x20is\x20paid\x20to\x20the\x20order\x20owner);\x20the\x20arbitration\x20layer\x20caps\x20the\x20indemnity\x20at\x20a\x20protocol\x20multiple\x20of\x20the\x20order\x20VALUE\x20—\x20both\x20facts\x20close\x20the\x20freelancer\x20out\x20of\x20the\x20fund.\x20Text-only:\x20the\x20corpus\x20discloses\x20the\x20limitation\x20and\x20no\x20fee_params\x20key\x20can\x20make\x20it\x20mechanical.','evidence':[{'file':'service.move','line':0x265,'pattern':'order::owner(order)'},{'file':'arb.move','line':0x21d,'pattern':'indemnity_cap_base'}]}]};