@uipath/skills 1.199.0 → 1.200.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.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CODEOWNERS +14 -8
- package/README.md +18 -3
- package/assets/skill-status.json +9 -1
- package/assets/uip-catalog-snapshot.json +227 -21
- package/package.json +11 -2
- package/scripts/npm-package-lifecycle.mjs +46 -0
- package/skills/uipath-admin/SKILL.md +5 -1
- package/skills/uipath-admin/references/audit-commands.md +1 -1
- package/skills/uipath-admin/references/audit-workflow-guide.md +9 -0
- package/skills/uipath-agents/SKILL.md +2 -2
- package/skills/uipath-agents/references/lowcode/capabilities/context/index.md +7 -0
- package/skills/uipath-agents/references/lowcode/capabilities/integration-service/integration-service.md +5 -6
- package/skills/uipath-agents/references/lowcode/critical-rules/critical-rules.md +1 -1
- package/skills/uipath-agents/references/lowcode/evaluations/evaluation-sets.md +5 -0
- package/skills/uipath-agents/references/lowcode/project-lifecycle.md +3 -3
- package/skills/uipath-agents/references/lowcode/prompting/autonomous-agent-prompting-guide.md +3 -2
- package/skills/uipath-api-workflow/SKILL.md +2 -1
- package/skills/uipath-api-workflow/references/cli-reference.md +3 -3
- package/skills/uipath-coded-apps/SKILL.md +3 -2
- package/skills/uipath-coded-apps/assets/fixtures/governance-dashboard-starter-kit.tar.gz +0 -0
- package/skills/uipath-coded-apps/assets/templates/web-app-template.md +1 -1
- package/skills/uipath-coded-apps/references/create-web-app.md +60 -48
- package/skills/uipath-coded-apps/references/dashboards/CAPABILITY.md +2 -2
- package/skills/uipath-coded-apps/references/dashboards/plugins/build/impl.md +2 -2
- package/skills/uipath-coded-apps/references/dashboards/primitives/tier-resolution.md +16 -16
- package/skills/uipath-coded-apps/references/oauth-scopes.md +28 -272
- package/skills/uipath-coded-apps/references/sdk/action-center.md +26 -243
- package/skills/uipath-coded-apps/references/sdk/agents.md +20 -130
- package/skills/uipath-coded-apps/references/sdk/conversational-agent.md +52 -706
- package/skills/uipath-coded-apps/references/sdk/data-fabric.md +20 -237
- package/skills/uipath-coded-apps/references/sdk/feedback.md +4 -139
- package/skills/uipath-coded-apps/references/sdk/governance-traces.md +7 -55
- package/skills/uipath-coded-apps/references/sdk/governance.md +4 -44
- package/skills/uipath-coded-apps/references/sdk/imports.md +77 -35
- package/skills/uipath-coded-apps/references/sdk/maestro.md +29 -406
- package/skills/uipath-coded-apps/references/sdk/orchestrator.md +30 -324
- package/skills/uipath-coded-apps/references/sdk/pagination.md +9 -67
- package/skills/uipath-coded-apps/references/sdk/traces.md +8 -43
- package/skills/uipath-functions/SKILL.md +23 -23
- package/skills/uipath-governance/SKILL.md +5 -4
- package/skills/uipath-governance/references/cli-cheatsheet.md +2 -1
- package/skills/uipath-governance/references/compliance-pack/coverage/impl.md +143 -58
- package/skills/uipath-governance/references/compliance-pack/restore/impl.md +61 -0
- package/skills/uipath-human-in-the-loop/SKILL.md +4 -2
- package/skills/uipath-insights/SKILL.md +17 -18
- package/skills/uipath-ixp/SKILL.md +12 -7
- package/skills/uipath-ixp/references/cli-reference.md +71 -9
- package/skills/uipath-ixp/references/improve-prompts-guide.md +23 -9
- package/skills/uipath-ixp/references/label-documents-guide.md +33 -5
- package/skills/uipath-maestro-bpmn/SKILL.md +15 -14
- package/skills/uipath-maestro-bpmn/references/cli-conventions.md +15 -6
- package/skills/uipath-maestro-bpmn/references/structural-bpmn.md +18 -17
- package/skills/uipath-maestro-case/SKILL.md +46 -33
- package/skills/uipath-maestro-case/assets/templates/sdd-template.md +77 -37
- package/skills/uipath-maestro-case/assets/templates/sdd-viewer.html +0 -2
- package/skills/uipath-maestro-case/references/bindings-and-expressions.md +3 -1
- package/skills/uipath-maestro-case/references/bindings-v2-sync.md +2 -2
- package/skills/uipath-maestro-case/references/brownfield.md +15 -5
- package/skills/uipath-maestro-case/references/case-commands.md +19 -3
- package/skills/uipath-maestro-case/references/case-editing-operations.md +24 -21
- package/skills/uipath-maestro-case/references/case-schema.md +38 -16
- package/skills/uipath-maestro-case/references/connector-trigger-common.md +15 -8
- package/skills/uipath-maestro-case/references/evals/evals.json +35 -18
- package/skills/uipath-maestro-case/references/implementation.md +86 -71
- package/skills/uipath-maestro-case/references/phase-0-interview.md +92 -23
- package/skills/uipath-maestro-case/references/phased-execution.md +70 -55
- package/skills/uipath-maestro-case/references/placeholder-tasks.md +5 -5
- package/skills/uipath-maestro-case/references/planning.md +57 -9
- package/skills/uipath-maestro-case/references/plugins/case/impl-json.md +7 -5
- package/skills/uipath-maestro-case/references/plugins/case/planning.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/impl-json.md +5 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/impl-json.md +41 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/planning.md +27 -3
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +6 -6
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +3 -1
- package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md +20 -7
- package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/planning.md +37 -4
- package/skills/uipath-maestro-case/references/plugins/sla/impl-json.md +24 -13
- package/skills/uipath-maestro-case/references/plugins/sla/planning.md +9 -3
- package/skills/uipath-maestro-case/references/plugins/stages/impl-json.md +4 -0
- package/skills/uipath-maestro-case/references/plugins/stages/planning.md +4 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/action/impl-json.md +3 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/action/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/tasks/create-inline-common.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/process/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/process/planning.md +6 -4
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/impl-json.md +4 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/planning.md +4 -0
- package/skills/uipath-maestro-case/references/plugins/triggers/event/impl-json.md +17 -14
- package/skills/uipath-maestro-case/references/plugins/triggers/event/planning.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/triggers/manual/impl-json.md +13 -10
- package/skills/uipath-maestro-case/references/plugins/triggers/timer/impl-json.md +18 -16
- package/skills/uipath-maestro-case/references/plugins/triggers/timer/planning.md +2 -2
- package/skills/uipath-maestro-case/references/plugins/variables/bindings/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +11 -9
- package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +6 -2
- package/skills/uipath-maestro-case/references/plugins/variables/io-binding/planning.md +19 -1
- package/skills/uipath-maestro-case/references/registry-discovery.md +3 -3
- package/skills/uipath-maestro-case/references/sdd-generation-rules.md +155 -51
- package/skills/uipath-maestro-case/references/sla-response-shapes.md +74 -0
- package/skills/uipath-maestro-flow/SKILL.md +4 -3
- package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +3 -0
- package/skills/uipath-maestro-flow/references/author/references/editing-operations-json.md +10 -17
- package/skills/uipath-maestro-flow/references/author/references/editing-operations.md +1 -1
- package/skills/uipath-maestro-flow/references/author/references/greenfield.md +8 -6
- package/skills/uipath-maestro-flow/references/author/references/planning-impl.md +1 -1
- package/skills/uipath-maestro-flow/references/author/references/plugins/agent/impl.md +4 -9
- package/skills/uipath-maestro-flow/references/author/references/plugins/agentic-process/impl.md +3 -7
- package/skills/uipath-maestro-flow/references/author/references/plugins/api-workflow/impl.md +5 -8
- package/skills/uipath-maestro-flow/references/author/references/plugins/connector/impl.md +11 -4
- package/skills/uipath-maestro-flow/references/author/references/plugins/flow/impl.md +3 -7
- package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/impl.md +14 -17
- package/skills/uipath-maestro-flow/references/author/references/plugins/ixp/impl.md +60 -13
- package/skills/uipath-maestro-flow/references/author/references/plugins/queue/impl.md +2 -14
- package/skills/uipath-maestro-flow/references/author/references/plugins/rpa/impl.md +4 -9
- package/skills/uipath-maestro-flow/references/author/references/plugins/script/impl.md +3 -0
- package/skills/uipath-maestro-flow/references/author/references/plugins/subflow/impl.md +5 -9
- package/skills/uipath-maestro-flow/references/author/references/plugins/transform/impl.md +13 -0
- package/skills/uipath-maestro-flow/references/shared/action-nodes.md +2 -2
- package/skills/uipath-maestro-flow/references/shared/file-format.md +16 -12
- package/skills/uipath-maestro-flow/references/shared/variables-and-expressions.md +3 -3
- package/skills/uipath-planner/SKILL.md +1 -1
- package/skills/uipath-planner/references/non-pdd-lane-guide.md +1 -1
- package/skills/uipath-platform/SKILL.md +1 -1
- package/skills/uipath-platform/references/data-fabric/bulk-import.md +10 -27
- package/skills/uipath-platform/references/data-fabric/choice-sets.md +7 -64
- package/skills/uipath-platform/references/data-fabric/data-fabric.md +76 -267
- package/skills/uipath-platform/references/data-fabric/entity-schema.md +23 -99
- package/skills/uipath-platform/references/data-fabric/file-attachments.md +5 -28
- package/skills/uipath-platform/references/data-fabric/filter-platform-contract.md +2 -2
- package/skills/uipath-platform/references/data-fabric/records-query.md +11 -32
- package/skills/uipath-platform/references/integration-service/reference-resolution.md +6 -2
- package/skills/uipath-platform/references/licensing/consumables-report.md +18 -0
- package/skills/uipath-platform/references/licensing/licensing.md +1 -1
- package/skills/uipath-platform/references/orchestrator/run-jobs.md +9 -2
- package/skills/uipath-platform/references/orchestrator/setup-environment.md +9 -0
- package/skills/uipath-platform/references/traces/feedback.md +4 -1
- package/skills/uipath-process-mining/SKILL.md +97 -0
- package/skills/uipath-process-mining/references/app-types.md +66 -0
- package/skills/uipath-process-mining/references/data-model.md +130 -0
- package/skills/uipath-process-mining/references/lifecycle-and-rbac.md +67 -0
- package/skills/uipath-process-mining/references/model-editing.md +112 -0
- package/skills/uipath-process-mining/references/pre-flight.md +119 -0
- package/skills/uipath-process-mining/references/querying.md +66 -0
- package/skills/uipath-process-mining/references/transformations.md +80 -0
- package/skills/uipath-process-mining/references/uip-pm-cli.md +145 -0
- package/skills/uipath-review/SKILL.md +23 -18
- package/skills/uipath-review/references/agents/agent-grading-rubric.md +1 -1
- package/skills/uipath-review/references/agents/agent-review-checklist.md +0 -4
- package/skills/uipath-review/references/agents/agents-coded-rules.md +1 -10
- package/skills/uipath-review/references/agents/agents-lowcode-rules.md +3 -6
- package/skills/uipath-review/references/agents/guardrails/coded-guardrails-review.md +62 -14
- package/skills/uipath-review/references/agents/guardrails/guardrails-review.md +60 -4
- package/skills/uipath-review/references/review-workflow-guide.md +3 -2
- package/skills/uipath-review/references/rule-catalog-workflow.md +4 -5
- package/skills/uipath-rpa/.maintenance/pattern-card-maintenance.md +20 -0
- package/skills/uipath-rpa/SKILL.md +57 -55
- package/skills/uipath-rpa/agents/uipath-project-discovery-agent.md +75 -19
- package/skills/uipath-rpa/assets/codedworkflow-template.md +245 -11
- package/skills/uipath-rpa/references/cli-reference.md +229 -6
- package/skills/uipath-rpa/references/coded/codedworkflow-reference.md +158 -2
- package/skills/uipath-rpa/references/coded/integration-service-guide.md +6 -5
- package/skills/uipath-rpa/references/coded/operations-guide.md +273 -5
- package/skills/uipath-rpa/references/coded-vs-xaml-guide.md +3 -3
- package/skills/uipath-rpa/references/common-pattern-card.md +303 -0
- package/skills/uipath-rpa/references/data-manipulation-guide.md +18 -3
- package/skills/uipath-rpa/references/debugging.md +0 -2
- package/skills/uipath-rpa/references/environment-setup.md +309 -1
- package/skills/uipath-rpa/references/error-handling-guide.md +1 -1
- package/skills/uipath-rpa/references/execution-maps-guide.md +110 -0
- package/skills/uipath-rpa/references/is-connector-xaml-guide.md +58 -4
- package/skills/uipath-rpa/references/legacy/activity-docs/Excel.md +1 -1
- package/skills/uipath-rpa/references/legacy/activity-docs/_DU-PROCESS.md +0 -2
- package/skills/uipath-rpa/references/legacy/activity-docs/_INDEX.md +2 -2
- package/skills/uipath-rpa/references/legacy/activity-docs/_PATTERNS.md +1 -1
- package/skills/uipath-rpa/references/legacy/activity-docs/_REFRAMEWORK.md +2 -7
- package/skills/uipath-rpa/references/legacy/cli-reference.md +599 -0
- package/skills/uipath-rpa/references/legacy/error-handling-guide.md +2 -2
- package/skills/uipath-rpa/references/legacy/legacy-mode-guide.md +16 -16
- package/skills/uipath-rpa/references/legacy/project-organization-guide.md +2 -2
- package/skills/uipath-rpa/references/legacy/selector-guide.md +163 -1
- package/skills/uipath-rpa/references/legacy/testing-guide.md +246 -3
- package/skills/uipath-rpa/references/legacy/xaml-basics-and-rules.md +267 -2
- package/skills/uipath-rpa/references/library-authoring-guide.md +4 -3
- package/skills/uipath-rpa/references/testing-guide.md +2 -28
- package/skills/uipath-rpa/references/trigger-pattern-guide.md +1 -1
- package/skills/uipath-rpa/references/xaml/canvas-layout-guide.md +140 -33
- package/skills/uipath-rpa/references/xaml/common-pitfalls.md +57 -240
- package/skills/uipath-rpa/references/xaml/csharp-activity-binding-guide.md +42 -2
- package/skills/uipath-rpa/references/xaml/long-running-workflow-guide.md +1 -1
- package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +194 -228
- package/skills/uipath-solution/references/activate-and-manage.md +22 -0
- package/skills/uipath-solution/references/develop-solution.md +26 -2
- package/skills/uipath-solution/references/pack-and-deploy.md +43 -9
- package/skills/uipath-test/SKILL.md +4 -4
- package/skills/uipath-test/references/playwright-first-mile-guide.md +5 -4
- package/skills/uipath-test/references/publish-and-link-guide.md +2 -2
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/click-silent-no-op.md +5 -5
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/queue-operation-failed.md +20 -4
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/summary.md +1 -1
- package/skills/uipath-troubleshoot/references/activity-packages/csv-activities/playbooks/read-csv-file-not-found.md +12 -0
- package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/send-outlook-mail-failures.md +12 -1
- package/skills/uipath-troubleshoot/references/activity-packages/system-activities/playbooks/get-asset-activity-bug-silent-failure.md +2 -1
- package/skills/uipath-troubleshoot/references/activity-packages/terminal-activities/playbooks/terminal-session-connection-failed.md +5 -1
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/click-silent-no-op.md +5 -5
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/dependency-version-conflict.md +27 -6
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/napplicationcard-view-generation-failed.md +10 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/scope-container-wrong-page.md +1 -1
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/summary.md +1 -1
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/overview.md +4 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-auth-401-403.md +44 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-connection-failure.md +2 -1
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-content-type-rejected.md +37 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-proxy-blocked.md +39 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/package-version-mismatch.md +42 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/securestring-misuse-analyzer.md +41 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/summary.md +5 -0
- package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-null-reference.md +14 -1
- package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-runtime-exception.md +2 -0
- package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/is-activities-prerelease-not-found.md +39 -0
- package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/response-content-too-large.md +41 -0
- package/skills/uipath-troubleshoot/references/products/integration-service/summary.md +9 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/console-conflict-login-to-console.md +40 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/credential-store-unavailable.md +42 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/executor-start-transient-rerun.md +49 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-consecutive-system-exceptions.md +47 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-faulted-session-timeout.md +19 -19
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-output-too-large.md +47 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-stopped-generic-exit-code.md +55 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/known-issue-robot-defect.md +40 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/platform-incident-correlation.md +45 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/screen-capture-handle-invalid.md +43 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/serverless-license-quota.md +43 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/serverless-time-limit-exceeded.md +34 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/workstation-in-use-machine-slots.md +40 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/summary.md +13 -1
- package/version-manifest.json +2 -2
- package/skills/uipath-maestro-bpmn/validator/README.md +0 -224
- package/skills/uipath-maestro-bpmn/validator/model.mjs +0 -419
- package/skills/uipath-maestro-bpmn/validator/package.json +0 -17
- package/skills/uipath-maestro-bpmn/validator/rules.mjs +0 -1403
- package/skills/uipath-maestro-bpmn/validator/samples/invalid-conditional-and-variable.bpmn +0 -25
- package/skills/uipath-maestro-bpmn/validator/samples/valid-baseline.bpmn +0 -52
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/A.2.0.bpmn +0 -157
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/A.2.1.bpmn +0 -333
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/B.1.0.bpmn +0 -598
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/B.2.0.bpmn +0 -1709
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.2.0.bpmn +0 -564
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.3.0.bpmn +0 -671
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.4.0.bpmn +0 -1045
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.5.0.bpmn +0 -1176
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.6.0.bpmn +0 -670
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.7.0.bpmn +0 -466
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Can_Parse_Complex_Process_With_Task_Gateway_BoundaryEvent_etc.bpmn +0 -74
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/ExclusiveGatewayDefaultFlow.bpmn +0 -32
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/ExternalAgentWorkflow.bpmn +0 -62
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Golden_Scenario.initial.bpmn +0 -361
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/InclusiveJoinRouteAwayBranch.bpmn +0 -62
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_AsyncExecution_And_Create_CorrectModel.bpmn +0 -74
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_ExtractionValidation_And_Create_CorrectModel.bpmn +0 -35
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_Extraction_FileUpload_And_Create_CorrectModel.bpmn +0 -33
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_Extraction_JobAttachment_And_Create_CorrectModel.bpmn +0 -35
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_SubProcess_With_Multiple_Element_Types.bpmn +0 -76
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/StartEventWithOutputs.bpmn +0 -36
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/StartGatewayEnd.bpmn +0 -44
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/all elements.bpmn +0 -516
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/all_sequence_flow_types.bpmn +0 -173
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/demo.bpmn +0 -181
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-001-collapsed.bpmn +0 -126
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-001-expanded.bpmn +0 -122
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-003-collapsed_deeply-nested.bpmn +0 -438
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/A.1.0.bpmn +0 -87
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/A.3.0.bpmn +0 -165
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ApiWorkflow.bpmn +0 -39
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnNestedSubProcessTests.bpmn +0 -102
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnTimerBoundaryEvents.bpmn +0 -160
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnXmlWithCatchAllErrorEventSubProcess.bpmn +0 -45
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnXmlWithSpecificErrorEventSubProcess.bpmn +0 -46
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/CaseManagementWithConstantIdentifier.bpmn +0 -218
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ErrorBoundary.bpmn +0 -78
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ErrorPropagationInEventSubprocess.bpmn +0 -340
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/EventBasedGatewayFirstCatcherWins.bpmn +0 -56
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Example-EventBasedGateway.bpmn +0 -117
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveGatewayConditional.bpmn +0 -45
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveGatewaySharedEndEvent.bpmn +0 -45
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveWithParallelGateway.bpmn +0 -68
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/FourScriptTasks.bpmn +0 -84
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/HitlTaskOnly.bpmn +0 -55
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/InclusiveGatewayForkJoin.bpmn +0 -69
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_BPMN_Elements_And_Create_CorrectModel.bpmn +0 -20
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_HttpRequest_ServiceTask_And_Create_Correct_Model.bpmn +0 -34
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_MessageBoundaryEvent_And_Create_CorrectModel.bpmn +0 -87
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_Script_Task_V2_And_Create_Correct_Model.bpmn +0 -31
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_Sets_Containers_Properly.bpmn +0 -129
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ScriptWritesVariableThenGatewayBranches.bpmn +0 -59
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/boundaryevent.bpmn +0 -30
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/collapsed-subprocess.bpmn +0 -83
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/connectable-types.bpmn +0 -85
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/extensions-orchestrator-start-job.bpmn +0 -80
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/multiparticipantpool.bpmn +0 -77
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/nestedsubprocess.bpmn +0 -36
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/simple.bpmn +0 -59
- package/skills/uipath-maestro-bpmn/validator/test/integration.test.mjs +0 -146
- package/skills/uipath-maestro-bpmn/validator/test/model-helpers.mjs +0 -42
- package/skills/uipath-maestro-bpmn/validator/test/ported-rule-tests.mjs +0 -983
- package/skills/uipath-maestro-bpmn/validator/test/run-tests.mjs +0 -530
- package/skills/uipath-maestro-bpmn/validator/uipath-moddle.v1.json +0 -715
- package/skills/uipath-maestro-bpmn/validator/validate-bpmn.mjs +0 -164
- package/skills/uipath-review/references/agents/agents-common-rules.md +0 -32
- package/skills/uipath-rpa/assets/before-after-hooks-template.md +0 -115
- package/skills/uipath-rpa/assets/helper-utility-template.md +0 -22
- package/skills/uipath-rpa/assets/testcase-template.md +0 -92
- package/skills/uipath-rpa/references/coded/coding-guidelines.md +0 -255
- package/skills/uipath-rpa/references/coded/inspect-package-guide.md +0 -80
- package/skills/uipath-rpa/references/coded/third-party-packages-guide.md +0 -67
- package/skills/uipath-rpa/references/connector-capabilities.md +0 -79
- package/skills/uipath-rpa/references/legacy/activity-docs/Testing.md +0 -95
- package/skills/uipath-rpa/references/legacy/activity-docs/UIAutomation.md +0 -159
- package/skills/uipath-rpa/references/legacy/common-pitfalls.md +0 -318
- package/skills/uipath-rpa/references/legacy/discovery-workflow.md +0 -147
- package/skills/uipath-rpa/references/legacy/environment-setup.md +0 -78
- package/skills/uipath-rpa/references/legacy/project-structure.md +0 -206
- package/skills/uipath-rpa/references/legacy/test-data-guide.md +0 -142
- package/skills/uipath-rpa/references/legacy/validation-and-fixing.md +0 -154
- package/skills/uipath-rpa/references/project-structure-guide.md +0 -168
- package/skills/uipath-rpa/references/project-structure.md +0 -135
- package/skills/uipath-rpa/references/publishing-guide.md +0 -80
- package/skills/uipath-rpa/references/validation-guide.md +0 -170
- package/skills/uipath-rpa/references/xaml/csharp-expression-pitfalls.md +0 -43
- package/skills/uipath-rpa/references/xaml/flowchart-guide.md +0 -113
- package/skills/uipath-rpa/references/xaml/workflow-guide.md +0 -258
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
# Common Pattern Card
|
|
2
|
+
|
|
3
|
+
**Package anchors:** `UiPath.System.Activities` 26.6.1 · `UiPath.Excel.Activities` 3.6.0-preview (CSV group) · `UiPath.WebAPI.Activities` 2.5.1 — every entry CLI-verified (`uip rpa validate` + `uip rpa build` clean) on a `Portable` (cross-platform) / VisualBasic project. Modern Windows-target projects use the same assembly names (`System.Private.CoreLib`); Legacy (.NET 4.6.1) projects are NOT covered.
|
|
4
|
+
|
|
5
|
+
**Not on this card (Windows-only, unverifiable on the cross-platform gate):** Excel X activities (`ExcelProcessScopeX`/`ExcelApplicationCard`/`ReadRangeX`, …) and SMTP `SendMail` — their docs state `Platform: Windows only`; cross-platform assemblies throw `TypeLoadException`. Author via the full Rule 21 triple on a Windows-target project.
|
|
6
|
+
|
|
7
|
+
Copy-safe multi-activity snippets (regeneration procedure: [.maintenance/pattern-card-maintenance.md](../.maintenance/pattern-card-maintenance.md)). **Supersedes the Rule 21 discovery procedure for every activity inside a listed pattern.** For activities outside these patterns, Rule 21 applies. Card hits skip discovery — never the `validate`+`build` gate, and never the runtime effect check for observable outputs ([execution-maps-guide.md § Gate ≠ runtime proof](execution-maps-guide.md#gate--runtime-proof)). Precedence: card → agent memory → Rule 21 triple ([execution-maps-guide.md](execution-maps-guide.md)). If `validate`/`build` rejects a card snippet: fall back to the Rule 21 triple for that activity and report the stale entry via `/uipath-feedback`.
|
|
8
|
+
|
|
9
|
+
## Card entries
|
|
10
|
+
|
|
11
|
+
Text file read/append/write · File ops guarded copy · DataTable generate→filter→CSV · Queue publish · Retry wrap · Invoke workflow with arguments · Invoke Code bulk row processing · CSV file read/write · HTTP request → JSON
|
|
12
|
+
|
|
13
|
+
## How to read the snippets
|
|
14
|
+
|
|
15
|
+
Snippets are complete `<Sequence>` fragments (with their `Variables`) for a root `<Activity>` whose xmlns set matches the scaffolded `Main.xaml` (`uip rpa init` output) — keep its `TextExpression.NamespacesForImplementation` / `ReferencesForImplementation` blocks. Root prefixes used below:
|
|
16
|
+
|
|
17
|
+
```xml
|
|
18
|
+
xmlns:ui="http://schemas.uipath.com/workflow/activities"
|
|
19
|
+
xmlns:uic="clr-namespace:UiPath.Core.Activities;assembly=UiPath.System.Activities"
|
|
20
|
+
xmlns:s="clr-namespace:System;assembly=System.Private.CoreLib"
|
|
21
|
+
xmlns:sd="clr-namespace:System.Data;assembly=System.Data.Common"
|
|
22
|
+
xmlns:scg="clr-namespace:System.Collections.Generic;assembly=System.Private.CoreLib"
|
|
23
|
+
xmlns:csv="clr-namespace:UiPath.CSV.Activities;assembly=UiPath.Excel.Activities"
|
|
24
|
+
xmlns:nhr="clr-namespace:UiPath.Web.Activities.Http;assembly=UiPath.Web.Activities"
|
|
25
|
+
xmlns:nhrm="clr-namespace:UiPath.Web.Activities.Http.Models;assembly=UiPath.Web.Activities"
|
|
26
|
+
xmlns:web="clr-namespace:UiPath.Web.Activities;assembly=UiPath.Web.Activities"
|
|
27
|
+
xmlns:jn="clr-namespace:Newtonsoft.Json.Linq;assembly=Newtonsoft.Json"
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Each entry lists which of these it needs. VB expression form (`[expr]` attributes); C# projects: [xaml/csharp-activity-binding-guide.md](xaml/csharp-activity-binding-guide.md).
|
|
31
|
+
|
|
32
|
+
> **Why two UiPath prefixes:** some activities (`BuildDataTable` — Windows-only, and by extension the DataTable group) are not registered under the `http://schemas.uipath.com/workflow/activities` URI on cross-platform assemblies. The `uic:` clr-namespace form resolves whenever the type is loadable. File/queue/retry/invoke activities verified fine under `ui:`.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
### Text file read / append / write
|
|
37
|
+
**Activities:** `UiPath.Core.Activities.ReadTextFile` · `AppendLine` · `WriteTextFile`
|
|
38
|
+
**Prefixes:** `ui:`
|
|
39
|
+
**Variables:** `fileContent : String` — file text; `logEntry : String` — line to append.
|
|
40
|
+
|
|
41
|
+
```xml
|
|
42
|
+
<Sequence DisplayName="Text File Read Append Write">
|
|
43
|
+
<Sequence.Variables>
|
|
44
|
+
<Variable x:TypeArguments="x:String" Name="fileContent" />
|
|
45
|
+
<Variable x:TypeArguments="x:String" Name="logEntry" Default="processed" />
|
|
46
|
+
</Sequence.Variables>
|
|
47
|
+
<ui:ReadTextFile DisplayName="Read Text File" FileName="data/input.txt" Encoding="utf-8" Content="[fileContent]" />
|
|
48
|
+
<ui:AppendLine DisplayName="Append Line" FileName="data/process.log" Text="[logEntry]" Encoding="utf-8" />
|
|
49
|
+
<ui:WriteTextFile DisplayName="Write Text File" FileName="data/output.txt" Text="[fileContent]" Encoding="utf-8" />
|
|
50
|
+
</Sequence>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Notes:** `WriteTextFile` overwrites; `AppendLine` preserves content and creates the file if missing. `Encoding` `null` = auto-detect (read) / system default (write). `FileName` literal or `[expr]`. **Trap:** an explicit `Encoding="utf-8"` on `WriteTextFile` writes a UTF-8 BOM (`EF BB BF`) — passes `validate`+`build`, breaks byte-exact consumers. Omit `Encoding` for BOM-less output ([xaml/common-pitfalls.md § WriteTextFile Emits a UTF-8 BOM](xaml/common-pitfalls.md#writetextfile-emits-a-utf-8-bom-when-encoding-is-set)).
|
|
54
|
+
**Long-form:** [`ReadTextFile.md`](activity-docs/UiPath.System.Activities/26.4/activities/ReadTextFile.md) · [`WriteTextFile.md`](activity-docs/UiPath.System.Activities/26.4/activities/WriteTextFile.md) · AppendLine: `{PROJECT_DIR}/.local/docs/packages/UiPath.System.Activities/activities/AppendLine.md`
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
### File ops — guarded copy
|
|
59
|
+
**Activities:** `UiPath.Core.Activities.PathExists` · `CreateDirectory` · `CopyFile` (+ built-in `If`)
|
|
60
|
+
**Prefixes:** `ui:`
|
|
61
|
+
**Variables:** `fileExists : Boolean`.
|
|
62
|
+
|
|
63
|
+
```xml
|
|
64
|
+
<Sequence DisplayName="File Ops Guarded Copy">
|
|
65
|
+
<Sequence.Variables>
|
|
66
|
+
<Variable x:TypeArguments="x:Boolean" Name="fileExists" />
|
|
67
|
+
</Sequence.Variables>
|
|
68
|
+
<ui:PathExists DisplayName="Get Local File or Folder" Path="data/report.pdf" PathType="File" Exists="[fileExists]" />
|
|
69
|
+
<If DisplayName="If file exists">
|
|
70
|
+
<If.Condition>
|
|
71
|
+
<InArgument x:TypeArguments="x:Boolean">
|
|
72
|
+
<VisualBasicValue x:TypeArguments="x:Boolean" ExpressionText="fileExists" />
|
|
73
|
+
</InArgument>
|
|
74
|
+
</If.Condition>
|
|
75
|
+
<If.Then>
|
|
76
|
+
<Sequence DisplayName="Archive file">
|
|
77
|
+
<ui:CreateDirectory DisplayName="Create Folder" Path="archive" />
|
|
78
|
+
<ui:CopyFile DisplayName="Copy File" Path="data/report.pdf" Destination="archive/report.pdf" Overwrite="True" />
|
|
79
|
+
</Sequence>
|
|
80
|
+
</If.Then>
|
|
81
|
+
</If>
|
|
82
|
+
</Sequence>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**Notes:** `PathType="File"` makes a directory at that path return `Exists=False`. `CreateDirectory` is idempotent and creates intermediate dirs. `CopyFile` into an existing folder keeps the name; a full-file destination requires the parent to exist. `MoveFile`/`Delete` share the same `Path` shape.
|
|
86
|
+
**Long-form:** [`PathExists.md`](activity-docs/UiPath.System.Activities/26.4/activities/PathExists.md) · [`CopyFile.md`](activity-docs/UiPath.System.Activities/26.4/activities/CopyFile.md) · [`CreateDirectory.md`](activity-docs/UiPath.System.Activities/26.4/activities/CreateDirectory.md)
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
### DataTable — generate → add row → filter → CSV text
|
|
91
|
+
**Activities:** `UiPath.Core.Activities.GenerateDataTable` · `AddDataRow` · `FilterDataTable` · `OutputDataTable`
|
|
92
|
+
**Prefixes:** `uic:`, `sd:`, `scg:`, `s:`
|
|
93
|
+
**Variables:** `dt, filteredDt : System.Data.DataTable`; `csvText : String`.
|
|
94
|
+
|
|
95
|
+
```xml
|
|
96
|
+
<Sequence DisplayName="DataTable Build Filter Output">
|
|
97
|
+
<Sequence.Variables>
|
|
98
|
+
<Variable x:TypeArguments="sd:DataTable" Name="dt" />
|
|
99
|
+
<Variable x:TypeArguments="sd:DataTable" Name="filteredDt" />
|
|
100
|
+
<Variable x:TypeArguments="x:String" Name="csvText" />
|
|
101
|
+
</Sequence.Variables>
|
|
102
|
+
<uic:GenerateDataTable DisplayName="Generate Data Table From Text" AutoDetectTypes="True" UseColumnHeader="True" CSVParsing="True">
|
|
103
|
+
<uic:GenerateDataTable.Input>
|
|
104
|
+
<InArgument x:TypeArguments="x:String">["Name,Age" & vbLf & "Bob,25"]</InArgument>
|
|
105
|
+
</uic:GenerateDataTable.Input>
|
|
106
|
+
<uic:GenerateDataTable.DataTable>
|
|
107
|
+
<OutArgument x:TypeArguments="sd:DataTable">[dt]</OutArgument>
|
|
108
|
+
</uic:GenerateDataTable.DataTable>
|
|
109
|
+
</uic:GenerateDataTable>
|
|
110
|
+
<uic:AddDataRow DisplayName="Add Data Row">
|
|
111
|
+
<uic:AddDataRow.DataTable>
|
|
112
|
+
<InOutArgument x:TypeArguments="sd:DataTable">[dt]</InOutArgument>
|
|
113
|
+
</uic:AddDataRow.DataTable>
|
|
114
|
+
<uic:AddDataRow.ArrayRow>
|
|
115
|
+
<InArgument x:TypeArguments="s:Object[]">[New Object() {"Alice", 30}]</InArgument>
|
|
116
|
+
</uic:AddDataRow.ArrayRow>
|
|
117
|
+
</uic:AddDataRow>
|
|
118
|
+
<uic:FilterDataTable DisplayName="Filter Data Table" FilterRowsMode="Keep" OutputDataTable="[filteredDt]">
|
|
119
|
+
<uic:FilterDataTable.DataTable>
|
|
120
|
+
<InArgument x:TypeArguments="sd:DataTable">[dt]</InArgument>
|
|
121
|
+
</uic:FilterDataTable.DataTable>
|
|
122
|
+
<uic:FilterDataTable.Filters>
|
|
123
|
+
<scg:List x:TypeArguments="uic:FilterOperationArgument">
|
|
124
|
+
<uic:FilterOperationArgument Operator="GT" BooleanOperator="And">
|
|
125
|
+
<uic:FilterOperationArgument.Column>
|
|
126
|
+
<InArgument x:TypeArguments="x:String">"Age"</InArgument>
|
|
127
|
+
</uic:FilterOperationArgument.Column>
|
|
128
|
+
<uic:FilterOperationArgument.Operand>
|
|
129
|
+
<InArgument x:TypeArguments="x:Int32">[10]</InArgument>
|
|
130
|
+
</uic:FilterOperationArgument.Operand>
|
|
131
|
+
</uic:FilterOperationArgument>
|
|
132
|
+
</scg:List>
|
|
133
|
+
</uic:FilterDataTable.Filters>
|
|
134
|
+
</uic:FilterDataTable>
|
|
135
|
+
<uic:OutputDataTable DisplayName="Output Data Table as Text">
|
|
136
|
+
<uic:OutputDataTable.DataTable>
|
|
137
|
+
<InArgument x:TypeArguments="sd:DataTable">[filteredDt]</InArgument>
|
|
138
|
+
</uic:OutputDataTable.DataTable>
|
|
139
|
+
<uic:OutputDataTable.Text>
|
|
140
|
+
<OutArgument x:TypeArguments="x:String">[csvText]</OutArgument>
|
|
141
|
+
</uic:OutputDataTable.Text>
|
|
142
|
+
</uic:OutputDataTable>
|
|
143
|
+
</Sequence>
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
**Notes (build-verified traps):** `BuildDataTable` does NOT load on cross-platform projects (`TypeLoadException`) — generate from CSV text instead. `ParsingMethod`/`CSV` from the docs is designer-only; the runtime member is `CSVParsing="True"`. `ArrayRow` type argument must be `s:Object[]` — `x:Object[]` fails at `build` (not `validate`). `Filters` `Operator` takes enum identifiers (`GT`, `EQ`, `CONTAINS`, …); omit `Operand` for `EMPTY`/`NOTEMPTY`. `AddDataRow.DataTable` is `InOutArgument` — bind a variable, never an expression.
|
|
147
|
+
**Long-form:** [`GenerateDataTable.md`](activity-docs/UiPath.System.Activities/26.4/activities/GenerateDataTable.md) · [`AddDataRow.md`](activity-docs/UiPath.System.Activities/26.4/activities/AddDataRow.md) · [`FilterDataTable.md`](activity-docs/UiPath.System.Activities/26.4/activities/FilterDataTable.md) · [`OutputDataTable.md`](activity-docs/UiPath.System.Activities/26.4/activities/OutputDataTable.md)
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
### Queue publish
|
|
152
|
+
**Activities:** `UiPath.Core.Activities.AddQueueItem`
|
|
153
|
+
**Prefixes:** `ui:`, `s:`
|
|
154
|
+
|
|
155
|
+
```xml
|
|
156
|
+
<ui:AddQueueItem DisplayName="Add Queue Item" QueueType="InvoiceProcessing" Priority="High" Reference="INV-2024-002" DueDate="[DateTime.Now.AddDays(1)]">
|
|
157
|
+
<ui:AddQueueItem.ItemInformation>
|
|
158
|
+
<InArgument x:TypeArguments="x:String" x:Key="InvoiceNumber">"INV-2024-002"</InArgument>
|
|
159
|
+
<InArgument x:TypeArguments="x:Double" x:Key="Amount">1500.0</InArgument>
|
|
160
|
+
<InArgument x:TypeArguments="x:Boolean" x:Key="Approved">True</InArgument>
|
|
161
|
+
<InArgument x:TypeArguments="s:DateTime" x:Key="InvoiceDate">[DateTime.Today]</InArgument>
|
|
162
|
+
</ui:AddQueueItem.ItemInformation>
|
|
163
|
+
</ui:AddQueueItem>
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
**Notes:** Runtime needs Orchestrator + an existing queue (`QueueType` does not auto-create; 404 error code 1002 otherwise). Use `s:DateTime`, not `x:DateTime`. Item lands with status **New**. Queue **consumption** (`GetTransactionItem`) is not available in cross-platform `UiPath.System.Activities` — for transaction loops see [reframework-guide.md](reframework-guide.md).
|
|
167
|
+
**Long-form:** [`AddQueueItem.md`](activity-docs/UiPath.System.Activities/26.4/activities/AddQueueItem.md)
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
### Retry wrap
|
|
172
|
+
**Activities:** `UiPath.Core.Activities.RetryScope`
|
|
173
|
+
**Prefixes:** `ui:`, `s:`
|
|
174
|
+
**Variables:** `fetchedContent : String` (example body output).
|
|
175
|
+
|
|
176
|
+
```xml
|
|
177
|
+
<ui:RetryScope DisplayName="Retry Scope">
|
|
178
|
+
<ui:RetryScope.NumberOfRetries>
|
|
179
|
+
<InArgument x:TypeArguments="x:Int32">
|
|
180
|
+
<VisualBasicValue x:TypeArguments="x:Int32" ExpressionText="3" />
|
|
181
|
+
</InArgument>
|
|
182
|
+
</ui:RetryScope.NumberOfRetries>
|
|
183
|
+
<ui:RetryScope.RetryInterval>
|
|
184
|
+
<InArgument x:TypeArguments="s:TimeSpan">
|
|
185
|
+
<VisualBasicValue x:TypeArguments="s:TimeSpan" ExpressionText="TimeSpan.FromSeconds(5)" />
|
|
186
|
+
</InArgument>
|
|
187
|
+
</ui:RetryScope.RetryInterval>
|
|
188
|
+
<ui:RetryScope.ActivityBody>
|
|
189
|
+
<ActivityAction>
|
|
190
|
+
<Sequence DisplayName="Action">
|
|
191
|
+
<ui:ReadTextFile DisplayName="Read flaky source" FileName="data/flaky-source.txt" Content="[fetchedContent]" />
|
|
192
|
+
</Sequence>
|
|
193
|
+
</ActivityAction>
|
|
194
|
+
</ui:RetryScope.ActivityBody>
|
|
195
|
+
<ui:RetryScope.Condition>
|
|
196
|
+
<ActivityFunc x:TypeArguments="x:Boolean" />
|
|
197
|
+
</ui:RetryScope.Condition>
|
|
198
|
+
</ui:RetryScope>
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
**Notes:** Empty `ActivityFunc` = retry on exception only (the common wrap). To retry-until-true, place an `Activity(Of Boolean)` inside `Condition`. Body serializes as `ActivityBody`/`ActivityAction` — not a bare child.
|
|
202
|
+
**Long-form:** [`RetryScope.md`](activity-docs/UiPath.System.Activities/26.4/activities/RetryScope.md)
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
### Invoke workflow with arguments
|
|
207
|
+
**Activities:** `UiPath.Core.Activities.InvokeWorkflowFile`
|
|
208
|
+
**Prefixes:** `ui:`, `scg:`
|
|
209
|
+
**Variables:** `childResult : String`.
|
|
210
|
+
|
|
211
|
+
```xml
|
|
212
|
+
<ui:InvokeWorkflowFile DisplayName="Invoke Workflow File" WorkflowFileName="Pattern_Child.xaml">
|
|
213
|
+
<ui:InvokeWorkflowFile.Arguments>
|
|
214
|
+
<scg:Dictionary x:TypeArguments="x:String, Argument">
|
|
215
|
+
<InArgument x:TypeArguments="x:String" x:Key="in_Message">["hello"]</InArgument>
|
|
216
|
+
<OutArgument x:TypeArguments="x:String" x:Key="out_Result">[childResult]</OutArgument>
|
|
217
|
+
</scg:Dictionary>
|
|
218
|
+
</ui:InvokeWorkflowFile.Arguments>
|
|
219
|
+
</ui:InvokeWorkflowFile>
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
Child workflow declares its contract via root `x:Members`:
|
|
223
|
+
|
|
224
|
+
```xml
|
|
225
|
+
<x:Members>
|
|
226
|
+
<x:Property Name="in_Message" Type="InArgument(x:String)" />
|
|
227
|
+
<x:Property Name="out_Result" Type="OutArgument(x:String)" />
|
|
228
|
+
</x:Members>
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
**Notes:** Keys must match the child's declared argument names exactly; `InArgument`/`OutArgument`/`InOutArgument` per direction. Runs synchronously. `WorkflowFileName` is project-relative. XML-escape `&` in VB concatenation (`&`).
|
|
232
|
+
**Long-form:** [`InvokeWorkflow.md`](activity-docs/UiPath.System.Activities/26.4/activities/InvokeWorkflow.md)
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
### Invoke Code — bulk row processing
|
|
237
|
+
**Activities:** `UiPath.Core.Activities.InvokeCode` (input DataTable from the [DataTable entry](#datatable--generate--add-row--filter--csv-text))
|
|
238
|
+
**Prefixes:** `ui:`, `scg:`, `sd:`
|
|
239
|
+
**Verified:** `UiPath.System.Activities` 26.6.2 — validate + build + **run** (outputs checked; this is the silent-no-op activity, so the gate alone is not proof)
|
|
240
|
+
**Variables:** `dt : System.Data.DataTable`; `validCount : Int32`; `totalAmount : Double`.
|
|
241
|
+
|
|
242
|
+
```xml
|
|
243
|
+
<ui:InvokeCode DisplayName="Process Rows" Code="For Each row As System.Data.DataRow In rows.Rows
 Dim amount As Double
 If Double.TryParse(row("Amount").ToString(), System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture, amount) AndAlso amount > 0 Then
 validCount += 1
 totalAmount += amount
 End If
Next">
|
|
244
|
+
<ui:InvokeCode.Arguments>
|
|
245
|
+
<scg:Dictionary x:TypeArguments="x:String, Argument">
|
|
246
|
+
<InArgument x:TypeArguments="sd:DataTable" x:Key="rows">[dt]</InArgument>
|
|
247
|
+
<OutArgument x:TypeArguments="x:Int32" x:Key="validCount">[validCount]</OutArgument>
|
|
248
|
+
<OutArgument x:TypeArguments="x:Double" x:Key="totalAmount">[totalAmount]</OutArgument>
|
|
249
|
+
</scg:Dictionary>
|
|
250
|
+
</ui:InvokeCode.Arguments>
|
|
251
|
+
</ui:InvokeCode>
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**When:** the default escalation for complex bulk row processing — per-row parse + validate + branch + accumulate ([data-manipulation-guide.md § Code vs activity chains](data-manipulation-guide.md)). A `ForEach` with ONE `If`/`Switch` stays plain XAML.
|
|
255
|
+
**Notes (run-verified traps):** `Code` MUST be an XML **attribute** (`
` newlines, `"` quotes) — a child/CDATA `<ui:InvokeCode.Code>` element passes `validate`+`build` but runs as a silent no-op ([xaml/common-pitfalls.md § InvokeCode Code Property](xaml/common-pitfalls.md#invokecode-code-property--attribute-form-only)). Omit `Language` — it is inferred from the project; explicit values are `VBNet`/`CSharp` only (`"VisualBasic"` passes validation, fails at runtime). Argument keys must match the identifiers the code uses; bind variables, not expressions, to `OutArgument`s. Parse with `InvariantCulture` — bare `Double.TryParse` under a comma-decimal locale silently rejects `10.5`-style input. C#-expression projects hit expression-tree limits in surrounding XAML expressions, not inside `Code` — the code body is a normal method body.
|
|
256
|
+
**Long-form:** `{PROJECT_DIR}/.local/docs/packages/UiPath.System.Activities/activities/InvokeCode.md`
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
### CSV file read / write
|
|
261
|
+
**Activities:** `UiPath.CSV.Activities.ReadCsvFile` · `AppendWriteCsvFile`
|
|
262
|
+
**Packages:** `UiPath.Excel.Activities` 3.6.0-preview (CSV activities are Excel-package-owned, cross-platform, no Excel app needed)
|
|
263
|
+
**Prefixes:** `csv:`, `sd:`
|
|
264
|
+
**Variables:** `csvData : System.Data.DataTable`.
|
|
265
|
+
|
|
266
|
+
```xml
|
|
267
|
+
<Sequence DisplayName="CSV Read Write">
|
|
268
|
+
<Sequence.Variables>
|
|
269
|
+
<Variable x:TypeArguments="sd:DataTable" Name="csvData" />
|
|
270
|
+
</Sequence.Variables>
|
|
271
|
+
<csv:ReadCsvFile DisplayName="Read CSV" FilePath="data/input.csv" IncludeColumnNames="True" DataTable="[csvData]" />
|
|
272
|
+
<csv:AppendWriteCsvFile DisplayName="Write CSV" FilePath="data/output.csv" CsvAction="Write" AddHeaders="True">
|
|
273
|
+
<csv:AppendWriteCsvFile.DataTable>
|
|
274
|
+
<InArgument x:TypeArguments="sd:DataTable">[csvData]</InArgument>
|
|
275
|
+
</csv:AppendWriteCsvFile.DataTable>
|
|
276
|
+
</csv:AppendWriteCsvFile>
|
|
277
|
+
</Sequence>
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
**Notes:** `CsvAction`: `Write` replaces, `Append` adds after existing rows. Delimiter via `DelimitatorForViewModel` (`Comma` default; `Semicolon`/`Pipe`/`Caret`/`Tab`). `IncludeColumnNames="True"` = first row is headers.
|
|
281
|
+
**Long-form:** [`ReadCsvFile.md` (3.6)](activity-docs/UiPath.Excel.Activities/3.6/activities/ReadCsvFile.md) · `{PROJECT_DIR}/.local/docs/packages/UiPath.Excel.Activities/activities/AppendWriteCsvFile.md`
|
|
282
|
+
|
|
283
|
+
---
|
|
284
|
+
|
|
285
|
+
### HTTP request → JSON
|
|
286
|
+
**Activities:** `UiPath.Web.Activities.Http.NetHttpRequest` · `UiPath.Web.Activities.DeserializeJson<T>`
|
|
287
|
+
**Packages:** `UiPath.WebAPI.Activities` 2.5.1
|
|
288
|
+
**Prefixes:** `nhr:`, `nhrm:`, `web:`, `jn:`
|
|
289
|
+
**Variables:** `httpResponse : UiPath.Web.Activities.Http.Models.HttpResponseSummary`; `jsonResult : Newtonsoft.Json.Linq.JObject`.
|
|
290
|
+
|
|
291
|
+
```xml
|
|
292
|
+
<Sequence DisplayName="HTTP GET Deserialize">
|
|
293
|
+
<Sequence.Variables>
|
|
294
|
+
<Variable x:TypeArguments="nhrm:HttpResponseSummary" Name="httpResponse" />
|
|
295
|
+
<Variable x:TypeArguments="jn:JObject" Name="jsonResult" />
|
|
296
|
+
</Sequence.Variables>
|
|
297
|
+
<nhr:NetHttpRequest DisplayName="GET API Data" RequestUrl="https://api.example.com/data" Method="GET" RequestBodyType="None" RetryPolicyType="Basic" RetryCount="[3]" TimeoutInMiliseconds="[10000]" Result="[httpResponse]" />
|
|
298
|
+
<web:DeserializeJson x:TypeArguments="jn:JObject" DisplayName="Deserialize JSON" JsonString="[httpResponse.TextContent]" JsonObject="[jsonResult]" />
|
|
299
|
+
</Sequence>
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
**Notes (build-verified traps):** Use `NetHttpRequest` — `HttpClient` is legacy. The XAML assembly is `UiPath.Web.Activities`, NOT the package id `UiPath.WebAPI.Activities`; `HttpResponseSummary` lives in `...Http.Models`. Read body from `httpResponse.TextContent`, verdict from `httpResponse.StatusCode`. Default `ContinueOnError=True` turns network failures into synthetic `503` responses — guard on `StatusCode` before parsing. POST JSON: `RequestBodyType="Text"` + `TextPayload` (content type defaults to `application/json`).
|
|
303
|
+
**Long-form:** `{PROJECT_DIR}/.local/docs/packages/UiPath.WebAPI.Activities/activities/NetHttpRequest.md` · `.../DeserializeJson.md`
|
|
@@ -7,7 +7,7 @@ Expression/code patterns for transforming data in modern projects: DataTable LIN
|
|
|
7
7
|
- C# XAML expression *binding* form (`CSharpValue`/`CSharpReference`) → [xaml/csharp-activity-binding-guide.md](xaml/csharp-activity-binding-guide.md).
|
|
8
8
|
- Config.xlsx row/field access in REFramework → [reframework-guide.md](reframework-guide.md).
|
|
9
9
|
- Per-activity property surfaces (ForEachRow, AddDataRow, JoinDataTables, SortDataTable, …) → `{PROJECT_DIR}/.local/docs/packages/UiPath.System.Activities/` or `references/activity-docs/UiPath.System.Activities/`.
|
|
10
|
-
- Coded-mode `using` directives → [coded/
|
|
10
|
+
- Coded-mode `using` directives → [coded/operations-guide.md § Using Statements Rules](coded/operations-guide.md#using-statements-rules).
|
|
11
11
|
|
|
12
12
|
## Where each snippet goes — read first
|
|
13
13
|
|
|
@@ -28,7 +28,7 @@ A DataTable LINQ chain needs ALL of the following in `TextExpression` (XAML). Do
|
|
|
28
28
|
- **Namespace imports** (`NamespacesForImplementation`): `System.Data`, `System.Linq`
|
|
29
29
|
- **Assembly references** (`ReferencesForImplementation`): `System.Data`, `System.Data.Common`, `System.Data.DataSetExtensions`
|
|
30
30
|
|
|
31
|
-
A scaffolded project (`uip rpa init`) already has all of these — untouched, the LINQ family just works. Add them only when hand-authoring a XAML file or after trimming imports. Coded (`.cs`): `using System.Data;` + `using System.Linq;` ([coded/
|
|
31
|
+
A scaffolded project (`uip rpa init`) already has all of these — untouched, the LINQ family just works. Add them only when hand-authoring a XAML file or after trimming imports. Coded (`.cs`): `using System.Data;` + `using System.Linq;` ([coded/operations-guide.md § Using Statements Rules](coded/operations-guide.md#using-statements-rules)).
|
|
32
32
|
|
|
33
33
|
Notes:
|
|
34
34
|
- `AsEnumerable` / `CopyToDataTable` / `DataRowComparer`: in modern (Windows / cross-platform) they resolve via `System.Data` (the `System.Data.DataSetExtensions` reference is harmless and present by default); **legacy (.NET Framework 4.6.1) requires `System.Data.DataSetExtensions`** — there they live in that assembly, not `System.Data`. Including it in both is the safe default.
|
|
@@ -55,6 +55,7 @@ See [csharp-activity-binding-guide.md](xaml/csharp-activity-binding-guide.md).
|
|
|
55
55
|
| Expression filter, no new columns | `dt.Select("[Amount] > 1000")` | returns `DataRow()`; string match is **case-INSENSITIVE** by default; SQL-ish syntax |
|
|
56
56
|
| Filter/sort/group/join/project | **LINQ** in one `Assign` | most flexible; ~2× faster than Join Data Tables on large sets |
|
|
57
57
|
| Heavy multi-step transforms, unit-tested logic, safe accessors | **coded** (`.cs`) | C# LINQ inline; see § When to move to coded |
|
|
58
|
+
| Multi-step transform inside a **C#-expression XAML** workflow | **Invoke Code** (or coded workflow via Invoke Workflow File) | C# XAML expression trees forbid statements/`out var`/optional-arg overloads (`CS0854`); helper `.cs` types unreachable — see § Exception below |
|
|
58
59
|
| Key-value config / counters | `Dictionary(Of K,V)` | |
|
|
59
60
|
| Tabular data | `DataTable` | typed columns; LINQ via `.AsEnumerable()` |
|
|
60
61
|
|
|
@@ -64,6 +65,20 @@ See [csharp-activity-binding-guide.md](xaml/csharp-activity-binding-guide.md).
|
|
|
64
65
|
|
|
65
66
|
When a transform genuinely outgrows expressions — >2 statement steps, a reusable safe accessor/helper, mutating rows in a loop, real try/catch around a parse, or an unreadable one-liner — move to a **coded (`.cs`) workflow** ([coded/operations-guide.md](coded/operations-guide.md)), still not `Invoke Code`. Coded gives `?.`, `out var`, multi-statement logic, and unit tests.
|
|
66
67
|
|
|
68
|
+
### Exception: C#-expression XAML workflows — Invoke Code or a coded workflow via Invoke Workflow File; NEVER a helper `.cs` source file
|
|
69
|
+
|
|
70
|
+
When the transform must live inside a C#-expression XAML workflow, two hard limits change the advice above:
|
|
71
|
+
|
|
72
|
+
1. XAML expressions cannot reference the project's coded source file (`.cs`) types — `CS0103` at validate/build ([xaml/common-pitfalls.md § XAML Expressions Cannot Reference Coded Source File Types](xaml/common-pitfalls.md)). A helper class in a Coded Source File is unreachable from XAML expressions, period.
|
|
73
|
+
2. C# XAML expressions compile as expression trees — no statements, no `out var` (`TryParse`), no optional-argument overloads (`CS0854`) ([xaml/common-pitfalls.md § C# XAML Expressions Compile as Expression Trees](xaml/common-pitfalls.md)).
|
|
74
|
+
|
|
75
|
+
Two valid escalations:
|
|
76
|
+
|
|
77
|
+
- **`Invoke Code`** — logic stays inline in the XAML; data in/out via its Arguments collection; author `Code` as an XML attribute ([xaml/common-pitfalls.md § InvokeCode Code Property](xaml/common-pitfalls.md)).
|
|
78
|
+
- **Coded Workflow invoked via `Invoke Workflow File`** — logic moves to a `.cs` file carrying `[Workflow]` + `Execute` (a Coded *Workflow*, not a bare source file); the XAML calls it like any child workflow (see § Source file vs workflow below).
|
|
79
|
+
|
|
80
|
+
**Code vs activity chains for row processing:** unless the user states a preference, complex bulk row processing (per-row parse + validate + branch + accumulate) goes to **code** — one of the two escalations above — not an activity chain. Nested `If`/`Switch` levels inside a `ForEach` become unreadable, trip the analyzer nesting threshold, and every embedded expression re-fights the expression-tree limits. A simple `ForEach` row with ONE `If` or `Switch` is fine as plain XAML activities — more readable than code for that size.
|
|
81
|
+
|
|
67
82
|
**Source file vs workflow — and how to call it:** a bare **Coded Source File** (helper class, no entry point) is callable only from other code. To invoke the logic from a XAML process, make it a **Coded Workflow** (`[Workflow]` + `Execute`) and call it via **Invoke Workflow File** (from XAML) or `RunWorkflow` / the typed `workflows` property (from coded) — see [coded/operations-guide.md](coded/operations-guide.md).
|
|
68
83
|
|
|
69
84
|
Tabular *source/sink*: modern projects use the **Use Excel File** scope (not classic Excel Application Scope) — route to the Excel activity docs.
|
|
@@ -308,4 +323,4 @@ API-response pattern: parse `responseBody`, `If response("error") IsNot Nothing`
|
|
|
308
323
|
|
|
309
324
|
## Coded (`.cs`) note
|
|
310
325
|
|
|
311
|
-
Coded workflows use the C# forms directly (`r => r["Col"]`, ternary, `out`, `?.`, `??`, collection initializers, verbatim `@"\d+"` regex, query or method LINQ). Add the `using`s (`System.Data`, `System.Linq`, `System.Text.RegularExpressions`, `System.Globalization`) per [coded/
|
|
326
|
+
Coded workflows use the C# forms directly (`r => r["Col"]`, ternary, `out`, `?.`, `??`, collection initializers, verbatim `@"\d+"` regex, query or method LINQ). Add the `using`s (`System.Data`, `System.Linq`, `System.Text.RegularExpressions`, `System.Globalization`) per [coded/operations-guide.md § Using Statements Rules](coded/operations-guide.md#using-statements-rules). The XAML C# *binding* wrapper is separate — [xaml/csharp-activity-binding-guide.md](xaml/csharp-activity-binding-guide.md).
|
|
@@ -462,8 +462,6 @@ Read `runResult` fields in this order. **Verdict comes from the outer `Result` e
|
|
|
462
462
|
3. **`Output` (when `HasErrors: false`)** — workflow's serialized output arguments JSON for `run` / `debug start` completions. Empty string `""` for debug-command responses (step / continue / cancel) and on failure.
|
|
463
463
|
4. **Streamed log entries** — diagnostic context emitted live during execution on a separate channel. Use them to read variable values logged by the workflow, trace ordering, or correlate context with an `ErrorMessage` that already failed the run. **Do NOT use log-entry `Level` as a failure signal.**
|
|
464
464
|
|
|
465
|
-
> **Anti-pattern: treating a streamed log entry's `Level == "Error"` or `"Warning"` as a `run` / `debug start` failure.** Workflows routinely emit `Log Message` at `Error` / `Warning` to record handled exceptions, validation results, or business outcomes. The run completes successfully and `HasErrors` stays `false`. Reading log levels as a failure signal flips successful runs to "failed" and burns retries on a green workflow.
|
|
466
|
-
|
|
467
465
|
### Identifying the Root Cause from Debug Output
|
|
468
466
|
|
|
469
467
|
A practical example — a workflow makes an HTTP request and tries to deserialize the response as JSON, but fails:
|