ask-core 0.11.2 → 0.11.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 602c8d9566b21b6628345ad1d8829ab5d8c2c9ec51fe700fb33b999d50e54ad5
4
- data.tar.gz: 32c5b32ac7fb86f62ba2e6262140e11fa595b36c775cdc44c48fee966848aac3
3
+ metadata.gz: fe6fd73be561e63544265ffe4065905c432680e925c9df5d2e8b5e5f3e2b7896
4
+ data.tar.gz: 59389ca6fb4726cf9d921eff7cc35598c95c619154f97c7cfb85a844e8e9cc02
5
5
  SHA512:
6
- metadata.gz: 609ef161b1cb572414d883cfdb3bb570235321689cef7bb71101a1d8f8804f906ee4e38d9eefc0d584858b80956730660684ed35ebe7e22b0c1950aad7603640
7
- data.tar.gz: 1997ca58624d121426d331465203e3f7a128782ad4c620e8d808374722614e87f5cce92bb2e4af412ed9b7c9f786063d9fcc1cce167f550e457005c2022cf32a
6
+ metadata.gz: b944d00f3194ab931e56e3d39ace11c6bb0b058c288dd147574c68a1369a10627d1982d75a4669d5a1eed9d225b2930082684e68086f54b10947503cfb90ae80
7
+ data.tar.gz: b83e78248a0a843718850c5333f339dae78b0c63881184da0902847fd360454fb58cebb1b6269dc2d94869968820d937a1e570473f3e5de96811f22221603ac8
data/lib/ask/tool_def.rb CHANGED
@@ -16,6 +16,21 @@ module Ask
16
16
  # )
17
17
  #
18
18
  class ToolDef
19
+ # What a tool with no parameters advertises.
20
+ #
21
+ # Present rather than nil, because a nil schema is not "no arguments" to
22
+ # a strict OpenAI-compatible gateway — it is an invalid function. One
23
+ # (commandcode) answers the whole request with "Invalid input: expected
24
+ # record, received null" and names only `tools.0.function.parameters`,
25
+ # so a single parameterless tool breaks a session that never calls it.
26
+ # An empty object schema says the true thing.
27
+ EMPTY_SCHEMA = {
28
+ "type" => "object",
29
+ "properties" => {},
30
+ "required" => [],
31
+ "additionalProperties" => false
32
+ }.freeze
33
+
19
34
  class << self
20
35
  # Build a ToolDef from an object that responds to #name, #description,
21
36
  # #params_schema, and #provider_params.
@@ -26,7 +41,7 @@ module Ask
26
41
  new(
27
42
  name: tool.name,
28
43
  description: tool.description,
29
- parameters: schema,
44
+ parameters: schema.nil? || schema.empty? ? EMPTY_SCHEMA : schema,
30
45
  provider_params: tool.provider_params
31
46
  )
32
47
  end
data/lib/ask/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Ask
4
- VERSION = "0.11.2"
4
+ VERSION = "0.11.4"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ask-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.2
4
+ version: 0.11.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kaka Ruto
@@ -9,6 +9,20 @@ bindir: bin
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: base64
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '0.2'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '0.2'
12
26
  - !ruby/object:Gem::Dependency
13
27
  name: minitest
14
28
  requirement: !ruby/object:Gem::Requirement
@@ -100,7 +114,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
100
114
  - !ruby/object:Gem::Version
101
115
  version: '0'
102
116
  requirements: []
103
- rubygems_version: 4.0.3
117
+ rubygems_version: 4.0.18
104
118
  specification_version: 4
105
119
  summary: Foundation gem for the ask-rb ecosystem
106
120
  test_files: []