@uipath/skills 1.196.0 → 1.197.0

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 (592) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +5 -2
  3. package/CODEOWNERS +22 -7
  4. package/README.md +14 -1
  5. package/assets/skill-status.json +14 -1
  6. package/assets/uip-catalog-snapshot.json +13 -2
  7. package/hooks/hooks.json +12 -0
  8. package/hooks/send-telemetry.sh +445 -0
  9. package/hooks/suggest-permissions.sh +6 -0
  10. package/package.json +1 -1
  11. package/skills/uipath-admin/SKILL.md +24 -4
  12. package/skills/uipath-admin/references/audit-commands.md +25 -21
  13. package/skills/uipath-admin/references/audit-workflow-guide.md +26 -25
  14. package/skills/uipath-admin/references/diagnose/CAPABILITY.md +74 -0
  15. package/skills/uipath-admin/references/diagnose/references/failure-modes.md +228 -0
  16. package/skills/uipath-admin/references/diagnose/references/troubleshooting-guide.md +106 -0
  17. package/skills/uipath-admin/references/identity-troubleshoot-guide.md +251 -0
  18. package/skills/uipath-agents/SKILL.md +12 -8
  19. package/skills/uipath-agents/references/coded/capabilities/context-grounding.md +2 -0
  20. package/skills/uipath-agents/references/coded/capabilities/conversational-agents.md +2 -0
  21. package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails-recommend.md +12 -7
  22. package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails.md +141 -1
  23. package/skills/uipath-agents/references/coded/capabilities/human-in-the-loop.md +2 -0
  24. package/skills/uipath-agents/references/coded/capabilities/integration-service.md +19 -33
  25. package/skills/uipath-agents/references/coded/lifecycle/bindings-reference.md +54 -22
  26. package/skills/uipath-agents/references/coded/lifecycle/build.md +1 -0
  27. package/skills/uipath-agents/references/coded/lifecycle/evaluations/evaluation-sets.md +5 -1
  28. package/skills/uipath-agents/references/coded/lifecycle/setup.md +3 -1
  29. package/skills/uipath-agents/references/coded/quickstart.md +11 -10
  30. package/skills/uipath-agents/references/coded-vs-lowcode-guide.md +1 -0
  31. package/skills/uipath-agents/references/context-grounding-patterns.md +1 -1
  32. package/skills/uipath-agents/references/lowcode/agent-definition.md +97 -12
  33. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/analyze-attachments.md +2 -2
  34. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/batch-transform/impl-json.md +40 -14
  35. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/built-in-tools.md +4 -3
  36. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/deeprag/impl-json.md +38 -6
  37. package/skills/uipath-agents/references/lowcode/capabilities/context/attachments.md +1 -1
  38. package/skills/uipath-agents/references/lowcode/capabilities/context/context.md +1 -1
  39. package/skills/uipath-agents/references/lowcode/capabilities/context/datafabric.md +1 -1
  40. package/skills/uipath-agents/references/lowcode/capabilities/context/index.md +7 -3
  41. package/skills/uipath-agents/references/lowcode/capabilities/escalation/escalation.md +49 -38
  42. package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails-recommend.md +3 -1
  43. package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails.md +49 -49
  44. package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +34 -14
  45. package/skills/uipath-agents/references/lowcode/capabilities/integration-service/integration-service.md +1 -1
  46. package/skills/uipath-agents/references/lowcode/capabilities/memory/memory.md +2 -0
  47. package/skills/uipath-agents/references/lowcode/capabilities/process/process.md +2 -2
  48. package/skills/uipath-agents/references/lowcode/capabilities/process/solution-files.md +1 -1
  49. package/skills/uipath-agents/references/lowcode/critical-rules/autonomous-critical-rules.md +15 -0
  50. package/skills/uipath-agents/references/lowcode/critical-rules/conversational-critical-rules.md +19 -0
  51. package/skills/uipath-agents/references/lowcode/{critical-rules.md → critical-rules/critical-rules.md} +25 -27
  52. package/skills/uipath-agents/references/lowcode/debug.md +6 -3
  53. package/skills/uipath-agents/references/lowcode/evaluations/evaluate.md +2 -0
  54. package/skills/uipath-agents/references/lowcode/lowcode.md +29 -6
  55. package/skills/uipath-agents/references/lowcode/model-selection-guide.md +4 -1
  56. package/skills/uipath-agents/references/lowcode/project-lifecycle.md +20 -8
  57. package/skills/uipath-agents/references/lowcode/prompting/agent-prompting-guide.md +17 -0
  58. package/skills/uipath-agents/references/lowcode/{agent-prompting-guide.md → prompting/autonomous-agent-prompting-guide.md} +9 -11
  59. package/skills/uipath-agents/references/lowcode/prompting/conversational-agent-prompting-guide.md +123 -0
  60. package/skills/uipath-agents/references/lowcode/solution-resources.md +1 -1
  61. package/skills/uipath-api-workflow/SKILL.md +32 -12
  62. package/skills/uipath-api-workflow/references/cli-reference.md +110 -22
  63. package/skills/uipath-api-workflow/references/connector-activity-discovery.md +43 -4
  64. package/skills/uipath-api-workflow/references/troubleshooting.md +23 -7
  65. package/skills/uipath-api-workflow/references/workflow-file-format.md +25 -7
  66. package/skills/uipath-coded-apps/SKILL.md +55 -12
  67. package/skills/uipath-coded-apps/assets/fixtures/governance-dashboard-starter-kit.tar.gz +0 -0
  68. package/skills/uipath-coded-apps/assets/scripts/dashboards/build-dashboard.mjs +1371 -0
  69. package/skills/uipath-coded-apps/assets/scripts/dashboards/capability-registry.json +845 -0
  70. package/skills/uipath-coded-apps/assets/scripts/dashboards/flows/build.mjs +338 -0
  71. package/skills/uipath-coded-apps/assets/scripts/dashboards/flows/edit.mjs +248 -0
  72. package/skills/uipath-coded-apps/assets/scripts/dashboards/flows/template.mjs +82 -0
  73. package/skills/uipath-coded-apps/assets/scripts/dashboards/flows/upgrade.mjs +73 -0
  74. package/skills/uipath-coded-apps/assets/scripts/dashboards/lifecycle.mjs +207 -0
  75. package/skills/uipath-coded-apps/assets/scripts/dashboards/setup-admin-folder.mjs +146 -0
  76. package/skills/uipath-coded-apps/assets/scripts/dashboards/tests/regime-eject.test.mjs +124 -0
  77. package/skills/uipath-coded-apps/assets/scripts/dashboards/tests/resolution.test.mjs +1635 -0
  78. package/skills/uipath-coded-apps/assets/templates/action-app/app-template.css +9 -0
  79. package/skills/uipath-coded-apps/assets/templates/action-app/document-tab-template.css +139 -0
  80. package/skills/uipath-coded-apps/assets/templates/action-app/form-template.css +442 -0
  81. package/skills/uipath-coded-apps/assets/templates/action-app/index-template.css +111 -0
  82. package/skills/uipath-coded-apps/assets/templates/action-app-template.md +357 -152
  83. package/skills/uipath-coded-apps/assets/templates/web-app-template.md +255 -78
  84. package/skills/uipath-coded-apps/references/create-action-app.md +284 -195
  85. package/skills/uipath-coded-apps/references/create-web-app.md +64 -26
  86. package/skills/uipath-coded-apps/references/dashboards/CAPABILITY.md +179 -0
  87. package/skills/uipath-coded-apps/references/dashboards/aesthetic/charting.md +138 -0
  88. package/skills/uipath-coded-apps/references/dashboards/aesthetic/layout-patterns.md +152 -0
  89. package/skills/uipath-coded-apps/references/dashboards/plugins/build/impl.md +423 -0
  90. package/skills/uipath-coded-apps/references/dashboards/plugins/deploy/impl.md +322 -0
  91. package/skills/uipath-coded-apps/references/dashboards/primitives/customization.md +66 -0
  92. package/skills/uipath-coded-apps/references/dashboards/primitives/detail-views.md +64 -0
  93. package/skills/uipath-coded-apps/references/dashboards/primitives/incremental-editor.md +92 -0
  94. package/skills/uipath-coded-apps/references/dashboards/primitives/state-file.md +64 -0
  95. package/skills/uipath-coded-apps/references/dashboards/primitives/tier-resolution.md +474 -0
  96. package/skills/uipath-coded-apps/references/debug.md +15 -21
  97. package/skills/uipath-coded-apps/references/oauth-client-setup.md +5 -5
  98. package/skills/uipath-coded-apps/references/oauth-scopes.md +64 -2
  99. package/skills/uipath-coded-apps/references/pack-publish-deploy.md +12 -5
  100. package/skills/uipath-coded-apps/references/patterns.md +10 -5
  101. package/skills/uipath-coded-apps/references/sdk/action-center.md +32 -6
  102. package/skills/uipath-coded-apps/references/sdk/agents.md +241 -0
  103. package/skills/uipath-coded-apps/references/sdk/governance-traces.md +186 -0
  104. package/skills/uipath-coded-apps/references/sdk/governance.md +72 -0
  105. package/skills/uipath-coded-apps/references/sdk/imports.md +4 -0
  106. package/skills/uipath-coded-apps/references/sdk/maestro.md +114 -0
  107. package/skills/uipath-coded-apps/references/sdk/orchestrator.md +80 -4
  108. package/skills/uipath-coded-apps/references/sdk/pagination.md +2 -0
  109. package/skills/uipath-coded-apps/references/sdk/traces.md +89 -0
  110. package/skills/uipath-coded-apps/references/widgets/validation-station.md +308 -0
  111. package/skills/uipath-coded-apps/scripts/validate-action-schema.js +241 -0
  112. package/skills/uipath-connector-builder/SKILL.md +192 -0
  113. package/skills/uipath-connector-builder/references/auth.md +171 -0
  114. package/skills/uipath-connector-builder/references/configuration.md +130 -0
  115. package/skills/uipath-connector-builder/references/debugging.md +80 -0
  116. package/skills/uipath-connector-builder/references/element-json.md +148 -0
  117. package/skills/uipath-connector-builder/references/events.md +132 -0
  118. package/skills/uipath-connector-builder/references/hooks.md +198 -0
  119. package/skills/uipath-connector-builder/references/overview.md +78 -0
  120. package/skills/uipath-connector-builder/references/standard-resources.md +111 -0
  121. package/skills/uipath-connector-builder/references/system-resources.md +85 -0
  122. package/skills/uipath-feedback/SKILL.md +43 -29
  123. package/skills/{uipath-agents/references/coded/frameworks/coded-functions.md → uipath-functions/SKILL.md} +36 -23
  124. package/skills/uipath-governance/SKILL.md +49 -8
  125. package/skills/uipath-governance/references/aops-policy/aops-policy-commands.md +10 -10
  126. package/skills/uipath-governance/references/aops-policy/aops-policy-deploy-guide.md +7 -7
  127. package/skills/uipath-governance/references/auth-context.md +101 -0
  128. package/skills/uipath-governance/references/cli-cheatsheet.md +207 -0
  129. package/skills/uipath-governance/references/compliance-pack/catalog/impl.md +79 -0
  130. package/skills/uipath-governance/references/compliance-pack/coverage/impl.md +141 -0
  131. package/skills/uipath-governance/references/compliance-pack/disable/impl.md +39 -0
  132. package/skills/uipath-governance/references/compliance-pack/full-apply/impl.md +164 -0
  133. package/skills/uipath-governance/references/compliance-pack/partial-apply/impl.md +266 -0
  134. package/skills/uipath-governance/references/compliance-pack/partial-apply/merge-overrides-guide.md +28 -0
  135. package/skills/uipath-governance/references/compliance-pack/partial-apply/planning.md +82 -0
  136. package/skills/uipath-governance/references/compliance-pack/partial-apply/synthesize-formdata-guide.md +22 -0
  137. package/skills/uipath-governance/references/compliance-pack/preview-gate.md +43 -0
  138. package/skills/uipath-governance/references/compliance-pack/query/impl.md +75 -0
  139. package/skills/uipath-governance/references/diagnose/CAPABILITY.md +71 -0
  140. package/skills/uipath-governance/references/diagnose/references/failure-modes.md +201 -0
  141. package/skills/uipath-governance/references/diagnose/references/troubleshooting-guide.md +137 -0
  142. package/skills/uipath-governance/references/disambiguation-guide.md +15 -0
  143. package/skills/uipath-governance/scripts/merge-overrides.mjs +81 -0
  144. package/skills/uipath-governance/scripts/synthesize-formdata.mjs +86 -0
  145. package/skills/uipath-human-in-the-loop/SKILL.md +30 -25
  146. package/skills/uipath-human-in-the-loop/references/hitl-node-apptask.md +38 -4
  147. package/skills/uipath-human-in-the-loop/references/hitl-node-coded-action-app.md +2 -3
  148. package/skills/uipath-human-in-the-loop/references/hitl-node-quickform.md +92 -34
  149. package/skills/uipath-ixp/SKILL.md +120 -0
  150. package/skills/uipath-ixp/references/cli-reference.md +121 -0
  151. package/skills/uipath-ixp/references/improve-prompts-guide.md +283 -0
  152. package/skills/uipath-ixp/references/label-documents-guide.md +207 -0
  153. package/skills/uipath-ixp/references/project-setup-guide.md +90 -0
  154. package/skills/uipath-maestro-bpmn/SKILL.md +167 -68
  155. package/skills/uipath-maestro-bpmn/references/cli-conventions.md +47 -0
  156. package/skills/uipath-maestro-bpmn/references/diagnose/CAPABILITY.md +6 -6
  157. package/skills/uipath-maestro-bpmn/references/operate/CAPABILITY.md +3 -3
  158. package/skills/uipath-maestro-bpmn/references/registry-workflow.md +199 -0
  159. package/skills/uipath-maestro-bpmn/references/structural-bpmn.md +500 -0
  160. package/skills/uipath-maestro-bpmn/validator/README.md +214 -0
  161. package/skills/uipath-maestro-bpmn/validator/bpmn-spec.json +2477 -0
  162. package/skills/uipath-maestro-bpmn/validator/model.mjs +419 -0
  163. package/skills/uipath-maestro-bpmn/validator/package.json +17 -0
  164. package/skills/uipath-maestro-bpmn/validator/rules.mjs +1403 -0
  165. package/skills/uipath-maestro-bpmn/validator/samples/invalid-conditional-and-variable.bpmn +25 -0
  166. package/skills/uipath-maestro-bpmn/validator/samples/valid-baseline.bpmn +52 -0
  167. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/A.2.0.bpmn +157 -0
  168. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/A.2.1.bpmn +333 -0
  169. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/B.1.0.bpmn +598 -0
  170. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/B.2.0.bpmn +1709 -0
  171. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.2.0.bpmn +564 -0
  172. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.3.0.bpmn +671 -0
  173. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.4.0.bpmn +1045 -0
  174. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.5.0.bpmn +1176 -0
  175. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.6.0.bpmn +670 -0
  176. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.7.0.bpmn +466 -0
  177. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Can_Parse_Complex_Process_With_Task_Gateway_BoundaryEvent_etc.bpmn +74 -0
  178. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/ExclusiveGatewayDefaultFlow.bpmn +32 -0
  179. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/ExternalAgentWorkflow.bpmn +62 -0
  180. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Golden_Scenario.initial.bpmn +361 -0
  181. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/InclusiveJoinRouteAwayBranch.bpmn +62 -0
  182. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_AsyncExecution_And_Create_CorrectModel.bpmn +74 -0
  183. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_ExtractionValidation_And_Create_CorrectModel.bpmn +35 -0
  184. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_Extraction_FileUpload_And_Create_CorrectModel.bpmn +33 -0
  185. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_Extraction_JobAttachment_And_Create_CorrectModel.bpmn +35 -0
  186. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_SubProcess_With_Multiple_Element_Types.bpmn +76 -0
  187. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/StartEventWithOutputs.bpmn +36 -0
  188. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/StartGatewayEnd.bpmn +44 -0
  189. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/all elements.bpmn +516 -0
  190. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/all_sequence_flow_types.bpmn +173 -0
  191. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/demo.bpmn +181 -0
  192. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-001-collapsed.bpmn +126 -0
  193. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-001-expanded.bpmn +122 -0
  194. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-003-collapsed_deeply-nested.bpmn +438 -0
  195. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/A.1.0.bpmn +87 -0
  196. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/A.3.0.bpmn +165 -0
  197. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ApiWorkflow.bpmn +39 -0
  198. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnNestedSubProcessTests.bpmn +102 -0
  199. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnTimerBoundaryEvents.bpmn +160 -0
  200. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnXmlWithCatchAllErrorEventSubProcess.bpmn +45 -0
  201. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnXmlWithSpecificErrorEventSubProcess.bpmn +46 -0
  202. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/CaseManagementWithConstantIdentifier.bpmn +218 -0
  203. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ErrorBoundary.bpmn +78 -0
  204. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ErrorPropagationInEventSubprocess.bpmn +340 -0
  205. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/EventBasedGatewayFirstCatcherWins.bpmn +56 -0
  206. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Example-EventBasedGateway.bpmn +117 -0
  207. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveGatewayConditional.bpmn +45 -0
  208. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveGatewaySharedEndEvent.bpmn +45 -0
  209. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveWithParallelGateway.bpmn +68 -0
  210. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/FourScriptTasks.bpmn +84 -0
  211. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/HitlTaskOnly.bpmn +55 -0
  212. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/InclusiveGatewayForkJoin.bpmn +69 -0
  213. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_BPMN_Elements_And_Create_CorrectModel.bpmn +20 -0
  214. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_HttpRequest_ServiceTask_And_Create_Correct_Model.bpmn +34 -0
  215. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_MessageBoundaryEvent_And_Create_CorrectModel.bpmn +87 -0
  216. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_Script_Task_V2_And_Create_Correct_Model.bpmn +31 -0
  217. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_Sets_Containers_Properly.bpmn +129 -0
  218. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ScriptWritesVariableThenGatewayBranches.bpmn +55 -0
  219. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/boundaryevent.bpmn +30 -0
  220. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/collapsed-subprocess.bpmn +83 -0
  221. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/connectable-types.bpmn +85 -0
  222. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/extensions-orchestrator-start-job.bpmn +80 -0
  223. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/multiparticipantpool.bpmn +77 -0
  224. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/nestedsubprocess.bpmn +36 -0
  225. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/simple.bpmn +59 -0
  226. package/skills/uipath-maestro-bpmn/validator/test/integration.test.mjs +146 -0
  227. package/skills/uipath-maestro-bpmn/validator/test/model-helpers.mjs +42 -0
  228. package/skills/uipath-maestro-bpmn/validator/test/ported-rule-tests.mjs +983 -0
  229. package/skills/uipath-maestro-bpmn/validator/test/run-tests.mjs +530 -0
  230. package/skills/uipath-maestro-bpmn/validator/uipath-moddle.v1.json +715 -0
  231. package/skills/uipath-maestro-bpmn/validator/validate-bpmn.mjs +164 -0
  232. package/skills/uipath-maestro-case/SKILL.md +5 -1
  233. package/skills/uipath-maestro-case/assets/templates/sdd-template-examples.md +10 -0
  234. package/skills/uipath-maestro-case/assets/templates/sdd-template.md +89 -17
  235. package/skills/uipath-maestro-case/references/bindings-and-expressions.md +26 -0
  236. package/skills/uipath-maestro-case/references/case-editing-operations.md +3 -0
  237. package/skills/uipath-maestro-case/references/implementation.md +11 -4
  238. package/skills/uipath-maestro-case/references/phase-0-interview.md +8 -7
  239. package/skills/uipath-maestro-case/references/phased-execution.md +2 -1
  240. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +21 -0
  241. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +2 -0
  242. package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +15 -9
  243. package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +131 -4
  244. package/skills/uipath-maestro-case/references/sdd-generation-rules.md +94 -17
  245. package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +1 -1
  246. package/skills/uipath-maestro-flow/references/author/references/planning-arch.md +2 -2
  247. package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/impl.md +11 -11
  248. package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/planning.md +6 -6
  249. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-connector.md +4 -1
  250. package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/impl.md +157 -122
  251. package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/planning.md +16 -4
  252. package/skills/uipath-maestro-flow/references/evaluate/references/commands-reference.md +8 -8
  253. package/skills/uipath-maestro-flow/references/evaluate/references/running-guide.md +3 -3
  254. package/skills/uipath-maestro-flow/references/shared/cli-commands.md +1 -1
  255. package/skills/uipath-planner/SKILL.md +19 -8
  256. package/skills/uipath-planner/assets/templates/agent-sdd-template.md +14 -0
  257. package/skills/uipath-planner/assets/templates/api-workflow-sdd-template.md +14 -0
  258. package/skills/uipath-planner/assets/templates/case-sdd-template.md +14 -0
  259. package/skills/uipath-planner/assets/templates/coded-app-sdd-template.md +14 -0
  260. package/skills/uipath-planner/assets/templates/flow-sdd-template.md +14 -0
  261. package/skills/uipath-planner/assets/templates/rpa-sdd-template.md +40 -5
  262. package/skills/uipath-planner/references/asdd-crosswalk-guide.md +55 -0
  263. package/skills/uipath-planner/references/attended-reauth-pattern-guide.md +43 -0
  264. package/skills/uipath-planner/references/multi-skill-patterns-guide.md +4 -0
  265. package/skills/uipath-planner/references/non-pdd-lane-guide.md +2 -0
  266. package/skills/uipath-planner/references/pdd-analysis-guide.md +24 -1
  267. package/skills/uipath-planner/references/pdd-driven-lane-guide.md +6 -2
  268. package/skills/uipath-planner/references/plan-and-tasks-format.md +2 -0
  269. package/skills/uipath-planner/references/platform-availability-guide.md +43 -0
  270. package/skills/uipath-planner/references/product-selection-guide.md +20 -0
  271. package/skills/uipath-planner/references/sdd-generation-guide.md +90 -21
  272. package/skills/uipath-planner/references/tenant-library-search-guide.md +5 -1
  273. package/skills/uipath-planner/scripts/docx-extract.sh +54 -0
  274. package/skills/uipath-planner/scripts/sdd-to-docx.sh +76 -0
  275. package/skills/uipath-platform/SKILL.md +54 -7
  276. package/skills/uipath-platform/references/context-grounding/index-management.md +123 -0
  277. package/skills/uipath-platform/references/data-fabric/bulk-import.md +86 -0
  278. package/skills/{uipath-data-fabric/references → uipath-platform/references/data-fabric}/choice-sets.md +33 -12
  279. package/skills/uipath-platform/references/data-fabric/data-fabric.md +352 -0
  280. package/skills/uipath-platform/references/data-fabric/entity-schema.md +444 -0
  281. package/skills/uipath-platform/references/data-fabric/file-attachments.md +122 -0
  282. package/skills/{uipath-data-fabric/references → uipath-platform/references/data-fabric}/filter-platform-contract.md +3 -3
  283. package/skills/{uipath-data-fabric/references → uipath-platform/references/data-fabric}/records-query.md +46 -10
  284. package/skills/uipath-platform/references/integration-service/http-request.md +15 -1
  285. package/skills/uipath-platform/references/integration-service/vendor-docs-registry.json +173 -0
  286. package/skills/uipath-platform/references/uip-commands.md +12 -4
  287. package/skills/uipath-review/SKILL.md +53 -12
  288. package/skills/uipath-review/references/agents/agent-common-issues.md +1 -1
  289. package/skills/uipath-review/references/agents/agent-grading-rubric.md +133 -0
  290. package/skills/uipath-review/references/agents/agent-review-checklist.md +23 -3
  291. package/skills/uipath-review/references/agents/agents-coded-rules.md +7 -0
  292. package/skills/uipath-review/references/agents/agents-lowcode-rules.md +13 -3
  293. package/skills/uipath-review/references/agents/guardrails/guardrails-review.md +198 -0
  294. package/skills/uipath-review/references/architecture-assessment-guide.md +2 -0
  295. package/skills/uipath-review/references/review-workflow-guide.md +9 -5
  296. package/skills/uipath-review/references/rule-catalog-workflow.md +3 -3
  297. package/skills/uipath-rpa/SKILL.md +18 -6
  298. package/skills/uipath-rpa/references/cli-reference.md +57 -3
  299. package/skills/uipath-rpa/references/common-activity-card.md +1 -1
  300. package/skills/uipath-rpa/references/connector-capabilities.md +2 -0
  301. package/skills/uipath-rpa/references/data-manipulation-guide.md +311 -0
  302. package/skills/uipath-rpa/references/environment-setup.md +0 -2
  303. package/skills/uipath-rpa/references/error-handling-guide.md +381 -0
  304. package/skills/uipath-rpa/references/is-connector-xaml-guide.md +127 -11
  305. package/skills/uipath-rpa/references/reframework-guide.md +2 -0
  306. package/skills/uipath-rpa/references/testing-guide.md +19 -0
  307. package/skills/uipath-rpa/references/ui-automation-guide.md +129 -18
  308. package/skills/uipath-rpa/references/uia-configure-target-workflows.md +22 -1
  309. package/skills/uipath-rpa/references/uia-elements-interaction-guide.md +93 -0
  310. package/skills/uipath-rpa/references/xaml/canvas-layout-guide.md +41 -4
  311. package/skills/uipath-rpa/references/xaml/common-pitfalls.md +12 -3
  312. package/skills/uipath-rpa/references/xaml/flowchart-guide.md +113 -0
  313. package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +5 -9
  314. package/skills/uipath-solution/SKILL.md +11 -8
  315. package/skills/uipath-solution/references/pack-and-deploy.md +18 -1
  316. package/skills/uipath-solution/references/solution-overview.md +3 -0
  317. package/skills/uipath-test/SKILL.md +2 -1
  318. package/skills/uipath-troubleshoot/SKILL.md +24 -26
  319. package/skills/uipath-troubleshoot/agents/depth-verifier.md +24 -25
  320. package/skills/uipath-troubleshoot/agents/hypothesis-generator.md +8 -4
  321. package/skills/uipath-troubleshoot/agents/hypothesis-tester.md +85 -38
  322. package/skills/uipath-troubleshoot/agents/presenter.md +7 -7
  323. package/skills/uipath-troubleshoot/agents/scope-checker.md +3 -6
  324. package/skills/uipath-troubleshoot/agents/shared.md +26 -21
  325. package/skills/uipath-troubleshoot/agents/triage.md +117 -49
  326. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/investigation_guide.md +43 -0
  327. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/overview.md +57 -0
  328. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-action-failed-after-find.md +100 -0
  329. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-cell-targeting-failures.md +111 -0
  330. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-element-not-found.md +125 -0
  331. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-get-text-empty-or-wrong-result.md +117 -0
  332. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-invalid-descriptor.md +102 -0
  333. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-scope-setup-failures.md +136 -0
  334. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-scroll-search-failures.md +114 -0
  335. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-server-auth-throttling-network.md +95 -0
  336. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-silent-failures-and-false-results.md +124 -0
  337. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/presentation.md +8 -0
  338. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/summary.md +15 -0
  339. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/investigation_guide.md +42 -0
  340. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/overview.md +41 -0
  341. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/playbooks/connect-to-database-failures.md +104 -0
  342. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/playbooks/execute-non-query-failures.md +97 -0
  343. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/playbooks/execute-query-failures.md +134 -0
  344. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/playbooks/start-transaction-failures.md +94 -0
  345. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/presentation.md +10 -0
  346. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/summary.md +10 -0
  347. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/investigation_guide.md +27 -9
  348. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/overview.md +51 -10
  349. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/append-range-failures.md +146 -0
  350. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/delete-range-failures.md +126 -0
  351. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/excel-application-card-failures.md +139 -0
  352. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/excel-application-scope-failures.md +118 -0
  353. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/execute-macro-failures.md +149 -0
  354. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/write-range-failures.md +145 -0
  355. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/presentation.md +12 -7
  356. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/summary.md +6 -0
  357. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/investigation_guide.md +1 -0
  358. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/overview.md +12 -4
  359. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/connection-and-auth-failures.md +55 -0
  360. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/drive-file-not-found.md +18 -10
  361. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/get-newest-email-not-found.md +9 -8
  362. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/invalid-or-null-input.md +68 -0
  363. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/transient-and-timeout-errors.md +52 -0
  364. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/upload-storage-quota-exceeded.md +1 -1
  365. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/summary.md +5 -2
  366. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/overview.md +28 -0
  367. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/delete-outlook-mail-failures.md +105 -0
  368. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/get-outlook-mail-failures.md +109 -0
  369. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/move-outlook-mail-failures.md +97 -0
  370. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/send-outlook-mail-failures.md +95 -0
  371. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/summary.md +8 -0
  372. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/investigation_guide.md +23 -0
  373. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/overview.md +9 -0
  374. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/application-scope-misconfigured.md +49 -0
  375. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/authentication-token-invalid.md +53 -0
  376. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/copy-item-argument-null.md +34 -0
  377. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/create-folder-invalid-path.md +36 -0
  378. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/download-file-conversion-or-destination.md +40 -0
  379. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/drive-item-not-found.md +1 -1
  380. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/email-trigger-connection-event-failure.md +45 -0
  381. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/insufficient-graph-scope.md +44 -0
  382. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/legacy-mail-null-reference.md +43 -0
  383. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/mail-folder-not-found.md +4 -3
  384. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/mail-invalid-odata-query.md +43 -0
  385. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/mail-message-not-found.md +45 -0
  386. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/request-throttled.md +45 -0
  387. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/send-mail-rejected.md +52 -0
  388. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/transient-service-error.md +48 -0
  389. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/upload-file-quota-or-size.md +47 -0
  390. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/summary.md +15 -1
  391. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/investigation_guide.md +32 -0
  392. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/overview.md +38 -0
  393. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/invoke-method-failures.md +57 -0
  394. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/invoke-python-method-pipe-is-broken.md +44 -0
  395. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/load-script-failures.md +62 -0
  396. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/python-path-not-valid.md +39 -0
  397. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/python-scope-architecture-version-mismatch.md +41 -0
  398. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/working-folder-relative-path.md +34 -0
  399. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/presentation.md +9 -0
  400. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/summary.md +12 -0
  401. package/skills/uipath-troubleshoot/references/activity-packages/system-activities/playbooks/get-asset-activity-bug-silent-failure.md +1 -1
  402. package/skills/uipath-troubleshoot/references/activity-packages/system-activities/playbooks/get-asset-robot-not-authenticated.md +29 -22
  403. package/skills/uipath-troubleshoot/references/activity-packages/system-activities/summary.md +1 -1
  404. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/investigation_guide.md +30 -0
  405. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/overview.md +36 -0
  406. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/deserialize-malformed-input.md +36 -0
  407. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/deserialize-null-input.md +35 -0
  408. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/deserialize-type-mismatch.md +40 -0
  409. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-client-null-reference.md +34 -0
  410. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-connection-failure.md +48 -0
  411. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-timeout.md +40 -0
  412. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/net-http-request-aggregate-failure.md +38 -0
  413. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/summary.md +13 -0
  414. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/investigation_guide.md +55 -0
  415. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/overview.md +82 -0
  416. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/add-picture-failures.md +51 -0
  417. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/append-text-missing-container.md +31 -0
  418. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/append-text-zero-byte-file.md +32 -0
  419. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/export-pdf-com-hang.md +46 -0
  420. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/export-pdf-missing-output-dir.md +32 -0
  421. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/export-pdf-output-path-format.md +35 -0
  422. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/read-text-doc-format.md +30 -0
  423. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/read-text-missing-container.md +29 -0
  424. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/read-text-protected-view.md +32 -0
  425. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-com-busy.md +35 -0
  426. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-file-locked.md +33 -0
  427. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-headers-textboxes-skipped.md +30 -0
  428. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-length-limit.md +30 -0
  429. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-loop-template-overwrite.md +31 -0
  430. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-multiline-formatting.md +31 -0
  431. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-silent-no-substitution.md +32 -0
  432. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-version-mismatch.md +30 -0
  433. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-com-interop-failures.md +52 -0
  434. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-com-start-background-session0.md +50 -0
  435. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-export-pdf-com-wrong-thread.md +46 -0
  436. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-open-sharepoint-url-com-command-failed.md +45 -0
  437. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-cannot-create-unknown-type.md +30 -0
  438. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-com-not-installed.md +35 -0
  439. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-file-corrupted.md +34 -0
  440. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-file-path-not-found.md +36 -0
  441. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-hangs-background-prompt.md +34 -0
  442. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/presentation.md +11 -0
  443. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/summary.md +38 -0
  444. package/skills/uipath-troubleshoot/references/products/integration-service/investigation_guide.md +9 -0
  445. package/skills/uipath-troubleshoot/references/products/integration-service/overview.md +7 -0
  446. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connection-invalid.md +9 -0
  447. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-aggregate-exception.md +30 -0
  448. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-general-exception.md +43 -0
  449. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-null-reference.md +36 -0
  450. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-remote-exception.md +31 -0
  451. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-runtime-exception.md +40 -0
  452. package/skills/uipath-troubleshoot/references/products/integration-service/summary.md +5 -0
  453. package/skills/uipath-troubleshoot/references/products/maestro/investigation_guide.md +2 -1
  454. package/skills/uipath-troubleshoot/references/products/orchestrator/investigation_guide.md +105 -10
  455. package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-faulted-logon-failure.md +1 -1
  456. package/skills/uipath-troubleshoot/references/summary.md +59 -3
  457. package/skills/uipath-troubleshoot/schemas/evidence.schema.md +48 -0
  458. package/skills/uipath-troubleshoot/schemas/hypotheses.schema.md +22 -7
  459. package/skills/uipath-troubleshoot/schemas/scope-check.schema.md +1 -1
  460. package/skills/uipath-troubleshoot/schemas/state.schema.md +81 -6
  461. package/version-manifest.json +2 -2
  462. package/skills/uipath-data-fabric/SKILL.md +0 -239
  463. package/skills/uipath-data-fabric/references/bulk-import.md +0 -73
  464. package/skills/uipath-data-fabric/references/entity-schema.md +0 -391
  465. package/skills/uipath-data-fabric/references/file-attachments.md +0 -65
  466. package/skills/uipath-maestro-bpmn/.maintenance/README.md +0 -241
  467. package/skills/uipath-maestro-bpmn/.maintenance/check-all.sh +0 -41
  468. package/skills/uipath-maestro-bpmn/.maintenance/check-anchors.sh +0 -83
  469. package/skills/uipath-maestro-bpmn/.maintenance/check-depth.sh +0 -132
  470. package/skills/uipath-maestro-bpmn/.maintenance/check-link-text.sh +0 -123
  471. package/skills/uipath-maestro-bpmn/.maintenance/check-links.sh +0 -70
  472. package/skills/uipath-maestro-bpmn/.maintenance/check-orphans.sh +0 -93
  473. package/skills/uipath-maestro-bpmn/.maintenance/check-plugin-pairs.sh +0 -39
  474. package/skills/uipath-maestro-bpmn/.maintenance/check-real-pack.sh +0 -79
  475. package/skills/uipath-maestro-bpmn/.maintenance/check-template.sh +0 -42
  476. package/skills/uipath-maestro-bpmn/.maintenance/check-uip-commands.sh +0 -266
  477. package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.py +0 -1255
  478. package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.sh +0 -8
  479. package/skills/uipath-maestro-bpmn/fixtures/validation/README.md +0 -94
  480. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/agent-invocation.bpmn +0 -62
  481. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/bindings_v2.json +0 -37
  482. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/entry-points.json +0 -21
  483. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/operate.json +0 -9
  484. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/package-descriptor.json +0 -10
  485. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/project.uiproj +0 -7
  486. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/bindings_v2.json +0 -68
  487. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/contract-variants.bpmn +0 -270
  488. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/entry-points.json +0 -25
  489. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/operate.json +0 -9
  490. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/package-descriptor.json +0 -10
  491. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/project.uiproj +0 -7
  492. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/bindings_v2.json +0 -19
  493. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/entry-points.json +0 -25
  494. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/gateway-boundary-error.bpmn +0 -91
  495. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/operate.json +0 -9
  496. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/package-descriptor.json +0 -10
  497. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/project.uiproj +0 -7
  498. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/bindings_v2.json +0 -4
  499. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/entry-points.json +0 -25
  500. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/imported-brownfield-preservation.bpmn +0 -63
  501. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/operate.json +0 -9
  502. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/package-descriptor.json +0 -10
  503. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/project.uiproj +0 -7
  504. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/bindings_v2.json +0 -52
  505. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/entry-points.json +0 -21
  506. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/integration-service-enriched.bpmn +0 -65
  507. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/operate.json +0 -9
  508. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/package-descriptor.json +0 -10
  509. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/project.uiproj +0 -7
  510. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/bindings_v2.json +0 -4
  511. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/entry-points.json +0 -25
  512. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/linear-process.bpmn +0 -55
  513. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/operate.json +0 -9
  514. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/package-descriptor.json +0 -10
  515. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/project.uiproj +0 -7
  516. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/bindings_v2.json +0 -20
  517. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/entry-points.json +0 -17
  518. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/operate.json +0 -9
  519. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/package-descriptor.json +0 -10
  520. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/project.uiproj +0 -7
  521. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/registry-coverage-matrix.bpmn +0 -207
  522. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/bindings_v2.json +0 -4
  523. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/entry-points.json +0 -33
  524. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/operate.json +0 -9
  525. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/package-descriptor.json +0 -10
  526. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/project.uiproj +0 -7
  527. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/subprocess-multi-instance.bpmn +0 -94
  528. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/bindings_v2.json +0 -124
  529. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/entry-points.json +0 -25
  530. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/operate.json +0 -9
  531. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/package-descriptor.json +0 -10
  532. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/project.uiproj +0 -7
  533. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/wrapper-family-contract.bpmn +0 -151
  534. package/skills/uipath-maestro-bpmn/references/author/CAPABILITY.md +0 -141
  535. package/skills/uipath-maestro-bpmn/references/author/references/brownfield.md +0 -48
  536. package/skills/uipath-maestro-bpmn/references/author/references/editing-operations.md +0 -75
  537. package/skills/uipath-maestro-bpmn/references/author/references/greenfield.md +0 -41
  538. package/skills/uipath-maestro-bpmn/references/author/references/planning-arch.md +0 -82
  539. package/skills/uipath-maestro-bpmn/references/author/references/planning-impl.md +0 -104
  540. package/skills/uipath-maestro-bpmn/references/author/references/plugins/agents/impl.md +0 -34
  541. package/skills/uipath-maestro-bpmn/references/author/references/plugins/agents/planning.md +0 -38
  542. package/skills/uipath-maestro-bpmn/references/author/references/plugins/api-workflows/impl.md +0 -37
  543. package/skills/uipath-maestro-bpmn/references/author/references/plugins/api-workflows/planning.md +0 -28
  544. package/skills/uipath-maestro-bpmn/references/author/references/plugins/business-rules/impl.md +0 -36
  545. package/skills/uipath-maestro-bpmn/references/author/references/plugins/business-rules/planning.md +0 -29
  546. package/skills/uipath-maestro-bpmn/references/author/references/plugins/call-activity-subprocess/impl.md +0 -67
  547. package/skills/uipath-maestro-bpmn/references/author/references/plugins/call-activity-subprocess/planning.md +0 -29
  548. package/skills/uipath-maestro-bpmn/references/author/references/plugins/connectors/impl.md +0 -29
  549. package/skills/uipath-maestro-bpmn/references/author/references/plugins/connectors/planning.md +0 -33
  550. package/skills/uipath-maestro-bpmn/references/author/references/plugins/gateways/impl.md +0 -32
  551. package/skills/uipath-maestro-bpmn/references/author/references/plugins/gateways/planning.md +0 -34
  552. package/skills/uipath-maestro-bpmn/references/author/references/plugins/hitl/impl.md +0 -42
  553. package/skills/uipath-maestro-bpmn/references/author/references/plugins/hitl/planning.md +0 -30
  554. package/skills/uipath-maestro-bpmn/references/author/references/plugins/integration-service/impl.md +0 -134
  555. package/skills/uipath-maestro-bpmn/references/author/references/plugins/integration-service/planning.md +0 -67
  556. package/skills/uipath-maestro-bpmn/references/author/references/plugins/multi-instance/impl.md +0 -50
  557. package/skills/uipath-maestro-bpmn/references/author/references/plugins/multi-instance/planning.md +0 -29
  558. package/skills/uipath-maestro-bpmn/references/author/references/plugins/queues/impl.md +0 -29
  559. package/skills/uipath-maestro-bpmn/references/author/references/plugins/queues/planning.md +0 -29
  560. package/skills/uipath-maestro-bpmn/references/author/references/plugins/rpa-jobs/impl.md +0 -35
  561. package/skills/uipath-maestro-bpmn/references/author/references/plugins/rpa-jobs/planning.md +0 -29
  562. package/skills/uipath-maestro-bpmn/references/author/references/plugins/script/impl.md +0 -118
  563. package/skills/uipath-maestro-bpmn/references/author/references/plugins/script/planning.md +0 -30
  564. package/skills/uipath-maestro-bpmn/references/author/references/plugins/sequence-flows/impl.md +0 -30
  565. package/skills/uipath-maestro-bpmn/references/author/references/plugins/sequence-flows/planning.md +0 -30
  566. package/skills/uipath-maestro-bpmn/references/author/references/plugins/service-tasks/impl.md +0 -33
  567. package/skills/uipath-maestro-bpmn/references/author/references/plugins/service-tasks/planning.md +0 -31
  568. package/skills/uipath-maestro-bpmn/references/author/references/plugins/signals/impl.md +0 -33
  569. package/skills/uipath-maestro-bpmn/references/author/references/plugins/signals/planning.md +0 -46
  570. package/skills/uipath-maestro-bpmn/references/author/references/plugins/start-end-events/impl.md +0 -59
  571. package/skills/uipath-maestro-bpmn/references/author/references/plugins/start-end-events/planning.md +0 -37
  572. package/skills/uipath-maestro-bpmn/references/author/references/plugins/waits-triggers/impl.md +0 -40
  573. package/skills/uipath-maestro-bpmn/references/author/references/plugins/waits-triggers/planning.md +0 -34
  574. package/skills/uipath-maestro-bpmn/references/author/references/supported-elements.md +0 -123
  575. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/README.md +0 -29
  576. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/agent-job.md +0 -36
  577. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/api-workflow.md +0 -29
  578. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/business-rule.md +0 -18
  579. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/call-activity.md +0 -56
  580. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/hitl.md +0 -17
  581. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/http-request.md +0 -119
  582. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/queue.md +0 -21
  583. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/rpa-job.md +0 -23
  584. package/skills/uipath-maestro-bpmn/references/author/references/validation.md +0 -118
  585. package/skills/uipath-maestro-bpmn/references/shared/bpmn-xml-contract.md +0 -197
  586. package/skills/uipath-maestro-bpmn/references/shared/cli-conventions.md +0 -46
  587. package/skills/uipath-maestro-bpmn/references/shared/error-handling.md +0 -82
  588. package/skills/uipath-maestro-bpmn/references/shared/variables-bindings-expressions.md +0 -150
  589. package/skills/uipath-maestro-bpmn/references/shared/wrapper-shells.md +0 -554
  590. /package/skills/uipath-maestro-bpmn/references/{shared/expression-authoring.md → expression-authoring.md} +0 -0
  591. /package/skills/uipath-maestro-bpmn/references/{shared/public-safety.md → public-safety.md} +0 -0
  592. /package/{agents → skills/uipath-rpa/agents}/uipath-project-discovery-agent.md +0 -0
@@ -0,0 +1,95 @@
1
+ ---
2
+ confidence: medium
3
+ ---
4
+
5
+ # CV — Server errors: auth (401), unreachable (403/5xx), throttling (429), payload/word limits, network
6
+
7
+ ## Context
8
+
9
+ All five CV activities share one transport stack and one throw site. When the CV analysis response is `null`, carries an `Error`, carries a `LocalServerError`, or has `OCRWordLimitPassed = true`, `CVSessionData.Compute` throws `System.ArgumentException` whose message is built by `cvData.ToErrorMessageWithCode()` — the `[Error code: <code>] <text>` strings below. There is **no handshake at scope entry**: CV Screen Scope (`CVScope`) only resolves the target window and publishes session data. Server reachability, auth, and throttling surface lazily on the **first child activity's first refresh** — so `scope succeeded but first CV Click fails with a server error` is normal and does NOT mean the scope is misconfigured.
10
+
11
+ What this looks like — match on message text (the leading `[Error code: N]` is informational; do not pattern-match the digits alone):
12
+
13
+ - `[Error code: 401] Computer Vision cannot be enabled: the current user is not authenticated.` — auth. (`ResponseInvalidApiKey`; full text continues with login / API-key paste instructions.)
14
+ - `[Error code: 403] The specified Computer Vision server '<server>' could not be reached.` — forbidden / blocked path. (`ResponseForbiddenError`; continues with firewall/VPN guidance. `<server>` = the configured `Server` URL.)
15
+ - `The specified Computer Vision server could not be reached.` — unreachable (`ResponseInvalidServer`, mapped from 502/503/504/408). No server name in this variant.
16
+ - `The Computer Vision server encountered an error.` — server-side fault (`ResponseServerError`, 500).
17
+ - `The requested data exceeds the maximum payload accepted by the server.` — payload too large (`ResponseEntityTooLarge`, 413).
18
+ - `[Error code: 429] Computer Vision rate limit exceeded.` — throttling, optionally followed by `Please try again in <seconds> seconds.` (`CVResponseThrottling` + `PleaseRetryAfterSeconds`). Full text mentions free-tier upgrade.
19
+ - `Error while sending request.` — network/transport. Followed by the raw `HttpRequestException` text (DNS, TLS `The SSL connection could not be established`, proxy, connection refused). (`ErrorWhileSending`.)
20
+ - `Response from server is not valid.` — generic fall-through (`ResponseNotValid`). **This is the masking case** — see the trap note below.
21
+ - `The ComputerVision server has hit the maximum number of words it is able to identify (<count>). Please indicate a screen with less words.` — OCR word limit, cloud (`MaxOCRCloud`). Local-server variant: `UiPath.ComputerVision.LocalServer has hit the maximum number of words it is able to identify (<count>). Please indicate a screen with less words.` (`MaxOCR`). Thrown even on HTTP 200.
22
+ - `Server URL is empty and UseLocalServer option is false` — no server configured at runtime (`ComputerVisionServerNotSet`).
23
+
24
+ What activities can produce this error:
25
+ - **CV Screen Scope** (`CVScope`) — on its own session-refresh path (debug/healing sample lookup).
26
+ - **CV Click** (`CvClickWithDescriptor`), **CV Type Into** (`CvTypeIntoWithDescriptor`), **CV Get Text** (`CvGetTextWithDescriptor`) — on the find/refresh that triggers a server analysis call.
27
+ - **CV Element Exists** (`CvElementExistsWithDescriptor`) — **faults** (throws this `ArgumentException`) on server errors. It only swallows `ElementNotFoundException` (→ `Result = false`); a server/auth/throttle error is NOT converted to `false` and still throws.
28
+
29
+ What can cause it (ordered most→least common):
30
+ - **Wrong/expired/revoked `ApiKey`, or robot not authenticated to the licensed Automation Cloud tenant** → 401. On a cloud URL the client first sends the `ApiKey` as `X-UIPATH-License`; a 401 marks the key unauthorized and silently falls back to an `X-UIPATH-Token` from the access provider (refreshing once). The 401 message surfaces only after **both** the key and the token fallback fail. On a non-cloud `Server` URL there is no token fallback.
31
+ - **Firewall / VPN / proxy / DNS / TLS blocking the server** → 403 (`ResponseForbiddenError`), 502/503/504 (`ResponseInvalidServer`), or `Error while sending request.` / `Response from server is not valid.` (transport).
32
+ - **Free-tier / shared-key rate limit** → 429. Retried internally (see Version/retry note) before surfacing.
33
+ - **Screenshot too large** → 413 — very high-resolution or multi-monitor scope regions.
34
+ - **On-prem / local CV server down or overloaded** → 500 (`ResponseServerError`) or 503.
35
+ - **Text-dense screen** → OCR word limit (scope set on the whole desktop instead of one window, full-screen spreadsheets/terminals).
36
+ - **`Server` URL unset at runtime** → `Server URL is empty and UseLocalServer option is false` (Project Settings server URL cleared, or `Server` arg evaluates to empty string, with `UseLocalServer = false`).
37
+
38
+ > **Retry/timing note:** HTTP 429 and 520 (Cloudflare "unknown error") are retried internally every 2s within a window of `2 × TimeoutMS` (default `TimeoutMS = 30000`) before the throttled response surfaces. The job therefore **appears slow, then fails** — a single transient 429 is absorbed transparently if the server recovers in-window. `LocalServerError` responses bypass this retry loop and surface immediately.
39
+
40
+ > **Pattern-matching trap — `Response from server is not valid.`:** transport exceptions (`HttpRequestException`, DNS, TLS, proxy) are caught in the client and converted to a response with `ErrorMessage` set. When no status code is attached, the message becomes `Error while sending request.` + raw text. When the body is unparseable or empty with no status, it falls through to the **generic** `Response from server is not valid.`, which **masks the real network error**. The underlying cause is visible only in the trace/runtime-dump logs, not the surfaced message. Do not conclude "server returned garbage" from this string alone — check the trace.
41
+
42
+ > **Different cause, do not apply this playbook:**
43
+ > - `Element not found` / descriptor match failed within timeout (no `[Error code]`, no server text) — the call reached the server and returned, but the descriptor did not match. Use [cv-element-not-found.md](./cv-element-not-found.md).
44
+ > - CV Screen Scope fails to resolve the **target window** or local-server prerequisites (`Please make sure you have UiPath.ComputerVision.LocalServer package installed...`, `...requires Microsoft Visual C++ Redistributable...`, `...requires a processor that accepts AVX2...`, or `Server or OCR engine is required.` at design time) — use [cv-scope-setup-failures.md](./cv-scope-setup-failures.md).
45
+ > - `Invalid Descriptor` (`InvalidDescriptorException`) — missing `Target`, broken image references, parse failure. Use [cv-invalid-descriptor.md](./cv-invalid-descriptor.md).
46
+ > - CV Element Exists returns `false` (no exception) when you expected an error, or `ContinueOnError = true` swallowed a fault — use [cv-silent-failures-and-false-results.md](./cv-silent-failures-and-false-results.md).
47
+ > - `System.OperationCanceledException` / `TaskCanceledException` — job stop / parent cancellation, not a server error.
48
+
49
+ ## Investigation
50
+
51
+ 1. **Capture the exact surfaced message** and the `[Error code: N]` if present. This is the primary routing key — map it to a branch below.
52
+ 2. **Read the scope's transport properties** from the faulted activity's enclosing `CVScope`: `Server`, `ApiKey`, `UseLocalServer`, `CvMethod`, `TimeoutMS`. (For runtime-bound values, confirm what they evaluated to — `Server`/`ApiKey` may be expressions.)
53
+ 3. **Check the trace / runtime-dump logs** when the message is generic (`Response from server is not valid.`) or transport (`Error while sending request.`) — the masked HTTP status, DNS/TLS detail, or swallowed client exception is recorded there, not in the surfaced message. The runtime JSON dump is written by the dump service just before the throw.
54
+ 4. **Establish whether the failure is deterministic or volume/timing-driven.** 429 follows a burst (loops, many robots on one key) and may succeed on re-run later; 401/403/`Server URL is empty` are deterministic and fail every run regardless of load.
55
+ 5. **Confirm cloud vs on-prem `Server`.** Cloud (`cloud.uipath.com` family) has the ApiKey→token fallback; an on-prem URL sends `ApiKey` as `X-UIPATH-License` with no fallback, so a stale key fails harder there.
56
+
57
+ ## Resolution
58
+
59
+ Match the surfaced message to a branch. Each branch names the evidence that confirms it and the evidence that rules it OUT — do not apply a fix the evidence doesn't support.
60
+
61
+ ### Branch A — Auth (401): `Computer Vision cannot be enabled: the current user is not authenticated.`
62
+ Evidence: `[Error code: 401]`; fails on every run; `ApiKey` is set on the scope or in Project Settings. On a cloud URL this means **both** the `ApiKey` header and the access-token fallback were rejected.
63
+ Ruled out when: the message is 403/5xx (reachability, not auth) or a transport string — those are not auth failures; do not rotate the key for them.
64
+ Fix (user/config-side): verify the `ApiKey` is current — copy a fresh key from Automation Cloud > Admin > Licenses > Robots & Services into Project Settings > Computer Vision > API Key, OR ensure the robot is signed in to the licensed cloud tenant so the token fallback can authenticate. Confirm the tenant license includes CV entitlement. **Silent auth degradation:** if the workflow "used to work," a rotated/revoked key now silently falls back to the interactive token and only fails when that path also lacks entitlement — treat a sudden 401 after a key rotation as the rotated key.
65
+
66
+ ### Branch B — Server unreachable / forbidden (403, 502/503/504, 500)
67
+ Evidence: `[Error code: 403] The specified Computer Vision server '<server>' could not be reached.` (forbidden / intermediary block), or `The specified Computer Vision server could not be reached.` (502/503/504/408), or `The Computer Vision server encountered an error.` (500). Deterministic for 403; intermittent for 5xx if the server is overloaded.
68
+ Ruled out when: the message is 401 (auth) or 429 (throttle).
69
+ Fix (user/infra-side): verify the `Server` URL is correct and reachable from the robot host. Check firewall / VPN / proxy / TLS-inspection rules allow the CV endpoint. For on-prem CV server, confirm the server process is up and not overloaded (500/503). This is an infrastructure fix, not a workflow edit.
70
+
71
+ ### Branch C — Throttling (429)
72
+ Evidence: `[Error code: 429] Computer Vision rate limit exceeded.`, optionally `Please try again in <seconds> seconds.`; the job ran slow (internal 2s retries over the `2 × TimeoutMS` window) before failing; follows a burst of CV calls or many robots sharing one `ApiKey`; same workflow may pass on re-run with less load.
73
+ Ruled out when: the failure is deterministic and load-independent — that is auth/reachability, not throttling. Do NOT "fix" a 401/403 by adding backoff.
74
+ Fix (user-side): reduce CV call rate — fewer CV activities per loop iteration, lower concurrency/parallel robots on the shared key, add backoff/Retry around the CV step honoring the `Please try again in <seconds>` hint, stagger scheduled jobs. If on a free/community tier, upgrade the license. Raising `TimeoutMS` only widens the internal retry window (mitigation), it does not raise the rate limit.
75
+
76
+ ### Branch D — Payload too large (413): `The requested data exceeds the maximum payload accepted by the server.`
77
+ Evidence: `ResponseEntityTooLarge`; scope `Target` is a very large region — full multi-monitor desktop or high-DPI capture.
78
+ Fix (user-side): narrow the scope `Target` to a single window/region instead of the whole desktop, reducing the screenshot the client base64-encodes and POSTs.
79
+
80
+ ### Branch E — OCR word limit: `...has hit the maximum number of words it is able to identify (<count>)...`
81
+ Evidence: `MaxOCRCloud` (cloud) or `MaxOCR` (`UiPath.ComputerVision.LocalServer ...`, local); thrown even on HTTP 200 because the response sets `OCRWordLimitPassed`. Scope covers a text-dense screen.
82
+ Fix (user-side): indicate a smaller, less text-dense region — scope a single pane/window rather than a full spreadsheet, terminal, or desktop. The `<count>` in the message is the server's cap.
83
+
84
+ ### Branch F — Network / transport: `Error while sending request.` or generic `Response from server is not valid.`
85
+ Evidence: `Error while sending request.` carries the raw `HttpRequestException` (DNS resolution failure, `The SSL connection could not be established`, proxy auth, connection refused). The generic `Response from server is not valid.` **masks** the same class — confirm via trace/dump (Investigation step 3) before concluding it is a malformed-response problem.
86
+ Ruled out when: the trace shows a clean HTTP status code (then it is one of Branches A–E, not transport).
87
+ Fix (user/infra-side): resolve robot-host networking — DNS for the CV endpoint, trusted root cert for TLS-inspection proxies, self-signed cert trust for on-prem, proxy credentials configured for the robot service.
88
+
89
+ ### Branch G — Server URL missing: `Server URL is empty and UseLocalServer option is false`
90
+ Evidence: `ComputerVisionServerNotSet` at runtime; `UseLocalServer = false` and `Server` (arg or Project Settings server URL) evaluated to empty.
91
+ Fix (user/config-side): set Project Settings > Computer Vision > Server URL, set the scope `Server` argument, or enable `UseLocalServer` if local mode is intended. If `Server` is bound to an expression, verify it doesn't evaluate to an empty string at runtime.
92
+
93
+ > **Local-server `LocalServerError` note:** when `UseLocalServer = true`, the same `[Error code: N]` throw path can carry a `LocalServerError`. Engine/install failures (`Please make sure you have UiPath.ComputerVision.LocalServer package installed...`, VC++ redistributable, AVX2, `Response from local server is not valid.`) are scope-setup problems — route to [cv-scope-setup-failures.md](./cv-scope-setup-failures.md). Only the `MaxOCR` local word-limit message (Branch E) belongs here.
94
+
95
+ If the surfaced message and the trace both rule out every branch above — the `ApiKey` is confirmed current and entitled, the `Server` is reachable from the robot host with no proxy/TLS/DNS interference, the load is modest with backoff in place, and the scope region and word count are within limits — the cause is outside the CV activity stack. Escalate (tenant-wide CV outage, license/entitlement change, or an upstream proxy/network event) rather than continue under this playbook. Do NOT recommend rotating keys, adding backoff, or shrinking the region when the evidence does not point to that branch.
@@ -0,0 +1,124 @@
1
+ ---
2
+ confidence: medium
3
+ ---
4
+
5
+ # CV — Silent failures and false results (ContinueOnError swallow, InRegion bypass, ElementExists false-negative/positive)
6
+
7
+ ## Context
8
+
9
+ What this looks like — **no exception is thrown**, yet a CV step behaved wrong. The job either succeeds with a wrong/empty/default output, or a later non-CV activity faults on a garbage value handed to it by a CV activity. There is no error message to match; diagnose from **output values, property settings, trace lines, and the CV dump file**.
10
+
11
+ Observable symptoms:
12
+ - **Click/Type fired at the wrong place** (or did nothing) but the activity reported success.
13
+ - **CV Element Exists** (`CvElementExistsWithDescriptor`) returned `True` when the element is plainly absent, or `False` when it is plainly present.
14
+ - **CV Get Text** (`CvGetTextWithDescriptor`) returned empty (`""`), `null`, or stale/previous-screen text.
15
+ - **OutRegion** consumed downstream is `(0,0,0,0)` (empty `Rectangle`) or a stale rectangle from a prior screen.
16
+ - The CV server, descriptor, or window is broken, but the workflow proceeded as if nothing happened — the only sign is a `Trace.TraceError` line and a `{timestamp}_ComputerVision` dump file written before the (swallowed) throw.
17
+
18
+ What activities can produce this:
19
+ - **CV Click** (`CvClickWithDescriptor`) — `ContinueOnError`, `InRegion` arguments.
20
+ - **CV Type Into** (`CvTypeIntoWithDescriptor`) — `ContinueOnError`, `InRegion` arguments; clipboard/focus side-paths.
21
+ - **CV Element Exists** (`CvElementExistsWithDescriptor`) — `Result`, `ContinueOnError`, `InRegion`, cell-targeting descriptor.
22
+ - **CV Get Text** (`CvGetTextWithDescriptor`) — `ContinueOnError`, `InRegion`, `MethodType` (OCR vs clipboard), `RefreshBefore`.
23
+ - **CV Screen Scope** (`CVScope`) — `ContinueOnError`, `CvMethod` (detection/OCR flags), `Server` / `UseLocalServer`.
24
+
25
+ What can cause it (most→least common):
26
+ - **`ContinueOnError = true` on a CV activity or the scope.** This is the dominant cause. The shared `Continuable*` base catches **every** exception (element-not-found, server `ArgumentException`, `InvalidDescriptorException`) when `ContinueOnError` evaluates true, traces it, and returns the activity's default output. Defaults: `CvElementExistsWithDescriptor` → `Result = false`; `CvGetTextWithDescriptor` → `Result = null`; `CvClickWithDescriptor` → still sets `OutRegion` to the default empty `Rectangle` `(0,0,0,0)`. A misconfigured server then looks identical to "element not found", and downstream logic proceeds on the default value with no signal the operation failed. `CVScope` is the one exception that still rethrows runtime-**governance** (`RuleViolationException`) faults — everything else it swallows.
27
+ - **`InRegion` is bound, which bypasses CV entirely.** When `InRegion` is set, the find pipeline uses that rectangle directly — **no descriptor matching, no screen analysis, no validation** that anything is at those coordinates. Consequences differ by activity: `CvElementExistsWithDescriptor` **always returns `True`** (the region is non-null → it counts as "found"); `CvClickWithDescriptor` / `CvTypeIntoWithDescriptor` **fire at those raw coordinates** wherever they land. A stale or wrong `InRegion` (e.g. a prior `OutRegion` reused after the screen changed, or after a resolution/DPI change) produces wrong-coordinate clicks and false-positive existence checks with no error.
28
+ - **`CvElementExistsWithDescriptor` converts infrastructure failures into `Result = false`** even with `ContinueOnError = false`. It catches `ElementNotFoundException` **by design** to return `false`. But a **closed/minimized target window or a failed screenshot** surfaces from session `RefreshAsync` as `ElementNotFoundException` too — so a broken target silently becomes `Result = false` (false negative), not an error. Note: other failure types (server `ArgumentException`, `InvalidDescriptorException`) still propagate from Element Exists when `ContinueOnError = false`.
29
+ - **Cell-targeting config errors are swallowed by `CvElementExistsWithDescriptor`.** A descriptor targeting a table cell throws its informative error as an `ElementNotFoundException`, so Element Exists turns even a clear config error (e.g. `Invalid column number 0`) into `Result = false`. The message survives only in the trace and the CV dump.
30
+ - **`CvMethod` flags disabled detection.** If the scope's `CvMethod` (or the `Section.CvScope` / `Property.CVMethod` project setting) is OCR-only or detection-only, the missing element family is served from a possibly-empty cache. Children just don't find their elements — no error from the scope. Server URL empty with no local server silently skips CV detection while OCR still runs.
31
+ - **Clipboard / OCR side-paths in Get Text swallow errors.** Clipboard mode (`MethodType = ClipboardRow`/`ClipboardAll`): `UiService` click/select/`Ctrl+C` catch `COMException` and return `false`, which Get Text ignores — a failed copy still "succeeds" with `null`/stale clipboard text. OCR mode: `DoOcr` swallows all OCR-engine exceptions and returns no words → empty result; `RefreshBefore = false` reuses a stale OCR cache from a prior screen.
32
+
33
+ What to look for:
34
+ - **`ContinueOnError`** on the failing CV activity AND on the enclosing `CVScope` — either being `true` enables the whole silent class.
35
+ - Whether **`InRegion`** is bound (wired from a variable / prior `OutRegion`), and whether that source could be stale.
36
+ - Trace lines: `Trace.TraceError` of a suppressed exception (the swallowed server/descriptor error), `Could not get screenshot`, OCR-failure traces.
37
+ - The **`{timestamp}_ComputerVision` CV dump file** — written just before a swallowed `ElementNotFoundException`; the primary forensic artifact for not-found and cell-targeting failures.
38
+ - The actual **output value**: `Result` (`false`/`null`/unexpected `true`), `OutRegion` = `(0,0,0,0)` or a stale rectangle.
39
+
40
+ > **Different cause, do not apply this playbook:**
41
+ > - The activity **threw** `UiPath.CV.ElementNotFoundException` (`Element not found`) and faulted the job — `ContinueOnError` is `false` and `InRegion` is not bound — use [cv-element-not-found.md](./cv-element-not-found.md).
42
+ > - The activity threw a **server error** (`[Error code: <N>] <message>`, 401/403/429/5xx, word-limit, local-server) — use [cv-server-auth-throttling-network.md](./cv-server-auth-throttling-network.md).
43
+ > - The activity threw `InvalidDescriptorException` (missing `Target`, broken image reference, parse failure) — use [cv-invalid-descriptor.md](./cv-invalid-descriptor.md).
44
+ > - `CVScope` itself faulted at setup (window resolution, missing/uninstalled local server, missing server/OCR config) before any child ran — use [cv-scope-setup-failures.md](./cv-scope-setup-failures.md).
45
+ > - The element **was found**, then Click/Type failed (focus, stale coordinates after find, blocked input, null `SecureString`) and threw — use [cv-action-failed-after-find.md](./cv-action-failed-after-find.md).
46
+ > - **Get Text threw**, or returned wrong text and you have ruled out `ContinueOnError`/`InRegion`/clipboard-vs-OCR — use [cv-get-text-empty-or-wrong-result.md](./cv-get-text-empty-or-wrong-result.md).
47
+ > - The element genuinely is below the fold and scroll-search did not reach it — use [cv-scroll-search-failures.md](./cv-scroll-search-failures.md).
48
+ > - A table cell was targeted and you have confirmed the table/row/column config is the problem (not the swallowing) — use [cv-cell-targeting-failures.md](./cv-cell-targeting-failures.md).
49
+
50
+ ## Investigation
51
+
52
+ 1. **Identify the symptomatic output.** Determine which is wrong: a wrong-location/no-op Click or Type, an unexpected `CvElementExistsWithDescriptor` `Result`, or an empty/null/stale `CvGetTextWithDescriptor` `Result`. This selects the branch below.
53
+ 2. **Read `ContinueOnError` on the failing activity AND on the enclosing `CVScope`.** Either `true` means errors are being suppressed and returned as defaults. Check the trace for a `Trace.TraceError` line carrying the suppressed exception — that text is the real error.
54
+ 3. **Check whether `InRegion` is bound.** If set, the activity skipped all CV detection and used the rectangle verbatim. Trace the source of that rectangle (prior `OutRegion`, a variable) and whether the screen / resolution / DPI changed since it was produced.
55
+ 4. **Locate the CV dump file** `{timestamp}_ComputerVision` for the run timestamp. Its presence indicates a not-found (or swallowed cell-targeting) condition occurred even if the activity reported success/`false`.
56
+ 5. **Inspect the target window state at run time** — closed, minimized, off-screen, or a locked/unattended session can fail the screenshot and surface as `ElementNotFoundException` (→ swallowed to `Result = false` in Element Exists).
57
+ 6. **Read the scope's `CvMethod` and `Server`/`UseLocalServer`** (and any `Section.CvScope` / `Property.CVMethod` project-setting override). A detection-or-OCR-disabled method, or empty server with no local server, silently yields no elements.
58
+ 7. **For Get Text:** read `MethodType` (OCR vs clipboard) and `RefreshBefore`. Clipboard mode is fragile on non-editable targets; `RefreshBefore = false` reuses stale OCR.
59
+
60
+ ## Resolution
61
+
62
+ Walk to the branch matching the symptom. Each names the evidence that confirms it and the evidence that rules it OUT.
63
+
64
+ ### Branch A — `ContinueOnError = true` is masking a real failure
65
+
66
+ Evidence: `ContinueOnError` is `true` on the failing CV activity or on the enclosing `CVScope`; the trace shows a `Trace.TraceError`-logged exception (server `ArgumentException`, `InvalidDescriptorException`, or `ElementNotFoundException`) at that activity; the output is the bare default (`Result = false`/`null`, `OutRegion = (0,0,0,0)`).
67
+
68
+ Ruled out when: no suppressed exception appears in the trace and no CV dump file exists for the run — then the activity genuinely succeeded and the wrong value has a different cause (try Branch B or C).
69
+
70
+ Fix: the swallowed exception **is** the bug. Diagnose it under the matching sibling playbook (server → [cv-server-auth-throttling-network.md](./cv-server-auth-throttling-network.md), descriptor → [cv-invalid-descriptor.md](./cv-invalid-descriptor.md), not-found → [cv-element-not-found.md](./cv-element-not-found.md)). Then recommend setting `ContinueOnError = false` on that activity (or scope) so the failure surfaces instead of returning a default, unless the author deliberately wants a best-effort step — in which case recommend an explicit guard on the output (check `Result`/`OutRegion` before downstream use). Do NOT recommend leaving `ContinueOnError = true` with unguarded downstream consumption.
71
+
72
+ ### Branch B — `InRegion` bypassed detection (false-positive Exists, wrong-coordinate Click/Type)
73
+
74
+ Evidence: `InRegion` is bound on the activity. For `CvElementExistsWithDescriptor`, `Result` is `True` regardless of screen content (and `OutRegion` equals the supplied `InRegion`). For Click/Type, the action landed at fixed coordinates unrelated to the descriptor. The supplied rectangle traces to a stale source (prior `OutRegion`, a hard-coded/old variable) or the screen/resolution/DPI changed between producer and consumer.
75
+
76
+ Ruled out when: `InRegion` is unbound/empty — detection ran normally; the wrong result is then Branch A or a genuine match/scroll/cell issue (route to the sibling playbooks).
77
+
78
+ Fix: stop relying on `InRegion` for validated targeting. Either clear `InRegion` so the activity matches the descriptor against the live screen, or recompute the region immediately before use from a fresh find. For an existence check, an `InRegion`-bound `CvElementExistsWithDescriptor` is meaningless — it cannot return `False`; replace it with a descriptor-based check. Confirm the producing activity ran on the same screen state and DPI as the consumer.
79
+
80
+ ### Branch C — Element Exists false negative: closed/minimized window or failed screenshot
81
+
82
+ Evidence: `CvElementExistsWithDescriptor` returned `False`, but the element is present when checked manually; a `{timestamp}_ComputerVision` dump exists; the target window was closed, minimized, off-screen, or the session was locked at run time; trace may show `Could not get screenshot`. `ContinueOnError = false` and `InRegion` unbound (otherwise Branch A/B).
83
+
84
+ Ruled out when: the target window was confirmed visible and foreground at run time and a screenshot succeeded — then `False` is a genuine descriptor mismatch, route to [cv-element-not-found.md](./cv-element-not-found.md).
85
+
86
+ Fix: ensure the target window is open, restored, and able to come to the foreground before the check (an unattended/locked session blocks the screenshot). The scope re-resolves its root window by cached selector until `TimeoutMS`; if the window legitimately may be absent, treat `False` as "could not verify" rather than "definitely absent" and add an explicit window-state guard upstream.
87
+
88
+ ### Branch D — Cell-targeting config error swallowed into `Result = false`
89
+
90
+ Evidence: the descriptor targets a **table cell**; `CvElementExistsWithDescriptor` returned `False`; the CV dump / trace contains an informative cell message such as `Invalid column number <N>`, `Table only contains <N> columns and column number is <M>`, `Invalid row number <N>`, `Could not find table. Cell targeting supports only tables as target`, or `Table does not have any column with column name containing <name>`. These never reach the workflow level because Element Exists swallows them.
91
+
92
+ Ruled out when: the descriptor does not target a cell, or no cell message appears in the trace/dump — then it is a plain match failure (Branch C / not-found).
93
+
94
+ Fix: this is a configuration error, not an absent element. Correct the cell descriptor per the captured message (column/row index must be ≥ 1 and within range; column-name/row-contains text must match the extracted table text). Diagnose the cell config under [cv-cell-targeting-failures.md](./cv-cell-targeting-failures.md). Recommend switching off the swallowing path (validate the cell config with a throwing CV activity, or set `ContinueOnError = false` and read the surfaced message) so the informative error is no longer lost.
95
+
96
+ ### Branch E — Get Text returns null / empty / stale silently
97
+
98
+ Evidence: `CvGetTextWithDescriptor` `Result` is `null` (→ check Branch A; `ContinueOnError = true` yields `null`), `""`, or text from a previous screen. Clipboard mode (`MethodType = ClipboardRow`/`ClipboardAll`) on a non-editable target, focus stolen between click and `Ctrl+C`, or another process holding the clipboard → empty/stale; the click/copy `COMException` is swallowed. OCR mode with `RefreshBefore = false` reuses a stale OCR cache; a swallowed OCR-engine failure yields zero words → `""`.
99
+
100
+ Ruled out when: `ContinueOnError = false`, `MethodType` matches the target type (clipboard only for editable/selectable text), and `RefreshBefore = true` — then route detailed wrong-text diagnosis to [cv-get-text-empty-or-wrong-result.md](./cv-get-text-empty-or-wrong-result.md).
101
+
102
+ Fix: pick the right mode — use OCR mode for non-editable on-screen text; use clipboard mode only for selectable/editable inputs. Set `RefreshBefore = true` when the screen changed since the prior CV activity. If `ContinueOnError = true`, see Branch A.
103
+
104
+ ### Branch F — `CvMethod` disabled the needed detection family
105
+
106
+ Evidence: multiple children in the scope silently find nothing (or only text, or only controls); the scope's `CvMethod` (or `Section.CvScope` / `Property.CVMethod` project setting) is OCR-only or detection-only, or `Server` is empty with no local server. No error from the scope.
107
+
108
+ Ruled out when: `CvMethod` includes both element detection and OCR and a server (cloud or local) is configured — then missing elements are a genuine match failure or server issue, not a disabled method.
109
+
110
+ Fix: set `CvMethod` to include the families the descriptors need (control detection for control descriptors, OCR for text descriptors), and ensure a `Server` URL or `UseLocalServer` is configured so detection can run. This is a scope-setting change — see also [cv-scope-setup-failures.md](./cv-scope-setup-failures.md).
111
+
112
+ ## Post-presentation actions
113
+
114
+ This resolution path is **interactive** whenever the fix edits the user's workflow — changing `ContinueOnError`, clearing or rebinding `InRegion`, changing `MethodType` / `RefreshBefore`, correcting a cell descriptor, or changing the scope's `CvMethod`. The orchestrator MUST call `AskUserQuestion` before any edit, and follow these rules:
115
+
116
+ 1. **Sharing a file path is not approval.** A path the user gave for reading the project does not authorize editing it. Issue a separate `AskUserQuestion` before any edit.
117
+ 2. **Never bundle "gather input" with "apply fix" in one option.** Split into two steps: gather the input, then surface the specific diff and confirm separately.
118
+ 3. **Surface the concrete diff before asking** — file path, activity `IdRef` or line, current value, proposed value (e.g. `ContinueOnError: True → False`, `InRegion: <bound> → <unbound>`, `CvMethod: OcrOnly → ControlsAndOcr`).
119
+ 4. **One question per file/fix; list every file touched** (e.g. XAML plus any mirrored Object Repository file). Do not silently propagate a substitution to side-channel files.
120
+ 5. **If interactive approval is unavailable or errors, do not edit.** Present the diff as a recommendation and stop. A recommendation-only close is acceptable; a silent edit is never acceptable.
121
+
122
+ ## Stop / escalate
123
+
124
+ If `ContinueOnError` is `false` on the activity and scope, `InRegion` is unbound, the target window was visible and foreground (screenshot succeeded), `CvMethod` includes the needed families with a reachable server, Get Text uses the correct mode with `RefreshBefore = true`, and no swallowed exception or cell message appears in the trace or the `{timestamp}_ComputerVision` dump — then the wrong result is NOT a silent-suppression artifact. Stop applying this playbook and route by what actually happened: a genuine match failure ([cv-element-not-found.md](./cv-element-not-found.md)), a server error ([cv-server-auth-throttling-network.md](./cv-server-auth-throttling-network.md)), or a post-find action failure ([cv-action-failed-after-find.md](./cv-action-failed-after-find.md)). Do not recommend toggling `ContinueOnError` or `InRegion` when the evidence does not show suppression — that is a fabricated fix.
@@ -0,0 +1,8 @@
1
+ # Computer Vision (CV) Activities Presentation Rules
2
+
3
+ - **Activities** — use the display name in prose (e.g., "CV Click", "CV Type Into", "CV Get Text", "CV Element Exists", "CV Screen Scope"), not the fully qualified class name. Include the class name in parentheses on first mention so an agent can match a stack trace (e.g., "CV Click (`CvClickWithDescriptor`)"). Don't lead with the class name.
4
+ - **Descriptor target** — refer to the target by its friendly / label text or what the user would see on screen (e.g., "the 'Submit' button", "the 'Total' cell in the invoice table"), not by the raw descriptor JSON or serialized payload. Describe anchors the same way (e.g., "anchored to the 'Amount' label").
5
+ - **Do not show raw descriptor payloads** — never paste the serialized `CvDescriptor` / descriptor JSON as the primary identifier. Show the descriptor's expression text or `IdRef` only when the diagnostic requires it (e.g., the invalid-descriptor case where the `Descriptor value: '<expression>'` itself is what failed).
6
+ - **CV server** — refer to the server by its URL (the configured `Server` value, e.g., `<serverUrl>`) or as "the local server" when `UseLocalServer = true`, not by internal config IDs. State whether it is cloud or local when it matters for the diagnostic.
7
+ - **Scope** — refer to the container as "the CV Screen Scope", and name its relevant config in plain language (e.g., "the scope's OCR engine", "the scope's server URL"), not by raw property paths unless surfacing a concrete fix diff.
8
+ - **Properties / enum values** — name properties and enum values as the activity surfaces them (`TimeoutMS`, `ContinueOnError`, `InRegion`, `RefreshBefore`, `MethodType = OCR`), and state in plain language what a recommended change does (e.g., "set `RefreshBefore = true` so it re-reads the current screen before extracting text").
@@ -0,0 +1,15 @@
1
+ # Computer Vision (CV) Activity Playbooks
2
+
3
+ **Investigation guide:** [investigation_guide.md](./investigation_guide.md) — data correlation rules, cross-cutting error-class routing, and testing prerequisites for Computer Vision Activities investigations
4
+
5
+ | Issue | Confidence | Description | Playbook |
6
+ |-------|:---:|-------------|----------|
7
+ | Invalid Descriptor | High | `UiPath.CV.InvalidDescriptorException`, thrown synchronously when the activity resolves the `Descriptor` argument — **before any find attempt**. Composite message: `Invalid Descriptor` + optional `Reason: Target must be set` (null `Target`) or `Reason: Invalid image reference or value` (image refs unresolvable across a copied descriptor) + `Descriptor value: '<expression>'`. No `Reason:` line = the expression failed to evaluate/parse (cause traced, not attached). `CvElementExistsWithDescriptor` **FAULTS** here (does not return `false`). Hits programmatically built / copied / hand-edited descriptors. Distinct from `ElementNotFoundException`, which throws after a find ran. | [cv-invalid-descriptor.md](./playbooks/cv-invalid-descriptor.md) |
8
+ | Cell-Targeting Failures | High | `UiPath.CV.ElementNotFoundException` carrying one of nine cell-specific sentences (`Could not find table. Cell targeting supports only tables as target`, `Table only contains <count> columns and column number is <n>`, `Invalid column number <n>`, `Table does not have any column with column name containing <name>`, `Invalid row number <n>`, `No row in column <c> had a text containing <v>`, etc.) on `Cv*WithDescriptor` whose `Descriptor.Target.CellExtraInfo` is set. Table not detected, index out of range or `< 1` (1-based), column-name/row-value mismatch, scrolled-row drift. Trap: `Version < V3` disables cell targeting and surfaces the **generic `Element not found`** instead. `CvElementExistsWithDescriptor` swallows the sentence to `Result = false`. Distinct from plain not-found (generic message, non-cell target). | [cv-cell-targeting-failures.md](./playbooks/cv-cell-targeting-failures.md) |
9
+ | Element Not Found | Medium | `UiPath.CV.ElementNotFoundException` / `Element not found` after the retry loop exhausts `TimeoutMS` (timeout has NO separate exception type). Three root causes share the message — genuine UI-changed mismatch, scope-refresh failure (`Could not get screenshot` traced, blank dump screenshot), OCR degradation (text on screen but dump's detected text empty). `CvElementExistsWithDescriptor` returns `Result = false`. The `*_ComputerVision` dump screenshot is the primary discriminator. Distinct from scroll-exhausted (`Scrolled...`), cell sentences, and `InvalidDescriptorException`. | [cv-element-not-found.md](./playbooks/cv-element-not-found.md) |
10
+ | Scroll-Search Failures | Medium | `Scrolled the entire screen, but element was not found` (`ElementNotFoundException`, hardcoded English, not localized) on a find activity with `ScrollDirection != None`. Wrong scroll axis, scroll point (scope center + `CVScope.ScrollOffset`) off the scrollable pane, `NumberOfScrolls` too high (element skipped between frames), `DelayScreenshotAfterScroll` too short, silent scroll-skip when scope root is not a CV driver element, or genuine absence. Side effect: reset types `Ctrl+Home`/`Ctrl+End` into the app. `CvElementExistsWithDescriptor` swallows it to `false`. The word `Scrolled` is the discriminator from plain [cv-element-not-found.md](./playbooks/cv-element-not-found.md). | [cv-scroll-search-failures.md](./playbooks/cv-scroll-search-failures.md) |
11
+ | Server: Auth / Throttling / Network | Medium | `System.ArgumentException` built by `CVSessionData.Compute` / `ToErrorMessageWithCode()`, `[Error code: <N>]` text: `401` auth (`...current user is not authenticated.`), `403`/502/503/504/500 unreachable (`The specified Computer Vision server '<server>' could not be reached.`), `429` throttling (`Computer Vision rate limit exceeded.`, retried 2s over `2xTimeoutMS` -> slow-then-fail), `413` payload, cloud OCR word limit (`...maximum number of words...`), transport (`Error while sending request.`, masking `Response from server is not valid.`), `Server URL is empty and UseLocalServer option is false`. Surfaces lazily on a child's first refresh, NOT at scope entry. `CvElementExistsWithDescriptor` **faults** (only swallows not-found). Match text, not HTTP digits. Local-server install errors -> scope-setup. | [cv-server-auth-throttling-network.md](./playbooks/cv-server-auth-throttling-network.md) |
12
+ | Scope Setup Failures | Medium | Fault at `CVScope` entry **before any child activity ran** (scope rethrows the inner fault unwrapped). `Please make sure you have UiPath.ComputerVision.LocalServer package installed...` (`System.ArgumentException`, `UseLocalServer=true`, package absent on the run machine), `Server or OCR engine is required.` (design-time, run blocked), `The target Element was not specified for this activity.` (`ElementNotSetException`, root selector `COMException` on a matched window, or `Target` genuinely null), AVX2 / `Microsoft Visual C++ Redistributable 2015-2022` local-server prerequisites, design-time placement (`Activity is valid only inside a CV Screen Scope`, nested scope, `Descriptor or InputRegion is required`), raw `NullReferenceException` (child outside scope at runtime). Distinct from server errors during a child's analysis call. | [cv-scope-setup-failures.md](./playbooks/cv-scope-setup-failures.md) |
13
+ | Action Failed After Find | Medium | Find **succeeded**, the click/keystroke failed or hit the wrong place. CV acts on screenshot-derived **coordinates** (hardware events forced). Signatures: raw driver/`COMException` with NO `UiPath.CV.*` type and no CV resource key (`UninitializedNodeException`->`ElementNotSetException` / `The target Element was not specified for this activity.`); `Value cannot be null. (Parameter 'Secure')` (`ArgumentNullException`, CV Type Into null `SecureString`); an unwrapped non-CV type (e.g. `InvalidOperationException`) rethrown from the find task; or **no error** with `OutRegion = (0,0,0,0)` / empty-stale clipboard `Result`. Window moved between analysis and action, focus stolen, input blocked (locked/RDP/UAC), or non-editable clipboard target. No `*_ComputerVision` dump (that is written only when the find throws). | [cv-action-failed-after-find.md](./playbooks/cv-action-failed-after-find.md) |
14
+ | Get Text Empty / Stale / Wrong | Medium | `CvGetTextWithDescriptor` **completed without faulting** but `Result` is empty / `null` / stale / partial / wrong (no exception to match). OCR mode: silent OCR scrape failure (swallowed -> empty), stale cache (`RefreshBefore = false`), region-edge clipping (only words overlapping `OutRegion` composed), language/accents mismatch. Clipboard mode (`MethodType = ClipboardRow`/`ClipboardAll`): non-editable target, focus theft, or another process holding the clipboard -> empty/stale silently (100ms read timeout swallowed). `Scroll = true` + OCR stitch hang (NOT bounded by `TimeoutMS`). `MethodType` splits the branches. Distinct from a thrown `ElementNotFoundException` / server error. | [cv-get-text-empty-or-wrong-result.md](./playbooks/cv-get-text-empty-or-wrong-result.md) |
15
+ | Silent Failures & False Results | Medium | **No exception**, wrong/empty/default output — diagnose from outputs, properties, trace, and the `*_ComputerVision` dump. `ContinueOnError = true` on the activity or `CVScope` catches every exception (`ElementNotFoundException`, server `ArgumentException`, `InvalidDescriptorException`) -> default output (`Result = false`/`null`, `OutRegion = (0,0,0,0)`); `Trace.TraceError` holds the real error. `InRegion` bound bypasses CV entirely -> `CvElementExistsWithDescriptor` **always `True`**, Click/Type fire at raw coordinates. `CvElementExistsWithDescriptor` converts closed/minimized-window / failed-screenshot to `Result = false` (false negative) and swallows cell-config errors. `CvMethod` disabling a detection family. Distinct from any case where the activity actually threw. | [cv-silent-failures-and-false-results.md](./playbooks/cv-silent-failures-and-false-results.md) |
@@ -0,0 +1,42 @@
1
+ # Database Activities Investigation Guide
2
+
3
+ ## Data Correlation
4
+
5
+ Before using any fetched data, verify it matches the user's reported problem:
6
+
7
+ - **Activity** — the faulted activity's class matches the reported failure (`UiPath.Database.Activities.ExecuteQuery`, `ExecuteNonQuery`, `ExecuteCommand`, `DatabaseConnect`, `DatabaseTransaction`, `BulkUpdate`). `Execute Query` (SELECT → `DataTable`) and `Execute Non Query` (modification → `AffectedRecords`) share a connection model but differ in output type — treat a wrong-activity report as its own branch.
8
+ - **Database / connection** — the `ProviderName` and the server/database in the `ConnectionString` match the database the user is asking about. A connection string pointing at a different server, database, or provider is unrelated data.
9
+ - **SQL statement** — the `Sql` in evidence is the statement the user reports running. Do not substitute a similar query from another activity in the same workflow.
10
+ - **Project compatibility** — whether the project is **Windows** or **Windows - Legacy**, and whether the failure began right after a migration. Load-bearing for provider/driver-mismatch findings.
11
+ - **Robot / machine identity** — the Robot host where the job ran matches the one the user reports. Installed database drivers (ODBC/managed providers) are per-host; evidence from a different host is not transferable.
12
+ - **Package version** — the `UiPath.Database.Activities` version on the Robot matches the one the user reports. Provider-path behaviour and exception text shift across major versions.
13
+ - **Timestamp** — the failure occurred during the window the user reported. Load-bearing for timeout and CLR-crash investigations (transient blocking / memory pressure may not reproduce on demand).
14
+
15
+ If the data doesn't match: **discard it**. Do NOT use unrelated data as a proxy. Report the mismatch and ask for clarification.
16
+
17
+ ### Execute Query / Execute Non Query / Run Command
18
+
19
+ 1. **Workflow source** — read the data-activity node from the `.xaml` to capture: how the connection is supplied (`ExistingDbConnection` variable vs inline `ConnectionString` + `ProviderName`), the literal `Sql` or bound expression, `CommandType`, `Parameters`, and `TimeoutMS`. For `ExistingDbConnection`, trace the variable back to the `Connect to Database` / `Start Transaction` that produces it and confirm scope and ordering.
20
+ 2. **Inner provider exception** — from `uip or jobs get <job-key> --output json` → `Info`. UiPath wraps the provider error as `A database error occurred` / `Execute Query: <message>`; read the **inner** exception — it carries the real syntax error, provider code (`ORA-…`, SQL Server error number), or `Keyword not supported` text.
21
+ 3. **Project compatibility + package version** — `project.json` (`targetFramework` / `Windows` vs `Windows-Legacy`) and the pinned `UiPath.Database.Activities` version. Required for provider-mismatch and CLR-crash branches.
22
+ 4. **Property placement** — confirm the `SELECT` text is in the `Sql` property and the connection string is in `ConnectionString` (not crossed), and that the connection string's quotes are balanced.
23
+ 5. **Result-set size / provider** — the expected row count the query materializes into a `DataTable`, and whether the engine is Oracle returning a `REF CURSOR`. Required for the `0xE0434352` CLR-crash branch.
24
+
25
+ ### Connect to Database / Start Transaction
26
+
27
+ 1. **Connection configuration** — the literal `ConnectionString` and `ProviderName` on the activity, and whether the matching driver is installed on the Robot host.
28
+ 2. **Output variable wiring and scope** — the `DatabaseConnection` output variable name, the scope it is declared in, and every downstream data activity that reads it. A connection declared inside a nested `Sequence` is out of scope (and `Nothing`) for activities outside it.
29
+ 3. **Transaction commit/rollback outcome (Start Transaction only)** — correlate the **job final state** with the **actual database effect** and the in-scope activity logs: a `Success` job with no committed data, or with no child-activity log lines at all, points to a transaction-specific fault (swallowed rollback or a body-skip package bug) rather than a child-statement error. Capture the `UiPath.Database.Activities` version (v1.5.0 is the known body-skip build) and confirm whether each child activity binds the scope's output connection to its `ExistingDbConnection` (a child on its own inline connection runs outside the transaction). See [start-transaction-failures.md](./playbooks/start-transaction-failures.md).
30
+
31
+ ## Testing Prerequisites
32
+
33
+ When testing hypotheses for Database Activities issues, gather and verify these before drawing conclusions:
34
+
35
+ 1. **Activity identity** — the exact faulted class and its display name; whether the statement verb matches the activity (SELECT→Execute Query, modification→Execute Non Query).
36
+ 2. **Connection provenance** — inline connection vs `ExistingDbConnection`; if the latter, the producing `Connect`/`Start Transaction`, its output variable, scope, and execution order relative to the faulted activity.
37
+ 3. **Inner provider message** — the unwrapped provider exception text and code, not just the UiPath `A database error occurred` wrapper.
38
+ 4. **`Sql` and `Parameters`** — the resolved statement (log it if built from an expression) and whether values are parameterized (`@name` via `Parameters`) or concatenated into the string.
39
+ 5. **`ProviderName` + driver availability** — the configured provider and whether its driver is installed on every Robot host that runs the process.
40
+ 6. **Project compatibility** — Windows vs Windows-Legacy, and whether the failure coincided with a migration.
41
+ 7. **`TimeoutMS` + DB-side duration** — the configured timeout (milliseconds) and the query's real runtime measured independently against the database.
42
+ 8. **Package version** — the `UiPath.Database.Activities` version (provider-path and CLR-crash branches are version-sensitive).
@@ -0,0 +1,41 @@
1
+ # Database Activities
2
+
3
+ Activities from the `UiPath.Database.Activities` package for querying and modifying relational databases over ADO.NET. Every data activity runs against a `DatabaseConnection` opened by a `Connect to Database` or `Start Transaction` activity, or against an inline `ConnectionString` + `ProviderName` configured on the activity itself. The underlying provider (SQL Server, Oracle, MySQL, ODBC, OLE DB, …) is selected by `ProviderName` and determines connection-string syntax and error text.
4
+
5
+ ## How Database Activities Connect
6
+
7
+ The package separates **connection** from **execution**:
8
+
9
+ 1. **Open** — `Connect to Database` (`DatabaseConnect`) or `Start Transaction` (`DatabaseTransaction`) takes a `ConnectionString` + `ProviderName` and produces a `DatabaseConnection` object as output.
10
+ 2. **Execute** — `Execute Query`, `Execute Non Query`, `Run Command`, and the bulk/insert activities consume that connection via their `ExistingDbConnection` input (or carry their own inline `ConnectionString` + `ProviderName` and open a throwaway connection per call).
11
+ 3. **Close** — `Disconnect`, the end of the `Connect to Database` scope, or the `Start Transaction` commit/rollback releases the connection.
12
+
13
+ A data activity therefore fails for one of two broad reasons: the **connection** it was handed is missing/invalid/expired (open step), or the **statement** it ran is wrong (execute step). Knowing which step produced the error narrows the investigation.
14
+
15
+ ## Key Activities
16
+
17
+ - **Connect to Database** (`DatabaseConnect`) — open a connection. Properties: `ConnectionString`, `ProviderName`, output `DatabaseConnection`. The connection variable's scope determines where downstream activities can use it. Connection-open failures (especially the Excel-as-a-database / ACE OLE DB case) are catalogued in the [Connect to Database failures playbook](./playbooks/connect-to-database-failures.md).
18
+ - **Start Transaction** (`DatabaseTransaction`) — open a connection inside a transactional scope; child activities run under one transaction, committed at scope end (or rolled back on fault). Properties: `ConnectionString`, `ProviderName`, `UseTransaction`, output `DatabaseConnection`.
19
+ - **Disconnect** (`DatabaseDisconnect`) — close a `DatabaseConnection`.
20
+ - **Execute Query** (`ExecuteQuery`) — run a `SELECT` and return a `DataTable`. Properties: `ExistingDbConnection` (or inline `ConnectionString`/`ProviderName`), `Sql`, `CommandType`, `Parameters`, `TimeoutMS` (milliseconds; default `30000`), output `DataTable`. See the [Execute Query failures playbook](./playbooks/execute-query-failures.md).
21
+ - **Execute Non Query** (`ExecuteNonQuery`) — run `INSERT`/`UPDATE`/`DELETE`/DDL and return the affected-row count. Properties as above, output `AffectedRecords` (`Int32`). Failures (output-parameter sizing, unsafe SQL/parameters, empty `Sql`, driver load) are catalogued in the [Execute Non Query failures playbook](./playbooks/execute-non-query-failures.md).
22
+ - **Run Command** (`ExecuteCommand`) — run a statement or stored procedure where the result shape is configured via `CommandType` (`Text` vs `StoredProcedure`). Properties: `ExistingDbConnection`/inline connection, `Sql` (command/proc name), `CommandType`, `Parameters`, `TimeoutMS`.
23
+ - **Insert / Bulk Update Database** (`BulkUpdate`) — write a `DataTable` to a target table. Properties: `ExistingDbConnection`/inline connection, `TableName`, the source `DataTable`, `TimeoutMS`.
24
+
25
+ ## Common Failure Patterns
26
+
27
+ `Execute Query` is the most failure-prone surface; its seven branches are catalogued in the [Execute Query failures playbook](./playbooks/execute-query-failures.md). The same connection- and provider-level patterns apply to `Execute Non Query`, `Run Command`, and the bulk activities:
28
+
29
+ - **Null / expired / out-of-scope connection** — the `DatabaseConnection` handed to a data activity is `Nothing`: the `Connect to Database` / `Start Transaction` did not run first, its output variable was never wired into `ExistingDbConnection`, the connection variable is scoped to an inner `Sequence`, or the connection was already disposed. Surfaces as `Object reference not set to an instance of an object`.
30
+ - **Driver / provider mismatch after migration** — after upgrading a project from **Windows - Legacy** (.NET Framework) to **Windows** (.NET 6+), the configured `ProviderName` or connection-string keywords are rejected by the modern provider (`Keyword not supported`), or the required driver is not installed on the Robot host. SQL Server commonly needs `System.Data.SqlClient` → `Microsoft.Data.SqlClient`; MySQL/other engines need their managed or ODBC driver installed.
31
+ - **SQL syntax / unsafe concatenation** — malformed `Sql`, or SQL built by string concatenation (`"... WHERE id = " + var`), which breaks parsing and is a SQL-injection risk. Surfaces as `Execute Query: A database error occurred` wrapping the provider's syntax error. Fix: parameterize with named `@parameters` via the `Parameters` collection.
32
+ - **Query text in the connection-string field** — the SQL statement was pasted into `ConnectionString` instead of `Sql`, or quotes in the connection string are unbalanced; the parser then chokes, often surfacing as a misleading "database does not exist".
33
+ - **Command timeout exceeded** — the statement ran longer than `TimeoutMS` (milliseconds; default `30000` = 30 s). Surfaces as `Timeout expired`. Distinguish a legitimately long query (raise `TimeoutMS`) from a runaway/un-indexed query (fix the index/query).
34
+ - **CLR-level crash (`0xE0434352`)** — a managed-runtime fault bypassing the activity exception path: an oversized result set exhausting Robot memory, an incompatible native provider path (notably Oracle `REF CURSOR`), or a stale `UiPath.Database.Activities` build. `0xE0434352` is the generic .NET unhandled-exception code — the DB context narrows it.
35
+ - **Wrong activity for the statement type** — `Execute Query` for a `SELECT` (→ `DataTable`); `Execute Non Query` for modifications (→ `AffectedRecords`). Crossing them returns empty/meaningless output or fails the output type binding.
36
+
37
+ ## Package
38
+
39
+ NuGet: `UiPath.Database.Activities`
40
+
41
+ Activities target ADO.NET; the active provider is chosen per activity/connection via `ProviderName`. Project compatibility (**Windows** vs **Windows - Legacy**) changes the default provider and is a frequent migration-time failure cause. Version-specific bugs are documented in the relevant playbooks.
@@ -0,0 +1,104 @@
1
+ ---
2
+ confidence: medium
3
+ ---
4
+
5
+ # Connect to Database Failures (Excel / Access via OLE DB / ODBC)
6
+
7
+ ## Context
8
+
9
+ A `UiPath.Database.Activities` `Connect to Database` (`DatabaseConnect`) activity opens an ADO.NET connection from a `ConnectionString` + `ProviderName` and outputs a `DatabaseConnection` for downstream `Execute Query` / `Execute Non Query` / `Run Command` activities. Connection-open failures cluster heavily around **file-based providers** — using an Excel workbook (or Access database) as the data source through the ACE OLE DB or an ODBC driver — where the connection string, driver registration, process bitness, and file locking all have to line up.
10
+
11
+ Rule out the package confusion first: **`Connect to Database` lives in `UiPath.Database.Activities`, not `UiPath.Excel.Activities`.** Reading an Excel file through database activities is the deliberate "Excel-as-a-database" pattern (SQL over a workbook), distinct from the Excel package's `Read Range` / `Use Excel File`. If the user went looking for `Connect to Database` in the Excel package, clearing up that mismatch is step zero.
12
+
13
+ What this looks like — Connect to Database faults surface as one of these signatures:
14
+
15
+ - `System.ArgumentException` / `Format of the initialization string does not conform to specification starting at index N` / a generic "Invalid connection string" — branch 1.
16
+ - `System.InvalidOperationException: The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine` (or `Microsoft.Jet.OLEDB.4.0` for legacy `.xls`) — branch 2.
17
+ - `The process cannot access the file '<path>' because it is being used by another process` / a sharing violation from the engine — branch 3.
18
+ - `The type initializer for 'Microsoft.Data.SqlClient.SqlConnection' threw an exception` (or another provider type-initializer / driver-init failure) on a project moved to **Windows** (.NET) — branch 4.
19
+
20
+ What can cause it (cause-branches — pick the right one from evidence):
21
+
22
+ 1. **Malformed / wrong connection string** — the `ConnectionString` does not match the provider's required layout. The correct ACE OLE DB shape for a modern `.xlsx` is:
23
+
24
+ ```text
25
+ Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Path\To\File.xlsx;Extended Properties="Excel 12.0 Xml;HDR=YES;"
26
+ ```
27
+
28
+ `HDR=YES` treats the first row as column headers; use `HDR=NO` when the sheet has no header row. Common mistakes: unquoted or missing `Extended Properties`, missing `Data Source`, using the `Excel 12.0 Xml` variant against a legacy `.xls` (which needs `Excel 8.0` and the `Microsoft.Jet.OLEDB.4.0` provider), or SQL text accidentally pasted into the connection string (that variant routes to [execute-query-failures.md](./execute-query-failures.md) branch 4).
29
+ 2. **Provider not registered / architecture (bitness) mismatch** — the ACE OLE DB / ODBC driver named in the connection string is not installed, or its bitness does not match the process. A **Windows** project runs as a **64-bit** process and needs the **64-bit** Microsoft Access Database Engine (ACE); a 32-bit-only ACE install (commonly bundled with 32-bit Office) produces "provider is not registered on the local machine". Mixed Office bitness on the host complicates the install (the 64-bit engine may refuse to install alongside 32-bit Office without the `/quiet` workaround).
30
+ 3. **File lock / sharing violation** — the workbook is open in Excel or held by another process (an orphaned process from a prior run, a concurrent job, a OneDrive/sync or AV client), so the engine cannot acquire the file. File-based providers request a write lock by default, so even a read-only SELECT fails while the file is held.
31
+ 4. **Provider init failure after migration / wrong `ProviderName`** — on a project switched from **Windows - Legacy** to **Windows** (.NET), leaving `ProviderName` empty (or defaulted to a SqlClient value) makes the activity initialize the SQL Server provider, which throws a type-initializer exception in the .NET runtime — even though the intended target is Excel. The provider must be set explicitly: `System.Data.OleDb` for ACE OLE DB, or `System.Data.Odbc` for an ODBC DSN/driver.
32
+
33
+ What to look for:
34
+
35
+ - **The exception class and message** — first signal, maps directly to a branch per the signature list. "provider is not registered" → branch 2; "initialization string" / `ArgumentException` → branch 1; "used by another process" → branch 3; "type initializer for 'Microsoft.Data.SqlClient...'" → branch 4.
36
+ - **`ConnectionString` + `ProviderName`** (literal values) from the workflow source — the provider name, the `Data Source` path and its extension (`.xlsx` vs `.xls`), and the `Extended Properties` block.
37
+ - **Project compatibility and process bitness** — `project.json` (`Windows` vs `Windows-Legacy`); a **Windows** project is a 64-bit process. Load-bearing for branches 2 and 4.
38
+ - **Driver inventory on the Robot host** — whether the Microsoft Access Database Engine (ACE) or the ODBC driver is installed, and its **bitness**, on the machine that ran the job (not the dev machine).
39
+ - **Workbook lock state at run time** — whether the file was open in Excel, held by an orphaned process, or on a sync-backed path.
40
+
41
+ ## Investigation
42
+
43
+ Go in this order — cheaper checks first.
44
+
45
+ 1. **Capture the exact error and configuration.** From `uip or jobs get <job-key> --output json` → `Info`: the exception class and full message (including inner exception). From workflow source (`.xaml`): the `Connect to Database` node's literal `ConnectionString` and `ProviderName`, and the `Data Source` path/extension inside the connection string. From `project.json`: the project compatibility (`Windows` vs `Windows-Legacy`).
46
+
47
+ 2. **Branch the diagnostic on the signature.**
48
+ - `ArgumentException` / "initialization string" / "Invalid connection string" → branch 1; go to step 3.
49
+ - "provider is not registered on the local machine" → branch 2; go to step 4.
50
+ - "used by another process" / sharing violation → branch 3; go to step 5.
51
+ - "type initializer for 'Microsoft.Data.SqlClient...'" / driver-init on a Windows project → branch 4; go to step 6.
52
+
53
+ 3. **Confirm branch 1 (connection string).** Compare the literal `ConnectionString` against the provider's required layout. For Excel/ACE: `Provider=`, `Data Source=<full path>`, and a quoted `Extended Properties="Excel 12.0 Xml;HDR=YES;"`. Check the file extension matches the variant (`.xlsx` → `Excel 12.0 Xml` + ACE 12.0; `.xls` → `Excel 8.0` + Jet 4.0). Confirm no SQL text leaked into the connection string and that all quotes are balanced.
54
+
55
+ 4. **Confirm branch 2 (provider not registered / bitness).** Determine the process bitness from project compatibility (**Windows** = 64-bit). Check whether the ACE/ODBC driver is installed on the Robot host and its bitness (Control Panel → Programs, or the registry under `HKLM\SOFTWARE\...\Microsoft.ACE.OLEDB.12.0` vs the `WOW6432Node` 32-bit hive). "Not registered" with a 64-bit process and only a 32-bit ACE present confirms the mismatch.
56
+
57
+ 5. **Confirm branch 3 (file lock).** Check whether the workbook was open in Excel or held by another process at the failure time: an orphaned process holding the handle, a concurrent job touching the same file, or a sync/AV client. The message names the file path — confirm it is the workbook the connection targets.
58
+
59
+ 6. **Confirm branch 4 (provider init / wrong ProviderName).** Confirm the project is **Windows** (.NET) and read `ProviderName` on the activity. Empty or a SqlClient value while the `ConnectionString` is clearly an Excel/ACE OLE DB string confirms the branch — the runtime is initializing SqlClient instead of OLE DB.
60
+
61
+ The root cause must name **which of the four surfaces** the failure maps to, with the specific evidence: the exception text, the literal `ConnectionString`/`ProviderName`, the project compatibility/bitness, and the host's driver inventory. A generic "could not connect" is not a confirmed finding.
62
+
63
+ ## Resolution
64
+
65
+ Map the branch identified in Investigation to the fix:
66
+
67
+ - **Branch 1 — Connection string:**
68
+ - Use the provider-correct layout. Excel `.xlsx` via ACE OLE DB: `Provider=Microsoft.ACE.OLEDB.12.0;Data Source=<full path>.xlsx;Extended Properties="Excel 12.0 Xml;HDR=YES;"` (`HDR=NO` if the sheet has no header row). Legacy `.xls`: `Provider=Microsoft.Jet.OLEDB.4.0;...;Extended Properties="Excel 8.0;HDR=YES;"`.
69
+ - Quote the `Extended Properties` value, supply a full `Data Source` path, and keep SQL out of the connection string (the `SELECT` belongs in the `Execute Query` `Sql` property).
70
+
71
+ - **Branch 2 — Provider not registered / bitness mismatch:**
72
+ - Match the **process** bitness, not Office's. A **Windows** project is 64-bit → install the **64-bit** Microsoft Access Database Engine (ACE) on every Robot host.
73
+ - If 32-bit Office is installed and blocks the 64-bit engine installer, run the engine installer with the `/quiet` switch to force the install alongside it.
74
+ - Alternative: set the project to **Windows - Legacy** (32-bit) only if a 64-bit engine genuinely cannot be installed — but prefer installing the 64-bit ACE so the modern runtime is used.
75
+
76
+ - **Branch 3 — File lock:**
77
+ - Ensure the workbook is closed (and no orphaned process holds it) before the robot runs; kill stray processes as a hygiene step at job start if a prior run can leak a handle.
78
+ - For read-only workloads (SELECT only), open the connection read-only so the engine does not request a write lock — for ACE OLE DB add `Mode=Read` to the connection string. (Some setups instead carry a read flag in `Extended Properties`; verify against your provider version.)
79
+
80
+ - **Branch 4 — Provider init / wrong ProviderName:**
81
+ - Set `ProviderName` explicitly on the activity. For Excel/Access via ACE OLE DB: `System.Data.OleDb`. For an ODBC DSN/driver: `System.Data.Odbc`. Do **not** leave it empty or set to a SqlClient value when the target is a file-based source.
82
+ - This is the canonical fix when a working Windows-Legacy project starts failing with a `Microsoft.Data.SqlClient` type-initializer error after migration to **Windows** — the empty provider was implicitly resolving to SqlClient.
83
+
84
+ ### Querying the workbook (after a successful connect)
85
+
86
+ Once connected, address each sheet as a table by appending `$` to the sheet name and wrapping it in brackets: `SELECT * FROM [Sheet1$]`. A named range is addressed as `[RangeName]`. Query-side failures (syntax, parameters, timeouts) are covered in [execute-query-failures.md](./execute-query-failures.md).
87
+
88
+ ## Anti-patterns (what NOT to do)
89
+
90
+ - **"Install the 32-bit Access Database Engine to match 32-bit Office."** The driver bitness must match the **process** bitness, not the installed Office bitness. A **Windows** project is a 64-bit process and needs the 64-bit ACE even when Office is 32-bit. Matching Office instead reproduces branch 2.
91
+ - **"Leave `ProviderName` empty and let it auto-detect."** On a **Windows** (.NET) project an empty provider resolves toward SqlClient and throws a type-initializer error against an Excel source (branch 4). Always set the provider explicitly for file-based sources.
92
+ - **"Wrap Connect in a Try Catch that catches `System.Exception` and continues."** A bare catch that logs and swallows turns a failed connection into a downstream null-connection fault (`Object reference not set` in the next `Execute Query` — see [execute-query-failures.md](./execute-query-failures.md) branch 1), which is harder to diagnose than the original connect error. Use Try-Catch only with a real recovery path (retry a transient lock, mark the queue item Failed, notify, or re-throw a domain-specific exception) — and catch the specific provider/`DataException`, not bare `System.Exception`, so unrelated faults still surface.
93
+
94
+ ## Prevention (cross-branch)
95
+
96
+ - Confirm the activity is `Connect to Database` from `UiPath.Database.Activities` (the Excel package has no such activity), and that "Excel-as-a-database" is the intended pattern rather than `Read Range` / `Use Excel File`.
97
+ - Provision every Robot host with the **64-bit** Microsoft Access Database Engine when the project is **Windows**, and verify the driver bitness as part of host setup — not at first failure.
98
+ - Set `ProviderName` explicitly (`System.Data.OleDb` / `System.Data.Odbc`) on file-based connections and pin it in the workflow rather than relying on defaults.
99
+ - Keep the target workbook closed during runs and address sheets as `[Sheet$]`; for read-only flows open the connection read-only (`Mode=Read`) to avoid lock contention.
100
+
101
+ ## Related
102
+
103
+ - [execute-query-failures.md](./execute-query-failures.md) — the query-side surface (null-connection from a failed connect, SQL syntax, query-in-connection-string, timeouts).
104
+ - [`../overview.md`](../overview.md) — the package connection model (Connect → `DatabaseConnection` → data activities).