zuno 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/lib/zuno/version.rb +1 -1
  4. data/lib/zuno.rb +11 -1
  5. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cf9be3e305d36fb21db7c92926787237b8db4322a993d3e8c8a38448c439d7b4
4
- data.tar.gz: b004707c8eb242a35c631defafd13a13f0bf3533f9959e4b8ec2c62829097337
3
+ metadata.gz: 3e675bc01e1dd129fc934977e8dc4f9b339e68138001e752745d5cfa047f5f52
4
+ data.tar.gz: ce34957f81e60c54e092958e912aec67cc22463e8e288f8b1cf1926aec3a5357
5
5
  SHA512:
6
- metadata.gz: 4153961f2ece3493d232af7f742c40be7fa09adbf76a82fb2722923630033e778f846c7489582f1e4bc06afafdc40663dcd237c4f70f6af0a4004da6dad5b09b
7
- data.tar.gz: 486f38c407011327c5a9c336341bcc742233cfda7112b8596f9f5050565791d7ab24a36777c6061fe14dbfc65126e310c9ad69f372423b221726533ab8c37fa9
6
+ metadata.gz: b2a15a7d459741e5390436aa1c6d52cd2d4eb2181fb28192df141a524546857983daca479ac0a42b4ff649c07b56e2fc590dee8964d9c7cbb660b98e74053511
7
+ data.tar.gz: 65af2937a76208ab478df9c05baa9a716b763ecffe2751ed0f4a6aece5b3dce0a2e0c9e260636f774d0305612cbb7f28626e9073c1c4989a004fe2a01a66e378
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.1.2](https://github.com/dqnamo/zuno/compare/v1.1.1...v1.1.2) (2026-04-06)
4
+
5
+ ### Bug Fixes
6
+
7
+ * preserve structured assistant content for tool-call turns so provider-specific metadata survives loop history replay
8
+
9
+ ## [1.1.1](https://github.com/dqnamo/zuno/compare/v1.1.0...v1.1.1) (2026-04-06)
10
+
11
+ ### Bug Fixes
12
+
13
+ * disable parallel tool calls by default for Gemini models routed through Vercel AI Gateway so function responses stay provider-compatible
14
+
3
15
  ## [1.1.0](https://github.com/dqnamo/zuno/compare/v1.0.2...v1.1.0) (2026-04-04)
4
16
 
5
17
  ### Features
data/lib/zuno/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Zuno
4
- VERSION = "1.1.0"
4
+ VERSION = "1.1.2"
5
5
  end
data/lib/zuno.rb CHANGED
@@ -1173,12 +1173,22 @@ module Zuno
1173
1173
  def build_assistant_tool_call_message(message:, tool_calls:)
1174
1174
  {
1175
1175
  "role" => "assistant",
1176
- "content" => extract_message_text(message),
1176
+ "content" => normalize_message_content_for_history(message["content"]),
1177
1177
  "tool_calls" => tool_calls
1178
1178
  }
1179
1179
  end
1180
1180
  private_class_method :build_assistant_tool_call_message
1181
1181
 
1182
+ def normalize_message_content_for_history(content)
1183
+ case content
1184
+ when Array, Hash
1185
+ deep_stringify(content)
1186
+ else
1187
+ content
1188
+ end
1189
+ end
1190
+ private_class_method :normalize_message_content_for_history
1191
+
1182
1192
  def execute_tool_call(tool_call:, tools:, tool_call_id: nil, arguments: nil)
1183
1193
  tool_name = tool_call.dig("function", "name").to_s
1184
1194
  tool_call_id = normalize_tool_call_id(tool_call_id || tool_call["id"])
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zuno
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hyperaide
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-04-05 00:00:00.000000000 Z
11
+ date: 2026-04-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -85,7 +85,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
85
85
  - !ruby/object:Gem::Version
86
86
  version: '0'
87
87
  requirements: []
88
- rubygems_version: 3.5.22
88
+ rubygems_version: 3.5.23
89
89
  signing_key:
90
90
  specification_version: 4
91
91
  summary: Ruby SDK with provider/model abstraction, single-shot generation, loops,