You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adapt hand-written SDK code to CLI 1.0.76-0 wire changes
CI was red across all six SDKs after the @github/copilot bump. All failures
were build/typecheck breakages from the regenerated wire types.
1. New `sessionFs.sqliteTransaction` RPC
The CLI added `sessionFs.sqliteTransaction` to the SessionFs client handler
interface, so every hand-written provider adapter stopped satisfying it
(TS2741 / Go interface mismatch / ty invalid-return-type / CS0535). Rust
dispatches by method name so it still compiled, but silently had no handler.
Added a required `transaction` member to the SQLite provider interface in
each language plus the adapter plumbing:
- nodejs: `SessionFsSqliteStatement`, `SessionFsSqliteTransactionFailure`,
`SessionFsSqliteProvider.transaction`, adapter `sqliteTransaction`
- go: `SessionFSSqliteProvider.SqliteTransaction`,
`SessionFSSqliteTransactionFailure`
- python: `SessionFsSqliteProvider.sqlite_transaction`,
`SessionFsSqliteTransactionFailure`
- dotnet: `ISessionFsSqliteProvider.TransactionAsync`,
`SessionFsSqliteStatement`, `SessionFsSqliteTransactionException`
- rust: `SessionFsSqliteProvider::sqlite_transaction`,
`SessionFsSqliteTransactionError`, dispatch arm
Provider errors and "sqlite not supported" both surface as a *result-level*
classified error (busyOrLocked / fatal / postCommitAmbiguous) rather than a
transport error, since the runtime uses the class for retry decisions.
In-repo test providers were updated with real BEGIN IMMEDIATE / COMMIT /
ROLLBACK implementations.
2. Rust codegen bug for primitive RPC results
`session.cancelAllBackgroundAgents` has an inline `{"type":"integer"}`
result. `getResultTypeName()` named it `SessionCancelAllBackgroundAgentsResult`,
but the type-emitting loops in scripts/codegen/rust.ts only handled
enum/array/map/object schemas, so no alias was emitted (E0425). Added
`rustScalarType` / `emitRustScalarAlias` and regenerated.
3. Java records gained components
- `SessionOptionsUpdateParams`: `shell`, `eventsLogIncludesSubagents`
- `SessionHistoryTruncateResult`: `checkpointCleanupFailed`,
`checkpointCleanupError`
- `AssistantMessageEventData`: `rte`
Fixed the positional constructor call sites in CopilotClient and two tests.
4. Collateral wire changes
- `permissions.resetSessionApprovals` now takes a params object (Go + Rust
e2e call sites)
- `UIExitPlanModeResponse` gained `defer_implementation` (Rust struct literal)
Generated by Copilot
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: e615d062-bcb7-431e-aa9c-d3e47405723a
0 commit comments