doc-detective 4.0.2-dev.11 → 4.0.2-dev.13

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 (29) hide show
  1. package/dist/common/src/schemas/schemas.json +868 -112
  2. package/dist/common/src/types/generated/checkLink_v3.d.ts +6 -0
  3. package/dist/common/src/types/generated/checkLink_v3.d.ts.map +1 -1
  4. package/dist/common/src/types/generated/config_v3.d.ts +6 -0
  5. package/dist/common/src/types/generated/config_v3.d.ts.map +1 -1
  6. package/dist/common/src/types/generated/goTo_v3.d.ts +6 -0
  7. package/dist/common/src/types/generated/goTo_v3.d.ts.map +1 -1
  8. package/dist/common/src/types/generated/resolvedTests_v3.d.ts +6 -0
  9. package/dist/common/src/types/generated/resolvedTests_v3.d.ts.map +1 -1
  10. package/dist/common/src/types/generated/screenshot_v3.d.ts +2 -2
  11. package/dist/common/src/types/generated/step_v3.d.ts +14 -2
  12. package/dist/common/src/types/generated/step_v3.d.ts.map +1 -1
  13. package/dist/common/src/types/generated/test_v3.d.ts +28 -4
  14. package/dist/common/src/types/generated/test_v3.d.ts.map +1 -1
  15. package/dist/core/tests/checkLink.d.ts.map +1 -1
  16. package/dist/core/tests/checkLink.js +17 -2
  17. package/dist/core/tests/checkLink.js.map +1 -1
  18. package/dist/core/tests/goTo.d.ts.map +1 -1
  19. package/dist/core/tests/goTo.js +17 -2
  20. package/dist/core/tests/goTo.js.map +1 -1
  21. package/dist/core/tests/saveScreenshot.d.ts.map +1 -1
  22. package/dist/core/tests/saveScreenshot.js +130 -33
  23. package/dist/core/tests/saveScreenshot.js.map +1 -1
  24. package/dist/core/utils.d.ts +9 -2
  25. package/dist/core/utils.d.ts.map +1 -1
  26. package/dist/core/utils.js +234 -14
  27. package/dist/core/utils.js.map +1 -1
  28. package/dist/index.cjs +1140 -148
  29. package/package.json +1 -1
@@ -36,6 +36,14 @@
36
36
  "trim"
37
37
  ]
38
38
  },
39
+ "params": {
40
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
41
+ "type": "object",
42
+ "additionalProperties": {
43
+ "type": "string"
44
+ },
45
+ "default": {}
46
+ },
39
47
  "statusCodes": {
40
48
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
41
49
  "anyOf": [
@@ -119,6 +127,14 @@
119
127
  "trim"
120
128
  ]
121
129
  },
130
+ "params": {
131
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
132
+ "type": "object",
133
+ "additionalProperties": {
134
+ "type": "string"
135
+ },
136
+ "default": {}
137
+ },
122
138
  "statusCodes": {
123
139
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
124
140
  "anyOf": [
@@ -181,6 +197,13 @@
181
197
  "statusCodes": [
182
198
  200
183
199
  ]
200
+ },
201
+ {
202
+ "url": "/health",
203
+ "origin": "https://my-app.com",
204
+ "params": {
205
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
206
+ }
184
207
  }
185
208
  ]
186
209
  },
@@ -526,6 +549,14 @@
526
549
  "description": "Default protocol and domain to use for relative URLs.",
527
550
  "type": "string"
528
551
  },
552
+ "originParams": {
553
+ "description": "Query parameters to append to URLs resolved against `origin`. Values support environment variable substitution via `$VAR` syntax. Step-level `params` on `goTo` / `checkLink` are merged on top of these, with step keys winning on collision. WARNING: values are embedded in request URLs and appear verbatim in test results, logs, and reports — avoid putting long-lived secrets here.",
554
+ "type": "object",
555
+ "additionalProperties": {
556
+ "type": "string"
557
+ },
558
+ "default": {}
559
+ },
529
560
  "beforeAny": {
530
561
  "description": "Path(s) to test specifications to perform before those specified by `input`. Useful for setting up testing environments.",
531
562
  "anyOf": [
@@ -1540,6 +1571,14 @@
1540
1571
  "trim"
1541
1572
  ]
1542
1573
  },
1574
+ "params": {
1575
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
1576
+ "type": "object",
1577
+ "additionalProperties": {
1578
+ "type": "string"
1579
+ },
1580
+ "default": {}
1581
+ },
1543
1582
  "statusCodes": {
1544
1583
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
1545
1584
  "anyOf": [
@@ -1623,6 +1662,14 @@
1623
1662
  "trim"
1624
1663
  ]
1625
1664
  },
1665
+ "params": {
1666
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
1667
+ "type": "object",
1668
+ "additionalProperties": {
1669
+ "type": "string"
1670
+ },
1671
+ "default": {}
1672
+ },
1626
1673
  "statusCodes": {
1627
1674
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
1628
1675
  "anyOf": [
@@ -1685,6 +1732,13 @@
1685
1732
  "statusCodes": [
1686
1733
  200
1687
1734
  ]
1735
+ },
1736
+ {
1737
+ "url": "/health",
1738
+ "origin": "https://my-app.com",
1739
+ "params": {
1740
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
1741
+ }
1688
1742
  }
1689
1743
  ]
1690
1744
  }
@@ -3625,6 +3679,14 @@
3625
3679
  "trim"
3626
3680
  ]
3627
3681
  },
3682
+ "params": {
3683
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
3684
+ "type": "object",
3685
+ "additionalProperties": {
3686
+ "type": "string"
3687
+ },
3688
+ "default": {}
3689
+ },
3628
3690
  "timeout": {
3629
3691
  "type": "integer",
3630
3692
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -3797,6 +3859,14 @@
3797
3859
  "trim"
3798
3860
  ]
3799
3861
  },
3862
+ "params": {
3863
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
3864
+ "type": "object",
3865
+ "additionalProperties": {
3866
+ "type": "string"
3867
+ },
3868
+ "default": {}
3869
+ },
3800
3870
  "timeout": {
3801
3871
  "type": "integer",
3802
3872
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -3946,6 +4016,13 @@
3946
4016
  "url": "/search",
3947
4017
  "origin": "https://www.google.com"
3948
4018
  },
4019
+ {
4020
+ "url": "/dashboard",
4021
+ "origin": "https://my-app.com",
4022
+ "params": {
4023
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
4024
+ }
4025
+ },
3949
4026
  {
3950
4027
  "url": "https://www.example.com",
3951
4028
  "waitUntil": {
@@ -6211,9 +6288,9 @@
6211
6288
  "anyOf": [
6212
6289
  {
6213
6290
  "title": "Screenshot (simple)",
6214
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
6291
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
6215
6292
  "type": "string",
6216
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
6293
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
6217
6294
  "transform": [
6218
6295
  "trim"
6219
6296
  ]
@@ -6224,9 +6301,9 @@
6224
6301
  "properties": {
6225
6302
  "path": {
6226
6303
  "title": "Screenshot (simple)",
6227
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
6304
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
6228
6305
  "type": "string",
6229
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
6306
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
6230
6307
  "transform": [
6231
6308
  "trim"
6232
6309
  ]
@@ -6457,9 +6534,9 @@
6457
6534
  "schemas": {
6458
6535
  "path": {
6459
6536
  "title": "Screenshot (simple)",
6460
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
6537
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
6461
6538
  "type": "string",
6462
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
6539
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
6463
6540
  "transform": [
6464
6541
  "trim"
6465
6542
  ]
@@ -6470,9 +6547,9 @@
6470
6547
  "properties": {
6471
6548
  "path": {
6472
6549
  "title": "Screenshot (simple)",
6473
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
6550
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
6474
6551
  "type": "string",
6475
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
6552
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
6476
6553
  "transform": [
6477
6554
  "trim"
6478
6555
  ]
@@ -6854,6 +6931,12 @@
6854
6931
  "image.png",
6855
6932
  "static/images/image.png",
6856
6933
  "/User/manny/projects/doc-detective/static/images/image.png",
6934
+ "https://example.com/static/images/image.png",
6935
+ {
6936
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
6937
+ "maxVariation": 0.05,
6938
+ "overwrite": "aboveVariation"
6939
+ },
6857
6940
  {
6858
6941
  "path": "image.png",
6859
6942
  "directory": "static/images",
@@ -10203,6 +10286,14 @@
10203
10286
  "trim"
10204
10287
  ]
10205
10288
  },
10289
+ "params": {
10290
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
10291
+ "type": "object",
10292
+ "additionalProperties": {
10293
+ "type": "string"
10294
+ },
10295
+ "default": {}
10296
+ },
10206
10297
  "statusCodes": {
10207
10298
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
10208
10299
  "anyOf": [
@@ -10286,6 +10377,14 @@
10286
10377
  "trim"
10287
10378
  ]
10288
10379
  },
10380
+ "params": {
10381
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
10382
+ "type": "object",
10383
+ "additionalProperties": {
10384
+ "type": "string"
10385
+ },
10386
+ "default": {}
10387
+ },
10289
10388
  "statusCodes": {
10290
10389
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
10291
10390
  "anyOf": [
@@ -10348,6 +10447,13 @@
10348
10447
  "statusCodes": [
10349
10448
  200
10350
10449
  ]
10450
+ },
10451
+ {
10452
+ "url": "/health",
10453
+ "origin": "https://my-app.com",
10454
+ "params": {
10455
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
10456
+ }
10351
10457
  }
10352
10458
  ]
10353
10459
  }
@@ -12288,6 +12394,14 @@
12288
12394
  "trim"
12289
12395
  ]
12290
12396
  },
12397
+ "params": {
12398
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
12399
+ "type": "object",
12400
+ "additionalProperties": {
12401
+ "type": "string"
12402
+ },
12403
+ "default": {}
12404
+ },
12291
12405
  "timeout": {
12292
12406
  "type": "integer",
12293
12407
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -12460,6 +12574,14 @@
12460
12574
  "trim"
12461
12575
  ]
12462
12576
  },
12577
+ "params": {
12578
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
12579
+ "type": "object",
12580
+ "additionalProperties": {
12581
+ "type": "string"
12582
+ },
12583
+ "default": {}
12584
+ },
12463
12585
  "timeout": {
12464
12586
  "type": "integer",
12465
12587
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -12609,6 +12731,13 @@
12609
12731
  "url": "/search",
12610
12732
  "origin": "https://www.google.com"
12611
12733
  },
12734
+ {
12735
+ "url": "/dashboard",
12736
+ "origin": "https://my-app.com",
12737
+ "params": {
12738
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
12739
+ }
12740
+ },
12612
12741
  {
12613
12742
  "url": "https://www.example.com",
12614
12743
  "waitUntil": {
@@ -14874,9 +15003,9 @@
14874
15003
  "anyOf": [
14875
15004
  {
14876
15005
  "title": "Screenshot (simple)",
14877
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
15006
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
14878
15007
  "type": "string",
14879
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
15008
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
14880
15009
  "transform": [
14881
15010
  "trim"
14882
15011
  ]
@@ -14887,9 +15016,9 @@
14887
15016
  "properties": {
14888
15017
  "path": {
14889
15018
  "title": "Screenshot (simple)",
14890
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
15019
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
14891
15020
  "type": "string",
14892
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
15021
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
14893
15022
  "transform": [
14894
15023
  "trim"
14895
15024
  ]
@@ -15120,9 +15249,9 @@
15120
15249
  "schemas": {
15121
15250
  "path": {
15122
15251
  "title": "Screenshot (simple)",
15123
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
15252
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
15124
15253
  "type": "string",
15125
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
15254
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
15126
15255
  "transform": [
15127
15256
  "trim"
15128
15257
  ]
@@ -15133,9 +15262,9 @@
15133
15262
  "properties": {
15134
15263
  "path": {
15135
15264
  "title": "Screenshot (simple)",
15136
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
15265
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
15137
15266
  "type": "string",
15138
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
15267
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
15139
15268
  "transform": [
15140
15269
  "trim"
15141
15270
  ]
@@ -15517,6 +15646,12 @@
15517
15646
  "image.png",
15518
15647
  "static/images/image.png",
15519
15648
  "/User/manny/projects/doc-detective/static/images/image.png",
15649
+ "https://example.com/static/images/image.png",
15650
+ {
15651
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
15652
+ "maxVariation": 0.05,
15653
+ "overwrite": "aboveVariation"
15654
+ },
15520
15655
  {
15521
15656
  "path": "image.png",
15522
15657
  "directory": "static/images",
@@ -17937,6 +18072,12 @@
17937
18072
  "html"
17938
18073
  ]
17939
18074
  },
18075
+ {
18076
+ "origin": "https://my-app.com",
18077
+ "originParams": {
18078
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
18079
+ }
18080
+ },
17940
18081
  {
17941
18082
  "fileTypes": [
17942
18083
  {
@@ -20302,6 +20443,14 @@
20302
20443
  "trim"
20303
20444
  ]
20304
20445
  },
20446
+ "params": {
20447
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
20448
+ "type": "object",
20449
+ "additionalProperties": {
20450
+ "type": "string"
20451
+ },
20452
+ "default": {}
20453
+ },
20305
20454
  "timeout": {
20306
20455
  "type": "integer",
20307
20456
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -20474,6 +20623,14 @@
20474
20623
  "trim"
20475
20624
  ]
20476
20625
  },
20626
+ "params": {
20627
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
20628
+ "type": "object",
20629
+ "additionalProperties": {
20630
+ "type": "string"
20631
+ },
20632
+ "default": {}
20633
+ },
20477
20634
  "timeout": {
20478
20635
  "type": "integer",
20479
20636
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -20623,6 +20780,13 @@
20623
20780
  "url": "/search",
20624
20781
  "origin": "https://www.google.com"
20625
20782
  },
20783
+ {
20784
+ "url": "/dashboard",
20785
+ "origin": "https://my-app.com",
20786
+ "params": {
20787
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
20788
+ }
20789
+ },
20626
20790
  {
20627
20791
  "url": "https://www.example.com",
20628
20792
  "waitUntil": {
@@ -22282,6 +22446,14 @@
22282
22446
  "description": "Default protocol and domain to use for relative URLs.",
22283
22447
  "type": "string"
22284
22448
  },
22449
+ "originParams": {
22450
+ "description": "Query parameters to append to URLs resolved against `origin`. Values support environment variable substitution via `$VAR` syntax. Step-level `params` on `goTo` / `checkLink` are merged on top of these, with step keys winning on collision. WARNING: values are embedded in request URLs and appear verbatim in test results, logs, and reports — avoid putting long-lived secrets here.",
22451
+ "type": "object",
22452
+ "additionalProperties": {
22453
+ "type": "string"
22454
+ },
22455
+ "default": {}
22456
+ },
22285
22457
  "beforeAny": {
22286
22458
  "description": "Path(s) to test specifications to perform before those specified by `input`. Useful for setting up testing environments.",
22287
22459
  "anyOf": [
@@ -23296,6 +23468,14 @@
23296
23468
  "trim"
23297
23469
  ]
23298
23470
  },
23471
+ "params": {
23472
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
23473
+ "type": "object",
23474
+ "additionalProperties": {
23475
+ "type": "string"
23476
+ },
23477
+ "default": {}
23478
+ },
23299
23479
  "statusCodes": {
23300
23480
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
23301
23481
  "anyOf": [
@@ -23379,6 +23559,14 @@
23379
23559
  "trim"
23380
23560
  ]
23381
23561
  },
23562
+ "params": {
23563
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
23564
+ "type": "object",
23565
+ "additionalProperties": {
23566
+ "type": "string"
23567
+ },
23568
+ "default": {}
23569
+ },
23382
23570
  "statusCodes": {
23383
23571
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
23384
23572
  "anyOf": [
@@ -23441,6 +23629,13 @@
23441
23629
  "statusCodes": [
23442
23630
  200
23443
23631
  ]
23632
+ },
23633
+ {
23634
+ "url": "/health",
23635
+ "origin": "https://my-app.com",
23636
+ "params": {
23637
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
23638
+ }
23444
23639
  }
23445
23640
  ]
23446
23641
  }
@@ -25381,6 +25576,14 @@
25381
25576
  "trim"
25382
25577
  ]
25383
25578
  },
25579
+ "params": {
25580
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
25581
+ "type": "object",
25582
+ "additionalProperties": {
25583
+ "type": "string"
25584
+ },
25585
+ "default": {}
25586
+ },
25384
25587
  "timeout": {
25385
25588
  "type": "integer",
25386
25589
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -25553,6 +25756,14 @@
25553
25756
  "trim"
25554
25757
  ]
25555
25758
  },
25759
+ "params": {
25760
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
25761
+ "type": "object",
25762
+ "additionalProperties": {
25763
+ "type": "string"
25764
+ },
25765
+ "default": {}
25766
+ },
25556
25767
  "timeout": {
25557
25768
  "type": "integer",
25558
25769
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -25702,6 +25913,13 @@
25702
25913
  "url": "/search",
25703
25914
  "origin": "https://www.google.com"
25704
25915
  },
25916
+ {
25917
+ "url": "/dashboard",
25918
+ "origin": "https://my-app.com",
25919
+ "params": {
25920
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
25921
+ }
25922
+ },
25705
25923
  {
25706
25924
  "url": "https://www.example.com",
25707
25925
  "waitUntil": {
@@ -27967,9 +28185,9 @@
27967
28185
  "anyOf": [
27968
28186
  {
27969
28187
  "title": "Screenshot (simple)",
27970
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
28188
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
27971
28189
  "type": "string",
27972
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
28190
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
27973
28191
  "transform": [
27974
28192
  "trim"
27975
28193
  ]
@@ -27980,9 +28198,9 @@
27980
28198
  "properties": {
27981
28199
  "path": {
27982
28200
  "title": "Screenshot (simple)",
27983
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
28201
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
27984
28202
  "type": "string",
27985
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
28203
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
27986
28204
  "transform": [
27987
28205
  "trim"
27988
28206
  ]
@@ -28213,9 +28431,9 @@
28213
28431
  "schemas": {
28214
28432
  "path": {
28215
28433
  "title": "Screenshot (simple)",
28216
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
28434
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
28217
28435
  "type": "string",
28218
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
28436
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
28219
28437
  "transform": [
28220
28438
  "trim"
28221
28439
  ]
@@ -28226,9 +28444,9 @@
28226
28444
  "properties": {
28227
28445
  "path": {
28228
28446
  "title": "Screenshot (simple)",
28229
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
28447
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
28230
28448
  "type": "string",
28231
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
28449
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
28232
28450
  "transform": [
28233
28451
  "trim"
28234
28452
  ]
@@ -28610,6 +28828,12 @@
28610
28828
  "image.png",
28611
28829
  "static/images/image.png",
28612
28830
  "/User/manny/projects/doc-detective/static/images/image.png",
28831
+ "https://example.com/static/images/image.png",
28832
+ {
28833
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
28834
+ "maxVariation": 0.05,
28835
+ "overwrite": "aboveVariation"
28836
+ },
28613
28837
  {
28614
28838
  "path": "image.png",
28615
28839
  "directory": "static/images",
@@ -31959,6 +32183,14 @@
31959
32183
  "trim"
31960
32184
  ]
31961
32185
  },
32186
+ "params": {
32187
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
32188
+ "type": "object",
32189
+ "additionalProperties": {
32190
+ "type": "string"
32191
+ },
32192
+ "default": {}
32193
+ },
31962
32194
  "statusCodes": {
31963
32195
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
31964
32196
  "anyOf": [
@@ -32042,6 +32274,14 @@
32042
32274
  "trim"
32043
32275
  ]
32044
32276
  },
32277
+ "params": {
32278
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
32279
+ "type": "object",
32280
+ "additionalProperties": {
32281
+ "type": "string"
32282
+ },
32283
+ "default": {}
32284
+ },
32045
32285
  "statusCodes": {
32046
32286
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
32047
32287
  "anyOf": [
@@ -32104,6 +32344,13 @@
32104
32344
  "statusCodes": [
32105
32345
  200
32106
32346
  ]
32347
+ },
32348
+ {
32349
+ "url": "/health",
32350
+ "origin": "https://my-app.com",
32351
+ "params": {
32352
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
32353
+ }
32107
32354
  }
32108
32355
  ]
32109
32356
  }
@@ -34044,6 +34291,14 @@
34044
34291
  "trim"
34045
34292
  ]
34046
34293
  },
34294
+ "params": {
34295
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
34296
+ "type": "object",
34297
+ "additionalProperties": {
34298
+ "type": "string"
34299
+ },
34300
+ "default": {}
34301
+ },
34047
34302
  "timeout": {
34048
34303
  "type": "integer",
34049
34304
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -34216,6 +34471,14 @@
34216
34471
  "trim"
34217
34472
  ]
34218
34473
  },
34474
+ "params": {
34475
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
34476
+ "type": "object",
34477
+ "additionalProperties": {
34478
+ "type": "string"
34479
+ },
34480
+ "default": {}
34481
+ },
34219
34482
  "timeout": {
34220
34483
  "type": "integer",
34221
34484
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -34365,6 +34628,13 @@
34365
34628
  "url": "/search",
34366
34629
  "origin": "https://www.google.com"
34367
34630
  },
34631
+ {
34632
+ "url": "/dashboard",
34633
+ "origin": "https://my-app.com",
34634
+ "params": {
34635
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
34636
+ }
34637
+ },
34368
34638
  {
34369
34639
  "url": "https://www.example.com",
34370
34640
  "waitUntil": {
@@ -36630,9 +36900,9 @@
36630
36900
  "anyOf": [
36631
36901
  {
36632
36902
  "title": "Screenshot (simple)",
36633
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
36903
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
36634
36904
  "type": "string",
36635
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
36905
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
36636
36906
  "transform": [
36637
36907
  "trim"
36638
36908
  ]
@@ -36643,9 +36913,9 @@
36643
36913
  "properties": {
36644
36914
  "path": {
36645
36915
  "title": "Screenshot (simple)",
36646
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
36916
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
36647
36917
  "type": "string",
36648
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
36918
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
36649
36919
  "transform": [
36650
36920
  "trim"
36651
36921
  ]
@@ -36876,9 +37146,9 @@
36876
37146
  "schemas": {
36877
37147
  "path": {
36878
37148
  "title": "Screenshot (simple)",
36879
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
37149
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
36880
37150
  "type": "string",
36881
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
37151
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
36882
37152
  "transform": [
36883
37153
  "trim"
36884
37154
  ]
@@ -36889,9 +37159,9 @@
36889
37159
  "properties": {
36890
37160
  "path": {
36891
37161
  "title": "Screenshot (simple)",
36892
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
37162
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
36893
37163
  "type": "string",
36894
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
37164
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
36895
37165
  "transform": [
36896
37166
  "trim"
36897
37167
  ]
@@ -37273,6 +37543,12 @@
37273
37543
  "image.png",
37274
37544
  "static/images/image.png",
37275
37545
  "/User/manny/projects/doc-detective/static/images/image.png",
37546
+ "https://example.com/static/images/image.png",
37547
+ {
37548
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
37549
+ "maxVariation": 0.05,
37550
+ "overwrite": "aboveVariation"
37551
+ },
37276
37552
  {
37277
37553
  "path": "image.png",
37278
37554
  "directory": "static/images",
@@ -39693,6 +39969,12 @@
39693
39969
  "html"
39694
39970
  ]
39695
39971
  },
39972
+ {
39973
+ "origin": "https://my-app.com",
39974
+ "originParams": {
39975
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
39976
+ }
39977
+ },
39696
39978
  {
39697
39979
  "fileTypes": [
39698
39980
  {
@@ -41316,6 +41598,14 @@
41316
41598
  "trim"
41317
41599
  ]
41318
41600
  },
41601
+ "params": {
41602
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
41603
+ "type": "object",
41604
+ "additionalProperties": {
41605
+ "type": "string"
41606
+ },
41607
+ "default": {}
41608
+ },
41319
41609
  "statusCodes": {
41320
41610
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
41321
41611
  "anyOf": [
@@ -41399,6 +41689,14 @@
41399
41689
  "trim"
41400
41690
  ]
41401
41691
  },
41692
+ "params": {
41693
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
41694
+ "type": "object",
41695
+ "additionalProperties": {
41696
+ "type": "string"
41697
+ },
41698
+ "default": {}
41699
+ },
41402
41700
  "statusCodes": {
41403
41701
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
41404
41702
  "anyOf": [
@@ -41461,6 +41759,13 @@
41461
41759
  "statusCodes": [
41462
41760
  200
41463
41761
  ]
41762
+ },
41763
+ {
41764
+ "url": "/health",
41765
+ "origin": "https://my-app.com",
41766
+ "params": {
41767
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
41768
+ }
41464
41769
  }
41465
41770
  ]
41466
41771
  }
@@ -43401,6 +43706,14 @@
43401
43706
  "trim"
43402
43707
  ]
43403
43708
  },
43709
+ "params": {
43710
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
43711
+ "type": "object",
43712
+ "additionalProperties": {
43713
+ "type": "string"
43714
+ },
43715
+ "default": {}
43716
+ },
43404
43717
  "timeout": {
43405
43718
  "type": "integer",
43406
43719
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -43573,6 +43886,14 @@
43573
43886
  "trim"
43574
43887
  ]
43575
43888
  },
43889
+ "params": {
43890
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
43891
+ "type": "object",
43892
+ "additionalProperties": {
43893
+ "type": "string"
43894
+ },
43895
+ "default": {}
43896
+ },
43576
43897
  "timeout": {
43577
43898
  "type": "integer",
43578
43899
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -43722,6 +44043,13 @@
43722
44043
  "url": "/search",
43723
44044
  "origin": "https://www.google.com"
43724
44045
  },
44046
+ {
44047
+ "url": "/dashboard",
44048
+ "origin": "https://my-app.com",
44049
+ "params": {
44050
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
44051
+ }
44052
+ },
43725
44053
  {
43726
44054
  "url": "https://www.example.com",
43727
44055
  "waitUntil": {
@@ -45987,9 +46315,9 @@
45987
46315
  "anyOf": [
45988
46316
  {
45989
46317
  "title": "Screenshot (simple)",
45990
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
46318
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
45991
46319
  "type": "string",
45992
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
46320
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
45993
46321
  "transform": [
45994
46322
  "trim"
45995
46323
  ]
@@ -46000,9 +46328,9 @@
46000
46328
  "properties": {
46001
46329
  "path": {
46002
46330
  "title": "Screenshot (simple)",
46003
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
46331
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
46004
46332
  "type": "string",
46005
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
46333
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
46006
46334
  "transform": [
46007
46335
  "trim"
46008
46336
  ]
@@ -46233,9 +46561,9 @@
46233
46561
  "schemas": {
46234
46562
  "path": {
46235
46563
  "title": "Screenshot (simple)",
46236
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
46564
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
46237
46565
  "type": "string",
46238
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
46566
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
46239
46567
  "transform": [
46240
46568
  "trim"
46241
46569
  ]
@@ -46246,9 +46574,9 @@
46246
46574
  "properties": {
46247
46575
  "path": {
46248
46576
  "title": "Screenshot (simple)",
46249
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
46577
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
46250
46578
  "type": "string",
46251
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
46579
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
46252
46580
  "transform": [
46253
46581
  "trim"
46254
46582
  ]
@@ -46630,6 +46958,12 @@
46630
46958
  "image.png",
46631
46959
  "static/images/image.png",
46632
46960
  "/User/manny/projects/doc-detective/static/images/image.png",
46961
+ "https://example.com/static/images/image.png",
46962
+ {
46963
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
46964
+ "maxVariation": 0.05,
46965
+ "overwrite": "aboveVariation"
46966
+ },
46633
46967
  {
46634
46968
  "path": "image.png",
46635
46969
  "directory": "static/images",
@@ -49453,6 +49787,14 @@
49453
49787
  "trim"
49454
49788
  ]
49455
49789
  },
49790
+ "params": {
49791
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
49792
+ "type": "object",
49793
+ "additionalProperties": {
49794
+ "type": "string"
49795
+ },
49796
+ "default": {}
49797
+ },
49456
49798
  "statusCodes": {
49457
49799
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
49458
49800
  "anyOf": [
@@ -49536,6 +49878,14 @@
49536
49878
  "trim"
49537
49879
  ]
49538
49880
  },
49881
+ "params": {
49882
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
49883
+ "type": "object",
49884
+ "additionalProperties": {
49885
+ "type": "string"
49886
+ },
49887
+ "default": {}
49888
+ },
49539
49889
  "statusCodes": {
49540
49890
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
49541
49891
  "anyOf": [
@@ -49598,6 +49948,13 @@
49598
49948
  "statusCodes": [
49599
49949
  200
49600
49950
  ]
49951
+ },
49952
+ {
49953
+ "url": "/health",
49954
+ "origin": "https://my-app.com",
49955
+ "params": {
49956
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
49957
+ }
49601
49958
  }
49602
49959
  ]
49603
49960
  }
@@ -51538,6 +51895,14 @@
51538
51895
  "trim"
51539
51896
  ]
51540
51897
  },
51898
+ "params": {
51899
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
51900
+ "type": "object",
51901
+ "additionalProperties": {
51902
+ "type": "string"
51903
+ },
51904
+ "default": {}
51905
+ },
51541
51906
  "timeout": {
51542
51907
  "type": "integer",
51543
51908
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -51710,6 +52075,14 @@
51710
52075
  "trim"
51711
52076
  ]
51712
52077
  },
52078
+ "params": {
52079
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
52080
+ "type": "object",
52081
+ "additionalProperties": {
52082
+ "type": "string"
52083
+ },
52084
+ "default": {}
52085
+ },
51713
52086
  "timeout": {
51714
52087
  "type": "integer",
51715
52088
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -51859,6 +52232,13 @@
51859
52232
  "url": "/search",
51860
52233
  "origin": "https://www.google.com"
51861
52234
  },
52235
+ {
52236
+ "url": "/dashboard",
52237
+ "origin": "https://my-app.com",
52238
+ "params": {
52239
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
52240
+ }
52241
+ },
51862
52242
  {
51863
52243
  "url": "https://www.example.com",
51864
52244
  "waitUntil": {
@@ -54124,9 +54504,9 @@
54124
54504
  "anyOf": [
54125
54505
  {
54126
54506
  "title": "Screenshot (simple)",
54127
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
54507
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
54128
54508
  "type": "string",
54129
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
54509
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
54130
54510
  "transform": [
54131
54511
  "trim"
54132
54512
  ]
@@ -54137,9 +54517,9 @@
54137
54517
  "properties": {
54138
54518
  "path": {
54139
54519
  "title": "Screenshot (simple)",
54140
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
54520
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
54141
54521
  "type": "string",
54142
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
54522
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
54143
54523
  "transform": [
54144
54524
  "trim"
54145
54525
  ]
@@ -54370,9 +54750,9 @@
54370
54750
  "schemas": {
54371
54751
  "path": {
54372
54752
  "title": "Screenshot (simple)",
54373
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
54753
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
54374
54754
  "type": "string",
54375
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
54755
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
54376
54756
  "transform": [
54377
54757
  "trim"
54378
54758
  ]
@@ -54383,9 +54763,9 @@
54383
54763
  "properties": {
54384
54764
  "path": {
54385
54765
  "title": "Screenshot (simple)",
54386
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
54766
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
54387
54767
  "type": "string",
54388
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
54768
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
54389
54769
  "transform": [
54390
54770
  "trim"
54391
54771
  ]
@@ -54767,6 +55147,12 @@
54767
55147
  "image.png",
54768
55148
  "static/images/image.png",
54769
55149
  "/User/manny/projects/doc-detective/static/images/image.png",
55150
+ "https://example.com/static/images/image.png",
55151
+ {
55152
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
55153
+ "maxVariation": 0.05,
55154
+ "overwrite": "aboveVariation"
55155
+ },
54770
55156
  {
54771
55157
  "path": "image.png",
54772
55158
  "directory": "static/images",
@@ -59300,6 +59686,14 @@
59300
59686
  "trim"
59301
59687
  ]
59302
59688
  },
59689
+ "params": {
59690
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
59691
+ "type": "object",
59692
+ "additionalProperties": {
59693
+ "type": "string"
59694
+ },
59695
+ "default": {}
59696
+ },
59303
59697
  "statusCodes": {
59304
59698
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
59305
59699
  "anyOf": [
@@ -59383,6 +59777,14 @@
59383
59777
  "trim"
59384
59778
  ]
59385
59779
  },
59780
+ "params": {
59781
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
59782
+ "type": "object",
59783
+ "additionalProperties": {
59784
+ "type": "string"
59785
+ },
59786
+ "default": {}
59787
+ },
59386
59788
  "statusCodes": {
59387
59789
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
59388
59790
  "anyOf": [
@@ -59445,6 +59847,13 @@
59445
59847
  "statusCodes": [
59446
59848
  200
59447
59849
  ]
59850
+ },
59851
+ {
59852
+ "url": "/health",
59853
+ "origin": "https://my-app.com",
59854
+ "params": {
59855
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
59856
+ }
59448
59857
  }
59449
59858
  ]
59450
59859
  }
@@ -61385,6 +61794,14 @@
61385
61794
  "trim"
61386
61795
  ]
61387
61796
  },
61797
+ "params": {
61798
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
61799
+ "type": "object",
61800
+ "additionalProperties": {
61801
+ "type": "string"
61802
+ },
61803
+ "default": {}
61804
+ },
61388
61805
  "timeout": {
61389
61806
  "type": "integer",
61390
61807
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -61557,6 +61974,14 @@
61557
61974
  "trim"
61558
61975
  ]
61559
61976
  },
61977
+ "params": {
61978
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
61979
+ "type": "object",
61980
+ "additionalProperties": {
61981
+ "type": "string"
61982
+ },
61983
+ "default": {}
61984
+ },
61560
61985
  "timeout": {
61561
61986
  "type": "integer",
61562
61987
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -61706,6 +62131,13 @@
61706
62131
  "url": "/search",
61707
62132
  "origin": "https://www.google.com"
61708
62133
  },
62134
+ {
62135
+ "url": "/dashboard",
62136
+ "origin": "https://my-app.com",
62137
+ "params": {
62138
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
62139
+ }
62140
+ },
61709
62141
  {
61710
62142
  "url": "https://www.example.com",
61711
62143
  "waitUntil": {
@@ -63971,9 +64403,9 @@
63971
64403
  "anyOf": [
63972
64404
  {
63973
64405
  "title": "Screenshot (simple)",
63974
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
64406
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
63975
64407
  "type": "string",
63976
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
64408
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
63977
64409
  "transform": [
63978
64410
  "trim"
63979
64411
  ]
@@ -63984,9 +64416,9 @@
63984
64416
  "properties": {
63985
64417
  "path": {
63986
64418
  "title": "Screenshot (simple)",
63987
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
64419
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
63988
64420
  "type": "string",
63989
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
64421
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
63990
64422
  "transform": [
63991
64423
  "trim"
63992
64424
  ]
@@ -64217,9 +64649,9 @@
64217
64649
  "schemas": {
64218
64650
  "path": {
64219
64651
  "title": "Screenshot (simple)",
64220
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
64652
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
64221
64653
  "type": "string",
64222
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
64654
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
64223
64655
  "transform": [
64224
64656
  "trim"
64225
64657
  ]
@@ -64230,9 +64662,9 @@
64230
64662
  "properties": {
64231
64663
  "path": {
64232
64664
  "title": "Screenshot (simple)",
64233
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
64665
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
64234
64666
  "type": "string",
64235
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
64667
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
64236
64668
  "transform": [
64237
64669
  "trim"
64238
64670
  ]
@@ -64614,6 +65046,12 @@
64614
65046
  "image.png",
64615
65047
  "static/images/image.png",
64616
65048
  "/User/manny/projects/doc-detective/static/images/image.png",
65049
+ "https://example.com/static/images/image.png",
65050
+ {
65051
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
65052
+ "maxVariation": 0.05,
65053
+ "overwrite": "aboveVariation"
65054
+ },
64617
65055
  {
64618
65056
  "path": "image.png",
64619
65057
  "directory": "static/images",
@@ -67437,6 +67875,14 @@
67437
67875
  "trim"
67438
67876
  ]
67439
67877
  },
67878
+ "params": {
67879
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
67880
+ "type": "object",
67881
+ "additionalProperties": {
67882
+ "type": "string"
67883
+ },
67884
+ "default": {}
67885
+ },
67440
67886
  "statusCodes": {
67441
67887
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
67442
67888
  "anyOf": [
@@ -67520,6 +67966,14 @@
67520
67966
  "trim"
67521
67967
  ]
67522
67968
  },
67969
+ "params": {
67970
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
67971
+ "type": "object",
67972
+ "additionalProperties": {
67973
+ "type": "string"
67974
+ },
67975
+ "default": {}
67976
+ },
67523
67977
  "statusCodes": {
67524
67978
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
67525
67979
  "anyOf": [
@@ -67582,6 +68036,13 @@
67582
68036
  "statusCodes": [
67583
68037
  200
67584
68038
  ]
68039
+ },
68040
+ {
68041
+ "url": "/health",
68042
+ "origin": "https://my-app.com",
68043
+ "params": {
68044
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
68045
+ }
67585
68046
  }
67586
68047
  ]
67587
68048
  }
@@ -69522,6 +69983,14 @@
69522
69983
  "trim"
69523
69984
  ]
69524
69985
  },
69986
+ "params": {
69987
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
69988
+ "type": "object",
69989
+ "additionalProperties": {
69990
+ "type": "string"
69991
+ },
69992
+ "default": {}
69993
+ },
69525
69994
  "timeout": {
69526
69995
  "type": "integer",
69527
69996
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -69694,6 +70163,14 @@
69694
70163
  "trim"
69695
70164
  ]
69696
70165
  },
70166
+ "params": {
70167
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
70168
+ "type": "object",
70169
+ "additionalProperties": {
70170
+ "type": "string"
70171
+ },
70172
+ "default": {}
70173
+ },
69697
70174
  "timeout": {
69698
70175
  "type": "integer",
69699
70176
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -69843,6 +70320,13 @@
69843
70320
  "url": "/search",
69844
70321
  "origin": "https://www.google.com"
69845
70322
  },
70323
+ {
70324
+ "url": "/dashboard",
70325
+ "origin": "https://my-app.com",
70326
+ "params": {
70327
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
70328
+ }
70329
+ },
69846
70330
  {
69847
70331
  "url": "https://www.example.com",
69848
70332
  "waitUntil": {
@@ -72108,9 +72592,9 @@
72108
72592
  "anyOf": [
72109
72593
  {
72110
72594
  "title": "Screenshot (simple)",
72111
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
72595
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
72112
72596
  "type": "string",
72113
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
72597
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
72114
72598
  "transform": [
72115
72599
  "trim"
72116
72600
  ]
@@ -72121,9 +72605,9 @@
72121
72605
  "properties": {
72122
72606
  "path": {
72123
72607
  "title": "Screenshot (simple)",
72124
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
72608
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
72125
72609
  "type": "string",
72126
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
72610
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
72127
72611
  "transform": [
72128
72612
  "trim"
72129
72613
  ]
@@ -72354,9 +72838,9 @@
72354
72838
  "schemas": {
72355
72839
  "path": {
72356
72840
  "title": "Screenshot (simple)",
72357
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
72841
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
72358
72842
  "type": "string",
72359
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
72843
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
72360
72844
  "transform": [
72361
72845
  "trim"
72362
72846
  ]
@@ -72367,9 +72851,9 @@
72367
72851
  "properties": {
72368
72852
  "path": {
72369
72853
  "title": "Screenshot (simple)",
72370
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
72854
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
72371
72855
  "type": "string",
72372
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
72856
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
72373
72857
  "transform": [
72374
72858
  "trim"
72375
72859
  ]
@@ -72751,6 +73235,12 @@
72751
73235
  "image.png",
72752
73236
  "static/images/image.png",
72753
73237
  "/User/manny/projects/doc-detective/static/images/image.png",
73238
+ "https://example.com/static/images/image.png",
73239
+ {
73240
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
73241
+ "maxVariation": 0.05,
73242
+ "overwrite": "aboveVariation"
73243
+ },
72754
73244
  {
72755
73245
  "path": "image.png",
72756
73246
  "directory": "static/images",
@@ -76435,9 +76925,9 @@
76435
76925
  "anyOf": [
76436
76926
  {
76437
76927
  "title": "Screenshot (simple)",
76438
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
76928
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
76439
76929
  "type": "string",
76440
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
76930
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
76441
76931
  "transform": [
76442
76932
  "trim"
76443
76933
  ]
@@ -76448,9 +76938,9 @@
76448
76938
  "properties": {
76449
76939
  "path": {
76450
76940
  "title": "Screenshot (simple)",
76451
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
76941
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
76452
76942
  "type": "string",
76453
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
76943
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
76454
76944
  "transform": [
76455
76945
  "trim"
76456
76946
  ]
@@ -76681,9 +77171,9 @@
76681
77171
  "schemas": {
76682
77172
  "path": {
76683
77173
  "title": "Screenshot (simple)",
76684
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
77174
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
76685
77175
  "type": "string",
76686
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
77176
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
76687
77177
  "transform": [
76688
77178
  "trim"
76689
77179
  ]
@@ -76694,9 +77184,9 @@
76694
77184
  "properties": {
76695
77185
  "path": {
76696
77186
  "title": "Screenshot (simple)",
76697
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
77187
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
76698
77188
  "type": "string",
76699
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
77189
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
76700
77190
  "transform": [
76701
77191
  "trim"
76702
77192
  ]
@@ -77078,6 +77568,12 @@
77078
77568
  "image.png",
77079
77569
  "static/images/image.png",
77080
77570
  "/User/manny/projects/doc-detective/static/images/image.png",
77571
+ "https://example.com/static/images/image.png",
77572
+ {
77573
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
77574
+ "maxVariation": 0.05,
77575
+ "overwrite": "aboveVariation"
77576
+ },
77081
77577
  {
77082
77578
  "path": "image.png",
77083
77579
  "directory": "static/images",
@@ -78666,6 +79162,14 @@
78666
79162
  "trim"
78667
79163
  ]
78668
79164
  },
79165
+ "params": {
79166
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
79167
+ "type": "object",
79168
+ "additionalProperties": {
79169
+ "type": "string"
79170
+ },
79171
+ "default": {}
79172
+ },
78669
79173
  "statusCodes": {
78670
79174
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
78671
79175
  "anyOf": [
@@ -78749,6 +79253,14 @@
78749
79253
  "trim"
78750
79254
  ]
78751
79255
  },
79256
+ "params": {
79257
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
79258
+ "type": "object",
79259
+ "additionalProperties": {
79260
+ "type": "string"
79261
+ },
79262
+ "default": {}
79263
+ },
78752
79264
  "statusCodes": {
78753
79265
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
78754
79266
  "anyOf": [
@@ -78811,6 +79323,13 @@
78811
79323
  "statusCodes": [
78812
79324
  200
78813
79325
  ]
79326
+ },
79327
+ {
79328
+ "url": "/health",
79329
+ "origin": "https://my-app.com",
79330
+ "params": {
79331
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
79332
+ }
78814
79333
  }
78815
79334
  ]
78816
79335
  }
@@ -80751,6 +81270,14 @@
80751
81270
  "trim"
80752
81271
  ]
80753
81272
  },
81273
+ "params": {
81274
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
81275
+ "type": "object",
81276
+ "additionalProperties": {
81277
+ "type": "string"
81278
+ },
81279
+ "default": {}
81280
+ },
80754
81281
  "timeout": {
80755
81282
  "type": "integer",
80756
81283
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -80923,6 +81450,14 @@
80923
81450
  "trim"
80924
81451
  ]
80925
81452
  },
81453
+ "params": {
81454
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
81455
+ "type": "object",
81456
+ "additionalProperties": {
81457
+ "type": "string"
81458
+ },
81459
+ "default": {}
81460
+ },
80926
81461
  "timeout": {
80927
81462
  "type": "integer",
80928
81463
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -81072,6 +81607,13 @@
81072
81607
  "url": "/search",
81073
81608
  "origin": "https://www.google.com"
81074
81609
  },
81610
+ {
81611
+ "url": "/dashboard",
81612
+ "origin": "https://my-app.com",
81613
+ "params": {
81614
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
81615
+ }
81616
+ },
81075
81617
  {
81076
81618
  "url": "https://www.example.com",
81077
81619
  "waitUntil": {
@@ -83337,9 +83879,9 @@
83337
83879
  "anyOf": [
83338
83880
  {
83339
83881
  "title": "Screenshot (simple)",
83340
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
83882
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
83341
83883
  "type": "string",
83342
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
83884
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
83343
83885
  "transform": [
83344
83886
  "trim"
83345
83887
  ]
@@ -83350,9 +83892,9 @@
83350
83892
  "properties": {
83351
83893
  "path": {
83352
83894
  "title": "Screenshot (simple)",
83353
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
83895
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
83354
83896
  "type": "string",
83355
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
83897
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
83356
83898
  "transform": [
83357
83899
  "trim"
83358
83900
  ]
@@ -83583,9 +84125,9 @@
83583
84125
  "schemas": {
83584
84126
  "path": {
83585
84127
  "title": "Screenshot (simple)",
83586
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
84128
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
83587
84129
  "type": "string",
83588
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
84130
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
83589
84131
  "transform": [
83590
84132
  "trim"
83591
84133
  ]
@@ -83596,9 +84138,9 @@
83596
84138
  "properties": {
83597
84139
  "path": {
83598
84140
  "title": "Screenshot (simple)",
83599
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
84141
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
83600
84142
  "type": "string",
83601
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
84143
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
83602
84144
  "transform": [
83603
84145
  "trim"
83604
84146
  ]
@@ -83980,6 +84522,12 @@
83980
84522
  "image.png",
83981
84523
  "static/images/image.png",
83982
84524
  "/User/manny/projects/doc-detective/static/images/image.png",
84525
+ "https://example.com/static/images/image.png",
84526
+ {
84527
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
84528
+ "maxVariation": 0.05,
84529
+ "overwrite": "aboveVariation"
84530
+ },
83983
84531
  {
83984
84532
  "path": "image.png",
83985
84533
  "directory": "static/images",
@@ -86803,6 +87351,14 @@
86803
87351
  "trim"
86804
87352
  ]
86805
87353
  },
87354
+ "params": {
87355
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
87356
+ "type": "object",
87357
+ "additionalProperties": {
87358
+ "type": "string"
87359
+ },
87360
+ "default": {}
87361
+ },
86806
87362
  "statusCodes": {
86807
87363
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
86808
87364
  "anyOf": [
@@ -86886,6 +87442,14 @@
86886
87442
  "trim"
86887
87443
  ]
86888
87444
  },
87445
+ "params": {
87446
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
87447
+ "type": "object",
87448
+ "additionalProperties": {
87449
+ "type": "string"
87450
+ },
87451
+ "default": {}
87452
+ },
86889
87453
  "statusCodes": {
86890
87454
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
86891
87455
  "anyOf": [
@@ -86948,6 +87512,13 @@
86948
87512
  "statusCodes": [
86949
87513
  200
86950
87514
  ]
87515
+ },
87516
+ {
87517
+ "url": "/health",
87518
+ "origin": "https://my-app.com",
87519
+ "params": {
87520
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
87521
+ }
86951
87522
  }
86952
87523
  ]
86953
87524
  }
@@ -88888,6 +89459,14 @@
88888
89459
  "trim"
88889
89460
  ]
88890
89461
  },
89462
+ "params": {
89463
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
89464
+ "type": "object",
89465
+ "additionalProperties": {
89466
+ "type": "string"
89467
+ },
89468
+ "default": {}
89469
+ },
88891
89470
  "timeout": {
88892
89471
  "type": "integer",
88893
89472
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -89060,6 +89639,14 @@
89060
89639
  "trim"
89061
89640
  ]
89062
89641
  },
89642
+ "params": {
89643
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
89644
+ "type": "object",
89645
+ "additionalProperties": {
89646
+ "type": "string"
89647
+ },
89648
+ "default": {}
89649
+ },
89063
89650
  "timeout": {
89064
89651
  "type": "integer",
89065
89652
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -89209,6 +89796,13 @@
89209
89796
  "url": "/search",
89210
89797
  "origin": "https://www.google.com"
89211
89798
  },
89799
+ {
89800
+ "url": "/dashboard",
89801
+ "origin": "https://my-app.com",
89802
+ "params": {
89803
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
89804
+ }
89805
+ },
89212
89806
  {
89213
89807
  "url": "https://www.example.com",
89214
89808
  "waitUntil": {
@@ -91474,9 +92068,9 @@
91474
92068
  "anyOf": [
91475
92069
  {
91476
92070
  "title": "Screenshot (simple)",
91477
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
92071
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
91478
92072
  "type": "string",
91479
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
92073
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
91480
92074
  "transform": [
91481
92075
  "trim"
91482
92076
  ]
@@ -91487,9 +92081,9 @@
91487
92081
  "properties": {
91488
92082
  "path": {
91489
92083
  "title": "Screenshot (simple)",
91490
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
92084
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
91491
92085
  "type": "string",
91492
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
92086
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
91493
92087
  "transform": [
91494
92088
  "trim"
91495
92089
  ]
@@ -91720,9 +92314,9 @@
91720
92314
  "schemas": {
91721
92315
  "path": {
91722
92316
  "title": "Screenshot (simple)",
91723
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
92317
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
91724
92318
  "type": "string",
91725
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
92319
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
91726
92320
  "transform": [
91727
92321
  "trim"
91728
92322
  ]
@@ -91733,9 +92327,9 @@
91733
92327
  "properties": {
91734
92328
  "path": {
91735
92329
  "title": "Screenshot (simple)",
91736
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
92330
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
91737
92331
  "type": "string",
91738
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
92332
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
91739
92333
  "transform": [
91740
92334
  "trim"
91741
92335
  ]
@@ -92117,6 +92711,12 @@
92117
92711
  "image.png",
92118
92712
  "static/images/image.png",
92119
92713
  "/User/manny/projects/doc-detective/static/images/image.png",
92714
+ "https://example.com/static/images/image.png",
92715
+ {
92716
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
92717
+ "maxVariation": 0.05,
92718
+ "overwrite": "aboveVariation"
92719
+ },
92120
92720
  {
92121
92721
  "path": "image.png",
92122
92722
  "directory": "static/images",
@@ -95220,6 +95820,14 @@
95220
95820
  "trim"
95221
95821
  ]
95222
95822
  },
95823
+ "params": {
95824
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
95825
+ "type": "object",
95826
+ "additionalProperties": {
95827
+ "type": "string"
95828
+ },
95829
+ "default": {}
95830
+ },
95223
95831
  "statusCodes": {
95224
95832
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
95225
95833
  "anyOf": [
@@ -95303,6 +95911,14 @@
95303
95911
  "trim"
95304
95912
  ]
95305
95913
  },
95914
+ "params": {
95915
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
95916
+ "type": "object",
95917
+ "additionalProperties": {
95918
+ "type": "string"
95919
+ },
95920
+ "default": {}
95921
+ },
95306
95922
  "statusCodes": {
95307
95923
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
95308
95924
  "anyOf": [
@@ -95365,6 +95981,13 @@
95365
95981
  "statusCodes": [
95366
95982
  200
95367
95983
  ]
95984
+ },
95985
+ {
95986
+ "url": "/health",
95987
+ "origin": "https://my-app.com",
95988
+ "params": {
95989
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
95990
+ }
95368
95991
  }
95369
95992
  ]
95370
95993
  }
@@ -97305,6 +97928,14 @@
97305
97928
  "trim"
97306
97929
  ]
97307
97930
  },
97931
+ "params": {
97932
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
97933
+ "type": "object",
97934
+ "additionalProperties": {
97935
+ "type": "string"
97936
+ },
97937
+ "default": {}
97938
+ },
97308
97939
  "timeout": {
97309
97940
  "type": "integer",
97310
97941
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -97477,6 +98108,14 @@
97477
98108
  "trim"
97478
98109
  ]
97479
98110
  },
98111
+ "params": {
98112
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
98113
+ "type": "object",
98114
+ "additionalProperties": {
98115
+ "type": "string"
98116
+ },
98117
+ "default": {}
98118
+ },
97480
98119
  "timeout": {
97481
98120
  "type": "integer",
97482
98121
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -97626,6 +98265,13 @@
97626
98265
  "url": "/search",
97627
98266
  "origin": "https://www.google.com"
97628
98267
  },
98268
+ {
98269
+ "url": "/dashboard",
98270
+ "origin": "https://my-app.com",
98271
+ "params": {
98272
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
98273
+ }
98274
+ },
97629
98275
  {
97630
98276
  "url": "https://www.example.com",
97631
98277
  "waitUntil": {
@@ -99891,9 +100537,9 @@
99891
100537
  "anyOf": [
99892
100538
  {
99893
100539
  "title": "Screenshot (simple)",
99894
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
100540
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
99895
100541
  "type": "string",
99896
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
100542
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
99897
100543
  "transform": [
99898
100544
  "trim"
99899
100545
  ]
@@ -99904,9 +100550,9 @@
99904
100550
  "properties": {
99905
100551
  "path": {
99906
100552
  "title": "Screenshot (simple)",
99907
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
100553
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
99908
100554
  "type": "string",
99909
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
100555
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
99910
100556
  "transform": [
99911
100557
  "trim"
99912
100558
  ]
@@ -100137,9 +100783,9 @@
100137
100783
  "schemas": {
100138
100784
  "path": {
100139
100785
  "title": "Screenshot (simple)",
100140
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
100786
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
100141
100787
  "type": "string",
100142
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
100788
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
100143
100789
  "transform": [
100144
100790
  "trim"
100145
100791
  ]
@@ -100150,9 +100796,9 @@
100150
100796
  "properties": {
100151
100797
  "path": {
100152
100798
  "title": "Screenshot (simple)",
100153
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
100799
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
100154
100800
  "type": "string",
100155
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
100801
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
100156
100802
  "transform": [
100157
100803
  "trim"
100158
100804
  ]
@@ -100534,6 +101180,12 @@
100534
101180
  "image.png",
100535
101181
  "static/images/image.png",
100536
101182
  "/User/manny/projects/doc-detective/static/images/image.png",
101183
+ "https://example.com/static/images/image.png",
101184
+ {
101185
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
101186
+ "maxVariation": 0.05,
101187
+ "overwrite": "aboveVariation"
101188
+ },
100537
101189
  {
100538
101190
  "path": "image.png",
100539
101191
  "directory": "static/images",
@@ -103710,6 +104362,14 @@
103710
104362
  "trim"
103711
104363
  ]
103712
104364
  },
104365
+ "params": {
104366
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
104367
+ "type": "object",
104368
+ "additionalProperties": {
104369
+ "type": "string"
104370
+ },
104371
+ "default": {}
104372
+ },
103713
104373
  "statusCodes": {
103714
104374
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
103715
104375
  "anyOf": [
@@ -103793,6 +104453,14 @@
103793
104453
  "trim"
103794
104454
  ]
103795
104455
  },
104456
+ "params": {
104457
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
104458
+ "type": "object",
104459
+ "additionalProperties": {
104460
+ "type": "string"
104461
+ },
104462
+ "default": {}
104463
+ },
103796
104464
  "statusCodes": {
103797
104465
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
103798
104466
  "anyOf": [
@@ -103855,6 +104523,13 @@
103855
104523
  "statusCodes": [
103856
104524
  200
103857
104525
  ]
104526
+ },
104527
+ {
104528
+ "url": "/health",
104529
+ "origin": "https://my-app.com",
104530
+ "params": {
104531
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
104532
+ }
103858
104533
  }
103859
104534
  ]
103860
104535
  }
@@ -105795,6 +106470,14 @@
105795
106470
  "trim"
105796
106471
  ]
105797
106472
  },
106473
+ "params": {
106474
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
106475
+ "type": "object",
106476
+ "additionalProperties": {
106477
+ "type": "string"
106478
+ },
106479
+ "default": {}
106480
+ },
105798
106481
  "timeout": {
105799
106482
  "type": "integer",
105800
106483
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -105967,6 +106650,14 @@
105967
106650
  "trim"
105968
106651
  ]
105969
106652
  },
106653
+ "params": {
106654
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
106655
+ "type": "object",
106656
+ "additionalProperties": {
106657
+ "type": "string"
106658
+ },
106659
+ "default": {}
106660
+ },
105970
106661
  "timeout": {
105971
106662
  "type": "integer",
105972
106663
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -106116,6 +106807,13 @@
106116
106807
  "url": "/search",
106117
106808
  "origin": "https://www.google.com"
106118
106809
  },
106810
+ {
106811
+ "url": "/dashboard",
106812
+ "origin": "https://my-app.com",
106813
+ "params": {
106814
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
106815
+ }
106816
+ },
106119
106817
  {
106120
106818
  "url": "https://www.example.com",
106121
106819
  "waitUntil": {
@@ -108381,9 +109079,9 @@
108381
109079
  "anyOf": [
108382
109080
  {
108383
109081
  "title": "Screenshot (simple)",
108384
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
109082
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
108385
109083
  "type": "string",
108386
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
109084
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
108387
109085
  "transform": [
108388
109086
  "trim"
108389
109087
  ]
@@ -108394,9 +109092,9 @@
108394
109092
  "properties": {
108395
109093
  "path": {
108396
109094
  "title": "Screenshot (simple)",
108397
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
109095
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
108398
109096
  "type": "string",
108399
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
109097
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
108400
109098
  "transform": [
108401
109099
  "trim"
108402
109100
  ]
@@ -108627,9 +109325,9 @@
108627
109325
  "schemas": {
108628
109326
  "path": {
108629
109327
  "title": "Screenshot (simple)",
108630
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
109328
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
108631
109329
  "type": "string",
108632
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
109330
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
108633
109331
  "transform": [
108634
109332
  "trim"
108635
109333
  ]
@@ -108640,9 +109338,9 @@
108640
109338
  "properties": {
108641
109339
  "path": {
108642
109340
  "title": "Screenshot (simple)",
108643
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
109341
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
108644
109342
  "type": "string",
108645
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
109343
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
108646
109344
  "transform": [
108647
109345
  "trim"
108648
109346
  ]
@@ -109024,6 +109722,12 @@
109024
109722
  "image.png",
109025
109723
  "static/images/image.png",
109026
109724
  "/User/manny/projects/doc-detective/static/images/image.png",
109725
+ "https://example.com/static/images/image.png",
109726
+ {
109727
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
109728
+ "maxVariation": 0.05,
109729
+ "overwrite": "aboveVariation"
109730
+ },
109027
109731
  {
109028
109732
  "path": "image.png",
109029
109733
  "directory": "static/images",
@@ -111847,6 +112551,14 @@
111847
112551
  "trim"
111848
112552
  ]
111849
112553
  },
112554
+ "params": {
112555
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
112556
+ "type": "object",
112557
+ "additionalProperties": {
112558
+ "type": "string"
112559
+ },
112560
+ "default": {}
112561
+ },
111850
112562
  "statusCodes": {
111851
112563
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
111852
112564
  "anyOf": [
@@ -111930,6 +112642,14 @@
111930
112642
  "trim"
111931
112643
  ]
111932
112644
  },
112645
+ "params": {
112646
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
112647
+ "type": "object",
112648
+ "additionalProperties": {
112649
+ "type": "string"
112650
+ },
112651
+ "default": {}
112652
+ },
111933
112653
  "statusCodes": {
111934
112654
  "description": "Accepted status codes. If the specified URL returns a code other than what is specified here, the action fails.",
111935
112655
  "anyOf": [
@@ -111992,6 +112712,13 @@
111992
112712
  "statusCodes": [
111993
112713
  200
111994
112714
  ]
112715
+ },
112716
+ {
112717
+ "url": "/health",
112718
+ "origin": "https://my-app.com",
112719
+ "params": {
112720
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
112721
+ }
111995
112722
  }
111996
112723
  ]
111997
112724
  }
@@ -113932,6 +114659,14 @@
113932
114659
  "trim"
113933
114660
  ]
113934
114661
  },
114662
+ "params": {
114663
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
114664
+ "type": "object",
114665
+ "additionalProperties": {
114666
+ "type": "string"
114667
+ },
114668
+ "default": {}
114669
+ },
113935
114670
  "timeout": {
113936
114671
  "type": "integer",
113937
114672
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -114104,6 +114839,14 @@
114104
114839
  "trim"
114105
114840
  ]
114106
114841
  },
114842
+ "params": {
114843
+ "description": "Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports.",
114844
+ "type": "object",
114845
+ "additionalProperties": {
114846
+ "type": "string"
114847
+ },
114848
+ "default": {}
114849
+ },
114107
114850
  "timeout": {
114108
114851
  "type": "integer",
114109
114852
  "description": "Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails.",
@@ -114253,6 +114996,13 @@
114253
114996
  "url": "/search",
114254
114997
  "origin": "https://www.google.com"
114255
114998
  },
114999
+ {
115000
+ "url": "/dashboard",
115001
+ "origin": "https://my-app.com",
115002
+ "params": {
115003
+ "__clerk_testing_token": "$CLERK_TESTING_TOKEN"
115004
+ }
115005
+ },
114256
115006
  {
114257
115007
  "url": "https://www.example.com",
114258
115008
  "waitUntil": {
@@ -116518,9 +117268,9 @@
116518
117268
  "anyOf": [
116519
117269
  {
116520
117270
  "title": "Screenshot (simple)",
116521
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
117271
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
116522
117272
  "type": "string",
116523
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
117273
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
116524
117274
  "transform": [
116525
117275
  "trim"
116526
117276
  ]
@@ -116531,9 +117281,9 @@
116531
117281
  "properties": {
116532
117282
  "path": {
116533
117283
  "title": "Screenshot (simple)",
116534
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
117284
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
116535
117285
  "type": "string",
116536
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
117286
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
116537
117287
  "transform": [
116538
117288
  "trim"
116539
117289
  ]
@@ -116764,9 +117514,9 @@
116764
117514
  "schemas": {
116765
117515
  "path": {
116766
117516
  "title": "Screenshot (simple)",
116767
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
117517
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
116768
117518
  "type": "string",
116769
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
117519
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
116770
117520
  "transform": [
116771
117521
  "trim"
116772
117522
  ]
@@ -116777,9 +117527,9 @@
116777
117527
  "properties": {
116778
117528
  "path": {
116779
117529
  "title": "Screenshot (simple)",
116780
- "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step.",
117530
+ "description": "File path of the PNG file. Accepts absolute paths. If not specified, the file name is the ID of the step. If an `http(s)` URL is supplied, the remote image is downloaded and used as a read-only reference for comparison; the new capture is written to a local run-specific folder instead of being uploaded back to the URL.",
116781
117531
  "type": "string",
116782
- "pattern": "([A-Za-z0-9_-]*\\.(png|PNG)$|\\$[A-Za-z0-9_]+)",
117532
+ "pattern": "^(?:https?:\\/\\/.+\\.(?:png|PNG)(?:\\?.*)?|[A-Za-z]:[\\/\\\\].*\\.(?:png|PNG)|[\\/\\\\]?[A-Za-z0-9_.\\/\\\\-]*\\.(?:png|PNG)|\\$[A-Za-z0-9_]+)$",
116783
117533
  "transform": [
116784
117534
  "trim"
116785
117535
  ]
@@ -117161,6 +117911,12 @@
117161
117911
  "image.png",
117162
117912
  "static/images/image.png",
117163
117913
  "/User/manny/projects/doc-detective/static/images/image.png",
117914
+ "https://example.com/static/images/image.png",
117915
+ {
117916
+ "path": "https://promptless-customer-doc-assets.s3.amazonaws.com/docs-images/request-changes-button-0c851bb3.png",
117917
+ "maxVariation": 0.05,
117918
+ "overwrite": "aboveVariation"
117919
+ },
117164
117920
  {
117165
117921
  "path": "image.png",
117166
117922
  "directory": "static/images",