Skip to content

Commit c5b6792

Browse files
authored
feat(httpapi): bridge remaining session routes (#24510)
1 parent 301ecb1 commit c5b6792

4 files changed

Lines changed: 443 additions & 14 deletions

File tree

packages/opencode/specs/effect/http-api.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ Use raw Effect HTTP routes where `HttpApi` does not fit. The goal is deleting Ho
182182
| `workspace` | `bridged` | adaptor/list/status/create/remove/session-restore |
183183
| top-level instance routes | `bridged` | path, vcs, command, agent, skill, lsp, formatter, dispose |
184184
| experimental JSON routes | `bridged` | console, tool, worktree list/mutations, global session list, resource list |
185-
| `session` | `bridged` partial | read routes; lifecycle, message mutations, streaming remain |
185+
| `session` | `bridged` | read, lifecycle, prompt, message/part mutations, revert, permission reply |
186186
| `sync` | `bridged` | start/replay/history |
187187
| `event` | `special` | SSE |
188188
| `pty` | `special` | websocket |
@@ -294,25 +294,25 @@ This checklist tracks bridge parity only. Checked routes are available through t
294294
- [x] `POST /session` - create session.
295295
- [x] `DELETE /session/:sessionID` - delete session.
296296
- [x] `PATCH /session/:sessionID` - update session metadata.
297-
- [ ] `POST /session/:sessionID/init` - run project init command.
297+
- [x] `POST /session/:sessionID/init` - run project init command.
298298
- [x] `POST /session/:sessionID/fork` - fork session.
299299
- [x] `POST /session/:sessionID/abort` - abort session.
300300
- [x] `POST /session/:sessionID/share` - share session.
301301
- [x] `GET /session/:sessionID/diff` - session diff.
302302
- [x] `DELETE /session/:sessionID/share` - unshare session.
303-
- [ ] `POST /session/:sessionID/summarize` - summarize session.
303+
- [x] `POST /session/:sessionID/summarize` - summarize session.
304304
- [x] `GET /session/:sessionID/message` - list session messages.
305305
- [x] `GET /session/:sessionID/message/:messageID` - get message.
306306
- [x] `DELETE /session/:sessionID/message/:messageID` - delete message.
307307
- [x] `DELETE /session/:sessionID/message/:messageID/part/:partID` - delete part.
308308
- [x] `PATCH /session/:sessionID/message/:messageID/part/:partID` - update part.
309-
- [ ] `POST /session/:sessionID/message` - prompt with streaming response.
310-
- [ ] `POST /session/:sessionID/prompt_async` - async prompt.
311-
- [ ] `POST /session/:sessionID/command` - run command.
312-
- [ ] `POST /session/:sessionID/shell` - run shell command.
313-
- [ ] `POST /session/:sessionID/revert` - revert message.
314-
- [ ] `POST /session/:sessionID/unrevert` - restore reverted messages.
315-
- [ ] `POST /session/:sessionID/permissions/:permissionID` - deprecated permission response route.
309+
- [x] `POST /session/:sessionID/message` - prompt with streaming response.
310+
- [x] `POST /session/:sessionID/prompt_async` - async prompt.
311+
- [x] `POST /session/:sessionID/command` - run command.
312+
- [x] `POST /session/:sessionID/shell` - run shell command.
313+
- [x] `POST /session/:sessionID/revert` - revert message.
314+
- [x] `POST /session/:sessionID/unrevert` - restore reverted messages.
315+
- [x] `POST /session/:sessionID/permissions/:permissionID` - deprecated permission response route.
316316

317317
### Event Routes
318318

@@ -356,7 +356,7 @@ Prefer smaller PRs from here so route behavior and SDK/OpenAPI fallout stays rev
356356
7. [x] Bridge sync start/replay/history routes.
357357
8. [x] Bridge session read routes: list, status, get, children, todo, diff, messages.
358358
9. [x] Bridge session lifecycle mutation routes: create, delete, update, fork, abort.
359-
10. [ ] Bridge session share/summary/message/part mutation routes.
359+
10. [x] Bridge remaining session mutation and prompt routes.
360360
11. [ ] Replace event SSE with non-Hono Effect HTTP.
361361
12. [ ] Replace pty websocket/control routes with non-Hono Effect HTTP.
362362
13. [ ] Replace tui bridge routes or explicitly isolate them behind a non-Hono compatibility layer.

0 commit comments

Comments
 (0)