Kit Langton
8a5d19c376
feat(httpapi-exercise): add .viaSdk() to drive scenarios through real SDK
...
The exerciser harness builds requests directly as Request objects, which
means it never exercises the SDK client's auto-injection of
?directory= / ?workspace= on GETs. That's structurally how the entire
#26569 / #26581 family of regressions slipped through — the SDK was
sending requests the typed query schemas didn't accept, but the harness
was sending requests directly.
Add an opt-in `.viaSdk((sdk, ctx) => sdk.X.Y(...))` builder method that
runs the scenario through a real `createOpencodeClient` wired to the
in-process exerciser router. The SDK applies its real request transforms
so route tests catch the SDK-vs-server-shape drift class at write time.
The runner normalizes the SDK's `{data, error, response}` (or thrown
Error with `.cause = {body, status}`) back into the existing `CallResult`
shape so all the existing assertions (`.json()`, `.status()`, `.ok()`,
etc.) continue to work unchanged. Existing `.at(...)` scenarios are
not touched.
Convert two scenarios as proof: `app.agents.via_sdk` and
`command.list.via_sdk` both pass alongside the 139 existing scenarios
(141/141 PASS).
Subsequent PRs will migrate the standalone `httpapi-query-schema-drift`
scenarios into the exerciser using `.viaSdk(...)` and delete that file
as the bug class becomes a structural guarantee inside the harness.
2026-05-09 20:14:46 -04:00
Kit Langton
00c3248295
fix(config): allow active provider model status ( #26592 )
...
Co-authored-by: Developer <temp@example.com >
2026-05-09 18:59:05 -04:00
opencode-agent[bot]
818b56dbd0
chore: generate
2026-05-09 22:47:54 +00:00
Kit Langton
11363170ca
fix(sdk): wrap thrown error bodies in Error
...
SDK throwOnError paths now convert structured response bodies into real Error instances while preserving the original body and status in cause.
2026-05-09 18:46:43 -04:00
Kit Langton
bd1029b19f
test(server): cover HttpApi context inheritance
...
Adds regression coverage for request context inheritance in promptAsync and explicit context provisioning in stream bodies.
2026-05-09 18:46:10 -04:00
Kit Langton
43b51f09d0
fix(httpapi): align runtime query schemas with workspace routing params ( #26581 )
...
Co-authored-by: Developer <temp@example.com >
2026-05-09 16:50:30 -04:00
Kit Langton
d373c562f2
fix(session): accept legacy summary diffs ( #26579 )
...
Co-authored-by: Developer <temp@example.com >
2026-05-09 16:44:24 -04:00
opencode-agent[bot]
5fa5d876fc
chore: generate
2026-05-09 20:31:32 +00:00
Kit Langton
805af011c9
test(session): regression test for #26574 + mirror loosening on Vcs.FileDiff ( #26578 )
...
Co-authored-by: Developer <temp@example.com >
2026-05-09 16:30:31 -04:00
Kit Langton
8602937a37
test(session): cover workspace-routed messages ( #26576 )
2026-05-09 16:19:06 -04:00
Kit Langton
77da433e0a
fix(session): accept routing params in message list ( #26569 )
...
Co-authored-by: Developer <temp@example.com >
2026-05-09 16:02:35 -04:00
Kit Langton
5e49029e70
fix(provider): isolate plugin model mutations ( #26561 )
...
Co-authored-by: Developer <temp@example.com >
2026-05-09 15:47:07 -04:00
Kit Langton
6fea0178eb
fix(server): defer validation error body change
2026-05-09 14:50:45 -04:00
Kit Langton
27fa297a42
fix(server): keep provider lists JSON-safe ( #26550 )
2026-05-09 13:40:46 -04:00
opencode-agent[bot]
d01cb7f013
chore: generate
2026-05-09 13:11:45 +00:00
Kit Langton
28b03595bf
research: delete Hono backend (do not merge) ( #25667 )
2026-05-09 13:10:42 +00:00
Kit Langton
32684e70e6
test(server): expect null body from HTTP API authorize() with no redirect ( #26515 )
2026-05-09 08:50:00 -04:00
Kit Langton
e7cc8259b5
test(server): drop flaky account error-mapping test ( #26475 )
2026-05-09 00:29:31 -04:00
opencode-agent[bot]
a9ccb0804f
chore: generate
2026-05-09 04:22:25 +00:00
Kit Langton
ebe6087e8f
fix(server): return structured validation errors ( #26457 )
2026-05-09 00:21:19 -04:00
Kit Langton
dc978cb889
fix(server): validate permission and question ids ( #26456 )
2026-05-09 00:20:28 -04:00
Kit Langton
8cbc43fbb0
fix(server): include auth challenge on typed 401 ( #26455 )
2026-05-09 00:15:20 -04:00
opencode-agent[bot]
82359c4b1b
chore: generate
2026-05-09 04:06:08 +00:00
Kit Langton
7f3e51453b
test(server): use Layer.mock for partial Account service stub ( #26472 )
2026-05-09 00:05:05 -04:00
Kit Langton
cbdb2d9825
test(server): expand workspace routing fixed-id coverage ( #26458 )
2026-05-09 00:00:18 -04:00
Kit Langton
dcb8ed8eb0
test(server): cover workspace sync fence protocol ( #26441 )
2026-05-08 23:55:47 -04:00
opencode-agent[bot]
cff441909a
chore: generate
2026-05-09 03:45:35 +00:00
Kit Langton
3615d5aab1
fix(server): map Account failures to typed 500 instead of defect ( #26448 )
2026-05-08 23:44:28 -04:00
Kit Langton
4d585464f3
fix(server): include Origin in CORS preflight Vary header ( #26445 )
2026-05-08 23:17:47 -04:00
Kit Langton
357a74714a
fix(test): set OPENCODE_EXPERIMENTAL_WORKSPACES in fence header test ( #26466 )
2026-05-08 23:12:08 -04:00
Kit Langton
ffea6c7974
feat(server): add HTTP API response compression ( #26440 )
2026-05-08 23:06:00 -04:00
Kit Langton
8e9550d90d
fix(server): emit fixed workspace fence headers ( #26443 )
2026-05-08 22:45:54 -04:00
Kit Langton
cc68afb2de
test(server): lock fixed workspace routing context ( #26454 )
2026-05-08 22:35:32 -04:00
Kit Langton
11c33d52a5
test(server): cover REST API project skills ( #26451 )
2026-05-09 02:23:21 +00:00
Kit Langton
9c05d4e2fd
fix(server): serve HttpApi OpenAPI document ( #26438 )
2026-05-08 22:20:50 -04:00
Kit Langton
0745162eab
test(server): harden HttpApi exercise coverage ( #26425 )
2026-05-08 20:50:01 -04:00
Kit Langton
75308ea47d
test(server): add HttpApi auth exercise mode ( #26386 )
2026-05-08 14:05:46 -04:00
Kit Langton
daa3116f4b
refactor(server): split HttpApi exercise harness ( #26385 )
2026-05-08 17:58:14 +00:00
Kit Langton
3052a79b32
refactor(server): clarify HttpApi route auth layers ( #26372 )
2026-05-08 13:06:00 -04:00
Rajvardhan Patil
13b3117ca9
fix(server): require auth for effect root routes ( #26361 )
...
Co-authored-by: Rajvardhan Patil <243567420+RajvardhanPatil07@users.noreply.github.com >
2026-05-08 16:39:11 +00:00
James Long
c818c9dcb6
feat(core): allow external workspace creation ( #26212 )
2026-05-08 11:09:12 -04:00
James Long
3c4b4d5faf
feat(core): copy file changes when warping ( #26190 )
2026-05-07 10:24:17 -04:00
Luke Parker
2dffdfff4a
fix(server): apply cors before legacy auth ( #26092 )
2026-05-07 08:55:09 +10:00
Kit Langton
8555de8189
Type session not-found errors ( #25818 )
2026-05-05 21:33:47 -04:00
Luke Parker
e117397d0f
fix(server): restore web terminal CSP allowances ( #25937 )
2026-05-06 09:32:51 +10:00
Dax
39c88f9afb
Improve v2 session message rendering ( #25634 )
2026-05-05 02:35:21 +00:00
James Long
22a4a9df8b
feat(core): session warping ( #25768 )
2026-05-04 21:28:38 -04:00
Kit Langton
fb07c2070c
fix(server): provide fresh ConfigProvider per HttpApi listener ( #25726 )
2026-05-04 13:06:29 -04:00
Kit Langton
25dc6f09bc
fix(worktree): fork workspace worktree boot ( #25723 )
2026-05-04 12:01:13 -04:00
opencode-agent[bot]
2c819f290f
chore: generate
2026-05-04 13:55:28 +00:00