From 8fbb222c2d1e60626c8e322d8227748bce04232f Mon Sep 17 00:00:00 2001 From: Simon Iribarren Date: Thu, 18 Jun 2026 10:23:31 +0200 Subject: [PATCH] QVAC-19908 chore: release sdk + bare-sdk 0.13.4 Fix-only patch release: recover malformed Qwen hybrid tool-call frames (#2677). Bumps @qvac/sdk and @qvac/bare-sdk to 0.13.4 and adds the 0.13.4 changelog. --- packages/bare-sdk/package.json | 2 +- packages/sdk/CHANGELOG.md | 18 ++++++++++++++++++ packages/sdk/changelog/0.13.4/CHANGELOG.md | 8 ++++++++ packages/sdk/changelog/0.13.4/CHANGELOG_LLM.md | 17 +++++++++++++++++ packages/sdk/package.json | 2 +- 5 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 packages/sdk/changelog/0.13.4/CHANGELOG.md create mode 100644 packages/sdk/changelog/0.13.4/CHANGELOG_LLM.md diff --git a/packages/bare-sdk/package.json b/packages/bare-sdk/package.json index 70c9704398..109acaf8c6 100644 --- a/packages/bare-sdk/package.json +++ b/packages/bare-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@qvac/bare-sdk", - "version": "0.13.3", + "version": "0.13.4", "license": "Apache-2.0", "description": "Bare-targeted slim assembly of the QVAC SDK. Consumers install only the addon packages they need and register plugins explicitly. No addon dependencies pulled in by default.", "repository": { diff --git a/packages/sdk/CHANGELOG.md b/packages/sdk/CHANGELOG.md index 4f80c3cea6..08586d047e 100644 --- a/packages/sdk/CHANGELOG.md +++ b/packages/sdk/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## [0.13.4] + +📦 **NPM:** https://www.npmjs.com/package/@qvac/sdk/v/0.13.4 + +A patch release that hardens tool-call parsing for Qwen models used in agentic +workflows. + +## Bug Fixes + +### Recover malformed Qwen tool-call frames + +Qwen3.5/3.6 can intermittently emit a malformed tool-call frame that fuses its +XML and JSON tool templates, embedding the `function=` token as a bare +string key inside an otherwise JSON object. Previously the parser rejected that +frame as invalid JSON, so no structured tool call was produced and callers saw +the raw markup as assistant text. The parser now recognizes and repairs this +specific shape, so the tool call is recovered and dispatched correctly. + ## [0.13.3] 📦 **NPM:** https://www.npmjs.com/package/@qvac/sdk/v/0.13.3 diff --git a/packages/sdk/changelog/0.13.4/CHANGELOG.md b/packages/sdk/changelog/0.13.4/CHANGELOG.md new file mode 100644 index 0000000000..3cf55dfe17 --- /dev/null +++ b/packages/sdk/changelog/0.13.4/CHANGELOG.md @@ -0,0 +1,8 @@ +# Changelog v0.13.4 + +Release Date: 2026-06-18 + +## 🐞 Fixes + +- Recover Qwen hybrid tool-call frames. (see PR [#2677](https://github.com/tetherto/qvac/pull/2677)) + diff --git a/packages/sdk/changelog/0.13.4/CHANGELOG_LLM.md b/packages/sdk/changelog/0.13.4/CHANGELOG_LLM.md new file mode 100644 index 0000000000..527463bdc9 --- /dev/null +++ b/packages/sdk/changelog/0.13.4/CHANGELOG_LLM.md @@ -0,0 +1,17 @@ +# QVAC SDK v0.13.4 Release Notes + +📦 **NPM:** https://www.npmjs.com/package/@qvac/sdk/v/0.13.4 + +A patch release that hardens tool-call parsing for Qwen models used in agentic +workflows. + +## Bug Fixes + +### Recover malformed Qwen tool-call frames + +Qwen3.5/3.6 can intermittently emit a malformed tool-call frame that fuses its +XML and JSON tool templates, embedding the `function=` token as a bare +string key inside an otherwise JSON object. Previously the parser rejected that +frame as invalid JSON, so no structured tool call was produced and callers saw +the raw markup as assistant text. The parser now recognizes and repairs this +specific shape, so the tool call is recovered and dispatched correctly. diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 457cf1291b..b4eaff3aba 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@qvac/sdk", - "version": "0.13.3", + "version": "0.13.4", "license": "Apache-2.0", "repository": { "type": "git",