@@ -74,28 +74,34 @@ Execution of a Python code snippet: `print("hello")`
7474
7575``` mermaid
7676sequenceDiagram
77+ actor Frontend; participant Shared Document; actor Server; participant ExecutionStack; actor Kernel
78+ Frontend->>Shared Document: [*] busy
7779 Frontend->>+Server: POST /api/kernels/<id>/execute
78- Server->>+ExecutionStack: Queue request
80+ Server->>+ExecutionStack: put() request into queue
7981 ExecutionStack->>Kernel: Execute request msg
8082 activate Kernel
8183 ExecutionStack-->>Server: Task uid
8284 Server-->>-Frontend: Returns task uid
8385 loop Running
84- Kernel->>Shared Document: Add output
86+ Kernel->>Server: stream / display_data / execute_result / error msg
87+ Server->>Shared Document: Add output
8588 Shared Document->>Frontend: Document update
8689 end
8790 loop While status is 202
8891 Frontend->>+Server: GET /api/kernels/<id>/requests/<uid>
89- Server->>ExecutionStack: Get task result
92+ Server->>ExecutionStack: get() task result
9093 ExecutionStack-->>Server: null
9194 Server-->>-Frontend: Request status 202
9295 end
93- Kernel-->>ExecutionStack: Execution reply
96+ Kernel-->>Server: Execution reply
97+ Server->>Shared Document: [𝒏] idle
98+ Server-->>ExecutionStack: execution_count, status, outputs
99+ Shared Document->>Frontend: [𝒏] idle
94100 deactivate Kernel
95101 Frontend->>+Server: GET /api/kernels/<id>/requests/<uid>
96- Server->>ExecutionStack: Get task result
97- ExecutionStack-->>Server: Result
98- Server-->>-Frontend: Status 200 & result
102+ Server->>ExecutionStack: get() task result
103+ ExecutionStack-->>Server: execution_count, status, outputs
104+ Server-->>-Frontend: Status 200 & { execution_count, status, outputs }
99105```
100106
101107### With input case
@@ -104,42 +110,48 @@ Execution of a Python code snippet: `input("Age:")`
104110
105111``` mermaid
106112sequenceDiagram
113+ actor Frontend; participant Shared Document; actor Server; participant ExecutionStack; actor Kernel
114+ Frontend->>Shared Document: [*] busy
107115 Frontend->>+Server: POST /api/kernels/<id>/execute
108- Server->>+ExecutionStack: Queue request
116+ Server->>+ExecutionStack: put() request into queue
109117 ExecutionStack->>Kernel: Execute request msg
110118 activate Kernel
111119 ExecutionStack-->>Server: Task uid
112120 Server-->>-Frontend: Returns task uid
113121 loop Running
114- Kernel->>Shared Document: Add output
122+ Kernel->>Server: stream / display_data / execute_result / error msg
123+ Server->>Shared Document: Add output
115124 Shared Document->>Frontend: Document update
116125 end
117126 loop While status is 202
118127 Frontend->>+Server: GET /api/kernels/<id>/requests/<uid>
119- Server->>ExecutionStack: Get task result
128+ Server->>ExecutionStack: get() task result
120129 ExecutionStack-->>Server: null
121130 Server-->>-Frontend: Request status 202
122131 end
123132 Kernel->>ExecutionStack: Set pending input
124133 Frontend->>+Server: GET /api/kernels/<id>/requests/<uid>
125- Server->>ExecutionStack: Get task result
134+ Server->>ExecutionStack: get() task result
126135 ExecutionStack-->>Server: Pending input
127136 Server-->>-Frontend: Status 300 & Pending input
128137 Frontend->>+Server: POST /api/kernels/<id>/input
129138 Server->>Kernel: Send input msg
130139 Server-->>-Frontend: Returns
131140 loop While status is 202
132141 Frontend->>+Server: GET /api/kernels/<id>/requests/<uid>
133- Server->>ExecutionStack: Get task result
142+ Server->>ExecutionStack: get() task result
134143 ExecutionStack-->>Server: null
135144 Server-->>-Frontend: Request status 202
136145 end
137- Kernel-->>ExecutionStack: Execution reply
146+ Kernel-->>Server: Execution reply
147+ Server->>Shared Document: [𝒏] idle
148+ Server-->>ExecutionStack: execution_count, status, outputs
149+ Shared Document->>Frontend: [𝒏] idle
138150 deactivate Kernel
139151 Frontend->>+Server: GET /api/kernels/<id>/requests/<uid>
140- Server->>ExecutionStack: Get task result
141- ExecutionStack-->>Server: Result
142- Server-->>-Frontend: Status 200 & result
152+ Server->>ExecutionStack: get() task result
153+ ExecutionStack-->>Server: execution_count, status, outputs
154+ Server-->>-Frontend: Status 200 & { execution_count, status, outputs }
143155```
144156
145157> \[ !NOTE\]
0 commit comments