activerabbit-ai 0.6.0 → 0.6.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: f74f9015abfef72171776a4ffc3b2773ba9c065b988d9e4f8ee23e9cdd2b282e
4
- data.tar.gz: 4b28180c68924cc06116b19b21bc9b33f0d97f8ac3ed4caa68072c8efdff9fcd
3
+ metadata.gz: 8e1cd1d7c16eb9b4cea15e63674f3c89156c9d8e3b88d51ff2cb17b149e717cf
4
+ data.tar.gz: b5e54da451cfa9d98e7ba55a65940af01707bb2f0b17254000ac0aa07e86a8e8
5
5
  SHA512:
6
- metadata.gz: 0fb79f1162dc1648c9ffe8d6cc05e813b20f3674143acbf935ecc657c7e1273a4ba35a8f873bf87e1e4e491f579b22568d0f45898de1106947ad41973b7317a9
7
- data.tar.gz: f2bb325c0780e79160b6acbc4e6e10f98ca427459b58448562166d8c88cb5776e38c10fe3620d713945585ef0206f3a9465a04bdbec26c78ec47e0f78c1ba011
6
+ metadata.gz: 2d3aa17b86a6c204454d70374c653e5f50c2648cb236941f13c063e4d9d932d950b4bc8425ea115e7f16d84dee69355fba29466fef28e75daedb3c6a95f3cbf3
7
+ data.tar.gz: f7243d857f07247ce600ed7f98156b96e4591e68af2aa954ad6357ba20282d475cd521c55beb4bb74b02133f7ae697d3c973cfaf1b07bcb98132602045c4b220
data/CHANGELOG.md CHANGED
@@ -2,6 +2,11 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [0.6.1] - 2026-01-09
6
+
7
+ ### Fixed
8
+ - **Docker/Production path detection**: Fixed `in_app_frame?` to correctly detect app frames in Docker containers and production environments with absolute paths like `/app/app/controllers/...`
9
+
5
10
  ## [0.6.0] - 2026-01-09
6
11
 
7
12
  ### Added
@@ -156,16 +156,30 @@ module ActiveRabbit
156
156
  def in_app_frame?(file)
157
157
  return false if blank?(file)
158
158
 
159
- # In-app if it's in app/, lib/, or similar app directories
160
- # and NOT in gems or ruby stdlib
161
- (file.start_with?("app/") ||
162
- file.start_with?("lib/") ||
163
- file.start_with?("config/") ||
164
- (file.include?("/app/") && !file.include?("/gems/"))) &&
165
- !file.include?("/gems/") &&
166
- !file.include?("/ruby/") &&
167
- !file.include?("/rubygems/") &&
168
- !file.include?("/.bundle/")
159
+ # Exclude gem/library paths first (these are never in-app)
160
+ return false if file.include?("/gems/")
161
+ return false if file.include?("/bundle/")
162
+ return false if file.include?("/.bundle/")
163
+ return false if file.include?("/rubygems/")
164
+ # Exclude Ruby stdlib but not app paths that happen to have "ruby" in them
165
+ return false if file =~ %r{/ruby/\d+\.\d+\.\d+/}
166
+
167
+ # In-app patterns (common Rails app structures)
168
+ # Relative paths
169
+ return true if file.start_with?("app/")
170
+ return true if file.start_with?("lib/")
171
+ return true if file.start_with?("config/")
172
+
173
+ # Absolute paths in Docker/production (e.g., /app/app/controllers/...)
174
+ # Match paths that contain /app/ followed by typical app directories
175
+ return true if file =~ %r{/app/(controllers|models|services|jobs|views|helpers|mailers|workers|channels)/}
176
+ return true if file =~ %r{/lib/[^/]+\.rb$}
177
+ return true if file =~ %r{/config/}
178
+
179
+ # Generic: path contains /app/ but not in excluded paths (already checked above)
180
+ return true if file.include?("/app/") && file.end_with?(".rb")
181
+
182
+ false
169
183
  end
170
184
 
171
185
  def classify_frame(file)
@@ -1,5 +1,5 @@
1
1
  module ActiveRabbit
2
2
  module Client
3
- VERSION = "0.6.0"
3
+ VERSION = "0.6.1"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerabbit-ai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Shapalov