@qawolf/api-contracts 0.70.0 → 0.73.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/dist/v1/deployment/verdict.d.ts +161 -0
  2. package/dist/v1/deployment/verdict.d.ts.map +1 -0
  3. package/dist/v1/deployment/verdict.js +71 -0
  4. package/dist/v1/deployment/verdict.js.map +1 -0
  5. package/dist/v1/deployment/verdictParts.d.ts +72 -0
  6. package/dist/v1/deployment/verdictParts.d.ts.map +1 -0
  7. package/dist/v1/deployment/verdictParts.js +56 -0
  8. package/dist/v1/deployment/verdictParts.js.map +1 -0
  9. package/dist/v1/environment/create.d.ts +1 -1
  10. package/dist/v1/environment/find.d.ts +1 -1
  11. package/dist/v1/environment/index.d.ts +1 -1
  12. package/dist/v1/environment/resource.d.ts +1 -1
  13. package/dist/v1/environment/update.d.ts +1 -1
  14. package/dist/v1/index.d.ts +178 -134
  15. package/dist/v1/index.d.ts.map +1 -1
  16. package/dist/v1/index.js +0 -2
  17. package/dist/v1/index.js.map +1 -1
  18. package/dist/v1/issue/addFlows.d.ts +1 -1
  19. package/dist/v1/issue/create.d.ts +25 -1
  20. package/dist/v1/issue/create.d.ts.map +1 -1
  21. package/dist/v1/issue/create.js +16 -3
  22. package/dist/v1/issue/create.js.map +1 -1
  23. package/dist/v1/issue/index.d.ts +5 -5
  24. package/dist/v1/issue/removeFlows.d.ts +1 -1
  25. package/dist/v1/issue/update.d.ts +2 -2
  26. package/dist/v1/legacyTrigger/find.d.ts +4 -0
  27. package/dist/v1/legacyTrigger/find.d.ts.map +1 -1
  28. package/dist/v1/legacyTrigger/index.d.ts +4 -0
  29. package/dist/v1/legacyTrigger/index.d.ts.map +1 -1
  30. package/dist/v1/legacyTrigger/resource.d.ts +4 -0
  31. package/dist/v1/legacyTrigger/resource.d.ts.map +1 -1
  32. package/dist/v1/legacyTrigger/resource.js +6 -0
  33. package/dist/v1/legacyTrigger/resource.js.map +1 -1
  34. package/dist/v1/run/diagnose.d.ts +1 -1
  35. package/dist/v1/run/find.d.ts +3 -2
  36. package/dist/v1/run/find.d.ts.map +1 -1
  37. package/dist/v1/run/get.d.ts +7 -6
  38. package/dist/v1/run/get.d.ts.map +1 -1
  39. package/dist/v1/run/summary.d.ts +3 -2
  40. package/dist/v1/run/summary.d.ts.map +1 -1
  41. package/dist/v1/run/summary.js +5 -1
  42. package/dist/v1/run/summary.js.map +1 -1
  43. package/dist/v1/runner/browserAction.d.ts +5 -0
  44. package/dist/v1/runner/browserAction.d.ts.map +1 -1
  45. package/dist/v1/runner/browserAction.js +5 -5
  46. package/dist/v1/runner/browserAction.js.map +1 -1
  47. package/dist/v1/runner/catalog.d.ts +38 -2
  48. package/dist/v1/runner/catalog.d.ts.map +1 -1
  49. package/dist/v1/runner/identity.d.ts +2 -0
  50. package/dist/v1/runner/identity.d.ts.map +1 -1
  51. package/dist/v1/runner/identity.js +1 -0
  52. package/dist/v1/runner/identity.js.map +1 -1
  53. package/dist/v1/runner/index.d.ts +2 -0
  54. package/dist/v1/runner/index.d.ts.map +1 -1
  55. package/dist/v1/runner/inspectMobile.d.ts +6 -0
  56. package/dist/v1/runner/inspectMobile.d.ts.map +1 -1
  57. package/dist/v1/runner/inspectMobile.js +5 -1
  58. package/dist/v1/runner/inspectMobile.js.map +1 -1
  59. package/dist/v1/runner/list.d.ts +1 -0
  60. package/dist/v1/runner/list.d.ts.map +1 -1
  61. package/dist/v1/runner/performAction.d.ts +32 -1
  62. package/dist/v1/runner/performAction.d.ts.map +1 -1
  63. package/dist/v1/runner/performAction.js +6 -4
  64. package/dist/v1/runner/performAction.js.map +1 -1
  65. package/dist/v1/runner/runFlow.d.ts +2 -0
  66. package/dist/v1/runner/runFlow.d.ts.map +1 -1
  67. package/dist/v1/runner/runnerAction.d.ts +74 -0
  68. package/dist/v1/runner/runnerAction.d.ts.map +1 -0
  69. package/dist/v1/runner/runnerAction.js +94 -0
  70. package/dist/v1/runner/runnerAction.js.map +1 -0
  71. package/dist/v1/runner/screen.d.ts +1 -1
  72. package/dist/v1/runner/screen.d.ts.map +1 -1
  73. package/dist/v1/runner/screen.js +1 -1
  74. package/dist/v1/runner/screen.js.map +1 -1
  75. package/dist/v1/runner/takeScreenshot.d.ts +1 -1
  76. package/dist/v1/runnerReexports.d.ts +1 -0
  77. package/dist/v1/runnerReexports.d.ts.map +1 -1
  78. package/dist/v1/runnerReexports.js +1 -0
  79. package/dist/v1/runnerReexports.js.map +1 -1
  80. package/dist/v1/sharedSchemas.d.ts +2 -0
  81. package/dist/v1/sharedSchemas.d.ts.map +1 -1
  82. package/dist/v1/sharedSchemas.js +2 -0
  83. package/dist/v1/sharedSchemas.js.map +1 -1
  84. package/dist/v1/trigger/configuration.js +1 -1
  85. package/dist/v1/trigger/configuration.js.map +1 -1
  86. package/dist/v1/trigger/configurationRules.d.ts.map +1 -1
  87. package/dist/v1/trigger/configurationRules.js +4 -18
  88. package/dist/v1/trigger/configurationRules.js.map +1 -1
  89. package/package.json +1 -1
  90. package/dist/v1/run/triage.d.ts +0 -51
  91. package/dist/v1/run/triage.d.ts.map +0 -1
  92. package/dist/v1/run/triage.js +0 -55
  93. package/dist/v1/run/triage.js.map +0 -1
@@ -585,10 +585,10 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
585
585
  name: z.ZodString;
586
586
  runConcurrencyLimit: z.ZodString;
587
587
  status: z.ZodEnum<{
588
+ running: "running";
588
589
  blocked: "blocked";
589
590
  "needs-investigation": "needs-investigation";
590
591
  ready: "ready";
591
- running: "running";
592
592
  }>;
593
593
  terminatedAt: z.ZodOptional<z.ZodISODateTime>;
594
594
  variablesUrl: z.ZodOptional<z.ZodURL>;
@@ -653,10 +653,10 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
653
653
  name: z.ZodString;
654
654
  runConcurrencyLimit: z.ZodString;
655
655
  status: z.ZodEnum<{
656
+ running: "running";
656
657
  blocked: "blocked";
657
658
  "needs-investigation": "needs-investigation";
658
659
  ready: "ready";
659
- running: "running";
660
660
  }>;
661
661
  terminatedAt: z.ZodOptional<z.ZodISODateTime>;
662
662
  variablesUrl: z.ZodOptional<z.ZodURL>;
@@ -697,10 +697,10 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
697
697
  name: z.ZodString;
698
698
  runConcurrencyLimit: z.ZodString;
699
699
  status: z.ZodEnum<{
700
+ running: "running";
700
701
  blocked: "blocked";
701
702
  "needs-investigation": "needs-investigation";
702
703
  ready: "ready";
703
- running: "running";
704
704
  }>;
705
705
  terminatedAt: z.ZodOptional<z.ZodISODateTime>;
706
706
  variablesUrl: z.ZodOptional<z.ZodURL>;
@@ -799,10 +799,10 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
799
799
  name: z.ZodString;
800
800
  runConcurrencyLimit: z.ZodString;
801
801
  status: z.ZodEnum<{
802
+ running: "running";
802
803
  blocked: "blocked";
803
804
  "needs-investigation": "needs-investigation";
804
805
  ready: "ready";
805
- running: "running";
806
806
  }>;
807
807
  terminatedAt: z.ZodOptional<z.ZodISODateTime>;
808
808
  variablesUrl: z.ZodOptional<z.ZodURL>;
@@ -1077,11 +1077,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1077
1077
  lastReproducedInRunId: RunId;
1078
1078
  }, z.core.$strip>>;
1079
1079
  status: z.ZodEnum<{
1080
+ canceled: "canceled";
1080
1081
  pending: "pending";
1081
1082
  inProgress: "inProgress";
1082
1083
  paused: "paused";
1083
1084
  resolved: "resolved";
1084
- canceled: "canceled";
1085
1085
  archived: "archived";
1086
1086
  }>;
1087
1087
  type: z.ZodEnum<{
@@ -1125,6 +1125,30 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1125
1125
  urgent: "urgent";
1126
1126
  }>>;
1127
1127
  workspaceId: z.ZodOptional<WorkspaceId>;
1128
+ }, z.core.$strip>, z.ZodObject<{
1129
+ effort: z.ZodEnum<{
1130
+ small: "small";
1131
+ medium: "medium";
1132
+ extraSmall: "extraSmall";
1133
+ large: "large";
1134
+ extraLarge: "extraLarge";
1135
+ }>;
1136
+ priority: z.ZodEnum<{
1137
+ low: "low";
1138
+ medium: "medium";
1139
+ high: "high";
1140
+ urgent: "urgent";
1141
+ }>;
1142
+ reason: z.ZodEnum<{
1143
+ dataChanged: "dataChanged";
1144
+ flowNeedsWork: "flowNeedsWork";
1145
+ other: "other";
1146
+ uiChanged: "uiChanged";
1147
+ }>;
1148
+ type: z.ZodLiteral<"maintenance">;
1149
+ description: z.ZodOptional<z.ZodString>;
1150
+ name: z.ZodString;
1151
+ workspaceId: z.ZodOptional<WorkspaceId>;
1128
1152
  }, z.core.$strip>], "type">;
1129
1153
  readonly kind: "write";
1130
1154
  readonly name: "issue.create";
@@ -1151,11 +1175,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1151
1175
  lastReproducedInRunId: RunId;
1152
1176
  }, z.core.$strip>>;
1153
1177
  status: z.ZodEnum<{
1178
+ canceled: "canceled";
1154
1179
  pending: "pending";
1155
1180
  inProgress: "inProgress";
1156
1181
  paused: "paused";
1157
1182
  resolved: "resolved";
1158
- canceled: "canceled";
1159
1183
  archived: "archived";
1160
1184
  }>;
1161
1185
  type: z.ZodEnum<{
@@ -1176,11 +1200,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1176
1200
  readonly description: "List the team's bug reports, maintenance reports, or coverage requests, newest first.";
1177
1201
  readonly input: z.ZodObject<{
1178
1202
  statuses: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1203
+ canceled: "canceled";
1179
1204
  pending: "pending";
1180
1205
  inProgress: "inProgress";
1181
1206
  paused: "paused";
1182
1207
  resolved: "resolved";
1183
- canceled: "canceled";
1184
1208
  archived: "archived";
1185
1209
  }>>>;
1186
1210
  type: z.ZodEnum<{
@@ -1217,11 +1241,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1217
1241
  lastReproducedInRunId: RunId;
1218
1242
  }, z.core.$strip>>;
1219
1243
  status: z.ZodEnum<{
1244
+ canceled: "canceled";
1220
1245
  pending: "pending";
1221
1246
  inProgress: "inProgress";
1222
1247
  paused: "paused";
1223
1248
  resolved: "resolved";
1224
- canceled: "canceled";
1225
1249
  archived: "archived";
1226
1250
  }>;
1227
1251
  type: z.ZodEnum<{
@@ -1269,11 +1293,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1269
1293
  lastReproducedInRunId: RunId;
1270
1294
  }, z.core.$strip>>;
1271
1295
  status: z.ZodEnum<{
1296
+ canceled: "canceled";
1272
1297
  pending: "pending";
1273
1298
  inProgress: "inProgress";
1274
1299
  paused: "paused";
1275
1300
  resolved: "resolved";
1276
- canceled: "canceled";
1277
1301
  archived: "archived";
1278
1302
  }>;
1279
1303
  type: z.ZodEnum<{
@@ -1321,11 +1345,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1321
1345
  lastReproducedInRunId: RunId;
1322
1346
  }, z.core.$strip>>;
1323
1347
  status: z.ZodEnum<{
1348
+ canceled: "canceled";
1324
1349
  pending: "pending";
1325
1350
  inProgress: "inProgress";
1326
1351
  paused: "paused";
1327
1352
  resolved: "resolved";
1328
- canceled: "canceled";
1329
1353
  archived: "archived";
1330
1354
  }>;
1331
1355
  type: z.ZodEnum<{
@@ -1356,11 +1380,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1356
1380
  urgent: "urgent";
1357
1381
  }>>;
1358
1382
  status: z.ZodOptional<z.ZodEnum<{
1383
+ canceled: "canceled";
1359
1384
  pending: "pending";
1360
1385
  inProgress: "inProgress";
1361
1386
  paused: "paused";
1362
1387
  resolved: "resolved";
1363
- canceled: "canceled";
1364
1388
  archived: "archived";
1365
1389
  }>>;
1366
1390
  }, z.core.$strip>;
@@ -1389,11 +1413,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1389
1413
  lastReproducedInRunId: RunId;
1390
1414
  }, z.core.$strip>>;
1391
1415
  status: z.ZodEnum<{
1416
+ canceled: "canceled";
1392
1417
  pending: "pending";
1393
1418
  inProgress: "inProgress";
1394
1419
  paused: "paused";
1395
1420
  resolved: "resolved";
1396
- canceled: "canceled";
1397
1421
  archived: "archived";
1398
1422
  }>;
1399
1423
  type: z.ZodEnum<{
@@ -1444,6 +1468,8 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1444
1468
  isPaused: z.ZodBoolean;
1445
1469
  name: z.ZodString;
1446
1470
  pausedAt: z.ZodOptional<z.ZodISODateTime>;
1471
+ runConcurrencyLimit: z.ZodString;
1472
+ shouldTriage: z.ZodBoolean;
1447
1473
  tags: z.ZodArray<z.ZodObject<{
1448
1474
  id: z.ZodString;
1449
1475
  name: z.ZodString;
@@ -1482,6 +1508,8 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1482
1508
  isPaused: z.ZodBoolean;
1483
1509
  name: z.ZodString;
1484
1510
  pausedAt: z.ZodOptional<z.ZodISODateTime>;
1511
+ runConcurrencyLimit: z.ZodString;
1512
+ shouldTriage: z.ZodBoolean;
1485
1513
  tags: z.ZodArray<z.ZodObject<{
1486
1514
  id: z.ZodString;
1487
1515
  name: z.ZodString;
@@ -1602,11 +1630,11 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1602
1630
  lastReproducedInRunId: RunId;
1603
1631
  }, z.core.$strip>>;
1604
1632
  status: z.ZodEnum<{
1633
+ canceled: "canceled";
1605
1634
  pending: "pending";
1606
1635
  inProgress: "inProgress";
1607
1636
  paused: "paused";
1608
1637
  resolved: "resolved";
1609
- canceled: "canceled";
1610
1638
  archived: "archived";
1611
1639
  }>;
1612
1640
  type: z.ZodEnum<{
@@ -1645,13 +1673,14 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1645
1673
  commitSha: z.ZodOptional<z.ZodString>;
1646
1674
  commitUrl: z.ZodOptional<z.ZodString>;
1647
1675
  }, z.core.$strip>;
1676
+ needsReview: z.ZodOptional<z.ZodBoolean>;
1648
1677
  runId: RunId;
1649
1678
  status: z.ZodEnum<{
1650
1679
  failed: "failed";
1651
- running: "running";
1652
- canceled: "canceled";
1653
1680
  queued: "queued";
1681
+ running: "running";
1654
1682
  passed: "passed";
1683
+ canceled: "canceled";
1655
1684
  }>;
1656
1685
  url: z.ZodURL;
1657
1686
  }, z.core.$strip>>;
@@ -1667,10 +1696,10 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1667
1696
  readonly input: z.ZodObject<{
1668
1697
  flowStatuses: z.ZodOptional<z.ZodArray<z.ZodEnum<{
1669
1698
  failed: "failed";
1670
- running: "running";
1671
- canceled: "canceled";
1672
1699
  queued: "queued";
1700
+ running: "running";
1673
1701
  passed: "passed";
1702
+ canceled: "canceled";
1674
1703
  }>>>;
1675
1704
  runId: RunId;
1676
1705
  }, z.core.$strip>;
@@ -1750,10 +1779,10 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1750
1779
  flowId: FlowId;
1751
1780
  name: z.ZodString;
1752
1781
  status: z.ZodEnum<{
1753
- running: "running";
1754
- canceled: "canceled";
1755
1782
  queued: "queued";
1783
+ running: "running";
1756
1784
  passed: "passed";
1785
+ canceled: "canceled";
1757
1786
  }>;
1758
1787
  }, z.core.$strip>], "status">>;
1759
1788
  runId: RunId;
@@ -1765,12 +1794,13 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1765
1794
  commitSha: z.ZodOptional<z.ZodString>;
1766
1795
  commitUrl: z.ZodOptional<z.ZodString>;
1767
1796
  }, z.core.$strip>;
1797
+ needsReview: z.ZodOptional<z.ZodBoolean>;
1768
1798
  status: z.ZodEnum<{
1769
1799
  failed: "failed";
1770
- running: "running";
1771
- canceled: "canceled";
1772
1800
  queued: "queued";
1801
+ running: "running";
1773
1802
  passed: "passed";
1803
+ canceled: "canceled";
1774
1804
  }>;
1775
1805
  url: z.ZodURL;
1776
1806
  }, z.core.$strip>;
@@ -1816,50 +1846,6 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1816
1846
  url: z.ZodURL;
1817
1847
  }, z.core.$strip>;
1818
1848
  };
1819
- triage: {
1820
- readonly annotations: {
1821
- readonly destructiveHint: false;
1822
- readonly openWorldHint: false;
1823
- readonly readOnlyHint: true;
1824
- };
1825
- readonly description: string;
1826
- readonly input: z.ZodObject<{
1827
- flowId: FlowId;
1828
- runId: RunId;
1829
- }, z.core.$strip>;
1830
- readonly kind: "read";
1831
- readonly name: "run.triage";
1832
- readonly output: z.ZodObject<{
1833
- answers: z.ZodObject<{
1834
- verdict: z.ZodObject<{
1835
- choice: z.ZodEnum<{
1836
- bug: "bug";
1837
- maintenance: "maintenance";
1838
- }>;
1839
- confidence: z.ZodNumber;
1840
- probabilities: z.ZodRecord<z.ZodString, z.ZodNumber>;
1841
- type: z.ZodLiteral<"choice">;
1842
- }, z.core.$strip>;
1843
- }, z.core.$strip>;
1844
- decision: z.ZodDiscriminatedUnion<[z.ZodObject<{
1845
- diagnosis: z.ZodEnum<{
1846
- bug: "bug";
1847
- maintenance: "maintenance";
1848
- }>;
1849
- type: z.ZodLiteral<"diagnose">;
1850
- }, z.core.$strip>, z.ZodObject<{
1851
- diagnosis: z.ZodEnum<{
1852
- bug: "bug";
1853
- maintenance: "maintenance";
1854
- }>;
1855
- type: z.ZodLiteral<"suggest">;
1856
- }, z.core.$strip>, z.ZodObject<{
1857
- type: z.ZodLiteral<"needsHuman">;
1858
- }, z.core.$strip>], "type">;
1859
- model: z.ZodString;
1860
- state: z.ZodJSONSchema;
1861
- }, z.core.$strip>;
1862
- };
1863
1849
  };
1864
1850
  runner: {
1865
1851
  runFlow: {
@@ -1898,12 +1884,14 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1898
1884
  playwright: "playwright";
1899
1885
  android: "android";
1900
1886
  ios: "ios";
1887
+ windows: "windows";
1901
1888
  }>;
1902
1889
  runnerName: z.ZodEnum<{
1903
1890
  basic: "basic";
1904
1891
  playwright: "playwright";
1905
1892
  android: "android";
1906
1893
  ios: "ios";
1894
+ windows: "windows";
1907
1895
  }>;
1908
1896
  }, z.core.$strip>, z.ZodObject<{
1909
1897
  failureReason: z.ZodLiteral<"needs-full-sync">;
@@ -1943,7 +1931,7 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
1943
1931
  readonly openWorldHint: false;
1944
1932
  readonly readOnlyHint: false;
1945
1933
  };
1946
- readonly description: "Take one screenshot of an interactive runner's screen. On a runner with a browser the image is the whole virtual desktop, browser window and all; this refreshes the inactivity timer and can extend the runner's billed lifetime. On a mobile runner it is the device's own screen, re-encoded to JPEG on the pod so this contract reads one image format regardless of runner family. `screen-needs-a-run` if the runner's virtual desktop has never started. Waiting will not change this and retrying is pointless — call `runner.runFlow` with a flow that opens a browser, then ask for the screen again. On a runner image with a browser that has never run anything, any `runner.performAction` also starts the browser itself. Evaluating a snippet does not start the desktop. `screen-not-ready` if the runner has a screen that cannot serve this instant. Retry in a second or two: the desktop restarts when a run changes the display size, and it serves one see-or-act request at a time, so a screenshot or action already in flight is the usual reason. Do not submit a run to clear this — a run may restart the display and discard what is on it. `runner-has-no-screen` if this runner is not one that runs a browser on a virtual desktop. Nothing about it can be seen or driven, and retrying will never help — launch a `playwright` runner instead. `runner-unreachable` if the runner could not be reached: it may still be starting, it may have terminated after inactivity, or it may be too busy to answer. Nothing was changed, so retrying is safe; if it persists, launch the runner again.";
1934
+ readonly description: "Take one screenshot of an interactive runner's screen. On a runner with a browser the image is the whole virtual desktop, browser window and all; this refreshes the inactivity timer and can extend the runner's billed lifetime. On a mobile runner it is the device's own screen, re-encoded to JPEG on the pod so this contract reads one image format regardless of runner family. `screen-needs-a-run` if the runner's virtual desktop has never started. Waiting will not change this and retrying is pointless — call `runner.runFlow` with a flow that opens a browser, then ask for the screen again. On a runner image with a browser that has never run anything, any `runner.performAction` also starts the browser itself. Evaluating a snippet does not start the desktop. `screen-not-ready` if the runner has a screen that cannot serve this instant. Retry in a second or two: the desktop restarts when a run changes the display size, and it serves one see-or-act request at a time, so a screenshot or action already in flight is the usual reason. Do not submit a run to clear this — a run may restart the display and discard what is on it. `runner-has-no-screen` if this runner has no browser desktop to see or drive, and retrying will never help. Launch a `playwright` runner, or on `windows` use `runner.runFlow`. `runner-unreachable` if the runner could not be reached: it may still be starting, it may have terminated after inactivity, or it may be too busy to answer. Nothing was changed, so retrying is safe; if it persists, launch the runner again.";
1947
1935
  readonly input: z.ZodObject<{
1948
1936
  id: z.ZodString;
1949
1937
  workspaceId: z.ZodOptional<WorkspaceId>;
@@ -2481,6 +2469,7 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
2481
2469
  playwright: "playwright";
2482
2470
  android: "android";
2483
2471
  ios: "ios";
2472
+ windows: "windows";
2484
2473
  }>>;
2485
2474
  workspaceId: z.ZodOptional<WorkspaceId>;
2486
2475
  }, z.core.$strip>;
@@ -2494,6 +2483,7 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
2494
2483
  playwright: "playwright";
2495
2484
  android: "android";
2496
2485
  ios: "ios";
2486
+ windows: "windows";
2497
2487
  }>;
2498
2488
  url: z.ZodURL;
2499
2489
  alreadyRunning: z.ZodBoolean;
@@ -2522,6 +2512,7 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
2522
2512
  playwright: "playwright";
2523
2513
  android: "android";
2524
2514
  ios: "ios";
2515
+ windows: "windows";
2525
2516
  }>;
2526
2517
  url: z.ZodURL;
2527
2518
  }, z.core.$strip>>;
@@ -2533,7 +2524,7 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
2533
2524
  readonly openWorldHint: true;
2534
2525
  readonly readOnlyHint: false;
2535
2526
  };
2536
- readonly description: "Perform one raw browser action on an interactive runner: click, double_click, move, drag, scroll, keypress, type, or navigate. One action per request, and the runner serves one at a time. A success means the action took effect. `action-failed`, with a reason, if it reached the runner and did not take effect. On a runner image with a browser, the first action on a runner that has never run anything starts its browser and waits for it, so it can take up to a minute to answer — no `runner.runFlow` is needed before acting; if the browser is still starting when the wait runs out, the answer is `screen-not-ready` and retrying converges. On a mobile runner, the same `screen-needs-a-run` and `screen-not-ready` outcomes mean no Appium session has started yet, or it did not answer this instant; `runner.runFlow` is what starts one, same as a browser. `screen-needs-a-run` if the browser could not be started that way — usually a runner whose runs all finished without starting its desktop; call `runner.runFlow` with a flow that opens a browser. `screen-not-ready` if the runner has a screen that cannot serve this instant. Retry in a second or two: the desktop restarts when a run changes the display size, and it serves one see-or-act request at a time, so a screenshot or action already in flight is the usual reason. Do not submit a run to clear this — a run may restart the display and discard what is on it. `runner-has-no-screen` if this runner is not one that runs a browser on a virtual desktop. Nothing about it can be seen or driven, and retrying will never help — launch a `playwright` runner instead. `runner-unreachable` if the runner could not be reached: it may still be starting, it may have terminated after inactivity, or it may have stopped answering mid-action. This does not mean the action was not performed — take a screenshot before repeating it.";
2527
+ readonly description: "Perform one raw action on an interactive runner: click, double_click, move, drag, scroll, keypress, type, or navigate; on mobile, tap, swipe, fill, or type. One action per request, and the runner serves one at a time. A success means the action took effect. `action-failed`, with a reason, if it reached the runner and did not take effect. On a runner image with a browser, the first action on a runner that has never run anything starts its browser and waits for it, so it can take up to a minute to answer — no `runner.runFlow` is needed before acting; if the browser is still starting when the wait runs out, the answer is `screen-not-ready` and retrying converges. On a mobile runner, the same `screen-needs-a-run` and `screen-not-ready` outcomes mean no Appium session has started yet, or it did not answer this instant; `runner.runFlow` is what starts one, same as a browser. `screen-needs-a-run` if the browser could not be started that way — usually a runner whose runs all finished without starting its desktop; call `runner.runFlow` with a flow that opens a browser. `screen-not-ready` if the runner has a screen that cannot serve this instant. Retry in a second or two: the desktop restarts when a run changes the display size, and it serves one see-or-act request at a time, so a screenshot or action already in flight is the usual reason. Do not submit a run to clear this — a run may restart the display and discard what is on it. `runner-has-no-screen` if this runner has no browser desktop to see or drive, and retrying will never help. Launch a `playwright` runner, or on `windows` use `runner.runFlow`. `runner-unreachable` if the runner could not be reached: it may still be starting, it may have terminated after inactivity, or it may have stopped answering mid-action. This does not mean the action was not performed — take a screenshot before repeating it.";
2537
2528
  readonly input: z.ZodObject<{
2538
2529
  action: z.ZodDiscriminatedUnion<[z.ZodObject<{
2539
2530
  button: z.ZodLiteral<"left" | "right" | "wheel" | "back" | "forward">;
@@ -2569,6 +2560,36 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
2569
2560
  }, z.core.$strict>, z.ZodObject<{
2570
2561
  text: z.ZodString;
2571
2562
  type: z.ZodLiteral<"type">;
2563
+ }, z.core.$strict>, z.ZodObject<{
2564
+ selector: z.ZodOptional<z.ZodString>;
2565
+ strategy: z.ZodOptional<z.ZodEnum<{
2566
+ "ios-predicate": "ios-predicate";
2567
+ shadow: "shadow";
2568
+ xpath: "xpath";
2569
+ }>>;
2570
+ type: z.ZodLiteral<"tap">;
2571
+ x: z.ZodOptional<z.ZodInt>;
2572
+ y: z.ZodOptional<z.ZodInt>;
2573
+ }, z.core.$strict>, z.ZodObject<{
2574
+ duration_ms: z.ZodOptional<z.ZodInt>;
2575
+ from: z.ZodObject<{
2576
+ x: z.ZodInt;
2577
+ y: z.ZodInt;
2578
+ }, z.core.$strict>;
2579
+ to: z.ZodObject<{
2580
+ x: z.ZodInt;
2581
+ y: z.ZodInt;
2582
+ }, z.core.$strict>;
2583
+ type: z.ZodLiteral<"swipe">;
2584
+ }, z.core.$strict>, z.ZodObject<{
2585
+ selector: z.ZodString;
2586
+ strategy: z.ZodOptional<z.ZodEnum<{
2587
+ "ios-predicate": "ios-predicate";
2588
+ shadow: "shadow";
2589
+ xpath: "xpath";
2590
+ }>>;
2591
+ text: z.ZodString;
2592
+ type: z.ZodLiteral<"fill">;
2572
2593
  }, z.core.$strict>], "type">;
2573
2594
  id: z.ZodString;
2574
2595
  withScreenshot: z.ZodOptional<z.ZodBoolean>;
@@ -2591,6 +2612,7 @@ export declare const makeContractsV1: <EnvironmentId extends PublicIdSchema, Flo
2591
2612
  "screen-not-ready": "screen-not-ready";
2592
2613
  "runner-has-no-screen": "runner-has-no-screen";
2593
2614
  "action-not-supported-on-mobile": "action-not-supported-on-mobile";
2615
+ "action-not-supported-on-browser": "action-not-supported-on-browser";
2594
2616
  }>;
2595
2617
  outcome: z.ZodLiteral<"failure">;
2596
2618
  }, z.core.$strip>], "failureReason">], "outcome">;
@@ -4108,10 +4130,10 @@ export declare const publicContractsV1: {
4108
4130
  name: z.ZodString;
4109
4131
  runConcurrencyLimit: z.ZodString;
4110
4132
  status: z.ZodEnum<{
4133
+ running: "running";
4111
4134
  blocked: "blocked";
4112
4135
  "needs-investigation": "needs-investigation";
4113
4136
  ready: "ready";
4114
- running: "running";
4115
4137
  }>;
4116
4138
  terminatedAt: z.ZodOptional<z.ZodISODateTime>;
4117
4139
  variablesUrl: z.ZodOptional<z.ZodURL>;
@@ -4176,10 +4198,10 @@ export declare const publicContractsV1: {
4176
4198
  name: z.ZodString;
4177
4199
  runConcurrencyLimit: z.ZodString;
4178
4200
  status: z.ZodEnum<{
4201
+ running: "running";
4179
4202
  blocked: "blocked";
4180
4203
  "needs-investigation": "needs-investigation";
4181
4204
  ready: "ready";
4182
- running: "running";
4183
4205
  }>;
4184
4206
  terminatedAt: z.ZodOptional<z.ZodISODateTime>;
4185
4207
  variablesUrl: z.ZodOptional<z.ZodURL>;
@@ -4220,10 +4242,10 @@ export declare const publicContractsV1: {
4220
4242
  name: z.ZodString;
4221
4243
  runConcurrencyLimit: z.ZodString;
4222
4244
  status: z.ZodEnum<{
4245
+ running: "running";
4223
4246
  blocked: "blocked";
4224
4247
  "needs-investigation": "needs-investigation";
4225
4248
  ready: "ready";
4226
- running: "running";
4227
4249
  }>;
4228
4250
  terminatedAt: z.ZodOptional<z.ZodISODateTime>;
4229
4251
  variablesUrl: z.ZodOptional<z.ZodURL>;
@@ -4322,10 +4344,10 @@ export declare const publicContractsV1: {
4322
4344
  name: z.ZodString;
4323
4345
  runConcurrencyLimit: z.ZodString;
4324
4346
  status: z.ZodEnum<{
4347
+ running: "running";
4325
4348
  blocked: "blocked";
4326
4349
  "needs-investigation": "needs-investigation";
4327
4350
  ready: "ready";
4328
- running: "running";
4329
4351
  }>;
4330
4352
  terminatedAt: z.ZodOptional<z.ZodISODateTime>;
4331
4353
  variablesUrl: z.ZodOptional<z.ZodURL>;
@@ -4600,11 +4622,11 @@ export declare const publicContractsV1: {
4600
4622
  lastReproducedInRunId: PublicIdSchema;
4601
4623
  }, z.core.$strip>>;
4602
4624
  status: z.ZodEnum<{
4625
+ canceled: "canceled";
4603
4626
  pending: "pending";
4604
4627
  inProgress: "inProgress";
4605
4628
  paused: "paused";
4606
4629
  resolved: "resolved";
4607
- canceled: "canceled";
4608
4630
  archived: "archived";
4609
4631
  }>;
4610
4632
  type: z.ZodEnum<{
@@ -4648,6 +4670,30 @@ export declare const publicContractsV1: {
4648
4670
  urgent: "urgent";
4649
4671
  }>>;
4650
4672
  workspaceId: z.ZodOptional<PublicIdSchema>;
4673
+ }, z.core.$strip>, z.ZodObject<{
4674
+ effort: z.ZodEnum<{
4675
+ small: "small";
4676
+ medium: "medium";
4677
+ extraSmall: "extraSmall";
4678
+ large: "large";
4679
+ extraLarge: "extraLarge";
4680
+ }>;
4681
+ priority: z.ZodEnum<{
4682
+ low: "low";
4683
+ medium: "medium";
4684
+ high: "high";
4685
+ urgent: "urgent";
4686
+ }>;
4687
+ reason: z.ZodEnum<{
4688
+ dataChanged: "dataChanged";
4689
+ flowNeedsWork: "flowNeedsWork";
4690
+ other: "other";
4691
+ uiChanged: "uiChanged";
4692
+ }>;
4693
+ type: z.ZodLiteral<"maintenance">;
4694
+ description: z.ZodOptional<z.ZodString>;
4695
+ name: z.ZodString;
4696
+ workspaceId: z.ZodOptional<PublicIdSchema>;
4651
4697
  }, z.core.$strip>], "type">;
4652
4698
  readonly kind: "write";
4653
4699
  readonly name: "issue.create";
@@ -4674,11 +4720,11 @@ export declare const publicContractsV1: {
4674
4720
  lastReproducedInRunId: PublicIdSchema;
4675
4721
  }, z.core.$strip>>;
4676
4722
  status: z.ZodEnum<{
4723
+ canceled: "canceled";
4677
4724
  pending: "pending";
4678
4725
  inProgress: "inProgress";
4679
4726
  paused: "paused";
4680
4727
  resolved: "resolved";
4681
- canceled: "canceled";
4682
4728
  archived: "archived";
4683
4729
  }>;
4684
4730
  type: z.ZodEnum<{
@@ -4699,11 +4745,11 @@ export declare const publicContractsV1: {
4699
4745
  readonly description: "List the team's bug reports, maintenance reports, or coverage requests, newest first.";
4700
4746
  readonly input: z.ZodObject<{
4701
4747
  statuses: z.ZodDefault<z.ZodArray<z.ZodEnum<{
4748
+ canceled: "canceled";
4702
4749
  pending: "pending";
4703
4750
  inProgress: "inProgress";
4704
4751
  paused: "paused";
4705
4752
  resolved: "resolved";
4706
- canceled: "canceled";
4707
4753
  archived: "archived";
4708
4754
  }>>>;
4709
4755
  type: z.ZodEnum<{
@@ -4740,11 +4786,11 @@ export declare const publicContractsV1: {
4740
4786
  lastReproducedInRunId: PublicIdSchema;
4741
4787
  }, z.core.$strip>>;
4742
4788
  status: z.ZodEnum<{
4789
+ canceled: "canceled";
4743
4790
  pending: "pending";
4744
4791
  inProgress: "inProgress";
4745
4792
  paused: "paused";
4746
4793
  resolved: "resolved";
4747
- canceled: "canceled";
4748
4794
  archived: "archived";
4749
4795
  }>;
4750
4796
  type: z.ZodEnum<{
@@ -4792,11 +4838,11 @@ export declare const publicContractsV1: {
4792
4838
  lastReproducedInRunId: PublicIdSchema;
4793
4839
  }, z.core.$strip>>;
4794
4840
  status: z.ZodEnum<{
4841
+ canceled: "canceled";
4795
4842
  pending: "pending";
4796
4843
  inProgress: "inProgress";
4797
4844
  paused: "paused";
4798
4845
  resolved: "resolved";
4799
- canceled: "canceled";
4800
4846
  archived: "archived";
4801
4847
  }>;
4802
4848
  type: z.ZodEnum<{
@@ -4844,11 +4890,11 @@ export declare const publicContractsV1: {
4844
4890
  lastReproducedInRunId: PublicIdSchema;
4845
4891
  }, z.core.$strip>>;
4846
4892
  status: z.ZodEnum<{
4893
+ canceled: "canceled";
4847
4894
  pending: "pending";
4848
4895
  inProgress: "inProgress";
4849
4896
  paused: "paused";
4850
4897
  resolved: "resolved";
4851
- canceled: "canceled";
4852
4898
  archived: "archived";
4853
4899
  }>;
4854
4900
  type: z.ZodEnum<{
@@ -4879,11 +4925,11 @@ export declare const publicContractsV1: {
4879
4925
  urgent: "urgent";
4880
4926
  }>>;
4881
4927
  status: z.ZodOptional<z.ZodEnum<{
4928
+ canceled: "canceled";
4882
4929
  pending: "pending";
4883
4930
  inProgress: "inProgress";
4884
4931
  paused: "paused";
4885
4932
  resolved: "resolved";
4886
- canceled: "canceled";
4887
4933
  archived: "archived";
4888
4934
  }>>;
4889
4935
  }, z.core.$strip>;
@@ -4912,11 +4958,11 @@ export declare const publicContractsV1: {
4912
4958
  lastReproducedInRunId: PublicIdSchema;
4913
4959
  }, z.core.$strip>>;
4914
4960
  status: z.ZodEnum<{
4961
+ canceled: "canceled";
4915
4962
  pending: "pending";
4916
4963
  inProgress: "inProgress";
4917
4964
  paused: "paused";
4918
4965
  resolved: "resolved";
4919
- canceled: "canceled";
4920
4966
  archived: "archived";
4921
4967
  }>;
4922
4968
  type: z.ZodEnum<{
@@ -4967,6 +5013,8 @@ export declare const publicContractsV1: {
4967
5013
  isPaused: z.ZodBoolean;
4968
5014
  name: z.ZodString;
4969
5015
  pausedAt: z.ZodOptional<z.ZodISODateTime>;
5016
+ runConcurrencyLimit: z.ZodString;
5017
+ shouldTriage: z.ZodBoolean;
4970
5018
  tags: z.ZodArray<z.ZodObject<{
4971
5019
  id: z.ZodString;
4972
5020
  name: z.ZodString;
@@ -5005,6 +5053,8 @@ export declare const publicContractsV1: {
5005
5053
  isPaused: z.ZodBoolean;
5006
5054
  name: z.ZodString;
5007
5055
  pausedAt: z.ZodOptional<z.ZodISODateTime>;
5056
+ runConcurrencyLimit: z.ZodString;
5057
+ shouldTriage: z.ZodBoolean;
5008
5058
  tags: z.ZodArray<z.ZodObject<{
5009
5059
  id: z.ZodString;
5010
5060
  name: z.ZodString;
@@ -5125,11 +5175,11 @@ export declare const publicContractsV1: {
5125
5175
  lastReproducedInRunId: PublicIdSchema;
5126
5176
  }, z.core.$strip>>;
5127
5177
  status: z.ZodEnum<{
5178
+ canceled: "canceled";
5128
5179
  pending: "pending";
5129
5180
  inProgress: "inProgress";
5130
5181
  paused: "paused";
5131
5182
  resolved: "resolved";
5132
- canceled: "canceled";
5133
5183
  archived: "archived";
5134
5184
  }>;
5135
5185
  type: z.ZodEnum<{
@@ -5168,13 +5218,14 @@ export declare const publicContractsV1: {
5168
5218
  commitSha: z.ZodOptional<z.ZodString>;
5169
5219
  commitUrl: z.ZodOptional<z.ZodString>;
5170
5220
  }, z.core.$strip>;
5221
+ needsReview: z.ZodOptional<z.ZodBoolean>;
5171
5222
  runId: PublicIdSchema;
5172
5223
  status: z.ZodEnum<{
5173
5224
  failed: "failed";
5174
- running: "running";
5175
- canceled: "canceled";
5176
5225
  queued: "queued";
5226
+ running: "running";
5177
5227
  passed: "passed";
5228
+ canceled: "canceled";
5178
5229
  }>;
5179
5230
  url: z.ZodURL;
5180
5231
  }, z.core.$strip>>;
@@ -5190,10 +5241,10 @@ export declare const publicContractsV1: {
5190
5241
  readonly input: z.ZodObject<{
5191
5242
  flowStatuses: z.ZodOptional<z.ZodArray<z.ZodEnum<{
5192
5243
  failed: "failed";
5193
- running: "running";
5194
- canceled: "canceled";
5195
5244
  queued: "queued";
5245
+ running: "running";
5196
5246
  passed: "passed";
5247
+ canceled: "canceled";
5197
5248
  }>>>;
5198
5249
  runId: PublicIdSchema;
5199
5250
  }, z.core.$strip>;
@@ -5273,10 +5324,10 @@ export declare const publicContractsV1: {
5273
5324
  flowId: PublicIdSchema;
5274
5325
  name: z.ZodString;
5275
5326
  status: z.ZodEnum<{
5276
- running: "running";
5277
- canceled: "canceled";
5278
5327
  queued: "queued";
5328
+ running: "running";
5279
5329
  passed: "passed";
5330
+ canceled: "canceled";
5280
5331
  }>;
5281
5332
  }, z.core.$strip>], "status">>;
5282
5333
  runId: PublicIdSchema;
@@ -5288,12 +5339,13 @@ export declare const publicContractsV1: {
5288
5339
  commitSha: z.ZodOptional<z.ZodString>;
5289
5340
  commitUrl: z.ZodOptional<z.ZodString>;
5290
5341
  }, z.core.$strip>;
5342
+ needsReview: z.ZodOptional<z.ZodBoolean>;
5291
5343
  status: z.ZodEnum<{
5292
5344
  failed: "failed";
5293
- running: "running";
5294
- canceled: "canceled";
5295
5345
  queued: "queued";
5346
+ running: "running";
5296
5347
  passed: "passed";
5348
+ canceled: "canceled";
5297
5349
  }>;
5298
5350
  url: z.ZodURL;
5299
5351
  }, z.core.$strip>;
@@ -5339,50 +5391,6 @@ export declare const publicContractsV1: {
5339
5391
  url: z.ZodURL;
5340
5392
  }, z.core.$strip>;
5341
5393
  };
5342
- triage: {
5343
- readonly annotations: {
5344
- readonly destructiveHint: false;
5345
- readonly openWorldHint: false;
5346
- readonly readOnlyHint: true;
5347
- };
5348
- readonly description: string;
5349
- readonly input: z.ZodObject<{
5350
- flowId: PublicIdSchema;
5351
- runId: PublicIdSchema;
5352
- }, z.core.$strip>;
5353
- readonly kind: "read";
5354
- readonly name: "run.triage";
5355
- readonly output: z.ZodObject<{
5356
- answers: z.ZodObject<{
5357
- verdict: z.ZodObject<{
5358
- choice: z.ZodEnum<{
5359
- bug: "bug";
5360
- maintenance: "maintenance";
5361
- }>;
5362
- confidence: z.ZodNumber;
5363
- probabilities: z.ZodRecord<z.ZodString, z.ZodNumber>;
5364
- type: z.ZodLiteral<"choice">;
5365
- }, z.core.$strip>;
5366
- }, z.core.$strip>;
5367
- decision: z.ZodDiscriminatedUnion<[z.ZodObject<{
5368
- diagnosis: z.ZodEnum<{
5369
- bug: "bug";
5370
- maintenance: "maintenance";
5371
- }>;
5372
- type: z.ZodLiteral<"diagnose">;
5373
- }, z.core.$strip>, z.ZodObject<{
5374
- diagnosis: z.ZodEnum<{
5375
- bug: "bug";
5376
- maintenance: "maintenance";
5377
- }>;
5378
- type: z.ZodLiteral<"suggest">;
5379
- }, z.core.$strip>, z.ZodObject<{
5380
- type: z.ZodLiteral<"needsHuman">;
5381
- }, z.core.$strip>], "type">;
5382
- model: z.ZodString;
5383
- state: z.ZodJSONSchema;
5384
- }, z.core.$strip>;
5385
- };
5386
5394
  };
5387
5395
  runner: {
5388
5396
  runFlow: {
@@ -5421,12 +5429,14 @@ export declare const publicContractsV1: {
5421
5429
  playwright: "playwright";
5422
5430
  android: "android";
5423
5431
  ios: "ios";
5432
+ windows: "windows";
5424
5433
  }>;
5425
5434
  runnerName: z.ZodEnum<{
5426
5435
  basic: "basic";
5427
5436
  playwright: "playwright";
5428
5437
  android: "android";
5429
5438
  ios: "ios";
5439
+ windows: "windows";
5430
5440
  }>;
5431
5441
  }, z.core.$strip>, z.ZodObject<{
5432
5442
  failureReason: z.ZodLiteral<"needs-full-sync">;
@@ -5466,7 +5476,7 @@ export declare const publicContractsV1: {
5466
5476
  readonly openWorldHint: false;
5467
5477
  readonly readOnlyHint: false;
5468
5478
  };
5469
- readonly description: "Take one screenshot of an interactive runner's screen. On a runner with a browser the image is the whole virtual desktop, browser window and all; this refreshes the inactivity timer and can extend the runner's billed lifetime. On a mobile runner it is the device's own screen, re-encoded to JPEG on the pod so this contract reads one image format regardless of runner family. `screen-needs-a-run` if the runner's virtual desktop has never started. Waiting will not change this and retrying is pointless — call `runner.runFlow` with a flow that opens a browser, then ask for the screen again. On a runner image with a browser that has never run anything, any `runner.performAction` also starts the browser itself. Evaluating a snippet does not start the desktop. `screen-not-ready` if the runner has a screen that cannot serve this instant. Retry in a second or two: the desktop restarts when a run changes the display size, and it serves one see-or-act request at a time, so a screenshot or action already in flight is the usual reason. Do not submit a run to clear this — a run may restart the display and discard what is on it. `runner-has-no-screen` if this runner is not one that runs a browser on a virtual desktop. Nothing about it can be seen or driven, and retrying will never help — launch a `playwright` runner instead. `runner-unreachable` if the runner could not be reached: it may still be starting, it may have terminated after inactivity, or it may be too busy to answer. Nothing was changed, so retrying is safe; if it persists, launch the runner again.";
5479
+ readonly description: "Take one screenshot of an interactive runner's screen. On a runner with a browser the image is the whole virtual desktop, browser window and all; this refreshes the inactivity timer and can extend the runner's billed lifetime. On a mobile runner it is the device's own screen, re-encoded to JPEG on the pod so this contract reads one image format regardless of runner family. `screen-needs-a-run` if the runner's virtual desktop has never started. Waiting will not change this and retrying is pointless — call `runner.runFlow` with a flow that opens a browser, then ask for the screen again. On a runner image with a browser that has never run anything, any `runner.performAction` also starts the browser itself. Evaluating a snippet does not start the desktop. `screen-not-ready` if the runner has a screen that cannot serve this instant. Retry in a second or two: the desktop restarts when a run changes the display size, and it serves one see-or-act request at a time, so a screenshot or action already in flight is the usual reason. Do not submit a run to clear this — a run may restart the display and discard what is on it. `runner-has-no-screen` if this runner has no browser desktop to see or drive, and retrying will never help. Launch a `playwright` runner, or on `windows` use `runner.runFlow`. `runner-unreachable` if the runner could not be reached: it may still be starting, it may have terminated after inactivity, or it may be too busy to answer. Nothing was changed, so retrying is safe; if it persists, launch the runner again.";
5470
5480
  readonly input: z.ZodObject<{
5471
5481
  id: z.ZodString;
5472
5482
  workspaceId: z.ZodOptional<PublicIdSchema>;
@@ -6004,6 +6014,7 @@ export declare const publicContractsV1: {
6004
6014
  playwright: "playwright";
6005
6015
  android: "android";
6006
6016
  ios: "ios";
6017
+ windows: "windows";
6007
6018
  }>>;
6008
6019
  workspaceId: z.ZodOptional<PublicIdSchema>;
6009
6020
  }, z.core.$strip>;
@@ -6017,6 +6028,7 @@ export declare const publicContractsV1: {
6017
6028
  playwright: "playwright";
6018
6029
  android: "android";
6019
6030
  ios: "ios";
6031
+ windows: "windows";
6020
6032
  }>;
6021
6033
  url: z.ZodURL;
6022
6034
  alreadyRunning: z.ZodBoolean;
@@ -6045,6 +6057,7 @@ export declare const publicContractsV1: {
6045
6057
  playwright: "playwright";
6046
6058
  android: "android";
6047
6059
  ios: "ios";
6060
+ windows: "windows";
6048
6061
  }>;
6049
6062
  url: z.ZodURL;
6050
6063
  }, z.core.$strip>>;
@@ -6056,7 +6069,7 @@ export declare const publicContractsV1: {
6056
6069
  readonly openWorldHint: true;
6057
6070
  readonly readOnlyHint: false;
6058
6071
  };
6059
- readonly description: "Perform one raw browser action on an interactive runner: click, double_click, move, drag, scroll, keypress, type, or navigate. One action per request, and the runner serves one at a time. A success means the action took effect. `action-failed`, with a reason, if it reached the runner and did not take effect. On a runner image with a browser, the first action on a runner that has never run anything starts its browser and waits for it, so it can take up to a minute to answer — no `runner.runFlow` is needed before acting; if the browser is still starting when the wait runs out, the answer is `screen-not-ready` and retrying converges. On a mobile runner, the same `screen-needs-a-run` and `screen-not-ready` outcomes mean no Appium session has started yet, or it did not answer this instant; `runner.runFlow` is what starts one, same as a browser. `screen-needs-a-run` if the browser could not be started that way — usually a runner whose runs all finished without starting its desktop; call `runner.runFlow` with a flow that opens a browser. `screen-not-ready` if the runner has a screen that cannot serve this instant. Retry in a second or two: the desktop restarts when a run changes the display size, and it serves one see-or-act request at a time, so a screenshot or action already in flight is the usual reason. Do not submit a run to clear this — a run may restart the display and discard what is on it. `runner-has-no-screen` if this runner is not one that runs a browser on a virtual desktop. Nothing about it can be seen or driven, and retrying will never help — launch a `playwright` runner instead. `runner-unreachable` if the runner could not be reached: it may still be starting, it may have terminated after inactivity, or it may have stopped answering mid-action. This does not mean the action was not performed — take a screenshot before repeating it.";
6072
+ readonly description: "Perform one raw action on an interactive runner: click, double_click, move, drag, scroll, keypress, type, or navigate; on mobile, tap, swipe, fill, or type. One action per request, and the runner serves one at a time. A success means the action took effect. `action-failed`, with a reason, if it reached the runner and did not take effect. On a runner image with a browser, the first action on a runner that has never run anything starts its browser and waits for it, so it can take up to a minute to answer — no `runner.runFlow` is needed before acting; if the browser is still starting when the wait runs out, the answer is `screen-not-ready` and retrying converges. On a mobile runner, the same `screen-needs-a-run` and `screen-not-ready` outcomes mean no Appium session has started yet, or it did not answer this instant; `runner.runFlow` is what starts one, same as a browser. `screen-needs-a-run` if the browser could not be started that way — usually a runner whose runs all finished without starting its desktop; call `runner.runFlow` with a flow that opens a browser. `screen-not-ready` if the runner has a screen that cannot serve this instant. Retry in a second or two: the desktop restarts when a run changes the display size, and it serves one see-or-act request at a time, so a screenshot or action already in flight is the usual reason. Do not submit a run to clear this — a run may restart the display and discard what is on it. `runner-has-no-screen` if this runner has no browser desktop to see or drive, and retrying will never help. Launch a `playwright` runner, or on `windows` use `runner.runFlow`. `runner-unreachable` if the runner could not be reached: it may still be starting, it may have terminated after inactivity, or it may have stopped answering mid-action. This does not mean the action was not performed — take a screenshot before repeating it.";
6060
6073
  readonly input: z.ZodObject<{
6061
6074
  action: z.ZodDiscriminatedUnion<[z.ZodObject<{
6062
6075
  button: z.ZodLiteral<"left" | "right" | "wheel" | "back" | "forward">;
@@ -6092,6 +6105,36 @@ export declare const publicContractsV1: {
6092
6105
  }, z.core.$strict>, z.ZodObject<{
6093
6106
  text: z.ZodString;
6094
6107
  type: z.ZodLiteral<"type">;
6108
+ }, z.core.$strict>, z.ZodObject<{
6109
+ selector: z.ZodOptional<z.ZodString>;
6110
+ strategy: z.ZodOptional<z.ZodEnum<{
6111
+ "ios-predicate": "ios-predicate";
6112
+ shadow: "shadow";
6113
+ xpath: "xpath";
6114
+ }>>;
6115
+ type: z.ZodLiteral<"tap">;
6116
+ x: z.ZodOptional<z.ZodInt>;
6117
+ y: z.ZodOptional<z.ZodInt>;
6118
+ }, z.core.$strict>, z.ZodObject<{
6119
+ duration_ms: z.ZodOptional<z.ZodInt>;
6120
+ from: z.ZodObject<{
6121
+ x: z.ZodInt;
6122
+ y: z.ZodInt;
6123
+ }, z.core.$strict>;
6124
+ to: z.ZodObject<{
6125
+ x: z.ZodInt;
6126
+ y: z.ZodInt;
6127
+ }, z.core.$strict>;
6128
+ type: z.ZodLiteral<"swipe">;
6129
+ }, z.core.$strict>, z.ZodObject<{
6130
+ selector: z.ZodString;
6131
+ strategy: z.ZodOptional<z.ZodEnum<{
6132
+ "ios-predicate": "ios-predicate";
6133
+ shadow: "shadow";
6134
+ xpath: "xpath";
6135
+ }>>;
6136
+ text: z.ZodString;
6137
+ type: z.ZodLiteral<"fill">;
6095
6138
  }, z.core.$strict>], "type">;
6096
6139
  id: z.ZodString;
6097
6140
  withScreenshot: z.ZodOptional<z.ZodBoolean>;
@@ -6114,6 +6157,7 @@ export declare const publicContractsV1: {
6114
6157
  "screen-not-ready": "screen-not-ready";
6115
6158
  "runner-has-no-screen": "runner-has-no-screen";
6116
6159
  "action-not-supported-on-mobile": "action-not-supported-on-mobile";
6160
+ "action-not-supported-on-browser": "action-not-supported-on-browser";
6117
6161
  }>;
6118
6162
  outcome: z.ZodLiteral<"failure">;
6119
6163
  }, z.core.$strip>], "failureReason">], "outcome">;