openadapt-flow 2.0.0__tar.gz → 2.2.0__tar.gz

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 (1943) hide show
  1. openadapt_flow-2.2.0/.github/workflows/canvas-nodom-ladder.yml +101 -0
  2. openadapt_flow-2.2.0/.github/workflows/ci.yml +1005 -0
  3. openadapt_flow-2.2.0/.github/workflows/citrix-workspace-standin.yml +133 -0
  4. openadapt_flow-2.2.0/.github/workflows/docker-rdp-multiapp-vision.yml +81 -0
  5. openadapt_flow-2.2.0/.github/workflows/docker-rdp-vision-ladder.yml +207 -0
  6. openadapt_flow-2.2.0/.github/workflows/paper.yml +156 -0
  7. openadapt_flow-2.2.0/.github/workflows/quickstart-lifecycle.yml +107 -0
  8. openadapt_flow-2.2.0/.github/workflows/release.yml +616 -0
  9. openadapt_flow-2.2.0/.github/workflows/validate-claims.yml +202 -0
  10. openadapt_flow-2.2.0/CHANGELOG.md +7595 -0
  11. openadapt_flow-2.2.0/CODE_OF_CONDUCT.md +67 -0
  12. openadapt_flow-2.2.0/CONTRIBUTING.md +171 -0
  13. openadapt_flow-2.2.0/DESIGN.md +437 -0
  14. openadapt_flow-2.2.0/PKG-INFO +575 -0
  15. openadapt_flow-2.2.0/README.md +463 -0
  16. openadapt_flow-2.2.0/SECURITY.md +42 -0
  17. openadapt_flow-2.2.0/benchmark/citrix_workspace/run_citrix_workspace_qualification.py +602 -0
  18. openadapt_flow-2.2.0/benchmark/comparison_artifact/comparison.html +261 -0
  19. openadapt_flow-2.2.0/benchmark/comparison_artifact/generate.py +918 -0
  20. openadapt_flow-2.2.0/benchmark/effectbench/LEADERBOARD.md +161 -0
  21. openadapt_flow-2.2.0/benchmark/effectbench/README.md +216 -0
  22. openadapt_flow-2.2.0/benchmark/effectbench/SPEC.md +314 -0
  23. openadapt_flow-2.2.0/benchmark/effectbench/pyproject.toml +59 -0
  24. openadapt_flow-2.2.0/benchmark/environments/README.md +152 -0
  25. openadapt_flow-2.2.0/benchmark/environments/environments.json +204 -0
  26. openadapt_flow-2.2.0/benchmark/environments/registry.py +419 -0
  27. openadapt_flow-2.2.0/benchmark/known_ids/KNOWN_IDS.md +56 -0
  28. openadapt_flow-2.2.0/benchmark/known_ids/results.json +476 -0
  29. openadapt_flow-2.2.0/benchmark/openemr_local/environment.lock.json +37 -0
  30. openadapt_flow-2.2.0/benchmark/openemr_local/fixture.py +937 -0
  31. openadapt_flow-2.2.0/benchmark/openemr_local/pinned_fetch.py +82 -0
  32. openadapt_flow-2.2.0/benchmark/openemr_local/qualify_hooks.py +123 -0
  33. openadapt_flow-2.2.0/benchmark/openemr_local/upstream.py +148 -0
  34. openadapt_flow-2.2.0/benchmark/openemr_local/verify.yaml +60 -0
  35. openadapt_flow-2.2.0/benchmark/rdp_pool/RESULTS.md +43 -0
  36. openadapt_flow-2.2.0/benchmark/rdp_pool/fixture/ledger_app.py +64 -0
  37. openadapt_flow-2.2.0/benchmark/rdp_pool/results.json +116 -0
  38. openadapt_flow-2.2.0/benchmark/rdp_pool/run_pool_throughput.py +257 -0
  39. openadapt_flow-2.2.0/deploy/on-prem/COMPLIANCE.md +115 -0
  40. openadapt_flow-2.2.0/deploy/on-prem/README.md +78 -0
  41. openadapt_flow-2.2.0/deploy/on-prem/bin/install-macos.sh +231 -0
  42. openadapt_flow-2.2.0/deploy/on-prem/launchd/ai.openadapt.flow-boot-check.plist +48 -0
  43. openadapt_flow-2.2.0/deploy/on-prem/launchd/ai.openadapt.flow-health.plist +41 -0
  44. openadapt_flow-2.2.0/deploy/on-prem/launchd/ai.openadapt.flow-pf.plist +26 -0
  45. openadapt_flow-2.2.0/deploy/on-prem/launchd/ai.openadapt.flow-service.plist +59 -0
  46. openadapt_flow-2.2.0/deploy/on-prem/onprem.example.yaml +100 -0
  47. openadapt_flow-2.2.0/docs/APPROVAL_AND_VERIFICATION.md +246 -0
  48. openadapt_flow-2.2.0/docs/APPROVAL_MODES.md +275 -0
  49. openadapt_flow-2.2.0/docs/CAPABILITIES.md +126 -0
  50. openadapt_flow-2.2.0/docs/COUNTERSIGNED_SEALS.md +379 -0
  51. openadapt_flow-2.2.0/docs/DECISION_TRIAGE.md +166 -0
  52. openadapt_flow-2.2.0/docs/EFFECT_KIT.md +1026 -0
  53. openadapt_flow-2.2.0/docs/EXCEPTION_INBOX.md +187 -0
  54. openadapt_flow-2.2.0/docs/FLEET_DRIFT_PATCHES.md +571 -0
  55. openadapt_flow-2.2.0/docs/INTAKE.md +63 -0
  56. openadapt_flow-2.2.0/docs/JIT.md +262 -0
  57. openadapt_flow-2.2.0/docs/JIT_ADMISSION.md +301 -0
  58. openadapt_flow-2.2.0/docs/L1_INTEGRATION.md +87 -0
  59. openadapt_flow-2.2.0/docs/LAYOUT_DRIFT.md +95 -0
  60. openadapt_flow-2.2.0/docs/LIMITS.md +589 -0
  61. openadapt_flow-2.2.0/docs/OFFLINE_SEALS.md +160 -0
  62. openadapt_flow-2.2.0/docs/ON_PREM.md +411 -0
  63. openadapt_flow-2.2.0/docs/PARAMETERS.md +67 -0
  64. openadapt_flow-2.2.0/docs/PRIVACY.md +128 -0
  65. openadapt_flow-2.2.0/docs/PRODUCTION.md +203 -0
  66. openadapt_flow-2.2.0/docs/QUALIFICATION_PROJECT.md +192 -0
  67. openadapt_flow-2.2.0/docs/QUALIFICATION_TERMS.md +140 -0
  68. openadapt_flow-2.2.0/docs/QUALIFY_A_WORKFLOW.md +262 -0
  69. openadapt_flow-2.2.0/docs/RECORDING_ON_WINDOWS_RDP_CITRIX.md +170 -0
  70. openadapt_flow-2.2.0/docs/REPAIR_LIFECYCLE.md +390 -0
  71. openadapt_flow-2.2.0/docs/RESOLUTION_LADDER.md +51 -0
  72. openadapt_flow-2.2.0/docs/REWARD_WORKER.md +361 -0
  73. openadapt_flow-2.2.0/docs/SOURCE_BOUNDARY.md +51 -0
  74. openadapt_flow-2.2.0/docs/SURFACES.md +294 -0
  75. openadapt_flow-2.2.0/docs/TUTORIAL.md +175 -0
  76. openadapt_flow-2.2.0/docs/VERIFY_RUN.md +141 -0
  77. openadapt_flow-2.2.0/docs/backends/RDP.md +270 -0
  78. openadapt_flow-2.2.0/docs/deployment/ON_PREM_VLM.md +249 -0
  79. openadapt_flow-2.2.0/docs/deployment.example.yaml +274 -0
  80. openadapt_flow-2.2.0/docs/design/EFFECT_VERIFIER.md +182 -0
  81. openadapt_flow-2.2.0/docs/design/IR_PUBLICATION_OPTIONS.md +131 -0
  82. openadapt_flow-2.2.0/docs/design/REPLAYER_DECOMPOSITION.md +180 -0
  83. openadapt_flow-2.2.0/docs/design/RUNNER_CLIENT_LIBRARY.md +151 -0
  84. openadapt_flow-2.2.0/docs/design/WORKFLOW_PROGRAM_IR.md +767 -0
  85. openadapt_flow-2.2.0/docs/desktop/PHASE2.md +108 -0
  86. openadapt_flow-2.2.0/docs/desktop/RECORDING.md +220 -0
  87. openadapt_flow-2.2.0/docs/phi_in_transit.md +130 -0
  88. openadapt_flow-2.2.0/docs/showcase/demo.gif +0 -0
  89. openadapt_flow-2.2.0/docs/validation/IDENTITY_EVIDENCE.md +72 -0
  90. openadapt_flow-2.2.0/docs/validation/decision_triage_synthetic.json +72 -0
  91. openadapt_flow-2.2.0/examples/claude-code-demo/README.md +112 -0
  92. openadapt_flow-2.2.0/examples/jit/run_mockmed.py +166 -0
  93. openadapt_flow-2.2.0/openadapt_flow/__init__.py +18 -0
  94. openadapt_flow-2.2.0/openadapt_flow/__main__.py +10412 -0
  95. openadapt_flow-2.2.0/openadapt_flow/_browser_setup.py +451 -0
  96. openadapt_flow-2.2.0/openadapt_flow/_prewarm.py +104 -0
  97. openadapt_flow-2.2.0/openadapt_flow/agent/__init__.py +26 -0
  98. openadapt_flow-2.2.0/openadapt_flow/agent/__main__.py +6 -0
  99. openadapt_flow-2.2.0/openadapt_flow/agent/approval.py +124 -0
  100. openadapt_flow-2.2.0/openadapt_flow/agent/attended.py +440 -0
  101. openadapt_flow-2.2.0/openadapt_flow/agent/authoring.py +1962 -0
  102. openadapt_flow-2.2.0/openadapt_flow/agent/bridge.py +967 -0
  103. openadapt_flow-2.2.0/openadapt_flow/agent/bundles.py +249 -0
  104. openadapt_flow-2.2.0/openadapt_flow/agent/cards.py +349 -0
  105. openadapt_flow-2.2.0/openadapt_flow/agent/cli.py +899 -0
  106. openadapt_flow-2.2.0/openadapt_flow/agent/contract.py +953 -0
  107. openadapt_flow-2.2.0/openadapt_flow/agent/copy.py +54 -0
  108. openadapt_flow-2.2.0/openadapt_flow/agent/delegated.py +192 -0
  109. openadapt_flow-2.2.0/openadapt_flow/agent/flow_service.py +51 -0
  110. openadapt_flow-2.2.0/openadapt_flow/agent/mailbox.py +842 -0
  111. openadapt_flow-2.2.0/openadapt_flow/agent/mcp.py +413 -0
  112. openadapt_flow-2.2.0/openadapt_flow/agent/mcpb_entry.py +68 -0
  113. openadapt_flow-2.2.0/openadapt_flow/agent/repair.py +816 -0
  114. openadapt_flow-2.2.0/openadapt_flow/agent/runner.py +1009 -0
  115. openadapt_flow-2.2.0/openadapt_flow/agent/runner_bind.py +200 -0
  116. openadapt_flow-2.2.0/openadapt_flow/agent/runs.py +404 -0
  117. openadapt_flow-2.2.0/openadapt_flow/agent/sandbox.py +533 -0
  118. openadapt_flow-2.2.0/openadapt_flow/agent/seal.py +245 -0
  119. openadapt_flow-2.2.0/openadapt_flow/agent/seal_cli.py +347 -0
  120. openadapt_flow-2.2.0/openadapt_flow/agent/service.py +620 -0
  121. openadapt_flow-2.2.0/openadapt_flow/agent/skill.py +194 -0
  122. openadapt_flow-2.2.0/openadapt_flow/agent/tutorial.py +169 -0
  123. openadapt_flow-2.2.0/openadapt_flow/api.py +99 -0
  124. openadapt_flow-2.2.0/openadapt_flow/approval_mode/approver.py +401 -0
  125. openadapt_flow-2.2.0/openadapt_flow/approval_mode/coverage.py +270 -0
  126. openadapt_flow-2.2.0/openadapt_flow/approval_mode/durable_carry.py +87 -0
  127. openadapt_flow-2.2.0/openadapt_flow/approval_mode/gate.py +1562 -0
  128. openadapt_flow-2.2.0/openadapt_flow/approval_mode/item_approval.py +1120 -0
  129. openadapt_flow-2.2.0/openadapt_flow/approval_mode/model.py +386 -0
  130. openadapt_flow-2.2.0/openadapt_flow/approval_mode/signed_policy.py +307 -0
  131. openadapt_flow-2.2.0/openadapt_flow/assurance.py +91 -0
  132. openadapt_flow-2.2.0/openadapt_flow/authoring.py +1474 -0
  133. openadapt_flow-2.2.0/openadapt_flow/backend.py +708 -0
  134. openadapt_flow-2.2.0/openadapt_flow/backends/_browser_process.py +53 -0
  135. openadapt_flow-2.2.0/openadapt_flow/backends/_page_quiescence.py +329 -0
  136. openadapt_flow-2.2.0/openadapt_flow/backends/linux_backend.py +1526 -0
  137. openadapt_flow-2.2.0/openadapt_flow/backends/macos_backend.py +1248 -0
  138. openadapt_flow-2.2.0/openadapt_flow/backends/parallels_vm.py +895 -0
  139. openadapt_flow-2.2.0/openadapt_flow/backends/playwright_backend.py +3165 -0
  140. openadapt_flow-2.2.0/openadapt_flow/backends/rdp_backend.py +1803 -0
  141. openadapt_flow-2.2.0/openadapt_flow/backends/win_agent/README.md +91 -0
  142. openadapt_flow-2.2.0/openadapt_flow/backends/win_agent/__init__.py +45 -0
  143. openadapt_flow-2.2.0/openadapt_flow/backends/win_agent/server.py +1660 -0
  144. openadapt_flow-2.2.0/openadapt_flow/backends/xfreerdp.py +616 -0
  145. openadapt_flow-2.2.0/openadapt_flow/benchmark/desktop_benchmark.py +799 -0
  146. openadapt_flow-2.2.0/openadapt_flow/check_level.py +145 -0
  147. openadapt_flow-2.2.0/openadapt_flow/cli_check.py +330 -0
  148. openadapt_flow-2.2.0/openadapt_flow/cli_fleet.py +380 -0
  149. openadapt_flow-2.2.0/openadapt_flow/cli_known_ids.py +139 -0
  150. openadapt_flow-2.2.0/openadapt_flow/cli_local_seal.py +185 -0
  151. openadapt_flow-2.2.0/openadapt_flow/cli_no_outbound.py +128 -0
  152. openadapt_flow-2.2.0/openadapt_flow/cli_process.py +452 -0
  153. openadapt_flow-2.2.0/openadapt_flow/cli_service.py +232 -0
  154. openadapt_flow-2.2.0/openadapt_flow/cloud_seal.py +230 -0
  155. openadapt_flow-2.2.0/openadapt_flow/compiler/compile.py +3052 -0
  156. openadapt_flow-2.2.0/openadapt_flow/compiler/distill.py +357 -0
  157. openadapt_flow-2.2.0/openadapt_flow/compiler/effect_mining.py +700 -0
  158. openadapt_flow-2.2.0/openadapt_flow/compiler/fixup_passes.py +365 -0
  159. openadapt_flow-2.2.0/openadapt_flow/compiler/readback_authoring.py +616 -0
  160. openadapt_flow-2.2.0/openadapt_flow/console/app.py +891 -0
  161. openadapt_flow-2.2.0/openadapt_flow/console/attention.py +326 -0
  162. openadapt_flow-2.2.0/openadapt_flow/console/data.py +875 -0
  163. openadapt_flow-2.2.0/openadapt_flow/console/decision_context.py +236 -0
  164. openadapt_flow-2.2.0/openadapt_flow/console/halt_detail.py +495 -0
  165. openadapt_flow-2.2.0/openadapt_flow/console/human_decisions.py +908 -0
  166. openadapt_flow-2.2.0/openadapt_flow/console/save_approvals.py +393 -0
  167. openadapt_flow-2.2.0/openadapt_flow/contracts/__init__.py +855 -0
  168. openadapt_flow-2.2.0/openadapt_flow/contracts/_compat.py +298 -0
  169. openadapt_flow-2.2.0/openadapt_flow/contracts/action.py +188 -0
  170. openadapt_flow-2.2.0/openadapt_flow/contracts/approval.py +672 -0
  171. openadapt_flow-2.2.0/openadapt_flow/contracts/authentication.py +346 -0
  172. openadapt_flow-2.2.0/openadapt_flow/contracts/authoring.py +864 -0
  173. openadapt_flow-2.2.0/openadapt_flow/contracts/benchmark.py +202 -0
  174. openadapt_flow-2.2.0/openadapt_flow/contracts/business_decision.py +924 -0
  175. openadapt_flow-2.2.0/openadapt_flow/contracts/clinic_job.py +354 -0
  176. openadapt_flow-2.2.0/openadapt_flow/contracts/computer_state.py +293 -0
  177. openadapt_flow-2.2.0/openadapt_flow/contracts/control_overlay.py +395 -0
  178. openadapt_flow-2.2.0/openadapt_flow/contracts/control_overlay_tracking.py +462 -0
  179. openadapt_flow-2.2.0/openadapt_flow/contracts/episode.py +136 -0
  180. openadapt_flow-2.2.0/openadapt_flow/contracts/execute.py +378 -0
  181. openadapt_flow-2.2.0/openadapt_flow/contracts/execute_client.py +145 -0
  182. openadapt_flow-2.2.0/openadapt_flow/contracts/execute_openapi.py +224 -0
  183. openadapt_flow-2.2.0/openadapt_flow/contracts/execution_requirements.py +277 -0
  184. openadapt_flow-2.2.0/openadapt_flow/contracts/failure.py +41 -0
  185. openadapt_flow-2.2.0/openadapt_flow/contracts/human_decision.py +748 -0
  186. openadapt_flow-2.2.0/openadapt_flow/contracts/oracle.py +159 -0
  187. openadapt_flow-2.2.0/openadapt_flow/contracts/parsing.py +596 -0
  188. openadapt_flow-2.2.0/openadapt_flow/contracts/plain_results.py +596 -0
  189. openadapt_flow-2.2.0/openadapt_flow/contracts/process_capability.py +467 -0
  190. openadapt_flow-2.2.0/openadapt_flow/contracts/production_lifecycle.py +723 -0
  191. openadapt_flow-2.2.0/openadapt_flow/contracts/reward.py +732 -0
  192. openadapt_flow-2.2.0/openadapt_flow/contracts/runner_capability.py +330 -0
  193. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/__init__.py +1 -0
  194. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/approval-record-v1.json +239 -0
  195. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/approver-identity-v1.json +99 -0
  196. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/approver-policy-v1.json +65 -0
  197. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/artifact-ref-v1.json +138 -0
  198. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/authentication-capture-policy-v1.json +50 -0
  199. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/authentication-receipt-v1.json +242 -0
  200. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/authentication-task-v1.json +236 -0
  201. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/authoring-bind-v1.json +105 -0
  202. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/authoring-command-v1.json +733 -0
  203. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/authoring-observe-v1.json +304 -0
  204. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/autonomy-eligibility-v1.json +73 -0
  205. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/business-decision-answer-receipt-v1.json +128 -0
  206. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/business-decision-answer-v1.json +125 -0
  207. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/business-decision-delivery-policy-v1.json +175 -0
  208. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/business-decision-presentation-v1.json +269 -0
  209. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/business-decision-task-v1.json +317 -0
  210. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/clinic-inbox-v1.json +42 -0
  211. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/clinic-mcp-tools-v1.json +87 -0
  212. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/clinic-outbox-v1.json +42 -0
  213. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/clinic-tool-result-v1.json +51 -0
  214. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/code-capability-admission-v1.json +158 -0
  215. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/code-capability-manifest-v1.json +251 -0
  216. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/control-overlay-frame-v1.json +238 -0
  217. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/control-overlay-frame-v2.json +406 -0
  218. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/control-overlay-timeline-v1.json +315 -0
  219. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/control-overlay-timeline-v2.json +497 -0
  220. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/execute-v1-openapi.json +1612 -0
  221. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/execution-requirements-v1.json +213 -0
  222. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/human-decision-receipt-v1.json +165 -0
  223. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/human-decision-task-v1.json +409 -0
  224. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/human-decision-task-v2.json +469 -0
  225. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/plain-outcome-v1.json +233 -0
  226. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/plain-progress-v1.json +52 -0
  227. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/process-evidence-receipt-v1.json +153 -0
  228. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/production-admission-registry-state-v1.json +212 -0
  229. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/production-lifecycle-admission-binding-v2.json +166 -0
  230. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/production-lifecycle-target-v2.json +150 -0
  231. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/qualification-release-reference-v2.json +105 -0
  232. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/reward-certificate-v1.json +124 -0
  233. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/reward-contract-v1.json +254 -0
  234. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/reward-evidence-receipt-v1.json +233 -0
  235. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/runner-capability-manifest-v1.json +217 -0
  236. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/runner-capability-match-v1.vector.json +106 -0
  237. openadapt_flow-2.2.0/openadapt_flow/contracts/schemas/runner-capability-negative-v1.vector.json +214 -0
  238. openadapt_flow-2.2.0/openadapt_flow/contracts/seal.py +170 -0
  239. openadapt_flow-2.2.0/openadapt_flow/contracts/vocabulary/__init__.py +39 -0
  240. openadapt_flow-2.2.0/openadapt_flow/contracts/vocabulary/__main__.py +6 -0
  241. openadapt_flow-2.2.0/openadapt_flow/contracts/vocabulary/lint.py +1227 -0
  242. openadapt_flow-2.2.0/openadapt_flow/contracts/vocabulary/outcome-vectors.json +678 -0
  243. openadapt_flow-2.2.0/openadapt_flow/contracts/vocabulary/outcomes.json +587 -0
  244. openadapt_flow-2.2.0/openadapt_flow/contracts/vocabulary/vocabulary.json +327 -0
  245. openadapt_flow-2.2.0/openadapt_flow/countersign/__init__.py +46 -0
  246. openadapt_flow-2.2.0/openadapt_flow/countersign/cli.py +720 -0
  247. openadapt_flow-2.2.0/openadapt_flow/countersign/commitments.py +280 -0
  248. openadapt_flow-2.2.0/openadapt_flow/countersign/document.py +839 -0
  249. openadapt_flow-2.2.0/openadapt_flow/countersign/dossier.py +492 -0
  250. openadapt_flow-2.2.0/openadapt_flow/countersign/exceptions.py +664 -0
  251. openadapt_flow-2.2.0/openadapt_flow/countersign/render.py +233 -0
  252. openadapt_flow-2.2.0/openadapt_flow/countersign/trust/sigstore-tsa-root.pem +13 -0
  253. openadapt_flow-2.2.0/openadapt_flow/countersign/tsa.py +778 -0
  254. openadapt_flow-2.2.0/openadapt_flow/countersign/vault.py +114 -0
  255. openadapt_flow-2.2.0/openadapt_flow/decision/__init__.py +19 -0
  256. openadapt_flow-2.2.0/openadapt_flow/decision/calibration.py +404 -0
  257. openadapt_flow-2.2.0/openadapt_flow/decision/cli.py +282 -0
  258. openadapt_flow-2.2.0/openadapt_flow/decision/eligibility.py +199 -0
  259. openadapt_flow-2.2.0/openadapt_flow/decision/feature_model.py +143 -0
  260. openadapt_flow-2.2.0/openadapt_flow/decision/features.py +409 -0
  261. openadapt_flow-2.2.0/openadapt_flow/decision/labels.py +240 -0
  262. openadapt_flow-2.2.0/openadapt_flow/decision/minimize.py +229 -0
  263. openadapt_flow-2.2.0/openadapt_flow/decision/provider.py +106 -0
  264. openadapt_flow-2.2.0/openadapt_flow/decision/review.py +168 -0
  265. openadapt_flow-2.2.0/openadapt_flow/decision/rules.py +116 -0
  266. openadapt_flow-2.2.0/openadapt_flow/decision/synthetic.py +216 -0
  267. openadapt_flow-2.2.0/openadapt_flow/decision/triage.py +330 -0
  268. openadapt_flow-2.2.0/openadapt_flow/demo_proof.py +1178 -0
  269. openadapt_flow-2.2.0/openadapt_flow/deployment.py +1709 -0
  270. openadapt_flow-2.2.0/openadapt_flow/emit/mcp_tool.py +254 -0
  271. openadapt_flow-2.2.0/openadapt_flow/emit/skill.py +267 -0
  272. openadapt_flow-2.2.0/openadapt_flow/execute/app.py +330 -0
  273. openadapt_flow-2.2.0/openadapt_flow/execute/dispatch.py +407 -0
  274. openadapt_flow-2.2.0/openadapt_flow/execute/service.py +456 -0
  275. openadapt_flow-2.2.0/openadapt_flow/fleet/__init__.py +151 -0
  276. openadapt_flow-2.2.0/openadapt_flow/fleet/_lock.py +55 -0
  277. openadapt_flow-2.2.0/openadapt_flow/fleet/canary.py +176 -0
  278. openadapt_flow-2.2.0/openadapt_flow/fleet/export.py +347 -0
  279. openadapt_flow-2.2.0/openadapt_flow/fleet/feed.py +149 -0
  280. openadapt_flow-2.2.0/openadapt_flow/fleet/fingerprint.py +338 -0
  281. openadapt_flow-2.2.0/openadapt_flow/fleet/hub.py +475 -0
  282. openadapt_flow-2.2.0/openadapt_flow/fleet/intake.py +181 -0
  283. openadapt_flow-2.2.0/openadapt_flow/fleet/optin.py +171 -0
  284. openadapt_flow-2.2.0/openadapt_flow/fleet/patch.py +597 -0
  285. openadapt_flow-2.2.0/openadapt_flow/fleet/policy.py +554 -0
  286. openadapt_flow-2.2.0/openadapt_flow/fleet/signing.py +553 -0
  287. openadapt_flow-2.2.0/openadapt_flow/fleet/simulator.py +1080 -0
  288. openadapt_flow-2.2.0/openadapt_flow/fleet/status.py +512 -0
  289. openadapt_flow-2.2.0/openadapt_flow/image_hash.py +90 -0
  290. openadapt_flow-2.2.0/openadapt_flow/intake/__init__.py +44 -0
  291. openadapt_flow-2.2.0/openadapt_flow/intake/cli.py +130 -0
  292. openadapt_flow-2.2.0/openadapt_flow/intake/document.py +205 -0
  293. openadapt_flow-2.2.0/openadapt_flow/intake/extract.py +301 -0
  294. openadapt_flow-2.2.0/openadapt_flow/interactive_recorder.py +4024 -0
  295. openadapt_flow-2.2.0/openadapt_flow/interop/__init__.py +25 -0
  296. openadapt_flow-2.2.0/openadapt_flow/interop/business_decision.py +632 -0
  297. openadapt_flow-2.2.0/openadapt_flow/interop/business_decision_cloud.py +784 -0
  298. openadapt_flow-2.2.0/openadapt_flow/interop/types.py +373 -0
  299. openadapt_flow-2.2.0/openadapt_flow/ir.py +4310 -0
  300. openadapt_flow-2.2.0/openadapt_flow/jit/__init__.py +73 -0
  301. openadapt_flow-2.2.0/openadapt_flow/jit/adapters.py +735 -0
  302. openadapt_flow-2.2.0/openadapt_flow/jit/authority.py +598 -0
  303. openadapt_flow-2.2.0/openadapt_flow/jit/cli.py +334 -0
  304. openadapt_flow-2.2.0/openadapt_flow/jit/compile_agent.py +947 -0
  305. openadapt_flow-2.2.0/openadapt_flow/jit/keys.py +128 -0
  306. openadapt_flow-2.2.0/openadapt_flow/jit/lifecycle.py +1498 -0
  307. openadapt_flow-2.2.0/openadapt_flow/jit/lift.py +137 -0
  308. openadapt_flow-2.2.0/openadapt_flow/jit/recorded.py +61 -0
  309. openadapt_flow-2.2.0/openadapt_flow/jit/signature.py +133 -0
  310. openadapt_flow-2.2.0/openadapt_flow/learning/branch_teach.py +666 -0
  311. openadapt_flow-2.2.0/openadapt_flow/lookup_capabilities.py +333 -0
  312. openadapt_flow-2.2.0/openadapt_flow/no_outbound.py +250 -0
  313. openadapt_flow-2.2.0/openadapt_flow/no_outbound_allow.py +347 -0
  314. openadapt_flow-2.2.0/openadapt_flow/offline_seal.py +397 -0
  315. openadapt_flow-2.2.0/openadapt_flow/onprem_reboot.py +411 -0
  316. openadapt_flow-2.2.0/openadapt_flow/onprem_service.py +644 -0
  317. openadapt_flow-2.2.0/openadapt_flow/pf_firewall.py +174 -0
  318. openadapt_flow-2.2.0/openadapt_flow/policy.py +1421 -0
  319. openadapt_flow-2.2.0/openadapt_flow/qualification.py +5622 -0
  320. openadapt_flow-2.2.0/openadapt_flow/qualify/__init__.py +39 -0
  321. openadapt_flow-2.2.0/openadapt_flow/qualify/campaign.py +1791 -0
  322. openadapt_flow-2.2.0/openadapt_flow/qualify/config.py +430 -0
  323. openadapt_flow-2.2.0/openadapt_flow/qualify/environment.py +109 -0
  324. openadapt_flow-2.2.0/openadapt_flow/qualify/faults.py +302 -0
  325. openadapt_flow-2.2.0/openadapt_flow/qualify/keys.py +45 -0
  326. openadapt_flow-2.2.0/openadapt_flow/qualify/result.py +445 -0
  327. openadapt_flow-2.2.0/openadapt_flow/qualify/session.py +171 -0
  328. openadapt_flow-2.2.0/openadapt_flow/receipt.py +1068 -0
  329. openadapt_flow-2.2.0/openadapt_flow/record_sor.py +514 -0
  330. openadapt_flow-2.2.0/openadapt_flow/registry.py +211 -0
  331. openadapt_flow-2.2.0/openadapt_flow/repair/agent_teach.py +285 -0
  332. openadapt_flow-2.2.0/openadapt_flow/repair/campaign.py +425 -0
  333. openadapt_flow-2.2.0/openadapt_flow/repair/candidate.py +473 -0
  334. openadapt_flow-2.2.0/openadapt_flow/repair/cli.py +427 -0
  335. openadapt_flow-2.2.0/openadapt_flow/repair/dialog_fixture.py +208 -0
  336. openadapt_flow-2.2.0/openadapt_flow/repair/dialog_identity.py +103 -0
  337. openadapt_flow-2.2.0/openadapt_flow/repair/hold.py +165 -0
  338. openadapt_flow-2.2.0/openadapt_flow/repair/lifecycle.py +816 -0
  339. openadapt_flow-2.2.0/openadapt_flow/reward/calibration.py +480 -0
  340. openadapt_flow-2.2.0/openadapt_flow/reward/callables.py +129 -0
  341. openadapt_flow-2.2.0/openadapt_flow/reward/models.py +588 -0
  342. openadapt_flow-2.2.0/openadapt_flow/reward/oracles.py +284 -0
  343. openadapt_flow-2.2.0/openadapt_flow/reward/seed.py +411 -0
  344. openadapt_flow-2.2.0/openadapt_flow/reward/worker.py +739 -0
  345. openadapt_flow-2.2.0/openadapt_flow/runtime/admitted_composition.py +691 -0
  346. openadapt_flow-2.2.0/openadapt_flow/runtime/control_overlay.py +402 -0
  347. openadapt_flow-2.2.0/openadapt_flow/runtime/durable/attended.py +4257 -0
  348. openadapt_flow-2.2.0/openadapt_flow/runtime/durable/attended_service.py +428 -0
  349. openadapt_flow-2.2.0/openadapt_flow/runtime/effects/__init__.py +208 -0
  350. openadapt_flow-2.2.0/openadapt_flow/runtime/effects/effect.py +1068 -0
  351. openadapt_flow-2.2.0/openadapt_flow/runtime/effects/fhir.py +279 -0
  352. openadapt_flow-2.2.0/openadapt_flow/runtime/effects/onscreen.py +668 -0
  353. openadapt_flow-2.2.0/openadapt_flow/runtime/effects/readback_values.py +247 -0
  354. openadapt_flow-2.2.0/openadapt_flow/runtime/effects/smart_auth.py +536 -0
  355. openadapt_flow-2.2.0/openadapt_flow/runtime/effects/ui_readback.py +1164 -0
  356. openadapt_flow-2.2.0/openadapt_flow/runtime/identity.py +2343 -0
  357. openadapt_flow-2.2.0/openadapt_flow/runtime/identity_template.py +886 -0
  358. openadapt_flow-2.2.0/openadapt_flow/runtime/known_ids.py +473 -0
  359. openadapt_flow-2.2.0/openadapt_flow/runtime/layout_drift.py +308 -0
  360. openadapt_flow-2.2.0/openadapt_flow/runtime/process_v1.py +1371 -0
  361. openadapt_flow-2.2.0/openadapt_flow/runtime/replayer.py +14584 -0
  362. openadapt_flow-2.2.0/openadapt_flow/seal_batch.py +288 -0
  363. openadapt_flow-2.2.0/openadapt_flow/tutorial.py +796 -0
  364. openadapt_flow-2.2.0/openadapt_flow/validation/dense_surface.py +1574 -0
  365. openadapt_flow-2.2.0/openadapt_flow/validation/known_ids_dense.py +317 -0
  366. openadapt_flow-2.2.0/openadapt_flow/verification.py +180 -0
  367. openadapt_flow-2.2.0/openadapt_flow/verify_run.py +1071 -0
  368. openadapt_flow-2.2.0/openadapt_flow/vision/__init__.py +196 -0
  369. openadapt_flow-2.2.0/openadapt_flow/vision/imgops.py +472 -0
  370. openadapt_flow-2.2.0/openadapt_flow/vision/match.py +391 -0
  371. openadapt_flow-2.2.0/openadapt_flow/vision/ocr.py +430 -0
  372. openadapt_flow-2.2.0/openadapt_flow/vision/ocr_backends.py +324 -0
  373. openadapt_flow-2.2.0/openadapt_flow/vision/settle.py +352 -0
  374. openadapt_flow-2.2.0/paper/ARTIFACT_CHECKLIST.md +230 -0
  375. openadapt_flow-2.2.0/public-artifacts.json +6283 -0
  376. openadapt_flow-2.2.0/pyproject.toml +578 -0
  377. openadapt_flow-2.2.0/scripts/build_registry_index.py +34 -0
  378. openadapt_flow-2.2.0/scripts/desktop/waa_shim.py +288 -0
  379. openadapt_flow-2.2.0/scripts/evaluate_decision_triage.py +230 -0
  380. openadapt_flow-2.2.0/scripts/export_public_demo_evidence.py +2671 -0
  381. openadapt_flow-2.2.0/scripts/install.sh +69 -0
  382. openadapt_flow-2.2.0/scripts/make_demo_gif.py +219 -0
  383. openadapt_flow-2.2.0/scripts/openemr_local_demo.py +1963 -0
  384. openadapt_flow-2.2.0/scripts/openemr_qualification.py +195 -0
  385. openadapt_flow-2.2.0/tests/_approver_grant_support.py +89 -0
  386. openadapt_flow-2.2.0/tests/conftest.py +46 -0
  387. openadapt_flow-2.2.0/tests/e2e/__init__.py +0 -0
  388. openadapt_flow-2.2.0/tests/e2e/test_citrix_workspace_standin_e2e.py +144 -0
  389. openadapt_flow-2.2.0/tests/e2e/test_claude_code_demo_example.py +199 -0
  390. openadapt_flow-2.2.0/tests/e2e/test_jit_cua_e2e.py +220 -0
  391. openadapt_flow-2.2.0/tests/e2e/test_tutorial_break_it_e2e.py +157 -0
  392. openadapt_flow-2.2.0/tests/fixtures/countersign/digicert-digest.hex +1 -0
  393. openadapt_flow-2.2.0/tests/fixtures/countersign/digicert-token.der +0 -0
  394. openadapt_flow-2.2.0/tests/fixtures/countersign/digicert-trusted-root-g4.pem +32 -0
  395. openadapt_flow-2.2.0/tests/fixtures/countersign/sigstore-token.der +0 -0
  396. openadapt_flow-2.2.0/tests/fixtures/jit/anthropic_add_note.json +76 -0
  397. openadapt_flow-2.2.0/tests/fixtures/jit/openai_add_note.json +75 -0
  398. openadapt_flow-2.2.0/tests/fixtures/jit/playwright_mcp_add_note.json +50 -0
  399. openadapt_flow-2.2.0/tests/fixtures/jit/playwright_mcp_snapshot_refs.json +21 -0
  400. openadapt_flow-2.2.0/tests/fixtures/match_ridge/openemr_accordion_rdp.png +0 -0
  401. openadapt_flow-2.2.0/tests/test_admitted_composition_runtime.py +590 -0
  402. openadapt_flow-2.2.0/tests/test_agent_teach_branch.py +107 -0
  403. openadapt_flow-2.2.0/tests/test_agent_teach_repair.py +270 -0
  404. openadapt_flow-2.2.0/tests/test_api.py +46 -0
  405. openadapt_flow-2.2.0/tests/test_approval_delegated.py +422 -0
  406. openadapt_flow-2.2.0/tests/test_approval_mode_each_item.py +706 -0
  407. openadapt_flow-2.2.0/tests/test_approval_policy_pinned.py +72 -0
  408. openadapt_flow-2.2.0/tests/test_approval_signed_grant.py +284 -0
  409. openadapt_flow-2.2.0/tests/test_authoring.py +990 -0
  410. openadapt_flow-2.2.0/tests/test_browser_attach.py +5252 -0
  411. openadapt_flow-2.2.0/tests/test_browser_selection.py +112 -0
  412. openadapt_flow-2.2.0/tests/test_business_decision_cloud_relay.py +825 -0
  413. openadapt_flow-2.2.0/tests/test_check_level.py +134 -0
  414. openadapt_flow-2.2.0/tests/test_ci_workflow_contract.py +517 -0
  415. openadapt_flow-2.2.0/tests/test_cli_attach_seal.py +36 -0
  416. openadapt_flow-2.2.0/tests/test_cli_process.py +174 -0
  417. openadapt_flow-2.2.0/tests/test_compile_identifier_crop.py +522 -0
  418. openadapt_flow-2.2.0/tests/test_compiler.py +1860 -0
  419. openadapt_flow-2.2.0/tests/test_console.py +2325 -0
  420. openadapt_flow-2.2.0/tests/test_console_save_approvals.py +205 -0
  421. openadapt_flow-2.2.0/tests/test_countersign.py +1791 -0
  422. openadapt_flow-2.2.0/tests/test_decision_healthy_replay.py +108 -0
  423. openadapt_flow-2.2.0/tests/test_decision_triage.py +1027 -0
  424. openadapt_flow-2.2.0/tests/test_demo_proof.py +506 -0
  425. openadapt_flow-2.2.0/tests/test_demonstrated_readback_verifier.py +716 -0
  426. openadapt_flow-2.2.0/tests/test_desktop_benchmark.py +271 -0
  427. openadapt_flow-2.2.0/tests/test_desktop_check_it_cli_mockmed.py +627 -0
  428. openadapt_flow-2.2.0/tests/test_distill.py +297 -0
  429. openadapt_flow-2.2.0/tests/test_drift_oracle.py +418 -0
  430. openadapt_flow-2.2.0/tests/test_effect_mining.py +557 -0
  431. openadapt_flow-2.2.0/tests/test_effect_plugin_options.py +309 -0
  432. openadapt_flow-2.2.0/tests/test_execute_dispatch_mapping.py +114 -0
  433. openadapt_flow-2.2.0/tests/test_execute_post_dispatch_faults.py +245 -0
  434. openadapt_flow-2.2.0/tests/test_execute_ref.py +384 -0
  435. openadapt_flow-2.2.0/tests/test_fixup_passes.py +209 -0
  436. openadapt_flow-2.2.0/tests/test_fleet_drift.py +1766 -0
  437. openadapt_flow-2.2.0/tests/test_identity.py +570 -0
  438. openadapt_flow-2.2.0/tests/test_identity_evidence.py +182 -0
  439. openadapt_flow-2.2.0/tests/test_identity_evidence_capability.py +142 -0
  440. openadapt_flow-2.2.0/tests/test_identity_read_ranking.py +77 -0
  441. openadapt_flow-2.2.0/tests/test_identity_template.py +320 -0
  442. openadapt_flow-2.2.0/tests/test_imgops_equivalence.py +182 -0
  443. openadapt_flow-2.2.0/tests/test_intake.py +298 -0
  444. openadapt_flow-2.2.0/tests/test_interop_business_decision.py +444 -0
  445. openadapt_flow-2.2.0/tests/test_interop_types.py +346 -0
  446. openadapt_flow-2.2.0/tests/test_jit.py +382 -0
  447. openadapt_flow-2.2.0/tests/test_jit_admission_modes.py +522 -0
  448. openadapt_flow-2.2.0/tests/test_jit_draft_execution.py +164 -0
  449. openadapt_flow-2.2.0/tests/test_jit_fail_closed.py +233 -0
  450. openadapt_flow-2.2.0/tests/test_jit_lifecycle.py +696 -0
  451. openadapt_flow-2.2.0/tests/test_keyboard_form_field_lease.py +67 -0
  452. openadapt_flow-2.2.0/tests/test_known_ids.py +190 -0
  453. openadapt_flow-2.2.0/tests/test_known_ids_admission.py +166 -0
  454. openadapt_flow-2.2.0/tests/test_known_ids_replayer.py +175 -0
  455. openadapt_flow-2.2.0/tests/test_layout_drift.py +176 -0
  456. openadapt_flow-2.2.0/tests/test_layout_drift_replay.py +140 -0
  457. openadapt_flow-2.2.0/tests/test_lookup_capabilities.py +708 -0
  458. openadapt_flow-2.2.0/tests/test_match_ridge.py +34 -0
  459. openadapt_flow-2.2.0/tests/test_mobile_attended_decision_e2e.py +1516 -0
  460. openadapt_flow-2.2.0/tests/test_no_outbound.py +265 -0
  461. openadapt_flow-2.2.0/tests/test_no_outbound_allow.py +213 -0
  462. openadapt_flow-2.2.0/tests/test_ocr_backends.py +188 -0
  463. openadapt_flow-2.2.0/tests/test_offline_seal.py +264 -0
  464. openadapt_flow-2.2.0/tests/test_onprem_reboot.py +195 -0
  465. openadapt_flow-2.2.0/tests/test_onprem_service.py +586 -0
  466. openadapt_flow-2.2.0/tests/test_openemr_benchmark.py +1035 -0
  467. openadapt_flow-2.2.0/tests/test_openemr_local_benchmark.py +1457 -0
  468. openadapt_flow-2.2.0/tests/test_page_settle.py +418 -0
  469. openadapt_flow-2.2.0/tests/test_parallels_vm.py +487 -0
  470. openadapt_flow-2.2.0/tests/test_pf_firewall.py +93 -0
  471. openadapt_flow-2.2.0/tests/test_pinned_upstream_fixtures.py +153 -0
  472. openadapt_flow-2.2.0/tests/test_pixel_identity_rdp_form.py +141 -0
  473. openadapt_flow-2.2.0/tests/test_playwright_screenshot_navigation.py +85 -0
  474. openadapt_flow-2.2.0/tests/test_policy.py +436 -0
  475. openadapt_flow-2.2.0/tests/test_process_contract_v1.py +837 -0
  476. openadapt_flow-2.2.0/tests/test_qualification_result.py +390 -0
  477. openadapt_flow-2.2.0/tests/test_qualify_declarative.py +268 -0
  478. openadapt_flow-2.2.0/tests/test_rdp_ladder_qualification.py +654 -0
  479. openadapt_flow-2.2.0/tests/test_readback_authoring.py +558 -0
  480. openadapt_flow-2.2.0/tests/test_record_sor.py +340 -0
  481. openadapt_flow-2.2.0/tests/test_registry.py +96 -0
  482. openadapt_flow-2.2.0/tests/test_release_contract.py +1227 -0
  483. openadapt_flow-2.2.0/tests/test_remote_display_backend.py +1186 -0
  484. openadapt_flow-2.2.0/tests/test_repair_hold.py +104 -0
  485. openadapt_flow-2.2.0/tests/test_reward_trust_boundary.py +531 -0
  486. openadapt_flow-2.2.0/tests/test_reward_worker.py +1009 -0
  487. openadapt_flow-2.2.0/tests/test_run_receipt.py +1406 -0
  488. openadapt_flow-2.2.0/tests/test_runtime_control_overlay.py +431 -0
  489. openadapt_flow-2.2.0/tests/test_seal_batch.py +143 -0
  490. openadapt_flow-2.2.0/tests/test_smart_backend_auth.py +636 -0
  491. openadapt_flow-2.2.0/tests/test_teach_branch.py +371 -0
  492. openadapt_flow-2.2.0/tests/test_ui_readback_verifier.py +458 -0
  493. openadapt_flow-2.2.0/tests/test_verify_run.py +921 -0
  494. openadapt_flow-2.2.0/tests/test_waa_shim.py +151 -0
  495. openadapt_flow-2.2.0/tests/test_win_agent_server.py +790 -0
  496. openadapt_flow-2.2.0/tests/test_windows_backend.py +650 -0
  497. openadapt_flow-2.2.0/tests/test_xfreerdp.py +228 -0
  498. openadapt_flow-2.2.0/uv.lock +4127 -0
  499. openadapt_flow-2.0.0/.github/workflows/canvas-nodom-ladder.yml +0 -101
  500. openadapt_flow-2.0.0/.github/workflows/ci.yml +0 -1005
  501. openadapt_flow-2.0.0/.github/workflows/citrix-workspace-standin.yml +0 -133
  502. openadapt_flow-2.0.0/.github/workflows/docker-rdp-multiapp-vision.yml +0 -81
  503. openadapt_flow-2.0.0/.github/workflows/docker-rdp-vision-ladder.yml +0 -207
  504. openadapt_flow-2.0.0/.github/workflows/paper.yml +0 -156
  505. openadapt_flow-2.0.0/.github/workflows/quickstart-lifecycle.yml +0 -107
  506. openadapt_flow-2.0.0/.github/workflows/release.yml +0 -591
  507. openadapt_flow-2.0.0/.github/workflows/validate-claims.yml +0 -202
  508. openadapt_flow-2.0.0/CHANGELOG.md +0 -7538
  509. openadapt_flow-2.0.0/CODE_OF_CONDUCT.md +0 -67
  510. openadapt_flow-2.0.0/CONTRIBUTING.md +0 -171
  511. openadapt_flow-2.0.0/DESIGN.md +0 -437
  512. openadapt_flow-2.0.0/PKG-INFO +0 -470
  513. openadapt_flow-2.0.0/README.md +0 -373
  514. openadapt_flow-2.0.0/SECURITY.md +0 -42
  515. openadapt_flow-2.0.0/benchmark/citrix_workspace/run_citrix_workspace_qualification.py +0 -581
  516. openadapt_flow-2.0.0/benchmark/comparison_artifact/comparison.html +0 -261
  517. openadapt_flow-2.0.0/benchmark/comparison_artifact/generate.py +0 -918
  518. openadapt_flow-2.0.0/benchmark/effectbench/LEADERBOARD.md +0 -161
  519. openadapt_flow-2.0.0/benchmark/effectbench/README.md +0 -216
  520. openadapt_flow-2.0.0/benchmark/effectbench/SPEC.md +0 -314
  521. openadapt_flow-2.0.0/benchmark/effectbench/pyproject.toml +0 -59
  522. openadapt_flow-2.0.0/benchmark/environments/README.md +0 -150
  523. openadapt_flow-2.0.0/benchmark/environments/environments.json +0 -204
  524. openadapt_flow-2.0.0/benchmark/environments/registry.py +0 -419
  525. openadapt_flow-2.0.0/benchmark/openemr_local/compose.yml +0 -51
  526. openadapt_flow-2.0.0/benchmark/openemr_local/environment.lock.json +0 -32
  527. openadapt_flow-2.0.0/benchmark/openemr_local/fixture.py +0 -924
  528. openadapt_flow-2.0.0/deploy/on-prem/COMPLIANCE.md +0 -115
  529. openadapt_flow-2.0.0/deploy/on-prem/README.md +0 -78
  530. openadapt_flow-2.0.0/deploy/on-prem/onprem.example.yaml +0 -100
  531. openadapt_flow-2.0.0/docs/APPROVAL_MODES.md +0 -255
  532. openadapt_flow-2.0.0/docs/CAPABILITIES.md +0 -125
  533. openadapt_flow-2.0.0/docs/EFFECT_KIT.md +0 -784
  534. openadapt_flow-2.0.0/docs/EXCEPTION_INBOX.md +0 -184
  535. openadapt_flow-2.0.0/docs/L1_INTEGRATION.md +0 -87
  536. openadapt_flow-2.0.0/docs/LIMITS.md +0 -529
  537. openadapt_flow-2.0.0/docs/ON_PREM.md +0 -206
  538. openadapt_flow-2.0.0/docs/PARAMETERS.md +0 -64
  539. openadapt_flow-2.0.0/docs/PRIVACY.md +0 -128
  540. openadapt_flow-2.0.0/docs/PRODUCTION.md +0 -202
  541. openadapt_flow-2.0.0/docs/QUALIFICATION_PROJECT.md +0 -192
  542. openadapt_flow-2.0.0/docs/REPAIR_LIFECYCLE.md +0 -229
  543. openadapt_flow-2.0.0/docs/RESOLUTION_LADDER.md +0 -45
  544. openadapt_flow-2.0.0/docs/REWARD_WORKER.md +0 -361
  545. openadapt_flow-2.0.0/docs/SOURCE_BOUNDARY.md +0 -51
  546. openadapt_flow-2.0.0/docs/SURFACES.md +0 -210
  547. openadapt_flow-2.0.0/docs/TUTORIAL.md +0 -175
  548. openadapt_flow-2.0.0/docs/backends/RDP.md +0 -218
  549. openadapt_flow-2.0.0/docs/deployment/ON_PREM_VLM.md +0 -242
  550. openadapt_flow-2.0.0/docs/deployment.example.yaml +0 -255
  551. openadapt_flow-2.0.0/docs/design/EFFECT_VERIFIER.md +0 -182
  552. openadapt_flow-2.0.0/docs/design/IR_PUBLICATION_OPTIONS.md +0 -133
  553. openadapt_flow-2.0.0/docs/design/REPLAYER_DECOMPOSITION.md +0 -179
  554. openadapt_flow-2.0.0/docs/design/RUNNER_CLIENT_LIBRARY.md +0 -151
  555. openadapt_flow-2.0.0/docs/design/WORKFLOW_PROGRAM_IR.md +0 -768
  556. openadapt_flow-2.0.0/docs/desktop/PHASE2.md +0 -108
  557. openadapt_flow-2.0.0/docs/desktop/RECORDING.md +0 -215
  558. openadapt_flow-2.0.0/docs/phi_in_transit.md +0 -130
  559. openadapt_flow-2.0.0/docs/showcase/demo.gif +0 -0
  560. openadapt_flow-2.0.0/docs/validation/IDENTITY_EVIDENCE.md +0 -39
  561. openadapt_flow-2.0.0/examples/claude-code-demo/README.md +0 -112
  562. openadapt_flow-2.0.0/openadapt_flow/__init__.py +0 -18
  563. openadapt_flow-2.0.0/openadapt_flow/__main__.py +0 -9504
  564. openadapt_flow-2.0.0/openadapt_flow/_browser_setup.py +0 -276
  565. openadapt_flow-2.0.0/openadapt_flow/approval_mode/coverage.py +0 -266
  566. openadapt_flow-2.0.0/openadapt_flow/approval_mode/gate.py +0 -1534
  567. openadapt_flow-2.0.0/openadapt_flow/approval_mode/item_approval.py +0 -655
  568. openadapt_flow-2.0.0/openadapt_flow/approval_mode/model.py +0 -356
  569. openadapt_flow-2.0.0/openadapt_flow/authoring.py +0 -1057
  570. openadapt_flow-2.0.0/openadapt_flow/backend.py +0 -694
  571. openadapt_flow-2.0.0/openadapt_flow/backends/linux_backend.py +0 -1517
  572. openadapt_flow-2.0.0/openadapt_flow/backends/macos_backend.py +0 -1239
  573. openadapt_flow-2.0.0/openadapt_flow/backends/parallels_vm.py +0 -888
  574. openadapt_flow-2.0.0/openadapt_flow/backends/playwright_backend.py +0 -2869
  575. openadapt_flow-2.0.0/openadapt_flow/backends/rdp_backend.py +0 -1804
  576. openadapt_flow-2.0.0/openadapt_flow/backends/win_agent/README.md +0 -84
  577. openadapt_flow-2.0.0/openadapt_flow/backends/win_agent/__init__.py +0 -42
  578. openadapt_flow-2.0.0/openadapt_flow/backends/win_agent/server.py +0 -1502
  579. openadapt_flow-2.0.0/openadapt_flow/benchmark/desktop_benchmark.py +0 -795
  580. openadapt_flow-2.0.0/openadapt_flow/cli_process.py +0 -452
  581. openadapt_flow-2.0.0/openadapt_flow/cloud_seal.py +0 -221
  582. openadapt_flow-2.0.0/openadapt_flow/compiler/compile.py +0 -2898
  583. openadapt_flow-2.0.0/openadapt_flow/compiler/effect_mining.py +0 -687
  584. openadapt_flow-2.0.0/openadapt_flow/console/app.py +0 -826
  585. openadapt_flow-2.0.0/openadapt_flow/console/attention.py +0 -320
  586. openadapt_flow-2.0.0/openadapt_flow/console/data.py +0 -875
  587. openadapt_flow-2.0.0/openadapt_flow/console/decision_context.py +0 -236
  588. openadapt_flow-2.0.0/openadapt_flow/console/halt_detail.py +0 -495
  589. openadapt_flow-2.0.0/openadapt_flow/console/human_decisions.py +0 -908
  590. openadapt_flow-2.0.0/openadapt_flow/demo_proof.py +0 -1178
  591. openadapt_flow-2.0.0/openadapt_flow/deployment.py +0 -1610
  592. openadapt_flow-2.0.0/openadapt_flow/emit/mcp_tool.py +0 -247
  593. openadapt_flow-2.0.0/openadapt_flow/emit/skill.py +0 -254
  594. openadapt_flow-2.0.0/openadapt_flow/execute/app.py +0 -330
  595. openadapt_flow-2.0.0/openadapt_flow/execute/dispatch.py +0 -401
  596. openadapt_flow-2.0.0/openadapt_flow/execute/service.py +0 -456
  597. openadapt_flow-2.0.0/openadapt_flow/image_hash.py +0 -88
  598. openadapt_flow-2.0.0/openadapt_flow/interactive_recorder.py +0 -4024
  599. openadapt_flow-2.0.0/openadapt_flow/interop/__init__.py +0 -25
  600. openadapt_flow-2.0.0/openadapt_flow/interop/business_decision.py +0 -632
  601. openadapt_flow-2.0.0/openadapt_flow/interop/business_decision_cloud.py +0 -786
  602. openadapt_flow-2.0.0/openadapt_flow/interop/types.py +0 -373
  603. openadapt_flow-2.0.0/openadapt_flow/ir.py +0 -4209
  604. openadapt_flow-2.0.0/openadapt_flow/policy.py +0 -1390
  605. openadapt_flow-2.0.0/openadapt_flow/qualification.py +0 -5560
  606. openadapt_flow-2.0.0/openadapt_flow/receipt.py +0 -1025
  607. openadapt_flow-2.0.0/openadapt_flow/repair/campaign.py +0 -414
  608. openadapt_flow-2.0.0/openadapt_flow/repair/candidate.py +0 -313
  609. openadapt_flow-2.0.0/openadapt_flow/repair/cli.py +0 -407
  610. openadapt_flow-2.0.0/openadapt_flow/repair/lifecycle.py +0 -626
  611. openadapt_flow-2.0.0/openadapt_flow/reward/calibration.py +0 -481
  612. openadapt_flow-2.0.0/openadapt_flow/reward/callables.py +0 -130
  613. openadapt_flow-2.0.0/openadapt_flow/reward/models.py +0 -588
  614. openadapt_flow-2.0.0/openadapt_flow/reward/oracles.py +0 -281
  615. openadapt_flow-2.0.0/openadapt_flow/reward/seed.py +0 -409
  616. openadapt_flow-2.0.0/openadapt_flow/reward/worker.py +0 -739
  617. openadapt_flow-2.0.0/openadapt_flow/runtime/admitted_composition.py +0 -691
  618. openadapt_flow-2.0.0/openadapt_flow/runtime/control_overlay.py +0 -403
  619. openadapt_flow-2.0.0/openadapt_flow/runtime/durable/attended.py +0 -4254
  620. openadapt_flow-2.0.0/openadapt_flow/runtime/durable/attended_service.py +0 -428
  621. openadapt_flow-2.0.0/openadapt_flow/runtime/effects/__init__.py +0 -202
  622. openadapt_flow-2.0.0/openadapt_flow/runtime/effects/effect.py +0 -832
  623. openadapt_flow-2.0.0/openadapt_flow/runtime/effects/fhir.py +0 -248
  624. openadapt_flow-2.0.0/openadapt_flow/runtime/effects/onscreen.py +0 -443
  625. openadapt_flow-2.0.0/openadapt_flow/runtime/effects/ui_readback.py +0 -1157
  626. openadapt_flow-2.0.0/openadapt_flow/runtime/identity.py +0 -2139
  627. openadapt_flow-2.0.0/openadapt_flow/runtime/identity_template.py +0 -832
  628. openadapt_flow-2.0.0/openadapt_flow/runtime/process_v1.py +0 -1371
  629. openadapt_flow-2.0.0/openadapt_flow/runtime/replayer.py +0 -13981
  630. openadapt_flow-2.0.0/openadapt_flow/tutorial.py +0 -750
  631. openadapt_flow-2.0.0/openadapt_flow/validation/dense_surface.py +0 -1472
  632. openadapt_flow-2.0.0/openadapt_flow/verification.py +0 -167
  633. openadapt_flow-2.0.0/openadapt_flow/vision/__init__.py +0 -187
  634. openadapt_flow-2.0.0/openadapt_flow/vision/match.py +0 -374
  635. openadapt_flow-2.0.0/openadapt_flow/vision/ocr.py +0 -392
  636. openadapt_flow-2.0.0/openadapt_flow/vision/settle.py +0 -215
  637. openadapt_flow-2.0.0/paper/ARTIFACT_CHECKLIST.md +0 -227
  638. openadapt_flow-2.0.0/public-artifacts.json +0 -5887
  639. openadapt_flow-2.0.0/pyproject.toml +0 -541
  640. openadapt_flow-2.0.0/scripts/desktop/waa_shim.py +0 -196
  641. openadapt_flow-2.0.0/scripts/export_public_demo_evidence.py +0 -3297
  642. openadapt_flow-2.0.0/scripts/install.sh +0 -69
  643. openadapt_flow-2.0.0/scripts/make_demo_gif.py +0 -204
  644. openadapt_flow-2.0.0/scripts/openemr_local_demo.py +0 -1951
  645. openadapt_flow-2.0.0/tests/conftest.py +0 -43
  646. openadapt_flow-2.0.0/tests/e2e/test_citrix_workspace_standin_e2e.py +0 -112
  647. openadapt_flow-2.0.0/tests/e2e/test_claude_code_demo_example.py +0 -199
  648. openadapt_flow-2.0.0/tests/e2e/test_tutorial_break_it_e2e.py +0 -157
  649. openadapt_flow-2.0.0/tests/test_admitted_composition_runtime.py +0 -590
  650. openadapt_flow-2.0.0/tests/test_approval_mode_each_item.py +0 -655
  651. openadapt_flow-2.0.0/tests/test_authoring.py +0 -854
  652. openadapt_flow-2.0.0/tests/test_browser_attach.py +0 -5252
  653. openadapt_flow-2.0.0/tests/test_business_decision_cloud_relay.py +0 -825
  654. openadapt_flow-2.0.0/tests/test_ci_workflow_contract.py +0 -517
  655. openadapt_flow-2.0.0/tests/test_cli_process.py +0 -174
  656. openadapt_flow-2.0.0/tests/test_compile_identifier_crop.py +0 -514
  657. openadapt_flow-2.0.0/tests/test_compiler.py +0 -1844
  658. openadapt_flow-2.0.0/tests/test_console.py +0 -2302
  659. openadapt_flow-2.0.0/tests/test_demo_proof.py +0 -506
  660. openadapt_flow-2.0.0/tests/test_desktop_benchmark.py +0 -240
  661. openadapt_flow-2.0.0/tests/test_desktop_check_it_cli_mockmed.py +0 -619
  662. openadapt_flow-2.0.0/tests/test_drift_oracle.py +0 -186
  663. openadapt_flow-2.0.0/tests/test_effect_mining.py +0 -513
  664. openadapt_flow-2.0.0/tests/test_effect_plugin_options.py +0 -302
  665. openadapt_flow-2.0.0/tests/test_execute_dispatch_mapping.py +0 -114
  666. openadapt_flow-2.0.0/tests/test_execute_post_dispatch_faults.py +0 -245
  667. openadapt_flow-2.0.0/tests/test_execute_ref.py +0 -384
  668. openadapt_flow-2.0.0/tests/test_identity.py +0 -567
  669. openadapt_flow-2.0.0/tests/test_identity_template.py +0 -315
  670. openadapt_flow-2.0.0/tests/test_interop_business_decision.py +0 -444
  671. openadapt_flow-2.0.0/tests/test_interop_types.py +0 -346
  672. openadapt_flow-2.0.0/tests/test_mobile_attended_decision_e2e.py +0 -1516
  673. openadapt_flow-2.0.0/tests/test_openemr_benchmark.py +0 -1033
  674. openadapt_flow-2.0.0/tests/test_openemr_local_benchmark.py +0 -1447
  675. openadapt_flow-2.0.0/tests/test_parallels_vm.py +0 -467
  676. openadapt_flow-2.0.0/tests/test_policy.py +0 -398
  677. openadapt_flow-2.0.0/tests/test_process_contract_v1.py +0 -837
  678. openadapt_flow-2.0.0/tests/test_rdp_ladder_qualification.py +0 -654
  679. openadapt_flow-2.0.0/tests/test_release_contract.py +0 -1210
  680. openadapt_flow-2.0.0/tests/test_remote_display_backend.py +0 -1135
  681. openadapt_flow-2.0.0/tests/test_reward_trust_boundary.py +0 -531
  682. openadapt_flow-2.0.0/tests/test_reward_worker.py +0 -1009
  683. openadapt_flow-2.0.0/tests/test_run_receipt.py +0 -1405
  684. openadapt_flow-2.0.0/tests/test_runtime_control_overlay.py +0 -436
  685. openadapt_flow-2.0.0/tests/test_ui_readback_verifier.py +0 -444
  686. openadapt_flow-2.0.0/tests/test_win_agent_server.py +0 -626
  687. openadapt_flow-2.0.0/tests/test_windows_backend.py +0 -585
  688. openadapt_flow-2.0.0/uv.lock +0 -3961
  689. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/CODEOWNERS +0 -0
  690. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  691. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  692. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  693. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  694. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/actionlint.yaml +0 -0
  695. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/dependabot.yml +0 -0
  696. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/mypy-interop.ini +0 -0
  697. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/release-health.json +0 -0
  698. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.github/workflows/release-health.yml +0 -0
  699. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.gitignore +0 -0
  700. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/.pre-commit-config.yaml +0 -0
  701. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/AGENTS.md +0 -0
  702. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/CCLA.md +0 -0
  703. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/CLA.md +0 -0
  704. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/CLAUDE.md +0 -0
  705. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/LICENSE +0 -0
  706. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/BENCHMARK.md +0 -0
  707. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/agent_arm_verticals/README.md +0 -0
  708. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ap_invoice/README.md +0 -0
  709. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ap_invoice/fixtures.py +0 -0
  710. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ap_invoice/ground_truth.py +0 -0
  711. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ap_invoice/results.json +0 -0
  712. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ap_invoice/run.py +0 -0
  713. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ap_invoice/workflow.py +0 -0
  714. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/.gitignore +0 -0
  715. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/REPORT.md +0 -0
  716. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/results.json +0 -0
  717. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/results_identity_full.json +0 -0
  718. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/results_supplement.json +0 -0
  719. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/run_validation.py +0 -0
  720. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/service_manager.py +0 -0
  721. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/state_fixtures.py +0 -0
  722. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/supplement_identity_numeric.py +0 -0
  723. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/appliance_validation/supplement_resolution.py +0 -0
  724. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/canvas_ladder/.gitignore +0 -0
  725. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/canvas_ladder/README.md +0 -0
  726. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/canvas_ladder/fixture/Dockerfile +0 -0
  727. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/canvas_ladder/fixture/kiosk_app.py +0 -0
  728. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/canvas_ladder/fixture/run_fixture.sh +0 -0
  729. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/canvas_ladder/results.json +0 -0
  730. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/canvas_ladder/run_canvas_ladder_qualification.py +0 -0
  731. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_ica_hdx/.gitignore +0 -0
  732. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_ica_hdx/README.md +0 -0
  733. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_ica_hdx/fixture.py +0 -0
  734. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_ica_hdx/results.json +0 -0
  735. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_ica_hdx/run_ica_hdx_qualification.py +0 -0
  736. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_ica_hdx/run_real_acceptance.py +0 -0
  737. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_ica_hdx/status_manifest.json +0 -0
  738. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_workspace/.gitignore +0 -0
  739. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_workspace/README.md +0 -0
  740. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/citrix_workspace/results.json +0 -0
  741. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/comparison_artifact/README.md +0 -0
  742. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/comparison_artifact/comparison.json +0 -0
  743. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/cosmetic_drift/COSMETIC_DRIFT.md +0 -0
  744. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/cosmetic_drift/results.json +0 -0
  745. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/cosmetic_drift/results.md +0 -0
  746. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/cosmetic_drift/sweep.py +0 -0
  747. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/DENSE_SURFACE.md +0 -0
  748. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/dense_surface.json +0 -0
  749. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/digit_flanked_probe.py +0 -0
  750. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/dom_identity_probe.py +0 -0
  751. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/record_seed1.png +0 -0
  752. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/replay_hi_res_arial_seed1.png +0 -0
  753. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/replay_native_arial_seed1.png +0 -0
  754. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/replay_serif_drift_seed1.png +0 -0
  755. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dense_surface/replay_small_dense_seed1.png +0 -0
  756. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/desktop/BENCHMARK.md +0 -0
  757. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/desktop/outcomes.png +0 -0
  758. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/desktop/results.json +0 -0
  759. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dom/BENCHMARK.md +0 -0
  760. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dom/outcome_matrix.png +0 -0
  761. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/dom/results.json +0 -0
  762. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_e2e/EFFECT_E2E.md +0 -0
  763. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_e2e/effect_e2e.png +0 -0
  764. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_e2e/ground_truth.py +0 -0
  765. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_e2e/record_service.py +0 -0
  766. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_e2e/results.json +0 -0
  767. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_e2e/run.py +0 -0
  768. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_e2e/verifiers.py +0 -0
  769. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_readback/RESULTS.md +0 -0
  770. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_readback/results.json +0 -0
  771. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effect_readback/run.py +0 -0
  772. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/LICENSE +0 -0
  773. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/VERSION +0 -0
  774. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/__init__.py +0 -0
  775. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/__main__.py +0 -0
  776. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/adapter.py +0 -0
  777. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/effect.py +0 -0
  778. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/fixtures/__init__.py +0 -0
  779. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/fixtures/mockmed.py +0 -0
  780. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/judge.py +0 -0
  781. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/leaderboard.py +0 -0
  782. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/metrics.py +0 -0
  783. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/oracle.py +0 -0
  784. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/provider.py +0 -0
  785. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/reference.py +0 -0
  786. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/runner.py +0 -0
  787. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/schema.py +0 -0
  788. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/tasks/__init__.py +0 -0
  789. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/effectbench/tasks/mockmed.py +0 -0
  790. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/reference_fault_model.py +0 -0
  791. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/results/openadapt_reference.json +0 -0
  792. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/results/reference.json +0 -0
  793. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/README.md +0 -0
  794. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/__init__.py +0 -0
  795. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/_authoring.py +0 -0
  796. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/audit.py +0 -0
  797. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/driver.py +0 -0
  798. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/frappe_tasks.py +0 -0
  799. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/manifest.json +0 -0
  800. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/mockmed_tasks.py +0 -0
  801. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/openemr_tasks.py +0 -0
  802. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/task_pack/pack.py +0 -0
  803. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/tests/test_adapter.py +0 -0
  804. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/tests/test_boundary.py +0 -0
  805. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/tests/test_classifier.py +0 -0
  806. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/tests/test_external_provider.py +0 -0
  807. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/tests/test_leaderboard.py +0 -0
  808. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/tests/test_metrics.py +0 -0
  809. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/effectbench/tests/test_reference.py +0 -0
  810. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/environments/__init__.py +0 -0
  811. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/environments/verification.json +0 -0
  812. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/environments/verify.py +0 -0
  813. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/fault_model/FAULT_MODEL.md +0 -0
  814. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/fault_model/faults.py +0 -0
  815. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/fault_model/results.json +0 -0
  816. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/fault_model/run.py +0 -0
  817. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/.gitignore +0 -0
  818. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/Containerfile.pinned +0 -0
  819. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/README.md +0 -0
  820. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/__init__.py +0 -0
  821. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/apps.json +0 -0
  822. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/bootstrap_fixture.py +0 -0
  823. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/compose.yml +0 -0
  824. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/environment.lock.json +0 -0
  825. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/frappe_lending/fixture.py +0 -0
  826. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/governed_run/README.md +0 -0
  827. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/governed_run/results.json +0 -0
  828. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/grounding_eval/.gitignore +0 -0
  829. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/grounding_eval/REPORT.md +0 -0
  830. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/grounding_eval/harness.py +0 -0
  831. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/grounding_eval/results.json +0 -0
  832. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/grounding_eval/results_sweep.json +0 -0
  833. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/hybrid/BENCHMARK.md +0 -0
  834. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/hybrid/results.json +0 -0
  835. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/hybrid/success_cost.png +0 -0
  836. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/identity_ladder/IDENTITY_LADDER.md +0 -0
  837. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/identity_ladder/identity_ladder.json +0 -0
  838. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/latency_cost.png +0 -0
  839. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/LENDING_FAULT_MODEL.md +0 -0
  840. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/README.md +0 -0
  841. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/RESOLUTION_LADDER.md +0 -0
  842. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/SWER.md +0 -0
  843. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/__init__.py +0 -0
  844. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/faults.py +0 -0
  845. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/ground_truth.py +0 -0
  846. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/resolution_ladder.py +0 -0
  847. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/resolution_ladder_results.json +0 -0
  848. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/results.json +0 -0
  849. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/run.py +0 -0
  850. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/swer.py +0 -0
  851. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/lending_fault_model/swer_results.json +0 -0
  852. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/macos_native/ax_identity_20260720.adjudication.json +0 -0
  853. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/macos_native/ax_identity_20260720.json +0 -0
  854. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/macos_native/textedit_counted_3plus1_b1b61a5_20260717.adjudication.json +0 -0
  855. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/macos_native/textedit_counted_3plus1_b1b61a5_20260717.json +0 -0
  856. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/multiapp-standard.yaml +0 -0
  857. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/multiapp_common.py +0 -0
  858. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/o2c_recon/README.md +0 -0
  859. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/o2c_recon/fixtures.py +0 -0
  860. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/o2c_recon/ground_truth.py +0 -0
  861. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/o2c_recon/results.json +0 -0
  862. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/o2c_recon/run.py +0 -0
  863. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/o2c_recon/workflow.py +0 -0
  864. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr/BENCHMARK.md +0 -0
  865. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr/latency_cost.png +0 -0
  866. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr/results.json +0 -0
  867. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_e2e/.gitignore +0 -0
  868. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_e2e/README.md +0 -0
  869. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_e2e/__main__.py +0 -0
  870. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_e2e/harness.py +0 -0
  871. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_e2e/simulation.py +0 -0
  872. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_live/README.md +0 -0
  873. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_live/docker-compose.yml +0 -0
  874. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_live/setup.sh +0 -0
  875. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_local/.gitignore +0 -0
  876. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_local/README.md +0 -0
  877. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/openemr_local/__init__.py +0 -0
  878. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity/PIXEL_IDENTITY.md +0 -0
  879. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity/crop_O0_digit_1_sibling.png +0 -0
  880. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity/crop_O0_digit_1_target.png +0 -0
  881. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity/crop_O0_digit_2_sibling.png +0 -0
  882. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity/crop_O0_digit_2_target.png +0 -0
  883. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity/crop_O0_digit_3_sibling.png +0 -0
  884. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity/crop_O0_digit_3_target.png +0 -0
  885. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity/pixel_identity.json +0 -0
  886. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity_aligned/EVIDENCE.md +0 -0
  887. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity_aligned/evidence.json +0 -0
  888. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/pixel_identity_aligned/generate.py +0 -0
  889. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/qualification_gate/README.md +0 -0
  890. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/qualification_gate/campaign.json +0 -0
  891. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/qualification_gate/fixture.py +0 -0
  892. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/qualification_gate/policy.yaml +0 -0
  893. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/qualification_gate/results.json +0 -0
  894. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/qualification_gate/run_campaign.py +0 -0
  895. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp/ACCEPTED_BATCH_82A658A.md +0 -0
  896. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp/INPUT_DELIVERY_DIAGNOSTIC.md +0 -0
  897. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp/READINESS_DIAGNOSTIC.md +0 -0
  898. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp/REJECTED_BATCH.md +0 -0
  899. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp/REJECTED_BATCH_E2C7ACF.md +0 -0
  900. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp/results.json +0 -0
  901. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp/results_82a658a_20260718.sanitized.json +0 -0
  902. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp/results_e2c7acf_20260718.json +0 -0
  903. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/.gitignore +0 -0
  904. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/README.md +0 -0
  905. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/fixture/Dockerfile +0 -0
  906. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/fixture/kiosk_app.py +0 -0
  907. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/fixture/run_fixture.sh +0 -0
  908. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/policy.yaml +0 -0
  909. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/render_presentation.py +0 -0
  910. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/results.json +0 -0
  911. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_ladder/run_rdp_ladder_qualification.py +0 -0
  912. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_multiapp/README.md +0 -0
  913. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_multiapp/campaign.json +0 -0
  914. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_multiapp/fixture/Dockerfile +0 -0
  915. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_multiapp/fixture/run_fixture.sh +0 -0
  916. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_multiapp/fixture/suite_app.py +0 -0
  917. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_multiapp/policy.yaml +0 -0
  918. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/rdp_multiapp/run_qualification.py +0 -0
  919. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/results.json +0 -0
  920. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/README.md +0 -0
  921. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/generate.py +0 -0
  922. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/player.html +0 -0
  923. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/player_data.json +0 -0
  924. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/report.json +0 -0
  925. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_000_after.png +0 -0
  926. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_000_before.png +0 -0
  927. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_001_after.png +0 -0
  928. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_001_before.png +0 -0
  929. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_002_after.png +0 -0
  930. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_002_before.png +0 -0
  931. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_003_after.png +0 -0
  932. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_003_before.png +0 -0
  933. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_004_after.png +0 -0
  934. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_004_before.png +0 -0
  935. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_005_after.png +0 -0
  936. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_005_before.png +0 -0
  937. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_006_after.png +0 -0
  938. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_006_before.png +0 -0
  939. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_007_after.png +0 -0
  940. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_007_before.png +0 -0
  941. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_008_after.png +0 -0
  942. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_008_before.png +0 -0
  943. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_009_after.png +0 -0
  944. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_009_before.png +0 -0
  945. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_010_after.png +0 -0
  946. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/run_player/runs/modal-halt-run/steps/step_010_before.png +0 -0
  947. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/safety_gallery/README.md +0 -0
  948. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/safety_gallery/gallery.html +0 -0
  949. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/safety_gallery/generate.py +0 -0
  950. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/safety_gallery/results.json +0 -0
  951. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/silent_wrong_action/SILENT_WRONG_ACTION.md +0 -0
  952. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/silent_wrong_action/results.json +0 -0
  953. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/silent_wrong_action/silent_wrong_action.png +0 -0
  954. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/structural_action/STRUCTURAL_ACTION.md +0 -0
  955. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/structural_action/structural_action.json +0 -0
  956. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/structural_action/structural_action_probe.py +0 -0
  957. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ui_readback/RESULTS.md +0 -0
  958. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ui_readback/api_harness.py +0 -0
  959. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ui_readback/gui_harness.py +0 -0
  960. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ui_readback/results.json +0 -0
  961. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/ui_readback/run.py +0 -0
  962. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vision_hardening/README.md +0 -0
  963. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vision_hardening/corpus.json +0 -0
  964. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vision_hardening/results.json +0 -0
  965. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vlm_identity/VLM_IDENTITY.md +0 -0
  966. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vlm_identity/pairs/collapse_digit_flanked_O0_AC50061_vs_AC5OO61.png +0 -0
  967. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vlm_identity/pairs/collapse_digit_flanked_O0_MG4408_vs_MG44O8.png +0 -0
  968. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vlm_identity/pairs/collapse_digit_flanked_O0_MG7008_vs_MG7O08.png +0 -0
  969. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vlm_identity/pairs/collapse_digit_flanked_O0_RT8005_vs_RT8OO5.png +0 -0
  970. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vlm_identity/pairs/drift_MG4482_dark.png +0 -0
  971. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/vlm_identity/vlm_identity.json +0 -0
  972. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/benchmark/windows_uia/results.json +0 -0
  973. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/claims.yaml +0 -0
  974. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/Dockerfile +0 -0
  975. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/UPDATE.md +0 -0
  976. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/bin/audit-log.sh +0 -0
  977. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/bin/lib-release.sh +0 -0
  978. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/bin/run-queue.sh +0 -0
  979. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/bin/safe-extract-release.py +0 -0
  980. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/bin/test-update.sh +0 -0
  981. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/bin/verify-airgap.sh +0 -0
  982. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/docker-compose.yml +0 -0
  983. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/install.sh +0 -0
  984. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/systemd/openadapt-flow-runner.path +0 -0
  985. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/deploy/on-prem/systemd/openadapt-flow-runner.service +0 -0
  986. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/ATTEST_BRIDGE.md +0 -0
  987. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/BENCHMARKS.md +0 -0
  988. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/BROWSER_RECORDING.md +0 -0
  989. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/BUSINESS_DECISIONS.md +0 -0
  990. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/BYOC_CONNECTOR.md +0 -0
  991. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/CLAIMS_AND_QUALIFICATION.md +0 -0
  992. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/DECISION_DELIVERY.md +0 -0
  993. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/ECOSYSTEM_INTEGRATION.md +0 -0
  994. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/ELIGIBILITY_API_WATERFALL.md +0 -0
  995. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/ENTERPRISE_ARCHITECTURE.md +0 -0
  996. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/EXECUTION_PROFILES.md +0 -0
  997. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/HOSTED.md +0 -0
  998. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/PROCESS_CONTRACT.md +0 -0
  999. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/PRODUCT_STATUS.md +0 -0
  1000. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/PUSH_JSON.md +0 -0
  1001. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/RECEIPTS.md +0 -0
  1002. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/REMOTE_FRAME_CONTRACT.md +0 -0
  1003. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/SANITIZED_ARTIFACTS.md +0 -0
  1004. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/SECRETS_AND_EVIDENCE.md +0 -0
  1005. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/VERIFICATION.md +0 -0
  1006. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/VISUALIZE.md +0 -0
  1007. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/console/run-halted.png +0 -0
  1008. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/console/run-paused.png +0 -0
  1009. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/console/runs.png +0 -0
  1010. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/console/skills.png +0 -0
  1011. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/console/workflow-detail-cert.png +0 -0
  1012. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/console/workflow-diff.png +0 -0
  1013. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/console/workflows.png +0 -0
  1014. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/design/GOVERNED_RUN_AUTHORIZATION.md +0 -0
  1015. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/design/PROCESS_CONTRACT_V1.md +0 -0
  1016. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/desktop/CITRIX_PIXEL.md +0 -0
  1017. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/desktop/LIMITS.md +0 -0
  1018. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/desktop/LINUX_NATIVE.md +0 -0
  1019. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/desktop/MACOS_NATIVE.md +0 -0
  1020. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/desktop/PHASE1.md +0 -0
  1021. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/desktop_windows_runbook.md +0 -0
  1022. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/phi_at_rest.md +0 -0
  1023. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/program-workbench.png +0 -0
  1024. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/REPORT.md +0 -0
  1025. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/report.json +0 -0
  1026. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_000_after.png +0 -0
  1027. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_000_before.png +0 -0
  1028. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_001_after.png +0 -0
  1029. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_001_before.png +0 -0
  1030. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_002_after.png +0 -0
  1031. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_002_before.png +0 -0
  1032. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_003_after.png +0 -0
  1033. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_003_before.png +0 -0
  1034. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_004_after.png +0 -0
  1035. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_004_before.png +0 -0
  1036. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_005_after.png +0 -0
  1037. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_005_before.png +0 -0
  1038. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_006_after.png +0 -0
  1039. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_006_before.png +0 -0
  1040. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_007_after.png +0 -0
  1041. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_007_before.png +0 -0
  1042. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_008_after.png +0 -0
  1043. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_008_before.png +0 -0
  1044. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_009_after.png +0 -0
  1045. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_009_before.png +0 -0
  1046. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_010_after.png +0 -0
  1047. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/baseline-run/steps/step_010_before.png +0 -0
  1048. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/demo-proof.png +0 -0
  1049. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/templates/step_000.png +0 -0
  1050. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/templates/step_002.png +0 -0
  1051. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/templates/step_004.png +0 -0
  1052. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/templates/step_005.png +0 -0
  1053. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/templates/step_006.png +0 -0
  1054. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/templates/step_007.png +0 -0
  1055. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/templates/step_008.png +0 -0
  1056. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/templates/step_010.png +0 -0
  1057. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/healed-bundle/workflow.json +0 -0
  1058. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/events.jsonl +0 -0
  1059. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0000_after.png +0 -0
  1060. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0000_before.png +0 -0
  1061. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0001_after.png +0 -0
  1062. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0001_before.png +0 -0
  1063. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0002_after.png +0 -0
  1064. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0002_before.png +0 -0
  1065. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0003_after.png +0 -0
  1066. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0003_before.png +0 -0
  1067. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0004_after.png +0 -0
  1068. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0004_before.png +0 -0
  1069. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0005_after.png +0 -0
  1070. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0005_before.png +0 -0
  1071. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0006_after.png +0 -0
  1072. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0006_before.png +0 -0
  1073. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0007_after.png +0 -0
  1074. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0007_before.png +0 -0
  1075. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0008_after.png +0 -0
  1076. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0008_before.png +0 -0
  1077. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0009_after.png +0 -0
  1078. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0009_before.png +0 -0
  1079. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0010_after.png +0 -0
  1080. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/frames/0010_before.png +0 -0
  1081. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/recording/meta.json +0 -0
  1082. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/REPORT.md +0 -0
  1083. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_000/heal.json +0 -0
  1084. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_000/screen.png +0 -0
  1085. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_000/template.png +0 -0
  1086. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_002/heal.json +0 -0
  1087. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_002/screen.png +0 -0
  1088. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_002/template.png +0 -0
  1089. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_004/heal.json +0 -0
  1090. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_004/screen.png +0 -0
  1091. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_004/template.png +0 -0
  1092. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_005/heal.json +0 -0
  1093. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_005/screen.png +0 -0
  1094. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_005/template.png +0 -0
  1095. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_006/heal.json +0 -0
  1096. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_006/screen.png +0 -0
  1097. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_006/template.png +0 -0
  1098. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_007/heal.json +0 -0
  1099. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_007/screen.png +0 -0
  1100. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_007/template.png +0 -0
  1101. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_008/heal.json +0 -0
  1102. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_008/screen.png +0 -0
  1103. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_008/template.png +0 -0
  1104. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_010/heal.json +0 -0
  1105. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_010/screen.png +0 -0
  1106. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/heals/step_010/template.png +0 -0
  1107. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/report.json +0 -0
  1108. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_000_after.png +0 -0
  1109. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_000_before.png +0 -0
  1110. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_001_after.png +0 -0
  1111. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_001_before.png +0 -0
  1112. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_002_after.png +0 -0
  1113. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_002_before.png +0 -0
  1114. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_003_after.png +0 -0
  1115. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_003_before.png +0 -0
  1116. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_004_after.png +0 -0
  1117. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_004_before.png +0 -0
  1118. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_005_after.png +0 -0
  1119. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_005_before.png +0 -0
  1120. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_006_after.png +0 -0
  1121. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_006_before.png +0 -0
  1122. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_007_after.png +0 -0
  1123. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_007_before.png +0 -0
  1124. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_008_after.png +0 -0
  1125. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_008_before.png +0 -0
  1126. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_009_after.png +0 -0
  1127. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_009_before.png +0 -0
  1128. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_010_after.png +0 -0
  1129. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase/theme-drift-run/steps/step_010_before.png +0 -0
  1130. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-compose/program-graph.html +0 -0
  1131. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-compose/program-graph.png +0 -0
  1132. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-encounter-loop/README.md +0 -0
  1133. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-encounter-loop/body/manifest.json +0 -0
  1134. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-encounter-loop/body/workflow.json +0 -0
  1135. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-encounter-loop/bundle/manifest.json +0 -0
  1136. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-encounter-loop/bundle/workflow.json +0 -0
  1137. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-encounter-loop/worklist.csv +0 -0
  1138. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/README.md +0 -0
  1139. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/manifest.json +0 -0
  1140. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_000.png +0 -0
  1141. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_000_expect.png +0 -0
  1142. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_001_expect.png +0 -0
  1143. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_002.png +0 -0
  1144. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_002_expect.png +0 -0
  1145. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_003_expect.png +0 -0
  1146. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_004.png +0 -0
  1147. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_004_expect.png +0 -0
  1148. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_005.png +0 -0
  1149. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_005_expect.png +0 -0
  1150. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_006_expect.png +0 -0
  1151. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_007_expect.png +0 -0
  1152. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_008.png +0 -0
  1153. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_008_expect.png +0 -0
  1154. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_013.png +0 -0
  1155. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_013_expect.png +0 -0
  1156. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_014.png +0 -0
  1157. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_014_expect.png +0 -0
  1158. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_015.png +0 -0
  1159. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_015_expect.png +0 -0
  1160. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_017.png +0 -0
  1161. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/templates/step_017_expect.png +0 -0
  1162. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/bundle/workflow.json +0 -0
  1163. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-loop/worklist.csv +0 -0
  1164. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/FINDINGS.md +0 -0
  1165. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/README.md +0 -0
  1166. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_000.png +0 -0
  1167. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_000_expect.png +0 -0
  1168. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_001_expect.png +0 -0
  1169. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_002.png +0 -0
  1170. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_002_expect.png +0 -0
  1171. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_003_expect.png +0 -0
  1172. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_004.png +0 -0
  1173. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_004_expect.png +0 -0
  1174. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_005.png +0 -0
  1175. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_005_expect.png +0 -0
  1176. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_006_expect.png +0 -0
  1177. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_007_expect.png +0 -0
  1178. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_008.png +0 -0
  1179. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_008_expect.png +0 -0
  1180. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_013.png +0 -0
  1181. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_013_expect.png +0 -0
  1182. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_014.png +0 -0
  1183. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_014_expect.png +0 -0
  1184. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_015.png +0 -0
  1185. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_015_expect.png +0 -0
  1186. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_017.png +0 -0
  1187. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/templates/step_017_expect.png +0 -0
  1188. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/workflow.json +0 -0
  1189. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/bundle/workflow.py +0 -0
  1190. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/failure-evidence/calendar-region-recorded.png +0 -0
  1191. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/failure-evidence/calendar-region-replay.png +0 -0
  1192. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/program-graph.html +0 -0
  1193. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/program-graph.json +0 -0
  1194. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/program-graph.png +0 -0
  1195. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/events.jsonl +0 -0
  1196. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0000_after.png +0 -0
  1197. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0000_before.png +0 -0
  1198. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0001_after.png +0 -0
  1199. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0001_before.png +0 -0
  1200. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0002_after.png +0 -0
  1201. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0002_before.png +0 -0
  1202. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0003_after.png +0 -0
  1203. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0003_before.png +0 -0
  1204. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0004_after.png +0 -0
  1205. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0004_before.png +0 -0
  1206. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0005_after.png +0 -0
  1207. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0005_before.png +0 -0
  1208. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0006_after.png +0 -0
  1209. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0006_before.png +0 -0
  1210. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0007_after.png +0 -0
  1211. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0007_before.png +0 -0
  1212. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0008_after.png +0 -0
  1213. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0008_before.png +0 -0
  1214. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0009_after.png +0 -0
  1215. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0009_before.png +0 -0
  1216. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0010_after.png +0 -0
  1217. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0010_before.png +0 -0
  1218. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0011_after.png +0 -0
  1219. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0011_before.png +0 -0
  1220. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0012_after.png +0 -0
  1221. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0012_before.png +0 -0
  1222. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0013_after.png +0 -0
  1223. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0013_before.png +0 -0
  1224. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0014_after.png +0 -0
  1225. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0014_before.png +0 -0
  1226. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0015_after.png +0 -0
  1227. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0015_before.png +0 -0
  1228. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0016_after.png +0 -0
  1229. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0016_before.png +0 -0
  1230. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0017_after.png +0 -0
  1231. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/frames/0017_before.png +0 -0
  1232. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/recording/meta.json +0 -0
  1233. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/REPORT.md +0 -0
  1234. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/final.png +0 -0
  1235. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/heals/step_013/heal.json +0 -0
  1236. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/heals/step_013/screen.png +0 -0
  1237. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/heals/step_013/template.png +0 -0
  1238. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/report.json +0 -0
  1239. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_000_after.png +0 -0
  1240. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_000_before.png +0 -0
  1241. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_001_after.png +0 -0
  1242. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_001_before.png +0 -0
  1243. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_002_after.png +0 -0
  1244. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_002_before.png +0 -0
  1245. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_003_after.png +0 -0
  1246. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_003_before.png +0 -0
  1247. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_004_after.png +0 -0
  1248. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_004_before.png +0 -0
  1249. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_005_after.png +0 -0
  1250. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_005_before.png +0 -0
  1251. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_006_after.png +0 -0
  1252. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_006_before.png +0 -0
  1253. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_007_after.png +0 -0
  1254. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_007_before.png +0 -0
  1255. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_008_after.png +0 -0
  1256. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_008_before.png +0 -0
  1257. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_009_after.png +0 -0
  1258. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_009_before.png +0 -0
  1259. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_010_after.png +0 -0
  1260. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_010_before.png +0 -0
  1261. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_011_after.png +0 -0
  1262. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_011_before.png +0 -0
  1263. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_012_after.png +0 -0
  1264. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_012_before.png +0 -0
  1265. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_013_after.png +0 -0
  1266. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_013_before.png +0 -0
  1267. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_014_after.png +0 -0
  1268. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_014_before.png +0 -0
  1269. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_015_after.png +0 -0
  1270. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_015_before.png +0 -0
  1271. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_016_after.png +0 -0
  1272. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_016_before.png +0 -0
  1273. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_017_after.png +0 -0
  1274. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-1/steps/step_017_before.png +0 -0
  1275. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-2/REPORT.md +0 -0
  1276. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-2/final.png +0 -0
  1277. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-2/report.json +0 -0
  1278. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-3/REPORT.md +0 -0
  1279. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-3/final.png +0 -0
  1280. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-3/report.json +0 -0
  1281. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-4/REPORT.md +0 -0
  1282. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-4/final.png +0 -0
  1283. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-4/report.json +0 -0
  1284. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-5/REPORT.md +0 -0
  1285. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-5/final.png +0 -0
  1286. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/run-5/report.json +0 -0
  1287. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-openemr/runs/summary.json +0 -0
  1288. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-process/program-graph.html +0 -0
  1289. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/showcase-process/program-graph.png +0 -0
  1290. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/validation/SILENT_WRONG_ACTION_RATE.md +0 -0
  1291. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/validation/VALIDATION.md +0 -0
  1292. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/docs/verification.json +0 -0
  1293. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/.gitignore +0 -0
  1294. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/app.py +0 -0
  1295. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/build.py +0 -0
  1296. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/demo.gif +0 -0
  1297. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/demo.sh +0 -0
  1298. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/demo.tape +0 -0
  1299. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/effect_contract.yaml +0 -0
  1300. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/halt.gif +0 -0
  1301. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/halt.tape +0 -0
  1302. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/examples/claude-code-demo/policy.yaml +0 -0
  1303. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/action_evidence.py +0 -0
  1304. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/adapters/__init__.py +0 -0
  1305. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/adapters/capture.py +0 -0
  1306. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/adapters/desktop_recorder.py +0 -0
  1307. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/admitted_composition.py +0 -0
  1308. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/approval_mode/__init__.py +0 -0
  1309. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/approval_mode/form_state.py +0 -0
  1310. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/approval_mode/post.py +0 -0
  1311. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/approval_mode/requirements.py +0 -0
  1312. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/approval_mode/switch.py +0 -0
  1313. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/attest_bridge.py +0 -0
  1314. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/backends/__init__.py +0 -0
  1315. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/backends/citrix_workspace.py +0 -0
  1316. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/backends/factory.py +0 -0
  1317. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/backends/remote_display.py +0 -0
  1318. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/backends/win32_window_client.py +0 -0
  1319. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/backends/win_agent/run_agent.bat +0 -0
  1320. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/backends/win_agent/tls.py +0 -0
  1321. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/backends/windows_backend.py +0 -0
  1322. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/bench.py +0 -0
  1323. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/__init__.py +0 -0
  1324. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/agent_baseline.py +0 -0
  1325. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/chart_fonts.py +0 -0
  1326. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/dom_arm.py +0 -0
  1327. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/README.md +0 -0
  1328. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/__init__.py +0 -0
  1329. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/metrics.py +0 -0
  1330. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/oracle.py +0 -0
  1331. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/README.md +0 -0
  1332. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/__init__.py +0 -0
  1333. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/__main__.py +0 -0
  1334. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/arms.py +0 -0
  1335. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/baselines.py +0 -0
  1336. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/compound.py +0 -0
  1337. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/harness.py +0 -0
  1338. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/reference_tasks.py +0 -0
  1339. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/runner/substrate.py +0 -0
  1340. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/effectbench/schema.py +0 -0
  1341. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/frappe_lending.py +0 -0
  1342. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/hybrid_benchmark.py +0 -0
  1343. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/openemr_benchmark.py +0 -0
  1344. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/openemr_local.py +0 -0
  1345. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/reliability.py +0 -0
  1346. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/run_benchmark.py +0 -0
  1347. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/silent_wrong_action.py +0 -0
  1348. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/benchmark/verify.py +0 -0
  1349. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/bundle_sealing.py +0 -0
  1350. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/bundle_validation.py +0 -0
  1351. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/cli_admit.py +0 -0
  1352. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/cli_compose.py +0 -0
  1353. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/cli_config.py +0 -0
  1354. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/cli_hints.py +0 -0
  1355. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/__init__.py +0 -0
  1356. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/annotate.py +0 -0
  1357. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/binding_admission.py +0 -0
  1358. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/codegen.py +0 -0
  1359. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/compose_authoring.py +0 -0
  1360. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/disambiguation.py +0 -0
  1361. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/induction.py +0 -0
  1362. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/loop_authoring.py +0 -0
  1363. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/param_confirm.py +0 -0
  1364. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/qualification_pins.py +0 -0
  1365. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/compiler/qualification_proposer.py +0 -0
  1366. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/composition.py +0 -0
  1367. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/connector/__init__.py +0 -0
  1368. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/connector/client.py +0 -0
  1369. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/connector/config.py +0 -0
  1370. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/connector/daemon.py +0 -0
  1371. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/connector/executor.py +0 -0
  1372. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/connector/protocol.py +0 -0
  1373. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/connector/storage.py +0 -0
  1374. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/__init__.py +0 -0
  1375. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/actions.py +0 -0
  1376. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/decision_relay.py +0 -0
  1377. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/decision_supervisor.py +0 -0
  1378. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/json_artifacts.py +0 -0
  1379. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/server.py +0 -0
  1380. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/static/console.css +0 -0
  1381. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/static/console.js +0 -0
  1382. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/console/static/index.html +0 -0
  1383. {openadapt_flow-2.0.0/openadapt_flow → openadapt_flow-2.2.0/openadapt_flow/contracts}/py.typed +0 -0
  1384. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/crypto.py +0 -0
  1385. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/decision_delivery.py +0 -0
  1386. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/demo_driver.py +0 -0
  1387. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/desktop_record.py +0 -0
  1388. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/eligibility/__init__.py +0 -0
  1389. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/eligibility/artifact.py +0 -0
  1390. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/eligibility/client.py +0 -0
  1391. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/eligibility/payer_routes.yaml +0 -0
  1392. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/eligibility/waterfall.py +0 -0
  1393. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/emit/__init__.py +0 -0
  1394. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/emit/l1_artifact.py +0 -0
  1395. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/execute/__init__.py +0 -0
  1396. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/execute/keys.py +0 -0
  1397. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/execute/models.py +0 -0
  1398. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/execute/registry.py +0 -0
  1399. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/execution_profiles.py +0 -0
  1400. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/failure_signals.py +0 -0
  1401. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/hosted.py +0 -0
  1402. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/identity_signals.py +0 -0
  1403. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/instrument/__init__.py +0 -0
  1404. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/instrument/competitor_drift.py +0 -0
  1405. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/interop/business_decision_supervisor.py +0 -0
  1406. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/interop/decision_relay_transport.py +0 -0
  1407. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/judgment_cases.py +0 -0
  1408. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/__init__.py +0 -0
  1409. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/clustering.py +0 -0
  1410. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/gate.py +0 -0
  1411. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/halt_loop.py +0 -0
  1412. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/interpreter.py +0 -0
  1413. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/library.py +0 -0
  1414. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/loop.py +0 -0
  1415. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/synth_stream.py +0 -0
  1416. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/teach.py +0 -0
  1417. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/learning/trace.py +0 -0
  1418. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockloan/__init__.py +0 -0
  1419. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockloan/fault_server.py +0 -0
  1420. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockloan/server.py +0 -0
  1421. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockloan/static/app.js +0 -0
  1422. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockloan/static/index.html +0 -0
  1423. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockloan/static/styles.css +0 -0
  1424. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/__init__.py +0 -0
  1425. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/chart_pages.py +0 -0
  1426. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/fault_server.py +0 -0
  1427. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/server.py +0 -0
  1428. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/static/app.js +0 -0
  1429. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/static/index.html +0 -0
  1430. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/static/styles.css +0 -0
  1431. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/static/widgets.html +0 -0
  1432. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/mockmed/static/widgets.js +0 -0
  1433. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/network_scope.py +0 -0
  1434. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/plain_outcome.py +0 -0
  1435. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/policies/clinical-write.yaml +0 -0
  1436. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/policies/permissive.yaml +0 -0
  1437. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/policy_packs.py +0 -0
  1438. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/privacy.py +0 -0
  1439. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/private_file.py +0 -0
  1440. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/production_qualification.py +0 -0
  1441. /openadapt_flow-2.0.0/scripts/__init__.py → /openadapt_flow-2.2.0/openadapt_flow/py.typed +0 -0
  1442. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_admission.py +0 -0
  1443. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_admission_v2.py +0 -0
  1444. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_admission_v4.py +0 -0
  1445. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_campaign_authority.py +0 -0
  1446. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_campaign_permit.py +0 -0
  1447. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_dev_signer.py +0 -0
  1448. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_drills.py +0 -0
  1449. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_environment.py +0 -0
  1450. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_faults.py +0 -0
  1451. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_identity_evidence.py +0 -0
  1452. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_oracle_gate.py +0 -0
  1453. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_proposal.py +0 -0
  1454. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualification_web_session.py +0 -0
  1455. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/qualified_business_decisions.py +0 -0
  1456. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/record_check_binding.py +0 -0
  1457. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/recorder.py +0 -0
  1458. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/release_admission.py +0 -0
  1459. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/remote_frame_contract.py +0 -0
  1460. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/repair/__init__.py +0 -0
  1461. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/repair/cloud_review.py +0 -0
  1462. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/repair/invariants.py +0 -0
  1463. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/repair/registration.py +0 -0
  1464. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/report.py +0 -0
  1465. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/reward/__init__.py +0 -0
  1466. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/reward/serve.py +0 -0
  1467. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/risk.py +0 -0
  1468. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/run_gate.py +0 -0
  1469. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/__init__.py +0 -0
  1470. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/business_decision_service.py +0 -0
  1471. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/commands.py +0 -0
  1472. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/config.py +0 -0
  1473. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/dispatch_envelope.py +0 -0
  1474. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/evidence.py +0 -0
  1475. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/flow_release_receipt.py +0 -0
  1476. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/hosted_adapter.py +0 -0
  1477. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/inputs.py +0 -0
  1478. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/lease.py +0 -0
  1479. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/outbox.py +0 -0
  1480. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/product_release.py +0 -0
  1481. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/protocol.py +0 -0
  1482. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runner/verify.py +0 -0
  1483. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/__init__.py +0 -0
  1484. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/actuators/__init__.py +0 -0
  1485. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/actuators/api.py +0 -0
  1486. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/authorization.py +0 -0
  1487. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/composition.py +0 -0
  1488. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/__init__.py +0 -0
  1489. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/approval.py +0 -0
  1490. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/authority.py +0 -0
  1491. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/business_decision.py +0 -0
  1492. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/checkpoint.py +0 -0
  1493. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/continuation.py +0 -0
  1494. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/controller.py +0 -0
  1495. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/program_checkpoint.py +0 -0
  1496. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/durable/resume.py +0 -0
  1497. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/_common.py +0 -0
  1498. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/adapter.py +0 -0
  1499. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/auth.py +0 -0
  1500. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/compensation.py +0 -0
  1501. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/document_arrival.py +0 -0
  1502. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/document_hash.py +0 -0
  1503. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/email_delivery.py +0 -0
  1504. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/file_arrival.py +0 -0
  1505. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/graphql.py +0 -0
  1506. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/rest.py +0 -0
  1507. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/effects/sql.py +0 -0
  1508. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/grounder.py +0 -0
  1509. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/heal.py +0 -0
  1510. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/healing/__init__.py +0 -0
  1511. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/healing/governance.py +0 -0
  1512. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/healing/patch.py +0 -0
  1513. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/healing/perturbation.py +0 -0
  1514. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/healing/pipeline.py +0 -0
  1515. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/identity_vlm.py +0 -0
  1516. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/program_predicates.py +0 -0
  1517. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/remote_vlm.py +0 -0
  1518. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime/resolver.py +0 -0
  1519. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/runtime_validation.py +0 -0
  1520. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/sanitized_artifact.py +0 -0
  1521. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/scaffold_verifier.py +0 -0
  1522. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/__init__.py +0 -0
  1523. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/vlm_service/__init__.py +0 -0
  1524. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/vlm_service/__main__.py +0 -0
  1525. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/vlm_service/app.py +0 -0
  1526. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/vlm_service/backends.py +0 -0
  1527. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/vlm_service/batching.py +0 -0
  1528. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/vlm_service/config.py +0 -0
  1529. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/vlm_service/prompts.py +0 -0
  1530. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/services/vlm_service/schemas.py +0 -0
  1531. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/submit_binding.py +0 -0
  1532. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/surface_selection.py +0 -0
  1533. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/terminal_verification_v2.py +0 -0
  1534. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/transaction.py +0 -0
  1535. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/traversal.py +0 -0
  1536. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/__init__.py +0 -0
  1537. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/governed_run.py +0 -0
  1538. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/hardening/__init__.py +0 -0
  1539. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/hardening/__main__.py +0 -0
  1540. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/hardening/corpus.py +0 -0
  1541. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/hardening/fixtures.py +0 -0
  1542. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/hardening/harness.py +0 -0
  1543. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/hardening/perturbations.py +0 -0
  1544. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/identity_ladder.py +0 -0
  1545. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/identity_rates.py +0 -0
  1546. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/pixel_identity_aligned.py +0 -0
  1547. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/pixel_identity_probe.py +0 -0
  1548. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/structural_action.py +0 -0
  1549. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/validation/vlm_identity_probe.py +0 -0
  1550. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/vision/hashing.py +0 -0
  1551. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/__init__.py +0 -0
  1552. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/admitted_composition.py +0 -0
  1553. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/builder.py +0 -0
  1554. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/composition.py +0 -0
  1555. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/projection.py +0 -0
  1556. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/render.py +0 -0
  1557. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/spec.py +0 -0
  1558. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/static/program_graph.css +0 -0
  1559. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/visualize/static/program_graph.js +0 -0
  1560. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/openadapt_flow/volatility.py +0 -0
  1561. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/Makefile +0 -0
  1562. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/README.md +0 -0
  1563. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/REVIEW_ADVERSARIAL.md +0 -0
  1564. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/REVIEW_ADVERSARIAL_2.md +0 -0
  1565. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/check_artifacts.py +0 -0
  1566. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/main.tex +0 -0
  1567. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/make_arxiv_tarball.sh +0 -0
  1568. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/references.bib +0 -0
  1569. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/01_introduction.tex +0 -0
  1570. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/01_related_work.tex +0 -0
  1571. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/02_system.tex +0 -0
  1572. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/03_governance.tex +0 -0
  1573. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/04_methodology.tex +0 -0
  1574. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/05_results.tex +0 -0
  1575. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/06_limitations.tex +0 -0
  1576. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/07_reproducibility.tex +0 -0
  1577. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/sections/08_conclusion.tex +0 -0
  1578. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/workshop/main.tex +0 -0
  1579. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/paper/workshop/references.bib +0 -0
  1580. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/process-contract-graph-v0.json +0 -0
  1581. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/process-contract-v1.json +0 -0
  1582. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/program-graph-v1.json +0 -0
  1583. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/program-graph-v2.json +0 -0
  1584. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/public-demo-evidence-v1.json +0 -0
  1585. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/push-result-v1.json +0 -0
  1586. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/runtime-validation-attestation-v1.json +0 -0
  1587. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/runtime-validation-attestation-v2.json +0 -0
  1588. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/runtime-validation-attestation-v3.json +0 -0
  1589. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/sanitization-ingest-v1.json +0 -0
  1590. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/sanitized-artifact-approval-v1.json +0 -0
  1591. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/schemas/sanitized-artifact-manifest-v1.json +0 -0
  1592. {openadapt_flow-2.0.0/tests/e2e → openadapt_flow-2.2.0/scripts}/__init__.py +0 -0
  1593. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/build_showcase_encounter_loop_bundle.py +0 -0
  1594. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/build_showcase_loop_bundle.py +0 -0
  1595. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/check_bundle_phi.py +0 -0
  1596. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/check_consistency.py +0 -0
  1597. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/check_release_ci.py +0 -0
  1598. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/check_release_consistency.py +0 -0
  1599. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/check_release_health.py +0 -0
  1600. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_daas/.gitignore +0 -0
  1601. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_daas/00_preflight.sh +0 -0
  1602. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_daas/10_prepare_azure_identity.sh +0 -0
  1603. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_daas/20_prepare_network.sh +0 -0
  1604. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_daas/30_fire_trial_gate.sh +0 -0
  1605. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_daas/90_teardown.sh +0 -0
  1606. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_daas/README.md +0 -0
  1607. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_daas/lib.sh +0 -0
  1608. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_lab/20_install_ddc.ps1 +0 -0
  1609. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_lab/30_install_vda.ps1 +0 -0
  1610. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_lab/README.md +0 -0
  1611. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_lab/lifecycle.sh +0 -0
  1612. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/citrix_lab/provision_citrix_lab.sh +0 -0
  1613. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/classify_ci_scope.py +0 -0
  1614. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/demo_media.py +0 -0
  1615. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/desktop/patient_notes.ps1 +0 -0
  1616. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/desktop/pn_db.py +0 -0
  1617. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/desktop/session1_launch.py +0 -0
  1618. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/desktop/uia_arm.py +0 -0
  1619. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/export_process_contract_v1_schema.py +0 -0
  1620. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/fixtures/linux_atspi_qualification_app.py +0 -0
  1621. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/frappe_lending_demo.py +0 -0
  1622. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/generate_terminal_verification_v2_vectors.py +0 -0
  1623. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/install_playwright_browser.py +0 -0
  1624. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/make_demo_proof_image.py +0 -0
  1625. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/openemr_demo.py +0 -0
  1626. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/openemr_param_depth.py +0 -0
  1627. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/qualify_linux_atspi.py +0 -0
  1628. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/qualify_macos_ax_identity.py +0 -0
  1629. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/qualify_macos_ax_release.py +0 -0
  1630. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/qualify_macos_textedit.py +0 -0
  1631. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/quickstart_lifecycle.py +0 -0
  1632. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/reconcile_parallels_recovery.py +0 -0
  1633. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/sanitize_rdp_qualification_report.py +0 -0
  1634. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/social_card.py +0 -0
  1635. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/validate_claims.py +0 -0
  1636. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/scripts/verify_release_publication.py +0 -0
  1637. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/source-policy.public.json +0 -0
  1638. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/__init__.py +0 -0
  1639. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/_approval_mode_support.py +0 -0
  1640. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/_attached_chromium.py +0 -0
  1641. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/_fhir_fake.py +0 -0
  1642. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/conftest.py +0 -0
  1643. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_canvas_nodom_ladder_e2e.py +0 -0
  1644. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_chaos.py +0 -0
  1645. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_citrix_pixel_e2e.py +0 -0
  1646. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_cosmetic_drift.py +0 -0
  1647. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_docker_rdp_multiapp_vision_e2e.py +0 -0
  1648. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_docker_rdp_vision_ladder_e2e.py +0 -0
  1649. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_fault_model.py +0 -0
  1650. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_free_path_e2e.py +0 -0
  1651. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_lending_fault_model.py +0 -0
  1652. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_parallels_desktop_e2e.py +0 -0
  1653. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_parallels_rdp_e2e.py +0 -0
  1654. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_perturbation.py +0 -0
  1655. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_primitives.py +0 -0
  1656. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_record_compile_replay.py +0 -0
  1657. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_region_stable_theme_regression.py +0 -0
  1658. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_structural_action.py +0 -0
  1659. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/test_video_capture.py +0 -0
  1660. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/tutorial_golden.py +0 -0
  1661. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/e2e/validation_utils.py +0 -0
  1662. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/example_verifier_plugin.py +0 -0
  1663. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/flow_v1_34_0_terminal_verified.json +0 -0
  1664. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/remote-safe-synthetic-flow-release-verification.json +0 -0
  1665. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/runtime-validation-canonical-vector.json +0 -0
  1666. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/terminal_verification_v2_delivery_consumer_vector.json +0 -0
  1667. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/terminal_verification_v2_delivery_vector.json +0 -0
  1668. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/terminal_verification_v2_terminal_consumer_vectors.json +0 -0
  1669. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/terminal_verification_v2_terminal_vectors.json +0 -0
  1670. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/theme-region-stable-overhalt-v1.16.1.json +0 -0
  1671. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/v4-qualification/decision-receipt.json +0 -0
  1672. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/v4-qualification/qualification-admission.json +0 -0
  1673. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/v4-qualification/revocation-state.json +0 -0
  1674. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/fixtures/v4-qualification/signer-registry.json +0 -0
  1675. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/golden/tutorial_run.json +0 -0
  1676. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/repo_tree_guard.py +0 -0
  1677. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_action_evidence.py +0 -0
  1678. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_admit_status.py +0 -0
  1679. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_admitted_composition_authoring.py +0 -0
  1680. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_annotate.py +0 -0
  1681. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_ap_invoice_benchmark.py +0 -0
  1682. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_approval_mode_adversarial.py +0 -0
  1683. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_approval_mode_cli.py +0 -0
  1684. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_approval_mode_gate.py +0 -0
  1685. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_approval_mode_item_approval.py +0 -0
  1686. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_approval_mode_post.py +0 -0
  1687. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_approval_mode_replayer.py +0 -0
  1688. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_approval_mode_requirements.py +0 -0
  1689. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_approval_mode_switch.py +0 -0
  1690. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_attached_browser_run.py +0 -0
  1691. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_attended_actions.py +0 -0
  1692. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_attended_executor_fence_v13.py +0 -0
  1693. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_attended_qualification_environment.py +0 -0
  1694. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_attended_source_identity_v13.py +0 -0
  1695. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_attest_bridge.py +0 -0
  1696. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_backend_capability_matrix.py +0 -0
  1697. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_backend_factory.py +0 -0
  1698. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_benchmark.py +0 -0
  1699. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_benchmark_environments.py +0 -0
  1700. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_browser_setup.py +0 -0
  1701. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_bundle_schema_v2.py +0 -0
  1702. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_business_decision.py +0 -0
  1703. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_business_decision_service.py +0 -0
  1704. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_byo_grounding_model.py +0 -0
  1705. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_canvas_ladder_backend.py +0 -0
  1706. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_capture_adapter.py +0 -0
  1707. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_certified_binding_admission.py +0 -0
  1708. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_channel_disjoint_oracle.py +0 -0
  1709. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_chart_fonts.py +0 -0
  1710. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_citrix_real_acceptance.py +0 -0
  1711. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_citrix_workspace_backend.py +0 -0
  1712. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_citrix_workspace_qualification.py +0 -0
  1713. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_compose.py +0 -0
  1714. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_config.py +0 -0
  1715. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_deployment.py +0 -0
  1716. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_hints.py +0 -0
  1717. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_induce.py +0 -0
  1718. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_new_commands.py +0 -0
  1719. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_seal.py +0 -0
  1720. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_tutorial_break_it.py +0 -0
  1721. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cli_tutorial_next_steps.py +0 -0
  1722. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_cloud_seal.py +0 -0
  1723. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_comparison_artifact.py +0 -0
  1724. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_competitor_drift_instrument.py +0 -0
  1725. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_compose_authoring.py +0 -0
  1726. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_compose_runtime.py +0 -0
  1727. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_confirmation_opener.py +0 -0
  1728. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_connector.py +0 -0
  1729. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_consistency.py +0 -0
  1730. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_continuous_learning.py +0 -0
  1731. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_decision_delivery.py +0 -0
  1732. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_decision_relay.py +0 -0
  1733. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_decision_supervisor.py +0 -0
  1734. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_dense_surface.py +0 -0
  1735. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_dependency_security.py +0 -0
  1736. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_desktop_record.py +0 -0
  1737. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_desktop_recorder.py +0 -0
  1738. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_disambiguation.py +0 -0
  1739. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_dom_arm.py +0 -0
  1740. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_dom_form_field_identity.py +0 -0
  1741. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_dom_identity.py +0 -0
  1742. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_durable_authority_edges_v13.py +0 -0
  1743. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_durable_authority_v13.py +0 -0
  1744. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_durable_program.py +0 -0
  1745. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_durable_program_history_v13.py +0 -0
  1746. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_durable_resume_state_binding.py +0 -0
  1747. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_durable_runtime.py +0 -0
  1748. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_coverage_lint.py +0 -0
  1749. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_document_arrival.py +0 -0
  1750. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_e2e_harness.py +0 -0
  1751. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_email_delivery.py +0 -0
  1752. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_fault_matrix.py +0 -0
  1753. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_fhir.py +0 -0
  1754. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_fhir_live_openemr.py +0 -0
  1755. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_file_arrival.py +0 -0
  1756. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_graphql.py +0 -0
  1757. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_kit_config.py +0 -0
  1758. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_readback_study.py +0 -0
  1759. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_reconciliation.py +0 -0
  1760. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_record_written_partial.py +0 -0
  1761. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_sql.py +0 -0
  1762. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_verifier.py +0 -0
  1763. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_verifier_candidates.py +0 -0
  1764. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effect_verifier_transport.py +0 -0
  1765. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effectbench.py +0 -0
  1766. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effectbench_runner.py +0 -0
  1767. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effectbench_standalone.py +0 -0
  1768. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_effectbench_task_pack.py +0 -0
  1769. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_egress_guard.py +0 -0
  1770. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_eligibility_api.py +0 -0
  1771. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_eligibility_artifact.py +0 -0
  1772. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_eligibility_live_stedi.py +0 -0
  1773. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_eligibility_waterfall.py +0 -0
  1774. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_emit.py +0 -0
  1775. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_encryption_at_rest.py +0 -0
  1776. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_execution_profiles.py +0 -0
  1777. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_explain_transaction.py +0 -0
  1778. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_field_label_params.py +0 -0
  1779. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_flow_release_receipt.py +0 -0
  1780. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_frappe_lending_benchmark.py +0 -0
  1781. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_front_door_wording.py +0 -0
  1782. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_governed_authorization.py +0 -0
  1783. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_governed_healing.py +0 -0
  1784. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_governed_run_validation.py +0 -0
  1785. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_halt_detail.py +0 -0
  1786. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_halt_learn_loop.py +0 -0
  1787. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_hardening_flywheel.py +0 -0
  1788. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_heal.py +0 -0
  1789. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_heal_fuzz.py +0 -0
  1790. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_hosted.py +0 -0
  1791. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_hosted_runner_adapter.py +0 -0
  1792. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_hosted_runner_product_release_gate.py +0 -0
  1793. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_hybrid_benchmark.py +0 -0
  1794. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_ica_hdx_qualification.py +0 -0
  1795. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identifier_crop_lint.py +0 -0
  1796. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identity_fuzz.py +0 -0
  1797. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identity_homonym_8th.py +0 -0
  1798. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identity_ladder.py +0 -0
  1799. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identity_ocr_conservative_9th.py +0 -0
  1800. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identity_param_pixel_crop.py +0 -0
  1801. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identity_rates.py +0 -0
  1802. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identity_separator_glyph_10th.py +0 -0
  1803. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_identity_signal_quorum.py +0 -0
  1804. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_image_hash.py +0 -0
  1805. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_induction.py +0 -0
  1806. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_induction_hardening.py +0 -0
  1807. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_install_playwright_browser.py +0 -0
  1808. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_interactive_recorder.py +0 -0
  1809. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_interactive_recorder_frames.py +0 -0
  1810. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_interactive_recorder_gestures.py +0 -0
  1811. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_judgment_cases.py +0 -0
  1812. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_l1_artifact.py +0 -0
  1813. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_learning_gate_semantics.py +0 -0
  1814. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_lending_swer.py +0 -0
  1815. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_linux_backend.py +0 -0
  1816. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_linux_qualification.py +0 -0
  1817. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_loop_authoring.py +0 -0
  1818. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_macos_ax_identity_evidence.py +0 -0
  1819. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_macos_ax_release_qualification.py +0 -0
  1820. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_macos_backend.py +0 -0
  1821. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_macos_backend_missing_pyobjc.py +0 -0
  1822. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_macos_client.py +0 -0
  1823. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_macos_qualification.py +0 -0
  1824. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_macos_structural.py +0 -0
  1825. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_mockloan.py +0 -0
  1826. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_mockmed.py +0 -0
  1827. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_o2c_recon_benchmark.py +0 -0
  1828. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_ocr_anchor_grounder.py +0 -0
  1829. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_ocr_resolution_safety.py +0 -0
  1830. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_onscreen_verifier.py +0 -0
  1831. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_openemr_e2e_harness.py +0 -0
  1832. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_openemr_retained_finals.py +0 -0
  1833. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_oracle_vocabulary.py +0 -0
  1834. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_outcome_epilogues.py +0 -0
  1835. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_phi_governance.py +0 -0
  1836. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_pixel_identity_aligned.py +0 -0
  1837. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_pixel_identity_probe.py +0 -0
  1838. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_pixel_only_citrix_verified_refusal.py +0 -0
  1839. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_pixel_verify_config.py +0 -0
  1840. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_plain_outcome.py +0 -0
  1841. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_playwright_atomic_actuation.py +0 -0
  1842. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_playwright_context_identity.py +0 -0
  1843. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_playwright_frame_actuation.py +0 -0
  1844. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_playwright_frame_context.py +0 -0
  1845. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_playwright_uncertain_delivery.py +0 -0
  1846. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_policy_program.py +0 -0
  1847. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_postcondition_fuzz.py +0 -0
  1848. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_privacy.py +0 -0
  1849. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_production_qualification.py +0 -0
  1850. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_program_ir_phase1.py +0 -0
  1851. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_program_ir_phase2.py +0 -0
  1852. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_program_transition_evidence.py +0 -0
  1853. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_public_demo_evidence.py +0 -0
  1854. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_public_demo_presentation_media.py +0 -0
  1855. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_python_classifiers.py +0 -0
  1856. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_admission.py +0 -0
  1857. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_admission_v2.py +0 -0
  1858. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_admission_v4.py +0 -0
  1859. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_campaign_authority.py +0 -0
  1860. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_drills.py +0 -0
  1861. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_drills_adversarial.py +0 -0
  1862. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_fault_contract.py +0 -0
  1863. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_gate_campaign.py +0 -0
  1864. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_identity_evidence.py +0 -0
  1865. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_oracle_gate.py +0 -0
  1866. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_program_paths.py +0 -0
  1867. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_project.py +0 -0
  1868. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_proposal.py +0 -0
  1869. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_qualification_web_session.py +0 -0
  1870. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_quickstart_lifecycle.py +0 -0
  1871. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_rdp_backend.py +0 -0
  1872. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_rdp_multiapp_campaign_contract.py +0 -0
  1873. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_rdp_qualification_helpers.py +0 -0
  1874. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_record_check_binding.py +0 -0
  1875. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_recorder.py +0 -0
  1876. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_release_ci_gate.py +0 -0
  1877. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_release_publication.py +0 -0
  1878. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_reliability_harness.py +0 -0
  1879. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_remote_frame_contract.py +0 -0
  1880. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_remote_vlm.py +0 -0
  1881. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_remote_vlm_downscale.py +0 -0
  1882. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_repair_cloud_review.py +0 -0
  1883. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_repair_encrypted_identity.py +0 -0
  1884. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_repair_lifecycle.py +0 -0
  1885. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_replay_speed.py +0 -0
  1886. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_replayer.py +0 -0
  1887. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_replayer_api_actuator.py +0 -0
  1888. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_replayer_effect_param_binding.py +0 -0
  1889. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_replayer_effects.py +0 -0
  1890. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_replayer_readback.py +0 -0
  1891. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_repo_tree_guard.py +0 -0
  1892. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_report.py +0 -0
  1893. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_report_transaction_outcome.py +0 -0
  1894. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_resolver.py +0 -0
  1895. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_resolver_ambiguity.py +0 -0
  1896. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_resolver_fuzz.py +0 -0
  1897. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_resolver_global_landmark_guard.py +0 -0
  1898. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_rest_verifier_transport.py +0 -0
  1899. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_risk.py +0 -0
  1900. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_run_gate.py +0 -0
  1901. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_run_player.py +0 -0
  1902. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_runner_client_lib.py +0 -0
  1903. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_runtime_input_canonical.py +0 -0
  1904. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_runtime_validation.py +0 -0
  1905. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_safety_gallery.py +0 -0
  1906. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_sanitized_artifact.py +0 -0
  1907. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_scaffold_verifier.py +0 -0
  1908. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_seal_template_crops.py +0 -0
  1909. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_secret_params.py +0 -0
  1910. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_silent_wrong_action_benchmark.py +0 -0
  1911. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_source_policy_binding.py +0 -0
  1912. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_state_dependency.py +0 -0
  1913. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_structural_rung.py +0 -0
  1914. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_submit_binding.py +0 -0
  1915. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_submit_binding_browser.py +0 -0
  1916. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_submit_binding_interactive.py +0 -0
  1917. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_submit_binding_record_replay.py +0 -0
  1918. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_surface_selection.py +0 -0
  1919. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_teach_cli.py +0 -0
  1920. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_teach_placement.py +0 -0
  1921. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_terminal_verification_v2.py +0 -0
  1922. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_transaction_outcome.py +0 -0
  1923. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_tutorial_presentation.py +0 -0
  1924. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_ui_readback_benchmark.py +0 -0
  1925. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_ui_readback_browser.py +0 -0
  1926. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_uncertain_delivery.py +0 -0
  1927. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_validate_claims.py +0 -0
  1928. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_value_expr.py +0 -0
  1929. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_verifier_adapter_platform.py +0 -0
  1930. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_vision.py +0 -0
  1931. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_visualize.py +0 -0
  1932. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_visualize_composition.py +0 -0
  1933. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_visualize_process.py +0 -0
  1934. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_vlm_identity_probe.py +0 -0
  1935. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_vlm_service.py +0 -0
  1936. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_vlm_service_mlx.py +0 -0
  1937. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_vlm_service_mlx_compatibility.py +0 -0
  1938. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_vlm_service_retention.py +0 -0
  1939. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_volatility.py +0 -0
  1940. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_win32_window_client.py +0 -0
  1941. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_win_agent_tls.py +0 -0
  1942. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_windows_context_identity_native.py +0 -0
  1943. {openadapt_flow-2.0.0 → openadapt_flow-2.2.0}/tests/test_wire_remote_vlm.py +0 -0
@@ -0,0 +1,101 @@
1
+ name: canvas-nodom-ladder
2
+
3
+ # No-DOM HTML5-canvas vision-ladder qualification (DRAFT CI wiring).
4
+ #
5
+ # Runs the record -> compile -> replay contract through the vision-only resolver
6
+ # ladder over a genuine no-accessible-DOM HTML5 <canvas> (noVNC/TigerVNC,
7
+ # benchmark/canvas_ladder) with NO structural backend. This is the CI-viable
8
+ # stand-in for the Citrix Workspace-WEB canvas class -- it is NOT Citrix ICA/HDX
9
+ # (see benchmark/canvas_ladder/README.md).
10
+ #
11
+ # WEEKLY + manual only (not a per-PR required gate): the harness drives a real
12
+ # browser over a VNC round-trip, so a run is minutes, not seconds. The fixture
13
+ # image is amd64+arm64; GitHub's ubuntu runners are amd64.
14
+ on:
15
+ schedule:
16
+ - cron: "30 8 * * 3" # Wednesdays 08:30 UTC
17
+ workflow_dispatch: {}
18
+
19
+ concurrency:
20
+ group: canvas-nodom-ladder-${{ github.ref }}
21
+ cancel-in-progress: true
22
+
23
+ jobs:
24
+ canvas-nodom-ladder:
25
+ runs-on: ubuntu-24.04
26
+ timeout-minutes: 30
27
+ steps:
28
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
29
+
30
+ - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
31
+ with:
32
+ python-version: "3.12"
33
+
34
+ # `playwright install --with-deps` shells out to apt on the hosted runner,
35
+ # so this step depends on the Ubuntu mirror even though it names no
36
+ # package. On 2026-08-19 the scheduled run spent the whole 30-minute job
37
+ # budget in this step and was killed; a healthy job finishes in about
38
+ # three minutes. Prefer the canonical archive and bound the step.
39
+ - name: Install flow with the vision + browser stack
40
+ timeout-minutes: 12
41
+ run: |
42
+ set -uo pipefail
43
+ # The hosted runner resolves its Ubuntu mirror through
44
+ # /etc/apt/apt-mirrors.txt, which points at azure.archive.ubuntu.com.
45
+ # That mirror fails intermittently, and every failure costs minutes of
46
+ # apt retries before the canonical archive is tried. Prefer the
47
+ # canonical archive up front. Keep this best-effort: if the file is
48
+ # absent or already canonical, the run continues unchanged.
49
+ sudo sed -i \
50
+ 's|http://azure.archive.ubuntu.com/ubuntu|http://archive.ubuntu.com/ubuntu|g' \
51
+ /etc/apt/apt-mirrors.txt 2>/dev/null || true
52
+ # Refresh the indexes here rather than inside Playwright, so an
53
+ # unreachable mirror fails loudly and early instead of burning the
54
+ # step budget inside `--with-deps`.
55
+ update_ok=""
56
+ for attempt in 1 2 3; do
57
+ if sudo apt-get update; then
58
+ update_ok=1
59
+ break
60
+ fi
61
+ echo "::warning::apt-get update failed (attempt ${attempt}/3); retrying"
62
+ sleep $((attempt * 10))
63
+ done
64
+ if [ -z "$update_ok" ]; then
65
+ echo "::error::apt-get update failed three times; the Ubuntu mirror is unreachable"
66
+ exit 1
67
+ fi
68
+ set -e
69
+ python -m pip install --upgrade pip
70
+ pip install -e ".[ocr,cv]" || pip install -e .
71
+ pip install opencv-python-headless rapidocr-onnxruntime pillow numpy playwright
72
+ python -m playwright install --with-deps chromium
73
+
74
+ - name: Build the no-DOM canvas fixture image
75
+ run: docker build -t oaflow-canvas-fixture:latest benchmark/canvas_ladder/fixture
76
+
77
+ - name: Start the no-DOM canvas surface
78
+ run: |
79
+ docker run -d --name oaflow-canvas-ladder --shm-size=1g -p 6080:6080 \
80
+ oaflow-canvas-fixture:latest
81
+ sleep 18
82
+
83
+ - name: Run the no-DOM canvas vision-ladder qualification
84
+ run: |
85
+ python benchmark/canvas_ladder/run_canvas_ladder_qualification.py \
86
+ --container oaflow-canvas-ladder \
87
+ --output runs/canvas-ladder/results.json \
88
+ --candidate-commit "${GITHUB_SHA}"
89
+
90
+ - name: Upload evidence
91
+ if: always()
92
+ uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
93
+ with:
94
+ name: canvas-nodom-ladder-qualification
95
+ path: runs/canvas-ladder/results.json
96
+ retention-days: 7
97
+ if-no-files-found: error
98
+
99
+ - name: Tear down
100
+ if: always()
101
+ run: docker rm -f oaflow-canvas-ladder || true