gemlings 0.3.0 → 0.3.1

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: 6740ac8c9242e1493c8196521b37a151adf1a753fcea54307e9c4f7c2b59b6d9
4
- data.tar.gz: 923dc72b8683652654b4b0f5514689406585000016b38cbd47af7fce2930a80c
3
+ metadata.gz: fe9ef70286e116937fc896cdc9d23b3ac6ea88b5d071c5055355664784fe9ecc
4
+ data.tar.gz: 724554f2afc3d3d71862673ea44388ab89c70568ad609b4de32a0d4fe3e3d59b
5
5
  SHA512:
6
- metadata.gz: f1b904c2b1406d410974bbf4c36a317a6b5c5d2282a9f2d507d4d32d67454219641e423580db9f48c368735aedf352ccb813bd8e55e18edda59dcf5e54c7b1fd
7
- data.tar.gz: bbf5e3731dca63565e24a7fb4200343956441486cb1474859a34643be22be9716e30cde408eb9bc34fe1b3ea10ae96472bca86c0c6ff829b3e0da5b41d81bc2f
6
+ metadata.gz: 0d2f461b85343d4617626aece17873b5d2d1c60c5cf79303abac0b9276f0764b77cdf21bed385139dfa7fc094f5fe9402ad408cbbae7059ea12507bdefce15b9
7
+ data.tar.gz: f3289f4a29b87a9ab296d47f2a441e0699e5702839d8bdc33111d8efc36c4072417d12d16638efba7d0d32675a5fac1ce56b2f6dc5c0ba18906b2dd04a906c9a
@@ -180,7 +180,7 @@ module Gemlings
180
180
  end
181
181
 
182
182
  def maybe_plan(step_number)
183
- return unless planning_interval
183
+ return unless planning_interval&.positive?
184
184
  if step_number == 1
185
185
  run_planning_step(initial: true)
186
186
  elsif (step_number % planning_interval) == 1
data/lib/gemlings/mcp.rb CHANGED
@@ -109,6 +109,7 @@ module Gemlings
109
109
  transport = MCP::StdioTransport.new(command: command)
110
110
  response = transport.send_request(request: { method: "tools/list", params: {} })
111
111
  tools = response.dig("result", "tools") || []
112
+ return (transport.close; []) if tools.empty?
112
113
  tools.map { |t| MCP::MCPToolWrapper.for(t, transport) }
113
114
  end
114
115
 
@@ -119,6 +120,7 @@ module Gemlings
119
120
  tool_def = tools.find { |t| t["name"] == tool_name }
120
121
 
121
122
  unless tool_def
123
+ transport.close
122
124
  available = tools.map { |t| t["name"] }.join(", ")
123
125
  raise ArgumentError, "Tool #{tool_name.inspect} not found. Available: #{available}"
124
126
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Gemlings
4
- VERSION = "0.3.0"
4
+ VERSION = "0.3.1"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gemlings
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Hasiński