@uipath/skills 1.195.0 → 1.196.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 +16 -10
- package/README.md +39 -4
- package/assets/skill-status.json +189 -0
- package/assets/uip-catalog-snapshot.json +67 -97
- package/commands/install-permissions.md +46 -2
- package/hooks/suggest-permissions.sh +0 -0
- package/hooks/validate-skill-descriptions.sh +0 -0
- package/package.json +1 -1
- package/skills/uipath-admin/SKILL.md +6 -7
- package/skills/uipath-admin/references/audit-commands.md +32 -10
- package/skills/uipath-admin/references/audit-workflow-guide.md +25 -6
- package/skills/uipath-admin/references/ip-restriction/ip-restriction-commands.md +1 -1
- package/skills/uipath-agents/SKILL.md +5 -3
- package/skills/uipath-agents/references/coded/embedding-in-flows.md +6 -0
- package/skills/uipath-agents/references/coded/flow-integration.md +1 -0
- package/skills/uipath-agents/references/coded/frameworks/langgraph-integration.md +2 -2
- package/skills/uipath-agents/references/coded/frameworks/llamaindex-integration.md +1 -1
- package/skills/uipath-agents/references/coded/frameworks/openai-agents-integration.md +5 -1
- package/skills/uipath-agents/references/coded/lifecycle/build.md +1 -0
- package/skills/uipath-agents/references/coded/lifecycle/evaluate.md +8 -6
- package/skills/uipath-agents/references/coded/quickstart.md +17 -12
- package/skills/uipath-agents/references/lowcode/agent-definition.md +17 -16
- package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/analyze-attachments.md +2 -2
- package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/batch-transform/impl-json.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/built-in-tools.md +4 -4
- package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/deeprag/impl-json.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/context/context.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/context/datafabric.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/context/index.md +12 -12
- package/skills/uipath-agents/references/lowcode/capabilities/escalation/escalation.md +14 -14
- package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails-recommend.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails.md +23 -20
- package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +27 -26
- package/skills/uipath-agents/references/lowcode/capabilities/integration-service/integration-service.md +12 -13
- package/skills/uipath-agents/references/lowcode/capabilities/mcp/mcp.md +133 -0
- package/skills/uipath-agents/references/lowcode/capabilities/memory/memory.md +9 -9
- package/skills/uipath-agents/references/lowcode/capabilities/process/process.md +25 -24
- package/skills/uipath-agents/references/lowcode/capabilities/process/solution-files.md +6 -6
- package/skills/uipath-agents/references/lowcode/critical-rules.md +17 -17
- package/skills/uipath-agents/references/lowcode/debug.md +55 -0
- package/skills/uipath-agents/references/lowcode/evaluations/evaluate.md +6 -6
- package/skills/uipath-agents/references/lowcode/evaluations/evaluation-sets.md +1 -1
- package/skills/uipath-agents/references/lowcode/evaluations/evaluators.md +3 -3
- package/skills/uipath-agents/references/lowcode/evaluations/running-evaluations.md +8 -8
- package/skills/uipath-agents/references/lowcode/lowcode.md +18 -12
- package/skills/uipath-agents/references/lowcode/model-selection-guide.md +3 -3
- package/skills/uipath-agents/references/lowcode/project-lifecycle.md +53 -33
- package/skills/uipath-agents/references/lowcode/solution-resources.md +8 -8
- package/skills/uipath-api-workflow/SKILL.md +32 -83
- package/skills/uipath-api-workflow/references/cli-reference.md +40 -26
- package/skills/uipath-api-workflow/references/connector-activity-discovery.md +75 -23
- package/skills/uipath-api-workflow/references/troubleshooting.md +4 -12
- package/skills/uipath-automation-discovery/SKILL.md +234 -0
- package/skills/uipath-automation-discovery/references/intake-guide.md +85 -0
- package/skills/uipath-automation-discovery/references/mining-guide.md +156 -0
- package/skills/uipath-automation-discovery/references/report-template.md +95 -0
- package/skills/uipath-coded-apps/SKILL.md +0 -2
- package/skills/uipath-data-fabric/SKILL.md +0 -2
- package/skills/uipath-feedback/SKILL.md +1 -1
- package/skills/uipath-governance/SKILL.md +0 -2
- package/skills/uipath-human-in-the-loop/SKILL.md +2 -3
- package/skills/uipath-maestro-bpmn/.maintenance/check-all.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-anchors.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-depth.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-link-text.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-links.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-orphans.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-plugin-pairs.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-template.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-uip-commands.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.py +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.sh +0 -0
- package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/api-workflow.md +1 -1
- package/skills/uipath-maestro-bpmn/references/operate/references/run.md +1 -1
- package/skills/uipath-maestro-bpmn/references/shared/local-metadata-regeneration-guide.md +2 -2
- package/skills/uipath-maestro-bpmn/references/shared/wrapper-shells.md +1 -1
- package/skills/uipath-maestro-case/SKILL.md +22 -27
- package/skills/uipath-maestro-case/references/bindings-and-expressions.md +7 -1
- package/skills/uipath-maestro-case/references/bindings-v2-sync.md +7 -16
- package/skills/uipath-maestro-case/references/case-commands.md +9 -9
- package/skills/uipath-maestro-case/references/case-editing-operations.md +51 -67
- package/skills/uipath-maestro-case/references/case-schema.md +74 -138
- package/skills/uipath-maestro-case/references/connector-integration.md +32 -5
- package/skills/uipath-maestro-case/references/connector-trigger-common.md +39 -12
- package/skills/uipath-maestro-case/references/evals/evals.json +9 -23
- package/skills/uipath-maestro-case/references/implementation.md +24 -24
- package/skills/uipath-maestro-case/references/phased-execution.md +24 -38
- package/skills/uipath-maestro-case/references/placeholder-tasks.md +9 -9
- package/skills/uipath-maestro-case/references/planning.md +20 -79
- package/skills/uipath-maestro-case/references/plugins/case/impl-json.md +15 -122
- package/skills/uipath-maestro-case/references/plugins/case/planning.md +3 -1
- package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/impl-json.md +10 -22
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/impl-json.md +7 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +5 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md +4 -4
- package/skills/uipath-maestro-case/references/plugins/logging/impl-json.md +10 -0
- package/skills/uipath-maestro-case/references/plugins/sla/impl-json.md +10 -42
- package/skills/uipath-maestro-case/references/plugins/sla/planning.md +5 -5
- package/skills/uipath-maestro-case/references/plugins/stages/impl-json.md +8 -79
- package/skills/uipath-maestro-case/references/plugins/stages/planning.md +7 -14
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/planning.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/planning.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/planning.md +4 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/impl-json.md +2 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/planning.md +12 -7
- 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/process/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/process/planning.md +4 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/planning.md +4 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/impl-json.md +3 -0
- package/skills/uipath-maestro-case/references/plugins/triggers/event/impl-json.md +6 -7
- package/skills/uipath-maestro-case/references/plugins/triggers/event/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/triggers/manual/impl-json.md +4 -27
- package/skills/uipath-maestro-case/references/plugins/triggers/timer/impl-json.md +8 -20
- package/skills/uipath-maestro-case/references/plugins/variables/bindings/impl-json.md +6 -11
- package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +15 -30
- package/skills/uipath-maestro-case/references/plugins/variables/global-vars/planning.md +4 -4
- package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +8 -7
- package/skills/uipath-maestro-case/references/registry-discovery.md +4 -4
- package/skills/uipath-maestro-case/references/sdd-generation-rules.md +12 -10
- package/skills/uipath-maestro-case/references/troubleshooting-guide.md +1 -1
- package/skills/uipath-maestro-flow/.maintenance/check-all.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-anchors.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-depth.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-link-text.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-links.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-orphans.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-plugin-pairs.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-template.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-uip-commands.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-versions.sh +0 -0
- package/skills/uipath-maestro-flow/SKILL.md +9 -6
- package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +4 -4
- package/skills/uipath-maestro-flow/references/author/references/brownfield.md +17 -2
- package/skills/uipath-maestro-flow/references/author/references/editing-operations-cli.md +1 -1
- package/skills/uipath-maestro-flow/references/author/references/editing-operations-json.md +3 -3
- package/skills/uipath-maestro-flow/references/author/references/editing-operations.md +9 -9
- package/skills/uipath-maestro-flow/references/author/references/greenfield.md +13 -10
- package/skills/uipath-maestro-flow/references/author/references/planning-arch.md +75 -5
- package/skills/uipath-maestro-flow/references/author/references/planning-impl.md +2 -1
- package/skills/uipath-maestro-flow/references/author/references/plugins/connector/impl.md +14 -4
- package/skills/uipath-maestro-flow/references/author/references/plugins/connector-trigger/impl.md +20 -4
- package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/impl.md +5 -5
- package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/planning.md +5 -5
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-connector.md +81 -0
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-manual.md +63 -0
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl.md +59 -57
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/planning.md +8 -7
- package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/impl.md +23 -23
- package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/planning.md +2 -2
- package/skills/uipath-maestro-flow/references/diagnose/CAPABILITY.md +1 -1
- package/skills/uipath-maestro-flow/references/diagnose/references/failure-modes.md +6 -6
- package/skills/uipath-maestro-flow/references/evaluate/CAPABILITY.md +2 -2
- package/skills/uipath-maestro-flow/references/evaluate/references/upload-safety.md +1 -1
- package/skills/uipath-maestro-flow/references/operate/CAPABILITY.md +8 -8
- package/skills/uipath-maestro-flow/references/operate/references/run.md +2 -2
- package/skills/uipath-maestro-flow/references/operate/references/ship.md +7 -7
- package/skills/uipath-maestro-flow/references/shared/cli-commands.md +19 -17
- package/skills/uipath-maestro-flow/references/shared/cli-conventions.md +1 -1
- package/skills/uipath-maestro-flow/references/shared/file-format.md +1 -1
- package/skills/uipath-maestro-flow/references/shared/ux-narration-and-todos.md +7 -7
- package/skills/uipath-planner/SKILL.md +110 -74
- package/skills/{uipath-solution → uipath-planner}/assets/templates/agent-sdd-template.md +3 -3
- package/skills/{uipath-solution → uipath-planner}/assets/templates/api-workflow-sdd-template.md +4 -4
- package/skills/{uipath-solution → uipath-planner}/assets/templates/case-sdd-template.md +4 -4
- package/skills/{uipath-solution → uipath-planner}/assets/templates/coded-app-sdd-template.md +3 -3
- package/skills/{uipath-solution → uipath-planner}/assets/templates/flow-sdd-template.md +4 -4
- package/skills/{uipath-solution → uipath-planner}/assets/templates/rpa-sdd-template.md +11 -11
- package/skills/uipath-planner/references/multi-skill-patterns-guide.md +3 -3
- package/skills/uipath-planner/references/non-pdd-lane-guide.md +10 -6
- package/skills/uipath-planner/references/pdd-driven-lane-guide.md +17 -7
- package/skills/uipath-planner/references/plan-and-tasks-format.md +2 -2
- package/skills/{uipath-solution/references/design → uipath-planner/references}/product-selection-guide.md +8 -8
- package/skills/{uipath-solution/references/design → uipath-planner/references}/rpa-product-guide.md +1 -1
- package/skills/{uipath-solution/references/design → uipath-planner/references}/sdd-generation-guide.md +26 -39
- package/skills/{uipath-solution/references/design → uipath-planner/references}/tenant-library-search-guide.md +7 -7
- package/skills/uipath-platform/SKILL.md +21 -48
- package/skills/uipath-platform/references/integration-service/http-request.md +5 -2
- package/skills/uipath-platform/references/integration-service/reference-resolution.md +19 -1
- package/skills/uipath-platform/references/integration-service/triggers.md +21 -5
- package/skills/uipath-platform/references/licensing/consumables-report.md +1 -1
- package/skills/uipath-platform/references/licensing/tenant-allocations.md +1 -1
- package/skills/uipath-platform/references/licensing/user-licenses-allocations.md +1 -1
- package/skills/uipath-platform/references/{resources → orchestrator}/manage-assets.md +37 -34
- package/skills/uipath-platform/references/orchestrator/manage-sessions.md +1 -1
- package/skills/uipath-platform/references/orchestrator/orchestrator.md +4 -31
- package/skills/uipath-platform/references/{resources → orchestrator}/process-queues.md +61 -50
- package/skills/uipath-platform/references/{resources → orchestrator}/resources.md +21 -21
- package/skills/uipath-platform/references/orchestrator/run-jobs.md +26 -14
- package/skills/uipath-platform/references/orchestrator/setup-environment.md +20 -16
- package/skills/uipath-platform/references/orchestrator/tenant-admin.md +7 -7
- package/skills/uipath-platform/references/{resources → orchestrator}/triggers-and-webhooks.md +41 -37
- package/skills/uipath-platform/references/{resources → orchestrator}/work-with-storage.md +56 -34
- package/skills/uipath-platform/references/uip-commands.md +20 -19
- package/skills/uipath-review/SKILL.md +81 -7
- package/skills/uipath-review/references/agents/agent-common-issues.md +42 -0
- package/skills/uipath-review/references/agents/agent-review-checklist.md +79 -57
- package/skills/uipath-review/references/agents/agents-coded-rules.md +160 -0
- package/skills/uipath-review/references/agents/agents-common-rules.md +32 -0
- package/skills/uipath-review/references/agents/agents-lowcode-rules.md +128 -0
- package/skills/uipath-review/references/platform/platform-resources-checklist.md +2 -2
- package/skills/uipath-review/references/review-workflow-guide.md +1 -1
- package/skills/uipath-review/references/rpa/rpa-review-checklist.md +2 -2
- package/skills/uipath-review/references/rule-catalog-workflow.md +90 -0
- package/skills/uipath-review/references/rule-format.md +91 -0
- package/skills/uipath-rpa/SKILL.md +16 -6
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/CreateEntityRecord.md +149 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/CreateMultipleEntityRecords.md +67 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteEntityRecord.md +44 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteFileFromRecordField.md +56 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteMultipleEntityRecords.md +65 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DownloadFileFromRecordField.md +115 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/GetEntityRecordById.md +50 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/QueryEntityRecords.md +69 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UpdateEntityRecord.md +120 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UpdateMultipleEntityRecords.md +67 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UploadFileToRecordField.md +103 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/guides/data-service-filter-builder-guide.md +461 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/overview.md +355 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AppendRangeX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AutoFillX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AutoFitX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ChangeDataRangeModification.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ChangePivotTableDataSourceX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ClearRangeX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CopyPasteRangeX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CreatePivotTableXv2.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CreateTableX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteColumnX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteRowsX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DuplicateSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExecuteMacroArgumentX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExecuteMacroX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExportExcelToCsvX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FillRangeX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FilterPivotTableX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FilterX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FindFirstLastDataRowX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FindReplaceValueX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FormatRangeX.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertColumnX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertExcelChartX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertRowsX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InvokeVBAArgumentX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InvokeVBAX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/LookupX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/PivotTableFieldX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ProtectSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ReadCellFormulaX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ReadCellValueX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RefreshPivotTableX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RemoveDuplicatesX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RenameSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SaveAsPdfX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SaveExcelFileX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SortColumnX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SortX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/UnprotectSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/UpdateChartX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/VLookupX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/WriteCellX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.GSuite.Activities/3.8/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.Mail.Activities/2.8/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.MicrosoftOffice365.Activities/3.8/activities/SendMailConnections.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.MicrosoftOffice365.Activities/3.8/activities/overview.md +3 -3
- package/skills/uipath-rpa/references/activity-docs/UiPath.Presentations.Activities/2.5/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.System.Activities/25.10/activities/overview.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Word.Activities/2.5/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/cli-reference.md +108 -554
- package/skills/uipath-rpa/references/coded/coding-guidelines.md +1 -1
- package/skills/uipath-rpa/references/coded/operations-guide.md +3 -3
- package/skills/uipath-rpa/references/coded/third-party-packages-guide.md +1 -1
- package/skills/uipath-rpa/references/connector-capabilities.md +3 -2
- package/skills/uipath-rpa/references/debugging.md +43 -36
- package/skills/uipath-rpa/references/environment-setup.md +3 -3
- package/skills/uipath-rpa/references/is-connector-xaml-guide.md +3 -3
- package/skills/uipath-rpa/references/library-authoring-guide.md +226 -0
- package/skills/uipath-rpa/references/project-structure-guide.md +43 -0
- package/skills/uipath-rpa/references/publishing-guide.md +5 -5
- package/skills/uipath-rpa/references/tenant-library-search-guide.md +18 -14
- package/skills/uipath-rpa/references/testing-guide.md +6 -6
- package/skills/uipath-rpa/references/trigger-pattern-guide.md +2 -2
- package/skills/uipath-rpa/references/ui-automation-guide.md +43 -6
- package/skills/uipath-rpa/references/uia-configure-target-workflows.md +2 -2
- package/skills/uipath-rpa/references/uia-prerequisites.md +1 -1
- package/skills/uipath-rpa/references/validation-guide.md +4 -4
- package/skills/uipath-rpa/references/xaml/canvas-layout-guide.md +4 -1
- package/skills/uipath-rpa/references/xaml/common-pitfalls.md +18 -6
- package/skills/uipath-rpa/references/xaml/long-running-workflow-guide.md +304 -0
- package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +3 -0
- package/skills/uipath-solution/SKILL.md +23 -125
- package/skills/uipath-solution/references/{operate/activate-and-manage.md → activate-and-manage.md} +1 -1
- package/skills/uipath-solution/references/{operate/develop-solution.md → develop-solution.md} +43 -37
- package/skills/uipath-solution/references/{operate/pack-and-deploy.md → pack-and-deploy.md} +3 -3
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/intra-solution-references.md +2 -2
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/manual-edits.md +4 -4
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/same-name-across-folders.md +2 -2
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/shared-cloud-resource.md +3 -3
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/virtual-resource.md +4 -4
- package/skills/uipath-solution/references/{operate/scenarios.md → scenarios.md} +5 -5
- package/skills/uipath-solution/references/{operate/solution-overview.md → solution-overview.md} +3 -3
- package/skills/uipath-tasks/SKILL.md +0 -2
- package/skills/uipath-test/SKILL.md +26 -7
- package/skills/uipath-troubleshoot/agents/triage.md +6 -4
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/overview.md +55 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/add-queue-item-failed.md +58 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/application-launch-failed.md +56 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/browser-open-or-attach-failed.md +59 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/file-operation-failed.md +60 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/foreach-row-failed.md +56 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/image-target-not-found.md +56 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/invoke-code-failed.md +54 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/invoke-workflow-failed.md +58 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/kill-process-failed.md +49 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-activity-configuration-error.md +80 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-activity-timeout.md +61 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-element-interaction-failed.md +61 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-element-not-found.md +64 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/summary.md +24 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-file-locked.md +142 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-file-not-found.md +140 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-null-reference.md +119 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-sheet-not-found.md +146 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/write-cell-failures.md +131 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/summary.md +5 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/investigation_guide.md +1 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/overview.md +16 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/activity-configuration-error.md +42 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/ambiguous-selector.md +131 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/application-not-found.md +84 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/application-open-failed.md +46 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/browser-navigation-failed.md +45 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/click-coordinate-off-screen.md +120 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/disabled-element.md +0 -2
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/element-found-not-actionable.md +43 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/healing-agent-no-license.md +12 -12
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/healing-agent-orch-issues.md +108 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/inject-js-failed.md +41 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/scope-container-wrong-page.md +7 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/select-item-no-items.md +37 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/selector-failure-manual.md +2 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/timeout-issue.md +2 -2
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/verify-execution-failure.md +120 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/wrong-target-application.md +41 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/summary.md +12 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/guardrail-violation.md +111 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-connection-disabled.md +90 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-invalid-credentials.md +123 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-invalid-element-instance.md +96 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/llm-insufficient-information.md +1 -1
- package/skills/uipath-troubleshoot/references/products/agents/summary.md +4 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/investigation_guide.md +7 -7
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-pending-no-host.md +3 -1
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-pending-stale-dispatch.md +2 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-stopped-exit-code-0x40010004.md +104 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/summary.md +1 -0
- package/skills/uipath-troubleshoot/references/summary.md +10 -1
- package/version-manifest.json +2 -2
- package/skills/uipath-ixp/SKILL.md +0 -84
- package/skills/uipath-ixp/references/cli-reference.md +0 -113
- package/skills/uipath-ixp/references/improve-prompts-guide.md +0 -283
- package/skills/uipath-ixp/references/label-documents-guide.md +0 -175
- package/skills/uipath-ixp/references/project-setup-guide.md +0 -90
- package/skills/uipath-maestro-case/references/plugins/edges/impl-json.md +0 -152
- package/skills/uipath-maestro-case/references/plugins/edges/planning.md +0 -93
- /package/skills/{uipath-solution/references/design → uipath-planner/references}/package-selection-guide.md +0 -0
- /package/skills/{uipath-solution/references/design → uipath-planner/references}/pdd-analysis-guide.md +0 -0
- /package/skills/uipath-solution/references/{operate/scenarios → scenarios}/failure-modes.md +0 -0
package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md
CHANGED
|
@@ -71,13 +71,13 @@ Rules use DNF — outer array is OR, inner array is AND.
|
|
|
71
71
|
]]
|
|
72
72
|
```
|
|
73
73
|
|
|
74
|
-
`conditionExpression` uses bare `=js:<expr>` (no outer parens) — per FE convention for conditions. Operators (`>`, `<`, `===`, etc.) and function calls go inline. For combined boolean expressions, wrap each sub-clause in parens before joining: `=js:(vars.X === 'foo') && (vars.Y > 5)`. Full per-sink rule: [bindings-and-expressions.md § Canonical form per sink](../../../bindings-and-expressions.md#canonical-form-per-sink).
|
|
74
|
+
`conditionExpression` uses bare `=js:<expr>` (no outer parens) — per FE convention for conditions. Operators (`>`, `<`, `===`, etc.) and function calls go inline. Use strict `===` / `!==`, never loose `==` / `!=` — normalize SDD shorthand like `approved == true` to `=js:vars.approved === true` (do not transcribe `==` verbatim). For combined boolean expressions, wrap each sub-clause in parens before joining: `=js:(vars.X === 'foo') && (vars.Y > 5)`. Full per-sink rule: [bindings-and-expressions.md § Canonical form per sink](../../../bindings-and-expressions.md#canonical-form-per-sink).
|
|
75
75
|
|
|
76
76
|
### wait-for-connector — bind a connector event
|
|
77
77
|
|
|
78
|
-
Write `rule.uipath` per [connector-trigger-common.md § Target: connector-bound condition rule](../../../connector-trigger-common.md#target-connector-bound-condition-rule) (canonical rule JSON + procedure there) — a bare rule (no `uipath`) is rejected by Studio Web. **Stage-scoped: `elementId = <stageId>-<ruleId>`.** `conditionExpression` optional. If `type-id` / `connection-id` / `connector-key` is `<UNRESOLVED>`,
|
|
78
|
+
Write `rule.uipath` per [connector-trigger-common.md § Target: connector-bound condition rule](../../../connector-trigger-common.md#target-connector-bound-condition-rule) (canonical rule JSON + procedure there) — a bare rule (no `uipath`) is rejected by Studio Web. **Stage-scoped: `elementId = <stageId>-<ruleId>`.** `conditionExpression` optional. If `type-id` / `connection-id` / `connector-key` is `<UNRESOLVED>`, emit the **stub `uipath` placeholder** (2 `"placeholder"` context fields: `connectorKey` + `operation` — see [connector-trigger-common.md § Placeholder fallback](../../../connector-trigger-common.md#placeholder-fallback)).
|
|
79
79
|
|
|
80
|
-
**Rule output binding.** If the T-entry has `outputs:`, dispatch `rule.uipath.outputs[]` per [io-binding/impl-json.md § Output Binding Shapes for Connector Condition Rules](../../variables/io-binding/impl-json.md#output-binding-shapes-for-connector-condition-rules) **as the last step — after rule write, before root bindings**. `elementId` stays `<stageId>-<ruleId>` on every output entry. Skip when `uipath`
|
|
80
|
+
**Rule output binding.** If the T-entry has `outputs:`, dispatch `rule.uipath.outputs[]` per [io-binding/impl-json.md § Output Binding Shapes for Connector Condition Rules](../../variables/io-binding/impl-json.md#output-binding-shapes-for-connector-condition-rules) **as the last step — after rule write, before root bindings**. `elementId` stays `<stageId>-<ruleId>` on every output entry. Skip when the rule has no `uipath.outputs[]` (stub placeholder).
|
|
81
81
|
|
|
82
82
|
### runs-sequentially — sequential group with optional parallel siblings
|
|
83
83
|
|
|
@@ -101,4 +101,4 @@ Write `rule.uipath` per [connector-trigger-common.md § Target: connector-bound
|
|
|
101
101
|
|
|
102
102
|
## Post-Write Verification
|
|
103
103
|
|
|
104
|
-
Confirm target task's `entryConditions[]` length equals the number of task-entry T-tasks tasks.md wrote for this task. Each entry carries `id` (prefix `c`), non-empty `displayName` (SDD value or `Entry Rule {N}` default), and `rules` with the expected `rule` value plus any required side field. For `wait-for-connector`: verify `rule.uipath.serviceType` is `"Intsvc.WaitForEvent"`, `rule.uipath.context[]` is populated, inputs/outputs `elementId` is `<stageId>-<ruleId>`, and ConnectionId + FolderKey root bindings exist.
|
|
104
|
+
Confirm target task's `entryConditions[]` length equals the number of task-entry T-tasks tasks.md wrote for this task. Each entry carries `id` (prefix `c`), non-empty `displayName` (SDD value or `Entry Rule {N}` default), and `rules` with the expected `rule` value plus any required side field. For `wait-for-connector`: verify `rule.uipath.serviceType` is `"Intsvc.WaitForEvent"`, `rule.uipath.context[]` is populated, inputs/outputs `elementId` is `<stageId>-<ruleId>`, and ConnectionId + FolderKey root bindings exist. Full `validate` flags a missing `rule.uipath`/`context` (`connector activity missing`) but not its internals (a wrong `serviceType` passes) — confirm the connector resolves in Studio Web.
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Unified issue log for the implementation phase. Initialized by `implementation.md`, written to by any plugin, dumped to markdown after build.
|
|
4
4
|
|
|
5
|
+
> **No `planning.md`** — logging is an implementation-only utility (not a planned node type), so it has no planning doc. Intentional, not a gap.
|
|
6
|
+
|
|
5
7
|
> **Pseudocode only.** The snippets below are data-shape specifications, not runnable code. The agent holds the issue list in its own reasoning during a run and emits `tasks/build-issues.md` with the Write tool at dump time. Do NOT create a `.py` script or shell out to Python — per [`case-editing-operations.md § Tool usage`](../../case-editing-operations.md#tool-usage--mandatory), Read/Write/Edit are the only I/O primitives.
|
|
6
8
|
|
|
7
9
|
## Setup
|
|
@@ -59,6 +61,14 @@ After Step 12 (validate), group issues by `plugin` and write to `tasks/build-iss
|
|
|
59
61
|
| Step | Task | Reason |
|
|
60
62
|
|---|---|---|
|
|
61
63
|
| 9 | Run Compliance Check | No inputs — placeholder task |
|
|
64
|
+
|
|
65
|
+
## global-vars
|
|
66
|
+
|
|
67
|
+
### Errors
|
|
68
|
+
|
|
69
|
+
| Step | Issue |
|
|
70
|
+
|---|---|
|
|
71
|
+
| 6 | Variable `caseStatus` declared twice |
|
|
62
72
|
```
|
|
63
73
|
|
|
64
74
|
- Omit severity subsections with zero entries
|
|
@@ -29,28 +29,16 @@ Record every `T<n> → esc_xxxxxx` in `id-map.json` under `{kind: "escalation",
|
|
|
29
29
|
|
|
30
30
|
## Target resolution
|
|
31
31
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
### v19
|
|
35
|
-
|
|
36
|
-
- `target: "root"` → `root.data.slaRules` (**inside `root.data`** — sibling of `intsvcActivityConfig` and `uipath`, NOT a top-level key and NOT a direct child of `root`)
|
|
37
|
-
- `target: "<stage-name>"` → locate node by `data.label === <stage-name>`; write to `node.data.slaRules` (inside the stage node's `data`)
|
|
38
|
-
|
|
39
|
-
### v20
|
|
40
|
-
|
|
41
|
-
- `target: "root"` → **`metadata.slaRules`** (top-level `metadata` block, NOT `root.data.slaRules` — there is no `root` in v20)
|
|
42
|
-
- `target: "<stage-name>"` → locate node by `data.label === <stage-name>`; write to `node.data.slaRules` (unchanged from v19 — node internals are identical)
|
|
43
|
-
|
|
44
|
-
### Common
|
|
45
|
-
|
|
32
|
+
- `target: "root"` → **`metadata.slaRules`** (top-level `metadata` block — there is no `root` key on disk)
|
|
33
|
+
- `target: "<stage-name>"` → locate node by `data.label === <stage-name>`; write to `node.data.slaRules`
|
|
46
34
|
- Accepted node types: `case-management:Stage` and `case-management:ExceptionStage`.
|
|
47
35
|
- If the stage node isn't found, halt and AskUserQuestion with candidate stage labels + "Something else".
|
|
48
36
|
|
|
49
37
|
## Recipe — one target
|
|
50
38
|
|
|
51
|
-
After grouping T-entries by target, compose the `slaRules` array and write it into the target's location per the
|
|
39
|
+
After grouping T-entries by target, compose the `slaRules` array and write it into the target's location per the rules above.
|
|
52
40
|
|
|
53
|
-
### Composed array
|
|
41
|
+
### Composed array
|
|
54
42
|
|
|
55
43
|
```json
|
|
56
44
|
[
|
|
@@ -68,30 +56,12 @@ After grouping T-entries by target, compose the `slaRules` array and write it in
|
|
|
68
56
|
]
|
|
69
57
|
```
|
|
70
58
|
|
|
71
|
-
###
|
|
72
|
-
|
|
73
|
-
```json
|
|
74
|
-
{
|
|
75
|
-
"root": {
|
|
76
|
-
"id": "root",
|
|
77
|
-
"name": "<name>",
|
|
78
|
-
"type": "case-management:root",
|
|
79
|
-
"...": "...",
|
|
80
|
-
"data": {
|
|
81
|
-
"intsvcActivityConfig": "v2",
|
|
82
|
-
"uipath": { "...": "..." },
|
|
83
|
-
"slaRules": [ <composed array above> ]
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### v20 root-target shape
|
|
59
|
+
### Root-target shape
|
|
90
60
|
|
|
91
61
|
```json
|
|
92
62
|
{
|
|
93
63
|
"id": "case-aBcDeFgHiJ",
|
|
94
|
-
"version": "
|
|
64
|
+
"version": "23.0.0",
|
|
95
65
|
"metadata": {
|
|
96
66
|
"caseIdentifier": "<...>",
|
|
97
67
|
"caseUnifiedSchemaEnabled": true,
|
|
@@ -102,12 +72,11 @@ After grouping T-entries by target, compose the `slaRules` array and write it in
|
|
|
102
72
|
}
|
|
103
73
|
```
|
|
104
74
|
|
|
105
|
-
For a stage target
|
|
75
|
+
For a stage target, the same `slaRules` array is written under `node.data.slaRules` (sibling of `label`, `tasks`, `parentElement`).
|
|
106
76
|
|
|
107
77
|
> **Common failures:**
|
|
108
|
-
> -
|
|
109
|
-
> -
|
|
110
|
-
> - **Either:** writing `slaRules` to a stage's top level (sibling of `id`/`type`). Stage SLA always lives under `node.data.slaRules` regardless of schema.
|
|
78
|
+
> - Emitting `slaRules` under a non-existent `root` key. Wrong — must nest under top-level `metadata`. There is no `root` key on disk.
|
|
79
|
+
> - Writing `slaRules` to a stage's top level (sibling of `id`/`type`). Stage SLA always lives under `node.data.slaRules`.
|
|
111
80
|
|
|
112
81
|
Emission rules:
|
|
113
82
|
|
|
@@ -156,8 +125,7 @@ List every unresolved recipient in the completion report (per SKILL.md § Comple
|
|
|
156
125
|
|
|
157
126
|
## Post-write validation
|
|
158
127
|
|
|
159
|
-
-
|
|
160
|
-
- **v20:** confirm `metadata.slaRules` (top-level) or `node.data.slaRules` (stage) exists. Verify v20's root-target uses `metadata` — not `root.data` (which doesn't exist in v20).
|
|
128
|
+
- Confirm `metadata.slaRules` (root) or `node.data.slaRules` (stage) exists with the expected entries. Verify the root-target uses `metadata` — not `root.data` (which doesn't exist on disk).
|
|
161
129
|
- Confirm the trailing entry's `expression === "=js:true"` when any SLA T-entry targeted this node.
|
|
162
130
|
- Confirm every generated `esc_` ID appears in `id-map.json`.
|
|
163
131
|
- Run `uip maestro case validate <file> --output json` after all SLA targets have been written (not per-target).
|
|
@@ -15,18 +15,18 @@ Pick this plugin whenever the sdd.md mentions deadlines, service-level agreement
|
|
|
15
15
|
|
|
16
16
|
| Sub-op | Purpose |
|
|
17
17
|
|--------|---------|
|
|
18
|
-
| **Default SLA** | The time-based catch-all SLA. One per target (root or stage). Written into the SLA rules array with `expression: "=js:true"`.
|
|
18
|
+
| **Default SLA** | The time-based catch-all SLA. One per target (root or stage). Written into the SLA rules array with `expression: "=js:true"`. See [impl-json.md § Target resolution](impl-json.md) for the destination paths. |
|
|
19
19
|
| **Conditional SLA rules** | Expression-driven SLA overrides. Root-only. Prepended to the root SLA rules array ahead of the default. |
|
|
20
20
|
| **Escalation rules** | Notifications triggered at-risk or on breach. Attached to a specific rule via `escalationRule[]`. |
|
|
21
21
|
|
|
22
22
|
## Applying SLA at Root vs Stage
|
|
23
23
|
|
|
24
|
-
- **Root** — the default SLA for the whole case. Target `"root"`; written to
|
|
25
|
-
- **Stage** — stage-specific SLA. Target `"<stage-name>"`; written to the stage node's `data.slaRules[]
|
|
24
|
+
- **Root** — the default SLA for the whole case. Target `"root"`; written to `metadata.slaRules[]`.
|
|
25
|
+
- **Stage** — stage-specific SLA. Target `"<stage-name>"`; written to the stage node's `data.slaRules[]`. Overrides the root default while the stage is active.
|
|
26
26
|
|
|
27
27
|
Set root SLA first, then stage SLAs. This mirrors the schema precedence: stage > root.
|
|
28
28
|
|
|
29
|
-
> **Conditional SLA rules are root-only.** They live in
|
|
29
|
+
> **Conditional SLA rules are root-only.** They live in `metadata.slaRules[]`; per-stage conditional SLA is not supported. If the sdd.md describes one, flag to the user.
|
|
30
30
|
|
|
31
31
|
> **ExceptionStage SLA is supported.** Author it the same way as a regular Stage SLA — write `data.slaRules[]` on the `case-management:ExceptionStage` node. See [`impl-json.md`](impl-json.md).
|
|
32
32
|
|
|
@@ -182,7 +182,7 @@ SLA is the **last** category in `tasks.md` (§4.8), after conditions. For each t
|
|
|
182
182
|
## Anti-Patterns
|
|
183
183
|
|
|
184
184
|
- **Do not fabricate expression syntax.** Describe conditional SLA rules in natural language during planning; the execution phase handles the exact syntax.
|
|
185
|
-
- **Do not put conditional SLA rules on stages.** Conditional SLA rules live in
|
|
185
|
+
- **Do not put conditional SLA rules on stages.** Conditional SLA rules live in `metadata.slaRules[]` only. Flag to the user if the sdd.md describes a per-stage conditional SLA.
|
|
186
186
|
- **Do not invert rule order.** Conditional rules are evaluated in insertion order — insert them in the priority order the sdd.md specifies.
|
|
187
187
|
- **Do not skip the resolver to save a CLI call.** Email / group-name recipients MUST go through [§ Identity Resolution](#identity-resolution). Writing `<UNRESOLVED: ...>` directly without attempting `uip admin users/groups list` is a planning bug.
|
|
188
188
|
- **Do not fabricate UUIDs.** When the resolver returns 0 / multi / partial matches, AskUserQuestion or keep `<UNRESOLVED>` — never guess a UUID, never auto-pick the first candidate without the exact-email / exact-name gate.
|
|
@@ -23,29 +23,11 @@ Cross-cutting direct-JSON rules live in [`case-editing-operations.md`](../../cas
|
|
|
23
23
|
|
|
24
24
|
Record `T<n> → Stage_xxxxxx` in `id-map.json` for downstream cross-reference.
|
|
25
25
|
|
|
26
|
-
##
|
|
26
|
+
## Layout fields
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
Do NOT emit node-level `position`, `style`, `measured`, `width`, `height`, `zIndex` (Rule 18 layout-strip). FE auto-layouts on canvas load.
|
|
29
29
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
```text
|
|
33
|
-
existingStageCount = schema.nodes.filter(n =>
|
|
34
|
-
n.type === "case-management:Stage" ||
|
|
35
|
-
n.type === "case-management:ExceptionStage"
|
|
36
|
-
).length
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
Then compute:
|
|
40
|
-
|
|
41
|
-
```text
|
|
42
|
-
position.x = 100 + existingStageCount * 500
|
|
43
|
-
position.y = 200
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Trigger nodes are NOT counted.
|
|
47
|
-
|
|
48
|
-
## Recipe — Regular Stage (v19)
|
|
30
|
+
## Recipe — Regular Stage
|
|
49
31
|
|
|
50
32
|
Append (or prepend) this object to `nodes` — both orderings are valid for the frontend:
|
|
51
33
|
|
|
@@ -53,11 +35,6 @@ Append (or prepend) this object to `nodes` — both orderings are valid for the
|
|
|
53
35
|
{
|
|
54
36
|
"id": "<Stage_xxxxxx>",
|
|
55
37
|
"type": "case-management:Stage",
|
|
56
|
-
"position": { "x": <computed>, "y": 200 },
|
|
57
|
-
"style": { "width": 304, "opacity": 0.8 },
|
|
58
|
-
"measured": { "width": 304, "height": 128 },
|
|
59
|
-
"width": 304,
|
|
60
|
-
"zIndex": 1001,
|
|
61
38
|
"data": {
|
|
62
39
|
"label": "<displayName>",
|
|
63
40
|
"description": "<description from sdd.md>",
|
|
@@ -70,60 +47,13 @@ Append (or prepend) this object to `nodes` — both orderings are valid for the
|
|
|
70
47
|
}
|
|
71
48
|
```
|
|
72
49
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
## Recipe — Regular Stage (v20)
|
|
50
|
+
> **`parentElement.id` stays `"root"`** even though there is no `"root"` node on disk. The literal `"root"` is canvas-side — `transformCaseInMemoryJsonToDiskJson` keeps the reference intact.
|
|
76
51
|
|
|
77
|
-
**
|
|
78
|
-
|
|
79
|
-
```json
|
|
80
|
-
{
|
|
81
|
-
"id": "<Stage_xxxxxx>",
|
|
82
|
-
"type": "case-management:Stage",
|
|
83
|
-
"data": {
|
|
84
|
-
"label": "<displayName>",
|
|
85
|
-
"description": "<description from sdd.md>",
|
|
86
|
-
"isRequired": <true|false from sdd.md; false if unspecified>,
|
|
87
|
-
"parentElement": { "id": "root", "type": "case-management:root" },
|
|
88
|
-
"isInvalidDropTarget": false,
|
|
89
|
-
"isPendingParent": false,
|
|
90
|
-
"tasks": []
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
> **`parentElement.id` stays `"root"`** even though there is no `"root"` node in v20 disk JSON. The literal `"root"` is canvas-side — `transformCaseInMemoryJsonToDiskJson` keeps the reference intact.
|
|
96
|
-
|
|
97
|
-
## Recipe — Exception Stage (v19)
|
|
98
|
-
|
|
99
|
-
Same as regular v19, with `type: "case-management:ExceptionStage"` and two additional `data` fields initialized empty:
|
|
100
|
-
|
|
101
|
-
```json
|
|
102
|
-
{
|
|
103
|
-
"id": "<Stage_xxxxxx>",
|
|
104
|
-
"type": "case-management:ExceptionStage",
|
|
105
|
-
"position": { "x": <computed>, "y": 200 },
|
|
106
|
-
"style": { "width": 304, "opacity": 0.8 },
|
|
107
|
-
"measured": { "width": 304, "height": 128 },
|
|
108
|
-
"width": 304,
|
|
109
|
-
"zIndex": 1001,
|
|
110
|
-
"data": {
|
|
111
|
-
"label": "<displayName>",
|
|
112
|
-
"description": "<description from sdd.md>",
|
|
113
|
-
"isRequired": <true|false from sdd.md; false if unspecified>,
|
|
114
|
-
"parentElement": { "id": "root", "type": "case-management:root" },
|
|
115
|
-
"isInvalidDropTarget": false,
|
|
116
|
-
"isPendingParent": false,
|
|
117
|
-
"tasks": [],
|
|
118
|
-
"entryConditions": [],
|
|
119
|
-
"exitConditions": []
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
```
|
|
52
|
+
**Do not initialize `entryConditions` or `exitConditions` on a regular Stage at creation time.** Regular stages acquire those keys later when the condition plugins (stage-entry-conditions / stage-exit-conditions) write them — do not create the keys here.
|
|
123
53
|
|
|
124
|
-
## Recipe — Exception Stage
|
|
54
|
+
## Recipe — Exception Stage
|
|
125
55
|
|
|
126
|
-
Same as regular
|
|
56
|
+
Same as regular Stage, with `type: "case-management:ExceptionStage"` and two additional `data` fields initialized empty:
|
|
127
57
|
|
|
128
58
|
```json
|
|
129
59
|
{
|
|
@@ -155,8 +85,7 @@ After writing, confirm:
|
|
|
155
85
|
- `nodes[].type` is `case-management:Stage` or `case-management:ExceptionStage` per the intended kind
|
|
156
86
|
- `nodes[].data.label` matches the T-entry's displayName
|
|
157
87
|
- `nodes[].data.isRequired` is present and boolean
|
|
158
|
-
-
|
|
159
|
-
- **v20 only:** NO `position`, `style`, `measured`, `width`, `height`, `zIndex` at the node level (Rule 19). Only `data.parentElement`, `data.isInvalidDropTarget`, `data.isPendingParent` remain
|
|
88
|
+
- NO `position`, `style`, `measured`, `width`, `height`, `zIndex` at the node level (Rule 18). Only `data.parentElement`, `data.isInvalidDropTarget`, `data.isPendingParent` remain
|
|
160
89
|
- For ExceptionStage: `data.entryConditions: []` and `data.exitConditions: []` are present (initialized as empty arrays at creation time)
|
|
161
90
|
- For regular Stage at creation time: `data.entryConditions` / `data.exitConditions` are absent — the conditions plugins will create and populate them later if the sdd.md calls for it
|
|
162
91
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# stages — Planning
|
|
2
2
|
|
|
3
|
-
A stage node inside the case. Stages contain tasks and connect via edges. Two variants (`stage` and `exception`) share the same plugin.
|
|
3
|
+
A stage node inside the case. Stages contain tasks and connect via entry/exit conditions (edges are retired). Two variants (`stage` and `exception`) share the same plugin.
|
|
4
4
|
|
|
5
5
|
## Terminology
|
|
6
6
|
|
|
@@ -26,21 +26,14 @@ Otherwise default to a regular stage.
|
|
|
26
26
|
|
|
27
27
|
When ambiguous, use **AskUserQuestion** with both options + "Something else".
|
|
28
28
|
|
|
29
|
-
### Wiring constraints
|
|
29
|
+
### Wiring constraints (reachability — edges retired)
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
No stage of either variant has edges. Reachability is expressed entirely through stage entry/exit conditions:
|
|
32
32
|
|
|
33
|
-
-
|
|
34
|
-
-
|
|
35
|
-
- ✅ **Reached via an interrupting entry condition** on the exception stage itself (fires based on case state, not by traversing an edge). See [stage-entry-conditions plugin](../conditions/stage-entry-conditions/planning.md).
|
|
36
|
-
- ✅ **Exits via a `return-to-origin` exit condition** — routes the case back to the stage it came from, through the exit condition rule, not a new edge. See [stage-exit-conditions plugin](../conditions/stage-exit-conditions/planning.md).
|
|
33
|
+
- **Regular stage** — reached via a **non-interrupting** entry condition: `case-entered` for the first stage, or `selected-stage-completed` / `selected-stage-exited` naming a predecessor. Every regular stage MUST have ≥1 entry condition, or it is orphaned and unreachable. See [stage-entry-conditions plugin](../conditions/stage-entry-conditions/planning.md).
|
|
34
|
+
- **Exception / secondary stage** — reached via an **interrupting** entry condition (fires on case state), and exits via a `return-to-origin` exit condition back to the stage it came from. See [stage-exit-conditions plugin](../conditions/stage-exit-conditions/planning.md).
|
|
37
35
|
|
|
38
|
-
If the sdd.md describes an
|
|
39
|
-
|
|
40
|
-
- Re-model the node as a regular stage (so edges are allowed).
|
|
41
|
-
- Use a `return-to-origin` exit and let the origin stage's existing edges handle the onward flow.
|
|
42
|
-
|
|
43
|
-
This constraint is also documented in the [edges plugin](../edges/planning.md).
|
|
36
|
+
Do NOT create edges for any stage. If the sdd.md describes a stage "connected via an arrow / edge" to another, model it as the target stage's entry condition (plus a source-stage exit condition when the source diverges). Onward flow from an exception stage uses `return-to-origin`, letting the origin stage's own entry/exit conditions carry the case forward.
|
|
44
37
|
|
|
45
38
|
## Required Fields from sdd.md
|
|
46
39
|
|
|
@@ -71,7 +64,7 @@ Stage position is auto-computed by the impl-json recipe: `x = 100 + (existingSta
|
|
|
71
64
|
|
|
72
65
|
## Ordering
|
|
73
66
|
|
|
74
|
-
Stages are created **after** the root case (T01) and **before** any
|
|
67
|
+
Stages are created **after** the root case (T01) and **before** any tasks or conditions reference them. Each stage write produces a `StageId` — capture it in the planning/execution capture map. Downstream T-entries (tasks, conditions, SLA) use the stage **name** in `tasks.md`; the implementation phase resolves the name to the captured `StageId`.
|
|
75
68
|
|
|
76
69
|
## tasks.md Entry Format
|
|
77
70
|
|
|
@@ -42,7 +42,7 @@ Read [bindings/impl-json.md § Full binding shape — non-connector tasks](../..
|
|
|
42
42
|
|
|
43
43
|
- `resource`: `"process"`
|
|
44
44
|
- `resourceSubType`: `"Agent"`
|
|
45
|
-
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields
|
|
45
|
+
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields. `folder-path` is the resolved registry `folders[0].fullyQualifiedName` (per [planning.md § Registry Resolution](planning.md#registry-resolution)) — never the raw sdd.md "Folder", which may be a parent path and faults the job at runtime.
|
|
46
46
|
|
|
47
47
|
Dedup per [§ Deduplication](../../variables/bindings/impl-json.md).
|
|
48
48
|
|
|
@@ -12,7 +12,7 @@ Pick this plugin when the sdd.md describes a task as `AGENT` — an AI agent tha
|
|
|
12
12
|
|-------|--------|-------|
|
|
13
13
|
| `display-name` | Agent Reference "Name" | Shown in the UI |
|
|
14
14
|
| `name` | Agent Reference "Name" | |
|
|
15
|
-
| `folder-path` |
|
|
15
|
+
| `folder-path` | Resolved registry `folders[0].fullyQualifiedName` (NOT the sdd.md "Folder") | Binds to `data.folderPath`; Orchestrator starts the agent here at runtime. The sdd.md "Folder" only seeds the lookup and may be a parent/truncated path. See [§ Registry Resolution](#registry-resolution). |
|
|
16
16
|
| `task-type-id` | Registry resolution (below) | Enables auto-enrichment via `tasks describe` |
|
|
17
17
|
| `element-id` | (optional) | Required only when the agent has multiple element bindings |
|
|
18
18
|
| `inputs` | sdd.md task data mapping | See [bindings-and-expressions.md](../../../bindings-and-expressions.md) |
|
|
@@ -26,7 +26,8 @@ Pick this plugin when the sdd.md describes a task as `AGENT` — an AI agent tha
|
|
|
26
26
|
2. **Identifier field:** `entityKey`.
|
|
27
27
|
3. **Cross-type fallback.** Agents are occasionally registered in `processOrchestration-index.json` when wrapped in an agentic process — search both if the primary yields no match.
|
|
28
28
|
4. **Match priority:** exact name + exact folder > exact name only.
|
|
29
|
-
5.
|
|
29
|
+
5. **`folder-path` = the SELECTED entry's `folders[0].fullyQualifiedName`** (not the sdd.md "Folder" — see the field table above). Fall back to the sdd.md folder only when there is no registry match (Unresolved path).
|
|
30
|
+
6. **Discover inputs/outputs** via `tasks describe` — see [bindings-and-expressions.md § Discovering output names](../../../bindings-and-expressions.md). For agents with multiple elements, also pass `--element-id` when invoking describe (see [case-commands.md § uip maestro case tasks](../../../case-commands.md)).
|
|
30
31
|
|
|
31
32
|
## Unresolved Fallback
|
|
32
33
|
|
|
@@ -40,7 +40,7 @@ Read [bindings/impl-json.md § Full binding shape — non-connector tasks](../..
|
|
|
40
40
|
|
|
41
41
|
- `resource`: `"process"`
|
|
42
42
|
- `resourceSubType`: `"Api"`
|
|
43
|
-
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields
|
|
43
|
+
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields. `folder-path` is the resolved registry `folders[0].fullyQualifiedName` (per [planning.md § Registry Resolution](planning.md#registry-resolution)) — never the raw sdd.md "Folder", which may be a parent path and faults the job at runtime.
|
|
44
44
|
|
|
45
45
|
Dedup per [§ Deduplication](../../variables/bindings/impl-json.md).
|
|
46
46
|
|
|
@@ -12,7 +12,7 @@ Pick this plugin when the sdd.md labels a task as `API_WORKFLOW` — typically a
|
|
|
12
12
|
|-------|--------|-------|
|
|
13
13
|
| `display-name` | API Workflow Reference "Name" | |
|
|
14
14
|
| `name` | API Workflow Reference "Name" | |
|
|
15
|
-
| `folder-path` |
|
|
15
|
+
| `folder-path` | Resolved registry `folders[0].fullyQualifiedName` (NOT the sdd.md "Folder") | Binds to `data.folderPath`; Orchestrator starts the workflow here at runtime. The sdd.md "Folder" only seeds the lookup and may be a parent/truncated path. See [§ Registry Resolution](#registry-resolution). |
|
|
16
16
|
| `task-type-id` | Registry resolution (below) | `entityKey` in `api-index.json` |
|
|
17
17
|
| `inputs` | sdd.md task data mapping | See [bindings-and-expressions.md](../../../bindings-and-expressions.md) |
|
|
18
18
|
| `outputs` | Discovered via `tasks describe` | |
|
|
@@ -24,7 +24,8 @@ Pick this plugin when the sdd.md labels a task as `API_WORKFLOW` — typically a
|
|
|
24
24
|
1. **Primary cache file:** `api-index.json`.
|
|
25
25
|
2. **Identifier field:** `entityKey`.
|
|
26
26
|
3. Match by exact name + folder.
|
|
27
|
-
4.
|
|
27
|
+
4. **`folder-path` = the SELECTED entry's `folders[0].fullyQualifiedName`** (not the sdd.md "Folder" — see the field table above). Fall back to the sdd.md folder only when there is no registry match (Unresolved path).
|
|
28
|
+
5. Discover inputs/outputs via `tasks describe` — see [bindings-and-expressions.md § Discovering output names](../../../bindings-and-expressions.md).
|
|
28
29
|
|
|
29
30
|
## Unresolved Fallback
|
|
30
31
|
|
|
@@ -40,7 +40,7 @@ Read [bindings/impl-json.md § Full binding shape — non-connector tasks](../..
|
|
|
40
40
|
|
|
41
41
|
- `resource`: `"process"`
|
|
42
42
|
- `resourceSubType`: `"CaseManagement"`
|
|
43
|
-
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields
|
|
43
|
+
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields. `folder-path` is the resolved registry `folders[0].fullyQualifiedName` (per [planning.md § Registry Resolution](planning.md#registry-resolution)) — never the raw sdd.md "Folder", which may be a parent path and faults the job at runtime.
|
|
44
44
|
|
|
45
45
|
Dedup per [§ Deduplication](../../variables/bindings/impl-json.md).
|
|
46
46
|
|
|
@@ -9,7 +9,7 @@ Pick this plugin when the sdd.md describes a task that spawns or delegates to an
|
|
|
9
9
|
- Parent case orchestrates multiple sub-cases
|
|
10
10
|
- Long-running sub-workflow packaged as its own case
|
|
11
11
|
|
|
12
|
-
If sdd.md describes a simple stage-to-stage flow within the same case, do not use this — use regular stages
|
|
12
|
+
If sdd.md describes a simple stage-to-stage flow within the same case, do not use this — use regular stages wired by entry/exit conditions.
|
|
13
13
|
|
|
14
14
|
## Required Fields from sdd.md
|
|
15
15
|
|
|
@@ -17,7 +17,7 @@ If sdd.md describes a simple stage-to-stage flow within the same case, do not us
|
|
|
17
17
|
|-------|--------|-------|
|
|
18
18
|
| `display-name` | Case Reference "Name" | |
|
|
19
19
|
| `name` | Case Reference "Name" | |
|
|
20
|
-
| `folder-path` |
|
|
20
|
+
| `folder-path` | Resolved registry `folders[0].fullyQualifiedName` (NOT the sdd.md "Folder") | Binds to `data.folderPath`; Orchestrator starts the sub-case here at runtime. The sdd.md "Folder" only seeds the lookup and may be a parent/truncated path. See [§ Registry Resolution](#registry-resolution). |
|
|
21
21
|
| `task-type-id` | Registry resolution (below) | `entityKey` in `caseManagement-index.json` |
|
|
22
22
|
| `inputs` | sdd.md task data mapping | Passed as case-instance inputs to the sub-case |
|
|
23
23
|
| `outputs` | Discovered via `tasks describe` | Returned when the sub-case completes |
|
|
@@ -29,7 +29,8 @@ If sdd.md describes a simple stage-to-stage flow within the same case, do not us
|
|
|
29
29
|
1. **Primary cache file:** `caseManagement-index.json`.
|
|
30
30
|
2. **Identifier field:** `entityKey`.
|
|
31
31
|
3. Match by exact name + folder.
|
|
32
|
-
4.
|
|
32
|
+
4. **`folder-path` = the SELECTED entry's `folders[0].fullyQualifiedName`** (not the sdd.md "Folder" — see the field table above). Fall back to the sdd.md folder only when there is no registry match (Unresolved path).
|
|
33
|
+
5. Discover inputs/outputs via `tasks describe` — see [bindings-and-expressions.md § Discovering output names](../../../bindings-and-expressions.md).
|
|
33
34
|
|
|
34
35
|
## Unresolved Fallback
|
|
35
36
|
|
|
@@ -247,7 +247,7 @@ All issues appended to the shared issue list per [logging/impl-json.md](../../lo
|
|
|
247
247
|
7. Root bindings exist for ConnectionId + folderKey with the minted ids
|
|
248
248
|
8. `data.bindings[]` is empty `[]`
|
|
249
249
|
9. Each entry in `data.inputs[]` and `data.outputs[]` has `var` / `id` / `elementId` minted (uniqueness rule applied for outputs)
|
|
250
|
-
10. `bindings_v2.json` `resources` array matches
|
|
250
|
+
10. `bindings_v2.json` `resources` array matches top-level `bindings[]` after the deferred sync
|
|
251
251
|
11. **No literal `[*]` keys in `data.inputs[name="body"].body` (or any input body).** Scan recursively (JSON.stringify + regex `"[^"]*\\[\\*\\][^"]*"\\s*:`). If any key contains literal `[*]`, halt — Step 1.b translation was skipped or incomplete. The body MUST use real arrays under parent names (e.g., `"toRecipients": [{...}]`), never `"toRecipients[*]": {...}`. Validate passes regardless; runtime APIs reject with HTTP 400.
|
|
252
252
|
|
|
253
253
|
## What NOT to Do
|
|
@@ -268,4 +268,4 @@ All issues appended to the shared issue list per [logging/impl-json.md](../../lo
|
|
|
268
268
|
|
|
269
269
|
## Known Limitations
|
|
270
270
|
|
|
271
|
-
- The CLI-produced `essentialConfiguration` uses `essentialConfiguration` only (not `optionalConfiguration`). Tasks work at runtime (debug/publish) but the FE editor may not render certain fields until the user re-configures the task in the UI. DAP repopulates these on form open.
|
|
271
|
+
- The CLI-produced `essentialConfiguration` uses `essentialConfiguration` only (not `optionalConfiguration`). Tasks work at runtime (debug/publish) but the FE editor may not render certain fields until the user re-configures the task in the UI. DAP repopulates these on form open.
|
|
@@ -22,6 +22,8 @@ If `~/.uip/case-resources/typecache-activities-index.json` does not exist, run `
|
|
|
22
22
|
|
|
23
23
|
Read `~/.uip/case-resources/typecache-activities-index.json` directly. Match on `displayName` or `connectorKey` + operation description from sdd.md. Record `uiPathActivityTypeId`.
|
|
24
24
|
|
|
25
|
+
**No match (Scenario A — connector not found).** A 0-match inside the existing cache is gated by Rule 17 — run the [registry-discovery.md § MUST Confirm Before Placeholder Fallback](../../../registry-discovery.md#must-confirm-before-placeholder-fallback) AskUserQuestion (`Force pull` / `Skip and use placeholders`) for the lookup batch before any fallback. Only after the user picks `Skip`: mark `type-id` `<UNRESOLVED: no typecache activity for <query>>`, skip § 2 (no `activity-type-id` to pass to `get-connection`), and fall through to § Unresolved Fallback (placeholder task, `data: {}`). Continue planning — do not halt ([planning.md § 3.4](../../../planning.md)).
|
|
26
|
+
|
|
25
27
|
### 2. Resolve the connection
|
|
26
28
|
|
|
27
29
|
```bash
|
|
@@ -30,15 +32,16 @@ uip maestro case registry get-connection \
|
|
|
30
32
|
--activity-type-id "<uiPathActivityTypeId>" --output json
|
|
31
33
|
```
|
|
32
34
|
|
|
33
|
-
Returns `Entry`, `Config`, and `Connections`.
|
|
35
|
+
Returns `Entry`, `Config`, and `Connections`. If the sdd.md names a connection, match it by `name` and use it directly. Otherwise **always present the choice via AskUserQuestion — do not auto-select**, even when one connection exists:
|
|
34
36
|
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
- **
|
|
37
|
+
- **`Connections` non-empty** → list connections by `name` **plus a "Create a new connection" option**.
|
|
38
|
+
- **`Connections` empty** → offer **Create a new connection** / **Skip (defer)**.
|
|
39
|
+
- **Create chosen** → create it (background `is connections create`, capture `ConnectionId`), then continue with the new id. Procedure: [connector-integration.md § Creating a Connection](../../../connector-integration.md#creating-a-connection).
|
|
40
|
+
- **Skip / create fails** → mark `<UNRESOLVED: no IS connection for <connectorKey>>` and omit `input-values:` ([§ Unresolved Fallback](#unresolved-fallback)).
|
|
38
41
|
|
|
39
|
-
Record `connection-id`, `connector-key`, `object-name` from the response.
|
|
42
|
+
Record `connection-id`, `connector-key`, `object-name` from the response (or from the create output).
|
|
40
43
|
|
|
41
|
-
Connection selection
|
|
44
|
+
Connection selection mechanics (`--refresh` retry, ping verification, BYOA workflow, connection creation): see [/uipath:uipath-platform — connections.md](../../../../../uipath-platform/references/integration-service/connections.md).
|
|
42
45
|
|
|
43
46
|
### 3. Discover the operation contract via `case spec`
|
|
44
47
|
|
|
@@ -116,7 +119,7 @@ Values can be:
|
|
|
116
119
|
- **Pre-wrapped operator expressions** — `=js:(vars.amount > 5000)` (already canonical — pass-through)
|
|
117
120
|
- **Cross-task refs** — `<- "Stage"."Task".output` (impl resolves to `=vars.<outputVar>` then wraps)
|
|
118
121
|
|
|
119
|
-
> **tasks.md carries SDD-natural form.** The implementation step (Step 9.7 of connector-activity impl) rewrites every reference to its canonical sink form when constructing `--input-details`. Connector body sinks use `=js:(<expr>)`. Full rule: [bindings-and-expressions.md § Canonical form per sink](
|
|
122
|
+
> **tasks.md carries SDD-natural form.** The implementation step (Step 9.7 of connector-activity impl) rewrites every reference to its canonical sink form when constructing `--input-details`. Connector body sinks use `=js:(<expr>)`. Full rule: [bindings-and-expressions.md § Canonical form per sink](../../../bindings-and-expressions.md#canonical-form-per-sink).
|
|
120
123
|
|
|
121
124
|
### 7. Optional — author a server-side filter
|
|
122
125
|
|
|
@@ -194,6 +197,8 @@ Planner emits to `tasks.md input-values.bodyParameters`:
|
|
|
194
197
|
|
|
195
198
|
## Unresolved Fallback
|
|
196
199
|
|
|
200
|
+
Two entry paths: **Scenario A** — connector not found in TypeCache ([§ 1 No-match](#1-find-the-connector-in-typecache), after the Rule 17 gate); **Scenario B** — connector found but connection unresolved, only after the Step 2 create offer is **declined** or fails (or the run is non-interactive). When `Connections` is empty, offer to create one first (Step 2) — do not jump straight here.
|
|
201
|
+
|
|
197
202
|
> **Rule 17 exception.** Empty `Connections` from `get-connection` (the connector activity exists in typecache but no IS connection is registered) does NOT require the Rule 17 gate — proceed directly to placeholder.
|
|
198
203
|
|
|
199
204
|
If the connector or connection cannot be resolved:
|
|
@@ -128,4 +128,4 @@ All issues appended to the shared issue list per [logging/impl-json.md](../../lo
|
|
|
128
128
|
4. When the trigger has event parameters: `data.context[name="metadata"].body.bindings[Property].metadata.ParentResourceKey` is `EventTrigger.<eventTriggerKey>` (substituted from `EventTrigger.{{TRIGGER_REGISTRATION_KEY}}`)
|
|
129
129
|
5. Root bindings exist for ConnectionId + folderKey with the minted ids; `data.bindings[]` is empty `[]`
|
|
130
130
|
6. Each entry in `data.inputs[]` / `data.outputs[]` has `var` / `id` / `elementId` minted; uniqueness rule applied for outputs
|
|
131
|
-
7. `bindings_v2.json` `resources` array matches
|
|
131
|
+
7. `bindings_v2.json` `resources` array matches top-level `bindings[]` after the deferred sync
|
|
@@ -43,6 +43,8 @@ Follow the pipeline in [connector-trigger-common.md § Planning Pipeline](../../
|
|
|
43
43
|
|
|
44
44
|
## Unresolved Fallback
|
|
45
45
|
|
|
46
|
+
Two entry paths: **Scenario A** — connector not found in TypeCache ([connector-trigger-common.md § 1 No-match](../../../connector-trigger-common.md#1-find-the-trigger-in-typecache), after the Rule 17 gate); **Scenario B** — connector found but connection unresolved, only after the create offer ([connector-trigger-common.md § Resolve the connection](../../../connector-trigger-common.md#2-resolve-the-connection)) is **declined** or fails. When `Connections` is empty, offer to create one first — do not jump straight here.
|
|
47
|
+
|
|
46
48
|
> **Rule 17 exception.** Empty `Connections` from `get-connection` (the connector trigger exists in typecache but no IS connection is registered) does NOT require the Rule 17 gate — proceed directly to placeholder.
|
|
47
49
|
|
|
48
50
|
If the connector or connection cannot be resolved:
|
|
@@ -40,7 +40,7 @@ Read [bindings/impl-json.md § Full binding shape — non-connector tasks](../..
|
|
|
40
40
|
|
|
41
41
|
- `resource`: `"process"`
|
|
42
42
|
- `resourceSubType`: `"ProcessOrchestration"`
|
|
43
|
-
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields
|
|
43
|
+
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields. `folder-path` is the resolved registry `folders[0].fullyQualifiedName` (per [planning.md § Registry Resolution](planning.md#registry-resolution)) — never the raw sdd.md "Folder", which may be a parent path and faults the job at runtime.
|
|
44
44
|
|
|
45
45
|
Dedup per [§ Deduplication](../../variables/bindings/impl-json.md).
|
|
46
46
|
|
|
@@ -18,7 +18,7 @@ For RPA robot tasks specifically, prefer [rpa](../rpa/planning.md). For Coded wo
|
|
|
18
18
|
|-------|--------|-------|
|
|
19
19
|
| `display-name` | Process Reference "Name" | Shown in the UI |
|
|
20
20
|
| `name` | Process Reference "Name" | |
|
|
21
|
-
| `folder-path` |
|
|
21
|
+
| `folder-path` | Resolved registry `folders[0].fullyQualifiedName` (NOT the sdd.md "Folder") | This is the binding's `folderPath` default — Orchestrator starts the job here at runtime. The sdd.md "Folder" only seeds the registry lookup; it may be a parent/truncated path. See [§ Registry Resolution](#registry-resolution). |
|
|
22
22
|
| `task-type-id` | Registry resolution (see below) | Enables auto-enrichment via `tasks describe`. |
|
|
23
23
|
| `inputs` | sdd.md task data mapping | See [bindings-and-expressions.md](../../../bindings-and-expressions.md) |
|
|
24
24
|
| `outputs` | Discovered via `tasks describe` | Listed for downstream cross-task references |
|
|
@@ -31,7 +31,8 @@ For RPA robot tasks specifically, prefer [rpa](../rpa/planning.md). For Coded wo
|
|
|
31
31
|
2. **Identifier field:** `entityKey`.
|
|
32
32
|
3. **Cross-type fallback.** If the primary cache file has no match, search both files — the sdd.md label is not authoritative. A process registered as `process` may be mislabeled `AGENTIC_PROCESS` in sdd.md and vice versa.
|
|
33
33
|
4. **Match priority:** exact name + exact folder > exact name, multiple folders (pick matching) > exact name only > no match.
|
|
34
|
-
5.
|
|
34
|
+
5. **`folder-path` = the SELECTED entry's `folders[0].fullyQualifiedName`** (not the sdd.md "Folder" — see the field table above). Fall back to the sdd.md folder only when there is no registry match (Unresolved path).
|
|
35
|
+
6. **Discover inputs/outputs:** after resolving the `entityKey`, fetch the input/output schema via `tasks describe` — see [bindings-and-expressions.md § Discovering output names](../../../bindings-and-expressions.md). Record input names, types, and output names. Unrecognized inputs in sdd.md → ask the user (**AskUserQuestion** with matching field names + "Something else").
|
|
35
36
|
|
|
36
37
|
## Unresolved Fallback
|
|
37
38
|
|
|
@@ -40,7 +41,7 @@ If no match is found across both cache files after `registry pull`:
|
|
|
40
41
|
- Mark the task line: `<UNRESOLVED: process "<name>" in folder "<folder>" not found in registry>`
|
|
41
42
|
- Omit `inputs:` and `outputs:`; capture intended wiring in a fenced ```` ```text ```` code block (not `#` prefixed — it renders as markdown H1).
|
|
42
43
|
- Continue planning for remaining tasks.
|
|
43
|
-
- Execution creates a placeholder task (
|
|
44
|
+
- Execution creates a placeholder task (empty `data: {}`, no bindings). See [placeholder-tasks.md](../../../placeholder-tasks.md).
|
|
44
45
|
|
|
45
46
|
## tasks.md Entry Format
|
|
46
47
|
|
|
@@ -41,7 +41,7 @@ Read [bindings/impl-json.md § Full binding shape — non-connector tasks](../..
|
|
|
41
41
|
|
|
42
42
|
- `resource`: `"process"`
|
|
43
43
|
- `resourceSubType`: omit (no resourceSubType for rpa tasks)
|
|
44
|
-
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields
|
|
44
|
+
- `name` / `folderPath` defaults: from `tasks.md` `name` / `folder-path` fields. `folder-path` is the resolved registry `folders[0].fullyQualifiedName` (per [planning.md § Registry Resolution](planning.md#registry-resolution)) — never the raw sdd.md "Folder", which may be a parent path and faults the job at runtime.
|
|
45
45
|
|
|
46
46
|
Dedup per [§ Deduplication](../../variables/bindings/impl-json.md).
|
|
47
47
|
|