rails-ai-context 4.3.2 → 4.4.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 +127 -53
- data/CLAUDE.md +3 -1
- data/README.md +268 -197
- data/demo-trace.gif +0 -0
- data/demo-trace.tape +21 -0
- data/demo.gif +0 -0
- data/demo.tape +33 -0
- data/docs/GUIDE.md +9 -9
- data/lib/generators/rails_ai_context/install/install_generator.rb +2 -1
- data/lib/rails_ai_context/cli/tool_runner.rb +1 -1
- data/lib/rails_ai_context/configuration.rb +25 -1
- data/lib/rails_ai_context/doctor.rb +4 -2
- data/lib/rails_ai_context/fingerprinter.rb +6 -1
- data/lib/rails_ai_context/introspectors/accessibility_introspector.rb +52 -1
- data/lib/rails_ai_context/introspectors/action_mailbox_introspector.rb +10 -2
- data/lib/rails_ai_context/introspectors/action_text_introspector.rb +22 -2
- data/lib/rails_ai_context/introspectors/active_storage_introspector.rb +50 -4
- data/lib/rails_ai_context/introspectors/api_introspector.rb +41 -5
- data/lib/rails_ai_context/introspectors/asset_pipeline_introspector.rb +10 -4
- data/lib/rails_ai_context/introspectors/auth_introspector.rb +62 -7
- data/lib/rails_ai_context/introspectors/component_introspector.rb +6 -0
- data/lib/rails_ai_context/introspectors/config_introspector.rb +59 -9
- data/lib/rails_ai_context/introspectors/controller_introspector.rb +45 -13
- data/lib/rails_ai_context/introspectors/convention_detector.rb +25 -2
- data/lib/rails_ai_context/introspectors/database_stats_introspector.rb +58 -4
- data/lib/rails_ai_context/introspectors/design_token_introspector.rb +27 -5
- data/lib/rails_ai_context/introspectors/devops_introspector.rb +15 -8
- data/lib/rails_ai_context/introspectors/engine_introspector.rb +12 -3
- data/lib/rails_ai_context/introspectors/frontend_framework_introspector.rb +36 -1
- data/lib/rails_ai_context/introspectors/gem_introspector.rb +47 -1
- data/lib/rails_ai_context/introspectors/i18n_introspector.rb +49 -3
- data/lib/rails_ai_context/introspectors/job_introspector.rb +48 -5
- data/lib/rails_ai_context/introspectors/middleware_introspector.rb +24 -3
- data/lib/rails_ai_context/introspectors/migration_introspector.rb +4 -1
- data/lib/rails_ai_context/introspectors/model_introspector.rb +108 -11
- data/lib/rails_ai_context/introspectors/multi_database_introspector.rb +57 -12
- data/lib/rails_ai_context/introspectors/performance_introspector.rb +34 -9
- data/lib/rails_ai_context/introspectors/rake_task_introspector.rb +12 -2
- data/lib/rails_ai_context/introspectors/route_introspector.rb +25 -8
- data/lib/rails_ai_context/introspectors/schema_introspector.rb +45 -7
- data/lib/rails_ai_context/introspectors/seeds_introspector.rb +5 -2
- data/lib/rails_ai_context/introspectors/stimulus_introspector.rb +59 -6
- data/lib/rails_ai_context/introspectors/test_introspector.rb +50 -5
- data/lib/rails_ai_context/introspectors/turbo_introspector.rb +44 -13
- data/lib/rails_ai_context/introspectors/view_introspector.rb +46 -7
- data/lib/rails_ai_context/introspectors/view_template_introspector.rb +25 -7
- data/lib/rails_ai_context/resources.rb +1 -1
- data/lib/rails_ai_context/server.rb +6 -3
- data/lib/rails_ai_context/tasks/rails_ai_context.rake +8 -4
- data/lib/rails_ai_context/tools/analyze_feature.rb +66 -19
- data/lib/rails_ai_context/tools/base_tool.rb +1 -1
- data/lib/rails_ai_context/tools/diagnose.rb +4 -2
- data/lib/rails_ai_context/tools/get_callbacks.rb +4 -2
- data/lib/rails_ai_context/tools/get_concern.rb +12 -6
- data/lib/rails_ai_context/tools/get_controllers.rb +10 -5
- data/lib/rails_ai_context/tools/get_conventions.rb +4 -2
- data/lib/rails_ai_context/tools/get_design_system.rb +2 -1
- data/lib/rails_ai_context/tools/get_env.rb +8 -4
- data/lib/rails_ai_context/tools/get_helper_methods.rb +6 -3
- data/lib/rails_ai_context/tools/get_job_pattern.rb +2 -1
- data/lib/rails_ai_context/tools/get_model_details.rb +10 -5
- data/lib/rails_ai_context/tools/get_partial_interface.rb +14 -7
- data/lib/rails_ai_context/tools/get_schema.rb +2 -1
- data/lib/rails_ai_context/tools/get_service_pattern.rb +2 -1
- data/lib/rails_ai_context/tools/get_stimulus.rb +2 -1
- data/lib/rails_ai_context/tools/get_test_info.rb +4 -2
- data/lib/rails_ai_context/tools/get_turbo_map.rb +22 -11
- data/lib/rails_ai_context/tools/get_view.rb +6 -3
- data/lib/rails_ai_context/tools/migration_advisor.rb +2 -1
- data/lib/rails_ai_context/tools/onboard.rb +2 -1
- data/lib/rails_ai_context/tools/performance_check.rb +2 -1
- data/lib/rails_ai_context/tools/query.rb +5 -1
- data/lib/rails_ai_context/tools/read_logs.rb +3 -0
- data/lib/rails_ai_context/tools/runtime_info.rb +10 -5
- data/lib/rails_ai_context/tools/search_code.rb +8 -4
- data/lib/rails_ai_context/tools/search_docs.rb +2 -1
- data/lib/rails_ai_context/tools/session_context.rb +2 -1
- data/lib/rails_ai_context/tools/validate.rb +16 -8
- data/lib/rails_ai_context/version.rb +1 -1
- metadata +5 -1
|
@@ -146,7 +146,8 @@ module RailsAiContext
|
|
|
146
146
|
return matches.first.sub("#{Rails.root}/", "") if matches.any?
|
|
147
147
|
|
|
148
148
|
nil
|
|
149
|
-
rescue
|
|
149
|
+
rescue => e
|
|
150
|
+
$stderr.puts "[rails-ai-context] find_file_suggestion failed: #{e.message}" if ENV["DEBUG"]
|
|
150
151
|
nil
|
|
151
152
|
end
|
|
152
153
|
|
|
@@ -460,7 +461,8 @@ module RailsAiContext
|
|
|
460
461
|
visitor = RailsSemanticVisitor.new
|
|
461
462
|
result.value.accept(visitor)
|
|
462
463
|
visitor
|
|
463
|
-
rescue
|
|
464
|
+
rescue => e
|
|
465
|
+
$stderr.puts "[rails-ai-context] parse_and_visit failed: #{e.message}" if ENV["DEBUG"]
|
|
464
466
|
nil
|
|
465
467
|
end
|
|
466
468
|
|
|
@@ -900,7 +902,8 @@ module RailsAiContext
|
|
|
900
902
|
warnings << "@#{ivar} used in view but not set in #{ctrl_class}. Fix: add `@#{ivar} = ...` to action"
|
|
901
903
|
end
|
|
902
904
|
warnings
|
|
903
|
-
rescue
|
|
905
|
+
rescue => e
|
|
906
|
+
$stderr.puts "[rails-ai-context] check_instance_variable_usage failed: #{e.message}" if ENV["DEBUG"]
|
|
904
907
|
[]
|
|
905
908
|
end
|
|
906
909
|
|
|
@@ -934,7 +937,8 @@ module RailsAiContext
|
|
|
934
937
|
end
|
|
935
938
|
end
|
|
936
939
|
warnings
|
|
937
|
-
rescue
|
|
940
|
+
rescue => e
|
|
941
|
+
$stderr.puts "[rails-ai-context] check_turbo_stream_channels failed: #{e.message}" if ENV["DEBUG"]
|
|
938
942
|
[]
|
|
939
943
|
end
|
|
940
944
|
|
|
@@ -959,7 +963,8 @@ module RailsAiContext
|
|
|
959
963
|
warnings << "#{file} uses turbo_stream_from but #{turbo_template} doesn't exist (Turbo Stream updates may need this)"
|
|
960
964
|
end
|
|
961
965
|
warnings
|
|
962
|
-
rescue
|
|
966
|
+
rescue => e
|
|
967
|
+
$stderr.puts "[rails-ai-context] check_respond_to_template_existence failed: #{e.message}" if ENV["DEBUG"]
|
|
963
968
|
[]
|
|
964
969
|
end
|
|
965
970
|
|
|
@@ -984,7 +989,8 @@ module RailsAiContext
|
|
|
984
989
|
end
|
|
985
990
|
end
|
|
986
991
|
warnings.first(3) # cap at 3 to avoid noise
|
|
987
|
-
rescue
|
|
992
|
+
rescue => e
|
|
993
|
+
$stderr.puts "[rails-ai-context] check_memory_loading failed: #{e.message}" if ENV["DEBUG"]
|
|
988
994
|
[]
|
|
989
995
|
end
|
|
990
996
|
|
|
@@ -1013,7 +1019,8 @@ module RailsAiContext
|
|
|
1013
1019
|
end
|
|
1014
1020
|
|
|
1015
1021
|
warnings.first(5)
|
|
1016
|
-
rescue
|
|
1022
|
+
rescue => e
|
|
1023
|
+
$stderr.puts "[rails-ai-context] check_performance_warnings failed: #{e.message}" if ENV["DEBUG"]
|
|
1017
1024
|
[]
|
|
1018
1025
|
end
|
|
1019
1026
|
|
|
@@ -1044,7 +1051,8 @@ module RailsAiContext
|
|
|
1044
1051
|
loc = w.line ? "#{w.file.relative}:#{w.line}" : w.file.relative
|
|
1045
1052
|
"[#{w.confidence_name}] #{w.warning_type} — #{loc}: #{w.message}"
|
|
1046
1053
|
end
|
|
1047
|
-
rescue
|
|
1054
|
+
rescue => e
|
|
1055
|
+
$stderr.puts "[rails-ai-context] check_brakeman_security failed: #{e.message}" if ENV["DEBUG"]
|
|
1048
1056
|
[]
|
|
1049
1057
|
end
|
|
1050
1058
|
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rails-ai-context
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.
|
|
4
|
+
version: 4.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- crisnahine
|
|
@@ -193,6 +193,10 @@ files:
|
|
|
193
193
|
- README.md
|
|
194
194
|
- Rakefile
|
|
195
195
|
- SECURITY.md
|
|
196
|
+
- demo-trace.gif
|
|
197
|
+
- demo-trace.tape
|
|
198
|
+
- demo.gif
|
|
199
|
+
- demo.tape
|
|
196
200
|
- docs/GUIDE.md
|
|
197
201
|
- docs/token-comparison.jpeg
|
|
198
202
|
- exe/rails-ai-context
|