Developer
b3c7d34dfb
fix(httpapi): eliminate drift between runtime query schemas and OpenAPI params
...
Context: PR #26569 narrowly fixed a crash where the generated SDK sent
GET /session/{sessionID}/message?limit=80&directory=... because public.ts
manually injected InstanceQueryParameters (directory/workspace) into OpenAPI,
but the runtime MessagesQuery schema omitted directory, causing empty 400.
This change eliminates the drift by:
1. Creating a shared schema helper in query.ts that adds directory/workspace
fields to all instance route query schemas.
2. Updating all instance route query schemas to use the helper:
- session.ts: MessagesQuery, ListQuery
- file.ts: FileQuery, FindTextQuery, FindFileQuery, FindSymbolQuery
- experimental.ts: ToolListQuery, SessionListQuery
- control.ts: LogQuery (already correct, now uses helper)
- instance.ts, v2/session.ts, v2/message.ts
3. Adding reproducer tests in httpapi-query-schema-drift.test.ts that verify
the runtime accepts directory/workspace params on affected routes.
The OpenAPI spec generation in public.ts still manually injects params for
backward compatibility with the legacy SDK format, but now the runtime
schemas match, eliminating the validation errors.
Verification:
- bun typecheck passes
- 4 drift reproducer tests pass
- 24 httpapi tests pass across session, file, experimental, workspace-routing
2026-05-09 16:12:02 -04:00
Developer
47d6fc7382
fix: preserve full OpenCode provider cost shape in auth.loader
...
The normalizeProviderModelCosts function was only setting { input: 0, output: 0 }
which doesn't match the full OpenCode provider cost shape that includes cache fields.
This fix:
- Preserves existing cost fields (input, output, cache.read, cache.write) if valid
- Adds missing cache: { read: 0, write: 0 } structure when not present
- Validates provider and model objects before modification to avoid poisoning
invalid provider metadata
- Updates ProviderModel type to include optional cache field
Fixes provider cost normalization to maintain cache field compatibility.
2026-05-09 15:28:13 -04:00
Kit Langton
6fea0178eb
fix(server): defer validation error body change
2026-05-09 14:50:45 -04:00
Kit Langton
ebe9dcf27e
fix(server): return validation error bodies
2026-05-09 14:39:25 -04:00
Kit Langton and GitHub
57efec4429
fix(storage): default workspace time migration ( #26556 )
2026-05-09 14:18:55 -04:00
opencode
e22144806f
sync release versions for v1.14.43
2026-05-09 18:06:16 +00:00
Kit Langton and GitHub
27fa297a42
fix(server): keep provider lists JSON-safe ( #26550 )
2026-05-09 13:40:46 -04:00
Aiden Cline and GitHub
b1cd25de3d
ignore: fix typerrs on dev ( #26544 )
2026-05-09 12:08:00 -05:00
opencode
780bbb0f3b
sync release versions for v1.14.42
2026-05-09 16:54:43 +00:00
Steffen Deusch and GitHub
817cb076a8
fix(acp): include tool image attachments in updates ( #25128 )
2026-05-09 11:45:44 -05:00
opencode-agent[bot]
347526e9fd
chore: generate
2026-05-09 16:32:52 +00:00
Polo123456789 and GitHub
092bc674a5
fix(sidebar): fix logic and missleading message #26469 ( #26470 )
2026-05-09 11:31:46 -05:00
Kit Langton and GitHub
b24a4e897e
chore(server): clean up post-Hono-deletion scar tissue ( #26542 )
2026-05-09 12:30:18 -04:00
opencode-agent[bot]
3afa622eab
chore: update nix node_modules hashes
2026-05-09 13:22:38 +00:00
opencode-agent[bot]
d01cb7f013
chore: generate
2026-05-09 13:11:45 +00:00
Kit Langton and GitHub
28b03595bf
research: delete Hono backend (do not merge) ( #25667 )
2026-05-09 13:10:42 +00:00
Kit Langton and GitHub
32684e70e6
test(server): expect null body from HTTP API authorize() with no redirect ( #26515 )
2026-05-09 08:50:00 -04:00
opencode-agent[bot]
b2baddcd37
chore: generate
2026-05-09 04:31:07 +00:00
Kit Langton and GitHub
dbd48d423d
fix(server): match Hono wire format for authorize undefined and share errors ( #26474 )
2026-05-09 00:30:00 -04:00
Kit Langton and GitHub
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 and GitHub
ebe6087e8f
fix(server): return structured validation errors ( #26457 )
2026-05-09 00:21:19 -04:00
Kit Langton and GitHub
dc978cb889
fix(server): validate permission and question ids ( #26456 )
2026-05-09 00:20:28 -04:00
Kit Langton and GitHub
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 and GitHub
7f3e51453b
test(server): use Layer.mock for partial Account service stub ( #26472 )
2026-05-09 00:05:05 -04:00
Kit Langton and GitHub
cbdb2d9825
test(server): expand workspace routing fixed-id coverage ( #26458 )
2026-05-09 00:00:18 -04:00
Kit Langton and GitHub
96bde05f6e
docs(server): explain why HTTP API PTY handler has no early-frame buffer ( #26464 )
2026-05-08 23:58:33 -04:00
Kit Langton and GitHub
dcb8ed8eb0
test(server): cover workspace sync fence protocol ( #26441 )
2026-05-08 23:55:47 -04:00
Kit Langton and GitHub
aab82cc1a7
test(project): rescue non-Hono InstanceBootstrap boundary tests ( #26453 )
2026-05-08 23:53:42 -04:00
Kit Langton and GitHub
cd1d1e81a6
test(server): run httpapi exercise effect mode in test:httpapi ( #26452 )
2026-05-08 23:48:29 -04:00
opencode-agent[bot]
cff441909a
chore: generate
2026-05-09 03:45:35 +00:00
Kit Langton and GitHub
3615d5aab1
fix(server): map Account failures to typed 500 instead of defect ( #26448 )
2026-05-08 23:44:28 -04:00
opencode-agent[bot]
11d9e82eaf
chore: generate
2026-05-09 03:42:23 +00:00
Kit Langton and GitHub
eadda11ec9
refactor(server): use JSON response for OpenAPI doc route ( #26447 )
2026-05-08 23:41:20 -04:00
Kit Langton and GitHub
f73a56c223
fix(server): log instance disposal failures from HTTP API lifecycle ( #26446 )
2026-05-08 23:40:06 -04:00
opencode-agent[bot]
c0acf5c43f
chore: generate
2026-05-09 03:18:57 +00:00
Kit Langton and GitHub
4d585464f3
fix(server): include Origin in CORS preflight Vary header ( #26445 )
2026-05-08 23:17:47 -04:00
f0cb17a812
fix(tui): sort session picker by full updated timestamp ( #24725 )
...
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com >
2026-05-08 22:17:13 -05:00
Kit Langton and GitHub
357a74714a
fix(test): set OPENCODE_EXPERIMENTAL_WORKSPACES in fence header test ( #26466 )
2026-05-08 23:12:08 -04:00
Kit Langton and GitHub
ffea6c7974
feat(server): add HTTP API response compression ( #26440 )
2026-05-08 23:06:00 -04:00
Kit Langton and GitHub
8e9550d90d
fix(server): emit fixed workspace fence headers ( #26443 )
2026-05-08 22:45:54 -04:00
James Long and GitHub
9b7b6cb30f
feat(core): be smarter about generating a worktree name ( #26368 )
2026-05-08 22:45:44 -04:00
Kit Langton and GitHub
cc68afb2de
test(server): lock fixed workspace routing context ( #26454 )
2026-05-08 22:35:32 -04:00
Kit Langton and GitHub
11c33d52a5
test(server): cover REST API project skills ( #26451 )
2026-05-09 02:23:21 +00:00
opencode-agent[bot]
2a487ea990
chore: generate
2026-05-09 02:21:54 +00:00
Kit Langton and GitHub
9c05d4e2fd
fix(server): serve HttpApi OpenAPI document ( #26438 )
2026-05-08 22:20:50 -04:00
Kit Langton and GitHub
0745162eab
test(server): harden HttpApi exercise coverage ( #26425 )
2026-05-08 20:50:01 -04:00
Kit Langton and GitHub
21d055be19
fix(workspace): claim detached sessions to source project ( #26413 )
2026-05-08 20:25:53 -04:00
Luke Parker and GitHub
d19f7bc77c
fix(web): normalize shell output carriage returns ( #26426 )
2026-05-09 10:24:57 +10:00