launchdarkly-server-sdk-ai 0.2.2 → 0.3.0
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 +4 -4
- data/CHANGELOG.md +18 -0
- data/PROVENANCE.md +1 -1
- data/README.md +1 -1
- data/lib/server/ai/client.rb +24 -15
- data/lib/server/ai/version.rb +1 -1
- metadata +7 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 841cd2b74f8a6e89125e283d2c75442ccb58d64373f04439f882b9d968803818
|
|
4
|
+
data.tar.gz: 85a82738b8c931e8a9dc466a9cc66ec077e20a2e58fb112e01cd286b1bf551df
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1fb7745e91ce1fb85b965c72f033d3c6ea8978f47d30aa691502251bba83238fbe279d5b67cc3a4e00b8669f3509bf61591bba7fa865f3147db2afc9cb5d3361
|
|
7
|
+
data.tar.gz: dde93cdaac0a5cf24e6c684d9b1769f9c5e6092e1140bf6f8125e6bc8a2eb0c485cc67f460b195366473f8ca2cda6ba41618d57e2c8e08e73798613c590901fa
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.3.0](https://github.com/launchdarkly/ruby-server-sdk-ai/compare/0.2.2...0.3.0) (2026-03-05)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### ⚠ BREAKING CHANGES
|
|
7
|
+
|
|
8
|
+
* Use kwargs for completion_config and config methods
|
|
9
|
+
* Return disabled config if no defaultValue is provided ([#23](https://github.com/launchdarkly/ruby-server-sdk-ai/issues/23))
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* Drop support for Ruby 3.0 which is EOL. ([fe3fdf8](https://github.com/launchdarkly/ruby-server-sdk-ai/commit/fe3fdf8c022dd4e53e43e9311d76e3b5a098af75))
|
|
14
|
+
* Use kwargs for completion_config and config methods ([fe3fdf8](https://github.com/launchdarkly/ruby-server-sdk-ai/commit/fe3fdf8c022dd4e53e43e9311d76e3b5a098af75))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* Return disabled config if no defaultValue is provided ([#23](https://github.com/launchdarkly/ruby-server-sdk-ai/issues/23)) ([fe3fdf8](https://github.com/launchdarkly/ruby-server-sdk-ai/commit/fe3fdf8c022dd4e53e43e9311d76e3b5a098af75))
|
|
20
|
+
|
|
3
21
|
## [0.2.2](https://github.com/launchdarkly/ruby-server-sdk-ai/compare/0.2.1...0.2.2) (2026-02-25)
|
|
4
22
|
|
|
5
23
|
|
data/PROVENANCE.md
CHANGED
data/README.md
CHANGED
|
@@ -27,7 +27,7 @@ LaunchDarkly overview
|
|
|
27
27
|
Supported Ruby versions
|
|
28
28
|
-----------------------
|
|
29
29
|
|
|
30
|
-
This version of the library has a minimum Ruby version of 3.
|
|
30
|
+
This version of the library has a minimum Ruby version of 3.1.0, or 9.4.0 for JRuby.
|
|
31
31
|
|
|
32
32
|
Getting started
|
|
33
33
|
-----------
|
data/lib/server/ai/client.rb
CHANGED
|
@@ -113,6 +113,15 @@ module LaunchDarkly
|
|
|
113
113
|
@provider = provider
|
|
114
114
|
end
|
|
115
115
|
|
|
116
|
+
#
|
|
117
|
+
# Returns a new disabled AIConfig instance.
|
|
118
|
+
#
|
|
119
|
+
# @return [AIConfig] a new disabled config
|
|
120
|
+
#
|
|
121
|
+
def self.disabled
|
|
122
|
+
new(enabled: false)
|
|
123
|
+
end
|
|
124
|
+
|
|
116
125
|
def to_h
|
|
117
126
|
{
|
|
118
127
|
_ldMeta: {
|
|
@@ -161,31 +170,31 @@ module LaunchDarkly
|
|
|
161
170
|
#
|
|
162
171
|
# Retrieves the AIConfig
|
|
163
172
|
#
|
|
164
|
-
# @param
|
|
173
|
+
# @param key [String] The key of the configuration flag
|
|
165
174
|
# @param context [LDContext] The context used when evaluating the flag
|
|
166
|
-
# @param
|
|
175
|
+
# @param default [AIConfig] The default value to use if the flag is not found
|
|
167
176
|
# @param variables [Hash] Optional variables for rendering messages
|
|
168
177
|
# @return [AIConfig] An AIConfig instance containing the configuration data
|
|
169
178
|
#
|
|
170
|
-
def completion_config(
|
|
171
|
-
@ld_client.track(TRACK_USAGE_COMPLETION_CONFIG, context,
|
|
179
|
+
def completion_config(key:, context:, default: nil, variables: nil)
|
|
180
|
+
@ld_client.track(TRACK_USAGE_COMPLETION_CONFIG, context, key, 1)
|
|
172
181
|
|
|
173
|
-
_completion_config(
|
|
182
|
+
_completion_config(key:, context:, default: default || AIConfig.disabled, variables:)
|
|
174
183
|
end
|
|
175
184
|
|
|
176
185
|
# @deprecated Use {#completion_config} instead.
|
|
177
|
-
def config(
|
|
186
|
+
def config(key:, context:, default: nil, variables: nil)
|
|
178
187
|
warn '[DEPRECATION] `config` is deprecated. Use `completion_config` instead.'
|
|
179
|
-
completion_config(
|
|
188
|
+
completion_config(key:, context:, default:, variables:)
|
|
180
189
|
end
|
|
181
190
|
|
|
182
191
|
private
|
|
183
192
|
|
|
184
|
-
def _completion_config(
|
|
193
|
+
def _completion_config(key:, context:, default:, variables: nil)
|
|
185
194
|
variation = @ld_client.variation(
|
|
186
|
-
|
|
195
|
+
key,
|
|
187
196
|
context,
|
|
188
|
-
|
|
197
|
+
default.respond_to?(:to_h) ? default.to_h : nil
|
|
189
198
|
)
|
|
190
199
|
|
|
191
200
|
all_variables = variables ? variables.dup : {}
|
|
@@ -220,18 +229,18 @@ module LaunchDarkly
|
|
|
220
229
|
tracker = LaunchDarkly::Server::AI::AIConfigTracker.new(
|
|
221
230
|
ld_client: @ld_client,
|
|
222
231
|
variation_key: variation.dig(:_ldMeta, :variationKey) || '',
|
|
223
|
-
config_key:
|
|
232
|
+
config_key: key,
|
|
224
233
|
version: variation.dig(:_ldMeta, :version) || 1,
|
|
225
234
|
model_name: model&.name || '',
|
|
226
235
|
provider_name: provider_config&.name || '',
|
|
227
|
-
context:
|
|
236
|
+
context:
|
|
228
237
|
)
|
|
229
238
|
|
|
230
239
|
AIConfig.new(
|
|
231
240
|
enabled: variation.dig(:_ldMeta, :enabled) || false,
|
|
232
|
-
messages
|
|
233
|
-
tracker
|
|
234
|
-
model
|
|
241
|
+
messages:,
|
|
242
|
+
tracker:,
|
|
243
|
+
model:,
|
|
235
244
|
provider: provider_config
|
|
236
245
|
)
|
|
237
246
|
end
|
data/lib/server/ai/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: launchdarkly-server-sdk-ai
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- LaunchDarkly
|
|
8
|
+
autorequire:
|
|
8
9
|
bindir: bin
|
|
9
10
|
cert_chain: []
|
|
10
|
-
date:
|
|
11
|
+
date: 2026-03-05 00:00:00.000000000 Z
|
|
11
12
|
dependencies:
|
|
12
13
|
- !ruby/object:Gem::Dependency
|
|
13
14
|
name: launchdarkly-server-sdk
|
|
@@ -162,6 +163,7 @@ licenses:
|
|
|
162
163
|
metadata:
|
|
163
164
|
source_code_uri: https://github.com/launchdarkly/ruby-server-sdk-ai
|
|
164
165
|
changelog_uri: https://github.com/launchdarkly/ruby-server-sdk-ai/blob/main/CHANGELOG.md
|
|
166
|
+
post_install_message:
|
|
165
167
|
rdoc_options: []
|
|
166
168
|
require_paths:
|
|
167
169
|
- lib
|
|
@@ -169,14 +171,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
169
171
|
requirements:
|
|
170
172
|
- - ">="
|
|
171
173
|
- !ruby/object:Gem::Version
|
|
172
|
-
version: 3.
|
|
174
|
+
version: 3.1.0
|
|
173
175
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
174
176
|
requirements:
|
|
175
177
|
- - ">="
|
|
176
178
|
- !ruby/object:Gem::Version
|
|
177
179
|
version: '0'
|
|
178
180
|
requirements: []
|
|
179
|
-
rubygems_version: 3.
|
|
181
|
+
rubygems_version: 3.3.27
|
|
182
|
+
signing_key:
|
|
180
183
|
specification_version: 4
|
|
181
184
|
summary: LaunchDarkly AI SDK for Ruby
|
|
182
185
|
test_files: []
|