@uipath/solution-tool 1.204.0-preview.225 → 1.204.0-preview.227

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/{deploy-delete-service-qa992e0t.js → deploy-delete-service-ee0rnqha.js} +9 -9
  2. package/dist/{deploy-status-service-4gyz57sf.js → deploy-status-service-rfhaf333.js} +9 -9
  3. package/dist/deploy.js +11 -11
  4. package/dist/{deployment-search-vbjyhs10.js → deployment-search-7v5yxbdf.js} +5 -5
  5. package/dist/{feed-resolver-v7t9rvph.js → feed-resolver-hd8nrn7v.js} +5 -5
  6. package/dist/{feed-scope-failure-8xfgfq4d.js → feed-scope-failure-3r7ymynp.js} +6 -6
  7. package/dist/index.js +20 -20
  8. package/dist/init.js +5 -5
  9. package/dist/{list-94gpa9ps.js → list-qe3p19sg.js} +4 -4
  10. package/dist/models/pack-command-types.d.ts +7 -0
  11. package/dist/pack.js +8 -8
  12. package/dist/{packager-tool-vh4ng74p.js → packager-tool-1rzssy0x.js} +3 -3
  13. package/dist/{packager-tool-y94hgr33.js → packager-tool-3455w9d9.js} +7 -6
  14. package/dist/{packager-tool-tjy6kene.js → packager-tool-47jwfqx7.js} +3 -3
  15. package/dist/{packager-tool-dnceqejz.js → packager-tool-5ycnrx5p.js} +3 -3
  16. package/dist/{packager-tool-c10w3gb4.js → packager-tool-61kk26cq.js} +8 -8
  17. package/dist/{packager-tool-c34hyfag.js → packager-tool-6qnzwhkx.js} +2 -2
  18. package/dist/{packager-tool-qgaqqq41.js → packager-tool-7gr2nphb.js} +1 -1
  19. package/dist/{packager-tool-h48m9htp.js → packager-tool-d04rhvpr.js} +48 -61
  20. package/dist/{packager-tool-5dzjsw5q.js → packager-tool-e2rtr49j.js} +1 -1
  21. package/dist/{packager-tool-vmsxq1pc.js → packager-tool-f2e9rzxk.js} +1 -1
  22. package/dist/{packager-tool-e9gd9vj7.js → packager-tool-f7zpwjem.js} +2 -2
  23. package/dist/{packager-tool-fwt2myg8.js → packager-tool-fsmvencw.js} +4 -4
  24. package/dist/{packager-tool-9vvdgbay.js → packager-tool-gab9y5ct.js} +4 -4
  25. package/dist/{packager-tool-7getfd53.js → packager-tool-gjk95q61.js} +3 -3
  26. package/dist/{packager-tool-5fjp60dk.js → packager-tool-kswwd3hp.js} +3 -1
  27. package/dist/{packager-tool-2cntqvdv.js → packager-tool-px1j9kre.js} +1 -1
  28. package/dist/{packager-tool-resolver-2cbxyq6k.js → packager-tool-resolver-6zwhec62.js} +2 -2
  29. package/dist/{packager-tool-wq18a9fw.js → packager-tool-rf7x0a05.js} +3 -3
  30. package/dist/{packager-tool-5q1d3rex.js → packager-tool-rm3ypsfr.js} +3 -3
  31. package/dist/{packager-tool-3enm2h28.js → packager-tool-v8bkkqdb.js} +1 -1
  32. package/dist/{packager-tool-83rzavkx.js → packager-tool-yrz4mwfn.js} +5 -5
  33. package/dist/{packager-tool-3fv6zc86.js → packager-tool-zdfn32bc.js} +1 -1
  34. package/dist/{prepare-solution-resources-p3gzdecy.js → prepare-solution-resources-jpb5as2s.js} +7 -7
  35. package/dist/{project-contributions-txe8v6sm.js → project-contributions-6wpff2hm.js} +6 -6
  36. package/dist/publish.js +7 -7
  37. package/dist/resource.js +4 -4
  38. package/dist/templates/AGENTS.md +12 -5
  39. package/dist/tool.js +20 -20
  40. package/package.json +2 -2
@@ -66,14 +66,14 @@ A solution can contain multiple projects of different types. The table below lis
66
66
  | `AppV2` | Coded App — web application | `uip codedapp init <path>` | `uipath-coded-apps` |
67
67
  | `Function` | UiPath Function (JS / TS / Python) | `uip function new [name]` | `uipath-functions` |
68
68
  | `Api` | API Workflow project | `uip api-workflow init <name>` | `uipath-api-workflow` |
69
- | `BusinessRules` | Business rule — one or more DMN decisions. Ships as a `.uirule`: an archive holding the project's `.dmn` files and the `entry-points.json` that names which decisions a caller may invoke and with what arguments. Not wrapped in a `.nupkg`, and the solution's `businessRule` resource points at it by file name. A project with no `entry-points.json` still ships as a bare `.dmn`, which exposes no arguments. `restore` and `validate` are no-ops for this type. | `uip rules init <name>` | none |
69
+ | `BusinessRules` | Business rule — one or more DMN decisions. Packs to a `.uirule` (its `.dmn` files plus `entry-points.json`), not a `.nupkg` | `uip rules init <name>` | `uipath-rules` |
70
70
  | `Entity` | Data Fabric entity project — one folder per project, one `.entity` pointer file per entity; the schema itself lives in `resources/solution_folder/entity/native/<Name>.json`. Emits no package: the entity resources are the deployable payload, so `solution pack` validates the project instead of building it. | no CLI scaffolding — entity projects are modelled in the UiPath VS Code extension. Do not hand-write the `.entity` file or its resource: the pointer and the schema must stay in step, and `solution pack` fails if they do not. | `uipath-platform` (covers `uip df` entities, records and choice sets) |
71
71
  | `Connector` | Integration Service connector | no CLI scaffolding — use `uip is connectors` to list / get / export existing connectors | `uipath-connector-builder` |
72
72
  | `WebApp` | Legacy low-code UiPath App (the coded variant is `AppV2`) | no CLI scaffolding | none |
73
73
 
74
74
  Install the skills with `uip skills install`. The general-purpose `uipath-platform` skill covers what isn't in a type-specific skill, and `uipath-solution` covers the solution lifecycle itself.
75
75
 
76
- A `BusinessRules` project gets its `businessRule` resource when it is added to the solution; `Library` and `Tests` projects declare no solution resources. `uip solution resources refresh` skips all three.
76
+ A `BusinessRules` project gets its `businessRule` resource when it is added to the solution, and `uip solution resources refresh` regenerates it if it goes missing. `Library` and `Tests` projects declare no solution resources, and refresh skips them.
77
77
 
78
78
  **`Library` is not a project type here.** A library is a reusable `.nupkg` consumed as a NuGet dependency, so `projects add` / `import` reject it and auto-registration returns `SolutionRegistration.Status: "Skipped"`. Publish it on its own (`uip rpa pack <project-dir> <output-path>`, then `uip or libraries upload --file <nupkg-path>`) and either reference it from a project's dependencies or attach it to this solution as a resource: `uip solution resources add --source remote --kind Library --name <library-name>`.
79
79
 
@@ -213,25 +213,32 @@ That last flag is strict on purpose, and that is what makes it easy to get wrong
213
213
 
214
214
  ## Workflow Analyzer and Governance
215
215
 
216
- `solution pack` runs the workflow analyzer over every RPA project. Two things control it:
216
+ `solution pack` runs the workflow analyzer over every RPA project. These flags control it:
217
217
 
218
218
  ```bash
219
219
  uip solution pack . ./out --skip-analyze # don't run the analyzer at all
220
+ uip solution pack . ./out --ignored-rules ST-USG-034,ST-MRD-002 # run it, but drop these rules' findings
220
221
  uip solution pack . ./out --governance-file-path ./policy.json # analyze against a local policy file
221
222
  uip solution pack . ./out --governance-product StudioWeb # analyze against the tenant policy
222
223
  ```
223
224
 
224
225
  `--skip-analyze` turns off only the analyzer rules — the compiler still restores, compiles, and validates, so a broken project still fails the pack.
225
226
 
227
+ `--ignored-rules` keeps the analyzer on but drops the findings of the rules it names, for every RPA project in the solution: they are not reported and cannot fail the pack. It is the per-run escape hatch the legacy `uipcli --ignoredRules` was — use it for violations a pipeline has deliberately accepted, rather than editing a policy other people share. The value is a comma-separated list of rule IDs; repeat the flag to add more; IDs are trimmed and matched case-insensitively. Which rules it can lift depends on where the rules come from:
228
+
229
+ - **The signed-in tenant publishes an AutomationOps policy.** The list is not applied, even with a `--governance-file-path`: the organisation's policy stays enforced in full, and a warning names the rules that were not ignored. The pack does not fail because of the flag.
230
+ - **A `--governance-file-path` is used** (the tenant publishes nothing, could not be asked, or there is no signed-in tenant). The list applies on top of the file, even to rules the file raises to `Error`.
231
+ - **No policy at all.** The list applies on top of the rules shipped with the WorkflowCompiler.
232
+
226
233
  A failed pack says which project broke and where. Alongside `Message`, the envelope carries `Data.Projects` — one entry per member project with `Path` (its directory relative to the solution, `.` at the root), `Type`, `Result`, `Message` and `Findings`; each finding carries `Source` (`Analyzer`, `Validator`, `Compiler`, `Other`), `ErrorCode`, `Description`, `FilePath` and `ActivityIdRef` where the compiler reported one. Read `Data.Projects` rather than parsing `Message` — the message flattens every failed project into one sentence and names no file. A failure that belongs to no project at all (not logged in, no packager for a `Type`) has no `Data.Projects`.
227
234
 
228
- The analyzer rule configuration comes from whichever governance flag you use. `--governance-file-path` reads a local policy file — pass an AutomationOps policy **exactly as exported**, envelope and all: the analyzer reads the whole export, so handing it just the inner `data` object is rejected with a message telling you to pass the export instead. A file that cannot be read, or that is not JSON, fails the pack rather than falling back — you asked for a policy, so packing without one would be a silent pass. `--governance-product` downloads the policy published in AutomationOps for the signed-in tenant; its value is the product to fetch (`StudioWeb`, `Development`, `Business`, …). With neither flag the analyzer uses the rules shipped with the WorkflowCompiler. Pass `--governance-file-path` on its own and the tenant is still asked, about `StudioWeb`, so the file's standing can be decided — that is the only case with a product default.
235
+ The analyzer rule configuration comes from whichever governance flag you use. `--governance-file-path` reads a local policy file — pass an AutomationOps policy **exactly as exported**, envelope and all: the analyzer reads the whole export, so handing it just the inner `data` object is rejected with a message telling you to pass the export instead. A file that cannot be read, or that is not JSON, fails the pack rather than falling back — you asked for a policy, so packing without one would be a silent pass. `--governance-product` downloads the policy published in AutomationOps for the signed-in tenant; its value is the product to fetch (`StudioWeb`, `Development`, `Business`, …). With neither flag the analyzer uses the rules shipped with the WorkflowCompiler. Pass `--governance-file-path` or `--ignored-rules` without `--governance-product` and the tenant is still asked, about `StudioWeb`, so a governed tenant's policy can win over them — those are the only cases with a product default.
229
236
 
230
237
  `--automation-ops-profile` is the old name for `--governance-product`. It still works and still parses, but it is hidden from help and warns; passing both is rejected rather than resolved. Use `--governance-product` in anything new.
231
238
 
232
239
  Whenever you are signed in, the tenant is asked first — including when you pass `--governance-file-path`. There are three possible answers and each does something different:
233
240
 
234
- - **The tenant publishes a policy.** That policy is what the analyzer uses, whatever else you passed. A `--governance-file-path` alongside it is not used; you get a warning and the pack carries on — a flag in your own pipeline does not lift the organisation's policy.
241
+ - **The tenant publishes a policy.** That policy is what the analyzer uses, whatever else you passed. A `--governance-file-path` alongside it is not used, and `--ignored-rules` is not applied; each gets a warning and the pack carries on — a flag in your own pipeline does not lift the organisation's policy.
235
242
  - **The tenant publishes nothing.** The analyzer uses your `--governance-file-path` if you passed one, otherwise the rules shipped with the WorkflowCompiler.
236
243
  - **The question could not be answered** (expired token, no route, the service is down). The pack still succeeds and nothing fails: you get a warning naming the reason (`unauthorized`, `notFound`, `serverError`, `timedOut`, …), shown only at `--log-level warn` or lower (see below), and the analyzer uses your `--governance-file-path` if you passed one, otherwise the shipped rules. Not knowing whether you are governed is not a reason to break a build.
237
244
 
package/dist/tool.js CHANGED
@@ -1,32 +1,32 @@
1
1
  import {
2
2
  metadata,
3
3
  registerCommands
4
- } from "./packager-tool-h48m9htp.js";
5
- import"./packager-tool-3enm2h28.js";
6
- import"./packager-tool-c34hyfag.js";
7
- import"./packager-tool-c10w3gb4.js";
8
- import"./packager-tool-e9gd9vj7.js";
9
- import"./packager-tool-dnceqejz.js";
10
- import"./packager-tool-tjy6kene.js";
11
- import"./packager-tool-2cntqvdv.js";
12
- import"./packager-tool-y94hgr33.js";
13
- import"./packager-tool-9vvdgbay.js";
14
- import"./packager-tool-vh4ng74p.js";
15
- import"./packager-tool-5dzjsw5q.js";
4
+ } from "./packager-tool-d04rhvpr.js";
5
+ import"./packager-tool-v8bkkqdb.js";
6
+ import"./packager-tool-6qnzwhkx.js";
7
+ import"./packager-tool-61kk26cq.js";
8
+ import"./packager-tool-f7zpwjem.js";
9
+ import"./packager-tool-5ycnrx5p.js";
10
+ import"./packager-tool-47jwfqx7.js";
11
+ import"./packager-tool-px1j9kre.js";
12
+ import"./packager-tool-3455w9d9.js";
13
+ import"./packager-tool-gab9y5ct.js";
14
+ import"./packager-tool-1rzssy0x.js";
15
+ import"./packager-tool-e2rtr49j.js";
16
16
  import"./packager-tool-zns6n8zp.js";
17
- import"./packager-tool-7getfd53.js";
18
- import"./packager-tool-qgaqqq41.js";
19
- import"./packager-tool-wq18a9fw.js";
20
- import"./packager-tool-fwt2myg8.js";
17
+ import"./packager-tool-gjk95q61.js";
18
+ import"./packager-tool-7gr2nphb.js";
19
+ import"./packager-tool-rf7x0a05.js";
20
+ import"./packager-tool-fsmvencw.js";
21
21
  import"./packager-tool-bqre28m1.js";
22
- import"./packager-tool-83rzavkx.js";
22
+ import"./packager-tool-yrz4mwfn.js";
23
23
  import"./packager-tool-gdtpsdn7.js";
24
24
  import"./packager-tool-53w8skv5.js";
25
25
  import"./packager-tool-fv7xyzg2.js";
26
26
  import"./packager-tool-f5gq77m5.js";
27
- import"./packager-tool-3fv6zc86.js";
28
- import"./packager-tool-vmsxq1pc.js";
29
- import"./packager-tool-5fjp60dk.js";
27
+ import"./packager-tool-zdfn32bc.js";
28
+ import"./packager-tool-f2e9rzxk.js";
29
+ import"./packager-tool-kswwd3hp.js";
30
30
  import"./packager-tool-gb35b4qs.js";
31
31
  import"./packager-tool-zf3929se.js";
32
32
  import"./packager-tool-dfrk01gn.js";
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@uipath/solution-tool",
3
3
  "author": "UiPath",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
- "version": "1.204.0-preview.225",
5
+ "version": "1.204.0-preview.227",
6
6
  "description": "Create, pack, publish, and deploy UiPath Automation Solutions.",
7
7
  "repository": {
8
8
  "type": "git",
@@ -48,5 +48,5 @@
48
48
  "dist"
49
49
  ],
50
50
  "private": false,
51
- "gitHead": "e71436786f726c7609d9a9135518234aae255978"
51
+ "gitHead": "9e8b8976191e55dc098d9bc43fcbc07ffbb64c85"
52
52
  }