v1.0.15
Feature: typed structured outputs for all six SDKs
Provide a JSON Schema, or use an idiomatic typed helper, to have the model return typed, validated output instead of free-form text. (#2590)
const answerSchema = z.object({ value: z.number().int() });
const answer = await session.sendAndWait("What is 19 + 23?", answerSchema);answer = await session.send_and_wait_typed("What is 19 + 23?", Answer)Go, Java, C#, and Rust get the same capability via copilot.SendAndWait[Answer], session.sendAndWait(prompt, Answer.class), SendAndWaitAsync<Answer>, and session.send_and_wait_typed(prompt).
Feature: structured JSON-RPC error data in all SDKs
The raw JSON data payload of a JSON-RPC error response can now be inspected in every SDK, so apps can branch on machine-readable error details. (#2664, #2732)
if let Some(data) = error.rpc_data() { println!("{data}"); }catch (JsonRpcException e) { JsonNode data = e.getData(); }Feature: experimental connection-global installation confirmation
All six SDKs expose a connection-global handler for the runtime's installations.confirm callback, letting apps present a human review before an MCP or Skill installation proceeds. The handler must return an explicit confirm/decline/cancel decision.
const client = new CopilotClient({
installationConfirmationHandler: async (request, context) => promptUser(request),
});Java, Python, Rust, C#, and Go get equivalent options (setInstallationConfirmationHandler, installation_confirmation_handler, with_installation_confirmation_handler, InstallationConfirmationHandler). Java also now exposes typed unions for MCP installation review payloads.
Other changes
- feature: [Java] add native runtime support for
darwin-x64(#2701) - feature: [Java] add native runtime support for
linuxmusl-x64(Alpine) (#2715) - feature: [Java] experimental
FusionCriticgenerated diagnostics type - improvement: [Node/Python/Go/.NET/Java] coalesce intercepted HTTP response chunks for better tool-call streaming throughput (#2734)
- improvement: [Rust] coalesce intercepted HTTP response chunks (#2717)
- improvement: [Rust] avoid rebuilding and copying JSON payloads (#2711)
- improvement: [Rust] cut retained runtime-install memory by ~99% (#2676)
- improvement: [.NET] avoid redundant JSON event materialization and reduce allocations (#2733)
- improvement: [Node] pin production dependencies to exact versions with a publish-age policy (#2700)
- bugfix: preserve image replay compatibility across CLI image limits (#2670)
New contributors
@mohamedmansourmade their first contribution in #2676@roblourensmade their first contribution in #2700
Warning
Firewall blocked 1 domain
The following domain was blocked by the firewall during workflow execution:
github.com
To allow these domains, add them to the network.allowed list in your workflow frontmatter:
network:
allowed:
- defaults
- "github.com"See Network Configuration for more information.
Generated by Release Notes Generator · copilot · auto · 17.1 AIC · ⌖ 6.46 AIC · ⊞ 9K