fix(gateway): declare cwd_explicit on the session.create contract

The desktop ships cwd_explicit provenance with session.create (#52589),
but the wire contract (extra=forbid) rejected the unknown key, so every
remote-mode create failed with 'out of sync (different versions)' and the
composer never accepted the draft (Desktop core E2E remote-topology).
Local-backend lanes never sent it (a bare new chat is detached, no cwd).

Regenerate the shared contract TS + OpenRPC from the updated registry.
This commit is contained in:
Hermes Agent
2026-09-25 19:30:24 -05:00
committed by brooklyn!
parent 02b282a5d4
commit 66bc259712
3 changed files with 16 additions and 0 deletions

View File

@@ -2762,6 +2762,7 @@ export interface SessionCreateParams {
cols?: number | null
source?: string | null
cwd?: string | null
cwd_explicit?: boolean | null
messages?: SeedMessage[] | null
parent_session_id?: string | null
title?: string | null

View File

@@ -28659,6 +28659,18 @@
"default": null,
"title": "Cwd"
},
"cwd_explicit": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Cwd Explicit"
},
"messages": {
"anyOf": [
{

View File

@@ -119,6 +119,9 @@ class SessionCreateParams(ProfileParams):
cols: int | None = None
source: str | None = None
cwd: str | None = None
# #52589: provenance for ``cwd`` — true only for a deliberate workspace pick;
# an inherited app-global workspace must yield to a named profile's terminal.cwd.
cwd_explicit: bool | None = None
messages: list[SeedMessage] | None = None
parent_session_id: str | None = None
title: str | None = None