@topline-build/harness-mcp 0.5.2 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/README.md +8 -0
- package/dist/build-session-tools.d.ts +9 -0
- package/dist/build-session-tools.js +63 -0
- package/dist/index.d.ts +33 -6
- package/dist/index.js +399 -20
- package/dist/source-checkout.d.ts +10 -0
- package/dist/source-checkout.js +146 -0
- package/docs/generated/build-mcp-manifest.json +2384 -143
- package/docs/generated/build-mcp-reference.md +2624 -136
- package/package.json +4 -2
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> Generated from `src/index.ts#BUILD_MCP_TOOLS`. Do not edit this file by hand.
|
|
4
4
|
|
|
5
|
-
Package: `@topline-build/harness-mcp@0.
|
|
5
|
+
Package: `@topline-build/harness-mcp@0.6.0`
|
|
6
6
|
Transport: `stdio`
|
|
7
7
|
Default protocol: `2025-11-25`
|
|
8
8
|
Canonical guide: https://topline.build/docs/build-mcp-guide
|
|
@@ -359,6 +359,31 @@ Input schema:
|
|
|
359
359
|
"minLength": 1,
|
|
360
360
|
"maxLength": 128,
|
|
361
361
|
"description": "Optional stable retry key; generated deterministically when omitted."
|
|
362
|
+
},
|
|
363
|
+
"sessionId": {
|
|
364
|
+
"type": "string",
|
|
365
|
+
"format": "uuid"
|
|
366
|
+
},
|
|
367
|
+
"artifactVersionId": {
|
|
368
|
+
"type": "string",
|
|
369
|
+
"format": "uuid",
|
|
370
|
+
"description": "Exact current version from the session or checkout; required with sessionId."
|
|
371
|
+
},
|
|
372
|
+
"idempotencyKey": {
|
|
373
|
+
"type": "string",
|
|
374
|
+
"minLength": 1,
|
|
375
|
+
"maxLength": 128,
|
|
376
|
+
"pattern": "^[A-Za-z0-9._:-]+$"
|
|
377
|
+
},
|
|
378
|
+
"inspectedSourceHash": {
|
|
379
|
+
"type": "string",
|
|
380
|
+
"pattern": "^[0-9a-fA-F]{64}$",
|
|
381
|
+
"description": "Echo the session/source checkout hash; required with sessionId. expectedBundleSha256 separately pins the newly inspected local upload."
|
|
382
|
+
},
|
|
383
|
+
"platformAppDir": {
|
|
384
|
+
"type": "string",
|
|
385
|
+
"minLength": 1,
|
|
386
|
+
"description": "Saved remote app root from an existing-app checkout. Session mode only; preserve this when the local checkout directory has a different name."
|
|
362
387
|
}
|
|
363
388
|
},
|
|
364
389
|
"required": [
|
|
@@ -495,6 +520,11 @@ Input schema:
|
|
|
495
520
|
"appDir": {
|
|
496
521
|
"type": "string",
|
|
497
522
|
"minLength": 1
|
|
523
|
+
},
|
|
524
|
+
"platformAppDir": {
|
|
525
|
+
"type": "string",
|
|
526
|
+
"minLength": 1,
|
|
527
|
+
"description": "Preserve the saved remote source root returned by checkout when inspecting an existing app."
|
|
498
528
|
}
|
|
499
529
|
},
|
|
500
530
|
"required": [
|
|
@@ -1605,17 +1635,95 @@ Output schema:
|
|
|
1605
1635
|
}
|
|
1606
1636
|
```
|
|
1607
1637
|
|
|
1608
|
-
### `
|
|
1638
|
+
### `platform_get_design_system_state`
|
|
1609
1639
|
|
|
1610
|
-
|
|
1640
|
+
Get the tenant Storyboard's published and draft commits, run status, and preview URL before editing or publishing. May reconcile a completed managed draft.
|
|
1611
1641
|
|
|
1612
|
-
Safety: read-only=
|
|
1642
|
+
Safety: read-only=false, destructive=false, idempotent=false, open-world=false.
|
|
1613
1643
|
|
|
1614
1644
|
Example request:
|
|
1615
1645
|
|
|
1646
|
+
```json
|
|
1647
|
+
{}
|
|
1648
|
+
```
|
|
1649
|
+
|
|
1650
|
+
Example success:
|
|
1651
|
+
|
|
1652
|
+
```json
|
|
1653
|
+
{}
|
|
1654
|
+
```
|
|
1655
|
+
|
|
1656
|
+
Input schema:
|
|
1657
|
+
|
|
1616
1658
|
```json
|
|
1617
1659
|
{
|
|
1618
|
-
"
|
|
1660
|
+
"type": "object",
|
|
1661
|
+
"properties": {},
|
|
1662
|
+
"additionalProperties": false
|
|
1663
|
+
}
|
|
1664
|
+
```
|
|
1665
|
+
|
|
1666
|
+
Output schema:
|
|
1667
|
+
|
|
1668
|
+
```json
|
|
1669
|
+
{
|
|
1670
|
+
"type": "object",
|
|
1671
|
+
"oneOf": [
|
|
1672
|
+
{
|
|
1673
|
+
"type": "object"
|
|
1674
|
+
},
|
|
1675
|
+
{
|
|
1676
|
+
"type": "object",
|
|
1677
|
+
"properties": {
|
|
1678
|
+
"ok": {
|
|
1679
|
+
"const": false
|
|
1680
|
+
},
|
|
1681
|
+
"error": {
|
|
1682
|
+
"type": "object",
|
|
1683
|
+
"properties": {
|
|
1684
|
+
"code": {
|
|
1685
|
+
"type": "string"
|
|
1686
|
+
},
|
|
1687
|
+
"message": {
|
|
1688
|
+
"type": "string"
|
|
1689
|
+
},
|
|
1690
|
+
"retryable": {
|
|
1691
|
+
"type": "boolean"
|
|
1692
|
+
},
|
|
1693
|
+
"recoveryAction": {
|
|
1694
|
+
"type": "string"
|
|
1695
|
+
}
|
|
1696
|
+
},
|
|
1697
|
+
"required": [
|
|
1698
|
+
"code",
|
|
1699
|
+
"message",
|
|
1700
|
+
"retryable",
|
|
1701
|
+
"recoveryAction"
|
|
1702
|
+
],
|
|
1703
|
+
"additionalProperties": false
|
|
1704
|
+
}
|
|
1705
|
+
},
|
|
1706
|
+
"required": [
|
|
1707
|
+
"ok",
|
|
1708
|
+
"error"
|
|
1709
|
+
],
|
|
1710
|
+
"additionalProperties": false
|
|
1711
|
+
}
|
|
1712
|
+
]
|
|
1713
|
+
}
|
|
1714
|
+
```
|
|
1715
|
+
|
|
1716
|
+
### `platform_checkout_design_system`
|
|
1717
|
+
|
|
1718
|
+
Download the exact published tenant Storyboard source into a new local directory for Codex or Claude Code to edit and run with npm ci and npm run storybook. Never overwrites an existing directory.
|
|
1719
|
+
|
|
1720
|
+
Safety: read-only=false, destructive=false, idempotent=false, open-world=true.
|
|
1721
|
+
|
|
1722
|
+
Example request:
|
|
1723
|
+
|
|
1724
|
+
```json
|
|
1725
|
+
{
|
|
1726
|
+
"targetDir": "<targetDir>"
|
|
1619
1727
|
}
|
|
1620
1728
|
```
|
|
1621
1729
|
|
|
@@ -1624,14 +1732,9 @@ Example success:
|
|
|
1624
1732
|
```json
|
|
1625
1733
|
{
|
|
1626
1734
|
"ok": true,
|
|
1627
|
-
"
|
|
1628
|
-
"
|
|
1629
|
-
"
|
|
1630
|
-
"deploymentState": "<deploymentState>",
|
|
1631
|
-
"healthy": true,
|
|
1632
|
-
"checkedAt": "<checkedAt>",
|
|
1633
|
-
"draftUrl": "<draftUrl>",
|
|
1634
|
-
"smoke": {}
|
|
1735
|
+
"directory": "<directory>",
|
|
1736
|
+
"currentCommit": "<currentCommit>",
|
|
1737
|
+
"localCommands": []
|
|
1635
1738
|
}
|
|
1636
1739
|
```
|
|
1637
1740
|
|
|
@@ -1641,17 +1744,13 @@ Input schema:
|
|
|
1641
1744
|
{
|
|
1642
1745
|
"type": "object",
|
|
1643
1746
|
"properties": {
|
|
1644
|
-
"
|
|
1645
|
-
"type": "string",
|
|
1646
|
-
"format": "uuid"
|
|
1647
|
-
},
|
|
1648
|
-
"deploymentRecordId": {
|
|
1747
|
+
"targetDir": {
|
|
1649
1748
|
"type": "string",
|
|
1650
|
-
"
|
|
1749
|
+
"minLength": 1
|
|
1651
1750
|
}
|
|
1652
1751
|
},
|
|
1653
1752
|
"required": [
|
|
1654
|
-
"
|
|
1753
|
+
"targetDir"
|
|
1655
1754
|
],
|
|
1656
1755
|
"additionalProperties": false
|
|
1657
1756
|
}
|
|
@@ -1669,50 +1768,24 @@ Output schema:
|
|
|
1669
1768
|
"ok": {
|
|
1670
1769
|
"type": "boolean"
|
|
1671
1770
|
},
|
|
1672
|
-
"
|
|
1673
|
-
"type": "string"
|
|
1674
|
-
},
|
|
1675
|
-
"artifactId": {
|
|
1676
|
-
"type": "string"
|
|
1677
|
-
},
|
|
1678
|
-
"deploymentRecordId": {
|
|
1771
|
+
"directory": {
|
|
1679
1772
|
"type": "string"
|
|
1680
1773
|
},
|
|
1681
|
-
"
|
|
1774
|
+
"currentCommit": {
|
|
1682
1775
|
"type": "string"
|
|
1683
1776
|
},
|
|
1684
|
-
"
|
|
1685
|
-
"type": "
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
"string",
|
|
1690
|
-
"null"
|
|
1691
|
-
]
|
|
1692
|
-
},
|
|
1693
|
-
"draftUrl": {
|
|
1694
|
-
"type": [
|
|
1695
|
-
"string",
|
|
1696
|
-
"null"
|
|
1697
|
-
]
|
|
1698
|
-
},
|
|
1699
|
-
"smoke": {
|
|
1700
|
-
"type": [
|
|
1701
|
-
"object",
|
|
1702
|
-
"null"
|
|
1703
|
-
]
|
|
1777
|
+
"localCommands": {
|
|
1778
|
+
"type": "array",
|
|
1779
|
+
"items": {
|
|
1780
|
+
"type": "string"
|
|
1781
|
+
}
|
|
1704
1782
|
}
|
|
1705
1783
|
},
|
|
1706
1784
|
"required": [
|
|
1707
1785
|
"ok",
|
|
1708
|
-
"
|
|
1709
|
-
"
|
|
1710
|
-
"
|
|
1711
|
-
"deploymentState",
|
|
1712
|
-
"healthy",
|
|
1713
|
-
"checkedAt",
|
|
1714
|
-
"draftUrl",
|
|
1715
|
-
"smoke"
|
|
1786
|
+
"directory",
|
|
1787
|
+
"currentCommit",
|
|
1788
|
+
"localCommands"
|
|
1716
1789
|
]
|
|
1717
1790
|
},
|
|
1718
1791
|
{
|
|
@@ -1756,9 +1829,9 @@ Output schema:
|
|
|
1756
1829
|
}
|
|
1757
1830
|
```
|
|
1758
1831
|
|
|
1759
|
-
### `
|
|
1832
|
+
### `platform_submit_design_system_draft`
|
|
1760
1833
|
|
|
1761
|
-
|
|
1834
|
+
Package a locally edited Storyboard source directory and submit it as a private draft against exact published and draft revisions. The server validates and builds it before it can be published.
|
|
1762
1835
|
|
|
1763
1836
|
Safety: read-only=false, destructive=false, idempotent=false, open-world=true.
|
|
1764
1837
|
|
|
@@ -1766,7 +1839,9 @@ Example request:
|
|
|
1766
1839
|
|
|
1767
1840
|
```json
|
|
1768
1841
|
{
|
|
1769
|
-
"
|
|
1842
|
+
"localDir": "<localDir>",
|
|
1843
|
+
"expectedCurrentCommit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
1844
|
+
"expectedDraftRunId": "00000000-0000-4000-8000-000000000001"
|
|
1770
1845
|
}
|
|
1771
1846
|
```
|
|
1772
1847
|
|
|
@@ -1775,11 +1850,12 @@ Example success:
|
|
|
1775
1850
|
```json
|
|
1776
1851
|
{
|
|
1777
1852
|
"ok": true,
|
|
1778
|
-
"
|
|
1779
|
-
"
|
|
1780
|
-
"
|
|
1781
|
-
"
|
|
1782
|
-
"
|
|
1853
|
+
"runId": "<runId>",
|
|
1854
|
+
"draftCommit": "<draftCommit>",
|
|
1855
|
+
"draftState": "<draftState>",
|
|
1856
|
+
"previewUrl": "<previewUrl>",
|
|
1857
|
+
"requestId": "<requestId>",
|
|
1858
|
+
"bundleSha256": "<bundleSha256>"
|
|
1783
1859
|
}
|
|
1784
1860
|
```
|
|
1785
1861
|
|
|
@@ -1789,17 +1865,30 @@ Input schema:
|
|
|
1789
1865
|
{
|
|
1790
1866
|
"type": "object",
|
|
1791
1867
|
"properties": {
|
|
1792
|
-
"
|
|
1868
|
+
"localDir": {
|
|
1793
1869
|
"type": "string",
|
|
1794
|
-
"
|
|
1870
|
+
"minLength": 1
|
|
1795
1871
|
},
|
|
1796
|
-
"
|
|
1872
|
+
"expectedCurrentCommit": {
|
|
1797
1873
|
"type": "string",
|
|
1798
|
-
"
|
|
1874
|
+
"pattern": "^[a-f0-9]{40}$"
|
|
1875
|
+
},
|
|
1876
|
+
"expectedDraftRunId": {
|
|
1877
|
+
"anyOf": [
|
|
1878
|
+
{
|
|
1879
|
+
"type": "string",
|
|
1880
|
+
"format": "uuid"
|
|
1881
|
+
},
|
|
1882
|
+
{
|
|
1883
|
+
"type": "null"
|
|
1884
|
+
}
|
|
1885
|
+
]
|
|
1799
1886
|
}
|
|
1800
1887
|
},
|
|
1801
1888
|
"required": [
|
|
1802
|
-
"
|
|
1889
|
+
"localDir",
|
|
1890
|
+
"expectedCurrentCommit",
|
|
1891
|
+
"expectedDraftRunId"
|
|
1803
1892
|
],
|
|
1804
1893
|
"additionalProperties": false
|
|
1805
1894
|
}
|
|
@@ -1817,29 +1906,33 @@ Output schema:
|
|
|
1817
1906
|
"ok": {
|
|
1818
1907
|
"type": "boolean"
|
|
1819
1908
|
},
|
|
1820
|
-
"
|
|
1909
|
+
"runId": {
|
|
1821
1910
|
"type": "string"
|
|
1822
1911
|
},
|
|
1823
|
-
"
|
|
1912
|
+
"draftCommit": {
|
|
1824
1913
|
"type": "string"
|
|
1825
1914
|
},
|
|
1826
|
-
"
|
|
1915
|
+
"draftState": {
|
|
1827
1916
|
"type": "string"
|
|
1828
1917
|
},
|
|
1829
|
-
"
|
|
1830
|
-
"type": "
|
|
1918
|
+
"previewUrl": {
|
|
1919
|
+
"type": "string"
|
|
1831
1920
|
},
|
|
1832
|
-
"
|
|
1833
|
-
"type": "
|
|
1921
|
+
"requestId": {
|
|
1922
|
+
"type": "string"
|
|
1923
|
+
},
|
|
1924
|
+
"bundleSha256": {
|
|
1925
|
+
"type": "string"
|
|
1834
1926
|
}
|
|
1835
1927
|
},
|
|
1836
1928
|
"required": [
|
|
1837
1929
|
"ok",
|
|
1838
|
-
"
|
|
1839
|
-
"
|
|
1840
|
-
"
|
|
1841
|
-
"
|
|
1842
|
-
"
|
|
1930
|
+
"runId",
|
|
1931
|
+
"draftCommit",
|
|
1932
|
+
"draftState",
|
|
1933
|
+
"previewUrl",
|
|
1934
|
+
"requestId",
|
|
1935
|
+
"bundleSha256"
|
|
1843
1936
|
]
|
|
1844
1937
|
},
|
|
1845
1938
|
{
|
|
@@ -1883,17 +1976,19 @@ Output schema:
|
|
|
1883
1976
|
}
|
|
1884
1977
|
```
|
|
1885
1978
|
|
|
1886
|
-
### `
|
|
1979
|
+
### `platform_edit_design_system`
|
|
1887
1980
|
|
|
1888
|
-
|
|
1981
|
+
Start an asynchronous Storyboard draft edit in an existing writable Topline Storyboard conversation. Pass expectedDraftRunId from the last state read (null for no draft); stale or concurrent retries are rejected.
|
|
1889
1982
|
|
|
1890
|
-
Safety: read-only=
|
|
1983
|
+
Safety: read-only=false, destructive=false, idempotent=false, open-world=true.
|
|
1891
1984
|
|
|
1892
1985
|
Example request:
|
|
1893
1986
|
|
|
1894
1987
|
```json
|
|
1895
1988
|
{
|
|
1896
|
-
"
|
|
1989
|
+
"conversationId": "00000000-0000-4000-8000-000000000001",
|
|
1990
|
+
"instruction": "<instruction>",
|
|
1991
|
+
"expectedDraftRunId": "00000000-0000-4000-8000-000000000001"
|
|
1897
1992
|
}
|
|
1898
1993
|
```
|
|
1899
1994
|
|
|
@@ -1901,12 +1996,8 @@ Example success:
|
|
|
1901
1996
|
|
|
1902
1997
|
```json
|
|
1903
1998
|
{
|
|
1904
|
-
"
|
|
1905
|
-
"
|
|
1906
|
-
"artifactId": "00000000-0000-4000-8000-000000000001",
|
|
1907
|
-
"eligible": true,
|
|
1908
|
-
"effects": {},
|
|
1909
|
-
"planToken": "example-plan-token"
|
|
1999
|
+
"runId": "<runId>",
|
|
2000
|
+
"previewUrl": "<previewUrl>"
|
|
1910
2001
|
}
|
|
1911
2002
|
```
|
|
1912
2003
|
|
|
@@ -1916,13 +2007,31 @@ Input schema:
|
|
|
1916
2007
|
{
|
|
1917
2008
|
"type": "object",
|
|
1918
2009
|
"properties": {
|
|
1919
|
-
"
|
|
2010
|
+
"conversationId": {
|
|
1920
2011
|
"type": "string",
|
|
1921
2012
|
"format": "uuid"
|
|
2013
|
+
},
|
|
2014
|
+
"instruction": {
|
|
2015
|
+
"type": "string",
|
|
2016
|
+
"minLength": 1,
|
|
2017
|
+
"maxLength": 10000
|
|
2018
|
+
},
|
|
2019
|
+
"expectedDraftRunId": {
|
|
2020
|
+
"anyOf": [
|
|
2021
|
+
{
|
|
2022
|
+
"type": "string",
|
|
2023
|
+
"format": "uuid"
|
|
2024
|
+
},
|
|
2025
|
+
{
|
|
2026
|
+
"type": "null"
|
|
2027
|
+
}
|
|
2028
|
+
]
|
|
1922
2029
|
}
|
|
1923
2030
|
},
|
|
1924
2031
|
"required": [
|
|
1925
|
-
"
|
|
2032
|
+
"conversationId",
|
|
2033
|
+
"instruction",
|
|
2034
|
+
"expectedDraftRunId"
|
|
1926
2035
|
],
|
|
1927
2036
|
"additionalProperties": false
|
|
1928
2037
|
}
|
|
@@ -1937,32 +2046,16 @@ Output schema:
|
|
|
1937
2046
|
{
|
|
1938
2047
|
"type": "object",
|
|
1939
2048
|
"properties": {
|
|
1940
|
-
"
|
|
1941
|
-
"type": "boolean"
|
|
1942
|
-
},
|
|
1943
|
-
"phase": {
|
|
1944
|
-
"type": "string"
|
|
1945
|
-
},
|
|
1946
|
-
"artifactId": {
|
|
2049
|
+
"runId": {
|
|
1947
2050
|
"type": "string"
|
|
1948
2051
|
},
|
|
1949
|
-
"
|
|
1950
|
-
"type": "boolean"
|
|
1951
|
-
},
|
|
1952
|
-
"effects": {
|
|
1953
|
-
"type": "object"
|
|
1954
|
-
},
|
|
1955
|
-
"planToken": {
|
|
2052
|
+
"previewUrl": {
|
|
1956
2053
|
"type": "string"
|
|
1957
2054
|
}
|
|
1958
2055
|
},
|
|
1959
2056
|
"required": [
|
|
1960
|
-
"
|
|
1961
|
-
"
|
|
1962
|
-
"artifactId",
|
|
1963
|
-
"eligible",
|
|
1964
|
-
"effects",
|
|
1965
|
-
"planToken"
|
|
2057
|
+
"runId",
|
|
2058
|
+
"previewUrl"
|
|
1966
2059
|
]
|
|
1967
2060
|
},
|
|
1968
2061
|
{
|
|
@@ -2006,9 +2099,9 @@ Output schema:
|
|
|
2006
2099
|
}
|
|
2007
2100
|
```
|
|
2008
2101
|
|
|
2009
|
-
### `
|
|
2102
|
+
### `platform_publish_design_system`
|
|
2010
2103
|
|
|
2011
|
-
|
|
2104
|
+
Publish the exact reviewed Storyboard draft after its build passes. Managed edits require their writable Storyboard conversation; local submissions require the submitting actor. Always pass state-bound run, draft, and current commits.
|
|
2012
2105
|
|
|
2013
2106
|
Safety: read-only=false, destructive=true, idempotent=false, open-world=true.
|
|
2014
2107
|
|
|
@@ -2016,9 +2109,9 @@ Example request:
|
|
|
2016
2109
|
|
|
2017
2110
|
```json
|
|
2018
2111
|
{
|
|
2019
|
-
"
|
|
2020
|
-
"
|
|
2021
|
-
"
|
|
2112
|
+
"expectedDraftRunId": "00000000-0000-4000-8000-000000000001",
|
|
2113
|
+
"expectedDraftCommit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
2114
|
+
"expectedCurrentCommit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
|
2022
2115
|
}
|
|
2023
2116
|
```
|
|
2024
2117
|
|
|
@@ -2026,9 +2119,7 @@ Example success:
|
|
|
2026
2119
|
|
|
2027
2120
|
```json
|
|
2028
2121
|
{
|
|
2029
|
-
"
|
|
2030
|
-
"deleted": true,
|
|
2031
|
-
"artifactId": "00000000-0000-4000-8000-000000000001"
|
|
2122
|
+
"publishedCommit": "<publishedCommit>"
|
|
2032
2123
|
}
|
|
2033
2124
|
```
|
|
2034
2125
|
|
|
@@ -2038,23 +2129,34 @@ Input schema:
|
|
|
2038
2129
|
{
|
|
2039
2130
|
"type": "object",
|
|
2040
2131
|
"properties": {
|
|
2041
|
-
"
|
|
2132
|
+
"conversationId": {
|
|
2042
2133
|
"type": "string",
|
|
2043
2134
|
"format": "uuid"
|
|
2044
2135
|
},
|
|
2045
|
-
"
|
|
2136
|
+
"expectedDraftRunId": {
|
|
2046
2137
|
"type": "string",
|
|
2047
2138
|
"format": "uuid"
|
|
2048
2139
|
},
|
|
2049
|
-
"
|
|
2140
|
+
"expectedDraftCommit": {
|
|
2050
2141
|
"type": "string",
|
|
2051
|
-
"
|
|
2142
|
+
"pattern": "^[a-f0-9]{40}$"
|
|
2143
|
+
},
|
|
2144
|
+
"expectedCurrentCommit": {
|
|
2145
|
+
"anyOf": [
|
|
2146
|
+
{
|
|
2147
|
+
"type": "string",
|
|
2148
|
+
"pattern": "^[a-f0-9]{40}$"
|
|
2149
|
+
},
|
|
2150
|
+
{
|
|
2151
|
+
"type": "null"
|
|
2152
|
+
}
|
|
2153
|
+
]
|
|
2052
2154
|
}
|
|
2053
2155
|
},
|
|
2054
2156
|
"required": [
|
|
2055
|
-
"
|
|
2056
|
-
"
|
|
2057
|
-
"
|
|
2157
|
+
"expectedDraftRunId",
|
|
2158
|
+
"expectedDraftCommit",
|
|
2159
|
+
"expectedCurrentCommit"
|
|
2058
2160
|
],
|
|
2059
2161
|
"additionalProperties": false
|
|
2060
2162
|
}
|
|
@@ -2069,20 +2171,163 @@ Output schema:
|
|
|
2069
2171
|
{
|
|
2070
2172
|
"type": "object",
|
|
2071
2173
|
"properties": {
|
|
2072
|
-
"
|
|
2073
|
-
"type": "
|
|
2074
|
-
}
|
|
2075
|
-
|
|
2076
|
-
|
|
2077
|
-
|
|
2174
|
+
"publishedCommit": {
|
|
2175
|
+
"type": "string"
|
|
2176
|
+
}
|
|
2177
|
+
},
|
|
2178
|
+
"required": [
|
|
2179
|
+
"publishedCommit"
|
|
2180
|
+
]
|
|
2181
|
+
},
|
|
2182
|
+
{
|
|
2183
|
+
"type": "object",
|
|
2184
|
+
"properties": {
|
|
2185
|
+
"ok": {
|
|
2186
|
+
"const": false
|
|
2187
|
+
},
|
|
2188
|
+
"error": {
|
|
2189
|
+
"type": "object",
|
|
2190
|
+
"properties": {
|
|
2191
|
+
"code": {
|
|
2192
|
+
"type": "string"
|
|
2193
|
+
},
|
|
2194
|
+
"message": {
|
|
2195
|
+
"type": "string"
|
|
2196
|
+
},
|
|
2197
|
+
"retryable": {
|
|
2198
|
+
"type": "boolean"
|
|
2199
|
+
},
|
|
2200
|
+
"recoveryAction": {
|
|
2201
|
+
"type": "string"
|
|
2202
|
+
}
|
|
2203
|
+
},
|
|
2204
|
+
"required": [
|
|
2205
|
+
"code",
|
|
2206
|
+
"message",
|
|
2207
|
+
"retryable",
|
|
2208
|
+
"recoveryAction"
|
|
2209
|
+
],
|
|
2210
|
+
"additionalProperties": false
|
|
2211
|
+
}
|
|
2212
|
+
},
|
|
2213
|
+
"required": [
|
|
2214
|
+
"ok",
|
|
2215
|
+
"error"
|
|
2216
|
+
],
|
|
2217
|
+
"additionalProperties": false
|
|
2218
|
+
}
|
|
2219
|
+
]
|
|
2220
|
+
}
|
|
2221
|
+
```
|
|
2222
|
+
|
|
2223
|
+
### `platform_validate_artifact`
|
|
2224
|
+
|
|
2225
|
+
Read trusted smoke and health evidence for a private artifact draft without requiring a browser session.
|
|
2226
|
+
|
|
2227
|
+
Safety: read-only=true, destructive=false, idempotent=false, open-world=false.
|
|
2228
|
+
|
|
2229
|
+
Example request:
|
|
2230
|
+
|
|
2231
|
+
```json
|
|
2232
|
+
{
|
|
2233
|
+
"artifactId": "00000000-0000-4000-8000-000000000001"
|
|
2234
|
+
}
|
|
2235
|
+
```
|
|
2236
|
+
|
|
2237
|
+
Example success:
|
|
2238
|
+
|
|
2239
|
+
```json
|
|
2240
|
+
{
|
|
2241
|
+
"ok": true,
|
|
2242
|
+
"phase": "<phase>",
|
|
2243
|
+
"artifactId": "00000000-0000-4000-8000-000000000001",
|
|
2244
|
+
"deploymentRecordId": "00000000-0000-4000-8000-000000000003",
|
|
2245
|
+
"deploymentState": "<deploymentState>",
|
|
2246
|
+
"healthy": true,
|
|
2247
|
+
"checkedAt": "<checkedAt>",
|
|
2248
|
+
"draftUrl": "<draftUrl>",
|
|
2249
|
+
"smoke": {}
|
|
2250
|
+
}
|
|
2251
|
+
```
|
|
2252
|
+
|
|
2253
|
+
Input schema:
|
|
2254
|
+
|
|
2255
|
+
```json
|
|
2256
|
+
{
|
|
2257
|
+
"type": "object",
|
|
2258
|
+
"properties": {
|
|
2259
|
+
"artifactId": {
|
|
2260
|
+
"type": "string",
|
|
2261
|
+
"format": "uuid"
|
|
2262
|
+
},
|
|
2263
|
+
"deploymentRecordId": {
|
|
2264
|
+
"type": "string",
|
|
2265
|
+
"format": "uuid"
|
|
2266
|
+
}
|
|
2267
|
+
},
|
|
2268
|
+
"required": [
|
|
2269
|
+
"artifactId"
|
|
2270
|
+
],
|
|
2271
|
+
"additionalProperties": false
|
|
2272
|
+
}
|
|
2273
|
+
```
|
|
2274
|
+
|
|
2275
|
+
Output schema:
|
|
2276
|
+
|
|
2277
|
+
```json
|
|
2278
|
+
{
|
|
2279
|
+
"type": "object",
|
|
2280
|
+
"oneOf": [
|
|
2281
|
+
{
|
|
2282
|
+
"type": "object",
|
|
2283
|
+
"properties": {
|
|
2284
|
+
"ok": {
|
|
2285
|
+
"type": "boolean"
|
|
2286
|
+
},
|
|
2287
|
+
"phase": {
|
|
2288
|
+
"type": "string"
|
|
2289
|
+
},
|
|
2078
2290
|
"artifactId": {
|
|
2079
2291
|
"type": "string"
|
|
2292
|
+
},
|
|
2293
|
+
"deploymentRecordId": {
|
|
2294
|
+
"type": "string"
|
|
2295
|
+
},
|
|
2296
|
+
"deploymentState": {
|
|
2297
|
+
"type": "string"
|
|
2298
|
+
},
|
|
2299
|
+
"healthy": {
|
|
2300
|
+
"type": "boolean"
|
|
2301
|
+
},
|
|
2302
|
+
"checkedAt": {
|
|
2303
|
+
"type": [
|
|
2304
|
+
"string",
|
|
2305
|
+
"null"
|
|
2306
|
+
]
|
|
2307
|
+
},
|
|
2308
|
+
"draftUrl": {
|
|
2309
|
+
"type": [
|
|
2310
|
+
"string",
|
|
2311
|
+
"null"
|
|
2312
|
+
]
|
|
2313
|
+
},
|
|
2314
|
+
"smoke": {
|
|
2315
|
+
"type": [
|
|
2316
|
+
"object",
|
|
2317
|
+
"null"
|
|
2318
|
+
]
|
|
2080
2319
|
}
|
|
2081
2320
|
},
|
|
2082
2321
|
"required": [
|
|
2083
2322
|
"ok",
|
|
2084
|
-
"
|
|
2085
|
-
"artifactId"
|
|
2323
|
+
"phase",
|
|
2324
|
+
"artifactId",
|
|
2325
|
+
"deploymentRecordId",
|
|
2326
|
+
"deploymentState",
|
|
2327
|
+
"healthy",
|
|
2328
|
+
"checkedAt",
|
|
2329
|
+
"draftUrl",
|
|
2330
|
+
"smoke"
|
|
2086
2331
|
]
|
|
2087
2332
|
},
|
|
2088
2333
|
{
|
|
@@ -2125,3 +2370,2246 @@ Output schema:
|
|
|
2125
2370
|
]
|
|
2126
2371
|
}
|
|
2127
2372
|
```
|
|
2373
|
+
|
|
2374
|
+
### `platform_run_artifact_smoke`
|
|
2375
|
+
|
|
2376
|
+
Rerun the trusted draft smoke check and return fresh rendered-page evidence.
|
|
2377
|
+
|
|
2378
|
+
Safety: read-only=false, destructive=false, idempotent=false, open-world=true.
|
|
2379
|
+
|
|
2380
|
+
Example request:
|
|
2381
|
+
|
|
2382
|
+
```json
|
|
2383
|
+
{
|
|
2384
|
+
"artifactId": "00000000-0000-4000-8000-000000000001"
|
|
2385
|
+
}
|
|
2386
|
+
```
|
|
2387
|
+
|
|
2388
|
+
Example success:
|
|
2389
|
+
|
|
2390
|
+
```json
|
|
2391
|
+
{
|
|
2392
|
+
"ok": true,
|
|
2393
|
+
"phase": "<phase>",
|
|
2394
|
+
"artifactId": "00000000-0000-4000-8000-000000000001",
|
|
2395
|
+
"deploymentRecordId": "00000000-0000-4000-8000-000000000003",
|
|
2396
|
+
"smoke": {},
|
|
2397
|
+
"validation": {}
|
|
2398
|
+
}
|
|
2399
|
+
```
|
|
2400
|
+
|
|
2401
|
+
Input schema:
|
|
2402
|
+
|
|
2403
|
+
```json
|
|
2404
|
+
{
|
|
2405
|
+
"type": "object",
|
|
2406
|
+
"properties": {
|
|
2407
|
+
"artifactId": {
|
|
2408
|
+
"type": "string",
|
|
2409
|
+
"format": "uuid"
|
|
2410
|
+
},
|
|
2411
|
+
"deploymentRecordId": {
|
|
2412
|
+
"type": "string",
|
|
2413
|
+
"format": "uuid"
|
|
2414
|
+
}
|
|
2415
|
+
},
|
|
2416
|
+
"required": [
|
|
2417
|
+
"artifactId"
|
|
2418
|
+
],
|
|
2419
|
+
"additionalProperties": false
|
|
2420
|
+
}
|
|
2421
|
+
```
|
|
2422
|
+
|
|
2423
|
+
Output schema:
|
|
2424
|
+
|
|
2425
|
+
```json
|
|
2426
|
+
{
|
|
2427
|
+
"type": "object",
|
|
2428
|
+
"oneOf": [
|
|
2429
|
+
{
|
|
2430
|
+
"type": "object",
|
|
2431
|
+
"properties": {
|
|
2432
|
+
"ok": {
|
|
2433
|
+
"type": "boolean"
|
|
2434
|
+
},
|
|
2435
|
+
"phase": {
|
|
2436
|
+
"type": "string"
|
|
2437
|
+
},
|
|
2438
|
+
"artifactId": {
|
|
2439
|
+
"type": "string"
|
|
2440
|
+
},
|
|
2441
|
+
"deploymentRecordId": {
|
|
2442
|
+
"type": "string"
|
|
2443
|
+
},
|
|
2444
|
+
"smoke": {
|
|
2445
|
+
"type": "object"
|
|
2446
|
+
},
|
|
2447
|
+
"validation": {
|
|
2448
|
+
"type": "object"
|
|
2449
|
+
}
|
|
2450
|
+
},
|
|
2451
|
+
"required": [
|
|
2452
|
+
"ok",
|
|
2453
|
+
"phase",
|
|
2454
|
+
"artifactId",
|
|
2455
|
+
"deploymentRecordId",
|
|
2456
|
+
"smoke",
|
|
2457
|
+
"validation"
|
|
2458
|
+
]
|
|
2459
|
+
},
|
|
2460
|
+
{
|
|
2461
|
+
"type": "object",
|
|
2462
|
+
"properties": {
|
|
2463
|
+
"ok": {
|
|
2464
|
+
"const": false
|
|
2465
|
+
},
|
|
2466
|
+
"error": {
|
|
2467
|
+
"type": "object",
|
|
2468
|
+
"properties": {
|
|
2469
|
+
"code": {
|
|
2470
|
+
"type": "string"
|
|
2471
|
+
},
|
|
2472
|
+
"message": {
|
|
2473
|
+
"type": "string"
|
|
2474
|
+
},
|
|
2475
|
+
"retryable": {
|
|
2476
|
+
"type": "boolean"
|
|
2477
|
+
},
|
|
2478
|
+
"recoveryAction": {
|
|
2479
|
+
"type": "string"
|
|
2480
|
+
}
|
|
2481
|
+
},
|
|
2482
|
+
"required": [
|
|
2483
|
+
"code",
|
|
2484
|
+
"message",
|
|
2485
|
+
"retryable",
|
|
2486
|
+
"recoveryAction"
|
|
2487
|
+
],
|
|
2488
|
+
"additionalProperties": false
|
|
2489
|
+
}
|
|
2490
|
+
},
|
|
2491
|
+
"required": [
|
|
2492
|
+
"ok",
|
|
2493
|
+
"error"
|
|
2494
|
+
],
|
|
2495
|
+
"additionalProperties": false
|
|
2496
|
+
}
|
|
2497
|
+
]
|
|
2498
|
+
}
|
|
2499
|
+
```
|
|
2500
|
+
|
|
2501
|
+
### `platform_plan_artifact_draft_delete`
|
|
2502
|
+
|
|
2503
|
+
Preview cleanup effects and receive the state-bound plan token required for deletion.
|
|
2504
|
+
|
|
2505
|
+
Safety: read-only=true, destructive=false, idempotent=false, open-world=true.
|
|
2506
|
+
|
|
2507
|
+
Example request:
|
|
2508
|
+
|
|
2509
|
+
```json
|
|
2510
|
+
{
|
|
2511
|
+
"artifactId": "00000000-0000-4000-8000-000000000001"
|
|
2512
|
+
}
|
|
2513
|
+
```
|
|
2514
|
+
|
|
2515
|
+
Example success:
|
|
2516
|
+
|
|
2517
|
+
```json
|
|
2518
|
+
{
|
|
2519
|
+
"ok": true,
|
|
2520
|
+
"phase": "<phase>",
|
|
2521
|
+
"artifactId": "00000000-0000-4000-8000-000000000001",
|
|
2522
|
+
"eligible": true,
|
|
2523
|
+
"effects": {},
|
|
2524
|
+
"planToken": "example-plan-token"
|
|
2525
|
+
}
|
|
2526
|
+
```
|
|
2527
|
+
|
|
2528
|
+
Input schema:
|
|
2529
|
+
|
|
2530
|
+
```json
|
|
2531
|
+
{
|
|
2532
|
+
"type": "object",
|
|
2533
|
+
"properties": {
|
|
2534
|
+
"artifactId": {
|
|
2535
|
+
"type": "string",
|
|
2536
|
+
"format": "uuid"
|
|
2537
|
+
}
|
|
2538
|
+
},
|
|
2539
|
+
"required": [
|
|
2540
|
+
"artifactId"
|
|
2541
|
+
],
|
|
2542
|
+
"additionalProperties": false
|
|
2543
|
+
}
|
|
2544
|
+
```
|
|
2545
|
+
|
|
2546
|
+
Output schema:
|
|
2547
|
+
|
|
2548
|
+
```json
|
|
2549
|
+
{
|
|
2550
|
+
"type": "object",
|
|
2551
|
+
"oneOf": [
|
|
2552
|
+
{
|
|
2553
|
+
"type": "object",
|
|
2554
|
+
"properties": {
|
|
2555
|
+
"ok": {
|
|
2556
|
+
"type": "boolean"
|
|
2557
|
+
},
|
|
2558
|
+
"phase": {
|
|
2559
|
+
"type": "string"
|
|
2560
|
+
},
|
|
2561
|
+
"artifactId": {
|
|
2562
|
+
"type": "string"
|
|
2563
|
+
},
|
|
2564
|
+
"eligible": {
|
|
2565
|
+
"type": "boolean"
|
|
2566
|
+
},
|
|
2567
|
+
"effects": {
|
|
2568
|
+
"type": "object"
|
|
2569
|
+
},
|
|
2570
|
+
"planToken": {
|
|
2571
|
+
"type": "string"
|
|
2572
|
+
}
|
|
2573
|
+
},
|
|
2574
|
+
"required": [
|
|
2575
|
+
"ok",
|
|
2576
|
+
"phase",
|
|
2577
|
+
"artifactId",
|
|
2578
|
+
"eligible",
|
|
2579
|
+
"effects",
|
|
2580
|
+
"planToken"
|
|
2581
|
+
]
|
|
2582
|
+
},
|
|
2583
|
+
{
|
|
2584
|
+
"type": "object",
|
|
2585
|
+
"properties": {
|
|
2586
|
+
"ok": {
|
|
2587
|
+
"const": false
|
|
2588
|
+
},
|
|
2589
|
+
"error": {
|
|
2590
|
+
"type": "object",
|
|
2591
|
+
"properties": {
|
|
2592
|
+
"code": {
|
|
2593
|
+
"type": "string"
|
|
2594
|
+
},
|
|
2595
|
+
"message": {
|
|
2596
|
+
"type": "string"
|
|
2597
|
+
},
|
|
2598
|
+
"retryable": {
|
|
2599
|
+
"type": "boolean"
|
|
2600
|
+
},
|
|
2601
|
+
"recoveryAction": {
|
|
2602
|
+
"type": "string"
|
|
2603
|
+
}
|
|
2604
|
+
},
|
|
2605
|
+
"required": [
|
|
2606
|
+
"code",
|
|
2607
|
+
"message",
|
|
2608
|
+
"retryable",
|
|
2609
|
+
"recoveryAction"
|
|
2610
|
+
],
|
|
2611
|
+
"additionalProperties": false
|
|
2612
|
+
}
|
|
2613
|
+
},
|
|
2614
|
+
"required": [
|
|
2615
|
+
"ok",
|
|
2616
|
+
"error"
|
|
2617
|
+
],
|
|
2618
|
+
"additionalProperties": false
|
|
2619
|
+
}
|
|
2620
|
+
]
|
|
2621
|
+
}
|
|
2622
|
+
```
|
|
2623
|
+
|
|
2624
|
+
### `platform_delete_artifact_draft`
|
|
2625
|
+
|
|
2626
|
+
Permanently remove an unpromoted private draft created by this MCP connection after exact-id confirmation.
|
|
2627
|
+
|
|
2628
|
+
Safety: read-only=false, destructive=true, idempotent=false, open-world=true.
|
|
2629
|
+
|
|
2630
|
+
Example request:
|
|
2631
|
+
|
|
2632
|
+
```json
|
|
2633
|
+
{
|
|
2634
|
+
"artifactId": "00000000-0000-4000-8000-000000000001",
|
|
2635
|
+
"confirmArtifactId": "00000000-0000-4000-8000-000000000001",
|
|
2636
|
+
"planToken": "example-plan-token"
|
|
2637
|
+
}
|
|
2638
|
+
```
|
|
2639
|
+
|
|
2640
|
+
Example success:
|
|
2641
|
+
|
|
2642
|
+
```json
|
|
2643
|
+
{
|
|
2644
|
+
"ok": true,
|
|
2645
|
+
"deleted": true,
|
|
2646
|
+
"artifactId": "00000000-0000-4000-8000-000000000001"
|
|
2647
|
+
}
|
|
2648
|
+
```
|
|
2649
|
+
|
|
2650
|
+
Input schema:
|
|
2651
|
+
|
|
2652
|
+
```json
|
|
2653
|
+
{
|
|
2654
|
+
"type": "object",
|
|
2655
|
+
"properties": {
|
|
2656
|
+
"artifactId": {
|
|
2657
|
+
"type": "string",
|
|
2658
|
+
"format": "uuid"
|
|
2659
|
+
},
|
|
2660
|
+
"confirmArtifactId": {
|
|
2661
|
+
"type": "string",
|
|
2662
|
+
"format": "uuid"
|
|
2663
|
+
},
|
|
2664
|
+
"planToken": {
|
|
2665
|
+
"type": "string",
|
|
2666
|
+
"minLength": 1
|
|
2667
|
+
}
|
|
2668
|
+
},
|
|
2669
|
+
"required": [
|
|
2670
|
+
"artifactId",
|
|
2671
|
+
"confirmArtifactId",
|
|
2672
|
+
"planToken"
|
|
2673
|
+
],
|
|
2674
|
+
"additionalProperties": false
|
|
2675
|
+
}
|
|
2676
|
+
```
|
|
2677
|
+
|
|
2678
|
+
Output schema:
|
|
2679
|
+
|
|
2680
|
+
```json
|
|
2681
|
+
{
|
|
2682
|
+
"type": "object",
|
|
2683
|
+
"oneOf": [
|
|
2684
|
+
{
|
|
2685
|
+
"type": "object",
|
|
2686
|
+
"properties": {
|
|
2687
|
+
"ok": {
|
|
2688
|
+
"type": "boolean"
|
|
2689
|
+
},
|
|
2690
|
+
"deleted": {
|
|
2691
|
+
"type": "boolean"
|
|
2692
|
+
},
|
|
2693
|
+
"artifactId": {
|
|
2694
|
+
"type": "string"
|
|
2695
|
+
}
|
|
2696
|
+
},
|
|
2697
|
+
"required": [
|
|
2698
|
+
"ok",
|
|
2699
|
+
"deleted",
|
|
2700
|
+
"artifactId"
|
|
2701
|
+
]
|
|
2702
|
+
},
|
|
2703
|
+
{
|
|
2704
|
+
"type": "object",
|
|
2705
|
+
"properties": {
|
|
2706
|
+
"ok": {
|
|
2707
|
+
"const": false
|
|
2708
|
+
},
|
|
2709
|
+
"error": {
|
|
2710
|
+
"type": "object",
|
|
2711
|
+
"properties": {
|
|
2712
|
+
"code": {
|
|
2713
|
+
"type": "string"
|
|
2714
|
+
},
|
|
2715
|
+
"message": {
|
|
2716
|
+
"type": "string"
|
|
2717
|
+
},
|
|
2718
|
+
"retryable": {
|
|
2719
|
+
"type": "boolean"
|
|
2720
|
+
},
|
|
2721
|
+
"recoveryAction": {
|
|
2722
|
+
"type": "string"
|
|
2723
|
+
}
|
|
2724
|
+
},
|
|
2725
|
+
"required": [
|
|
2726
|
+
"code",
|
|
2727
|
+
"message",
|
|
2728
|
+
"retryable",
|
|
2729
|
+
"recoveryAction"
|
|
2730
|
+
],
|
|
2731
|
+
"additionalProperties": false
|
|
2732
|
+
}
|
|
2733
|
+
},
|
|
2734
|
+
"required": [
|
|
2735
|
+
"ok",
|
|
2736
|
+
"error"
|
|
2737
|
+
],
|
|
2738
|
+
"additionalProperties": false
|
|
2739
|
+
}
|
|
2740
|
+
]
|
|
2741
|
+
}
|
|
2742
|
+
```
|
|
2743
|
+
|
|
2744
|
+
### `platform_capability_status`
|
|
2745
|
+
|
|
2746
|
+
Read the connected Build product's current available, denied, unsupported and unconfigured tool families, contract version and helper requirement. Reconnect explicitly for newly consented scopes.
|
|
2747
|
+
|
|
2748
|
+
Safety: read-only=true, destructive=false, idempotent=true, open-world=true.
|
|
2749
|
+
|
|
2750
|
+
Example request:
|
|
2751
|
+
|
|
2752
|
+
```json
|
|
2753
|
+
{}
|
|
2754
|
+
```
|
|
2755
|
+
|
|
2756
|
+
Example success:
|
|
2757
|
+
|
|
2758
|
+
```json
|
|
2759
|
+
{}
|
|
2760
|
+
```
|
|
2761
|
+
|
|
2762
|
+
Input schema:
|
|
2763
|
+
|
|
2764
|
+
```json
|
|
2765
|
+
{
|
|
2766
|
+
"type": "object",
|
|
2767
|
+
"additionalProperties": false,
|
|
2768
|
+
"properties": {},
|
|
2769
|
+
"required": []
|
|
2770
|
+
}
|
|
2771
|
+
```
|
|
2772
|
+
|
|
2773
|
+
Output schema:
|
|
2774
|
+
|
|
2775
|
+
```json
|
|
2776
|
+
{
|
|
2777
|
+
"type": "object",
|
|
2778
|
+
"oneOf": [
|
|
2779
|
+
{
|
|
2780
|
+
"type": "object",
|
|
2781
|
+
"properties": {
|
|
2782
|
+
"ok": {
|
|
2783
|
+
"const": true
|
|
2784
|
+
}
|
|
2785
|
+
}
|
|
2786
|
+
},
|
|
2787
|
+
{
|
|
2788
|
+
"type": "object",
|
|
2789
|
+
"properties": {
|
|
2790
|
+
"ok": {
|
|
2791
|
+
"const": false
|
|
2792
|
+
},
|
|
2793
|
+
"error": {
|
|
2794
|
+
"type": "object",
|
|
2795
|
+
"properties": {
|
|
2796
|
+
"code": {
|
|
2797
|
+
"type": "string"
|
|
2798
|
+
},
|
|
2799
|
+
"message": {
|
|
2800
|
+
"type": "string"
|
|
2801
|
+
},
|
|
2802
|
+
"retryable": {
|
|
2803
|
+
"type": "boolean"
|
|
2804
|
+
},
|
|
2805
|
+
"recoveryAction": {
|
|
2806
|
+
"type": "string"
|
|
2807
|
+
}
|
|
2808
|
+
},
|
|
2809
|
+
"required": [
|
|
2810
|
+
"code",
|
|
2811
|
+
"message",
|
|
2812
|
+
"retryable",
|
|
2813
|
+
"recoveryAction"
|
|
2814
|
+
],
|
|
2815
|
+
"additionalProperties": false
|
|
2816
|
+
}
|
|
2817
|
+
},
|
|
2818
|
+
"required": [
|
|
2819
|
+
"ok",
|
|
2820
|
+
"error"
|
|
2821
|
+
],
|
|
2822
|
+
"additionalProperties": false
|
|
2823
|
+
}
|
|
2824
|
+
]
|
|
2825
|
+
}
|
|
2826
|
+
```
|
|
2827
|
+
|
|
2828
|
+
### `platform_start_build_session`
|
|
2829
|
+
|
|
2830
|
+
Start external authoring with a private artifact identity, current version and platform-operation budget. Launches no internal coder. Existing artifact starts require its current version; new app starts require a manifest. Optional own conversation selects exact operator-approved secret references.
|
|
2831
|
+
|
|
2832
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
2833
|
+
|
|
2834
|
+
Example request:
|
|
2835
|
+
|
|
2836
|
+
```json
|
|
2837
|
+
{
|
|
2838
|
+
"idempotencyKey": "example-request",
|
|
2839
|
+
"budgetCents": 0,
|
|
2840
|
+
"brief": "<brief>"
|
|
2841
|
+
}
|
|
2842
|
+
```
|
|
2843
|
+
|
|
2844
|
+
Example success:
|
|
2845
|
+
|
|
2846
|
+
```json
|
|
2847
|
+
{}
|
|
2848
|
+
```
|
|
2849
|
+
|
|
2850
|
+
Input schema:
|
|
2851
|
+
|
|
2852
|
+
```json
|
|
2853
|
+
{
|
|
2854
|
+
"type": "object",
|
|
2855
|
+
"additionalProperties": false,
|
|
2856
|
+
"properties": {
|
|
2857
|
+
"idempotencyKey": {
|
|
2858
|
+
"type": "string",
|
|
2859
|
+
"minLength": 1,
|
|
2860
|
+
"maxLength": 128,
|
|
2861
|
+
"pattern": "^[A-Za-z0-9._:-]+$"
|
|
2862
|
+
},
|
|
2863
|
+
"artifactId": {
|
|
2864
|
+
"type": "string",
|
|
2865
|
+
"format": "uuid"
|
|
2866
|
+
},
|
|
2867
|
+
"artifactVersionId": {
|
|
2868
|
+
"type": "string",
|
|
2869
|
+
"format": "uuid"
|
|
2870
|
+
},
|
|
2871
|
+
"manifest": {
|
|
2872
|
+
"type": "object"
|
|
2873
|
+
},
|
|
2874
|
+
"projectId": {
|
|
2875
|
+
"type": "string",
|
|
2876
|
+
"format": "uuid"
|
|
2877
|
+
},
|
|
2878
|
+
"owningConversationId": {
|
|
2879
|
+
"type": "string",
|
|
2880
|
+
"format": "uuid"
|
|
2881
|
+
},
|
|
2882
|
+
"budgetCents": {
|
|
2883
|
+
"type": "integer",
|
|
2884
|
+
"minimum": 0,
|
|
2885
|
+
"maximum": 100000
|
|
2886
|
+
},
|
|
2887
|
+
"brief": {
|
|
2888
|
+
"type": "string",
|
|
2889
|
+
"minLength": 3,
|
|
2890
|
+
"maxLength": 4000
|
|
2891
|
+
}
|
|
2892
|
+
},
|
|
2893
|
+
"required": [
|
|
2894
|
+
"idempotencyKey",
|
|
2895
|
+
"budgetCents",
|
|
2896
|
+
"brief"
|
|
2897
|
+
]
|
|
2898
|
+
}
|
|
2899
|
+
```
|
|
2900
|
+
|
|
2901
|
+
Output schema:
|
|
2902
|
+
|
|
2903
|
+
```json
|
|
2904
|
+
{
|
|
2905
|
+
"type": "object",
|
|
2906
|
+
"oneOf": [
|
|
2907
|
+
{
|
|
2908
|
+
"type": "object",
|
|
2909
|
+
"properties": {
|
|
2910
|
+
"ok": {
|
|
2911
|
+
"const": true
|
|
2912
|
+
}
|
|
2913
|
+
}
|
|
2914
|
+
},
|
|
2915
|
+
{
|
|
2916
|
+
"type": "object",
|
|
2917
|
+
"properties": {
|
|
2918
|
+
"ok": {
|
|
2919
|
+
"const": false
|
|
2920
|
+
},
|
|
2921
|
+
"error": {
|
|
2922
|
+
"type": "object",
|
|
2923
|
+
"properties": {
|
|
2924
|
+
"code": {
|
|
2925
|
+
"type": "string"
|
|
2926
|
+
},
|
|
2927
|
+
"message": {
|
|
2928
|
+
"type": "string"
|
|
2929
|
+
},
|
|
2930
|
+
"retryable": {
|
|
2931
|
+
"type": "boolean"
|
|
2932
|
+
},
|
|
2933
|
+
"recoveryAction": {
|
|
2934
|
+
"type": "string"
|
|
2935
|
+
}
|
|
2936
|
+
},
|
|
2937
|
+
"required": [
|
|
2938
|
+
"code",
|
|
2939
|
+
"message",
|
|
2940
|
+
"retryable",
|
|
2941
|
+
"recoveryAction"
|
|
2942
|
+
],
|
|
2943
|
+
"additionalProperties": false
|
|
2944
|
+
}
|
|
2945
|
+
},
|
|
2946
|
+
"required": [
|
|
2947
|
+
"ok",
|
|
2948
|
+
"error"
|
|
2949
|
+
],
|
|
2950
|
+
"additionalProperties": false
|
|
2951
|
+
}
|
|
2952
|
+
]
|
|
2953
|
+
}
|
|
2954
|
+
```
|
|
2955
|
+
|
|
2956
|
+
### `platform_read_build_session`
|
|
2957
|
+
|
|
2958
|
+
Read the owned build session and original pending operations. Does not start another coder or deployment.
|
|
2959
|
+
|
|
2960
|
+
Safety: read-only=true, destructive=false, idempotent=true, open-world=true.
|
|
2961
|
+
|
|
2962
|
+
Example request:
|
|
2963
|
+
|
|
2964
|
+
```json
|
|
2965
|
+
{
|
|
2966
|
+
"sessionId": "00000000-0000-4000-8000-000000000001"
|
|
2967
|
+
}
|
|
2968
|
+
```
|
|
2969
|
+
|
|
2970
|
+
Example success:
|
|
2971
|
+
|
|
2972
|
+
```json
|
|
2973
|
+
{}
|
|
2974
|
+
```
|
|
2975
|
+
|
|
2976
|
+
Input schema:
|
|
2977
|
+
|
|
2978
|
+
```json
|
|
2979
|
+
{
|
|
2980
|
+
"type": "object",
|
|
2981
|
+
"additionalProperties": false,
|
|
2982
|
+
"properties": {
|
|
2983
|
+
"sessionId": {
|
|
2984
|
+
"type": "string",
|
|
2985
|
+
"format": "uuid"
|
|
2986
|
+
}
|
|
2987
|
+
},
|
|
2988
|
+
"required": [
|
|
2989
|
+
"sessionId"
|
|
2990
|
+
]
|
|
2991
|
+
}
|
|
2992
|
+
```
|
|
2993
|
+
|
|
2994
|
+
Output schema:
|
|
2995
|
+
|
|
2996
|
+
```json
|
|
2997
|
+
{
|
|
2998
|
+
"type": "object",
|
|
2999
|
+
"oneOf": [
|
|
3000
|
+
{
|
|
3001
|
+
"type": "object",
|
|
3002
|
+
"properties": {
|
|
3003
|
+
"ok": {
|
|
3004
|
+
"const": true
|
|
3005
|
+
}
|
|
3006
|
+
}
|
|
3007
|
+
},
|
|
3008
|
+
{
|
|
3009
|
+
"type": "object",
|
|
3010
|
+
"properties": {
|
|
3011
|
+
"ok": {
|
|
3012
|
+
"const": false
|
|
3013
|
+
},
|
|
3014
|
+
"error": {
|
|
3015
|
+
"type": "object",
|
|
3016
|
+
"properties": {
|
|
3017
|
+
"code": {
|
|
3018
|
+
"type": "string"
|
|
3019
|
+
},
|
|
3020
|
+
"message": {
|
|
3021
|
+
"type": "string"
|
|
3022
|
+
},
|
|
3023
|
+
"retryable": {
|
|
3024
|
+
"type": "boolean"
|
|
3025
|
+
},
|
|
3026
|
+
"recoveryAction": {
|
|
3027
|
+
"type": "string"
|
|
3028
|
+
}
|
|
3029
|
+
},
|
|
3030
|
+
"required": [
|
|
3031
|
+
"code",
|
|
3032
|
+
"message",
|
|
3033
|
+
"retryable",
|
|
3034
|
+
"recoveryAction"
|
|
3035
|
+
],
|
|
3036
|
+
"additionalProperties": false
|
|
3037
|
+
}
|
|
3038
|
+
},
|
|
3039
|
+
"required": [
|
|
3040
|
+
"ok",
|
|
3041
|
+
"error"
|
|
3042
|
+
],
|
|
3043
|
+
"additionalProperties": false
|
|
3044
|
+
}
|
|
3045
|
+
]
|
|
3046
|
+
}
|
|
3047
|
+
```
|
|
3048
|
+
|
|
3049
|
+
### `platform_close_build_session`
|
|
3050
|
+
|
|
3051
|
+
Stop new authoring and request pending-operation cancellation. Unknown effects retain their reservation; cancellation does not undo committed writes.
|
|
3052
|
+
|
|
3053
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
3054
|
+
|
|
3055
|
+
Example request:
|
|
3056
|
+
|
|
3057
|
+
```json
|
|
3058
|
+
{
|
|
3059
|
+
"sessionId": "00000000-0000-4000-8000-000000000001"
|
|
3060
|
+
}
|
|
3061
|
+
```
|
|
3062
|
+
|
|
3063
|
+
Example success:
|
|
3064
|
+
|
|
3065
|
+
```json
|
|
3066
|
+
{}
|
|
3067
|
+
```
|
|
3068
|
+
|
|
3069
|
+
Input schema:
|
|
3070
|
+
|
|
3071
|
+
```json
|
|
3072
|
+
{
|
|
3073
|
+
"type": "object",
|
|
3074
|
+
"additionalProperties": false,
|
|
3075
|
+
"properties": {
|
|
3076
|
+
"sessionId": {
|
|
3077
|
+
"type": "string",
|
|
3078
|
+
"format": "uuid"
|
|
3079
|
+
}
|
|
3080
|
+
},
|
|
3081
|
+
"required": [
|
|
3082
|
+
"sessionId"
|
|
3083
|
+
]
|
|
3084
|
+
}
|
|
3085
|
+
```
|
|
3086
|
+
|
|
3087
|
+
Output schema:
|
|
3088
|
+
|
|
3089
|
+
```json
|
|
3090
|
+
{
|
|
3091
|
+
"type": "object",
|
|
3092
|
+
"oneOf": [
|
|
3093
|
+
{
|
|
3094
|
+
"type": "object",
|
|
3095
|
+
"properties": {
|
|
3096
|
+
"ok": {
|
|
3097
|
+
"const": true
|
|
3098
|
+
}
|
|
3099
|
+
}
|
|
3100
|
+
},
|
|
3101
|
+
{
|
|
3102
|
+
"type": "object",
|
|
3103
|
+
"properties": {
|
|
3104
|
+
"ok": {
|
|
3105
|
+
"const": false
|
|
3106
|
+
},
|
|
3107
|
+
"error": {
|
|
3108
|
+
"type": "object",
|
|
3109
|
+
"properties": {
|
|
3110
|
+
"code": {
|
|
3111
|
+
"type": "string"
|
|
3112
|
+
},
|
|
3113
|
+
"message": {
|
|
3114
|
+
"type": "string"
|
|
3115
|
+
},
|
|
3116
|
+
"retryable": {
|
|
3117
|
+
"type": "boolean"
|
|
3118
|
+
},
|
|
3119
|
+
"recoveryAction": {
|
|
3120
|
+
"type": "string"
|
|
3121
|
+
}
|
|
3122
|
+
},
|
|
3123
|
+
"required": [
|
|
3124
|
+
"code",
|
|
3125
|
+
"message",
|
|
3126
|
+
"retryable",
|
|
3127
|
+
"recoveryAction"
|
|
3128
|
+
],
|
|
3129
|
+
"additionalProperties": false
|
|
3130
|
+
}
|
|
3131
|
+
},
|
|
3132
|
+
"required": [
|
|
3133
|
+
"ok",
|
|
3134
|
+
"error"
|
|
3135
|
+
],
|
|
3136
|
+
"additionalProperties": false
|
|
3137
|
+
}
|
|
3138
|
+
]
|
|
3139
|
+
}
|
|
3140
|
+
```
|
|
3141
|
+
|
|
3142
|
+
### `platform_run_artifact_workspace_sql`
|
|
3143
|
+
|
|
3144
|
+
Run guarded private artifact SQL using the exact session namespace, version and retry key. CREATE TABLE/ADD COLUMN require documentation. Enforced non-admin writes remain denied; unknown writes are never replayed.
|
|
3145
|
+
|
|
3146
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
3147
|
+
|
|
3148
|
+
Example request:
|
|
3149
|
+
|
|
3150
|
+
```json
|
|
3151
|
+
{
|
|
3152
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
3153
|
+
"artifactVersionId": "00000000-0000-4000-8000-000000000001",
|
|
3154
|
+
"idempotencyKey": "example-request",
|
|
3155
|
+
"sql": "<sql>",
|
|
3156
|
+
"purpose": "<purpose>"
|
|
3157
|
+
}
|
|
3158
|
+
```
|
|
3159
|
+
|
|
3160
|
+
Example success:
|
|
3161
|
+
|
|
3162
|
+
```json
|
|
3163
|
+
{}
|
|
3164
|
+
```
|
|
3165
|
+
|
|
3166
|
+
Input schema:
|
|
3167
|
+
|
|
3168
|
+
```json
|
|
3169
|
+
{
|
|
3170
|
+
"type": "object",
|
|
3171
|
+
"additionalProperties": false,
|
|
3172
|
+
"properties": {
|
|
3173
|
+
"sessionId": {
|
|
3174
|
+
"type": "string",
|
|
3175
|
+
"format": "uuid"
|
|
3176
|
+
},
|
|
3177
|
+
"artifactVersionId": {
|
|
3178
|
+
"type": "string",
|
|
3179
|
+
"format": "uuid"
|
|
3180
|
+
},
|
|
3181
|
+
"idempotencyKey": {
|
|
3182
|
+
"type": "string",
|
|
3183
|
+
"minLength": 1,
|
|
3184
|
+
"maxLength": 128,
|
|
3185
|
+
"pattern": "^[A-Za-z0-9._:-]+$"
|
|
3186
|
+
},
|
|
3187
|
+
"sql": {
|
|
3188
|
+
"type": "string",
|
|
3189
|
+
"minLength": 1,
|
|
3190
|
+
"maxLength": 20000
|
|
3191
|
+
},
|
|
3192
|
+
"purpose": {
|
|
3193
|
+
"type": "string",
|
|
3194
|
+
"minLength": 3,
|
|
3195
|
+
"maxLength": 500
|
|
3196
|
+
},
|
|
3197
|
+
"params": {
|
|
3198
|
+
"type": "object",
|
|
3199
|
+
"additionalProperties": true
|
|
3200
|
+
},
|
|
3201
|
+
"maxRows": {
|
|
3202
|
+
"type": "integer",
|
|
3203
|
+
"minimum": 1,
|
|
3204
|
+
"maximum": 5000
|
|
3205
|
+
},
|
|
3206
|
+
"documentation": {
|
|
3207
|
+
"type": "object"
|
|
3208
|
+
},
|
|
3209
|
+
"columnDocumentation": {
|
|
3210
|
+
"type": "object"
|
|
3211
|
+
}
|
|
3212
|
+
},
|
|
3213
|
+
"required": [
|
|
3214
|
+
"sessionId",
|
|
3215
|
+
"artifactVersionId",
|
|
3216
|
+
"idempotencyKey",
|
|
3217
|
+
"sql",
|
|
3218
|
+
"purpose"
|
|
3219
|
+
]
|
|
3220
|
+
}
|
|
3221
|
+
```
|
|
3222
|
+
|
|
3223
|
+
Output schema:
|
|
3224
|
+
|
|
3225
|
+
```json
|
|
3226
|
+
{
|
|
3227
|
+
"type": "object",
|
|
3228
|
+
"oneOf": [
|
|
3229
|
+
{
|
|
3230
|
+
"type": "object",
|
|
3231
|
+
"properties": {
|
|
3232
|
+
"ok": {
|
|
3233
|
+
"const": true
|
|
3234
|
+
}
|
|
3235
|
+
}
|
|
3236
|
+
},
|
|
3237
|
+
{
|
|
3238
|
+
"type": "object",
|
|
3239
|
+
"properties": {
|
|
3240
|
+
"ok": {
|
|
3241
|
+
"const": false
|
|
3242
|
+
},
|
|
3243
|
+
"error": {
|
|
3244
|
+
"type": "object",
|
|
3245
|
+
"properties": {
|
|
3246
|
+
"code": {
|
|
3247
|
+
"type": "string"
|
|
3248
|
+
},
|
|
3249
|
+
"message": {
|
|
3250
|
+
"type": "string"
|
|
3251
|
+
},
|
|
3252
|
+
"retryable": {
|
|
3253
|
+
"type": "boolean"
|
|
3254
|
+
},
|
|
3255
|
+
"recoveryAction": {
|
|
3256
|
+
"type": "string"
|
|
3257
|
+
}
|
|
3258
|
+
},
|
|
3259
|
+
"required": [
|
|
3260
|
+
"code",
|
|
3261
|
+
"message",
|
|
3262
|
+
"retryable",
|
|
3263
|
+
"recoveryAction"
|
|
3264
|
+
],
|
|
3265
|
+
"additionalProperties": false
|
|
3266
|
+
}
|
|
3267
|
+
},
|
|
3268
|
+
"required": [
|
|
3269
|
+
"ok",
|
|
3270
|
+
"error"
|
|
3271
|
+
],
|
|
3272
|
+
"additionalProperties": false
|
|
3273
|
+
}
|
|
3274
|
+
]
|
|
3275
|
+
}
|
|
3276
|
+
```
|
|
3277
|
+
|
|
3278
|
+
### `platform_checkout_artifact_app`
|
|
3279
|
+
|
|
3280
|
+
Download exact saved app source through the owned session, verify archive hash/version/commit and extract regular source files into a new local directory. Missing source is never reconstructed.
|
|
3281
|
+
|
|
3282
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
3283
|
+
|
|
3284
|
+
Example request:
|
|
3285
|
+
|
|
3286
|
+
```json
|
|
3287
|
+
{
|
|
3288
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
3289
|
+
"targetDir": "<targetDir>"
|
|
3290
|
+
}
|
|
3291
|
+
```
|
|
3292
|
+
|
|
3293
|
+
Example success:
|
|
3294
|
+
|
|
3295
|
+
```json
|
|
3296
|
+
{}
|
|
3297
|
+
```
|
|
3298
|
+
|
|
3299
|
+
Input schema:
|
|
3300
|
+
|
|
3301
|
+
```json
|
|
3302
|
+
{
|
|
3303
|
+
"type": "object",
|
|
3304
|
+
"additionalProperties": false,
|
|
3305
|
+
"properties": {
|
|
3306
|
+
"sessionId": {
|
|
3307
|
+
"type": "string",
|
|
3308
|
+
"format": "uuid"
|
|
3309
|
+
},
|
|
3310
|
+
"targetDir": {
|
|
3311
|
+
"type": "string",
|
|
3312
|
+
"minLength": 1
|
|
3313
|
+
}
|
|
3314
|
+
},
|
|
3315
|
+
"required": [
|
|
3316
|
+
"sessionId",
|
|
3317
|
+
"targetDir"
|
|
3318
|
+
]
|
|
3319
|
+
}
|
|
3320
|
+
```
|
|
3321
|
+
|
|
3322
|
+
Output schema:
|
|
3323
|
+
|
|
3324
|
+
```json
|
|
3325
|
+
{
|
|
3326
|
+
"type": "object",
|
|
3327
|
+
"oneOf": [
|
|
3328
|
+
{
|
|
3329
|
+
"type": "object",
|
|
3330
|
+
"properties": {
|
|
3331
|
+
"ok": {
|
|
3332
|
+
"const": true
|
|
3333
|
+
}
|
|
3334
|
+
}
|
|
3335
|
+
},
|
|
3336
|
+
{
|
|
3337
|
+
"type": "object",
|
|
3338
|
+
"properties": {
|
|
3339
|
+
"ok": {
|
|
3340
|
+
"const": false
|
|
3341
|
+
},
|
|
3342
|
+
"error": {
|
|
3343
|
+
"type": "object",
|
|
3344
|
+
"properties": {
|
|
3345
|
+
"code": {
|
|
3346
|
+
"type": "string"
|
|
3347
|
+
},
|
|
3348
|
+
"message": {
|
|
3349
|
+
"type": "string"
|
|
3350
|
+
},
|
|
3351
|
+
"retryable": {
|
|
3352
|
+
"type": "boolean"
|
|
3353
|
+
},
|
|
3354
|
+
"recoveryAction": {
|
|
3355
|
+
"type": "string"
|
|
3356
|
+
}
|
|
3357
|
+
},
|
|
3358
|
+
"required": [
|
|
3359
|
+
"code",
|
|
3360
|
+
"message",
|
|
3361
|
+
"retryable",
|
|
3362
|
+
"recoveryAction"
|
|
3363
|
+
],
|
|
3364
|
+
"additionalProperties": false
|
|
3365
|
+
}
|
|
3366
|
+
},
|
|
3367
|
+
"required": [
|
|
3368
|
+
"ok",
|
|
3369
|
+
"error"
|
|
3370
|
+
],
|
|
3371
|
+
"additionalProperties": false
|
|
3372
|
+
}
|
|
3373
|
+
]
|
|
3374
|
+
}
|
|
3375
|
+
```
|
|
3376
|
+
|
|
3377
|
+
### `platform_list_asset_folders`
|
|
3378
|
+
|
|
3379
|
+
List the session's permitted reusable asset folders.
|
|
3380
|
+
|
|
3381
|
+
Safety: read-only=true, destructive=false, idempotent=true, open-world=true.
|
|
3382
|
+
|
|
3383
|
+
Example request:
|
|
3384
|
+
|
|
3385
|
+
```json
|
|
3386
|
+
{
|
|
3387
|
+
"sessionId": "00000000-0000-4000-8000-000000000001"
|
|
3388
|
+
}
|
|
3389
|
+
```
|
|
3390
|
+
|
|
3391
|
+
Example success:
|
|
3392
|
+
|
|
3393
|
+
```json
|
|
3394
|
+
{}
|
|
3395
|
+
```
|
|
3396
|
+
|
|
3397
|
+
Input schema:
|
|
3398
|
+
|
|
3399
|
+
```json
|
|
3400
|
+
{
|
|
3401
|
+
"type": "object",
|
|
3402
|
+
"additionalProperties": false,
|
|
3403
|
+
"properties": {
|
|
3404
|
+
"sessionId": {
|
|
3405
|
+
"type": "string",
|
|
3406
|
+
"format": "uuid"
|
|
3407
|
+
}
|
|
3408
|
+
},
|
|
3409
|
+
"required": [
|
|
3410
|
+
"sessionId"
|
|
3411
|
+
]
|
|
3412
|
+
}
|
|
3413
|
+
```
|
|
3414
|
+
|
|
3415
|
+
Output schema:
|
|
3416
|
+
|
|
3417
|
+
```json
|
|
3418
|
+
{
|
|
3419
|
+
"type": "object",
|
|
3420
|
+
"oneOf": [
|
|
3421
|
+
{
|
|
3422
|
+
"type": "object",
|
|
3423
|
+
"properties": {
|
|
3424
|
+
"ok": {
|
|
3425
|
+
"const": true
|
|
3426
|
+
}
|
|
3427
|
+
}
|
|
3428
|
+
},
|
|
3429
|
+
{
|
|
3430
|
+
"type": "object",
|
|
3431
|
+
"properties": {
|
|
3432
|
+
"ok": {
|
|
3433
|
+
"const": false
|
|
3434
|
+
},
|
|
3435
|
+
"error": {
|
|
3436
|
+
"type": "object",
|
|
3437
|
+
"properties": {
|
|
3438
|
+
"code": {
|
|
3439
|
+
"type": "string"
|
|
3440
|
+
},
|
|
3441
|
+
"message": {
|
|
3442
|
+
"type": "string"
|
|
3443
|
+
},
|
|
3444
|
+
"retryable": {
|
|
3445
|
+
"type": "boolean"
|
|
3446
|
+
},
|
|
3447
|
+
"recoveryAction": {
|
|
3448
|
+
"type": "string"
|
|
3449
|
+
}
|
|
3450
|
+
},
|
|
3451
|
+
"required": [
|
|
3452
|
+
"code",
|
|
3453
|
+
"message",
|
|
3454
|
+
"retryable",
|
|
3455
|
+
"recoveryAction"
|
|
3456
|
+
],
|
|
3457
|
+
"additionalProperties": false
|
|
3458
|
+
}
|
|
3459
|
+
},
|
|
3460
|
+
"required": [
|
|
3461
|
+
"ok",
|
|
3462
|
+
"error"
|
|
3463
|
+
],
|
|
3464
|
+
"additionalProperties": false
|
|
3465
|
+
}
|
|
3466
|
+
]
|
|
3467
|
+
}
|
|
3468
|
+
```
|
|
3469
|
+
|
|
3470
|
+
### `platform_list_assets`
|
|
3471
|
+
|
|
3472
|
+
List permitted reusable asset metadata with bounded pagination; excluded/deleted attachments are omitted.
|
|
3473
|
+
|
|
3474
|
+
Safety: read-only=true, destructive=false, idempotent=true, open-world=true.
|
|
3475
|
+
|
|
3476
|
+
Example request:
|
|
3477
|
+
|
|
3478
|
+
```json
|
|
3479
|
+
{
|
|
3480
|
+
"sessionId": "00000000-0000-4000-8000-000000000001"
|
|
3481
|
+
}
|
|
3482
|
+
```
|
|
3483
|
+
|
|
3484
|
+
Example success:
|
|
3485
|
+
|
|
3486
|
+
```json
|
|
3487
|
+
{}
|
|
3488
|
+
```
|
|
3489
|
+
|
|
3490
|
+
Input schema:
|
|
3491
|
+
|
|
3492
|
+
```json
|
|
3493
|
+
{
|
|
3494
|
+
"type": "object",
|
|
3495
|
+
"additionalProperties": false,
|
|
3496
|
+
"properties": {
|
|
3497
|
+
"sessionId": {
|
|
3498
|
+
"type": "string",
|
|
3499
|
+
"format": "uuid"
|
|
3500
|
+
},
|
|
3501
|
+
"query": {
|
|
3502
|
+
"type": "string",
|
|
3503
|
+
"maxLength": 200
|
|
3504
|
+
},
|
|
3505
|
+
"folderId": {
|
|
3506
|
+
"type": "string",
|
|
3507
|
+
"format": "uuid"
|
|
3508
|
+
},
|
|
3509
|
+
"limit": {
|
|
3510
|
+
"type": "integer",
|
|
3511
|
+
"minimum": 1,
|
|
3512
|
+
"maximum": 500
|
|
3513
|
+
},
|
|
3514
|
+
"offset": {
|
|
3515
|
+
"type": "integer",
|
|
3516
|
+
"minimum": 0
|
|
3517
|
+
}
|
|
3518
|
+
},
|
|
3519
|
+
"required": [
|
|
3520
|
+
"sessionId"
|
|
3521
|
+
]
|
|
3522
|
+
}
|
|
3523
|
+
```
|
|
3524
|
+
|
|
3525
|
+
Output schema:
|
|
3526
|
+
|
|
3527
|
+
```json
|
|
3528
|
+
{
|
|
3529
|
+
"type": "object",
|
|
3530
|
+
"oneOf": [
|
|
3531
|
+
{
|
|
3532
|
+
"type": "object",
|
|
3533
|
+
"properties": {
|
|
3534
|
+
"ok": {
|
|
3535
|
+
"const": true
|
|
3536
|
+
}
|
|
3537
|
+
}
|
|
3538
|
+
},
|
|
3539
|
+
{
|
|
3540
|
+
"type": "object",
|
|
3541
|
+
"properties": {
|
|
3542
|
+
"ok": {
|
|
3543
|
+
"const": false
|
|
3544
|
+
},
|
|
3545
|
+
"error": {
|
|
3546
|
+
"type": "object",
|
|
3547
|
+
"properties": {
|
|
3548
|
+
"code": {
|
|
3549
|
+
"type": "string"
|
|
3550
|
+
},
|
|
3551
|
+
"message": {
|
|
3552
|
+
"type": "string"
|
|
3553
|
+
},
|
|
3554
|
+
"retryable": {
|
|
3555
|
+
"type": "boolean"
|
|
3556
|
+
},
|
|
3557
|
+
"recoveryAction": {
|
|
3558
|
+
"type": "string"
|
|
3559
|
+
}
|
|
3560
|
+
},
|
|
3561
|
+
"required": [
|
|
3562
|
+
"code",
|
|
3563
|
+
"message",
|
|
3564
|
+
"retryable",
|
|
3565
|
+
"recoveryAction"
|
|
3566
|
+
],
|
|
3567
|
+
"additionalProperties": false
|
|
3568
|
+
}
|
|
3569
|
+
},
|
|
3570
|
+
"required": [
|
|
3571
|
+
"ok",
|
|
3572
|
+
"error"
|
|
3573
|
+
],
|
|
3574
|
+
"additionalProperties": false
|
|
3575
|
+
}
|
|
3576
|
+
]
|
|
3577
|
+
}
|
|
3578
|
+
```
|
|
3579
|
+
|
|
3580
|
+
### `platform_materialize_assets`
|
|
3581
|
+
|
|
3582
|
+
Download exactly selected approved files into a new local directory. Verify each authenticated transfer's hash and size; source and attachment budgets remain separate.
|
|
3583
|
+
|
|
3584
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
3585
|
+
|
|
3586
|
+
Example request:
|
|
3587
|
+
|
|
3588
|
+
```json
|
|
3589
|
+
{
|
|
3590
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
3591
|
+
"assetIds": [
|
|
3592
|
+
"00000000-0000-4000-8000-000000000001"
|
|
3593
|
+
],
|
|
3594
|
+
"targetDir": "<targetDir>"
|
|
3595
|
+
}
|
|
3596
|
+
```
|
|
3597
|
+
|
|
3598
|
+
Example success:
|
|
3599
|
+
|
|
3600
|
+
```json
|
|
3601
|
+
{}
|
|
3602
|
+
```
|
|
3603
|
+
|
|
3604
|
+
Input schema:
|
|
3605
|
+
|
|
3606
|
+
```json
|
|
3607
|
+
{
|
|
3608
|
+
"type": "object",
|
|
3609
|
+
"additionalProperties": false,
|
|
3610
|
+
"properties": {
|
|
3611
|
+
"sessionId": {
|
|
3612
|
+
"type": "string",
|
|
3613
|
+
"format": "uuid"
|
|
3614
|
+
},
|
|
3615
|
+
"assetIds": {
|
|
3616
|
+
"type": "array",
|
|
3617
|
+
"minItems": 1,
|
|
3618
|
+
"maxItems": 50,
|
|
3619
|
+
"uniqueItems": true,
|
|
3620
|
+
"items": {
|
|
3621
|
+
"type": "string",
|
|
3622
|
+
"format": "uuid"
|
|
3623
|
+
}
|
|
3624
|
+
},
|
|
3625
|
+
"targetDir": {
|
|
3626
|
+
"type": "string",
|
|
3627
|
+
"minLength": 1
|
|
3628
|
+
}
|
|
3629
|
+
},
|
|
3630
|
+
"required": [
|
|
3631
|
+
"sessionId",
|
|
3632
|
+
"assetIds",
|
|
3633
|
+
"targetDir"
|
|
3634
|
+
]
|
|
3635
|
+
}
|
|
3636
|
+
```
|
|
3637
|
+
|
|
3638
|
+
Output schema:
|
|
3639
|
+
|
|
3640
|
+
```json
|
|
3641
|
+
{
|
|
3642
|
+
"type": "object",
|
|
3643
|
+
"oneOf": [
|
|
3644
|
+
{
|
|
3645
|
+
"type": "object",
|
|
3646
|
+
"properties": {
|
|
3647
|
+
"ok": {
|
|
3648
|
+
"const": true
|
|
3649
|
+
}
|
|
3650
|
+
}
|
|
3651
|
+
},
|
|
3652
|
+
{
|
|
3653
|
+
"type": "object",
|
|
3654
|
+
"properties": {
|
|
3655
|
+
"ok": {
|
|
3656
|
+
"const": false
|
|
3657
|
+
},
|
|
3658
|
+
"error": {
|
|
3659
|
+
"type": "object",
|
|
3660
|
+
"properties": {
|
|
3661
|
+
"code": {
|
|
3662
|
+
"type": "string"
|
|
3663
|
+
},
|
|
3664
|
+
"message": {
|
|
3665
|
+
"type": "string"
|
|
3666
|
+
},
|
|
3667
|
+
"retryable": {
|
|
3668
|
+
"type": "boolean"
|
|
3669
|
+
},
|
|
3670
|
+
"recoveryAction": {
|
|
3671
|
+
"type": "string"
|
|
3672
|
+
}
|
|
3673
|
+
},
|
|
3674
|
+
"required": [
|
|
3675
|
+
"code",
|
|
3676
|
+
"message",
|
|
3677
|
+
"retryable",
|
|
3678
|
+
"recoveryAction"
|
|
3679
|
+
],
|
|
3680
|
+
"additionalProperties": false
|
|
3681
|
+
}
|
|
3682
|
+
},
|
|
3683
|
+
"required": [
|
|
3684
|
+
"ok",
|
|
3685
|
+
"error"
|
|
3686
|
+
],
|
|
3687
|
+
"additionalProperties": false
|
|
3688
|
+
}
|
|
3689
|
+
]
|
|
3690
|
+
}
|
|
3691
|
+
```
|
|
3692
|
+
|
|
3693
|
+
### `platform_list_build_secrets`
|
|
3694
|
+
|
|
3695
|
+
Read only exact operator-approved binding references for this session. Values are never retrieved. Authoring detach does not prove deployed runtime revocation.
|
|
3696
|
+
|
|
3697
|
+
Safety: read-only=true, destructive=false, idempotent=true, open-world=true.
|
|
3698
|
+
|
|
3699
|
+
Example request:
|
|
3700
|
+
|
|
3701
|
+
```json
|
|
3702
|
+
{
|
|
3703
|
+
"sessionId": "00000000-0000-4000-8000-000000000001"
|
|
3704
|
+
}
|
|
3705
|
+
```
|
|
3706
|
+
|
|
3707
|
+
Example success:
|
|
3708
|
+
|
|
3709
|
+
```json
|
|
3710
|
+
{}
|
|
3711
|
+
```
|
|
3712
|
+
|
|
3713
|
+
Input schema:
|
|
3714
|
+
|
|
3715
|
+
```json
|
|
3716
|
+
{
|
|
3717
|
+
"type": "object",
|
|
3718
|
+
"additionalProperties": false,
|
|
3719
|
+
"properties": {
|
|
3720
|
+
"sessionId": {
|
|
3721
|
+
"type": "string",
|
|
3722
|
+
"format": "uuid"
|
|
3723
|
+
}
|
|
3724
|
+
},
|
|
3725
|
+
"required": [
|
|
3726
|
+
"sessionId"
|
|
3727
|
+
]
|
|
3728
|
+
}
|
|
3729
|
+
```
|
|
3730
|
+
|
|
3731
|
+
Output schema:
|
|
3732
|
+
|
|
3733
|
+
```json
|
|
3734
|
+
{
|
|
3735
|
+
"type": "object",
|
|
3736
|
+
"oneOf": [
|
|
3737
|
+
{
|
|
3738
|
+
"type": "object",
|
|
3739
|
+
"properties": {
|
|
3740
|
+
"ok": {
|
|
3741
|
+
"const": true
|
|
3742
|
+
}
|
|
3743
|
+
}
|
|
3744
|
+
},
|
|
3745
|
+
{
|
|
3746
|
+
"type": "object",
|
|
3747
|
+
"properties": {
|
|
3748
|
+
"ok": {
|
|
3749
|
+
"const": false
|
|
3750
|
+
},
|
|
3751
|
+
"error": {
|
|
3752
|
+
"type": "object",
|
|
3753
|
+
"properties": {
|
|
3754
|
+
"code": {
|
|
3755
|
+
"type": "string"
|
|
3756
|
+
},
|
|
3757
|
+
"message": {
|
|
3758
|
+
"type": "string"
|
|
3759
|
+
},
|
|
3760
|
+
"retryable": {
|
|
3761
|
+
"type": "boolean"
|
|
3762
|
+
},
|
|
3763
|
+
"recoveryAction": {
|
|
3764
|
+
"type": "string"
|
|
3765
|
+
}
|
|
3766
|
+
},
|
|
3767
|
+
"required": [
|
|
3768
|
+
"code",
|
|
3769
|
+
"message",
|
|
3770
|
+
"retryable",
|
|
3771
|
+
"recoveryAction"
|
|
3772
|
+
],
|
|
3773
|
+
"additionalProperties": false
|
|
3774
|
+
}
|
|
3775
|
+
},
|
|
3776
|
+
"required": [
|
|
3777
|
+
"ok",
|
|
3778
|
+
"error"
|
|
3779
|
+
],
|
|
3780
|
+
"additionalProperties": false
|
|
3781
|
+
}
|
|
3782
|
+
]
|
|
3783
|
+
}
|
|
3784
|
+
```
|
|
3785
|
+
|
|
3786
|
+
### `platform_add_acceptance_check`
|
|
3787
|
+
|
|
3788
|
+
Add a required acceptance check bound to this build session and deployed revision. A semantic control query requires separate Build data-verification consent.
|
|
3789
|
+
|
|
3790
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
3791
|
+
|
|
3792
|
+
Example request:
|
|
3793
|
+
|
|
3794
|
+
```json
|
|
3795
|
+
{
|
|
3796
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
3797
|
+
"artifactVersionId": "00000000-0000-4000-8000-000000000001",
|
|
3798
|
+
"idempotencyKey": "example-request",
|
|
3799
|
+
"description": "<description>"
|
|
3800
|
+
}
|
|
3801
|
+
```
|
|
3802
|
+
|
|
3803
|
+
Example success:
|
|
3804
|
+
|
|
3805
|
+
```json
|
|
3806
|
+
{}
|
|
3807
|
+
```
|
|
3808
|
+
|
|
3809
|
+
Input schema:
|
|
3810
|
+
|
|
3811
|
+
```json
|
|
3812
|
+
{
|
|
3813
|
+
"type": "object",
|
|
3814
|
+
"additionalProperties": false,
|
|
3815
|
+
"properties": {
|
|
3816
|
+
"sessionId": {
|
|
3817
|
+
"type": "string",
|
|
3818
|
+
"format": "uuid"
|
|
3819
|
+
},
|
|
3820
|
+
"artifactVersionId": {
|
|
3821
|
+
"type": "string",
|
|
3822
|
+
"format": "uuid"
|
|
3823
|
+
},
|
|
3824
|
+
"idempotencyKey": {
|
|
3825
|
+
"type": "string",
|
|
3826
|
+
"minLength": 1,
|
|
3827
|
+
"maxLength": 128,
|
|
3828
|
+
"pattern": "^[A-Za-z0-9._:-]+$"
|
|
3829
|
+
},
|
|
3830
|
+
"description": {
|
|
3831
|
+
"type": "string",
|
|
3832
|
+
"minLength": 3,
|
|
3833
|
+
"maxLength": 1000
|
|
3834
|
+
}
|
|
3835
|
+
},
|
|
3836
|
+
"required": [
|
|
3837
|
+
"sessionId",
|
|
3838
|
+
"artifactVersionId",
|
|
3839
|
+
"idempotencyKey",
|
|
3840
|
+
"description"
|
|
3841
|
+
]
|
|
3842
|
+
}
|
|
3843
|
+
```
|
|
3844
|
+
|
|
3845
|
+
Output schema:
|
|
3846
|
+
|
|
3847
|
+
```json
|
|
3848
|
+
{
|
|
3849
|
+
"type": "object",
|
|
3850
|
+
"oneOf": [
|
|
3851
|
+
{
|
|
3852
|
+
"type": "object",
|
|
3853
|
+
"properties": {
|
|
3854
|
+
"ok": {
|
|
3855
|
+
"const": true
|
|
3856
|
+
}
|
|
3857
|
+
}
|
|
3858
|
+
},
|
|
3859
|
+
{
|
|
3860
|
+
"type": "object",
|
|
3861
|
+
"properties": {
|
|
3862
|
+
"ok": {
|
|
3863
|
+
"const": false
|
|
3864
|
+
},
|
|
3865
|
+
"error": {
|
|
3866
|
+
"type": "object",
|
|
3867
|
+
"properties": {
|
|
3868
|
+
"code": {
|
|
3869
|
+
"type": "string"
|
|
3870
|
+
},
|
|
3871
|
+
"message": {
|
|
3872
|
+
"type": "string"
|
|
3873
|
+
},
|
|
3874
|
+
"retryable": {
|
|
3875
|
+
"type": "boolean"
|
|
3876
|
+
},
|
|
3877
|
+
"recoveryAction": {
|
|
3878
|
+
"type": "string"
|
|
3879
|
+
}
|
|
3880
|
+
},
|
|
3881
|
+
"required": [
|
|
3882
|
+
"code",
|
|
3883
|
+
"message",
|
|
3884
|
+
"retryable",
|
|
3885
|
+
"recoveryAction"
|
|
3886
|
+
],
|
|
3887
|
+
"additionalProperties": false
|
|
3888
|
+
}
|
|
3889
|
+
},
|
|
3890
|
+
"required": [
|
|
3891
|
+
"ok",
|
|
3892
|
+
"error"
|
|
3893
|
+
],
|
|
3894
|
+
"additionalProperties": false
|
|
3895
|
+
}
|
|
3896
|
+
]
|
|
3897
|
+
}
|
|
3898
|
+
```
|
|
3899
|
+
|
|
3900
|
+
### `platform_run_acceptance_checks`
|
|
3901
|
+
|
|
3902
|
+
Run required acceptance checks for the exact current draft revision through the shared service.
|
|
3903
|
+
|
|
3904
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
3905
|
+
|
|
3906
|
+
Example request:
|
|
3907
|
+
|
|
3908
|
+
```json
|
|
3909
|
+
{
|
|
3910
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
3911
|
+
"artifactVersionId": "00000000-0000-4000-8000-000000000001",
|
|
3912
|
+
"idempotencyKey": "example-request"
|
|
3913
|
+
}
|
|
3914
|
+
```
|
|
3915
|
+
|
|
3916
|
+
Example success:
|
|
3917
|
+
|
|
3918
|
+
```json
|
|
3919
|
+
{}
|
|
3920
|
+
```
|
|
3921
|
+
|
|
3922
|
+
Input schema:
|
|
3923
|
+
|
|
3924
|
+
```json
|
|
3925
|
+
{
|
|
3926
|
+
"type": "object",
|
|
3927
|
+
"additionalProperties": false,
|
|
3928
|
+
"properties": {
|
|
3929
|
+
"sessionId": {
|
|
3930
|
+
"type": "string",
|
|
3931
|
+
"format": "uuid"
|
|
3932
|
+
},
|
|
3933
|
+
"artifactVersionId": {
|
|
3934
|
+
"type": "string",
|
|
3935
|
+
"format": "uuid"
|
|
3936
|
+
},
|
|
3937
|
+
"idempotencyKey": {
|
|
3938
|
+
"type": "string",
|
|
3939
|
+
"minLength": 1,
|
|
3940
|
+
"maxLength": 128,
|
|
3941
|
+
"pattern": "^[A-Za-z0-9._:-]+$"
|
|
3942
|
+
}
|
|
3943
|
+
},
|
|
3944
|
+
"required": [
|
|
3945
|
+
"sessionId",
|
|
3946
|
+
"artifactVersionId",
|
|
3947
|
+
"idempotencyKey"
|
|
3948
|
+
]
|
|
3949
|
+
}
|
|
3950
|
+
```
|
|
3951
|
+
|
|
3952
|
+
Output schema:
|
|
3953
|
+
|
|
3954
|
+
```json
|
|
3955
|
+
{
|
|
3956
|
+
"type": "object",
|
|
3957
|
+
"oneOf": [
|
|
3958
|
+
{
|
|
3959
|
+
"type": "object",
|
|
3960
|
+
"properties": {
|
|
3961
|
+
"ok": {
|
|
3962
|
+
"const": true
|
|
3963
|
+
}
|
|
3964
|
+
}
|
|
3965
|
+
},
|
|
3966
|
+
{
|
|
3967
|
+
"type": "object",
|
|
3968
|
+
"properties": {
|
|
3969
|
+
"ok": {
|
|
3970
|
+
"const": false
|
|
3971
|
+
},
|
|
3972
|
+
"error": {
|
|
3973
|
+
"type": "object",
|
|
3974
|
+
"properties": {
|
|
3975
|
+
"code": {
|
|
3976
|
+
"type": "string"
|
|
3977
|
+
},
|
|
3978
|
+
"message": {
|
|
3979
|
+
"type": "string"
|
|
3980
|
+
},
|
|
3981
|
+
"retryable": {
|
|
3982
|
+
"type": "boolean"
|
|
3983
|
+
},
|
|
3984
|
+
"recoveryAction": {
|
|
3985
|
+
"type": "string"
|
|
3986
|
+
}
|
|
3987
|
+
},
|
|
3988
|
+
"required": [
|
|
3989
|
+
"code",
|
|
3990
|
+
"message",
|
|
3991
|
+
"retryable",
|
|
3992
|
+
"recoveryAction"
|
|
3993
|
+
],
|
|
3994
|
+
"additionalProperties": false
|
|
3995
|
+
}
|
|
3996
|
+
},
|
|
3997
|
+
"required": [
|
|
3998
|
+
"ok",
|
|
3999
|
+
"error"
|
|
4000
|
+
],
|
|
4001
|
+
"additionalProperties": false
|
|
4002
|
+
}
|
|
4003
|
+
]
|
|
4004
|
+
}
|
|
4005
|
+
```
|
|
4006
|
+
|
|
4007
|
+
### `platform_record_acceptance_review`
|
|
4008
|
+
|
|
4009
|
+
Record the builder's acceptance review without impersonating the independent validator or removing required checks.
|
|
4010
|
+
|
|
4011
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
4012
|
+
|
|
4013
|
+
Example request:
|
|
4014
|
+
|
|
4015
|
+
```json
|
|
4016
|
+
{
|
|
4017
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
4018
|
+
"artifactVersionId": "00000000-0000-4000-8000-000000000001",
|
|
4019
|
+
"idempotencyKey": "example-request",
|
|
4020
|
+
"checkId": "00000000-0000-4000-8000-000000000001",
|
|
4021
|
+
"status": "passed",
|
|
4022
|
+
"summary": "<summary>"
|
|
4023
|
+
}
|
|
4024
|
+
```
|
|
4025
|
+
|
|
4026
|
+
Example success:
|
|
4027
|
+
|
|
4028
|
+
```json
|
|
4029
|
+
{}
|
|
4030
|
+
```
|
|
4031
|
+
|
|
4032
|
+
Input schema:
|
|
4033
|
+
|
|
4034
|
+
```json
|
|
4035
|
+
{
|
|
4036
|
+
"type": "object",
|
|
4037
|
+
"additionalProperties": false,
|
|
4038
|
+
"properties": {
|
|
4039
|
+
"sessionId": {
|
|
4040
|
+
"type": "string",
|
|
4041
|
+
"format": "uuid"
|
|
4042
|
+
},
|
|
4043
|
+
"artifactVersionId": {
|
|
4044
|
+
"type": "string",
|
|
4045
|
+
"format": "uuid"
|
|
4046
|
+
},
|
|
4047
|
+
"idempotencyKey": {
|
|
4048
|
+
"type": "string",
|
|
4049
|
+
"minLength": 1,
|
|
4050
|
+
"maxLength": 128,
|
|
4051
|
+
"pattern": "^[A-Za-z0-9._:-]+$"
|
|
4052
|
+
},
|
|
4053
|
+
"checkId": {
|
|
4054
|
+
"type": "string",
|
|
4055
|
+
"format": "uuid"
|
|
4056
|
+
},
|
|
4057
|
+
"status": {
|
|
4058
|
+
"type": "string",
|
|
4059
|
+
"enum": [
|
|
4060
|
+
"passed",
|
|
4061
|
+
"failed"
|
|
4062
|
+
]
|
|
4063
|
+
},
|
|
4064
|
+
"summary": {
|
|
4065
|
+
"type": "string",
|
|
4066
|
+
"minLength": 3,
|
|
4067
|
+
"maxLength": 2000
|
|
4068
|
+
}
|
|
4069
|
+
},
|
|
4070
|
+
"required": [
|
|
4071
|
+
"sessionId",
|
|
4072
|
+
"artifactVersionId",
|
|
4073
|
+
"idempotencyKey",
|
|
4074
|
+
"checkId",
|
|
4075
|
+
"status",
|
|
4076
|
+
"summary"
|
|
4077
|
+
]
|
|
4078
|
+
}
|
|
4079
|
+
```
|
|
4080
|
+
|
|
4081
|
+
Output schema:
|
|
4082
|
+
|
|
4083
|
+
```json
|
|
4084
|
+
{
|
|
4085
|
+
"type": "object",
|
|
4086
|
+
"oneOf": [
|
|
4087
|
+
{
|
|
4088
|
+
"type": "object",
|
|
4089
|
+
"properties": {
|
|
4090
|
+
"ok": {
|
|
4091
|
+
"const": true
|
|
4092
|
+
}
|
|
4093
|
+
}
|
|
4094
|
+
},
|
|
4095
|
+
{
|
|
4096
|
+
"type": "object",
|
|
4097
|
+
"properties": {
|
|
4098
|
+
"ok": {
|
|
4099
|
+
"const": false
|
|
4100
|
+
},
|
|
4101
|
+
"error": {
|
|
4102
|
+
"type": "object",
|
|
4103
|
+
"properties": {
|
|
4104
|
+
"code": {
|
|
4105
|
+
"type": "string"
|
|
4106
|
+
},
|
|
4107
|
+
"message": {
|
|
4108
|
+
"type": "string"
|
|
4109
|
+
},
|
|
4110
|
+
"retryable": {
|
|
4111
|
+
"type": "boolean"
|
|
4112
|
+
},
|
|
4113
|
+
"recoveryAction": {
|
|
4114
|
+
"type": "string"
|
|
4115
|
+
}
|
|
4116
|
+
},
|
|
4117
|
+
"required": [
|
|
4118
|
+
"code",
|
|
4119
|
+
"message",
|
|
4120
|
+
"retryable",
|
|
4121
|
+
"recoveryAction"
|
|
4122
|
+
],
|
|
4123
|
+
"additionalProperties": false
|
|
4124
|
+
}
|
|
4125
|
+
},
|
|
4126
|
+
"required": [
|
|
4127
|
+
"ok",
|
|
4128
|
+
"error"
|
|
4129
|
+
],
|
|
4130
|
+
"additionalProperties": false
|
|
4131
|
+
}
|
|
4132
|
+
]
|
|
4133
|
+
}
|
|
4134
|
+
```
|
|
4135
|
+
|
|
4136
|
+
### `platform_prepare_artifact_validation`
|
|
4137
|
+
|
|
4138
|
+
Prepare validation evidence for the exact private draft revision; missing required checks block readiness.
|
|
4139
|
+
|
|
4140
|
+
Safety: read-only=true, destructive=false, idempotent=true, open-world=true.
|
|
4141
|
+
|
|
4142
|
+
Example request:
|
|
4143
|
+
|
|
4144
|
+
```json
|
|
4145
|
+
{
|
|
4146
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
4147
|
+
"artifactVersionId": "00000000-0000-4000-8000-000000000001",
|
|
4148
|
+
"deploymentRecordId": "00000000-0000-4000-8000-000000000001"
|
|
4149
|
+
}
|
|
4150
|
+
```
|
|
4151
|
+
|
|
4152
|
+
Example success:
|
|
4153
|
+
|
|
4154
|
+
```json
|
|
4155
|
+
{}
|
|
4156
|
+
```
|
|
4157
|
+
|
|
4158
|
+
Input schema:
|
|
4159
|
+
|
|
4160
|
+
```json
|
|
4161
|
+
{
|
|
4162
|
+
"type": "object",
|
|
4163
|
+
"additionalProperties": false,
|
|
4164
|
+
"properties": {
|
|
4165
|
+
"sessionId": {
|
|
4166
|
+
"type": "string",
|
|
4167
|
+
"format": "uuid"
|
|
4168
|
+
},
|
|
4169
|
+
"artifactVersionId": {
|
|
4170
|
+
"type": "string",
|
|
4171
|
+
"format": "uuid"
|
|
4172
|
+
},
|
|
4173
|
+
"deploymentRecordId": {
|
|
4174
|
+
"type": "string",
|
|
4175
|
+
"format": "uuid"
|
|
4176
|
+
}
|
|
4177
|
+
},
|
|
4178
|
+
"required": [
|
|
4179
|
+
"sessionId",
|
|
4180
|
+
"artifactVersionId",
|
|
4181
|
+
"deploymentRecordId"
|
|
4182
|
+
]
|
|
4183
|
+
}
|
|
4184
|
+
```
|
|
4185
|
+
|
|
4186
|
+
Output schema:
|
|
4187
|
+
|
|
4188
|
+
```json
|
|
4189
|
+
{
|
|
4190
|
+
"type": "object",
|
|
4191
|
+
"oneOf": [
|
|
4192
|
+
{
|
|
4193
|
+
"type": "object",
|
|
4194
|
+
"properties": {
|
|
4195
|
+
"ok": {
|
|
4196
|
+
"const": true
|
|
4197
|
+
}
|
|
4198
|
+
}
|
|
4199
|
+
},
|
|
4200
|
+
{
|
|
4201
|
+
"type": "object",
|
|
4202
|
+
"properties": {
|
|
4203
|
+
"ok": {
|
|
4204
|
+
"const": false
|
|
4205
|
+
},
|
|
4206
|
+
"error": {
|
|
4207
|
+
"type": "object",
|
|
4208
|
+
"properties": {
|
|
4209
|
+
"code": {
|
|
4210
|
+
"type": "string"
|
|
4211
|
+
},
|
|
4212
|
+
"message": {
|
|
4213
|
+
"type": "string"
|
|
4214
|
+
},
|
|
4215
|
+
"retryable": {
|
|
4216
|
+
"type": "boolean"
|
|
4217
|
+
},
|
|
4218
|
+
"recoveryAction": {
|
|
4219
|
+
"type": "string"
|
|
4220
|
+
}
|
|
4221
|
+
},
|
|
4222
|
+
"required": [
|
|
4223
|
+
"code",
|
|
4224
|
+
"message",
|
|
4225
|
+
"retryable",
|
|
4226
|
+
"recoveryAction"
|
|
4227
|
+
],
|
|
4228
|
+
"additionalProperties": false
|
|
4229
|
+
}
|
|
4230
|
+
},
|
|
4231
|
+
"required": [
|
|
4232
|
+
"ok",
|
|
4233
|
+
"error"
|
|
4234
|
+
],
|
|
4235
|
+
"additionalProperties": false
|
|
4236
|
+
}
|
|
4237
|
+
]
|
|
4238
|
+
}
|
|
4239
|
+
```
|
|
4240
|
+
|
|
4241
|
+
### `platform_request_artifact_validation`
|
|
4242
|
+
|
|
4243
|
+
Request the independent reviewer for the exact deployment and bounded evidence. Returns durable operation status; unavailable infrastructure leaves operator review required, never approval.
|
|
4244
|
+
|
|
4245
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
4246
|
+
|
|
4247
|
+
Example request:
|
|
4248
|
+
|
|
4249
|
+
```json
|
|
4250
|
+
{
|
|
4251
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
4252
|
+
"artifactVersionId": "00000000-0000-4000-8000-000000000001",
|
|
4253
|
+
"idempotencyKey": "example-request",
|
|
4254
|
+
"deploymentRecordId": "00000000-0000-4000-8000-000000000001",
|
|
4255
|
+
"summary": "<summary>",
|
|
4256
|
+
"docImpact": "material",
|
|
4257
|
+
"docImpactNotes": "<docImpactNotes>",
|
|
4258
|
+
"visualReview": {}
|
|
4259
|
+
}
|
|
4260
|
+
```
|
|
4261
|
+
|
|
4262
|
+
Example success:
|
|
4263
|
+
|
|
4264
|
+
```json
|
|
4265
|
+
{}
|
|
4266
|
+
```
|
|
4267
|
+
|
|
4268
|
+
Input schema:
|
|
4269
|
+
|
|
4270
|
+
```json
|
|
4271
|
+
{
|
|
4272
|
+
"type": "object",
|
|
4273
|
+
"additionalProperties": false,
|
|
4274
|
+
"properties": {
|
|
4275
|
+
"sessionId": {
|
|
4276
|
+
"type": "string",
|
|
4277
|
+
"format": "uuid"
|
|
4278
|
+
},
|
|
4279
|
+
"artifactVersionId": {
|
|
4280
|
+
"type": "string",
|
|
4281
|
+
"format": "uuid"
|
|
4282
|
+
},
|
|
4283
|
+
"idempotencyKey": {
|
|
4284
|
+
"type": "string",
|
|
4285
|
+
"minLength": 1,
|
|
4286
|
+
"maxLength": 128,
|
|
4287
|
+
"pattern": "^[A-Za-z0-9._:-]+$"
|
|
4288
|
+
},
|
|
4289
|
+
"deploymentRecordId": {
|
|
4290
|
+
"type": "string",
|
|
4291
|
+
"format": "uuid"
|
|
4292
|
+
},
|
|
4293
|
+
"summary": {
|
|
4294
|
+
"type": "string",
|
|
4295
|
+
"minLength": 3,
|
|
4296
|
+
"maxLength": 4000
|
|
4297
|
+
},
|
|
4298
|
+
"waitMs": {
|
|
4299
|
+
"type": "integer",
|
|
4300
|
+
"minimum": 0,
|
|
4301
|
+
"maximum": 1000
|
|
4302
|
+
},
|
|
4303
|
+
"buildOk": {
|
|
4304
|
+
"type": "boolean"
|
|
4305
|
+
},
|
|
4306
|
+
"typecheckOk": {
|
|
4307
|
+
"type": "boolean"
|
|
4308
|
+
},
|
|
4309
|
+
"docImpact": {
|
|
4310
|
+
"type": "string",
|
|
4311
|
+
"enum": [
|
|
4312
|
+
"material",
|
|
4313
|
+
"none"
|
|
4314
|
+
]
|
|
4315
|
+
},
|
|
4316
|
+
"docImpactNotes": {
|
|
4317
|
+
"type": "string",
|
|
4318
|
+
"minLength": 12,
|
|
4319
|
+
"maxLength": 2000
|
|
4320
|
+
},
|
|
4321
|
+
"visualReview": {
|
|
4322
|
+
"type": "object",
|
|
4323
|
+
"additionalProperties": true
|
|
4324
|
+
},
|
|
4325
|
+
"dataValidation": {
|
|
4326
|
+
"type": "object",
|
|
4327
|
+
"additionalProperties": true
|
|
4328
|
+
}
|
|
4329
|
+
},
|
|
4330
|
+
"required": [
|
|
4331
|
+
"sessionId",
|
|
4332
|
+
"artifactVersionId",
|
|
4333
|
+
"idempotencyKey",
|
|
4334
|
+
"deploymentRecordId",
|
|
4335
|
+
"summary",
|
|
4336
|
+
"docImpact",
|
|
4337
|
+
"docImpactNotes",
|
|
4338
|
+
"visualReview"
|
|
4339
|
+
]
|
|
4340
|
+
}
|
|
4341
|
+
```
|
|
4342
|
+
|
|
4343
|
+
Output schema:
|
|
4344
|
+
|
|
4345
|
+
```json
|
|
4346
|
+
{
|
|
4347
|
+
"type": "object",
|
|
4348
|
+
"oneOf": [
|
|
4349
|
+
{
|
|
4350
|
+
"type": "object",
|
|
4351
|
+
"properties": {
|
|
4352
|
+
"ok": {
|
|
4353
|
+
"const": true
|
|
4354
|
+
}
|
|
4355
|
+
}
|
|
4356
|
+
},
|
|
4357
|
+
{
|
|
4358
|
+
"type": "object",
|
|
4359
|
+
"properties": {
|
|
4360
|
+
"ok": {
|
|
4361
|
+
"const": false
|
|
4362
|
+
},
|
|
4363
|
+
"error": {
|
|
4364
|
+
"type": "object",
|
|
4365
|
+
"properties": {
|
|
4366
|
+
"code": {
|
|
4367
|
+
"type": "string"
|
|
4368
|
+
},
|
|
4369
|
+
"message": {
|
|
4370
|
+
"type": "string"
|
|
4371
|
+
},
|
|
4372
|
+
"retryable": {
|
|
4373
|
+
"type": "boolean"
|
|
4374
|
+
},
|
|
4375
|
+
"recoveryAction": {
|
|
4376
|
+
"type": "string"
|
|
4377
|
+
}
|
|
4378
|
+
},
|
|
4379
|
+
"required": [
|
|
4380
|
+
"code",
|
|
4381
|
+
"message",
|
|
4382
|
+
"retryable",
|
|
4383
|
+
"recoveryAction"
|
|
4384
|
+
],
|
|
4385
|
+
"additionalProperties": false
|
|
4386
|
+
}
|
|
4387
|
+
},
|
|
4388
|
+
"required": [
|
|
4389
|
+
"ok",
|
|
4390
|
+
"error"
|
|
4391
|
+
],
|
|
4392
|
+
"additionalProperties": false
|
|
4393
|
+
}
|
|
4394
|
+
]
|
|
4395
|
+
}
|
|
4396
|
+
```
|
|
4397
|
+
|
|
4398
|
+
### `platform_artifact_validation_status`
|
|
4399
|
+
|
|
4400
|
+
Read the original validation result and pending prompts without starting another reviewer or deploy. Current authorization is rechecked before evidence delivery.
|
|
4401
|
+
|
|
4402
|
+
Safety: read-only=true, destructive=false, idempotent=true, open-world=true.
|
|
4403
|
+
|
|
4404
|
+
Example request:
|
|
4405
|
+
|
|
4406
|
+
```json
|
|
4407
|
+
{
|
|
4408
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
4409
|
+
"operationId": "00000000-0000-4000-8000-000000000001"
|
|
4410
|
+
}
|
|
4411
|
+
```
|
|
4412
|
+
|
|
4413
|
+
Example success:
|
|
4414
|
+
|
|
4415
|
+
```json
|
|
4416
|
+
{}
|
|
4417
|
+
```
|
|
4418
|
+
|
|
4419
|
+
Input schema:
|
|
4420
|
+
|
|
4421
|
+
```json
|
|
4422
|
+
{
|
|
4423
|
+
"type": "object",
|
|
4424
|
+
"additionalProperties": false,
|
|
4425
|
+
"properties": {
|
|
4426
|
+
"sessionId": {
|
|
4427
|
+
"type": "string",
|
|
4428
|
+
"format": "uuid"
|
|
4429
|
+
},
|
|
4430
|
+
"operationId": {
|
|
4431
|
+
"type": "string",
|
|
4432
|
+
"format": "uuid"
|
|
4433
|
+
}
|
|
4434
|
+
},
|
|
4435
|
+
"required": [
|
|
4436
|
+
"sessionId",
|
|
4437
|
+
"operationId"
|
|
4438
|
+
]
|
|
4439
|
+
}
|
|
4440
|
+
```
|
|
4441
|
+
|
|
4442
|
+
Output schema:
|
|
4443
|
+
|
|
4444
|
+
```json
|
|
4445
|
+
{
|
|
4446
|
+
"type": "object",
|
|
4447
|
+
"oneOf": [
|
|
4448
|
+
{
|
|
4449
|
+
"type": "object",
|
|
4450
|
+
"properties": {
|
|
4451
|
+
"ok": {
|
|
4452
|
+
"const": true
|
|
4453
|
+
}
|
|
4454
|
+
}
|
|
4455
|
+
},
|
|
4456
|
+
{
|
|
4457
|
+
"type": "object",
|
|
4458
|
+
"properties": {
|
|
4459
|
+
"ok": {
|
|
4460
|
+
"const": false
|
|
4461
|
+
},
|
|
4462
|
+
"error": {
|
|
4463
|
+
"type": "object",
|
|
4464
|
+
"properties": {
|
|
4465
|
+
"code": {
|
|
4466
|
+
"type": "string"
|
|
4467
|
+
},
|
|
4468
|
+
"message": {
|
|
4469
|
+
"type": "string"
|
|
4470
|
+
},
|
|
4471
|
+
"retryable": {
|
|
4472
|
+
"type": "boolean"
|
|
4473
|
+
},
|
|
4474
|
+
"recoveryAction": {
|
|
4475
|
+
"type": "string"
|
|
4476
|
+
}
|
|
4477
|
+
},
|
|
4478
|
+
"required": [
|
|
4479
|
+
"code",
|
|
4480
|
+
"message",
|
|
4481
|
+
"retryable",
|
|
4482
|
+
"recoveryAction"
|
|
4483
|
+
],
|
|
4484
|
+
"additionalProperties": false
|
|
4485
|
+
}
|
|
4486
|
+
},
|
|
4487
|
+
"required": [
|
|
4488
|
+
"ok",
|
|
4489
|
+
"error"
|
|
4490
|
+
],
|
|
4491
|
+
"additionalProperties": false
|
|
4492
|
+
}
|
|
4493
|
+
]
|
|
4494
|
+
}
|
|
4495
|
+
```
|
|
4496
|
+
|
|
4497
|
+
### `platform_answer_operator_prompt`
|
|
4498
|
+
|
|
4499
|
+
Answer the exact saved operator prompt on the original review operation. Appends guidance and reopens the same eligible session; cannot approve validation or widen the saved grant.
|
|
4500
|
+
|
|
4501
|
+
Safety: read-only=false, destructive=false, idempotent=true, open-world=true.
|
|
4502
|
+
|
|
4503
|
+
Example request:
|
|
4504
|
+
|
|
4505
|
+
```json
|
|
4506
|
+
{
|
|
4507
|
+
"sessionId": "00000000-0000-4000-8000-000000000001",
|
|
4508
|
+
"operationId": "00000000-0000-4000-8000-000000000001",
|
|
4509
|
+
"promptId": "00000000-0000-4000-8000-000000000001",
|
|
4510
|
+
"idempotencyKey": "example-request",
|
|
4511
|
+
"message": "<message>"
|
|
4512
|
+
}
|
|
4513
|
+
```
|
|
4514
|
+
|
|
4515
|
+
Example success:
|
|
4516
|
+
|
|
4517
|
+
```json
|
|
4518
|
+
{}
|
|
4519
|
+
```
|
|
4520
|
+
|
|
4521
|
+
Input schema:
|
|
4522
|
+
|
|
4523
|
+
```json
|
|
4524
|
+
{
|
|
4525
|
+
"type": "object",
|
|
4526
|
+
"additionalProperties": false,
|
|
4527
|
+
"properties": {
|
|
4528
|
+
"sessionId": {
|
|
4529
|
+
"type": "string",
|
|
4530
|
+
"format": "uuid"
|
|
4531
|
+
},
|
|
4532
|
+
"operationId": {
|
|
4533
|
+
"type": "string",
|
|
4534
|
+
"format": "uuid"
|
|
4535
|
+
},
|
|
4536
|
+
"promptId": {
|
|
4537
|
+
"type": "string",
|
|
4538
|
+
"format": "uuid"
|
|
4539
|
+
},
|
|
4540
|
+
"idempotencyKey": {
|
|
4541
|
+
"type": "string",
|
|
4542
|
+
"minLength": 1,
|
|
4543
|
+
"maxLength": 128,
|
|
4544
|
+
"pattern": "^[A-Za-z0-9._:-]+$"
|
|
4545
|
+
},
|
|
4546
|
+
"message": {
|
|
4547
|
+
"type": "string",
|
|
4548
|
+
"minLength": 3,
|
|
4549
|
+
"maxLength": 4000
|
|
4550
|
+
}
|
|
4551
|
+
},
|
|
4552
|
+
"required": [
|
|
4553
|
+
"sessionId",
|
|
4554
|
+
"operationId",
|
|
4555
|
+
"promptId",
|
|
4556
|
+
"idempotencyKey",
|
|
4557
|
+
"message"
|
|
4558
|
+
]
|
|
4559
|
+
}
|
|
4560
|
+
```
|
|
4561
|
+
|
|
4562
|
+
Output schema:
|
|
4563
|
+
|
|
4564
|
+
```json
|
|
4565
|
+
{
|
|
4566
|
+
"type": "object",
|
|
4567
|
+
"oneOf": [
|
|
4568
|
+
{
|
|
4569
|
+
"type": "object",
|
|
4570
|
+
"properties": {
|
|
4571
|
+
"ok": {
|
|
4572
|
+
"const": true
|
|
4573
|
+
}
|
|
4574
|
+
}
|
|
4575
|
+
},
|
|
4576
|
+
{
|
|
4577
|
+
"type": "object",
|
|
4578
|
+
"properties": {
|
|
4579
|
+
"ok": {
|
|
4580
|
+
"const": false
|
|
4581
|
+
},
|
|
4582
|
+
"error": {
|
|
4583
|
+
"type": "object",
|
|
4584
|
+
"properties": {
|
|
4585
|
+
"code": {
|
|
4586
|
+
"type": "string"
|
|
4587
|
+
},
|
|
4588
|
+
"message": {
|
|
4589
|
+
"type": "string"
|
|
4590
|
+
},
|
|
4591
|
+
"retryable": {
|
|
4592
|
+
"type": "boolean"
|
|
4593
|
+
},
|
|
4594
|
+
"recoveryAction": {
|
|
4595
|
+
"type": "string"
|
|
4596
|
+
}
|
|
4597
|
+
},
|
|
4598
|
+
"required": [
|
|
4599
|
+
"code",
|
|
4600
|
+
"message",
|
|
4601
|
+
"retryable",
|
|
4602
|
+
"recoveryAction"
|
|
4603
|
+
],
|
|
4604
|
+
"additionalProperties": false
|
|
4605
|
+
}
|
|
4606
|
+
},
|
|
4607
|
+
"required": [
|
|
4608
|
+
"ok",
|
|
4609
|
+
"error"
|
|
4610
|
+
],
|
|
4611
|
+
"additionalProperties": false
|
|
4612
|
+
}
|
|
4613
|
+
]
|
|
4614
|
+
}
|
|
4615
|
+
```
|