@uipath/maestro-builder-sdk 6.15.3 → 6.15.4

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 (2) hide show
  1. package/dist/check.js +39 -12
  2. package/package.json +2 -2
package/dist/check.js CHANGED
@@ -3940,19 +3940,46 @@ function checkHttp(step, inputs, diags) {
3940
3940
  // Moving to the managed node is not a rename. A plain step keeps a non-2xx on
3941
3941
  // the SUCCESS path (`out(step,'statusCode')`); the managed one fails on it, so
3942
3942
  // a status branch becomes an error handler reading the envelope's `status`.
3943
- // That rewrite is the author's call, so the warning states the trade rather
3944
- // than pretending it is mechanical.
3943
+ //
3944
+ // It is not a free upgrade either, and for a connection-less URL it is usually
3945
+ // the wrong move (flow-builder-sdk#898). With no `connection` the managed node
3946
+ // still goes through Integration Service: serialize emits the `uipath-uipath-http`
3947
+ // connector on `ImplicitConnection`, so the request leaves from IS's SHARED
3948
+ // egress. Measured on slack-weather-pipeline (3/3 runs): agents took the old
3949
+ // `managed: true` hint, and Open-Meteo answered that egress 429 "Daily API
3950
+ // request limit exceeded" while direct calls from the same box got 200. The
3951
+ // plain node goes direct. So the hint only steers toward `managed: true` when
3952
+ // the step was given connection settings; the two other real reasons to move
3953
+ // (a binding, an `.onError()`) already fire as errors with that suggestion
3954
+ // (HTTP_BINDING_REQUIRES_MANAGED, HTTP_ONERROR_V1).
3945
3955
  if (inputs && !inputs.managed) {
3946
- diags.push({
3947
- level: 'warning',
3948
- code: 'HTTP_V1_RETIRED',
3949
- message: `Step "${step}" emits core.action.http, which the tenant registry no longer serves (only `
3950
- + `core.action.http.v2). It still runs today. Moving to managed: true changes behaviour rather than just `
3951
- + `the node type: a non-2xx stops arriving on the success path with statusCode and fails the step instead, `
3952
- + `so a status branch becomes an .onError() handler reading err('${step}', 'status').`,
3953
- step,
3954
- suggestion: `http({ url: …, managed: true })`,
3955
- });
3956
+ const asked = inputs;
3957
+ const wantsConnection = asked.connection !== undefined || asked.folder !== undefined
3958
+ || asked.targetConnector !== undefined;
3959
+ diags.push(wantsConnection
3960
+ ? {
3961
+ level: 'warning',
3962
+ code: 'HTTP_V1_RETIRED',
3963
+ message: `Step "${step}" emits core.action.http, which the tenant registry no longer serves (only `
3964
+ + `core.action.http.v2). It sets Integration Service connection settings, which only the managed node `
3965
+ + `can use. Moving to managed: true changes behaviour rather than just the node type: a non-2xx stops `
3966
+ + `arriving on the success path with statusCode and fails the step instead, so a status branch becomes `
3967
+ + `an .onError() handler reading err('${step}', 'status').`,
3968
+ step,
3969
+ suggestion: `http({ url: …, managed: true, connection, folder })`,
3970
+ }
3971
+ : {
3972
+ level: 'warning',
3973
+ code: 'HTTP_V1_RETIRED',
3974
+ message: `Step "${step}" emits core.action.http, which the tenant registry no longer serves (only `
3975
+ + `core.action.http.v2). It still compiles, validates and runs, and it calls the URL directly. For a URL `
3976
+ + `that needs no Integration Service connection, keep managed: false. managed: true is not a drop-in `
3977
+ + `replacement: even without a connection it sends the request through Integration Service's shared `
3978
+ + `egress (rate limits there are shared, and public APIs can answer 429 where a direct call succeeds), `
3979
+ + `and a non-2xx fails the step instead of arriving with statusCode. Switch only if the call needs an `
3980
+ + `Integration Service connection or an .onError() handler.`,
3981
+ step,
3982
+ });
3956
3983
  }
3957
3984
  const connection = inputs?.connection;
3958
3985
  const folder = inputs?.folder;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uipath/maestro-builder-sdk",
3
- "version": "6.15.3",
3
+ "version": "6.15.4",
4
4
  "description": "Build UiPath Flow, Case, and BPMN artifacts by writing TypeScript.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://docs.uipath.com/maestro",
@@ -92,5 +92,5 @@
92
92
  "@types/node": "^22.7.0",
93
93
  "esbuild": "^0.28.1"
94
94
  },
95
- "gitref": "a85d11af254f270d645ec46d57994ccb800ebc1f"
95
+ "gitref": "37cc4f8cdcd0cfae5ec65c17d389c762e74f4a7c"
96
96
  }