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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9fc2d403485de8a1af9034d9f7bf19e7545620406b691b0c917e6e360ad9e56b
4
- data.tar.gz: 89a8c039303808bed9f592e0f17d4478ffc87d34f129006a5981651c80bf82ac
3
+ metadata.gz: cb0358498de4f1123fd29a3ae3e728712340a70772a5469a31d25048a4525aca
4
+ data.tar.gz: bbc11a0a29c5d4b8b14fe3c34e9d28ae93c1046b1b6fc6f1758f09e4c8d21684
5
5
  SHA512:
6
- metadata.gz: 0254e2ea9ea0e3261863ec052e8987e8c45a645de615e9fd266a0ce6d861f90ce04f3c1b3f08ad4c9adc9e17fec951b026c4d01a24446dc69b6597aa7c97f7ed
7
- data.tar.gz: c201357a747fa445901851484a17bbd5398b3be363bbbecaf8791a120768974a12b34c1a5cedc4173f6990b3ef470418c4ad818168537fdf176f2c2efda3f57e
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.root.join('conf', 'behaviour')
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.root.join('conf', 'behaviour')
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.root.join('conf', 'behaviour', "#{name}.yml")
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
@@ -5,5 +5,5 @@
5
5
 
6
6
  module RosettAi
7
7
  # @return [String] Current version of the rosett-ai gem.
8
- VERSION = '1.5.10'
8
+ VERSION = '1.5.12'
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rosett-ai
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.10
4
+ version: 1.5.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hugo Antonio Sepulveda Manriquez