Skip to content

Commit 4438736

Browse files
fix(mux): strip internal stub note from PTY OpenAPI descriptions (#9315)
1 parent ced9bc9 commit 4438736

2 files changed

Lines changed: 14 additions & 22 deletions

File tree

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 119
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai/runloop-70af693bc68f1ed5f2678a59d9ad3bb8a9e9bf8356fac4c3080cbd1a117819f8.yml
3-
openapi_spec_hash: b29dfd448505a0a3a6686202f606b8f7
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai/runloop-a248dcb8ee40eb7c0446077413996aa6a67b543a1f2a47272378641fa8791e7f.yml
3+
openapi_spec_hash: 0636ec3e6ef760052c346ecaa8a4107d
44
config_hash: 444e00951b440bf92e7548b2807584a4

src/resources/pty.ts

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -16,22 +16,18 @@ export class Pty extends APIResource {
1616
* effect. The response returns a PtyConnectView containing connect_url (a
1717
* server-relative path to the WebSocket data plane), idle_ttl_seconds (how long
1818
* this session is retained after the last client disconnects), and the resulting
19-
* cols/rows. The interactive byte stream itself is intentionally not modeled in
20-
* OpenAPI; see the controller-level documentation for the WebSocket close-code
21-
* conventions. The single-attach contract is enforced when a client opens the
22-
* WebSocket data plane, not on this bootstrap call: bootstrap always succeeds for
23-
* a valid session_name, even if another client is currently attached. Rejection of
24-
* a second concurrent attach happens at WebSocket upgrade time. If the active
25-
* client disconnects, the session is preserved for the idle TTL so a later connect
26-
* using the same session_name resumes the same shell. After the TTL expires, after
27-
* an explicit close control action, or after the underlying Devbox lifecycle
28-
* replaces the PTY process (such as through suspend/resume), a later request with
29-
* the same session_name creates a fresh PTY session without the previous shell
30-
* state.
31-
*
32-
* Documentation note: this operation is published from mux strictly as an OpenAPI
33-
* contract stub for the PTY service control plane. It is not evidence that mux
34-
* itself serves the interactive PTY transport.
19+
* cols/rows. The interactive terminal byte stream is exchanged over the WebSocket
20+
* data plane and is not modeled in this OpenAPI contract; clients should connect
21+
* to connect_url and exchange raw binary frames for terminal I/O. The
22+
* single-attach contract is enforced when a client opens the WebSocket data plane,
23+
* not on this bootstrap call: bootstrap always succeeds for a valid session_name,
24+
* even if another client is currently attached. Rejection of a second concurrent
25+
* attach happens at WebSocket upgrade time. If the active client disconnects, the
26+
* session is preserved for the idle TTL so a later connect using the same
27+
* session_name resumes the same shell. After the TTL expires, after an explicit
28+
* close control action, or after the underlying Devbox lifecycle replaces the PTY
29+
* process (such as through suspend/resume), a later request with the same
30+
* session_name creates a fresh PTY session without the previous shell state.
3531
*/
3632
connect(
3733
sessionName: string,
@@ -68,10 +64,6 @@ export class Pty extends APIResource {
6864
* (best-effort; ignored if the shell has already exited) and drops the session
6965
* from the server's session cache. A subsequent connect with the same session_name
7066
* will create a fresh PTY session.
71-
*
72-
* Documentation note: this operation is published from mux strictly as an OpenAPI
73-
* contract stub for the PTY service control plane. It is not evidence that mux
74-
* itself serves the interactive PTY transport.
7567
*/
7668
control(
7769
sessionName: string,

0 commit comments

Comments
 (0)