@empiricalrun/playwright-utils 0.64.0 → 0.65.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/dist/api-worker-client.d.ts +3 -0
- package/dist/api-worker-client.d.ts.map +1 -1
- package/dist/api-worker-client.js +6 -0
- package/dist/generated/api-worker-openapi.d.ts +1775 -1279
- package/dist/generated/api-worker-openapi.d.ts.map +1 -1
- package/dist/overlay-tests/typesafe.spec.js +5 -3
- package/dist/overlay-tests/visual.spec.js +1 -1
- package/dist/reporter/attachment-cleanup-test-reporter.d.ts +3 -1
- package/dist/reporter/attachment-cleanup-test-reporter.d.ts.map +1 -1
- package/dist/reporter/attachment-cleanup-test-reporter.js +5 -1
- package/dist/reporter/attachment-cleanup.d.ts +1 -1
- package/dist/reporter/attachment-cleanup.d.ts.map +1 -1
- package/dist/reporter/attachment-cleanup.js +14 -7
- package/dist/reporter/attachment-key.d.ts +3 -0
- package/dist/reporter/attachment-key.d.ts.map +1 -0
- package/dist/reporter/attachment-key.js +31 -0
- package/dist/reporter/empirical-reporter.d.ts +1 -1
- package/dist/reporter/empirical-reporter.d.ts.map +1 -1
- package/dist/reporter/empirical-reporter.js +7 -6
- package/dist/reporter/harness.d.ts +6 -1
- package/dist/reporter/harness.d.ts.map +1 -1
- package/dist/reporter/harness.js +22 -13
- package/dist/reporter/incremental-blob-reporter.d.ts +1 -0
- package/dist/reporter/incremental-blob-reporter.d.ts.map +1 -1
- package/dist/reporter/incremental-blob-reporter.js +8 -4
- package/dist/reporter/presigned-upload.d.ts +15 -0
- package/dist/reporter/presigned-upload.d.ts.map +1 -0
- package/dist/reporter/presigned-upload.js +96 -0
- package/dist/reporter/uploader.d.ts +10 -1
- package/dist/reporter/uploader.d.ts.map +1 -1
- package/dist/reporter/uploader.js +51 -2
- package/dist/reporter/util.d.ts +3 -3
- package/dist/reporter/util.d.ts.map +1 -1
- package/dist/reporter/util.js +10 -8
- package/dist/test/expect/visual.d.ts.map +1 -1
- package/dist/test/expect/visual.js +6 -2
- package/dist/test/scripts/pw-locator-patch/dismiss-overlays/index.d.ts.map +1 -1
- package/dist/test/scripts/pw-locator-patch/dismiss-overlays/index.js +0 -2
- package/dist/test/scripts/pw-locator-patch/dismiss-overlays/utils.d.ts +0 -1
- package/dist/test/scripts/pw-locator-patch/dismiss-overlays/utils.d.ts.map +1 -1
- package/dist/test/scripts/pw-locator-patch/dismiss-overlays/utils.js +0 -20
- package/dist/test/scripts/pw-locator-patch/vision/query.d.ts.map +1 -1
- package/dist/test/scripts/pw-locator-patch/vision/query.js +57 -5
- package/package.json +4 -5
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -219,7 +219,7 @@ export interface paths {
|
|
|
219
219
|
cookie?: never;
|
|
220
220
|
};
|
|
221
221
|
/**
|
|
222
|
-
* ⚙️
|
|
222
|
+
* ⚙️ Get linked test changes for a run
|
|
223
223
|
* @description For a run triggered by an app pull request, evaluates the same-name test branch live on GitHub (the state behind the "Empirical linked test changes" check) and returns the latest check written for the PR. Addressed by the database id. Serves the dashboard UI.
|
|
224
224
|
*/
|
|
225
225
|
get: operations["getTestRunLinkedChanges"];
|
|
@@ -305,7 +305,7 @@ export interface paths {
|
|
|
305
305
|
get?: never;
|
|
306
306
|
put?: never;
|
|
307
307
|
/**
|
|
308
|
-
* ⚙️
|
|
308
|
+
* ⚙️ Store a test run's shard plan
|
|
309
309
|
* @description Stores the partition of a run's test selection across its run_test shards, keyed by the external run_id. Each shard reads its own slice back from `/{id}/shards/{shard_index}/assigned-tests` to build a `--test-list`. Idempotent: the first plan for a run wins.
|
|
310
310
|
*/
|
|
311
311
|
post: operations["createTestRunShardPlan"];
|
|
@@ -343,7 +343,7 @@ export interface paths {
|
|
|
343
343
|
cookie?: never;
|
|
344
344
|
};
|
|
345
345
|
/**
|
|
346
|
-
* ⚙️
|
|
346
|
+
* ⚙️ Get test run shard assigned tests
|
|
347
347
|
* @description Returns the duration-based shard plan's test-case ids for one shard, addressed by the run's external run_id. Used by the test-run-worker to build its `--test-list`. Returns 417 when the run has no plan, so the worker falls back to Playwright's `--shard=i/N` split.
|
|
348
348
|
*/
|
|
349
349
|
get: operations["getTestRunShardAssignedTests"];
|
|
@@ -443,7 +443,7 @@ export interface paths {
|
|
|
443
443
|
cookie?: never;
|
|
444
444
|
};
|
|
445
445
|
/**
|
|
446
|
-
* ⚙️
|
|
446
|
+
* ⚙️ Get test case durations for shard planning
|
|
447
447
|
* @description Returns the run's project's 7-day and last-day average duration per test case (skipped results excluded), keyed by the normalized 41-char Playwright test id, addressed by the run's external run_id. Used by the `run_setup` container to pack a shard plan: the analytics token is account-scoped and cannot be handed to a sandbox running customer test code, so the api-worker holds it and serves the numbers. Project-wide rather than per-run — the container filters to the tests it listed. A project with no history returns an empty object; a broken analytics query returns 503, so the container can tell the two apart and fall back rather than plan off nothing.
|
|
448
448
|
*/
|
|
449
449
|
get: operations["getTestRunTestCaseDurations"];
|
|
@@ -1310,7 +1310,7 @@ export interface paths {
|
|
|
1310
1310
|
cookie?: never;
|
|
1311
1311
|
};
|
|
1312
1312
|
/**
|
|
1313
|
-
* 🤖
|
|
1313
|
+
* 🤖 List canonical Slack channels
|
|
1314
1314
|
* @description Lists active Slack channels registered for the scoped project's organization. Reporter configuration is intentionally not part of this resource.
|
|
1315
1315
|
*/
|
|
1316
1316
|
get: operations["listSlackChannelsV2"];
|
|
@@ -1332,7 +1332,7 @@ export interface paths {
|
|
|
1332
1332
|
get?: never;
|
|
1333
1333
|
put?: never;
|
|
1334
1334
|
/**
|
|
1335
|
-
* 🤖
|
|
1335
|
+
* 🤖 Refresh a canonical Slack channel's name
|
|
1336
1336
|
* @description Re-reads the channel from Slack and stores its current name when it changed. The canonical channel ID is stable, so environment reporter configs are unaffected. Access problems are reported in the validation result rather than as an error.
|
|
1337
1337
|
*/
|
|
1338
1338
|
post: operations["refreshSlackChannelV2"];
|
|
@@ -1350,7 +1350,7 @@ export interface paths {
|
|
|
1350
1350
|
cookie?: never;
|
|
1351
1351
|
};
|
|
1352
1352
|
/**
|
|
1353
|
-
* 🤖
|
|
1353
|
+
* 🤖 Validate canonical Slack channels
|
|
1354
1354
|
* @description Checks every active channel registered for the scoped project's organization against Slack. Validation is read-only and verifies bot access and the stored channel name.
|
|
1355
1355
|
*/
|
|
1356
1356
|
get: operations["validateSlackChannelsV2"];
|
|
@@ -1709,51 +1709,46 @@ export interface paths {
|
|
|
1709
1709
|
patch?: never;
|
|
1710
1710
|
trace?: never;
|
|
1711
1711
|
};
|
|
1712
|
-
"/api/
|
|
1712
|
+
"/api/chat-sessions/{id}/alarms": {
|
|
1713
1713
|
parameters: {
|
|
1714
1714
|
query?: never;
|
|
1715
1715
|
header?: never;
|
|
1716
1716
|
path?: never;
|
|
1717
1717
|
cookie?: never;
|
|
1718
1718
|
};
|
|
1719
|
+
/** 🤖 List a session's alarms */
|
|
1720
|
+
get: operations["listChatSessionAlarms"];
|
|
1721
|
+
put?: never;
|
|
1719
1722
|
/**
|
|
1720
|
-
*
|
|
1721
|
-
* @description
|
|
1723
|
+
* 🤖 Create a session alarm
|
|
1724
|
+
* @description Creates a relative-delay, absolute-time, or recurring UTC alarm owned by the chat session.
|
|
1722
1725
|
*/
|
|
1723
|
-
|
|
1724
|
-
put?: never;
|
|
1725
|
-
post?: never;
|
|
1726
|
+
post: operations["createChatSessionAlarm"];
|
|
1726
1727
|
delete?: never;
|
|
1727
1728
|
options?: never;
|
|
1728
1729
|
head?: never;
|
|
1729
1730
|
patch?: never;
|
|
1730
1731
|
trace?: never;
|
|
1731
1732
|
};
|
|
1732
|
-
"/api/
|
|
1733
|
+
"/api/chat-sessions/{id}/alarms/{alarm_id}": {
|
|
1733
1734
|
parameters: {
|
|
1734
1735
|
query?: never;
|
|
1735
1736
|
header?: never;
|
|
1736
1737
|
path?: never;
|
|
1737
1738
|
cookie?: never;
|
|
1738
1739
|
};
|
|
1739
|
-
|
|
1740
|
-
* 🧪 List tasks
|
|
1741
|
-
* @description Returns a paginated list of tasks for the scoped project.
|
|
1742
|
-
*/
|
|
1743
|
-
get: operations["listTasks"];
|
|
1740
|
+
get?: never;
|
|
1744
1741
|
put?: never;
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
*/
|
|
1749
|
-
post: operations["createTask"];
|
|
1750
|
-
delete?: never;
|
|
1742
|
+
post?: never;
|
|
1743
|
+
/** 🤖 Delete a session alarm */
|
|
1744
|
+
delete: operations["deleteChatSessionAlarm"];
|
|
1751
1745
|
options?: never;
|
|
1752
1746
|
head?: never;
|
|
1753
|
-
|
|
1747
|
+
/** 🤖 Update a session alarm */
|
|
1748
|
+
patch: operations["updateChatSessionAlarm"];
|
|
1754
1749
|
trace?: never;
|
|
1755
1750
|
};
|
|
1756
|
-
"/api/
|
|
1751
|
+
"/api/chat-sessions/{id}/session-state": {
|
|
1757
1752
|
parameters: {
|
|
1758
1753
|
query?: never;
|
|
1759
1754
|
header?: never;
|
|
@@ -1761,27 +1756,19 @@ export interface paths {
|
|
|
1761
1756
|
cookie?: never;
|
|
1762
1757
|
};
|
|
1763
1758
|
/**
|
|
1764
|
-
*
|
|
1765
|
-
* @description
|
|
1759
|
+
* 🤖 Get a session's initial state
|
|
1760
|
+
* @description Returns a session's recent log entries, user messages, and current sandbox state, read from pi-worker over the service binding.
|
|
1766
1761
|
*/
|
|
1767
|
-
get: operations["
|
|
1762
|
+
get: operations["getChatSessionState"];
|
|
1768
1763
|
put?: never;
|
|
1769
1764
|
post?: never;
|
|
1770
|
-
|
|
1771
|
-
* 🧪 Delete a task
|
|
1772
|
-
* @description Permanently deletes a task.
|
|
1773
|
-
*/
|
|
1774
|
-
delete: operations["deleteTask"];
|
|
1765
|
+
delete?: never;
|
|
1775
1766
|
options?: never;
|
|
1776
1767
|
head?: never;
|
|
1777
|
-
|
|
1778
|
-
* 🧪 Update a task
|
|
1779
|
-
* @description Updates a task's title, description, or status. A draft → open transition spawns a chat session.
|
|
1780
|
-
*/
|
|
1781
|
-
patch: operations["updateTask"];
|
|
1768
|
+
patch?: never;
|
|
1782
1769
|
trace?: never;
|
|
1783
1770
|
};
|
|
1784
|
-
"/api/
|
|
1771
|
+
"/api/chat-sessions/{id}/triggers": {
|
|
1785
1772
|
parameters: {
|
|
1786
1773
|
query?: never;
|
|
1787
1774
|
header?: never;
|
|
@@ -1789,100 +1776,102 @@ export interface paths {
|
|
|
1789
1776
|
cookie?: never;
|
|
1790
1777
|
};
|
|
1791
1778
|
/**
|
|
1792
|
-
*
|
|
1793
|
-
* @description
|
|
1779
|
+
* 🤖 List a session's event triggers
|
|
1780
|
+
* @description Lists active event triggers owned by this chat session. One-shot triggers are consumed after they fire; recurring wildcard triggers remain active.
|
|
1794
1781
|
*/
|
|
1795
|
-
get: operations["
|
|
1782
|
+
get: operations["listChatSessionTriggers"];
|
|
1796
1783
|
put?: never;
|
|
1797
|
-
|
|
1784
|
+
/**
|
|
1785
|
+
* 🤖 Create an event trigger
|
|
1786
|
+
* @description Creates a trigger that resumes this session after the selected event occurs. Supply entity_id for an exact one-shot trigger, or omit it to match every entity; wildcard triggers may use recurring cardinality. Optional payload_filter fields must be allowed by the event catalog. Registration is edge-only and does not match historical events, so an exact trigger on a test run that already finished is rejected with 409.
|
|
1787
|
+
*/
|
|
1788
|
+
post: operations["createChatSessionTrigger"];
|
|
1798
1789
|
delete?: never;
|
|
1799
1790
|
options?: never;
|
|
1800
1791
|
head?: never;
|
|
1801
1792
|
patch?: never;
|
|
1802
1793
|
trace?: never;
|
|
1803
1794
|
};
|
|
1804
|
-
"/api/
|
|
1795
|
+
"/api/chat-sessions/{id}/triggers/{trigger_id}": {
|
|
1805
1796
|
parameters: {
|
|
1806
1797
|
query?: never;
|
|
1807
1798
|
header?: never;
|
|
1808
1799
|
path?: never;
|
|
1809
1800
|
cookie?: never;
|
|
1810
1801
|
};
|
|
1811
|
-
/**
|
|
1812
|
-
|
|
1813
|
-
* @description Returns a paginated, filterable list of overlay-dismissal events for the scoped project.
|
|
1814
|
-
*/
|
|
1815
|
-
get: operations["getOverlayDismissalEvents"];
|
|
1802
|
+
/** 🤖 Get an event trigger */
|
|
1803
|
+
get: operations["getChatSessionTrigger"];
|
|
1816
1804
|
put?: never;
|
|
1817
1805
|
post?: never;
|
|
1818
|
-
|
|
1806
|
+
/** 🤖 Delete an event trigger */
|
|
1807
|
+
delete: operations["deleteChatSessionTrigger"];
|
|
1819
1808
|
options?: never;
|
|
1820
1809
|
head?: never;
|
|
1821
|
-
|
|
1810
|
+
/** 🤖 Update an event trigger */
|
|
1811
|
+
patch: operations["updateChatSessionTrigger"];
|
|
1822
1812
|
trace?: never;
|
|
1823
1813
|
};
|
|
1824
|
-
"/api/
|
|
1814
|
+
"/api/failure-groups/{id}/matcher-overlap": {
|
|
1825
1815
|
parameters: {
|
|
1826
1816
|
query?: never;
|
|
1827
1817
|
header?: never;
|
|
1828
1818
|
path?: never;
|
|
1829
1819
|
cookie?: never;
|
|
1830
1820
|
};
|
|
1821
|
+
get?: never;
|
|
1822
|
+
put?: never;
|
|
1831
1823
|
/**
|
|
1832
|
-
*
|
|
1833
|
-
* @description
|
|
1824
|
+
* 🤖 Check a matcher against other groups' members
|
|
1825
|
+
* @description Runs a candidate matcher source for this group against the 2 most recently seen active members of every other open group in the project (round-robin, at most 40 cases) and reports the ones it returns true for. A claim means the matcher overlaps that group. Nothing is persisted.
|
|
1834
1826
|
*/
|
|
1835
|
-
|
|
1836
|
-
put?: never;
|
|
1837
|
-
post?: never;
|
|
1827
|
+
post: operations["checkFailureGroupMatcherOverlap"];
|
|
1838
1828
|
delete?: never;
|
|
1839
1829
|
options?: never;
|
|
1840
1830
|
head?: never;
|
|
1841
1831
|
patch?: never;
|
|
1842
1832
|
trace?: never;
|
|
1843
1833
|
};
|
|
1844
|
-
"/api/
|
|
1834
|
+
"/api/failure-groups/{id}/members/{test_case_id}": {
|
|
1845
1835
|
parameters: {
|
|
1846
1836
|
query?: never;
|
|
1847
1837
|
header?: never;
|
|
1848
1838
|
path?: never;
|
|
1849
1839
|
cookie?: never;
|
|
1850
1840
|
};
|
|
1851
|
-
|
|
1852
|
-
* 🧪 Get a test run case
|
|
1853
|
-
* @description Retrieves a single case in a test run by its Playwright test ID. The project is derived from the run.
|
|
1854
|
-
*/
|
|
1855
|
-
get: operations["getTestRunCase"];
|
|
1841
|
+
get?: never;
|
|
1856
1842
|
put?: never;
|
|
1857
1843
|
post?: never;
|
|
1858
|
-
|
|
1844
|
+
/**
|
|
1845
|
+
* 🤖 Detach a test from a failure group
|
|
1846
|
+
* @description Records that this test does not belong to the group. Detaching as an agent is a correction the agent may undo by attaching again. A human detach is sticky: agent attaches will not re-attach the test; only a later human attach supersedes it.
|
|
1847
|
+
*/
|
|
1848
|
+
delete: operations["detachFailureGroupMember"];
|
|
1859
1849
|
options?: never;
|
|
1860
1850
|
head?: never;
|
|
1861
1851
|
patch?: never;
|
|
1862
1852
|
trace?: never;
|
|
1863
1853
|
};
|
|
1864
|
-
"/api/
|
|
1854
|
+
"/api/failure-groups/match": {
|
|
1865
1855
|
parameters: {
|
|
1866
1856
|
query?: never;
|
|
1867
1857
|
header?: never;
|
|
1868
1858
|
path?: never;
|
|
1869
1859
|
cookie?: never;
|
|
1870
1860
|
};
|
|
1871
|
-
|
|
1872
|
-
get: operations["listChatSessionAlarms"];
|
|
1861
|
+
get?: never;
|
|
1873
1862
|
put?: never;
|
|
1874
1863
|
/**
|
|
1875
|
-
* 🤖
|
|
1876
|
-
* @description
|
|
1864
|
+
* 🤖 Run failure-group matchers against a case
|
|
1865
|
+
* @description Runs every open group's matcher (or the given group_ids, or one dry-run source) against a failed or flaky case and reports which returned true. Nothing is persisted: attach the case with POST /{id}/members. Matchers run in an isolated Worker with network limited to report storage, under a per-matcher time limit and the isolate's memory and CPU limits.
|
|
1877
1866
|
*/
|
|
1878
|
-
post: operations["
|
|
1867
|
+
post: operations["matchFailureGroups"];
|
|
1879
1868
|
delete?: never;
|
|
1880
1869
|
options?: never;
|
|
1881
1870
|
head?: never;
|
|
1882
1871
|
patch?: never;
|
|
1883
1872
|
trace?: never;
|
|
1884
1873
|
};
|
|
1885
|
-
"/api/
|
|
1874
|
+
"/api/github/pr/convert-to-draft": {
|
|
1886
1875
|
parameters: {
|
|
1887
1876
|
query?: never;
|
|
1888
1877
|
header?: never;
|
|
@@ -1891,79 +1880,78 @@ export interface paths {
|
|
|
1891
1880
|
};
|
|
1892
1881
|
get?: never;
|
|
1893
1882
|
put?: never;
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1883
|
+
/**
|
|
1884
|
+
* 🤖 Convert a pull request to draft
|
|
1885
|
+
* @description Converts an open pull request to a draft, so it cannot be merged until it is marked ready for review.
|
|
1886
|
+
*/
|
|
1887
|
+
post: operations["convertPullRequestToDraft"];
|
|
1888
|
+
delete?: never;
|
|
1897
1889
|
options?: never;
|
|
1898
1890
|
head?: never;
|
|
1899
|
-
|
|
1900
|
-
patch: operations["updateChatSessionAlarm"];
|
|
1891
|
+
patch?: never;
|
|
1901
1892
|
trace?: never;
|
|
1902
1893
|
};
|
|
1903
|
-
"/api/
|
|
1894
|
+
"/api/github/pr/ready-for-review": {
|
|
1904
1895
|
parameters: {
|
|
1905
1896
|
query?: never;
|
|
1906
1897
|
header?: never;
|
|
1907
1898
|
path?: never;
|
|
1908
1899
|
cookie?: never;
|
|
1909
1900
|
};
|
|
1901
|
+
get?: never;
|
|
1902
|
+
put?: never;
|
|
1910
1903
|
/**
|
|
1911
|
-
* 🤖
|
|
1912
|
-
* @description
|
|
1904
|
+
* 🤖 Mark a pull request ready for review
|
|
1905
|
+
* @description Converts an open draft pull request to ready for review.
|
|
1913
1906
|
*/
|
|
1914
|
-
|
|
1915
|
-
put?: never;
|
|
1916
|
-
post?: never;
|
|
1907
|
+
post: operations["markPullRequestReadyForReview"];
|
|
1917
1908
|
delete?: never;
|
|
1918
1909
|
options?: never;
|
|
1919
1910
|
head?: never;
|
|
1920
1911
|
patch?: never;
|
|
1921
1912
|
trace?: never;
|
|
1922
1913
|
};
|
|
1923
|
-
"/api/
|
|
1914
|
+
"/api/github/proxy": {
|
|
1924
1915
|
parameters: {
|
|
1925
1916
|
query?: never;
|
|
1926
1917
|
header?: never;
|
|
1927
1918
|
path?: never;
|
|
1928
1919
|
cookie?: never;
|
|
1929
1920
|
};
|
|
1930
|
-
|
|
1931
|
-
* 🤖 🧪 List a session's event triggers
|
|
1932
|
-
* @description Lists active event triggers owned by this chat session. One-shot triggers are consumed after they fire; recurring wildcard triggers remain active.
|
|
1933
|
-
*/
|
|
1934
|
-
get: operations["listChatSessionTriggers"];
|
|
1921
|
+
get?: never;
|
|
1935
1922
|
put?: never;
|
|
1936
1923
|
/**
|
|
1937
|
-
* 🤖
|
|
1938
|
-
* @description
|
|
1924
|
+
* 🤖 Proxy a GitHub API request
|
|
1925
|
+
* @description Forwards an authenticated request to the GitHub API and returns the GitHub response verbatim. The request's project (bound token, or the `x-project-id`/`x-project-slug` header) picks the GitHub App: its own repo goes through the main App; another repo the project's org installed the reporter App on is read through the reporter App, and writes to it are rejected. Without a project, the main App is used. Merging a pull request with `merge_method` `squash` or `rebase` is rejected; only merge commits are allowed, and creating a draft pull request is rejected. Other writes to a project's default or protected branches are refused, as git-worker refuses the equivalent push. Project API keys are read-only. Sandbox-delegation principals are additionally constrained by per-session proxy rules.
|
|
1939
1926
|
*/
|
|
1940
|
-
post: operations["
|
|
1927
|
+
post: operations["githubProxy"];
|
|
1941
1928
|
delete?: never;
|
|
1942
1929
|
options?: never;
|
|
1943
1930
|
head?: never;
|
|
1944
1931
|
patch?: never;
|
|
1945
1932
|
trace?: never;
|
|
1946
1933
|
};
|
|
1947
|
-
"/api/
|
|
1934
|
+
"/api/gsheet/metadata": {
|
|
1948
1935
|
parameters: {
|
|
1949
1936
|
query?: never;
|
|
1950
1937
|
header?: never;
|
|
1951
1938
|
path?: never;
|
|
1952
1939
|
cookie?: never;
|
|
1953
1940
|
};
|
|
1954
|
-
/**
|
|
1955
|
-
|
|
1941
|
+
/**
|
|
1942
|
+
* 🤖 Get spreadsheet metadata
|
|
1943
|
+
* @description Returns the title of a Google spreadsheet and the access level the service account has on it.
|
|
1944
|
+
*/
|
|
1945
|
+
get: operations["getGsheetMetadata"];
|
|
1956
1946
|
put?: never;
|
|
1957
1947
|
post?: never;
|
|
1958
|
-
|
|
1959
|
-
delete: operations["deleteChatSessionTrigger"];
|
|
1948
|
+
delete?: never;
|
|
1960
1949
|
options?: never;
|
|
1961
1950
|
head?: never;
|
|
1962
|
-
|
|
1963
|
-
patch: operations["updateChatSessionTrigger"];
|
|
1951
|
+
patch?: never;
|
|
1964
1952
|
trace?: never;
|
|
1965
1953
|
};
|
|
1966
|
-
"/api/
|
|
1954
|
+
"/api/gsheet/proxy": {
|
|
1967
1955
|
parameters: {
|
|
1968
1956
|
query?: never;
|
|
1969
1957
|
header?: never;
|
|
@@ -1973,157 +1961,173 @@ export interface paths {
|
|
|
1973
1961
|
get?: never;
|
|
1974
1962
|
put?: never;
|
|
1975
1963
|
/**
|
|
1976
|
-
* 🤖
|
|
1977
|
-
* @description
|
|
1964
|
+
* 🤖 Proxy a Google API request
|
|
1965
|
+
* @description Forwards an authenticated request to an allowed Google API origin using the service account's credentials and returns the JSON response.
|
|
1978
1966
|
*/
|
|
1979
|
-
post: operations["
|
|
1967
|
+
post: operations["proxyGsheetRequest"];
|
|
1980
1968
|
delete?: never;
|
|
1981
1969
|
options?: never;
|
|
1982
1970
|
head?: never;
|
|
1983
1971
|
patch?: never;
|
|
1984
1972
|
trace?: never;
|
|
1985
1973
|
};
|
|
1986
|
-
"/api/
|
|
1974
|
+
"/api/infra/static-ips": {
|
|
1987
1975
|
parameters: {
|
|
1988
1976
|
query?: never;
|
|
1989
1977
|
header?: never;
|
|
1990
1978
|
path?: never;
|
|
1991
1979
|
cookie?: never;
|
|
1992
1980
|
};
|
|
1993
|
-
get?: never;
|
|
1994
|
-
put?: never;
|
|
1995
|
-
post?: never;
|
|
1996
1981
|
/**
|
|
1997
|
-
* 🤖
|
|
1998
|
-
* @description
|
|
1982
|
+
* 🤖 Get static egress IPs for a region
|
|
1983
|
+
* @description Returns the proxy endpoint and the egress IPs to allowlist for the given region.
|
|
1999
1984
|
*/
|
|
2000
|
-
|
|
1985
|
+
get: operations["getStaticIps"];
|
|
1986
|
+
put?: never;
|
|
1987
|
+
post?: never;
|
|
1988
|
+
delete?: never;
|
|
2001
1989
|
options?: never;
|
|
2002
1990
|
head?: never;
|
|
2003
1991
|
patch?: never;
|
|
2004
1992
|
trace?: never;
|
|
2005
1993
|
};
|
|
2006
|
-
"/api/
|
|
1994
|
+
"/api/playwright-versions": {
|
|
2007
1995
|
parameters: {
|
|
2008
1996
|
query?: never;
|
|
2009
1997
|
header?: never;
|
|
2010
1998
|
path?: never;
|
|
2011
1999
|
cookie?: never;
|
|
2012
2000
|
};
|
|
2013
|
-
get?: never;
|
|
2014
|
-
put?: never;
|
|
2015
2001
|
/**
|
|
2016
|
-
* 🤖
|
|
2017
|
-
* @description
|
|
2002
|
+
* 🤖 List supported Playwright versions
|
|
2003
|
+
* @description Returns the static list of supported Playwright versions and the default version. Public read — no authentication required.
|
|
2018
2004
|
*/
|
|
2019
|
-
|
|
2005
|
+
get: operations["listPlaywrightVersions"];
|
|
2006
|
+
put?: never;
|
|
2007
|
+
post?: never;
|
|
2020
2008
|
delete?: never;
|
|
2021
2009
|
options?: never;
|
|
2022
2010
|
head?: never;
|
|
2023
2011
|
patch?: never;
|
|
2024
2012
|
trace?: never;
|
|
2025
2013
|
};
|
|
2026
|
-
"/api/
|
|
2014
|
+
"/api/rules": {
|
|
2027
2015
|
parameters: {
|
|
2028
2016
|
query?: never;
|
|
2029
2017
|
header?: never;
|
|
2030
2018
|
path?: never;
|
|
2031
2019
|
cookie?: never;
|
|
2032
2020
|
};
|
|
2033
|
-
|
|
2021
|
+
/**
|
|
2022
|
+
* 🤖 List rules
|
|
2023
|
+
* @description Lists the scoped project's rules of every effect, newest first.
|
|
2024
|
+
*/
|
|
2025
|
+
get: operations["listRules"];
|
|
2034
2026
|
put?: never;
|
|
2035
2027
|
/**
|
|
2036
|
-
* 🤖
|
|
2037
|
-
* @description
|
|
2028
|
+
* 🤖 Create a rule
|
|
2029
|
+
* @description Creates a rule. It needs `test_ids` or a `matcher` (a matcher with no test_ids covers every test), and an `until`. Matcher rules must use effect `annotate`.
|
|
2038
2030
|
*/
|
|
2039
|
-
post: operations["
|
|
2031
|
+
post: operations["createRule"];
|
|
2040
2032
|
delete?: never;
|
|
2041
2033
|
options?: never;
|
|
2042
2034
|
head?: never;
|
|
2043
2035
|
patch?: never;
|
|
2044
2036
|
trace?: never;
|
|
2045
2037
|
};
|
|
2046
|
-
"/api/
|
|
2038
|
+
"/api/rules/{id}": {
|
|
2047
2039
|
parameters: {
|
|
2048
2040
|
query?: never;
|
|
2049
2041
|
header?: never;
|
|
2050
2042
|
path?: never;
|
|
2051
2043
|
cookie?: never;
|
|
2052
2044
|
};
|
|
2053
|
-
|
|
2045
|
+
/**
|
|
2046
|
+
* 🤖 Get a rule
|
|
2047
|
+
* @description Retrieves a single rule by ID.
|
|
2048
|
+
*/
|
|
2049
|
+
get: operations["getRule"];
|
|
2054
2050
|
put?: never;
|
|
2051
|
+
post?: never;
|
|
2055
2052
|
/**
|
|
2056
|
-
* 🤖
|
|
2057
|
-
* @description
|
|
2053
|
+
* 🤖 Delete a rule
|
|
2054
|
+
* @description Permanently deletes a rule. Its revisions are kept.
|
|
2058
2055
|
*/
|
|
2059
|
-
|
|
2060
|
-
delete?: never;
|
|
2056
|
+
delete: operations["deleteRule"];
|
|
2061
2057
|
options?: never;
|
|
2062
2058
|
head?: never;
|
|
2063
|
-
|
|
2059
|
+
/**
|
|
2060
|
+
* 🤖 Update a rule
|
|
2061
|
+
* @description Updates a rule's fields, or ends it now with `expire_now`. `test_ids` and `matcher` replace the stored values; `matcher: null` removes the matcher.
|
|
2062
|
+
*/
|
|
2063
|
+
patch: operations["updateRule"];
|
|
2064
2064
|
trace?: never;
|
|
2065
2065
|
};
|
|
2066
|
-
"/api/
|
|
2066
|
+
"/api/rules/{id}/revisions": {
|
|
2067
2067
|
parameters: {
|
|
2068
2068
|
query?: never;
|
|
2069
2069
|
header?: never;
|
|
2070
2070
|
path?: never;
|
|
2071
2071
|
cookie?: never;
|
|
2072
2072
|
};
|
|
2073
|
-
get?: never;
|
|
2074
|
-
put?: never;
|
|
2075
2073
|
/**
|
|
2076
|
-
* 🤖
|
|
2077
|
-
* @description
|
|
2074
|
+
* 🤖 List a rule's revisions
|
|
2075
|
+
* @description Every create, update and delete of the rule, oldest first, with who made it.
|
|
2078
2076
|
*/
|
|
2079
|
-
|
|
2077
|
+
get: operations["listRuleRevisions"];
|
|
2078
|
+
put?: never;
|
|
2079
|
+
post?: never;
|
|
2080
2080
|
delete?: never;
|
|
2081
2081
|
options?: never;
|
|
2082
2082
|
head?: never;
|
|
2083
2083
|
patch?: never;
|
|
2084
2084
|
trace?: never;
|
|
2085
2085
|
};
|
|
2086
|
-
"/api/
|
|
2086
|
+
"/api/rules/match": {
|
|
2087
2087
|
parameters: {
|
|
2088
2088
|
query?: never;
|
|
2089
2089
|
header?: never;
|
|
2090
2090
|
path?: never;
|
|
2091
2091
|
cookie?: never;
|
|
2092
2092
|
};
|
|
2093
|
+
get?: never;
|
|
2094
|
+
put?: never;
|
|
2093
2095
|
/**
|
|
2094
|
-
* 🤖
|
|
2095
|
-
* @description
|
|
2096
|
+
* 🤖 Match rules against a test case
|
|
2097
|
+
* @description Finds the rules active for the run (project, environment, run window) that cover the case: rules listing the test apply directly, and rules with a matcher apply when it returns true. Matcher results are cached per case and matcher version. Nothing else is stored.
|
|
2096
2098
|
*/
|
|
2097
|
-
|
|
2098
|
-
put?: never;
|
|
2099
|
-
post?: never;
|
|
2099
|
+
post: operations["matchRules"];
|
|
2100
2100
|
delete?: never;
|
|
2101
2101
|
options?: never;
|
|
2102
2102
|
head?: never;
|
|
2103
2103
|
patch?: never;
|
|
2104
2104
|
trace?: never;
|
|
2105
2105
|
};
|
|
2106
|
-
"/api/
|
|
2106
|
+
"/api/tasks": {
|
|
2107
2107
|
parameters: {
|
|
2108
2108
|
query?: never;
|
|
2109
2109
|
header?: never;
|
|
2110
2110
|
path?: never;
|
|
2111
2111
|
cookie?: never;
|
|
2112
2112
|
};
|
|
2113
|
-
|
|
2113
|
+
/**
|
|
2114
|
+
* 🤖 List tasks
|
|
2115
|
+
* @description Returns a paginated list of tasks for the scoped project.
|
|
2116
|
+
*/
|
|
2117
|
+
get: operations["listTasks"];
|
|
2114
2118
|
put?: never;
|
|
2115
2119
|
/**
|
|
2116
|
-
* 🤖
|
|
2117
|
-
* @description
|
|
2120
|
+
* 🤖 Create a task
|
|
2121
|
+
* @description Creates a task for the scoped project. Every task is owed to a person: `created_by` defaults to the signed-in user or, for an agent, the person who started its session. An agent acting for someone else, such as the person who asked in Slack, passes their user ID as `created_by`. Track your own follow-ups elsewhere; a task with no person behind it is rejected. It does not start a chat session; use `POST /api/tasks/{id}/chat-sessions` for that.
|
|
2118
2122
|
*/
|
|
2119
|
-
post: operations["
|
|
2123
|
+
post: operations["createTask"];
|
|
2120
2124
|
delete?: never;
|
|
2121
2125
|
options?: never;
|
|
2122
2126
|
head?: never;
|
|
2123
2127
|
patch?: never;
|
|
2124
2128
|
trace?: never;
|
|
2125
2129
|
};
|
|
2126
|
-
"/api/
|
|
2130
|
+
"/api/tasks/{id}": {
|
|
2127
2131
|
parameters: {
|
|
2128
2132
|
query?: never;
|
|
2129
2133
|
header?: never;
|
|
@@ -2131,16 +2135,24 @@ export interface paths {
|
|
|
2131
2135
|
cookie?: never;
|
|
2132
2136
|
};
|
|
2133
2137
|
/**
|
|
2134
|
-
* 🤖
|
|
2135
|
-
* @description
|
|
2138
|
+
* 🤖 Get a task
|
|
2139
|
+
* @description Retrieves a single task by ID.
|
|
2136
2140
|
*/
|
|
2137
|
-
get: operations["
|
|
2141
|
+
get: operations["getTask"];
|
|
2138
2142
|
put?: never;
|
|
2139
2143
|
post?: never;
|
|
2140
|
-
|
|
2144
|
+
/**
|
|
2145
|
+
* 🤖 Delete a task
|
|
2146
|
+
* @description Permanently deletes a task.
|
|
2147
|
+
*/
|
|
2148
|
+
delete: operations["deleteTask"];
|
|
2141
2149
|
options?: never;
|
|
2142
2150
|
head?: never;
|
|
2143
|
-
|
|
2151
|
+
/**
|
|
2152
|
+
* 🤖 Update a task
|
|
2153
|
+
* @description Updates a task's title, description, or status. A draft → open transition spawns a chat session.
|
|
2154
|
+
*/
|
|
2155
|
+
patch: operations["updateTask"];
|
|
2144
2156
|
trace?: never;
|
|
2145
2157
|
};
|
|
2146
2158
|
"/api/traces/compare": {
|
|
@@ -2153,7 +2165,7 @@ export interface paths {
|
|
|
2153
2165
|
get?: never;
|
|
2154
2166
|
put?: never;
|
|
2155
2167
|
/**
|
|
2156
|
-
* 🤖
|
|
2168
|
+
* 🤖 Compare a failed attempt with a passing one, step by step
|
|
2157
2169
|
* @description Aligns the steps of a case's failed attempt with a passing attempt of the same test (the dashboard's Compare tab) and returns where they diverge: the step it failed on, steps that ran only on one side, steps that got much slower, and optionally the page as each side left that step.
|
|
2158
2170
|
*/
|
|
2159
2171
|
post: operations["compareTraceAgainstPass"];
|
|
@@ -2247,6 +2259,86 @@ export interface paths {
|
|
|
2247
2259
|
patch?: never;
|
|
2248
2260
|
trace?: never;
|
|
2249
2261
|
};
|
|
2262
|
+
"/api/v1/telemetry/overlay-dismissals": {
|
|
2263
|
+
parameters: {
|
|
2264
|
+
query?: never;
|
|
2265
|
+
header?: never;
|
|
2266
|
+
path?: never;
|
|
2267
|
+
cookie?: never;
|
|
2268
|
+
};
|
|
2269
|
+
/**
|
|
2270
|
+
* 🤖 Overlay-dismissal summary
|
|
2271
|
+
* @description Returns aggregated overlay-dismissal metrics for the scoped project.
|
|
2272
|
+
*/
|
|
2273
|
+
get: operations["getOverlayDismissalSummary"];
|
|
2274
|
+
put?: never;
|
|
2275
|
+
post?: never;
|
|
2276
|
+
delete?: never;
|
|
2277
|
+
options?: never;
|
|
2278
|
+
head?: never;
|
|
2279
|
+
patch?: never;
|
|
2280
|
+
trace?: never;
|
|
2281
|
+
};
|
|
2282
|
+
"/api/v1/telemetry/overlay-dismissals/events": {
|
|
2283
|
+
parameters: {
|
|
2284
|
+
query?: never;
|
|
2285
|
+
header?: never;
|
|
2286
|
+
path?: never;
|
|
2287
|
+
cookie?: never;
|
|
2288
|
+
};
|
|
2289
|
+
/**
|
|
2290
|
+
* 🤖 Overlay-dismissal events
|
|
2291
|
+
* @description Returns a paginated, filterable list of overlay-dismissal events for the scoped project.
|
|
2292
|
+
*/
|
|
2293
|
+
get: operations["getOverlayDismissalEvents"];
|
|
2294
|
+
put?: never;
|
|
2295
|
+
post?: never;
|
|
2296
|
+
delete?: never;
|
|
2297
|
+
options?: never;
|
|
2298
|
+
head?: never;
|
|
2299
|
+
patch?: never;
|
|
2300
|
+
trace?: never;
|
|
2301
|
+
};
|
|
2302
|
+
"/api/v2/test-runs/{id}/cases": {
|
|
2303
|
+
parameters: {
|
|
2304
|
+
query?: never;
|
|
2305
|
+
header?: never;
|
|
2306
|
+
path?: never;
|
|
2307
|
+
cookie?: never;
|
|
2308
|
+
};
|
|
2309
|
+
/**
|
|
2310
|
+
* 🤖 List test run cases
|
|
2311
|
+
* @description Returns a paginated list of every case in a test run — passed, failed, flaky, and skipped — sourced from the run ledger. The project is derived from the run.
|
|
2312
|
+
*/
|
|
2313
|
+
get: operations["listTestRunCases"];
|
|
2314
|
+
put?: never;
|
|
2315
|
+
post?: never;
|
|
2316
|
+
delete?: never;
|
|
2317
|
+
options?: never;
|
|
2318
|
+
head?: never;
|
|
2319
|
+
patch?: never;
|
|
2320
|
+
trace?: never;
|
|
2321
|
+
};
|
|
2322
|
+
"/api/v2/test-runs/{id}/cases/{case_id}": {
|
|
2323
|
+
parameters: {
|
|
2324
|
+
query?: never;
|
|
2325
|
+
header?: never;
|
|
2326
|
+
path?: never;
|
|
2327
|
+
cookie?: never;
|
|
2328
|
+
};
|
|
2329
|
+
/**
|
|
2330
|
+
* 🤖 Get a test run case
|
|
2331
|
+
* @description Retrieves a single case in a test run by its Playwright test ID. The project is derived from the run.
|
|
2332
|
+
*/
|
|
2333
|
+
get: operations["getTestRunCase"];
|
|
2334
|
+
put?: never;
|
|
2335
|
+
post?: never;
|
|
2336
|
+
delete?: never;
|
|
2337
|
+
options?: never;
|
|
2338
|
+
head?: never;
|
|
2339
|
+
patch?: never;
|
|
2340
|
+
trace?: never;
|
|
2341
|
+
};
|
|
2250
2342
|
"/api/activity": {
|
|
2251
2343
|
parameters: {
|
|
2252
2344
|
query?: never;
|
|
@@ -2255,7 +2347,7 @@ export interface paths {
|
|
|
2255
2347
|
cookie?: never;
|
|
2256
2348
|
};
|
|
2257
2349
|
/**
|
|
2258
|
-
* ⚙️
|
|
2350
|
+
* ⚙️ List project activity
|
|
2259
2351
|
* @description The scoped project's activity grouped by local day, newest first. Each day has a summary of its test runs and a list of sessions, pull requests, tasks and failure groups. A session appears once, at its latest state, with its pull request folded in.
|
|
2260
2352
|
*/
|
|
2261
2353
|
get: operations["listActivity"];
|
|
@@ -2404,7 +2496,7 @@ export interface paths {
|
|
|
2404
2496
|
cookie?: never;
|
|
2405
2497
|
};
|
|
2406
2498
|
/**
|
|
2407
|
-
* 🛡️
|
|
2499
|
+
* 🛡️ Compare a subscription's usage with Dodo's events
|
|
2408
2500
|
* @description Compares our usage rows with the usage events Dodo has for the subscription's customer in one billing cycle, matched by event id: per-meter totals, plus events missing from Dodo, Dodo events with no usage row, and events whose quantity changed. Read-only; sends nothing. Defaults to the current cycle; a past cycle is named by its end (its renewal date) and starts a month earlier unless cycle_start is given.
|
|
2409
2501
|
*/
|
|
2410
2502
|
get: operations["reconcileSubscriptionUsage"];
|
|
@@ -2426,7 +2518,7 @@ export interface paths {
|
|
|
2426
2518
|
get?: never;
|
|
2427
2519
|
put?: never;
|
|
2428
2520
|
/**
|
|
2429
|
-
* 🛡️
|
|
2521
|
+
* 🛡️ Start a Dodo checkout for the org's plan
|
|
2430
2522
|
* @description Creates a Dodo hosted checkout that subscribes the scoped project's org to the current Dodo plan (the newest active shared plan with a Dodo product). For orgs without a plan that are not billed in INR. The plan takes effect when Dodo confirms the subscription by webhook.
|
|
2431
2523
|
*/
|
|
2432
2524
|
post: operations["createSubscriptionCheckout"];
|
|
@@ -2446,7 +2538,7 @@ export interface paths {
|
|
|
2446
2538
|
get?: never;
|
|
2447
2539
|
put?: never;
|
|
2448
2540
|
/**
|
|
2449
|
-
* 🛡️
|
|
2541
|
+
* 🛡️ End the org's plan now
|
|
2450
2542
|
* @description Ends the scoped project's org's Dodo subscription now, with no undo: sends Dodo the usage it is missing, then cancels the subscription, or pauses it when the cycle has usage beyond the plan's allowance (Dodo charges it on pausing; a cron cancels the subscription once that charge succeeds). The plan ends at once, and the org can subscribe again. Emails the org's members and billing contacts. For an active or past-due subscription; an on-hold one must pay first.
|
|
2451
2543
|
*/
|
|
2452
2544
|
post: operations["endSubscription"];
|
|
@@ -2464,7 +2556,7 @@ export interface paths {
|
|
|
2464
2556
|
cookie?: never;
|
|
2465
2557
|
};
|
|
2466
2558
|
/**
|
|
2467
|
-
* 🛡️
|
|
2559
|
+
* 🛡️ Get the plan the org can subscribe to
|
|
2468
2560
|
* @description Whether the scoped project's org can start a Dodo checkout now (same rules as the checkout endpoint), and the plan's terms if so. The billing page uses it to show its Continue to payment button.
|
|
2469
2561
|
*/
|
|
2470
2562
|
get: operations["getSubscriptionOffer"];
|
|
@@ -2486,7 +2578,7 @@ export interface paths {
|
|
|
2486
2578
|
get?: never;
|
|
2487
2579
|
put?: never;
|
|
2488
2580
|
/**
|
|
2489
|
-
* 🛡️
|
|
2581
|
+
* 🛡️ Open the org's Dodo billing portal
|
|
2490
2582
|
* @description Creates a Dodo customer portal session for the scoped project's org, where the customer updates their card and downloads Dodo's invoices. A new session per call; nothing is stored. For orgs that have subscribed through Dodo.
|
|
2491
2583
|
*/
|
|
2492
2584
|
post: operations["createSubscriptionPortalSession"];
|
|
@@ -2732,7 +2824,7 @@ export interface paths {
|
|
|
2732
2824
|
cookie?: never;
|
|
2733
2825
|
};
|
|
2734
2826
|
/**
|
|
2735
|
-
* ⚙️
|
|
2827
|
+
* ⚙️ Get session log entries by log_seq range
|
|
2736
2828
|
* @description Returns the full log entries (tool arguments, results and media refs) between two log_seq values, for expanding a transcript row.
|
|
2737
2829
|
*/
|
|
2738
2830
|
get: operations["getChatSessionEntryRange"];
|
|
@@ -2772,7 +2864,7 @@ export interface paths {
|
|
|
2772
2864
|
cookie?: never;
|
|
2773
2865
|
};
|
|
2774
2866
|
/**
|
|
2775
|
-
* ⚙️
|
|
2867
|
+
* ⚙️ Get a chat session lineage
|
|
2776
2868
|
* @description Returns a bounded graph of manager handoffs and agent delegations around the selected session.
|
|
2777
2869
|
*/
|
|
2778
2870
|
get: operations["getChatSessionLineage"];
|
|
@@ -2793,7 +2885,7 @@ export interface paths {
|
|
|
2793
2885
|
};
|
|
2794
2886
|
get?: never;
|
|
2795
2887
|
put?: never;
|
|
2796
|
-
/** 🛡️
|
|
2888
|
+
/** 🛡️ Close a manager session and start its successor */
|
|
2797
2889
|
post: operations["confirmManagerHandoff"];
|
|
2798
2890
|
delete?: never;
|
|
2799
2891
|
options?: never;
|
|
@@ -2810,7 +2902,7 @@ export interface paths {
|
|
|
2810
2902
|
};
|
|
2811
2903
|
get?: never;
|
|
2812
2904
|
put?: never;
|
|
2813
|
-
/** 🛡️
|
|
2905
|
+
/** 🛡️ Generate an ephemeral manager handoff note */
|
|
2814
2906
|
post: operations["previewManagerHandoff"];
|
|
2815
2907
|
delete?: never;
|
|
2816
2908
|
options?: never;
|
|
@@ -2829,7 +2921,7 @@ export interface paths {
|
|
|
2829
2921
|
put?: never;
|
|
2830
2922
|
/**
|
|
2831
2923
|
* ⚙️ Send a message to a chat session
|
|
2832
|
-
* @description Forwards a user message to the session's running pi-worker agent.
|
|
2924
|
+
* @description Forwards a user message to the session's running pi-worker agent. A session cannot message itself; to send itself a future message it sets an alarm.
|
|
2833
2925
|
*/
|
|
2834
2926
|
post: operations["forwardChatSessionMessage"];
|
|
2835
2927
|
delete?: never;
|
|
@@ -2866,7 +2958,7 @@ export interface paths {
|
|
|
2866
2958
|
cookie?: never;
|
|
2867
2959
|
};
|
|
2868
2960
|
/**
|
|
2869
|
-
* ⚙️
|
|
2961
|
+
* ⚙️ Get a commit from the sandbox
|
|
2870
2962
|
* @description Reads a commit's message, line stats and (optionally) diff from the attached sandbox's repository. Works for commits that have not been pushed; requires a running sandbox.
|
|
2871
2963
|
*/
|
|
2872
2964
|
get: operations["getChatSessionSandboxCommit"];
|
|
@@ -2966,7 +3058,7 @@ export interface paths {
|
|
|
2966
3058
|
cookie?: never;
|
|
2967
3059
|
};
|
|
2968
3060
|
/**
|
|
2969
|
-
* ⚙️
|
|
3061
|
+
* ⚙️ Get a session's subagents
|
|
2970
3062
|
* @description Returns each subagent's own log entries: the call that started it, its result, start, end and async-end entries, and only its latest message.
|
|
2971
3063
|
*/
|
|
2972
3064
|
get: operations["getChatSessionSubagents"];
|
|
@@ -2986,7 +3078,7 @@ export interface paths {
|
|
|
2986
3078
|
cookie?: never;
|
|
2987
3079
|
};
|
|
2988
3080
|
/**
|
|
2989
|
-
* ⚙️
|
|
3081
|
+
* ⚙️ Get one subagent's log entries
|
|
2990
3082
|
* @description Returns every log entry of one subagent, including all of its messages.
|
|
2991
3083
|
*/
|
|
2992
3084
|
get: operations["getChatSessionSubagentEntries"];
|
|
@@ -3018,26 +3110,6 @@ export interface paths {
|
|
|
3018
3110
|
patch?: never;
|
|
3019
3111
|
trace?: never;
|
|
3020
3112
|
};
|
|
3021
|
-
"/api/chat-sessions/{id}/timeline": {
|
|
3022
|
-
parameters: {
|
|
3023
|
-
query?: never;
|
|
3024
|
-
header?: never;
|
|
3025
|
-
path?: never;
|
|
3026
|
-
cookie?: never;
|
|
3027
|
-
};
|
|
3028
|
-
/**
|
|
3029
|
-
* ⚙️ Get a session's timeline
|
|
3030
|
-
* @description Returns the chronological timeline events for a chat session.
|
|
3031
|
-
*/
|
|
3032
|
-
get: operations["getChatSessionTimeline"];
|
|
3033
|
-
put?: never;
|
|
3034
|
-
post?: never;
|
|
3035
|
-
delete?: never;
|
|
3036
|
-
options?: never;
|
|
3037
|
-
head?: never;
|
|
3038
|
-
patch?: never;
|
|
3039
|
-
trace?: never;
|
|
3040
|
-
};
|
|
3041
3113
|
"/api/chat-sessions/{id}/transcript": {
|
|
3042
3114
|
parameters: {
|
|
3043
3115
|
query?: never;
|
|
@@ -3046,7 +3118,7 @@ export interface paths {
|
|
|
3046
3118
|
cookie?: never;
|
|
3047
3119
|
};
|
|
3048
3120
|
/**
|
|
3049
|
-
* ⚙️
|
|
3121
|
+
* ⚙️ Get a session's transcript rows
|
|
3050
3122
|
* @description Returns the whole session as display rows (messages, condensed tool runs, cards), each with the log_seq range it covers. Tool arguments and results are not included; read them from the entries in a row's seq range.
|
|
3051
3123
|
*/
|
|
3052
3124
|
get: operations["getChatSessionTranscript"];
|
|
@@ -3098,26 +3170,6 @@ export interface paths {
|
|
|
3098
3170
|
patch?: never;
|
|
3099
3171
|
trace?: never;
|
|
3100
3172
|
};
|
|
3101
|
-
"/api/chat-sessions/users": {
|
|
3102
|
-
parameters: {
|
|
3103
|
-
query?: never;
|
|
3104
|
-
header?: never;
|
|
3105
|
-
path?: never;
|
|
3106
|
-
cookie?: never;
|
|
3107
|
-
};
|
|
3108
|
-
/**
|
|
3109
|
-
* ⚙️ List chat-session creators
|
|
3110
|
-
* @description Returns the distinct users who created chat sessions in scope that were updated in the last 30 days, enriched with Supabase user details.
|
|
3111
|
-
*/
|
|
3112
|
-
get: operations["listChatSessionUsers"];
|
|
3113
|
-
put?: never;
|
|
3114
|
-
post?: never;
|
|
3115
|
-
delete?: never;
|
|
3116
|
-
options?: never;
|
|
3117
|
-
head?: never;
|
|
3118
|
-
patch?: never;
|
|
3119
|
-
trace?: never;
|
|
3120
|
-
};
|
|
3121
3173
|
"/api/credit-grants": {
|
|
3122
3174
|
parameters: {
|
|
3123
3175
|
query?: never;
|
|
@@ -3308,7 +3360,7 @@ export interface paths {
|
|
|
3308
3360
|
get?: never;
|
|
3309
3361
|
put?: never;
|
|
3310
3362
|
/**
|
|
3311
|
-
* ⚙️
|
|
3363
|
+
* ⚙️ Import a Loom video
|
|
3312
3364
|
* @description Downloads a Loom share video and stores it as a file.
|
|
3313
3365
|
*/
|
|
3314
3366
|
post: operations["importLoomFile"];
|
|
@@ -3538,7 +3590,7 @@ export interface paths {
|
|
|
3538
3590
|
cookie?: never;
|
|
3539
3591
|
};
|
|
3540
3592
|
/**
|
|
3541
|
-
* ⚙️
|
|
3593
|
+
* ⚙️ Get impacted tests for a pull request
|
|
3542
3594
|
* @description Returns the tests impacted by the pull request's diff against its merge base. Computed on every head push; the first read of an unseen pull request queues the computation and returns status `pending`.
|
|
3543
3595
|
*/
|
|
3544
3596
|
get: operations["getPullRequestImpactedTests"];
|
|
@@ -3964,7 +4016,7 @@ export interface paths {
|
|
|
3964
4016
|
get?: never;
|
|
3965
4017
|
put?: never;
|
|
3966
4018
|
/**
|
|
3967
|
-
* ⚙️
|
|
4019
|
+
* ⚙️ Seed a chat session with messages (preview only)
|
|
3968
4020
|
* @description Creates a chat session in the scoped project whose history is the given messages, without starting an agent turn or checking billing. For e2e tests that need an ongoing session, such as the in-session billing block. Returns 404 outside preview and local.
|
|
3969
4021
|
*/
|
|
3970
4022
|
post: operations["seedChatSession"];
|
|
@@ -4718,7 +4770,7 @@ export interface paths {
|
|
|
4718
4770
|
cookie?: never;
|
|
4719
4771
|
};
|
|
4720
4772
|
/**
|
|
4721
|
-
* 🛡️
|
|
4773
|
+
* 🛡️ Memory activity across projects
|
|
4722
4774
|
* @description Returns every memory across all projects (soft-deleted included, content omitted) with edit statistics from its version history, plus daily create/edit/delete counts per project.
|
|
4723
4775
|
*/
|
|
4724
4776
|
get: operations["listMemoryActivity"];
|
|
@@ -4738,7 +4790,7 @@ export interface paths {
|
|
|
4738
4790
|
cookie?: never;
|
|
4739
4791
|
};
|
|
4740
4792
|
/**
|
|
4741
|
-
* ⚙️
|
|
4793
|
+
* ⚙️ Memory changes made by a chat session
|
|
4742
4794
|
* @description Returns every create, update and delete one chat session made to the scoped project's memories, oldest first, with the reason given for each, the previous version for updates, and live memory counts before and after.
|
|
4743
4795
|
*/
|
|
4744
4796
|
get: operations["listMemoryChanges"];
|
|
@@ -4758,7 +4810,7 @@ export interface paths {
|
|
|
4758
4810
|
cookie?: never;
|
|
4759
4811
|
};
|
|
4760
4812
|
/**
|
|
4761
|
-
* 🛡️
|
|
4813
|
+
* 🛡️ Memory classifications across projects
|
|
4762
4814
|
* @description Returns every stored JEV classification under one vocabulary version, for all versions of all memories (soft-deleted included). A memory's current labels are the row for its latest version; rows for older versions mean it was edited since.
|
|
4763
4815
|
*/
|
|
4764
4816
|
get: operations["listMemoryClassifications"];
|
|
@@ -4778,7 +4830,7 @@ export interface paths {
|
|
|
4778
4830
|
cookie?: never;
|
|
4779
4831
|
};
|
|
4780
4832
|
/**
|
|
4781
|
-
* ⚙️
|
|
4833
|
+
* ⚙️ Most read and most edited memories
|
|
4782
4834
|
* @description Returns the scoped project's most read memories (read_memory calls, counted by Hive from agent sessions) and most edited memories over a recent window.
|
|
4783
4835
|
*/
|
|
4784
4836
|
get: operations["getMemoryUsage"];
|
|
@@ -4840,7 +4892,7 @@ export interface paths {
|
|
|
4840
4892
|
get?: never;
|
|
4841
4893
|
put?: never;
|
|
4842
4894
|
/**
|
|
4843
|
-
*
|
|
4895
|
+
* Create a dummy notification (non-production only)
|
|
4844
4896
|
* @description Creates an unread notification for the signed-in user about the project's latest chat session or test run, and pushes it on the user's realtime channel. Not available in production.
|
|
4845
4897
|
*/
|
|
4846
4898
|
post: operations["createDummyNotification"];
|
|
@@ -5282,6 +5334,50 @@ export interface paths {
|
|
|
5282
5334
|
patch: operations["updatePlan"];
|
|
5283
5335
|
trace?: never;
|
|
5284
5336
|
};
|
|
5337
|
+
"/api/platform-issues": {
|
|
5338
|
+
parameters: {
|
|
5339
|
+
query?: never;
|
|
5340
|
+
header?: never;
|
|
5341
|
+
path?: never;
|
|
5342
|
+
cookie?: never;
|
|
5343
|
+
};
|
|
5344
|
+
/**
|
|
5345
|
+
* ⚙️ List platform issues
|
|
5346
|
+
* @description Returns platform issues newest first: the scoped project's, or every project's when no project is given (super admins and internal services only).
|
|
5347
|
+
*/
|
|
5348
|
+
get: operations["listPlatformIssues"];
|
|
5349
|
+
put?: never;
|
|
5350
|
+
/**
|
|
5351
|
+
* ⚙️ Report a platform issue
|
|
5352
|
+
* @description Records a platform bug or skill gap for the scoped project, with a snapshot of the memory that holds it. Reporting the same kind for a memory that already has an open issue returns that issue.
|
|
5353
|
+
*/
|
|
5354
|
+
post: operations["reportPlatformIssue"];
|
|
5355
|
+
delete?: never;
|
|
5356
|
+
options?: never;
|
|
5357
|
+
head?: never;
|
|
5358
|
+
patch?: never;
|
|
5359
|
+
trace?: never;
|
|
5360
|
+
};
|
|
5361
|
+
"/api/platform-issues/{id}/resolve": {
|
|
5362
|
+
parameters: {
|
|
5363
|
+
query?: never;
|
|
5364
|
+
header?: never;
|
|
5365
|
+
path?: never;
|
|
5366
|
+
cookie?: never;
|
|
5367
|
+
};
|
|
5368
|
+
get?: never;
|
|
5369
|
+
put?: never;
|
|
5370
|
+
/**
|
|
5371
|
+
* 🛡️ Resolve a platform issue
|
|
5372
|
+
* @description Marks an issue fixed. Whoever fixes it also fixes what agents see: the skill, and any memory that is now wrong.
|
|
5373
|
+
*/
|
|
5374
|
+
post: operations["resolvePlatformIssue"];
|
|
5375
|
+
delete?: never;
|
|
5376
|
+
options?: never;
|
|
5377
|
+
head?: never;
|
|
5378
|
+
patch?: never;
|
|
5379
|
+
trace?: never;
|
|
5380
|
+
};
|
|
5285
5381
|
"/api/project-addons": {
|
|
5286
5382
|
parameters: {
|
|
5287
5383
|
query?: never;
|
|
@@ -5290,7 +5386,7 @@ export interface paths {
|
|
|
5290
5386
|
cookie?: never;
|
|
5291
5387
|
};
|
|
5292
5388
|
/**
|
|
5293
|
-
* ⚙️
|
|
5389
|
+
* ⚙️ List add-ons for the scoped project
|
|
5294
5390
|
* @description Returns every known add-on with its current state, plus the full period history for this project.
|
|
5295
5391
|
*/
|
|
5296
5392
|
get: operations["listProjectAddons"];
|
|
@@ -5312,7 +5408,7 @@ export interface paths {
|
|
|
5312
5408
|
get?: never;
|
|
5313
5409
|
put?: never;
|
|
5314
5410
|
/**
|
|
5315
|
-
*
|
|
5411
|
+
* Disable an add-on
|
|
5316
5412
|
* @description Closes the open period, preserving it as history. Returns 409 when the add-on was not enabled, or when the add-on is still in use — repo ownership cannot be turned off while the repository lives outside Empirical's GitHub org.
|
|
5317
5413
|
*/
|
|
5318
5414
|
post: operations["disableProjectAddon"];
|
|
@@ -5332,7 +5428,7 @@ export interface paths {
|
|
|
5332
5428
|
get?: never;
|
|
5333
5429
|
put?: never;
|
|
5334
5430
|
/**
|
|
5335
|
-
*
|
|
5431
|
+
* Enable an add-on
|
|
5336
5432
|
* @description Opens a new period effective now. Returns 409 when the add-on is already enabled, so a double submit cannot create overlapping periods.
|
|
5337
5433
|
*/
|
|
5338
5434
|
post: operations["enableProjectAddon"];
|
|
@@ -5539,7 +5635,7 @@ export interface paths {
|
|
|
5539
5635
|
};
|
|
5540
5636
|
/**
|
|
5541
5637
|
* ⚙️ Check test repository settings
|
|
5542
|
-
* @description Checks the project's GitHub repository (or a repo transfer destination) against the settings Empirical needs: merge commits only, app access, matching default branch
|
|
5638
|
+
* @description Checks the project's GitHub repository (or a repo transfer destination) against the settings Empirical needs: merge commits only, app access, and a matching default branch. Also reports the rulesets and classic protection on the default branch.
|
|
5543
5639
|
*/
|
|
5544
5640
|
get: operations["checkProjectRepoSettings"];
|
|
5545
5641
|
put?: never;
|
|
@@ -5550,26 +5646,6 @@ export interface paths {
|
|
|
5550
5646
|
patch?: never;
|
|
5551
5647
|
trace?: never;
|
|
5552
5648
|
};
|
|
5553
|
-
"/api/projects/{id}/repo-settings-check/fix": {
|
|
5554
|
-
parameters: {
|
|
5555
|
-
query?: never;
|
|
5556
|
-
header?: never;
|
|
5557
|
-
path?: never;
|
|
5558
|
-
cookie?: never;
|
|
5559
|
-
};
|
|
5560
|
-
get?: never;
|
|
5561
|
-
put?: never;
|
|
5562
|
-
/**
|
|
5563
|
-
* 🛡️ Fix test repository merge settings
|
|
5564
|
-
* @description For repositories owned by empirical-run only: turns on merge commits and turns off squash and rebase merging, then returns the re-checked result. Rulesets are reported, never changed.
|
|
5565
|
-
*/
|
|
5566
|
-
post: operations["fixProjectRepoSettings"];
|
|
5567
|
-
delete?: never;
|
|
5568
|
-
options?: never;
|
|
5569
|
-
head?: never;
|
|
5570
|
-
patch?: never;
|
|
5571
|
-
trace?: never;
|
|
5572
|
-
};
|
|
5573
5649
|
"/api/projects/{id}/test-cases-sync/trigger": {
|
|
5574
5650
|
parameters: {
|
|
5575
5651
|
query?: never;
|
|
@@ -5798,6 +5874,26 @@ export interface paths {
|
|
|
5798
5874
|
patch?: never;
|
|
5799
5875
|
trace?: never;
|
|
5800
5876
|
};
|
|
5877
|
+
"/api/projects/npm-snapshot-urls": {
|
|
5878
|
+
parameters: {
|
|
5879
|
+
query?: never;
|
|
5880
|
+
header?: never;
|
|
5881
|
+
path?: never;
|
|
5882
|
+
cookie?: never;
|
|
5883
|
+
};
|
|
5884
|
+
get?: never;
|
|
5885
|
+
put?: never;
|
|
5886
|
+
/**
|
|
5887
|
+
* Presign node_modules snapshot URLs
|
|
5888
|
+
* @description Returns presigned S3 URLs for the scoped project's node_modules tarball for a lockfile hash. Sandboxes restore from them at boot and upload after an npm ci on a miss.
|
|
5889
|
+
*/
|
|
5890
|
+
post: operations["getProjectNpmSnapshotUrls"];
|
|
5891
|
+
delete?: never;
|
|
5892
|
+
options?: never;
|
|
5893
|
+
head?: never;
|
|
5894
|
+
patch?: never;
|
|
5895
|
+
trace?: never;
|
|
5896
|
+
};
|
|
5801
5897
|
"/api/projects/static-ip-proxy-token": {
|
|
5802
5898
|
parameters: {
|
|
5803
5899
|
query?: never;
|
|
@@ -5892,7 +5988,7 @@ export interface paths {
|
|
|
5892
5988
|
get?: never;
|
|
5893
5989
|
put?: never;
|
|
5894
5990
|
/**
|
|
5895
|
-
*
|
|
5991
|
+
* Call home from an installation's stack
|
|
5896
5992
|
* @description Called by the registration Lambda in a Private Runner stack. On Create and Update it records the stack's resources and versions and verifies them; a pending backend that passes becomes active. Delete always succeeds: it releases an unverified claim so the link can be reused, or disables an active backend and moves its projects back to Empirical-hosted runs.
|
|
5897
5993
|
*/
|
|
5898
5994
|
post: operations["claimRunnerBackend"];
|
|
@@ -5910,7 +6006,7 @@ export interface paths {
|
|
|
5910
6006
|
cookie?: never;
|
|
5911
6007
|
};
|
|
5912
6008
|
/**
|
|
5913
|
-
*
|
|
6009
|
+
* Get the scoped project's runner backend
|
|
5914
6010
|
* @description Returns the runner backend the scoped project is linked to, including its verification status, or null when the project runs on Empirical-hosted infrastructure.
|
|
5915
6011
|
*/
|
|
5916
6012
|
get: operations["getProjectRunnerBackend"];
|
|
@@ -5933,14 +6029,14 @@ export interface paths {
|
|
|
5933
6029
|
put?: never;
|
|
5934
6030
|
post?: never;
|
|
5935
6031
|
/**
|
|
5936
|
-
*
|
|
6032
|
+
* Remove a private runner
|
|
5937
6033
|
* @description Deletes an unfinished setup or a disconnected runner of the scoped project's organisation that no project uses. Its CloudFormation stack, if one exists, stays in the AWS account until deleted there.
|
|
5938
6034
|
*/
|
|
5939
6035
|
delete: operations["removeProjectRunnerBackend"];
|
|
5940
6036
|
options?: never;
|
|
5941
6037
|
head?: never;
|
|
5942
6038
|
/**
|
|
5943
|
-
*
|
|
6039
|
+
* Rename a private runner
|
|
5944
6040
|
* @description Renames a runner backend of the scoped project's organisation.
|
|
5945
6041
|
*/
|
|
5946
6042
|
patch: operations["renameProjectRunnerBackend"];
|
|
@@ -5956,7 +6052,7 @@ export interface paths {
|
|
|
5956
6052
|
get?: never;
|
|
5957
6053
|
put?: never;
|
|
5958
6054
|
/**
|
|
5959
|
-
*
|
|
6055
|
+
* Disconnect a private runner
|
|
5960
6056
|
* @description Stops sending runs to a runner backend of the scoped project's organisation and moves every project on it back to Empirical-hosted runs. The stack stays in the AWS account; delete it there to remove it. Re-enable restores the runner, but not the projects' links.
|
|
5961
6057
|
*/
|
|
5962
6058
|
post: operations["disconnectProjectRunnerBackend"];
|
|
@@ -5976,7 +6072,7 @@ export interface paths {
|
|
|
5976
6072
|
get?: never;
|
|
5977
6073
|
put?: never;
|
|
5978
6074
|
/**
|
|
5979
|
-
*
|
|
6075
|
+
* Re-enable a disconnected private runner
|
|
5980
6076
|
* @description Verifies a disabled runner backend of the scoped project's organisation and makes it active again if every check passes. Projects are not re-linked.
|
|
5981
6077
|
*/
|
|
5982
6078
|
post: operations["enableProjectRunnerBackend"];
|
|
@@ -5996,7 +6092,7 @@ export interface paths {
|
|
|
5996
6092
|
get?: never;
|
|
5997
6093
|
put?: never;
|
|
5998
6094
|
/**
|
|
5999
|
-
*
|
|
6095
|
+
* Create a new setup link
|
|
6000
6096
|
* @description Mints a new quick-create link for a pending runner backend of the scoped project's organisation, replacing any earlier unused link.
|
|
6001
6097
|
*/
|
|
6002
6098
|
post: operations["createProjectRunnerBackendRegistration"];
|
|
@@ -6014,7 +6110,7 @@ export interface paths {
|
|
|
6014
6110
|
cookie?: never;
|
|
6015
6111
|
};
|
|
6016
6112
|
/**
|
|
6017
|
-
*
|
|
6113
|
+
* List the organisation's runner backends
|
|
6018
6114
|
* @description Every runner backend of the scoped project's organisation, in any status, so a project can use one another project set up or resume a setup in progress.
|
|
6019
6115
|
*/
|
|
6020
6116
|
get: operations["listProjectOrgRunnerBackends"];
|
|
@@ -6035,7 +6131,7 @@ export interface paths {
|
|
|
6035
6131
|
};
|
|
6036
6132
|
get?: never;
|
|
6037
6133
|
/**
|
|
6038
|
-
*
|
|
6134
|
+
* Choose where the project's runs execute
|
|
6039
6135
|
* @description Sends the scoped project's new runs to an active runner backend of its organisation, or back to Empirical-hosted infrastructure with null. Runs already created keep their placement.
|
|
6040
6136
|
*/
|
|
6041
6137
|
put: operations["setScopedProjectRunnerBackend"];
|
|
@@ -6056,7 +6152,7 @@ export interface paths {
|
|
|
6056
6152
|
get?: never;
|
|
6057
6153
|
put?: never;
|
|
6058
6154
|
/**
|
|
6059
|
-
*
|
|
6155
|
+
* Start setting up a private runner
|
|
6060
6156
|
* @description Registers a pending runner backend for the scoped project's organisation in the given AWS account and region, or reuses one whose stack hasn't called home yet or was deleted, and returns a quick-create link for it. The stack activates the backend when it is created.
|
|
6061
6157
|
*/
|
|
6062
6158
|
post: operations["setupProjectRunnerBackend"];
|
|
@@ -6076,7 +6172,7 @@ export interface paths {
|
|
|
6076
6172
|
get?: never;
|
|
6077
6173
|
put?: never;
|
|
6078
6174
|
/**
|
|
6079
|
-
*
|
|
6175
|
+
* Re-check the scoped project's runner backend
|
|
6080
6176
|
* @description Assumes the role of the backend the scoped project is linked to, makes one read-only call to each queue, the cluster and the log group, and records the result, so a customer can confirm a fix to their role or stack. It never changes the backend's status; use `enable` for a disabled one.
|
|
6081
6177
|
*/
|
|
6082
6178
|
post: operations["verifyProjectRunnerBackend"];
|
|
@@ -6086,90 +6182,6 @@ export interface paths {
|
|
|
6086
6182
|
patch?: never;
|
|
6087
6183
|
trace?: never;
|
|
6088
6184
|
};
|
|
6089
|
-
"/api/sandbox-snapshots": {
|
|
6090
|
-
parameters: {
|
|
6091
|
-
query?: never;
|
|
6092
|
-
header?: never;
|
|
6093
|
-
path?: never;
|
|
6094
|
-
cookie?: never;
|
|
6095
|
-
};
|
|
6096
|
-
/**
|
|
6097
|
-
* ⚙️ List sandbox snapshots
|
|
6098
|
-
* @description Returns the most recent sandbox snapshots for the scoped project.
|
|
6099
|
-
*/
|
|
6100
|
-
get: operations["listSandboxSnapshots"];
|
|
6101
|
-
put?: never;
|
|
6102
|
-
/**
|
|
6103
|
-
* ⚙️ Create a sandbox snapshot
|
|
6104
|
-
* @description Enqueues a snapshot-create job for the scoped project and base template.
|
|
6105
|
-
*/
|
|
6106
|
-
post: operations["createSandboxSnapshot"];
|
|
6107
|
-
delete?: never;
|
|
6108
|
-
options?: never;
|
|
6109
|
-
head?: never;
|
|
6110
|
-
patch?: never;
|
|
6111
|
-
trace?: never;
|
|
6112
|
-
};
|
|
6113
|
-
"/api/sandbox-snapshots/projects/{project_id}": {
|
|
6114
|
-
parameters: {
|
|
6115
|
-
query?: never;
|
|
6116
|
-
header?: never;
|
|
6117
|
-
path?: never;
|
|
6118
|
-
cookie?: never;
|
|
6119
|
-
};
|
|
6120
|
-
/**
|
|
6121
|
-
* ⚙️ List a project's sandbox snapshots
|
|
6122
|
-
* @description Returns the most recent sandbox snapshots for a project; used by sandbox-template CI to wait for a rebuild.
|
|
6123
|
-
*/
|
|
6124
|
-
get: operations["listProjectSandboxSnapshots"];
|
|
6125
|
-
put?: never;
|
|
6126
|
-
post?: never;
|
|
6127
|
-
delete?: never;
|
|
6128
|
-
options?: never;
|
|
6129
|
-
head?: never;
|
|
6130
|
-
patch?: never;
|
|
6131
|
-
trace?: never;
|
|
6132
|
-
};
|
|
6133
|
-
"/api/sandbox-snapshots/rebuild": {
|
|
6134
|
-
parameters: {
|
|
6135
|
-
query?: never;
|
|
6136
|
-
header?: never;
|
|
6137
|
-
path?: never;
|
|
6138
|
-
cookie?: never;
|
|
6139
|
-
};
|
|
6140
|
-
get?: never;
|
|
6141
|
-
put?: never;
|
|
6142
|
-
/**
|
|
6143
|
-
* ⚙️ Rebuild project sandbox snapshots
|
|
6144
|
-
* @description Enqueues snapshot-create jobs for every project that already has a snapshot for the given provider and base template. Only `e2b` is supported.
|
|
6145
|
-
*/
|
|
6146
|
-
post: operations["rebuildSandboxSnapshots"];
|
|
6147
|
-
delete?: never;
|
|
6148
|
-
options?: never;
|
|
6149
|
-
head?: never;
|
|
6150
|
-
patch?: never;
|
|
6151
|
-
trace?: never;
|
|
6152
|
-
};
|
|
6153
|
-
"/api/sandbox-snapshots/rebuild-by-template": {
|
|
6154
|
-
parameters: {
|
|
6155
|
-
query?: never;
|
|
6156
|
-
header?: never;
|
|
6157
|
-
path?: never;
|
|
6158
|
-
cookie?: never;
|
|
6159
|
-
};
|
|
6160
|
-
get?: never;
|
|
6161
|
-
put?: never;
|
|
6162
|
-
/**
|
|
6163
|
-
* ⚙️ Rebuild sandbox snapshots by template
|
|
6164
|
-
* @description Enqueues snapshot-create jobs for every project that has an `e2b` snapshot for the given base template.
|
|
6165
|
-
*/
|
|
6166
|
-
post: operations["rebuildSandboxSnapshotsByTemplate"];
|
|
6167
|
-
delete?: never;
|
|
6168
|
-
options?: never;
|
|
6169
|
-
head?: never;
|
|
6170
|
-
patch?: never;
|
|
6171
|
-
trace?: never;
|
|
6172
|
-
};
|
|
6173
6185
|
"/api/sandbox-snapshots/sources/upsert": {
|
|
6174
6186
|
parameters: {
|
|
6175
6187
|
query?: never;
|
|
@@ -6197,11 +6209,11 @@ export interface paths {
|
|
|
6197
6209
|
path?: never;
|
|
6198
6210
|
cookie?: never;
|
|
6199
6211
|
};
|
|
6200
|
-
/** 🛡️
|
|
6212
|
+
/** 🛡️ List system messages with delivery and ack counts */
|
|
6201
6213
|
get: operations["listSystemMessages"];
|
|
6202
6214
|
put?: never;
|
|
6203
6215
|
/**
|
|
6204
|
-
* 🛡️
|
|
6216
|
+
* 🛡️ Broadcast a system message to manager sessions
|
|
6205
6217
|
* @description Persists the message and delivers it to project manager sessions. With `project_ids`, every listed project gets a recipient row, and one without an open manager is recorded as failed. Without it, the message goes to every project with an open manager, and active projects without one are returned in `skipped_project_ids` (not persisted). Delivery is attempted before responding. Managers acknowledge through `POST /api/system-messages/{id}/ack`.
|
|
6206
6218
|
*/
|
|
6207
6219
|
post: operations["createSystemMessage"];
|
|
@@ -6218,7 +6230,7 @@ export interface paths {
|
|
|
6218
6230
|
path?: never;
|
|
6219
6231
|
cookie?: never;
|
|
6220
6232
|
};
|
|
6221
|
-
/** 🛡️
|
|
6233
|
+
/** 🛡️ Get a system message's per-project delivery and ack status */
|
|
6222
6234
|
get: operations["getSystemMessage"];
|
|
6223
6235
|
put?: never;
|
|
6224
6236
|
post?: never;
|
|
@@ -6238,7 +6250,7 @@ export interface paths {
|
|
|
6238
6250
|
get?: never;
|
|
6239
6251
|
put?: never;
|
|
6240
6252
|
/**
|
|
6241
|
-
*
|
|
6253
|
+
* Acknowledge a system message from a manager session
|
|
6242
6254
|
* @description Records the calling manager session's acknowledgement for its project. Any manager session of the project may ack, so a successor can answer a message its predecessor received. Re-acking overwrites the previous status and note.
|
|
6243
6255
|
*/
|
|
6244
6256
|
post: operations["ackSystemMessage"];
|
|
@@ -6272,6 +6284,26 @@ export interface paths {
|
|
|
6272
6284
|
patch?: never;
|
|
6273
6285
|
trace?: never;
|
|
6274
6286
|
};
|
|
6287
|
+
"/api/test-reports/upload-urls": {
|
|
6288
|
+
parameters: {
|
|
6289
|
+
query?: never;
|
|
6290
|
+
header?: never;
|
|
6291
|
+
path?: never;
|
|
6292
|
+
cookie?: never;
|
|
6293
|
+
};
|
|
6294
|
+
get?: never;
|
|
6295
|
+
put?: never;
|
|
6296
|
+
/**
|
|
6297
|
+
* ⚙️ Create report upload URLs
|
|
6298
|
+
* @description Returns presigned PUT URLs for files of a Playwright report under the project's report folder `<repo_name>/<run_id>/`.
|
|
6299
|
+
*/
|
|
6300
|
+
post: operations["createTestReportUploadUrls"];
|
|
6301
|
+
delete?: never;
|
|
6302
|
+
options?: never;
|
|
6303
|
+
head?: never;
|
|
6304
|
+
patch?: never;
|
|
6305
|
+
trace?: never;
|
|
6306
|
+
};
|
|
6275
6307
|
"/api/test-runs/events": {
|
|
6276
6308
|
parameters: {
|
|
6277
6309
|
query?: never;
|
|
@@ -6677,7 +6709,7 @@ export interface components {
|
|
|
6677
6709
|
ActivityDay: {
|
|
6678
6710
|
/** @description Local date, YYYY-MM-DD. */
|
|
6679
6711
|
date: string;
|
|
6680
|
-
/** @description Every test run
|
|
6712
|
+
/** @description Every test run created that day, summarized by its latest state. */
|
|
6681
6713
|
test_runs: {
|
|
6682
6714
|
count: number;
|
|
6683
6715
|
outcomes: {
|
|
@@ -6689,12 +6721,12 @@ export interface components {
|
|
|
6689
6721
|
cancelled: number;
|
|
6690
6722
|
ended: number;
|
|
6691
6723
|
};
|
|
6692
|
-
/** @description
|
|
6724
|
+
/** @description When the day's newest run was created. */
|
|
6693
6725
|
occurred_at: string;
|
|
6694
|
-
/** @description
|
|
6726
|
+
/** @description When the day's oldest run was created. */
|
|
6695
6727
|
since: string;
|
|
6696
6728
|
locations: {
|
|
6697
|
-
|
|
6729
|
+
environment_id: number | null;
|
|
6698
6730
|
environment: string | null;
|
|
6699
6731
|
count: number;
|
|
6700
6732
|
outcomes: {
|
|
@@ -6709,6 +6741,8 @@ export interface components {
|
|
|
6709
6741
|
}[];
|
|
6710
6742
|
} | null;
|
|
6711
6743
|
items: components["schemas"]["ActivityItem"][];
|
|
6744
|
+
/** @description Items past the per-day limit, not listed in `items`. */
|
|
6745
|
+
more_items: number;
|
|
6712
6746
|
};
|
|
6713
6747
|
ActivityItem: {
|
|
6714
6748
|
id: string;
|
|
@@ -6721,7 +6755,7 @@ export interface components {
|
|
|
6721
6755
|
/** @enum {string} */
|
|
6722
6756
|
kind: "chat_session";
|
|
6723
6757
|
/**
|
|
6724
|
-
* @description The session's latest state
|
|
6758
|
+
* @description The session's latest state, or what last happened to one of its pull requests. A session with pull requests appears once per pull request.
|
|
6725
6759
|
* @enum {string}
|
|
6726
6760
|
*/
|
|
6727
6761
|
action: "created" | "closed" | "pr_opened" | "pr_reopened" | "pr_merged" | "pr_closed";
|
|
@@ -7029,7 +7063,7 @@ export interface components {
|
|
|
7029
7063
|
*/
|
|
7030
7064
|
reporter_type: "github_check";
|
|
7031
7065
|
/**
|
|
7032
|
-
* @description `available`: the GitHub Reporter app is installed with the permission this reporter needs. `not_installed`: no install for the organization. `install_requested`: an install is waiting for a GitHub owner's approval. `missing_permission`: installed, but without the permission this reporter needs (`checks` for check runs, `pull_requests` for PR comments).
|
|
7066
|
+
* @description `available`: the GitHub Reporter app is installed with the permission this reporter needs. `not_installed`: no install for the organization. `install_requested`: an install is waiting for a GitHub owner's approval. `missing_permission`: installed, but without the permission this reporter needs (`checks` for check runs and the linked test changes check, `pull_requests` for PR comments).
|
|
7033
7067
|
* @enum {string}
|
|
7034
7068
|
*/
|
|
7035
7069
|
status: "available" | "not_installed" | "install_requested" | "missing_permission";
|
|
@@ -7042,7 +7076,20 @@ export interface components {
|
|
|
7042
7076
|
*/
|
|
7043
7077
|
reporter_type: "github_pr_comment";
|
|
7044
7078
|
/**
|
|
7045
|
-
* @description `available`: the GitHub Reporter app is installed with the permission this reporter needs. `not_installed`: no install for the organization. `install_requested`: an install is waiting for a GitHub owner's approval. `missing_permission`: installed, but without the permission this reporter needs (`checks` for check runs, `pull_requests` for PR comments).
|
|
7079
|
+
* @description `available`: the GitHub Reporter app is installed with the permission this reporter needs. `not_installed`: no install for the organization. `install_requested`: an install is waiting for a GitHub owner's approval. `missing_permission`: installed, but without the permission this reporter needs (`checks` for check runs and the linked test changes check, `pull_requests` for PR comments).
|
|
7080
|
+
* @enum {string}
|
|
7081
|
+
*/
|
|
7082
|
+
status: "available" | "not_installed" | "install_requested" | "missing_permission";
|
|
7083
|
+
/** @description Repositories (`owner/name`) the install covers. The reporter posts only for runs whose `build.repo` is one of these. */
|
|
7084
|
+
repositories: string[];
|
|
7085
|
+
} | {
|
|
7086
|
+
/**
|
|
7087
|
+
* @description Tracks the test branch of the app pull request a run was triggered for, and keeps the linked test changes check on that pull request up to date.
|
|
7088
|
+
* @enum {string}
|
|
7089
|
+
*/
|
|
7090
|
+
reporter_type: "github_linked_changes";
|
|
7091
|
+
/**
|
|
7092
|
+
* @description `available`: the GitHub Reporter app is installed with the permission this reporter needs. `not_installed`: no install for the organization. `install_requested`: an install is waiting for a GitHub owner's approval. `missing_permission`: installed, but without the permission this reporter needs (`checks` for check runs and the linked test changes check, `pull_requests` for PR comments).
|
|
7046
7093
|
* @enum {string}
|
|
7047
7094
|
*/
|
|
7048
7095
|
status: "available" | "not_installed" | "install_requested" | "missing_permission";
|
|
@@ -7214,8 +7261,6 @@ export interface components {
|
|
|
7214
7261
|
}[];
|
|
7215
7262
|
/** @description Whether the agent is awaiting user input. */
|
|
7216
7263
|
ask_user_for_input: boolean | null;
|
|
7217
|
-
/** @description Langfuse trace ID. */
|
|
7218
|
-
langfuse_trace_id: string | null;
|
|
7219
7264
|
/** @description Whether the session is closed. */
|
|
7220
7265
|
is_closed: boolean;
|
|
7221
7266
|
/** @description For a manager closed by rollover, the manager session that took over. */
|
|
@@ -7420,8 +7465,6 @@ export interface components {
|
|
|
7420
7465
|
model: string | null;
|
|
7421
7466
|
/** @description Whether the agent is awaiting user input. */
|
|
7422
7467
|
ask_user_for_input: boolean | null;
|
|
7423
|
-
/** @description Langfuse trace ID. */
|
|
7424
|
-
langfuse_trace_id: string | null;
|
|
7425
7468
|
/** @description Whether the session is closed. */
|
|
7426
7469
|
is_closed: boolean;
|
|
7427
7470
|
/** @description For a manager closed by rollover, the manager session that took over. */
|
|
@@ -7453,6 +7496,8 @@ export interface components {
|
|
|
7453
7496
|
* @enum {string}
|
|
7454
7497
|
*/
|
|
7455
7498
|
pr_status: "unopened" | "open" | "opened" | "closed" | "merged";
|
|
7499
|
+
/** @description Number of PRs the session has opened. */
|
|
7500
|
+
pr_count: number;
|
|
7456
7501
|
/** @description Name of the owning project. */
|
|
7457
7502
|
project_name: string | null;
|
|
7458
7503
|
/** @description Repository name of the owning project. */
|
|
@@ -7546,55 +7591,9 @@ export interface components {
|
|
|
7546
7591
|
ChatSessionSubagentsResponse: {
|
|
7547
7592
|
data: components["schemas"]["ChatSessionSubagents"];
|
|
7548
7593
|
};
|
|
7549
|
-
ChatSessionTimelineEvent: {
|
|
7550
|
-
/** @description Timeline event ID. */
|
|
7551
|
-
id: number;
|
|
7552
|
-
/** @description Owning chat session ID. */
|
|
7553
|
-
chat_session_id: number;
|
|
7554
|
-
/**
|
|
7555
|
-
* @description Timeline event type.
|
|
7556
|
-
* @enum {string}
|
|
7557
|
-
*/
|
|
7558
|
-
event_type: "pr.opened" | "pr.merged" | "pr.closed" | "chat_session.closed" | "branch.created";
|
|
7559
|
-
/** @description Related pull request number, if any. */
|
|
7560
|
-
pr_number: number | null;
|
|
7561
|
-
/** @description User who triggered the event. */
|
|
7562
|
-
created_by: string | null;
|
|
7563
|
-
/** @description Event timestamp (ISO). */
|
|
7564
|
-
created_at: string;
|
|
7565
|
-
/** @description Resolved Supabase details for the triggerer. */
|
|
7566
|
-
created_by_user_detail?: {
|
|
7567
|
-
/** @description Supabase user ID. */
|
|
7568
|
-
id: string;
|
|
7569
|
-
/** @description User email. */
|
|
7570
|
-
email: string;
|
|
7571
|
-
/** @description Display name. */
|
|
7572
|
-
name: string;
|
|
7573
|
-
/** @description Avatar URL. */
|
|
7574
|
-
picture: string;
|
|
7575
|
-
} | null;
|
|
7576
|
-
};
|
|
7577
|
-
ChatSessionTimelineResponse: {
|
|
7578
|
-
/** @description Response payload. */
|
|
7579
|
-
data: components["schemas"]["ChatSessionTimelineEvent"][];
|
|
7580
|
-
};
|
|
7581
7594
|
ChatSessionTranscriptResponse: {
|
|
7582
7595
|
data: components["schemas"]["SessionTranscript"];
|
|
7583
7596
|
};
|
|
7584
|
-
ChatSessionUserDetail: {
|
|
7585
|
-
/** @description Supabase user ID. */
|
|
7586
|
-
id: string;
|
|
7587
|
-
/** @description User email. */
|
|
7588
|
-
email: string;
|
|
7589
|
-
/** @description Display name. */
|
|
7590
|
-
name: string;
|
|
7591
|
-
/** @description Avatar URL. */
|
|
7592
|
-
picture: string;
|
|
7593
|
-
};
|
|
7594
|
-
ChatSessionUsersResponse: {
|
|
7595
|
-
/** @description Response payload. */
|
|
7596
|
-
data: components["schemas"]["ChatSessionUserDetail"][];
|
|
7597
|
-
};
|
|
7598
7597
|
ChatSessionWithUser: {
|
|
7599
7598
|
/** @description Chat session ID. */
|
|
7600
7599
|
id: number;
|
|
@@ -7639,8 +7638,6 @@ export interface components {
|
|
|
7639
7638
|
}[];
|
|
7640
7639
|
/** @description Whether the agent is awaiting user input. */
|
|
7641
7640
|
ask_user_for_input: boolean | null;
|
|
7642
|
-
/** @description Langfuse trace ID. */
|
|
7643
|
-
langfuse_trace_id: string | null;
|
|
7644
7641
|
/** @description Whether the session is closed. */
|
|
7645
7642
|
is_closed: boolean;
|
|
7646
7643
|
/** @description For a manager closed by rollover, the manager session that took over. */
|
|
@@ -7755,9 +7752,9 @@ export interface components {
|
|
|
7755
7752
|
team_id: string;
|
|
7756
7753
|
};
|
|
7757
7754
|
CreateAlarmRequest: {
|
|
7758
|
-
/** @description
|
|
7755
|
+
/** @description Why the alarm fires, in at most 200 characters, e.g. "retry the export once the rate limit resets". It is set once and cannot be edited. Keep state and rules out of it. */
|
|
7759
7756
|
message: string;
|
|
7760
|
-
/** @description
|
|
7757
|
+
/** @description Whole minutes, hours or days (m/h/d), e.g. "15m", "2h", "1d" or "1h30m", between 5m and 72h. Seconds are not supported: use "5m", not "90s" or "300s". */
|
|
7761
7758
|
delay: string;
|
|
7762
7759
|
};
|
|
7763
7760
|
CreateApiKeyRequest: {
|
|
@@ -7869,6 +7866,12 @@ export interface components {
|
|
|
7869
7866
|
* @enum {string}
|
|
7870
7867
|
*/
|
|
7871
7868
|
reporter_type: "github_pr_comment";
|
|
7869
|
+
} | {
|
|
7870
|
+
/**
|
|
7871
|
+
* @description Tracks the test branch named after the head branch of the app pull request the run was triggered for (`trigger.event` `pull_request`), and keeps the `Empirical linked test changes` check on that pull request up to date: it passes when the test branch has nothing left to merge and fails while it has unmerged commits. The pull request's latest run decides whether it is tracked. Does nothing for runs not triggered by a pull request. Needs `build` with a repository the GitHub Reporter app is installed on.
|
|
7872
|
+
* @enum {string}
|
|
7873
|
+
*/
|
|
7874
|
+
reporter_type: "github_linked_changes";
|
|
7872
7875
|
} | {
|
|
7873
7876
|
/**
|
|
7874
7877
|
* @description Emails a report when the run ends to every user whose email domain is one of the organization's email domains.
|
|
@@ -8119,12 +8122,29 @@ export interface components {
|
|
|
8119
8122
|
/** @description Channel names to subscribe to, e.g. `chat-sessions-project-<id>-<env>`, `test-run-<id>-<env>` or `user-<user uuid>-<env>`. */
|
|
8120
8123
|
channels: string[];
|
|
8121
8124
|
};
|
|
8122
|
-
|
|
8123
|
-
/**
|
|
8124
|
-
|
|
8125
|
-
|
|
8126
|
-
|
|
8127
|
-
|
|
8125
|
+
CreateRuleRequest: {
|
|
8126
|
+
/** @enum {string|null} */
|
|
8127
|
+
verdict?: "app" | "test" | "env" | null;
|
|
8128
|
+
description: string;
|
|
8129
|
+
/** @description Playwright test IDs in scope. Leave empty with a matcher to cover every test. */
|
|
8130
|
+
test_ids?: string[];
|
|
8131
|
+
matcher?: {
|
|
8132
|
+
/** @description Plain-JS async function source: `async ({ testRun, testCase, traceUtils }) => boolean`. */
|
|
8133
|
+
source: string;
|
|
8134
|
+
/** @description Human-readable summary of what the matcher matches and why; re-articulated on every edit. */
|
|
8135
|
+
description: string;
|
|
8136
|
+
/**
|
|
8137
|
+
* @description Input-contract version the source was written against.
|
|
8138
|
+
* @default 1
|
|
8139
|
+
*/
|
|
8140
|
+
contract_version: number;
|
|
8141
|
+
} | null;
|
|
8142
|
+
/** Format: date-time */
|
|
8143
|
+
until: string;
|
|
8144
|
+
scoped_to_environment_id?: number | null;
|
|
8145
|
+
/** @enum {string} */
|
|
8146
|
+
effect: "snooze" | "annotate";
|
|
8147
|
+
created_from_test_run_id?: number;
|
|
8128
8148
|
};
|
|
8129
8149
|
CreateSlackThreadEntityLinkRequest: {
|
|
8130
8150
|
/**
|
|
@@ -8199,6 +8219,34 @@ export interface components {
|
|
|
8199
8219
|
task: components["schemas"]["Task"];
|
|
8200
8220
|
};
|
|
8201
8221
|
};
|
|
8222
|
+
CreateTestReportUploadUrlsRequest: {
|
|
8223
|
+
/** @description Report run ID (the folder under the project). */
|
|
8224
|
+
run_id: string;
|
|
8225
|
+
files: {
|
|
8226
|
+
/** @description Path inside the run's report folder, e.g. `data/abc.png`. */
|
|
8227
|
+
path: string;
|
|
8228
|
+
/**
|
|
8229
|
+
* @description MIME type the upload sends as `Content-Type`.
|
|
8230
|
+
* @default application/octet-stream
|
|
8231
|
+
*/
|
|
8232
|
+
content_type: string;
|
|
8233
|
+
/**
|
|
8234
|
+
* @description Storage class. When set, the upload must send the same `x-amz-storage-class` header.
|
|
8235
|
+
* @enum {string}
|
|
8236
|
+
*/
|
|
8237
|
+
storage_class?: "STANDARD" | "STANDARD_IA";
|
|
8238
|
+
}[];
|
|
8239
|
+
};
|
|
8240
|
+
CreateTestReportUploadUrlsResponse: {
|
|
8241
|
+
/** @description Response payload. */
|
|
8242
|
+
data: {
|
|
8243
|
+
files: {
|
|
8244
|
+
path: string;
|
|
8245
|
+
/** @description Presigned PUT URL, valid for 1 hour. */
|
|
8246
|
+
upload_url: string;
|
|
8247
|
+
}[];
|
|
8248
|
+
};
|
|
8249
|
+
};
|
|
8202
8250
|
CreateTestRunResponse: {
|
|
8203
8251
|
data: {
|
|
8204
8252
|
trigger: {
|
|
@@ -8600,6 +8648,8 @@ export interface components {
|
|
|
8600
8648
|
DeleteMemoryRequest: {
|
|
8601
8649
|
/** @description Why this change was made (max 500 characters). Shown in the session's memory change report. */
|
|
8602
8650
|
reason?: string | null;
|
|
8651
|
+
/** @description The memory `version` this write is based on. When set and the memory has moved past it, the write is refused with a 409 carrying the current memory. Omit to write unconditionally. */
|
|
8652
|
+
expected_version?: number;
|
|
8603
8653
|
};
|
|
8604
8654
|
DeleteProjectResourceResponse: {
|
|
8605
8655
|
/** @description Response payload. */
|
|
@@ -8977,6 +9027,12 @@ export interface components {
|
|
|
8977
9027
|
* @enum {string}
|
|
8978
9028
|
*/
|
|
8979
9029
|
reporter_type: "github_pr_comment";
|
|
9030
|
+
} | {
|
|
9031
|
+
/**
|
|
9032
|
+
* @description Tracks the test branch named after the head branch of the app pull request the run was triggered for (`trigger.event` `pull_request`), and keeps the `Empirical linked test changes` check on that pull request up to date: it passes when the test branch has nothing left to merge and fails while it has unmerged commits. The pull request's latest run decides whether it is tracked. Does nothing for runs not triggered by a pull request. Needs `build` with a repository the GitHub Reporter app is installed on.
|
|
9033
|
+
* @enum {string}
|
|
9034
|
+
*/
|
|
9035
|
+
reporter_type: "github_linked_changes";
|
|
8980
9036
|
} | {
|
|
8981
9037
|
/**
|
|
8982
9038
|
* @description Emails a report when the run ends to every user whose email domain is one of the organization's email domains.
|
|
@@ -9311,6 +9367,12 @@ export interface components {
|
|
|
9311
9367
|
failing_line: string | null;
|
|
9312
9368
|
/** @description ISO 8601 test completion time from the run ledger. */
|
|
9313
9369
|
created_at: string | null;
|
|
9370
|
+
/** @description ISO 8601 start time of the latest attempt reported by the runner. While `is_retrying` is true and `started_retry` equals the number of recorded attempts, that attempt is still running. */
|
|
9371
|
+
started_at: string | null;
|
|
9372
|
+
/** @description 0-based retry index of the attempt `started_at` belongs to; null when no start was reported. */
|
|
9373
|
+
started_retry: number | null;
|
|
9374
|
+
/** @description Configured retry budget (`test.retries`); the case runs at most `max_retries + 1` attempts. */
|
|
9375
|
+
max_retries: number | null;
|
|
9314
9376
|
/** @description SHA of the last commit before the run started. */
|
|
9315
9377
|
last_commit_before_run_started_at: string | null;
|
|
9316
9378
|
/** @description Snoozes matching this case at read time. */
|
|
@@ -10568,6 +10630,48 @@ export interface components {
|
|
|
10568
10630
|
*/
|
|
10569
10631
|
seen_at?: string;
|
|
10570
10632
|
};
|
|
10633
|
+
MatchRulesRequest: {
|
|
10634
|
+
test_run_id: number;
|
|
10635
|
+
/** @description Case (Playwright test id) to match. */
|
|
10636
|
+
pw_test_id: string;
|
|
10637
|
+
/** @description Dry-run this matcher source on the case instead of the project's rules. Not scoped and not cached. */
|
|
10638
|
+
source?: string;
|
|
10639
|
+
};
|
|
10640
|
+
MatchRulesResponse: {
|
|
10641
|
+
/** @description Response payload. */
|
|
10642
|
+
data: {
|
|
10643
|
+
test_run_id: number;
|
|
10644
|
+
pw_test_id: string;
|
|
10645
|
+
applying_rule_ids: number[];
|
|
10646
|
+
results: {
|
|
10647
|
+
/** @description Null for a dry-run source. */
|
|
10648
|
+
rule_id: number | null;
|
|
10649
|
+
description: string | null;
|
|
10650
|
+
/** @enum {string|null} */
|
|
10651
|
+
effect: "snooze" | "annotate" | null;
|
|
10652
|
+
/** @enum {string|null} */
|
|
10653
|
+
verdict: "app" | "test" | "env" | null;
|
|
10654
|
+
/**
|
|
10655
|
+
* @description `scope`: the rule lists this test and has no matcher. `matcher`: the rule's matcher ran.
|
|
10656
|
+
* @enum {string}
|
|
10657
|
+
*/
|
|
10658
|
+
via: "scope" | "matcher";
|
|
10659
|
+
applies: boolean;
|
|
10660
|
+
/** @description The matcher result came from an earlier run on this case. */
|
|
10661
|
+
cached: boolean;
|
|
10662
|
+
error?: string;
|
|
10663
|
+
error_kind?: string;
|
|
10664
|
+
duration_ms?: number;
|
|
10665
|
+
logs: string[];
|
|
10666
|
+
/** @description Trace reads that threw: a false with trace errors means the matcher could not tell. */
|
|
10667
|
+
trace_errors: {
|
|
10668
|
+
fn: string;
|
|
10669
|
+
message: string;
|
|
10670
|
+
swallowed?: boolean;
|
|
10671
|
+
}[];
|
|
10672
|
+
}[];
|
|
10673
|
+
};
|
|
10674
|
+
};
|
|
10571
10675
|
MemberByTestRun: {
|
|
10572
10676
|
/** @description Test case ID (normalized 41-character Playwright test id). */
|
|
10573
10677
|
test_case_id: string;
|
|
@@ -10609,6 +10713,8 @@ export interface components {
|
|
|
10609
10713
|
name: string | null;
|
|
10610
10714
|
description: string | null;
|
|
10611
10715
|
content: string;
|
|
10716
|
+
/** @description Latest version number (1 = create); every saved edit increments it. Send it back as `expected_version` to update or delete only if nobody else wrote in between. */
|
|
10717
|
+
version: number;
|
|
10612
10718
|
source: string | null;
|
|
10613
10719
|
source_path: string | null;
|
|
10614
10720
|
/** @description ID of the chat session the memory was created in, or null if not written from a sandbox session. */
|
|
@@ -10800,6 +10906,41 @@ export interface components {
|
|
|
10800
10906
|
/** @description ISO 8601 timestamp. */
|
|
10801
10907
|
created_at: string;
|
|
10802
10908
|
};
|
|
10909
|
+
MemoryVersionConflictResponse: {
|
|
10910
|
+
data: unknown;
|
|
10911
|
+
error: {
|
|
10912
|
+
message: string;
|
|
10913
|
+
/** @description The memory as it is now, with its current `version` and content. */
|
|
10914
|
+
memory: {
|
|
10915
|
+
id: number;
|
|
10916
|
+
project_id: number;
|
|
10917
|
+
format_version: number;
|
|
10918
|
+
name: string | null;
|
|
10919
|
+
description: string | null;
|
|
10920
|
+
content: string;
|
|
10921
|
+
/** @description Latest version number (1 = create); every saved edit increments it. Send it back as `expected_version` to update or delete only if nobody else wrote in between. */
|
|
10922
|
+
version: number;
|
|
10923
|
+
source: string | null;
|
|
10924
|
+
source_path: string | null;
|
|
10925
|
+
/** @description ID of the chat session the memory was created in, or null if not written from a sandbox session. */
|
|
10926
|
+
source_chat_session_id: number | null;
|
|
10927
|
+
created_by: string | null;
|
|
10928
|
+
updated_by: string | null;
|
|
10929
|
+
/** @description ISO 8601 timestamp. */
|
|
10930
|
+
created_at: string;
|
|
10931
|
+
/** @description ISO 8601 timestamp. */
|
|
10932
|
+
updated_at: string;
|
|
10933
|
+
/** @description ISO 8601 timestamp when the memory was soft-deleted, or null if live. */
|
|
10934
|
+
deleted_at: string | null;
|
|
10935
|
+
/** @description User who deleted the memory, or null. */
|
|
10936
|
+
deleted_by: string | null;
|
|
10937
|
+
/** @description Chat session that deleted the memory, or null if not deleted from a sandbox session. */
|
|
10938
|
+
deleted_by_chat_session_id: number | null;
|
|
10939
|
+
/** @description Reason given for the delete, or null. */
|
|
10940
|
+
delete_reason: string | null;
|
|
10941
|
+
};
|
|
10942
|
+
};
|
|
10943
|
+
};
|
|
10803
10944
|
MemoryVersionListResponse: {
|
|
10804
10945
|
/** @description Response payload. */
|
|
10805
10946
|
data: {
|
|
@@ -11819,6 +11960,42 @@ export interface components {
|
|
|
11819
11960
|
plan: components["schemas"]["Plan"];
|
|
11820
11961
|
};
|
|
11821
11962
|
};
|
|
11963
|
+
PlatformIssue: {
|
|
11964
|
+
id: number;
|
|
11965
|
+
project_id: number;
|
|
11966
|
+
/**
|
|
11967
|
+
* @description `bug`: the platform misbehaves and the memory holds a workaround; fixed in code. `missing_from_skill`: platform how-to that no skill covers; fixed by updating a skill.
|
|
11968
|
+
* @enum {string}
|
|
11969
|
+
*/
|
|
11970
|
+
kind: "bug" | "missing_from_skill";
|
|
11971
|
+
title: string;
|
|
11972
|
+
detail: string;
|
|
11973
|
+
skill: string | null;
|
|
11974
|
+
memory_id: number | null;
|
|
11975
|
+
memory_version: number | null;
|
|
11976
|
+
memory_name: string | null;
|
|
11977
|
+
memory_description: string | null;
|
|
11978
|
+
memory_content: string | null;
|
|
11979
|
+
/** @description Chat sessions that wrote any version of the memory. */
|
|
11980
|
+
memory_source_chat_session_ids: number[];
|
|
11981
|
+
reported_by: string | null;
|
|
11982
|
+
reported_by_chat_session_id: number | null;
|
|
11983
|
+
created_at: string;
|
|
11984
|
+
resolved_at: string | null;
|
|
11985
|
+
resolved_by: string | null;
|
|
11986
|
+
};
|
|
11987
|
+
PlatformIssueListResponse: {
|
|
11988
|
+
/** @description Response payload. */
|
|
11989
|
+
data: {
|
|
11990
|
+
issues: components["schemas"]["PlatformIssue"][];
|
|
11991
|
+
};
|
|
11992
|
+
};
|
|
11993
|
+
PlatformIssueResponse: {
|
|
11994
|
+
/** @description Response payload. */
|
|
11995
|
+
data: {
|
|
11996
|
+
issue: components["schemas"]["PlatformIssue"];
|
|
11997
|
+
};
|
|
11998
|
+
};
|
|
11822
11999
|
PlaywrightUtilsProxyError: {
|
|
11823
12000
|
/** @description Error message — the provider API key is not configured, or the proxied request failed. */
|
|
11824
12001
|
error: string;
|
|
@@ -12055,6 +12232,21 @@ export interface components {
|
|
|
12055
12232
|
created: boolean;
|
|
12056
12233
|
};
|
|
12057
12234
|
};
|
|
12235
|
+
ProjectNpmSnapshotUrlsBody: {
|
|
12236
|
+
/** @description Hex SHA-256 of the repo's package-lock.json. */
|
|
12237
|
+
lockfile_sha256: string;
|
|
12238
|
+
/** @description `<platform>-abi<node ABI>` of the sandbox, e.g. `linux-abi127`. */
|
|
12239
|
+
runtime: string;
|
|
12240
|
+
};
|
|
12241
|
+
ProjectNpmSnapshotUrlsResponse: {
|
|
12242
|
+
/** @description Response payload. */
|
|
12243
|
+
data: {
|
|
12244
|
+
/** @description Presigned GETs to try in order. Per bucket, nearest to the sandboxes first: the tarball test runs share across projects, then this project's own. */
|
|
12245
|
+
restore_urls: string[];
|
|
12246
|
+
/** @description Presigned PUT for this project's tarball in the bucket nearest the sandboxes. */
|
|
12247
|
+
upload_url: string;
|
|
12248
|
+
};
|
|
12249
|
+
};
|
|
12058
12250
|
ProjectOrgResponse: {
|
|
12059
12251
|
/** @description Response payload. */
|
|
12060
12252
|
data: {
|
|
@@ -12236,6 +12428,24 @@ export interface components {
|
|
|
12236
12428
|
project: components["schemas"]["Project"];
|
|
12237
12429
|
};
|
|
12238
12430
|
};
|
|
12431
|
+
ProtectionRuleset: {
|
|
12432
|
+
id: number;
|
|
12433
|
+
name: string;
|
|
12434
|
+
/** @description Where the ruleset is defined: `Repository`, `Organization` or `Enterprise`. */
|
|
12435
|
+
source_type: string | null;
|
|
12436
|
+
/** @description The repository, organization or enterprise defining it. */
|
|
12437
|
+
source: string | null;
|
|
12438
|
+
html_url: string;
|
|
12439
|
+
/**
|
|
12440
|
+
* @description Whether the Empirical GitHub App is on the ruleset's bypass list, and in which mode. `unknown` when GitHub did not say.
|
|
12441
|
+
* @enum {string}
|
|
12442
|
+
*/
|
|
12443
|
+
bypass: "always" | "pull_requests_only" | "never" | "exempt" | "unknown";
|
|
12444
|
+
/** @description Rules that hold back pull requests Empirical merges into the default branch, e.g. "Requires 1 approval": approvals, status checks, required workflows and scans, restricted updates, linear history, signed commits and commit patterns. */
|
|
12445
|
+
rules: string[];
|
|
12446
|
+
/** @description Rules that do not affect how Empirical merges, e.g. "Blocks force pushes". */
|
|
12447
|
+
other_rules: string[];
|
|
12448
|
+
};
|
|
12239
12449
|
PutRunManifestRequest: {
|
|
12240
12450
|
/** @description Structured scheduled tests. */
|
|
12241
12451
|
tests: {
|
|
@@ -12276,28 +12486,6 @@ export interface components {
|
|
|
12276
12486
|
/** @description Reason the realtime service is unavailable. */
|
|
12277
12487
|
error: string;
|
|
12278
12488
|
};
|
|
12279
|
-
RebuildSandboxSnapshotsByTemplateRequest: {
|
|
12280
|
-
/**
|
|
12281
|
-
* @description Base template whose snapshots to rebuild.
|
|
12282
|
-
* @enum {string}
|
|
12283
|
-
*/
|
|
12284
|
-
base_template: "pi-sandbox";
|
|
12285
|
-
};
|
|
12286
|
-
RebuildSandboxSnapshotsRequest: {
|
|
12287
|
-
/**
|
|
12288
|
-
* @description Sandbox provider. Only `e2b` is supported.
|
|
12289
|
-
* @default e2b
|
|
12290
|
-
* @enum {string}
|
|
12291
|
-
*/
|
|
12292
|
-
provider: "e2b" | "docker" | "vercel";
|
|
12293
|
-
/**
|
|
12294
|
-
* @description Base template whose snapshots to rebuild.
|
|
12295
|
-
* @enum {string}
|
|
12296
|
-
*/
|
|
12297
|
-
base_template: "pi-sandbox";
|
|
12298
|
-
/** @description Only rebuild these projects. Projects without a snapshot for the template are skipped. */
|
|
12299
|
-
project_ids?: number[];
|
|
12300
|
-
};
|
|
12301
12489
|
RecentBranch: {
|
|
12302
12490
|
/** @description Branch name. */
|
|
12303
12491
|
name: string;
|
|
@@ -12403,18 +12591,18 @@ export interface components {
|
|
|
12403
12591
|
/** @description Stable check id. */
|
|
12404
12592
|
id: string;
|
|
12405
12593
|
/**
|
|
12406
|
-
* @description `error`: Empirical breaks without it. `warning`: recommended.
|
|
12594
|
+
* @description `error`: Empirical breaks without it. `warning`: recommended.
|
|
12407
12595
|
* @enum {string}
|
|
12408
12596
|
*/
|
|
12409
|
-
level: "error" | "warning"
|
|
12597
|
+
level: "error" | "warning";
|
|
12410
12598
|
/**
|
|
12411
|
-
* @description `unknown` when GitHub
|
|
12599
|
+
* @description `unknown` when GitHub did not let the Empirical app read what the check needs.
|
|
12412
12600
|
* @enum {string}
|
|
12413
12601
|
*/
|
|
12414
12602
|
status: "pass" | "fail" | "unknown";
|
|
12415
12603
|
/** @description What was found, e.g. "Squash merging is on". Worded the same way whether the check passes or fails. */
|
|
12416
12604
|
title: string;
|
|
12417
|
-
/** @description Why it matters, or what
|
|
12605
|
+
/** @description Why it matters, or what could not be read. */
|
|
12418
12606
|
detail: string;
|
|
12419
12607
|
/** @description Where to change it in GitHub, in plain language. */
|
|
12420
12608
|
fix_hint: string | null;
|
|
@@ -12428,8 +12616,36 @@ export interface components {
|
|
|
12428
12616
|
html_url: string;
|
|
12429
12617
|
};
|
|
12430
12618
|
checks: components["schemas"]["RepoSettingsCheck"][];
|
|
12431
|
-
/** @description
|
|
12432
|
-
|
|
12619
|
+
/** @description Null when the repository could not be read. */
|
|
12620
|
+
default_branch_protection: {
|
|
12621
|
+
branch: string;
|
|
12622
|
+
rulesets: {
|
|
12623
|
+
/** @enum {string} */
|
|
12624
|
+
kind: "ok";
|
|
12625
|
+
items: components["schemas"]["ProtectionRuleset"][];
|
|
12626
|
+
} | {
|
|
12627
|
+
/** @enum {string} */
|
|
12628
|
+
kind: "unavailable";
|
|
12629
|
+
} | {
|
|
12630
|
+
/** @enum {string} */
|
|
12631
|
+
kind: "error";
|
|
12632
|
+
message: string;
|
|
12633
|
+
};
|
|
12634
|
+
classic: {
|
|
12635
|
+
/** @enum {string} */
|
|
12636
|
+
kind: "ok";
|
|
12637
|
+
rules: string[];
|
|
12638
|
+
} | {
|
|
12639
|
+
/** @enum {string} */
|
|
12640
|
+
kind: "none";
|
|
12641
|
+
} | {
|
|
12642
|
+
/** @enum {string} */
|
|
12643
|
+
kind: "unavailable";
|
|
12644
|
+
} | {
|
|
12645
|
+
/** @enum {string} */
|
|
12646
|
+
kind: "unreadable";
|
|
12647
|
+
};
|
|
12648
|
+
} | null;
|
|
12433
12649
|
};
|
|
12434
12650
|
};
|
|
12435
12651
|
RepoTransfer: {
|
|
@@ -12559,6 +12775,27 @@ export interface components {
|
|
|
12559
12775
|
updated_at: string | null;
|
|
12560
12776
|
};
|
|
12561
12777
|
};
|
|
12778
|
+
ReportPlatformIssueRequest: {
|
|
12779
|
+
/**
|
|
12780
|
+
* @description `bug`: the platform misbehaves and the memory holds a workaround; fixed in code. `missing_from_skill`: platform how-to that no skill covers; fixed by updating a skill.
|
|
12781
|
+
* @enum {string}
|
|
12782
|
+
*/
|
|
12783
|
+
kind: "bug" | "missing_from_skill";
|
|
12784
|
+
title: string;
|
|
12785
|
+
detail: string;
|
|
12786
|
+
/** @description Skill that should cover this, if one exists or should exist. */
|
|
12787
|
+
skill?: string | null;
|
|
12788
|
+
/** @description Memory that records the gap. Its id, current version and content are stored with the issue. */
|
|
12789
|
+
memory_name?: string | null;
|
|
12790
|
+
};
|
|
12791
|
+
ReportPlatformIssueResponse: {
|
|
12792
|
+
/** @description Response payload. */
|
|
12793
|
+
data: {
|
|
12794
|
+
issue: components["schemas"]["PlatformIssue"];
|
|
12795
|
+
/** @description False when an open issue of the same kind already exists for this memory; that issue is returned unchanged. */
|
|
12796
|
+
created: boolean;
|
|
12797
|
+
};
|
|
12798
|
+
};
|
|
12562
12799
|
ReporterSlackChannel: {
|
|
12563
12800
|
/** @description Registered channel id, as used in `slack_channel_ids` of a reporter config. */
|
|
12564
12801
|
id: number;
|
|
@@ -12606,6 +12843,12 @@ export interface components {
|
|
|
12606
12843
|
* @enum {string}
|
|
12607
12844
|
*/
|
|
12608
12845
|
reporter_type: "github_pr_comment";
|
|
12846
|
+
} | {
|
|
12847
|
+
/**
|
|
12848
|
+
* @description Tracks the test branch named after the head branch of the app pull request the run was triggered for (`trigger.event` `pull_request`), and keeps the `Empirical linked test changes` check on that pull request up to date: it passes when the test branch has nothing left to merge and fails while it has unmerged commits. The pull request's latest run decides whether it is tracked. Does nothing for runs not triggered by a pull request. Needs `build` with a repository the GitHub Reporter app is installed on.
|
|
12849
|
+
* @enum {string}
|
|
12850
|
+
*/
|
|
12851
|
+
reporter_type: "github_linked_changes";
|
|
12609
12852
|
} | {
|
|
12610
12853
|
/**
|
|
12611
12854
|
* @description Emails a report when the run ends to every user whose email domain is one of the organization's email domains.
|
|
@@ -12753,6 +12996,83 @@ export interface components {
|
|
|
12753
12996
|
description?: string;
|
|
12754
12997
|
}[];
|
|
12755
12998
|
};
|
|
12999
|
+
Rule: {
|
|
13000
|
+
id: number;
|
|
13001
|
+
/**
|
|
13002
|
+
* @description `snooze` counts matching failures as snoozed; `annotate` only labels them.
|
|
13003
|
+
* @enum {string}
|
|
13004
|
+
*/
|
|
13005
|
+
effect: "snooze" | "annotate";
|
|
13006
|
+
/** @enum {string|null} */
|
|
13007
|
+
verdict: "app" | "test" | "env" | null;
|
|
13008
|
+
/** @description One-line title. */
|
|
13009
|
+
description: string | null;
|
|
13010
|
+
test_ids: string[];
|
|
13011
|
+
matcher: {
|
|
13012
|
+
/** @description Plain-JS async function source: `async ({ testRun, testCase, traceUtils }) => boolean`. */
|
|
13013
|
+
source: string;
|
|
13014
|
+
/** @description Human-readable summary of what the matcher matches and why; re-articulated on every edit. */
|
|
13015
|
+
description: string;
|
|
13016
|
+
/**
|
|
13017
|
+
* @description Input-contract version the source was written against.
|
|
13018
|
+
* @default 1
|
|
13019
|
+
*/
|
|
13020
|
+
contract_version: number;
|
|
13021
|
+
} | null;
|
|
13022
|
+
/** @description ISO timestamp the rule ends at. */
|
|
13023
|
+
until: string;
|
|
13024
|
+
scoped_to_environment_id: number | null;
|
|
13025
|
+
created_from_test_run_id: number | null;
|
|
13026
|
+
created_by: string | null;
|
|
13027
|
+
created_via_chat_session_id: number | null;
|
|
13028
|
+
created_at: string;
|
|
13029
|
+
updated_at: string;
|
|
13030
|
+
};
|
|
13031
|
+
RuleListResponse: {
|
|
13032
|
+
data: {
|
|
13033
|
+
rules: components["schemas"]["Rule"][];
|
|
13034
|
+
};
|
|
13035
|
+
pagination: components["schemas"]["Pagination"];
|
|
13036
|
+
};
|
|
13037
|
+
RuleResponse: {
|
|
13038
|
+
/** @description Response payload. */
|
|
13039
|
+
data: {
|
|
13040
|
+
rule: components["schemas"]["Rule"];
|
|
13041
|
+
};
|
|
13042
|
+
};
|
|
13043
|
+
RuleRevision: {
|
|
13044
|
+
id: number;
|
|
13045
|
+
/** @enum {string} */
|
|
13046
|
+
action: "created" | "updated" | "deleted";
|
|
13047
|
+
/** @enum {string} */
|
|
13048
|
+
effect: "snooze" | "annotate";
|
|
13049
|
+
/** @enum {string|null} */
|
|
13050
|
+
verdict: "app" | "test" | "env" | null;
|
|
13051
|
+
description: string | null;
|
|
13052
|
+
test_ids: string[];
|
|
13053
|
+
matcher: {
|
|
13054
|
+
/** @description Plain-JS async function source: `async ({ testRun, testCase, traceUtils }) => boolean`. */
|
|
13055
|
+
source: string;
|
|
13056
|
+
/** @description Human-readable summary of what the matcher matches and why; re-articulated on every edit. */
|
|
13057
|
+
description: string;
|
|
13058
|
+
/**
|
|
13059
|
+
* @description Input-contract version the source was written against.
|
|
13060
|
+
* @default 1
|
|
13061
|
+
*/
|
|
13062
|
+
contract_version: number;
|
|
13063
|
+
} | null;
|
|
13064
|
+
until: string | null;
|
|
13065
|
+
scoped_to_environment_id: number | null;
|
|
13066
|
+
changed_by: string | null;
|
|
13067
|
+
changed_via_chat_session_id: number | null;
|
|
13068
|
+
created_at: string;
|
|
13069
|
+
};
|
|
13070
|
+
RuleRevisionListResponse: {
|
|
13071
|
+
/** @description Response payload. */
|
|
13072
|
+
data: {
|
|
13073
|
+
revisions: components["schemas"]["RuleRevision"][];
|
|
13074
|
+
};
|
|
13075
|
+
};
|
|
12756
13076
|
RunManifestResponse: {
|
|
12757
13077
|
/** @description Response payload. */
|
|
12758
13078
|
data: {
|
|
@@ -12954,37 +13274,14 @@ export interface components {
|
|
|
12954
13274
|
created_at: string;
|
|
12955
13275
|
/** @description ISO 8601 last-update timestamp. */
|
|
12956
13276
|
updated_at: string;
|
|
12957
|
-
};
|
|
12958
|
-
SandboxSnapshotListResponse: {
|
|
12959
|
-
/** @description Response payload. */
|
|
12960
|
-
data: {
|
|
12961
|
-
/** @description Snapshots for the project, newest first. */
|
|
12962
|
-
snapshots: components["schemas"]["SandboxSnapshot"][];
|
|
12963
|
-
};
|
|
12964
|
-
};
|
|
12965
|
-
SandboxSnapshotRebuildResponse: {
|
|
12966
|
-
/** @description Response payload. */
|
|
12967
|
-
data: {
|
|
12968
|
-
/** @description Whether rebuilds were enqueued. */
|
|
12969
|
-
triggered: boolean;
|
|
12970
|
-
/** @description Number of projects scheduled for rebuild. */
|
|
12971
|
-
project_count: number;
|
|
12972
|
-
};
|
|
12973
|
-
};
|
|
13277
|
+
} | null;
|
|
12974
13278
|
SandboxSnapshotSourcesUpsertResponse: {
|
|
12975
13279
|
/** @description Response payload. */
|
|
12976
13280
|
data: {
|
|
12977
13281
|
/** @description Number of sources upserted. */
|
|
12978
13282
|
source_count: number;
|
|
12979
13283
|
/** @description The upserted snapshot source rows. */
|
|
12980
|
-
sources:
|
|
12981
|
-
};
|
|
12982
|
-
};
|
|
12983
|
-
SandboxSnapshotTriggeredResponse: {
|
|
12984
|
-
/** @description Response payload. */
|
|
12985
|
-
data: {
|
|
12986
|
-
/** @description Whether snapshot creation was enqueued. */
|
|
12987
|
-
triggered: boolean;
|
|
13284
|
+
sources: components["schemas"]["SandboxSnapshot"][];
|
|
12988
13285
|
};
|
|
12989
13286
|
};
|
|
12990
13287
|
ScheduleSnoozeExpiryRequest: {
|
|
@@ -13101,6 +13398,16 @@ export interface components {
|
|
|
13101
13398
|
data: {
|
|
13102
13399
|
text: string;
|
|
13103
13400
|
};
|
|
13401
|
+
} | {
|
|
13402
|
+
id: string;
|
|
13403
|
+
/** @enum {string} */
|
|
13404
|
+
kind: "thought";
|
|
13405
|
+
timestamp: string;
|
|
13406
|
+
seqFrom?: number;
|
|
13407
|
+
seqTo?: number;
|
|
13408
|
+
data: {
|
|
13409
|
+
texts: string[];
|
|
13410
|
+
};
|
|
13104
13411
|
} | {
|
|
13105
13412
|
id: string;
|
|
13106
13413
|
/** @enum {string} */
|
|
@@ -13130,6 +13437,24 @@ export interface components {
|
|
|
13130
13437
|
toolCallId: string;
|
|
13131
13438
|
name: string;
|
|
13132
13439
|
argsSummary: string;
|
|
13440
|
+
label: string;
|
|
13441
|
+
durationMs: number | null;
|
|
13442
|
+
changedLines?: {
|
|
13443
|
+
added: number;
|
|
13444
|
+
removed: number;
|
|
13445
|
+
};
|
|
13446
|
+
commitHash?: string;
|
|
13447
|
+
background?: {
|
|
13448
|
+
jobId: string;
|
|
13449
|
+
end?: {
|
|
13450
|
+
jobId: string;
|
|
13451
|
+
exitCode: number | null;
|
|
13452
|
+
signal: string | null;
|
|
13453
|
+
timedOut: boolean;
|
|
13454
|
+
durationMs: number;
|
|
13455
|
+
lost?: boolean;
|
|
13456
|
+
};
|
|
13457
|
+
};
|
|
13133
13458
|
failed: boolean;
|
|
13134
13459
|
running: boolean;
|
|
13135
13460
|
};
|
|
@@ -13234,7 +13559,7 @@ export interface components {
|
|
|
13234
13559
|
/** @enum {string} */
|
|
13235
13560
|
kind: "event_subscription";
|
|
13236
13561
|
delivery: {
|
|
13237
|
-
instruction
|
|
13562
|
+
instruction?: string;
|
|
13238
13563
|
event: {
|
|
13239
13564
|
id: string;
|
|
13240
13565
|
type: string;
|
|
@@ -13282,6 +13607,7 @@ export interface components {
|
|
|
13282
13607
|
signal: string | null;
|
|
13283
13608
|
timedOut: boolean;
|
|
13284
13609
|
durationMs: number;
|
|
13610
|
+
lost?: boolean;
|
|
13285
13611
|
};
|
|
13286
13612
|
} | {
|
|
13287
13613
|
id: string;
|
|
@@ -14085,8 +14411,6 @@ export interface components {
|
|
|
14085
14411
|
impacted_tests: unknown[];
|
|
14086
14412
|
/** @description Whether the agent is awaiting user input. */
|
|
14087
14413
|
ask_user_for_input: boolean | null;
|
|
14088
|
-
/** @description Langfuse trace ID for observability. */
|
|
14089
|
-
langfuse_trace_id: string | null;
|
|
14090
14414
|
/** @description Whether the session is closed. */
|
|
14091
14415
|
is_closed: boolean;
|
|
14092
14416
|
/** @description Feature flags active for this session. */
|
|
@@ -14115,8 +14439,6 @@ export interface components {
|
|
|
14115
14439
|
impacted_tests: unknown[];
|
|
14116
14440
|
/** @description Whether the agent is awaiting user input. */
|
|
14117
14441
|
ask_user_for_input: boolean | null;
|
|
14118
|
-
/** @description Langfuse trace ID for observability. */
|
|
14119
|
-
langfuse_trace_id: string | null;
|
|
14120
14442
|
/** @description Whether the session is closed. */
|
|
14121
14443
|
is_closed: boolean;
|
|
14122
14444
|
/** @description Feature flags active for this session. */
|
|
@@ -14542,6 +14864,12 @@ export interface components {
|
|
|
14542
14864
|
failing_line: string | null;
|
|
14543
14865
|
/** @description ISO 8601 test completion time from the run ledger. */
|
|
14544
14866
|
created_at: string | null;
|
|
14867
|
+
/** @description ISO 8601 start time of the latest attempt reported by the runner. While `is_retrying` is true and `started_retry` equals the number of recorded attempts, that attempt is still running. */
|
|
14868
|
+
started_at: string | null;
|
|
14869
|
+
/** @description 0-based retry index of the attempt `started_at` belongs to; null when no start was reported. */
|
|
14870
|
+
started_retry: number | null;
|
|
14871
|
+
/** @description Configured retry budget (`test.retries`); the case runs at most `max_retries + 1` attempts. */
|
|
14872
|
+
max_retries: number | null;
|
|
14545
14873
|
/** @description SHA of the last commit before the run started. */
|
|
14546
14874
|
last_commit_before_run_started_at: string | null;
|
|
14547
14875
|
/** @description Snoozes matching this case at read time. */
|
|
@@ -14658,8 +14986,6 @@ export interface components {
|
|
|
14658
14986
|
model: string | null;
|
|
14659
14987
|
/** @description Whether the agent is awaiting user input. */
|
|
14660
14988
|
ask_user_for_input: boolean | null;
|
|
14661
|
-
/** @description Langfuse trace ID. */
|
|
14662
|
-
langfuse_trace_id: string | null;
|
|
14663
14989
|
/** @description Whether the session is closed. */
|
|
14664
14990
|
is_closed: boolean;
|
|
14665
14991
|
/** @description For a manager closed by rollover, the manager session that took over. */
|
|
@@ -14691,6 +15017,8 @@ export interface components {
|
|
|
14691
15017
|
* @enum {string}
|
|
14692
15018
|
*/
|
|
14693
15019
|
pr_status: "unopened" | "open" | "opened" | "closed" | "merged";
|
|
15020
|
+
/** @description Number of PRs the session has opened. */
|
|
15021
|
+
pr_count: number;
|
|
14694
15022
|
/** @description Name of the owning project. */
|
|
14695
15023
|
project_name: string | null;
|
|
14696
15024
|
/** @description Repository name of the owning project. */
|
|
@@ -14704,10 +15032,10 @@ export interface components {
|
|
|
14704
15032
|
/** @description Unique identifier. */
|
|
14705
15033
|
id: number;
|
|
14706
15034
|
/**
|
|
14707
|
-
* @description Current state of the test run.
|
|
15035
|
+
* @description Current state of the test run. `finalizing`: every test has finished and results are being merged.
|
|
14708
15036
|
* @enum {string}
|
|
14709
15037
|
*/
|
|
14710
|
-
state: "pending" | "queued" | "
|
|
15038
|
+
state: "pending" | "queued" | "cancelling" | "cancelled" | "ended" | "started" | "finalizing" | "error" | "interrupted";
|
|
14711
15039
|
/** @description Total number of test cases. */
|
|
14712
15040
|
total_count: number;
|
|
14713
15041
|
/** @description Number of passed tests. */
|
|
@@ -14867,10 +15195,10 @@ export interface components {
|
|
|
14867
15195
|
/** @description Unique identifier. */
|
|
14868
15196
|
id: number;
|
|
14869
15197
|
/**
|
|
14870
|
-
* @description Current state of the test run.
|
|
15198
|
+
* @description Current state of the test run. `finalizing`: every test has finished and results are being merged.
|
|
14871
15199
|
* @enum {string}
|
|
14872
15200
|
*/
|
|
14873
|
-
state: "pending" | "queued" | "
|
|
15201
|
+
state: "pending" | "queued" | "cancelling" | "cancelled" | "ended" | "started" | "finalizing" | "error" | "interrupted";
|
|
14874
15202
|
/** @description Total number of test cases. */
|
|
14875
15203
|
total_count: number;
|
|
14876
15204
|
/** @description Number of passed tests. */
|
|
@@ -15184,7 +15512,7 @@ export interface components {
|
|
|
15184
15512
|
* @description Current run state (e.g. queued, started, ended).
|
|
15185
15513
|
* @enum {string|null}
|
|
15186
15514
|
*/
|
|
15187
|
-
status: "pending" | "queued" | "cancelling" | "cancelled" | "ended" | "started" | "error" | "interrupted" | null;
|
|
15515
|
+
status: "pending" | "queued" | "cancelling" | "cancelled" | "ended" | "started" | "finalizing" | "error" | "interrupted" | null;
|
|
15188
15516
|
/** @description Arbitrary run metadata key/value pairs. */
|
|
15189
15517
|
metadata: {
|
|
15190
15518
|
[key: string]: string;
|
|
@@ -15431,6 +15759,12 @@ export interface components {
|
|
|
15431
15759
|
* @enum {string}
|
|
15432
15760
|
*/
|
|
15433
15761
|
reporter_type: "github_pr_comment";
|
|
15762
|
+
} | {
|
|
15763
|
+
/**
|
|
15764
|
+
* @description Tracks the test branch named after the head branch of the app pull request the run was triggered for (`trigger.event` `pull_request`), and keeps the `Empirical linked test changes` check on that pull request up to date: it passes when the test branch has nothing left to merge and fails while it has unmerged commits. The pull request's latest run decides whether it is tracked. Does nothing for runs not triggered by a pull request. Needs `build` with a repository the GitHub Reporter app is installed on.
|
|
15765
|
+
* @enum {string}
|
|
15766
|
+
*/
|
|
15767
|
+
reporter_type: "github_linked_changes";
|
|
15434
15768
|
} | {
|
|
15435
15769
|
/**
|
|
15436
15770
|
* @description Emails a report when the run ends to every user whose email domain is one of the organization's email domains.
|
|
@@ -15693,6 +16027,12 @@ export interface components {
|
|
|
15693
16027
|
* @enum {string}
|
|
15694
16028
|
*/
|
|
15695
16029
|
reporter_type: "github_pr_comment";
|
|
16030
|
+
} | {
|
|
16031
|
+
/**
|
|
16032
|
+
* @description Tracks the test branch named after the head branch of the app pull request the run was triggered for (`trigger.event` `pull_request`), and keeps the `Empirical linked test changes` check on that pull request up to date: it passes when the test branch has nothing left to merge and fails while it has unmerged commits. The pull request's latest run decides whether it is tracked. Does nothing for runs not triggered by a pull request. Needs `build` with a repository the GitHub Reporter app is installed on.
|
|
16033
|
+
* @enum {string}
|
|
16034
|
+
*/
|
|
16035
|
+
reporter_type: "github_linked_changes";
|
|
15696
16036
|
} | {
|
|
15697
16037
|
/**
|
|
15698
16038
|
* @description Emails a report when the run ends to every user whose email domain is one of the organization's email domains.
|
|
@@ -15733,6 +16073,8 @@ export interface components {
|
|
|
15733
16073
|
description?: string | null;
|
|
15734
16074
|
/** @description Why this change was made (max 500 characters). Shown in the session's memory change report. */
|
|
15735
16075
|
reason?: string | null;
|
|
16076
|
+
/** @description The memory `version` this write is based on. When set and the memory has moved past it, the write is refused with a 409 carrying the current memory. Omit to write unconditionally. */
|
|
16077
|
+
expected_version?: number;
|
|
15736
16078
|
};
|
|
15737
16079
|
UpdateOrderFormRequest: {
|
|
15738
16080
|
org_id?: number;
|
|
@@ -15804,6 +16146,31 @@ export interface components {
|
|
|
15804
16146
|
*/
|
|
15805
16147
|
status?: "uploaded";
|
|
15806
16148
|
};
|
|
16149
|
+
UpdateRuleRequest: {
|
|
16150
|
+
/** @enum {string|null} */
|
|
16151
|
+
verdict?: "app" | "test" | "env" | null;
|
|
16152
|
+
description?: string;
|
|
16153
|
+
/** @description Playwright test IDs in scope. Leave empty with a matcher to cover every test. */
|
|
16154
|
+
test_ids?: string[];
|
|
16155
|
+
matcher?: {
|
|
16156
|
+
/** @description Plain-JS async function source: `async ({ testRun, testCase, traceUtils }) => boolean`. */
|
|
16157
|
+
source: string;
|
|
16158
|
+
/** @description Human-readable summary of what the matcher matches and why; re-articulated on every edit. */
|
|
16159
|
+
description: string;
|
|
16160
|
+
/**
|
|
16161
|
+
* @description Input-contract version the source was written against.
|
|
16162
|
+
* @default 1
|
|
16163
|
+
*/
|
|
16164
|
+
contract_version: number;
|
|
16165
|
+
} | null;
|
|
16166
|
+
/** Format: date-time */
|
|
16167
|
+
until?: string;
|
|
16168
|
+
scoped_to_environment_id?: number | null;
|
|
16169
|
+
/** @enum {string} */
|
|
16170
|
+
effect?: "snooze" | "annotate";
|
|
16171
|
+
/** @description End the rule now. */
|
|
16172
|
+
expire_now?: boolean;
|
|
16173
|
+
};
|
|
15807
16174
|
UpdateShardStateResponse: {
|
|
15808
16175
|
/** @description Response payload. */
|
|
15809
16176
|
data: {
|
|
@@ -16214,7 +16581,11 @@ export interface operations {
|
|
|
16214
16581
|
branch?: string;
|
|
16215
16582
|
/** @description Restrict to runs created in the last N days. */
|
|
16216
16583
|
interval_in_days?: number;
|
|
16217
|
-
/** @description
|
|
16584
|
+
/** @description Restrict to runs created at or after this time. */
|
|
16585
|
+
created_after?: string;
|
|
16586
|
+
/** @description Restrict to runs created before this time. */
|
|
16587
|
+
created_before?: string;
|
|
16588
|
+
/** @description Filter by run state (e.g. `queued`, `ended`); comma-separated for several. */
|
|
16218
16589
|
state?: string;
|
|
16219
16590
|
/** @description Filter by overall run result. */
|
|
16220
16591
|
result?: "passed" | "failed";
|
|
@@ -20983,461 +21354,6 @@ export interface operations {
|
|
|
20983
21354
|
};
|
|
20984
21355
|
};
|
|
20985
21356
|
};
|
|
20986
|
-
getStaticIps: {
|
|
20987
|
-
parameters: {
|
|
20988
|
-
query: {
|
|
20989
|
-
/** @description Region to look up. One of: ap-south-1. */
|
|
20990
|
-
region: string;
|
|
20991
|
-
};
|
|
20992
|
-
header?: never;
|
|
20993
|
-
path?: never;
|
|
20994
|
-
cookie?: never;
|
|
20995
|
-
};
|
|
20996
|
-
requestBody?: never;
|
|
20997
|
-
responses: {
|
|
20998
|
-
/** @description Static IPs for the region. */
|
|
20999
|
-
200: {
|
|
21000
|
-
headers: {
|
|
21001
|
-
[name: string]: unknown;
|
|
21002
|
-
};
|
|
21003
|
-
content: {
|
|
21004
|
-
"application/json": components["schemas"]["StaticIpsResponse"];
|
|
21005
|
-
};
|
|
21006
|
-
};
|
|
21007
|
-
/** @description Missing or unknown region. */
|
|
21008
|
-
400: {
|
|
21009
|
-
headers: {
|
|
21010
|
-
[name: string]: unknown;
|
|
21011
|
-
};
|
|
21012
|
-
content: {
|
|
21013
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21014
|
-
};
|
|
21015
|
-
};
|
|
21016
|
-
};
|
|
21017
|
-
};
|
|
21018
|
-
listTasks: {
|
|
21019
|
-
parameters: {
|
|
21020
|
-
query?: {
|
|
21021
|
-
/** @description Page number (1-indexed). */
|
|
21022
|
-
page?: number;
|
|
21023
|
-
/** @description Items per page. */
|
|
21024
|
-
per_page?: number;
|
|
21025
|
-
/** @description URL-encoded JSON array of generic filter conditions; malformed input is ignored. */
|
|
21026
|
-
filters?: string;
|
|
21027
|
-
};
|
|
21028
|
-
header?: never;
|
|
21029
|
-
path?: never;
|
|
21030
|
-
cookie?: never;
|
|
21031
|
-
};
|
|
21032
|
-
requestBody?: never;
|
|
21033
|
-
responses: {
|
|
21034
|
-
/** @description Paginated list of tasks. */
|
|
21035
|
-
200: {
|
|
21036
|
-
headers: {
|
|
21037
|
-
[name: string]: unknown;
|
|
21038
|
-
};
|
|
21039
|
-
content: {
|
|
21040
|
-
"application/json": components["schemas"]["TaskListResponse"];
|
|
21041
|
-
};
|
|
21042
|
-
};
|
|
21043
|
-
/** @description Invalid request or missing project scope. */
|
|
21044
|
-
400: {
|
|
21045
|
-
headers: {
|
|
21046
|
-
[name: string]: unknown;
|
|
21047
|
-
};
|
|
21048
|
-
content: {
|
|
21049
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21050
|
-
};
|
|
21051
|
-
};
|
|
21052
|
-
/** @description Project not found or inaccessible. */
|
|
21053
|
-
404: {
|
|
21054
|
-
headers: {
|
|
21055
|
-
[name: string]: unknown;
|
|
21056
|
-
};
|
|
21057
|
-
content: {
|
|
21058
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21059
|
-
};
|
|
21060
|
-
};
|
|
21061
|
-
};
|
|
21062
|
-
};
|
|
21063
|
-
createTask: {
|
|
21064
|
-
parameters: {
|
|
21065
|
-
query?: never;
|
|
21066
|
-
header?: never;
|
|
21067
|
-
path?: never;
|
|
21068
|
-
cookie?: never;
|
|
21069
|
-
};
|
|
21070
|
-
requestBody?: {
|
|
21071
|
-
content: {
|
|
21072
|
-
"application/json": components["schemas"]["CreateTaskRequest"];
|
|
21073
|
-
};
|
|
21074
|
-
};
|
|
21075
|
-
responses: {
|
|
21076
|
-
/** @description The created task. */
|
|
21077
|
-
201: {
|
|
21078
|
-
headers: {
|
|
21079
|
-
[name: string]: unknown;
|
|
21080
|
-
};
|
|
21081
|
-
content: {
|
|
21082
|
-
"application/json": components["schemas"]["CreateTaskResponse"];
|
|
21083
|
-
};
|
|
21084
|
-
};
|
|
21085
|
-
/** @description Missing required fields, no person to own the task, or invalid input. */
|
|
21086
|
-
400: {
|
|
21087
|
-
headers: {
|
|
21088
|
-
[name: string]: unknown;
|
|
21089
|
-
};
|
|
21090
|
-
content: {
|
|
21091
|
-
"application/json": components["schemas"]["CreateTaskError"];
|
|
21092
|
-
};
|
|
21093
|
-
};
|
|
21094
|
-
/** @description Project not found or inaccessible. */
|
|
21095
|
-
404: {
|
|
21096
|
-
headers: {
|
|
21097
|
-
[name: string]: unknown;
|
|
21098
|
-
};
|
|
21099
|
-
content: {
|
|
21100
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21101
|
-
};
|
|
21102
|
-
};
|
|
21103
|
-
/** @description Failed to create task. */
|
|
21104
|
-
500: {
|
|
21105
|
-
headers: {
|
|
21106
|
-
[name: string]: unknown;
|
|
21107
|
-
};
|
|
21108
|
-
content: {
|
|
21109
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21110
|
-
};
|
|
21111
|
-
};
|
|
21112
|
-
};
|
|
21113
|
-
};
|
|
21114
|
-
getTask: {
|
|
21115
|
-
parameters: {
|
|
21116
|
-
query?: never;
|
|
21117
|
-
header?: never;
|
|
21118
|
-
path: {
|
|
21119
|
-
/** @description Task ID. */
|
|
21120
|
-
id: number;
|
|
21121
|
-
};
|
|
21122
|
-
cookie?: never;
|
|
21123
|
-
};
|
|
21124
|
-
requestBody?: never;
|
|
21125
|
-
responses: {
|
|
21126
|
-
/** @description The task. */
|
|
21127
|
-
200: {
|
|
21128
|
-
headers: {
|
|
21129
|
-
[name: string]: unknown;
|
|
21130
|
-
};
|
|
21131
|
-
content: {
|
|
21132
|
-
"application/json": components["schemas"]["TaskResponse"];
|
|
21133
|
-
};
|
|
21134
|
-
};
|
|
21135
|
-
/** @description Invalid task ID. */
|
|
21136
|
-
400: {
|
|
21137
|
-
headers: {
|
|
21138
|
-
[name: string]: unknown;
|
|
21139
|
-
};
|
|
21140
|
-
content: {
|
|
21141
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21142
|
-
};
|
|
21143
|
-
};
|
|
21144
|
-
/** @description Task not found. */
|
|
21145
|
-
404: {
|
|
21146
|
-
headers: {
|
|
21147
|
-
[name: string]: unknown;
|
|
21148
|
-
};
|
|
21149
|
-
content: {
|
|
21150
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21151
|
-
};
|
|
21152
|
-
};
|
|
21153
|
-
};
|
|
21154
|
-
};
|
|
21155
|
-
deleteTask: {
|
|
21156
|
-
parameters: {
|
|
21157
|
-
query?: never;
|
|
21158
|
-
header?: never;
|
|
21159
|
-
path: {
|
|
21160
|
-
/** @description Task ID. */
|
|
21161
|
-
id: number;
|
|
21162
|
-
};
|
|
21163
|
-
cookie?: never;
|
|
21164
|
-
};
|
|
21165
|
-
requestBody?: never;
|
|
21166
|
-
responses: {
|
|
21167
|
-
/** @description The deleted task ID. */
|
|
21168
|
-
200: {
|
|
21169
|
-
headers: {
|
|
21170
|
-
[name: string]: unknown;
|
|
21171
|
-
};
|
|
21172
|
-
content: {
|
|
21173
|
-
"application/json": components["schemas"]["DeletedTaskResponse"];
|
|
21174
|
-
};
|
|
21175
|
-
};
|
|
21176
|
-
/** @description Invalid task ID. */
|
|
21177
|
-
400: {
|
|
21178
|
-
headers: {
|
|
21179
|
-
[name: string]: unknown;
|
|
21180
|
-
};
|
|
21181
|
-
content: {
|
|
21182
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21183
|
-
};
|
|
21184
|
-
};
|
|
21185
|
-
/** @description Task not found or not deleted. */
|
|
21186
|
-
404: {
|
|
21187
|
-
headers: {
|
|
21188
|
-
[name: string]: unknown;
|
|
21189
|
-
};
|
|
21190
|
-
content: {
|
|
21191
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21192
|
-
};
|
|
21193
|
-
};
|
|
21194
|
-
};
|
|
21195
|
-
};
|
|
21196
|
-
updateTask: {
|
|
21197
|
-
parameters: {
|
|
21198
|
-
query?: never;
|
|
21199
|
-
header?: never;
|
|
21200
|
-
path: {
|
|
21201
|
-
/** @description Task ID. */
|
|
21202
|
-
id: number;
|
|
21203
|
-
};
|
|
21204
|
-
cookie?: never;
|
|
21205
|
-
};
|
|
21206
|
-
requestBody?: {
|
|
21207
|
-
content: {
|
|
21208
|
-
"application/json": components["schemas"]["UpdateTaskRequest"];
|
|
21209
|
-
};
|
|
21210
|
-
};
|
|
21211
|
-
responses: {
|
|
21212
|
-
/** @description The updated task. */
|
|
21213
|
-
200: {
|
|
21214
|
-
headers: {
|
|
21215
|
-
[name: string]: unknown;
|
|
21216
|
-
};
|
|
21217
|
-
content: {
|
|
21218
|
-
"application/json": components["schemas"]["UpdatedTaskResponse"];
|
|
21219
|
-
};
|
|
21220
|
-
};
|
|
21221
|
-
/** @description No fields to update or invalid input. */
|
|
21222
|
-
400: {
|
|
21223
|
-
headers: {
|
|
21224
|
-
[name: string]: unknown;
|
|
21225
|
-
};
|
|
21226
|
-
content: {
|
|
21227
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21228
|
-
};
|
|
21229
|
-
};
|
|
21230
|
-
/** @description Task not found or not updated. */
|
|
21231
|
-
404: {
|
|
21232
|
-
headers: {
|
|
21233
|
-
[name: string]: unknown;
|
|
21234
|
-
};
|
|
21235
|
-
content: {
|
|
21236
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21237
|
-
};
|
|
21238
|
-
};
|
|
21239
|
-
};
|
|
21240
|
-
};
|
|
21241
|
-
getOverlayDismissalSummary: {
|
|
21242
|
-
parameters: {
|
|
21243
|
-
query?: {
|
|
21244
|
-
/** @description Page number (1-indexed). Default 1. */
|
|
21245
|
-
page?: string;
|
|
21246
|
-
/** @description Items per page (1-100). Default 50. */
|
|
21247
|
-
per_page?: string;
|
|
21248
|
-
/** @description Look-back window in days (1-90, default 7). Ignored when `start_date` and `end_date` are set. */
|
|
21249
|
-
days?: string;
|
|
21250
|
-
/** @description Start of a custom date range (ISO 8601). */
|
|
21251
|
-
start_date?: string;
|
|
21252
|
-
/** @description End of a custom date range (ISO 8601). */
|
|
21253
|
-
end_date?: string;
|
|
21254
|
-
/** @description Filter by environment name. */
|
|
21255
|
-
environment?: string;
|
|
21256
|
-
/** @description Filter by test run ID. */
|
|
21257
|
-
test_run_id?: string;
|
|
21258
|
-
/** @description Case-insensitive substring filter on test name. */
|
|
21259
|
-
test_name?: string;
|
|
21260
|
-
/** @description Filter by success: `true` or `false`. Other values ignored. */
|
|
21261
|
-
success?: string;
|
|
21262
|
-
/** @description Filter by cache hit: `true` or `false`. Other values ignored. */
|
|
21263
|
-
cache_hit?: string;
|
|
21264
|
-
};
|
|
21265
|
-
header?: never;
|
|
21266
|
-
path?: never;
|
|
21267
|
-
cookie?: never;
|
|
21268
|
-
};
|
|
21269
|
-
requestBody?: never;
|
|
21270
|
-
responses: {
|
|
21271
|
-
/** @description Overlay-dismissal summary for the project. */
|
|
21272
|
-
200: {
|
|
21273
|
-
headers: {
|
|
21274
|
-
[name: string]: unknown;
|
|
21275
|
-
};
|
|
21276
|
-
content: {
|
|
21277
|
-
"application/json": components["schemas"]["OverlayDismissalSummaryResponse"];
|
|
21278
|
-
};
|
|
21279
|
-
};
|
|
21280
|
-
/** @description Failed to query telemetry. */
|
|
21281
|
-
500: {
|
|
21282
|
-
headers: {
|
|
21283
|
-
[name: string]: unknown;
|
|
21284
|
-
};
|
|
21285
|
-
content: {
|
|
21286
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21287
|
-
};
|
|
21288
|
-
};
|
|
21289
|
-
};
|
|
21290
|
-
};
|
|
21291
|
-
getOverlayDismissalEvents: {
|
|
21292
|
-
parameters: {
|
|
21293
|
-
query?: {
|
|
21294
|
-
/** @description Page number (1-indexed). Default 1. */
|
|
21295
|
-
page?: string;
|
|
21296
|
-
/** @description Items per page (1-100). Default 50. */
|
|
21297
|
-
per_page?: string;
|
|
21298
|
-
/** @description Look-back window in days (1-90, default 7). Ignored when `start_date` and `end_date` are set. */
|
|
21299
|
-
days?: string;
|
|
21300
|
-
/** @description Start of a custom date range (ISO 8601). */
|
|
21301
|
-
start_date?: string;
|
|
21302
|
-
/** @description End of a custom date range (ISO 8601). */
|
|
21303
|
-
end_date?: string;
|
|
21304
|
-
/** @description Filter by environment name. */
|
|
21305
|
-
environment?: string;
|
|
21306
|
-
/** @description Filter by test run ID. */
|
|
21307
|
-
test_run_id?: string;
|
|
21308
|
-
/** @description Case-insensitive substring filter on test name. */
|
|
21309
|
-
test_name?: string;
|
|
21310
|
-
/** @description Filter by success: `true` or `false`. Other values ignored. */
|
|
21311
|
-
success?: string;
|
|
21312
|
-
/** @description Filter by cache hit: `true` or `false`. Other values ignored. */
|
|
21313
|
-
cache_hit?: string;
|
|
21314
|
-
};
|
|
21315
|
-
header?: never;
|
|
21316
|
-
path?: never;
|
|
21317
|
-
cookie?: never;
|
|
21318
|
-
};
|
|
21319
|
-
requestBody?: never;
|
|
21320
|
-
responses: {
|
|
21321
|
-
/** @description Paginated overlay-dismissal events for the project. */
|
|
21322
|
-
200: {
|
|
21323
|
-
headers: {
|
|
21324
|
-
[name: string]: unknown;
|
|
21325
|
-
};
|
|
21326
|
-
content: {
|
|
21327
|
-
"application/json": components["schemas"]["OverlayDismissalEventsResponse"];
|
|
21328
|
-
};
|
|
21329
|
-
};
|
|
21330
|
-
/** @description Failed to query telemetry. */
|
|
21331
|
-
500: {
|
|
21332
|
-
headers: {
|
|
21333
|
-
[name: string]: unknown;
|
|
21334
|
-
};
|
|
21335
|
-
content: {
|
|
21336
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21337
|
-
};
|
|
21338
|
-
};
|
|
21339
|
-
};
|
|
21340
|
-
};
|
|
21341
|
-
listTestRunCases: {
|
|
21342
|
-
parameters: {
|
|
21343
|
-
query?: {
|
|
21344
|
-
/** @description Filter to cases with this status. */
|
|
21345
|
-
status?: "passed" | "failed" | "flaky" | "skipped";
|
|
21346
|
-
/** @description Page number (1-indexed). Default 1. */
|
|
21347
|
-
page?: number;
|
|
21348
|
-
/** @description Items per page (capped at 200). Default 50. */
|
|
21349
|
-
per_page?: number;
|
|
21350
|
-
/** @description Row order. `scheduled` (default) is manifest order — stable for a finished run. `recent` is most-recently-completed first, for the live view of an active run. `duration` is slowest first (total time across attempts). `start_time` is earliest first attempt first; skipped tests last. */
|
|
21351
|
-
order?: "scheduled" | "recent" | "duration" | "start_time";
|
|
21352
|
-
/** @description Case-insensitive substring search over the test's full name (project, file, describe blocks, title), Playwright test id and failing line. Combines with `status`, `order` and paging; `pagination.total` counts the matches. Failing lines are searchable only for cases recorded after this parameter was added. */
|
|
21353
|
-
q?: string;
|
|
21354
|
-
/** @description When `true`, also returns cases that have reported at least one attempt but still have retries outstanding, marked `is_retrying: true`. Their `status` is provisional (from the attempts so far) and can change when the remaining retries land. Defaults to `false`. */
|
|
21355
|
-
include_retrying?: "true" | "false";
|
|
21356
|
-
};
|
|
21357
|
-
header?: never;
|
|
21358
|
-
path: {
|
|
21359
|
-
/** @description Test run database ID. */
|
|
21360
|
-
id: number;
|
|
21361
|
-
};
|
|
21362
|
-
cookie?: never;
|
|
21363
|
-
};
|
|
21364
|
-
requestBody?: never;
|
|
21365
|
-
responses: {
|
|
21366
|
-
/** @description Paginated list of test run cases. */
|
|
21367
|
-
200: {
|
|
21368
|
-
headers: {
|
|
21369
|
-
[name: string]: unknown;
|
|
21370
|
-
};
|
|
21371
|
-
content: {
|
|
21372
|
-
"application/json": components["schemas"]["ListTestRunCasesResponse"];
|
|
21373
|
-
};
|
|
21374
|
-
};
|
|
21375
|
-
/** @description Invalid request. */
|
|
21376
|
-
400: {
|
|
21377
|
-
headers: {
|
|
21378
|
-
[name: string]: unknown;
|
|
21379
|
-
};
|
|
21380
|
-
content: {
|
|
21381
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21382
|
-
};
|
|
21383
|
-
};
|
|
21384
|
-
/** @description Test run not found. */
|
|
21385
|
-
404: {
|
|
21386
|
-
headers: {
|
|
21387
|
-
[name: string]: unknown;
|
|
21388
|
-
};
|
|
21389
|
-
content: {
|
|
21390
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21391
|
-
};
|
|
21392
|
-
};
|
|
21393
|
-
};
|
|
21394
|
-
};
|
|
21395
|
-
getTestRunCase: {
|
|
21396
|
-
parameters: {
|
|
21397
|
-
query?: {
|
|
21398
|
-
/** @description When `true`, also returns cases that have reported at least one attempt but still have retries outstanding, marked `is_retrying: true`. Their `status` is provisional (from the attempts so far) and can change when the remaining retries land. Defaults to `false`. */
|
|
21399
|
-
include_retrying?: "true" | "false";
|
|
21400
|
-
};
|
|
21401
|
-
header?: never;
|
|
21402
|
-
path: {
|
|
21403
|
-
/** @description Test run database ID. */
|
|
21404
|
-
id: number;
|
|
21405
|
-
/** @description Playwright test ID (`pw_test_id`) of the case. */
|
|
21406
|
-
case_id: string;
|
|
21407
|
-
};
|
|
21408
|
-
cookie?: never;
|
|
21409
|
-
};
|
|
21410
|
-
requestBody?: never;
|
|
21411
|
-
responses: {
|
|
21412
|
-
/** @description The test run case. */
|
|
21413
|
-
200: {
|
|
21414
|
-
headers: {
|
|
21415
|
-
[name: string]: unknown;
|
|
21416
|
-
};
|
|
21417
|
-
content: {
|
|
21418
|
-
"application/json": components["schemas"]["GetTestRunCaseResponse"];
|
|
21419
|
-
};
|
|
21420
|
-
};
|
|
21421
|
-
/** @description Invalid request. */
|
|
21422
|
-
400: {
|
|
21423
|
-
headers: {
|
|
21424
|
-
[name: string]: unknown;
|
|
21425
|
-
};
|
|
21426
|
-
content: {
|
|
21427
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21428
|
-
};
|
|
21429
|
-
};
|
|
21430
|
-
/** @description Test run or test case not found. */
|
|
21431
|
-
404: {
|
|
21432
|
-
headers: {
|
|
21433
|
-
[name: string]: unknown;
|
|
21434
|
-
};
|
|
21435
|
-
content: {
|
|
21436
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
21437
|
-
};
|
|
21438
|
-
};
|
|
21439
|
-
};
|
|
21440
|
-
};
|
|
21441
21357
|
listChatSessionAlarms: {
|
|
21442
21358
|
parameters: {
|
|
21443
21359
|
query?: never;
|
|
@@ -21467,11 +21383,15 @@ export interface operations {
|
|
|
21467
21383
|
timing: {
|
|
21468
21384
|
/** @enum {string} */
|
|
21469
21385
|
type: "once";
|
|
21470
|
-
/**
|
|
21386
|
+
/**
|
|
21387
|
+
* Format: date-time
|
|
21388
|
+
* @description ISO 8601 UTC time at least 5m in the future.
|
|
21389
|
+
*/
|
|
21471
21390
|
run_at: string;
|
|
21472
21391
|
} | {
|
|
21473
21392
|
/** @enum {string} */
|
|
21474
21393
|
type: "cron";
|
|
21394
|
+
/** @description Five-field UTC cron expression, e.g. "0 *\/4 * * *". Runs must be at least 5m apart. */
|
|
21475
21395
|
cron: string;
|
|
21476
21396
|
/** Format: date-time */
|
|
21477
21397
|
ends_at?: string;
|
|
@@ -21508,20 +21428,25 @@ export interface operations {
|
|
|
21508
21428
|
requestBody?: {
|
|
21509
21429
|
content: {
|
|
21510
21430
|
"application/json": {
|
|
21431
|
+
/** @description Why the alarm fires, in at most 200 characters, e.g. "retry the export once the rate limit resets". It is set once and cannot be edited. Keep state and rules out of it. */
|
|
21511
21432
|
message: string;
|
|
21512
21433
|
timing: {
|
|
21513
21434
|
/** @enum {string} */
|
|
21514
21435
|
type: "delay";
|
|
21515
|
-
/** @description
|
|
21436
|
+
/** @description Whole minutes, hours or days (m/h/d), e.g. "15m", "2h", "1d" or "1h30m", between 5m and 72h. Seconds are not supported: use "5m", not "90s" or "300s". */
|
|
21516
21437
|
delay: string;
|
|
21517
21438
|
} | {
|
|
21518
21439
|
/** @enum {string} */
|
|
21519
21440
|
type: "once";
|
|
21520
|
-
/**
|
|
21441
|
+
/**
|
|
21442
|
+
* Format: date-time
|
|
21443
|
+
* @description ISO 8601 UTC time at least 5m in the future.
|
|
21444
|
+
*/
|
|
21521
21445
|
run_at: string;
|
|
21522
21446
|
} | {
|
|
21523
21447
|
/** @enum {string} */
|
|
21524
21448
|
type: "cron";
|
|
21449
|
+
/** @description Five-field UTC cron expression, e.g. "0 *\/4 * * *". Runs must be at least 5m apart. */
|
|
21525
21450
|
cron: string;
|
|
21526
21451
|
/** Format: date-time */
|
|
21527
21452
|
ends_at?: string;
|
|
@@ -21548,11 +21473,15 @@ export interface operations {
|
|
|
21548
21473
|
timing: {
|
|
21549
21474
|
/** @enum {string} */
|
|
21550
21475
|
type: "once";
|
|
21551
|
-
/**
|
|
21476
|
+
/**
|
|
21477
|
+
* Format: date-time
|
|
21478
|
+
* @description ISO 8601 UTC time at least 5m in the future.
|
|
21479
|
+
*/
|
|
21552
21480
|
run_at: string;
|
|
21553
21481
|
} | {
|
|
21554
21482
|
/** @enum {string} */
|
|
21555
21483
|
type: "cron";
|
|
21484
|
+
/** @description Five-field UTC cron expression, e.g. "0 *\/4 * * *". Runs must be at least 5m apart. */
|
|
21556
21485
|
cron: string;
|
|
21557
21486
|
/** Format: date-time */
|
|
21558
21487
|
ends_at?: string;
|
|
@@ -21638,15 +21567,19 @@ export interface operations {
|
|
|
21638
21567
|
requestBody?: {
|
|
21639
21568
|
content: {
|
|
21640
21569
|
"application/json": {
|
|
21641
|
-
message
|
|
21642
|
-
timing
|
|
21570
|
+
/** @description New schedule. The message is fixed at creation; delete the alarm and create a new one to change it. */
|
|
21571
|
+
timing: {
|
|
21643
21572
|
/** @enum {string} */
|
|
21644
21573
|
type: "once";
|
|
21645
|
-
/**
|
|
21574
|
+
/**
|
|
21575
|
+
* Format: date-time
|
|
21576
|
+
* @description ISO 8601 UTC time at least 5m in the future.
|
|
21577
|
+
*/
|
|
21646
21578
|
run_at: string;
|
|
21647
21579
|
} | {
|
|
21648
21580
|
/** @enum {string} */
|
|
21649
21581
|
type: "cron";
|
|
21582
|
+
/** @description Five-field UTC cron expression, e.g. "0 *\/4 * * *". Runs must be at least 5m apart. */
|
|
21650
21583
|
cron: string;
|
|
21651
21584
|
/** Format: date-time */
|
|
21652
21585
|
ends_at?: string;
|
|
@@ -21673,11 +21606,15 @@ export interface operations {
|
|
|
21673
21606
|
timing: {
|
|
21674
21607
|
/** @enum {string} */
|
|
21675
21608
|
type: "once";
|
|
21676
|
-
/**
|
|
21609
|
+
/**
|
|
21610
|
+
* Format: date-time
|
|
21611
|
+
* @description ISO 8601 UTC time at least 5m in the future.
|
|
21612
|
+
*/
|
|
21677
21613
|
run_at: string;
|
|
21678
21614
|
} | {
|
|
21679
21615
|
/** @enum {string} */
|
|
21680
21616
|
type: "cron";
|
|
21617
|
+
/** @description Five-field UTC cron expression, e.g. "0 *\/4 * * *". Runs must be at least 5m apart. */
|
|
21681
21618
|
cron: string;
|
|
21682
21619
|
/** Format: date-time */
|
|
21683
21620
|
ends_at?: string;
|
|
@@ -21785,7 +21722,6 @@ export interface operations {
|
|
|
21785
21722
|
lte?: number;
|
|
21786
21723
|
}) | null;
|
|
21787
21724
|
};
|
|
21788
|
-
message: string;
|
|
21789
21725
|
/**
|
|
21790
21726
|
* @description Whether the trigger is consumed after one successful delivery or remains active. Recurring triggers require a wildcard entity match.
|
|
21791
21727
|
* @enum {string}
|
|
@@ -21837,8 +21773,6 @@ export interface operations {
|
|
|
21837
21773
|
lte?: number;
|
|
21838
21774
|
}) | null;
|
|
21839
21775
|
};
|
|
21840
|
-
/** @description Continuation instruction delivered to the session after the event matches. */
|
|
21841
|
-
message: string;
|
|
21842
21776
|
/**
|
|
21843
21777
|
* @description Whether the trigger is consumed after one successful delivery or remains active. Recurring triggers require a wildcard entity match.
|
|
21844
21778
|
* @enum {string}
|
|
@@ -21873,7 +21807,6 @@ export interface operations {
|
|
|
21873
21807
|
lte?: number;
|
|
21874
21808
|
}) | null;
|
|
21875
21809
|
};
|
|
21876
|
-
message: string;
|
|
21877
21810
|
/**
|
|
21878
21811
|
* @description Whether the trigger is consumed after one successful delivery or remains active. Recurring triggers require a wildcard entity match.
|
|
21879
21812
|
* @enum {string}
|
|
@@ -21952,7 +21885,6 @@ export interface operations {
|
|
|
21952
21885
|
lte?: number;
|
|
21953
21886
|
}) | null;
|
|
21954
21887
|
};
|
|
21955
|
-
message: string;
|
|
21956
21888
|
/**
|
|
21957
21889
|
* @description Whether the trigger is consumed after one successful delivery or remains active. Recurring triggers require a wildcard entity match.
|
|
21958
21890
|
* @enum {string}
|
|
@@ -22032,8 +21964,6 @@ export interface operations {
|
|
|
22032
21964
|
lte?: number;
|
|
22033
21965
|
}) | null;
|
|
22034
21966
|
};
|
|
22035
|
-
/** @description Continuation instruction delivered to the session after the event matches. */
|
|
22036
|
-
message?: string;
|
|
22037
21967
|
/**
|
|
22038
21968
|
* @description Whether the trigger is consumed after one successful delivery or remains active. Recurring triggers require a wildcard entity match.
|
|
22039
21969
|
* @enum {string}
|
|
@@ -22068,7 +21998,6 @@ export interface operations {
|
|
|
22068
21998
|
lte?: number;
|
|
22069
21999
|
}) | null;
|
|
22070
22000
|
};
|
|
22071
|
-
message: string;
|
|
22072
22001
|
/**
|
|
22073
22002
|
* @description Whether the trigger is consumed after one successful delivery or remains active. Recurring triggers require a wildcard entity match.
|
|
22074
22003
|
* @enum {string}
|
|
@@ -22565,6 +22494,38 @@ export interface operations {
|
|
|
22565
22494
|
};
|
|
22566
22495
|
};
|
|
22567
22496
|
};
|
|
22497
|
+
getStaticIps: {
|
|
22498
|
+
parameters: {
|
|
22499
|
+
query: {
|
|
22500
|
+
/** @description Region to look up. One of: ap-south-1. */
|
|
22501
|
+
region: string;
|
|
22502
|
+
};
|
|
22503
|
+
header?: never;
|
|
22504
|
+
path?: never;
|
|
22505
|
+
cookie?: never;
|
|
22506
|
+
};
|
|
22507
|
+
requestBody?: never;
|
|
22508
|
+
responses: {
|
|
22509
|
+
/** @description Static IPs for the region. */
|
|
22510
|
+
200: {
|
|
22511
|
+
headers: {
|
|
22512
|
+
[name: string]: unknown;
|
|
22513
|
+
};
|
|
22514
|
+
content: {
|
|
22515
|
+
"application/json": components["schemas"]["StaticIpsResponse"];
|
|
22516
|
+
};
|
|
22517
|
+
};
|
|
22518
|
+
/** @description Missing or unknown region. */
|
|
22519
|
+
400: {
|
|
22520
|
+
headers: {
|
|
22521
|
+
[name: string]: unknown;
|
|
22522
|
+
};
|
|
22523
|
+
content: {
|
|
22524
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22525
|
+
};
|
|
22526
|
+
};
|
|
22527
|
+
};
|
|
22528
|
+
};
|
|
22568
22529
|
listPlaywrightVersions: {
|
|
22569
22530
|
parameters: {
|
|
22570
22531
|
query?: never;
|
|
@@ -22585,6 +22546,471 @@ export interface operations {
|
|
|
22585
22546
|
};
|
|
22586
22547
|
};
|
|
22587
22548
|
};
|
|
22549
|
+
listRules: {
|
|
22550
|
+
parameters: {
|
|
22551
|
+
query?: {
|
|
22552
|
+
page?: number;
|
|
22553
|
+
per_page?: number;
|
|
22554
|
+
effect?: "snooze" | "annotate";
|
|
22555
|
+
environment_id?: number;
|
|
22556
|
+
status?: "active" | "expired" | "all";
|
|
22557
|
+
};
|
|
22558
|
+
header?: never;
|
|
22559
|
+
path?: never;
|
|
22560
|
+
cookie?: never;
|
|
22561
|
+
};
|
|
22562
|
+
requestBody?: never;
|
|
22563
|
+
responses: {
|
|
22564
|
+
/** @description Paginated list of rules. */
|
|
22565
|
+
200: {
|
|
22566
|
+
headers: {
|
|
22567
|
+
[name: string]: unknown;
|
|
22568
|
+
};
|
|
22569
|
+
content: {
|
|
22570
|
+
"application/json": components["schemas"]["RuleListResponse"];
|
|
22571
|
+
};
|
|
22572
|
+
};
|
|
22573
|
+
/** @description Invalid request. */
|
|
22574
|
+
400: {
|
|
22575
|
+
headers: {
|
|
22576
|
+
[name: string]: unknown;
|
|
22577
|
+
};
|
|
22578
|
+
content: {
|
|
22579
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22580
|
+
};
|
|
22581
|
+
};
|
|
22582
|
+
};
|
|
22583
|
+
};
|
|
22584
|
+
createRule: {
|
|
22585
|
+
parameters: {
|
|
22586
|
+
query?: never;
|
|
22587
|
+
header?: never;
|
|
22588
|
+
path?: never;
|
|
22589
|
+
cookie?: never;
|
|
22590
|
+
};
|
|
22591
|
+
requestBody?: {
|
|
22592
|
+
content: {
|
|
22593
|
+
"application/json": components["schemas"]["CreateRuleRequest"];
|
|
22594
|
+
};
|
|
22595
|
+
};
|
|
22596
|
+
responses: {
|
|
22597
|
+
/** @description The created rule. */
|
|
22598
|
+
200: {
|
|
22599
|
+
headers: {
|
|
22600
|
+
[name: string]: unknown;
|
|
22601
|
+
};
|
|
22602
|
+
content: {
|
|
22603
|
+
"application/json": components["schemas"]["RuleResponse"];
|
|
22604
|
+
};
|
|
22605
|
+
};
|
|
22606
|
+
/** @description Invalid request. */
|
|
22607
|
+
400: {
|
|
22608
|
+
headers: {
|
|
22609
|
+
[name: string]: unknown;
|
|
22610
|
+
};
|
|
22611
|
+
content: {
|
|
22612
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22613
|
+
};
|
|
22614
|
+
};
|
|
22615
|
+
};
|
|
22616
|
+
};
|
|
22617
|
+
getRule: {
|
|
22618
|
+
parameters: {
|
|
22619
|
+
query?: never;
|
|
22620
|
+
header?: never;
|
|
22621
|
+
path: {
|
|
22622
|
+
/** @description Rule ID. */
|
|
22623
|
+
id: number;
|
|
22624
|
+
};
|
|
22625
|
+
cookie?: never;
|
|
22626
|
+
};
|
|
22627
|
+
requestBody?: never;
|
|
22628
|
+
responses: {
|
|
22629
|
+
/** @description The rule. */
|
|
22630
|
+
200: {
|
|
22631
|
+
headers: {
|
|
22632
|
+
[name: string]: unknown;
|
|
22633
|
+
};
|
|
22634
|
+
content: {
|
|
22635
|
+
"application/json": components["schemas"]["RuleResponse"];
|
|
22636
|
+
};
|
|
22637
|
+
};
|
|
22638
|
+
/** @description Rule not found. */
|
|
22639
|
+
404: {
|
|
22640
|
+
headers: {
|
|
22641
|
+
[name: string]: unknown;
|
|
22642
|
+
};
|
|
22643
|
+
content: {
|
|
22644
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22645
|
+
};
|
|
22646
|
+
};
|
|
22647
|
+
};
|
|
22648
|
+
};
|
|
22649
|
+
deleteRule: {
|
|
22650
|
+
parameters: {
|
|
22651
|
+
query?: never;
|
|
22652
|
+
header?: never;
|
|
22653
|
+
path: {
|
|
22654
|
+
/** @description Rule ID. */
|
|
22655
|
+
id: number;
|
|
22656
|
+
};
|
|
22657
|
+
cookie?: never;
|
|
22658
|
+
};
|
|
22659
|
+
requestBody?: never;
|
|
22660
|
+
responses: {
|
|
22661
|
+
/** @description The deleted rule. */
|
|
22662
|
+
200: {
|
|
22663
|
+
headers: {
|
|
22664
|
+
[name: string]: unknown;
|
|
22665
|
+
};
|
|
22666
|
+
content: {
|
|
22667
|
+
"application/json": components["schemas"]["RuleResponse"];
|
|
22668
|
+
};
|
|
22669
|
+
};
|
|
22670
|
+
/** @description Rule not found. */
|
|
22671
|
+
404: {
|
|
22672
|
+
headers: {
|
|
22673
|
+
[name: string]: unknown;
|
|
22674
|
+
};
|
|
22675
|
+
content: {
|
|
22676
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22677
|
+
};
|
|
22678
|
+
};
|
|
22679
|
+
};
|
|
22680
|
+
};
|
|
22681
|
+
updateRule: {
|
|
22682
|
+
parameters: {
|
|
22683
|
+
query?: never;
|
|
22684
|
+
header?: never;
|
|
22685
|
+
path: {
|
|
22686
|
+
/** @description Rule ID. */
|
|
22687
|
+
id: number;
|
|
22688
|
+
};
|
|
22689
|
+
cookie?: never;
|
|
22690
|
+
};
|
|
22691
|
+
requestBody?: {
|
|
22692
|
+
content: {
|
|
22693
|
+
"application/json": components["schemas"]["UpdateRuleRequest"];
|
|
22694
|
+
};
|
|
22695
|
+
};
|
|
22696
|
+
responses: {
|
|
22697
|
+
/** @description The updated rule. */
|
|
22698
|
+
200: {
|
|
22699
|
+
headers: {
|
|
22700
|
+
[name: string]: unknown;
|
|
22701
|
+
};
|
|
22702
|
+
content: {
|
|
22703
|
+
"application/json": components["schemas"]["RuleResponse"];
|
|
22704
|
+
};
|
|
22705
|
+
};
|
|
22706
|
+
/** @description Invalid request. */
|
|
22707
|
+
400: {
|
|
22708
|
+
headers: {
|
|
22709
|
+
[name: string]: unknown;
|
|
22710
|
+
};
|
|
22711
|
+
content: {
|
|
22712
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22713
|
+
};
|
|
22714
|
+
};
|
|
22715
|
+
/** @description Rule not found. */
|
|
22716
|
+
404: {
|
|
22717
|
+
headers: {
|
|
22718
|
+
[name: string]: unknown;
|
|
22719
|
+
};
|
|
22720
|
+
content: {
|
|
22721
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22722
|
+
};
|
|
22723
|
+
};
|
|
22724
|
+
};
|
|
22725
|
+
};
|
|
22726
|
+
listRuleRevisions: {
|
|
22727
|
+
parameters: {
|
|
22728
|
+
query?: never;
|
|
22729
|
+
header?: never;
|
|
22730
|
+
path: {
|
|
22731
|
+
/** @description Rule ID. */
|
|
22732
|
+
id: number;
|
|
22733
|
+
};
|
|
22734
|
+
cookie?: never;
|
|
22735
|
+
};
|
|
22736
|
+
requestBody?: never;
|
|
22737
|
+
responses: {
|
|
22738
|
+
/** @description The rule's revisions. */
|
|
22739
|
+
200: {
|
|
22740
|
+
headers: {
|
|
22741
|
+
[name: string]: unknown;
|
|
22742
|
+
};
|
|
22743
|
+
content: {
|
|
22744
|
+
"application/json": components["schemas"]["RuleRevisionListResponse"];
|
|
22745
|
+
};
|
|
22746
|
+
};
|
|
22747
|
+
/** @description Rule not found. */
|
|
22748
|
+
404: {
|
|
22749
|
+
headers: {
|
|
22750
|
+
[name: string]: unknown;
|
|
22751
|
+
};
|
|
22752
|
+
content: {
|
|
22753
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22754
|
+
};
|
|
22755
|
+
};
|
|
22756
|
+
};
|
|
22757
|
+
};
|
|
22758
|
+
matchRules: {
|
|
22759
|
+
parameters: {
|
|
22760
|
+
query?: never;
|
|
22761
|
+
header?: never;
|
|
22762
|
+
path?: never;
|
|
22763
|
+
cookie?: never;
|
|
22764
|
+
};
|
|
22765
|
+
requestBody?: {
|
|
22766
|
+
content: {
|
|
22767
|
+
"application/json": components["schemas"]["MatchRulesRequest"];
|
|
22768
|
+
};
|
|
22769
|
+
};
|
|
22770
|
+
responses: {
|
|
22771
|
+
/** @description Rules that cover the case. */
|
|
22772
|
+
200: {
|
|
22773
|
+
headers: {
|
|
22774
|
+
[name: string]: unknown;
|
|
22775
|
+
};
|
|
22776
|
+
content: {
|
|
22777
|
+
"application/json": components["schemas"]["MatchRulesResponse"];
|
|
22778
|
+
};
|
|
22779
|
+
};
|
|
22780
|
+
/** @description Test run or case not found. */
|
|
22781
|
+
404: {
|
|
22782
|
+
headers: {
|
|
22783
|
+
[name: string]: unknown;
|
|
22784
|
+
};
|
|
22785
|
+
content: {
|
|
22786
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22787
|
+
};
|
|
22788
|
+
};
|
|
22789
|
+
};
|
|
22790
|
+
};
|
|
22791
|
+
listTasks: {
|
|
22792
|
+
parameters: {
|
|
22793
|
+
query?: {
|
|
22794
|
+
/** @description Page number (1-indexed). */
|
|
22795
|
+
page?: number;
|
|
22796
|
+
/** @description Items per page. */
|
|
22797
|
+
per_page?: number;
|
|
22798
|
+
/** @description URL-encoded JSON array of generic filter conditions; malformed input is ignored. */
|
|
22799
|
+
filters?: string;
|
|
22800
|
+
};
|
|
22801
|
+
header?: never;
|
|
22802
|
+
path?: never;
|
|
22803
|
+
cookie?: never;
|
|
22804
|
+
};
|
|
22805
|
+
requestBody?: never;
|
|
22806
|
+
responses: {
|
|
22807
|
+
/** @description Paginated list of tasks. */
|
|
22808
|
+
200: {
|
|
22809
|
+
headers: {
|
|
22810
|
+
[name: string]: unknown;
|
|
22811
|
+
};
|
|
22812
|
+
content: {
|
|
22813
|
+
"application/json": components["schemas"]["TaskListResponse"];
|
|
22814
|
+
};
|
|
22815
|
+
};
|
|
22816
|
+
/** @description Invalid request or missing project scope. */
|
|
22817
|
+
400: {
|
|
22818
|
+
headers: {
|
|
22819
|
+
[name: string]: unknown;
|
|
22820
|
+
};
|
|
22821
|
+
content: {
|
|
22822
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22823
|
+
};
|
|
22824
|
+
};
|
|
22825
|
+
/** @description Project not found or inaccessible. */
|
|
22826
|
+
404: {
|
|
22827
|
+
headers: {
|
|
22828
|
+
[name: string]: unknown;
|
|
22829
|
+
};
|
|
22830
|
+
content: {
|
|
22831
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22832
|
+
};
|
|
22833
|
+
};
|
|
22834
|
+
};
|
|
22835
|
+
};
|
|
22836
|
+
createTask: {
|
|
22837
|
+
parameters: {
|
|
22838
|
+
query?: never;
|
|
22839
|
+
header?: never;
|
|
22840
|
+
path?: never;
|
|
22841
|
+
cookie?: never;
|
|
22842
|
+
};
|
|
22843
|
+
requestBody?: {
|
|
22844
|
+
content: {
|
|
22845
|
+
"application/json": components["schemas"]["CreateTaskRequest"];
|
|
22846
|
+
};
|
|
22847
|
+
};
|
|
22848
|
+
responses: {
|
|
22849
|
+
/** @description The created task. */
|
|
22850
|
+
201: {
|
|
22851
|
+
headers: {
|
|
22852
|
+
[name: string]: unknown;
|
|
22853
|
+
};
|
|
22854
|
+
content: {
|
|
22855
|
+
"application/json": components["schemas"]["CreateTaskResponse"];
|
|
22856
|
+
};
|
|
22857
|
+
};
|
|
22858
|
+
/** @description Missing required fields, no person to own the task, or invalid input. */
|
|
22859
|
+
400: {
|
|
22860
|
+
headers: {
|
|
22861
|
+
[name: string]: unknown;
|
|
22862
|
+
};
|
|
22863
|
+
content: {
|
|
22864
|
+
"application/json": components["schemas"]["CreateTaskError"];
|
|
22865
|
+
};
|
|
22866
|
+
};
|
|
22867
|
+
/** @description Project not found or inaccessible. */
|
|
22868
|
+
404: {
|
|
22869
|
+
headers: {
|
|
22870
|
+
[name: string]: unknown;
|
|
22871
|
+
};
|
|
22872
|
+
content: {
|
|
22873
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22874
|
+
};
|
|
22875
|
+
};
|
|
22876
|
+
/** @description Failed to create task. */
|
|
22877
|
+
500: {
|
|
22878
|
+
headers: {
|
|
22879
|
+
[name: string]: unknown;
|
|
22880
|
+
};
|
|
22881
|
+
content: {
|
|
22882
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22883
|
+
};
|
|
22884
|
+
};
|
|
22885
|
+
};
|
|
22886
|
+
};
|
|
22887
|
+
getTask: {
|
|
22888
|
+
parameters: {
|
|
22889
|
+
query?: never;
|
|
22890
|
+
header?: never;
|
|
22891
|
+
path: {
|
|
22892
|
+
/** @description Task ID. */
|
|
22893
|
+
id: number;
|
|
22894
|
+
};
|
|
22895
|
+
cookie?: never;
|
|
22896
|
+
};
|
|
22897
|
+
requestBody?: never;
|
|
22898
|
+
responses: {
|
|
22899
|
+
/** @description The task. */
|
|
22900
|
+
200: {
|
|
22901
|
+
headers: {
|
|
22902
|
+
[name: string]: unknown;
|
|
22903
|
+
};
|
|
22904
|
+
content: {
|
|
22905
|
+
"application/json": components["schemas"]["TaskResponse"];
|
|
22906
|
+
};
|
|
22907
|
+
};
|
|
22908
|
+
/** @description Invalid task ID. */
|
|
22909
|
+
400: {
|
|
22910
|
+
headers: {
|
|
22911
|
+
[name: string]: unknown;
|
|
22912
|
+
};
|
|
22913
|
+
content: {
|
|
22914
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22915
|
+
};
|
|
22916
|
+
};
|
|
22917
|
+
/** @description Task not found. */
|
|
22918
|
+
404: {
|
|
22919
|
+
headers: {
|
|
22920
|
+
[name: string]: unknown;
|
|
22921
|
+
};
|
|
22922
|
+
content: {
|
|
22923
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22924
|
+
};
|
|
22925
|
+
};
|
|
22926
|
+
};
|
|
22927
|
+
};
|
|
22928
|
+
deleteTask: {
|
|
22929
|
+
parameters: {
|
|
22930
|
+
query?: never;
|
|
22931
|
+
header?: never;
|
|
22932
|
+
path: {
|
|
22933
|
+
/** @description Task ID. */
|
|
22934
|
+
id: number;
|
|
22935
|
+
};
|
|
22936
|
+
cookie?: never;
|
|
22937
|
+
};
|
|
22938
|
+
requestBody?: never;
|
|
22939
|
+
responses: {
|
|
22940
|
+
/** @description The deleted task ID. */
|
|
22941
|
+
200: {
|
|
22942
|
+
headers: {
|
|
22943
|
+
[name: string]: unknown;
|
|
22944
|
+
};
|
|
22945
|
+
content: {
|
|
22946
|
+
"application/json": components["schemas"]["DeletedTaskResponse"];
|
|
22947
|
+
};
|
|
22948
|
+
};
|
|
22949
|
+
/** @description Invalid task ID. */
|
|
22950
|
+
400: {
|
|
22951
|
+
headers: {
|
|
22952
|
+
[name: string]: unknown;
|
|
22953
|
+
};
|
|
22954
|
+
content: {
|
|
22955
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22956
|
+
};
|
|
22957
|
+
};
|
|
22958
|
+
/** @description Task not found or not deleted. */
|
|
22959
|
+
404: {
|
|
22960
|
+
headers: {
|
|
22961
|
+
[name: string]: unknown;
|
|
22962
|
+
};
|
|
22963
|
+
content: {
|
|
22964
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
22965
|
+
};
|
|
22966
|
+
};
|
|
22967
|
+
};
|
|
22968
|
+
};
|
|
22969
|
+
updateTask: {
|
|
22970
|
+
parameters: {
|
|
22971
|
+
query?: never;
|
|
22972
|
+
header?: never;
|
|
22973
|
+
path: {
|
|
22974
|
+
/** @description Task ID. */
|
|
22975
|
+
id: number;
|
|
22976
|
+
};
|
|
22977
|
+
cookie?: never;
|
|
22978
|
+
};
|
|
22979
|
+
requestBody?: {
|
|
22980
|
+
content: {
|
|
22981
|
+
"application/json": components["schemas"]["UpdateTaskRequest"];
|
|
22982
|
+
};
|
|
22983
|
+
};
|
|
22984
|
+
responses: {
|
|
22985
|
+
/** @description The updated task. */
|
|
22986
|
+
200: {
|
|
22987
|
+
headers: {
|
|
22988
|
+
[name: string]: unknown;
|
|
22989
|
+
};
|
|
22990
|
+
content: {
|
|
22991
|
+
"application/json": components["schemas"]["UpdatedTaskResponse"];
|
|
22992
|
+
};
|
|
22993
|
+
};
|
|
22994
|
+
/** @description No fields to update or invalid input. */
|
|
22995
|
+
400: {
|
|
22996
|
+
headers: {
|
|
22997
|
+
[name: string]: unknown;
|
|
22998
|
+
};
|
|
22999
|
+
content: {
|
|
23000
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
23001
|
+
};
|
|
23002
|
+
};
|
|
23003
|
+
/** @description Task not found or not updated. */
|
|
23004
|
+
404: {
|
|
23005
|
+
headers: {
|
|
23006
|
+
[name: string]: unknown;
|
|
23007
|
+
};
|
|
23008
|
+
content: {
|
|
23009
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
23010
|
+
};
|
|
23011
|
+
};
|
|
23012
|
+
};
|
|
23013
|
+
};
|
|
22588
23014
|
compareTraceAgainstPass: {
|
|
22589
23015
|
parameters: {
|
|
22590
23016
|
query?: never;
|
|
@@ -22935,6 +23361,206 @@ export interface operations {
|
|
|
22935
23361
|
};
|
|
22936
23362
|
};
|
|
22937
23363
|
};
|
|
23364
|
+
getOverlayDismissalSummary: {
|
|
23365
|
+
parameters: {
|
|
23366
|
+
query?: {
|
|
23367
|
+
/** @description Page number (1-indexed). Default 1. */
|
|
23368
|
+
page?: string;
|
|
23369
|
+
/** @description Items per page (1-100). Default 50. */
|
|
23370
|
+
per_page?: string;
|
|
23371
|
+
/** @description Look-back window in days (1-90, default 7). Ignored when `start_date` and `end_date` are set. */
|
|
23372
|
+
days?: string;
|
|
23373
|
+
/** @description Start of a custom date range (ISO 8601). */
|
|
23374
|
+
start_date?: string;
|
|
23375
|
+
/** @description End of a custom date range (ISO 8601). */
|
|
23376
|
+
end_date?: string;
|
|
23377
|
+
/** @description Filter by environment name. */
|
|
23378
|
+
environment?: string;
|
|
23379
|
+
/** @description Filter by test run ID. */
|
|
23380
|
+
test_run_id?: string;
|
|
23381
|
+
/** @description Case-insensitive substring filter on test name. */
|
|
23382
|
+
test_name?: string;
|
|
23383
|
+
/** @description Filter by success: `true` or `false`. Other values ignored. */
|
|
23384
|
+
success?: string;
|
|
23385
|
+
/** @description Filter by cache hit: `true` or `false`. Other values ignored. */
|
|
23386
|
+
cache_hit?: string;
|
|
23387
|
+
};
|
|
23388
|
+
header?: never;
|
|
23389
|
+
path?: never;
|
|
23390
|
+
cookie?: never;
|
|
23391
|
+
};
|
|
23392
|
+
requestBody?: never;
|
|
23393
|
+
responses: {
|
|
23394
|
+
/** @description Overlay-dismissal summary for the project. */
|
|
23395
|
+
200: {
|
|
23396
|
+
headers: {
|
|
23397
|
+
[name: string]: unknown;
|
|
23398
|
+
};
|
|
23399
|
+
content: {
|
|
23400
|
+
"application/json": components["schemas"]["OverlayDismissalSummaryResponse"];
|
|
23401
|
+
};
|
|
23402
|
+
};
|
|
23403
|
+
/** @description Failed to query telemetry. */
|
|
23404
|
+
500: {
|
|
23405
|
+
headers: {
|
|
23406
|
+
[name: string]: unknown;
|
|
23407
|
+
};
|
|
23408
|
+
content: {
|
|
23409
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
23410
|
+
};
|
|
23411
|
+
};
|
|
23412
|
+
};
|
|
23413
|
+
};
|
|
23414
|
+
getOverlayDismissalEvents: {
|
|
23415
|
+
parameters: {
|
|
23416
|
+
query?: {
|
|
23417
|
+
/** @description Page number (1-indexed). Default 1. */
|
|
23418
|
+
page?: string;
|
|
23419
|
+
/** @description Items per page (1-100). Default 50. */
|
|
23420
|
+
per_page?: string;
|
|
23421
|
+
/** @description Look-back window in days (1-90, default 7). Ignored when `start_date` and `end_date` are set. */
|
|
23422
|
+
days?: string;
|
|
23423
|
+
/** @description Start of a custom date range (ISO 8601). */
|
|
23424
|
+
start_date?: string;
|
|
23425
|
+
/** @description End of a custom date range (ISO 8601). */
|
|
23426
|
+
end_date?: string;
|
|
23427
|
+
/** @description Filter by environment name. */
|
|
23428
|
+
environment?: string;
|
|
23429
|
+
/** @description Filter by test run ID. */
|
|
23430
|
+
test_run_id?: string;
|
|
23431
|
+
/** @description Case-insensitive substring filter on test name. */
|
|
23432
|
+
test_name?: string;
|
|
23433
|
+
/** @description Filter by success: `true` or `false`. Other values ignored. */
|
|
23434
|
+
success?: string;
|
|
23435
|
+
/** @description Filter by cache hit: `true` or `false`. Other values ignored. */
|
|
23436
|
+
cache_hit?: string;
|
|
23437
|
+
};
|
|
23438
|
+
header?: never;
|
|
23439
|
+
path?: never;
|
|
23440
|
+
cookie?: never;
|
|
23441
|
+
};
|
|
23442
|
+
requestBody?: never;
|
|
23443
|
+
responses: {
|
|
23444
|
+
/** @description Paginated overlay-dismissal events for the project. */
|
|
23445
|
+
200: {
|
|
23446
|
+
headers: {
|
|
23447
|
+
[name: string]: unknown;
|
|
23448
|
+
};
|
|
23449
|
+
content: {
|
|
23450
|
+
"application/json": components["schemas"]["OverlayDismissalEventsResponse"];
|
|
23451
|
+
};
|
|
23452
|
+
};
|
|
23453
|
+
/** @description Failed to query telemetry. */
|
|
23454
|
+
500: {
|
|
23455
|
+
headers: {
|
|
23456
|
+
[name: string]: unknown;
|
|
23457
|
+
};
|
|
23458
|
+
content: {
|
|
23459
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
23460
|
+
};
|
|
23461
|
+
};
|
|
23462
|
+
};
|
|
23463
|
+
};
|
|
23464
|
+
listTestRunCases: {
|
|
23465
|
+
parameters: {
|
|
23466
|
+
query?: {
|
|
23467
|
+
/** @description Filter to cases with this status. */
|
|
23468
|
+
status?: "passed" | "failed" | "flaky" | "skipped";
|
|
23469
|
+
/** @description Page number (1-indexed). Default 1. */
|
|
23470
|
+
page?: number;
|
|
23471
|
+
/** @description Items per page (capped at 200). Default 50. */
|
|
23472
|
+
per_page?: number;
|
|
23473
|
+
/** @description Row order. `scheduled` (default) is manifest order — stable for a finished run. `recent` is most-recently-completed first, for the live view of an active run. `duration` is slowest first (total time across attempts). `start_time` is earliest first attempt first; skipped tests last. */
|
|
23474
|
+
order?: "scheduled" | "recent" | "duration" | "start_time";
|
|
23475
|
+
/** @description Case-insensitive substring search over the test's full name (project, file, describe blocks, title), Playwright test id and failing line. Combines with `status`, `order` and paging; `pagination.total` counts the matches. Failing lines are searchable only for cases recorded after this parameter was added. */
|
|
23476
|
+
q?: string;
|
|
23477
|
+
/** @description When `true`, also returns cases that have reported at least one attempt but still have retries outstanding, marked `is_retrying: true`. Their `status` is provisional (from the attempts so far) and can change when the remaining retries land. Defaults to `false`. */
|
|
23478
|
+
include_retrying?: "true" | "false";
|
|
23479
|
+
};
|
|
23480
|
+
header?: never;
|
|
23481
|
+
path: {
|
|
23482
|
+
/** @description Test run database ID. */
|
|
23483
|
+
id: number;
|
|
23484
|
+
};
|
|
23485
|
+
cookie?: never;
|
|
23486
|
+
};
|
|
23487
|
+
requestBody?: never;
|
|
23488
|
+
responses: {
|
|
23489
|
+
/** @description Paginated list of test run cases. */
|
|
23490
|
+
200: {
|
|
23491
|
+
headers: {
|
|
23492
|
+
[name: string]: unknown;
|
|
23493
|
+
};
|
|
23494
|
+
content: {
|
|
23495
|
+
"application/json": components["schemas"]["ListTestRunCasesResponse"];
|
|
23496
|
+
};
|
|
23497
|
+
};
|
|
23498
|
+
/** @description Invalid request. */
|
|
23499
|
+
400: {
|
|
23500
|
+
headers: {
|
|
23501
|
+
[name: string]: unknown;
|
|
23502
|
+
};
|
|
23503
|
+
content: {
|
|
23504
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
23505
|
+
};
|
|
23506
|
+
};
|
|
23507
|
+
/** @description Test run not found. */
|
|
23508
|
+
404: {
|
|
23509
|
+
headers: {
|
|
23510
|
+
[name: string]: unknown;
|
|
23511
|
+
};
|
|
23512
|
+
content: {
|
|
23513
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
23514
|
+
};
|
|
23515
|
+
};
|
|
23516
|
+
};
|
|
23517
|
+
};
|
|
23518
|
+
getTestRunCase: {
|
|
23519
|
+
parameters: {
|
|
23520
|
+
query?: {
|
|
23521
|
+
/** @description When `true`, also returns cases that have reported at least one attempt but still have retries outstanding, marked `is_retrying: true`. Their `status` is provisional (from the attempts so far) and can change when the remaining retries land. Defaults to `false`. */
|
|
23522
|
+
include_retrying?: "true" | "false";
|
|
23523
|
+
};
|
|
23524
|
+
header?: never;
|
|
23525
|
+
path: {
|
|
23526
|
+
/** @description Test run database ID. */
|
|
23527
|
+
id: number;
|
|
23528
|
+
/** @description Playwright test ID (`pw_test_id`) of the case. */
|
|
23529
|
+
case_id: string;
|
|
23530
|
+
};
|
|
23531
|
+
cookie?: never;
|
|
23532
|
+
};
|
|
23533
|
+
requestBody?: never;
|
|
23534
|
+
responses: {
|
|
23535
|
+
/** @description The test run case. */
|
|
23536
|
+
200: {
|
|
23537
|
+
headers: {
|
|
23538
|
+
[name: string]: unknown;
|
|
23539
|
+
};
|
|
23540
|
+
content: {
|
|
23541
|
+
"application/json": components["schemas"]["GetTestRunCaseResponse"];
|
|
23542
|
+
};
|
|
23543
|
+
};
|
|
23544
|
+
/** @description Invalid request. */
|
|
23545
|
+
400: {
|
|
23546
|
+
headers: {
|
|
23547
|
+
[name: string]: unknown;
|
|
23548
|
+
};
|
|
23549
|
+
content: {
|
|
23550
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
23551
|
+
};
|
|
23552
|
+
};
|
|
23553
|
+
/** @description Test run or test case not found. */
|
|
23554
|
+
404: {
|
|
23555
|
+
headers: {
|
|
23556
|
+
[name: string]: unknown;
|
|
23557
|
+
};
|
|
23558
|
+
content: {
|
|
23559
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
23560
|
+
};
|
|
23561
|
+
};
|
|
23562
|
+
};
|
|
23563
|
+
};
|
|
22938
23564
|
listActivity: {
|
|
22939
23565
|
parameters: {
|
|
22940
23566
|
query?: {
|
|
@@ -23650,6 +24276,8 @@ export interface operations {
|
|
|
23650
24276
|
exclude_project_ids?: string;
|
|
23651
24277
|
/** @description Comma-separated creator user IDs to filter by. */
|
|
23652
24278
|
user_ids?: string;
|
|
24279
|
+
/** @description Matches the session title, the creator's name or email, or the session ID. */
|
|
24280
|
+
search?: string;
|
|
23653
24281
|
/** @description Only sessions updated within this many days. */
|
|
23654
24282
|
updated_within_days?: number;
|
|
23655
24283
|
/** @description URL-encoded JSON array of generic filter conditions. */
|
|
@@ -24335,7 +24963,7 @@ export interface operations {
|
|
|
24335
24963
|
[key: string]: number;
|
|
24336
24964
|
}) | null;
|
|
24337
24965
|
};
|
|
24338
|
-
message
|
|
24966
|
+
message?: string;
|
|
24339
24967
|
/** @enum {string} */
|
|
24340
24968
|
cardinality: "one_shot" | "recurring";
|
|
24341
24969
|
}[];
|
|
@@ -24444,7 +25072,7 @@ export interface operations {
|
|
|
24444
25072
|
"application/json": components["schemas"]["ChatSessionForwardMessageResponse"];
|
|
24445
25073
|
};
|
|
24446
25074
|
};
|
|
24447
|
-
/** @description Invalid request. */
|
|
25075
|
+
/** @description Invalid request, or the caller is the target session. */
|
|
24448
25076
|
400: {
|
|
24449
25077
|
headers: {
|
|
24450
25078
|
[name: string]: unknown;
|
|
@@ -24906,38 +25534,6 @@ export interface operations {
|
|
|
24906
25534
|
};
|
|
24907
25535
|
};
|
|
24908
25536
|
};
|
|
24909
|
-
getChatSessionTimeline: {
|
|
24910
|
-
parameters: {
|
|
24911
|
-
query?: never;
|
|
24912
|
-
header?: never;
|
|
24913
|
-
path: {
|
|
24914
|
-
/** @description Chat session ID. */
|
|
24915
|
-
id: number;
|
|
24916
|
-
};
|
|
24917
|
-
cookie?: never;
|
|
24918
|
-
};
|
|
24919
|
-
requestBody?: never;
|
|
24920
|
-
responses: {
|
|
24921
|
-
/** @description The session timeline. */
|
|
24922
|
-
200: {
|
|
24923
|
-
headers: {
|
|
24924
|
-
[name: string]: unknown;
|
|
24925
|
-
};
|
|
24926
|
-
content: {
|
|
24927
|
-
"application/json": components["schemas"]["ChatSessionTimelineResponse"];
|
|
24928
|
-
};
|
|
24929
|
-
};
|
|
24930
|
-
/** @description Chat session not found. */
|
|
24931
|
-
404: {
|
|
24932
|
-
headers: {
|
|
24933
|
-
[name: string]: unknown;
|
|
24934
|
-
};
|
|
24935
|
-
content: {
|
|
24936
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
24937
|
-
};
|
|
24938
|
-
};
|
|
24939
|
-
};
|
|
24940
|
-
};
|
|
24941
25537
|
getChatSessionTranscript: {
|
|
24942
25538
|
parameters: {
|
|
24943
25539
|
query?: never;
|
|
@@ -25066,51 +25662,6 @@ export interface operations {
|
|
|
25066
25662
|
};
|
|
25067
25663
|
};
|
|
25068
25664
|
};
|
|
25069
|
-
listChatSessionUsers: {
|
|
25070
|
-
parameters: {
|
|
25071
|
-
query?: {
|
|
25072
|
-
/** @description Restrict to a single project (ignored for bound principals). */
|
|
25073
|
-
project_id?: number;
|
|
25074
|
-
/** @description Include closed sessions when `true`. */
|
|
25075
|
-
show_closed?: boolean | null;
|
|
25076
|
-
/** @description Filter sessions by preset (all, active, merged). */
|
|
25077
|
-
preset?: "all" | "active" | "merged";
|
|
25078
|
-
};
|
|
25079
|
-
header?: never;
|
|
25080
|
-
path?: never;
|
|
25081
|
-
cookie?: never;
|
|
25082
|
-
};
|
|
25083
|
-
requestBody?: never;
|
|
25084
|
-
responses: {
|
|
25085
|
-
/** @description Distinct chat-session creators. */
|
|
25086
|
-
200: {
|
|
25087
|
-
headers: {
|
|
25088
|
-
[name: string]: unknown;
|
|
25089
|
-
};
|
|
25090
|
-
content: {
|
|
25091
|
-
"application/json": components["schemas"]["ChatSessionUsersResponse"];
|
|
25092
|
-
};
|
|
25093
|
-
};
|
|
25094
|
-
/** @description Invalid request. */
|
|
25095
|
-
400: {
|
|
25096
|
-
headers: {
|
|
25097
|
-
[name: string]: unknown;
|
|
25098
|
-
};
|
|
25099
|
-
content: {
|
|
25100
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
25101
|
-
};
|
|
25102
|
-
};
|
|
25103
|
-
/** @description Project not found or not accessible. */
|
|
25104
|
-
404: {
|
|
25105
|
-
headers: {
|
|
25106
|
-
[name: string]: unknown;
|
|
25107
|
-
};
|
|
25108
|
-
content: {
|
|
25109
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
25110
|
-
};
|
|
25111
|
-
};
|
|
25112
|
-
};
|
|
25113
|
-
};
|
|
25114
25665
|
listCreditGrants: {
|
|
25115
25666
|
parameters: {
|
|
25116
25667
|
query?: {
|
|
@@ -27132,7 +27683,7 @@ export interface operations {
|
|
|
27132
27683
|
"application/json": components["schemas"]["SandboxAuthRefreshError"];
|
|
27133
27684
|
};
|
|
27134
27685
|
};
|
|
27135
|
-
/** @description The session is revoked or
|
|
27686
|
+
/** @description The session is revoked, expired, or not tied to a chat session. */
|
|
27136
27687
|
403: {
|
|
27137
27688
|
headers: {
|
|
27138
27689
|
[name: string]: unknown;
|
|
@@ -29207,6 +29758,15 @@ export interface operations {
|
|
|
29207
29758
|
"application/json": components["schemas"]["ErrorResponse"];
|
|
29208
29759
|
};
|
|
29209
29760
|
};
|
|
29761
|
+
/** @description `expected_version` is behind the memory's current version; nothing was deleted. */
|
|
29762
|
+
409: {
|
|
29763
|
+
headers: {
|
|
29764
|
+
[name: string]: unknown;
|
|
29765
|
+
};
|
|
29766
|
+
content: {
|
|
29767
|
+
"application/json": components["schemas"]["MemoryVersionConflictResponse"];
|
|
29768
|
+
};
|
|
29769
|
+
};
|
|
29210
29770
|
};
|
|
29211
29771
|
};
|
|
29212
29772
|
updateMemory: {
|
|
@@ -29243,6 +29803,15 @@ export interface operations {
|
|
|
29243
29803
|
"application/json": components["schemas"]["ErrorResponse"];
|
|
29244
29804
|
};
|
|
29245
29805
|
};
|
|
29806
|
+
/** @description `expected_version` is behind the memory's current version; nothing was written. */
|
|
29807
|
+
409: {
|
|
29808
|
+
headers: {
|
|
29809
|
+
[name: string]: unknown;
|
|
29810
|
+
};
|
|
29811
|
+
content: {
|
|
29812
|
+
"application/json": components["schemas"]["MemoryVersionConflictResponse"];
|
|
29813
|
+
};
|
|
29814
|
+
};
|
|
29246
29815
|
/** @description Refused by the memory write gate: classified as failure/incident state. */
|
|
29247
29816
|
422: {
|
|
29248
29817
|
headers: {
|
|
@@ -30712,6 +31281,122 @@ export interface operations {
|
|
|
30712
31281
|
};
|
|
30713
31282
|
};
|
|
30714
31283
|
};
|
|
31284
|
+
listPlatformIssues: {
|
|
31285
|
+
parameters: {
|
|
31286
|
+
query?: {
|
|
31287
|
+
/** @description Only open or only resolved issues. Omit for both. */
|
|
31288
|
+
status?: "open" | "resolved";
|
|
31289
|
+
limit?: number;
|
|
31290
|
+
};
|
|
31291
|
+
header?: never;
|
|
31292
|
+
path?: never;
|
|
31293
|
+
cookie?: never;
|
|
31294
|
+
};
|
|
31295
|
+
requestBody?: never;
|
|
31296
|
+
responses: {
|
|
31297
|
+
/** @description The issues. */
|
|
31298
|
+
200: {
|
|
31299
|
+
headers: {
|
|
31300
|
+
[name: string]: unknown;
|
|
31301
|
+
};
|
|
31302
|
+
content: {
|
|
31303
|
+
"application/json": components["schemas"]["PlatformIssueListResponse"];
|
|
31304
|
+
};
|
|
31305
|
+
};
|
|
31306
|
+
/** @description Listing every project's issues needs super admin. */
|
|
31307
|
+
403: {
|
|
31308
|
+
headers: {
|
|
31309
|
+
[name: string]: unknown;
|
|
31310
|
+
};
|
|
31311
|
+
content: {
|
|
31312
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
31313
|
+
};
|
|
31314
|
+
};
|
|
31315
|
+
/** @description Project not found or not accessible. */
|
|
31316
|
+
404: {
|
|
31317
|
+
headers: {
|
|
31318
|
+
[name: string]: unknown;
|
|
31319
|
+
};
|
|
31320
|
+
content: {
|
|
31321
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
31322
|
+
};
|
|
31323
|
+
};
|
|
31324
|
+
};
|
|
31325
|
+
};
|
|
31326
|
+
reportPlatformIssue: {
|
|
31327
|
+
parameters: {
|
|
31328
|
+
query?: never;
|
|
31329
|
+
header?: never;
|
|
31330
|
+
path?: never;
|
|
31331
|
+
cookie?: never;
|
|
31332
|
+
};
|
|
31333
|
+
requestBody?: {
|
|
31334
|
+
content: {
|
|
31335
|
+
"application/json": components["schemas"]["ReportPlatformIssueRequest"];
|
|
31336
|
+
};
|
|
31337
|
+
};
|
|
31338
|
+
responses: {
|
|
31339
|
+
/** @description The reported (or already open) issue. */
|
|
31340
|
+
200: {
|
|
31341
|
+
headers: {
|
|
31342
|
+
[name: string]: unknown;
|
|
31343
|
+
};
|
|
31344
|
+
content: {
|
|
31345
|
+
"application/json": components["schemas"]["ReportPlatformIssueResponse"];
|
|
31346
|
+
};
|
|
31347
|
+
};
|
|
31348
|
+
/** @description Invalid request or missing project scope. */
|
|
31349
|
+
400: {
|
|
31350
|
+
headers: {
|
|
31351
|
+
[name: string]: unknown;
|
|
31352
|
+
};
|
|
31353
|
+
content: {
|
|
31354
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
31355
|
+
};
|
|
31356
|
+
};
|
|
31357
|
+
/** @description Project or memory not found. */
|
|
31358
|
+
404: {
|
|
31359
|
+
headers: {
|
|
31360
|
+
[name: string]: unknown;
|
|
31361
|
+
};
|
|
31362
|
+
content: {
|
|
31363
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
31364
|
+
};
|
|
31365
|
+
};
|
|
31366
|
+
};
|
|
31367
|
+
};
|
|
31368
|
+
resolvePlatformIssue: {
|
|
31369
|
+
parameters: {
|
|
31370
|
+
query?: never;
|
|
31371
|
+
header?: never;
|
|
31372
|
+
path: {
|
|
31373
|
+
/** @description Issue ID. */
|
|
31374
|
+
id: number;
|
|
31375
|
+
};
|
|
31376
|
+
cookie?: never;
|
|
31377
|
+
};
|
|
31378
|
+
requestBody?: never;
|
|
31379
|
+
responses: {
|
|
31380
|
+
/** @description The resolved issue. */
|
|
31381
|
+
200: {
|
|
31382
|
+
headers: {
|
|
31383
|
+
[name: string]: unknown;
|
|
31384
|
+
};
|
|
31385
|
+
content: {
|
|
31386
|
+
"application/json": components["schemas"]["PlatformIssueResponse"];
|
|
31387
|
+
};
|
|
31388
|
+
};
|
|
31389
|
+
/** @description Issue not found. */
|
|
31390
|
+
404: {
|
|
31391
|
+
headers: {
|
|
31392
|
+
[name: string]: unknown;
|
|
31393
|
+
};
|
|
31394
|
+
content: {
|
|
31395
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
31396
|
+
};
|
|
31397
|
+
};
|
|
31398
|
+
};
|
|
31399
|
+
};
|
|
30715
31400
|
listProjectAddons: {
|
|
30716
31401
|
parameters: {
|
|
30717
31402
|
query?: never;
|
|
@@ -31375,7 +32060,7 @@ export interface operations {
|
|
|
31375
32060
|
checkProjectRepoSettings: {
|
|
31376
32061
|
parameters: {
|
|
31377
32062
|
query?: {
|
|
31378
|
-
/** @description Check this GitHub owner's repo instead of the project's (e.g. a repo transfer destination). Requires `repo_name`;
|
|
32063
|
+
/** @description Check this GitHub owner's repo instead of the project's (e.g. a repo transfer destination). Requires `repo_name`; cannot be `empirical-run`. */
|
|
31379
32064
|
repo_owner?: string;
|
|
31380
32065
|
/** @description Repository name to check, with `repo_owner`. */
|
|
31381
32066
|
repo_name?: string;
|
|
@@ -31427,65 +32112,6 @@ export interface operations {
|
|
|
31427
32112
|
};
|
|
31428
32113
|
};
|
|
31429
32114
|
};
|
|
31430
|
-
fixProjectRepoSettings: {
|
|
31431
|
-
parameters: {
|
|
31432
|
-
query?: never;
|
|
31433
|
-
header?: never;
|
|
31434
|
-
path: {
|
|
31435
|
-
/** @description Project ID. */
|
|
31436
|
-
id: number;
|
|
31437
|
-
};
|
|
31438
|
-
cookie?: never;
|
|
31439
|
-
};
|
|
31440
|
-
requestBody?: never;
|
|
31441
|
-
responses: {
|
|
31442
|
-
/** @description Re-checked results. */
|
|
31443
|
-
200: {
|
|
31444
|
-
headers: {
|
|
31445
|
-
[name: string]: unknown;
|
|
31446
|
-
};
|
|
31447
|
-
content: {
|
|
31448
|
-
"application/json": components["schemas"]["RepoSettingsCheckResponse"];
|
|
31449
|
-
};
|
|
31450
|
-
};
|
|
31451
|
-
/** @description Project has no GitHub repository. */
|
|
31452
|
-
400: {
|
|
31453
|
-
headers: {
|
|
31454
|
-
[name: string]: unknown;
|
|
31455
|
-
};
|
|
31456
|
-
content: {
|
|
31457
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
31458
|
-
};
|
|
31459
|
-
};
|
|
31460
|
-
/** @description Repository isn't owned by empirical-run. */
|
|
31461
|
-
403: {
|
|
31462
|
-
headers: {
|
|
31463
|
-
[name: string]: unknown;
|
|
31464
|
-
};
|
|
31465
|
-
content: {
|
|
31466
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
31467
|
-
};
|
|
31468
|
-
};
|
|
31469
|
-
/** @description Project not found. */
|
|
31470
|
-
404: {
|
|
31471
|
-
headers: {
|
|
31472
|
-
[name: string]: unknown;
|
|
31473
|
-
};
|
|
31474
|
-
content: {
|
|
31475
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
31476
|
-
};
|
|
31477
|
-
};
|
|
31478
|
-
/** @description GitHub request failed. */
|
|
31479
|
-
502: {
|
|
31480
|
-
headers: {
|
|
31481
|
-
[name: string]: unknown;
|
|
31482
|
-
};
|
|
31483
|
-
content: {
|
|
31484
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
31485
|
-
};
|
|
31486
|
-
};
|
|
31487
|
-
};
|
|
31488
|
-
};
|
|
31489
32115
|
triggerProjectTestCasesSync: {
|
|
31490
32116
|
parameters: {
|
|
31491
32117
|
query?: never;
|
|
@@ -32030,6 +32656,39 @@ export interface operations {
|
|
|
32030
32656
|
};
|
|
32031
32657
|
};
|
|
32032
32658
|
};
|
|
32659
|
+
getProjectNpmSnapshotUrls: {
|
|
32660
|
+
parameters: {
|
|
32661
|
+
query?: never;
|
|
32662
|
+
header?: never;
|
|
32663
|
+
path?: never;
|
|
32664
|
+
cookie?: never;
|
|
32665
|
+
};
|
|
32666
|
+
requestBody?: {
|
|
32667
|
+
content: {
|
|
32668
|
+
"application/json": components["schemas"]["ProjectNpmSnapshotUrlsBody"];
|
|
32669
|
+
};
|
|
32670
|
+
};
|
|
32671
|
+
responses: {
|
|
32672
|
+
/** @description Presigned snapshot URLs. */
|
|
32673
|
+
200: {
|
|
32674
|
+
headers: {
|
|
32675
|
+
[name: string]: unknown;
|
|
32676
|
+
};
|
|
32677
|
+
content: {
|
|
32678
|
+
"application/json": components["schemas"]["ProjectNpmSnapshotUrlsResponse"];
|
|
32679
|
+
};
|
|
32680
|
+
};
|
|
32681
|
+
/** @description The project has no npm snapshot storage. */
|
|
32682
|
+
404: {
|
|
32683
|
+
headers: {
|
|
32684
|
+
[name: string]: unknown;
|
|
32685
|
+
};
|
|
32686
|
+
content: {
|
|
32687
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
32688
|
+
};
|
|
32689
|
+
};
|
|
32690
|
+
};
|
|
32691
|
+
};
|
|
32033
32692
|
getProjectStaticIpProxyToken: {
|
|
32034
32693
|
parameters: {
|
|
32035
32694
|
query?: never;
|
|
@@ -32777,202 +33436,6 @@ export interface operations {
|
|
|
32777
33436
|
};
|
|
32778
33437
|
};
|
|
32779
33438
|
};
|
|
32780
|
-
listSandboxSnapshots: {
|
|
32781
|
-
parameters: {
|
|
32782
|
-
query?: never;
|
|
32783
|
-
header?: never;
|
|
32784
|
-
path?: never;
|
|
32785
|
-
cookie?: never;
|
|
32786
|
-
};
|
|
32787
|
-
requestBody?: never;
|
|
32788
|
-
responses: {
|
|
32789
|
-
/** @description The project's sandbox snapshots. */
|
|
32790
|
-
200: {
|
|
32791
|
-
headers: {
|
|
32792
|
-
[name: string]: unknown;
|
|
32793
|
-
};
|
|
32794
|
-
content: {
|
|
32795
|
-
"application/json": components["schemas"]["SandboxSnapshotListResponse"];
|
|
32796
|
-
};
|
|
32797
|
-
};
|
|
32798
|
-
/** @description Invalid project scope. */
|
|
32799
|
-
400: {
|
|
32800
|
-
headers: {
|
|
32801
|
-
[name: string]: unknown;
|
|
32802
|
-
};
|
|
32803
|
-
content: {
|
|
32804
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32805
|
-
};
|
|
32806
|
-
};
|
|
32807
|
-
/** @description Project not found. */
|
|
32808
|
-
404: {
|
|
32809
|
-
headers: {
|
|
32810
|
-
[name: string]: unknown;
|
|
32811
|
-
};
|
|
32812
|
-
content: {
|
|
32813
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32814
|
-
};
|
|
32815
|
-
};
|
|
32816
|
-
};
|
|
32817
|
-
};
|
|
32818
|
-
createSandboxSnapshot: {
|
|
32819
|
-
parameters: {
|
|
32820
|
-
query?: never;
|
|
32821
|
-
header?: never;
|
|
32822
|
-
path?: never;
|
|
32823
|
-
cookie?: never;
|
|
32824
|
-
};
|
|
32825
|
-
requestBody?: {
|
|
32826
|
-
content: {
|
|
32827
|
-
"application/json": components["schemas"]["CreateSandboxSnapshotRequest"];
|
|
32828
|
-
};
|
|
32829
|
-
};
|
|
32830
|
-
responses: {
|
|
32831
|
-
/** @description Snapshot creation enqueued. */
|
|
32832
|
-
200: {
|
|
32833
|
-
headers: {
|
|
32834
|
-
[name: string]: unknown;
|
|
32835
|
-
};
|
|
32836
|
-
content: {
|
|
32837
|
-
"application/json": components["schemas"]["SandboxSnapshotTriggeredResponse"];
|
|
32838
|
-
};
|
|
32839
|
-
};
|
|
32840
|
-
/** @description Invalid request. */
|
|
32841
|
-
400: {
|
|
32842
|
-
headers: {
|
|
32843
|
-
[name: string]: unknown;
|
|
32844
|
-
};
|
|
32845
|
-
content: {
|
|
32846
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32847
|
-
};
|
|
32848
|
-
};
|
|
32849
|
-
/** @description Project not found. */
|
|
32850
|
-
404: {
|
|
32851
|
-
headers: {
|
|
32852
|
-
[name: string]: unknown;
|
|
32853
|
-
};
|
|
32854
|
-
content: {
|
|
32855
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32856
|
-
};
|
|
32857
|
-
};
|
|
32858
|
-
/** @description The jobs queue is not configured. */
|
|
32859
|
-
500: {
|
|
32860
|
-
headers: {
|
|
32861
|
-
[name: string]: unknown;
|
|
32862
|
-
};
|
|
32863
|
-
content: {
|
|
32864
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32865
|
-
};
|
|
32866
|
-
};
|
|
32867
|
-
};
|
|
32868
|
-
};
|
|
32869
|
-
listProjectSandboxSnapshots: {
|
|
32870
|
-
parameters: {
|
|
32871
|
-
query?: never;
|
|
32872
|
-
header?: never;
|
|
32873
|
-
path: {
|
|
32874
|
-
/** @description Project ID (positive integer). */
|
|
32875
|
-
project_id: string;
|
|
32876
|
-
};
|
|
32877
|
-
cookie?: never;
|
|
32878
|
-
};
|
|
32879
|
-
requestBody?: never;
|
|
32880
|
-
responses: {
|
|
32881
|
-
/** @description The project's sandbox snapshots. */
|
|
32882
|
-
200: {
|
|
32883
|
-
headers: {
|
|
32884
|
-
[name: string]: unknown;
|
|
32885
|
-
};
|
|
32886
|
-
content: {
|
|
32887
|
-
"application/json": components["schemas"]["SandboxSnapshotListResponse"];
|
|
32888
|
-
};
|
|
32889
|
-
};
|
|
32890
|
-
};
|
|
32891
|
-
};
|
|
32892
|
-
rebuildSandboxSnapshots: {
|
|
32893
|
-
parameters: {
|
|
32894
|
-
query?: never;
|
|
32895
|
-
header?: never;
|
|
32896
|
-
path?: never;
|
|
32897
|
-
cookie?: never;
|
|
32898
|
-
};
|
|
32899
|
-
requestBody?: {
|
|
32900
|
-
content: {
|
|
32901
|
-
"application/json": components["schemas"]["RebuildSandboxSnapshotsRequest"];
|
|
32902
|
-
};
|
|
32903
|
-
};
|
|
32904
|
-
responses: {
|
|
32905
|
-
/** @description Rebuilds enqueued. */
|
|
32906
|
-
200: {
|
|
32907
|
-
headers: {
|
|
32908
|
-
[name: string]: unknown;
|
|
32909
|
-
};
|
|
32910
|
-
content: {
|
|
32911
|
-
"application/json": components["schemas"]["SandboxSnapshotRebuildResponse"];
|
|
32912
|
-
};
|
|
32913
|
-
};
|
|
32914
|
-
/** @description Unsupported provider or invalid request. */
|
|
32915
|
-
400: {
|
|
32916
|
-
headers: {
|
|
32917
|
-
[name: string]: unknown;
|
|
32918
|
-
};
|
|
32919
|
-
content: {
|
|
32920
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32921
|
-
};
|
|
32922
|
-
};
|
|
32923
|
-
/** @description The jobs queue is not configured. */
|
|
32924
|
-
500: {
|
|
32925
|
-
headers: {
|
|
32926
|
-
[name: string]: unknown;
|
|
32927
|
-
};
|
|
32928
|
-
content: {
|
|
32929
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32930
|
-
};
|
|
32931
|
-
};
|
|
32932
|
-
};
|
|
32933
|
-
};
|
|
32934
|
-
rebuildSandboxSnapshotsByTemplate: {
|
|
32935
|
-
parameters: {
|
|
32936
|
-
query?: never;
|
|
32937
|
-
header?: never;
|
|
32938
|
-
path?: never;
|
|
32939
|
-
cookie?: never;
|
|
32940
|
-
};
|
|
32941
|
-
requestBody?: {
|
|
32942
|
-
content: {
|
|
32943
|
-
"application/json": components["schemas"]["RebuildSandboxSnapshotsByTemplateRequest"];
|
|
32944
|
-
};
|
|
32945
|
-
};
|
|
32946
|
-
responses: {
|
|
32947
|
-
/** @description Rebuilds enqueued. */
|
|
32948
|
-
200: {
|
|
32949
|
-
headers: {
|
|
32950
|
-
[name: string]: unknown;
|
|
32951
|
-
};
|
|
32952
|
-
content: {
|
|
32953
|
-
"application/json": components["schemas"]["SandboxSnapshotRebuildResponse"];
|
|
32954
|
-
};
|
|
32955
|
-
};
|
|
32956
|
-
/** @description Invalid request. */
|
|
32957
|
-
400: {
|
|
32958
|
-
headers: {
|
|
32959
|
-
[name: string]: unknown;
|
|
32960
|
-
};
|
|
32961
|
-
content: {
|
|
32962
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32963
|
-
};
|
|
32964
|
-
};
|
|
32965
|
-
/** @description The jobs queue is not configured. */
|
|
32966
|
-
500: {
|
|
32967
|
-
headers: {
|
|
32968
|
-
[name: string]: unknown;
|
|
32969
|
-
};
|
|
32970
|
-
content: {
|
|
32971
|
-
"application/json": components["schemas"]["ErrorResponse"];
|
|
32972
|
-
};
|
|
32973
|
-
};
|
|
32974
|
-
};
|
|
32975
|
-
};
|
|
32976
33439
|
upsertSandboxSnapshotSources: {
|
|
32977
33440
|
parameters: {
|
|
32978
33441
|
query?: never;
|
|
@@ -33238,6 +33701,39 @@ export interface operations {
|
|
|
33238
33701
|
};
|
|
33239
33702
|
};
|
|
33240
33703
|
};
|
|
33704
|
+
createTestReportUploadUrls: {
|
|
33705
|
+
parameters: {
|
|
33706
|
+
query?: never;
|
|
33707
|
+
header?: never;
|
|
33708
|
+
path?: never;
|
|
33709
|
+
cookie?: never;
|
|
33710
|
+
};
|
|
33711
|
+
requestBody?: {
|
|
33712
|
+
content: {
|
|
33713
|
+
"application/json": components["schemas"]["CreateTestReportUploadUrlsRequest"];
|
|
33714
|
+
};
|
|
33715
|
+
};
|
|
33716
|
+
responses: {
|
|
33717
|
+
/** @description Upload URLs, in request order. */
|
|
33718
|
+
200: {
|
|
33719
|
+
headers: {
|
|
33720
|
+
[name: string]: unknown;
|
|
33721
|
+
};
|
|
33722
|
+
content: {
|
|
33723
|
+
"application/json": components["schemas"]["CreateTestReportUploadUrlsResponse"];
|
|
33724
|
+
};
|
|
33725
|
+
};
|
|
33726
|
+
/** @description Invalid request. */
|
|
33727
|
+
400: {
|
|
33728
|
+
headers: {
|
|
33729
|
+
[name: string]: unknown;
|
|
33730
|
+
};
|
|
33731
|
+
content: {
|
|
33732
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
33733
|
+
};
|
|
33734
|
+
};
|
|
33735
|
+
};
|
|
33736
|
+
};
|
|
33241
33737
|
ingestTestCaseRunEndEvent: {
|
|
33242
33738
|
parameters: {
|
|
33243
33739
|
query?: never;
|