rosett-ai 1.5.10 → 1.5.12
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 +21 -0
- data/lib/rosett_ai/mcp/tools/behaviour_display_tool.rb +2 -2
- data/lib/rosett_ai/mcp/tools/behaviour_list_tool.rb +1 -1
- data/lib/rosett_ai/mcp/tools/behaviour_show_tool.rb +1 -1
- data/lib/rosett_ai/thor/tasks/build.rb +2 -2
- data/lib/rosett_ai/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: cb0358498de4f1123fd29a3ae3e728712340a70772a5469a31d25048a4525aca
|
|
4
|
+
data.tar.gz: bbc11a0a29c5d4b8b14fe3c34e9d28ae93c1046b1b6fc6f1758f09e4c8d21684
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bbfc6704a022cbc1077b0c394282abb6ed055aea1de6810d7bfc56b915c2749831ba9484b2325aae150601bd8cf8c01db2b84e17856e2a71c928184b06121436
|
|
7
|
+
data.tar.gz: 8a143b9cb92ee1e6dad0622cd0da6275e806589e6ec10fb171111af98a0e21882a24e4f952652e0b7b40aa079c69cda8b57f07cd7bfc2b1d5949030b1bb5021b
|
data/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,27 @@ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [1.5.12] - 2026-07-15
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- **`rai_behaviour_list` / `rai_behaviour_show` / `rai_behaviour_display` MCP tools** — all three
|
|
14
|
+
were resolving the behaviour directory via `RosettAi.root.join('conf', 'behaviour')` (the gem
|
|
15
|
+
install directory) instead of `RosettAi.paths.rai_conf_dir.join('behaviour')` (the user XDG
|
|
16
|
+
config path `~/.config/rosett-ai/conf/behaviour/`). This caused the tools to always return
|
|
17
|
+
empty results.
|
|
18
|
+
|
|
19
|
+
## [1.5.11] - 2026-07-15
|
|
20
|
+
|
|
21
|
+
### Fixed
|
|
22
|
+
|
|
23
|
+
- **D-Bus rate-limiter thread-safety specs** — added `Process.clock_gettime` stub to the
|
|
24
|
+
`describe 'thread safety'` block, freezing monotonic time at `0.0` for all concurrent
|
|
25
|
+
examples. Without the stub, wall-clock token refill (rate: 100–1000 tokens/s) races the
|
|
26
|
+
assertions on slow CI runners, causing intermittent `results.count(:success) != burst`
|
|
27
|
+
failures. Root cause: test-timing artifact; the implementation mutex is correct. Mirrors
|
|
28
|
+
the existing stub pattern used in `#available_tokens` and `refill precision` blocks.
|
|
29
|
+
|
|
9
30
|
## [1.5.10] - 2026-07-08
|
|
10
31
|
|
|
11
32
|
### Security
|
|
@@ -44,8 +44,8 @@ module RosettAi
|
|
|
44
44
|
# @param format [String] output format ('table' or 'json')
|
|
45
45
|
# @return [Hash] formatted behaviour display
|
|
46
46
|
def call(format: 'json')
|
|
47
|
-
dir = RosettAi.
|
|
48
|
-
return { behaviours: [], format: format } unless dir.directory?
|
|
47
|
+
dir = RosettAi.paths.rai_conf_dir.join('behaviour')
|
|
48
|
+
return { behaviours: [], format: format, total: 0 } unless dir.directory?
|
|
49
49
|
|
|
50
50
|
behaviours = dir.glob('*.yml').filter_map { |path| load_display(path) }
|
|
51
51
|
{ behaviours: behaviours, format: format, total: behaviours.size }
|
|
@@ -31,7 +31,7 @@ module RosettAi
|
|
|
31
31
|
#
|
|
32
32
|
# @return [Hash] result with :behaviours array
|
|
33
33
|
def call
|
|
34
|
-
dir = RosettAi.
|
|
34
|
+
dir = RosettAi.paths.rai_conf_dir.join('behaviour')
|
|
35
35
|
return { behaviours: [] } unless dir.directory?
|
|
36
36
|
|
|
37
37
|
behaviours = dir.glob('*.yml').filter_map { |path| load_behaviour(path) }
|
|
@@ -44,7 +44,7 @@ module RosettAi
|
|
|
44
44
|
# @param name [String] behaviour name (without .yml)
|
|
45
45
|
# @return [Hash] behaviour data or error
|
|
46
46
|
def call(name:)
|
|
47
|
-
path = RosettAi.
|
|
47
|
+
path = RosettAi.paths.rai_conf_dir.join('behaviour', "#{name}.yml")
|
|
48
48
|
return ResponseHelper.error("Behaviour not found: #{name}") unless path.exist?
|
|
49
49
|
|
|
50
50
|
data = YAML.safe_load_file(path, permitted_classes: [Symbol])
|
|
@@ -77,8 +77,8 @@ module RosettAi
|
|
|
77
77
|
'Gemfile.integration', 'Gemfile.integration.lock',
|
|
78
78
|
# CI/CD
|
|
79
79
|
'.gitlab-ci*',
|
|
80
|
-
# CI artifacts — never ship test/lint output
|
|
81
|
-
'rspec-report.xml', 'rubocop-report.json',
|
|
80
|
+
# CI artifacts — never ship test/lint/security-scan output
|
|
81
|
+
'rspec-report.xml', 'rubocop-report.json', 'trivy-config-report.json',
|
|
82
82
|
# Build & packaging
|
|
83
83
|
'coverage', 'tmp', 'pkg', 'spec', 'test', 'packaging',
|
|
84
84
|
# Dev tool configs
|
data/lib/rosett_ai/version.rb
CHANGED