rails-ai-bridge 4.2.0 → 5.0.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/.aider.conf.yml +23 -0
- data/.graphifyignore +19 -0
- data/.mutant.yml +3 -0
- data/.reek.yml +507 -255
- data/.reviewer.toml +13 -0
- data/.rs-guardignore +26 -0
- data/.rubocop.yml +2 -0
- data/AGENTS.md +37 -5
- data/Archspec.rb +111 -0
- data/CHANGELOG.md +107 -0
- data/CLAUDE.md +8 -5
- data/CONTRIBUTING.md +1 -1
- data/GEMINI.md +7 -5
- data/README.md +77 -26
- data/SECURITY.md +6 -0
- data/UPGRADING.md +274 -11
- data/docs/COVERAGE.md +41 -26
- data/docs/GUIDE.md +34 -7
- data/docs/devin-setup.md +1 -0
- data/docs/diagrams/how-it-works.html +155 -0
- data/docs/gem-general-improvements.md +12 -1
- data/docs/mcp-security.md +56 -0
- data/docs/offline-mode.md +5 -0
- data/docs/v5/context-providers-design.md +282 -0
- data/lib/generators/rails_ai_bridge/install/install_generator.rb +31 -0
- data/lib/rails_ai_bridge/app_scope.rb +53 -0
- data/lib/rails_ai_bridge/assistant_formats_preference.rb +3 -2
- data/lib/rails_ai_bridge/boot_manager.rb +116 -0
- data/lib/rails_ai_bridge/cache_warmer.rb +4 -2
- data/lib/rails_ai_bridge/config/context_providers.rb +147 -0
- data/lib/rails_ai_bridge/config/introspection.rb +16 -1
- data/lib/rails_ai_bridge/config/output.rb +5 -0
- data/lib/rails_ai_bridge/config/registry.rb +22 -9
- data/lib/rails_ai_bridge/configuration.rb +14 -7
- data/lib/rails_ai_bridge/context_provider.rb +7 -3
- data/lib/rails_ai_bridge/database_size.rb +91 -0
- data/lib/rails_ai_bridge/doctor/checkers/registry_checker.rb +174 -1
- data/lib/rails_ai_bridge/doctor.rb +61 -4
- data/lib/rails_ai_bridge/exclusion_helper.rb +70 -0
- data/lib/rails_ai_bridge/http_transport_app.rb +1 -0
- data/lib/rails_ai_bridge/introspector/parallel_runner.rb +1 -0
- data/lib/rails_ai_bridge/introspector.rb +66 -10
- data/lib/rails_ai_bridge/introspectors/api_introspector.rb +1 -2
- data/lib/rails_ai_bridge/introspectors/config_introspector.rb +1 -0
- data/lib/rails_ai_bridge/introspectors/controller_introspector/filter_extractor.rb +118 -5
- data/lib/rails_ai_bridge/introspectors/controller_introspector.rb +13 -5
- data/lib/rails_ai_bridge/introspectors/convention_detector.rb +2 -2
- data/lib/rails_ai_bridge/introspectors/database_stats_introspector.rb +1 -1
- data/lib/rails_ai_bridge/introspectors/model_introspector/association_extractor.rb +2 -1
- data/lib/rails_ai_bridge/introspectors/model_introspector.rb +38 -6
- data/lib/rails_ai_bridge/introspectors/model_semantic_enrichment.rb +7 -1
- data/lib/rails_ai_bridge/introspectors/route_introspector.rb +58 -4
- data/lib/rails_ai_bridge/introspectors/schema/static_schema_parser.rb +4 -3
- data/lib/rails_ai_bridge/introspectors/schema/static_structure_sql_parser.rb +204 -13
- data/lib/rails_ai_bridge/introspectors/schema_introspector.rb +4 -2
- data/lib/rails_ai_bridge/introspectors/seeds_introspector.rb +6 -6
- data/lib/rails_ai_bridge/introspectors/semantic_introspector.rb +2 -2
- data/lib/rails_ai_bridge/introspectors/stimulus_introspector.rb +4 -4
- data/lib/rails_ai_bridge/introspectors/view_introspector.rb +1 -1
- data/lib/rails_ai_bridge/middleware.rb +7 -2
- data/lib/rails_ai_bridge/path_resolver.rb +67 -6
- data/lib/rails_ai_bridge/registry/authentication_error.rb +14 -0
- data/lib/rails_ai_bridge/registry/connection_error.rb +14 -0
- data/lib/rails_ai_bridge/registry/context_aggregator.rb +194 -0
- data/lib/rails_ai_bridge/registry/context_provider_client.rb +216 -0
- data/lib/rails_ai_bridge/registry/context_provider_error.rb +26 -0
- data/lib/rails_ai_bridge/registry/context_tool_spec.rb +7 -0
- data/lib/rails_ai_bridge/registry/endpoint_policy.rb +238 -0
- data/lib/rails_ai_bridge/registry/message_sanitizer.rb +24 -0
- data/lib/rails_ai_bridge/registry/pack_resolver.rb +3 -0
- data/lib/rails_ai_bridge/registry/pinning_http_adapter.rb +45 -0
- data/lib/rails_ai_bridge/registry/policy_error.rb +14 -0
- data/lib/rails_ai_bridge/registry/protocol_error.rb +14 -0
- data/lib/rails_ai_bridge/registry/provider_request_scope.rb +37 -0
- data/lib/rails_ai_bridge/registry/rake_presenter.rb +1 -0
- data/lib/rails_ai_bridge/registry/remote_tool_error.rb +14 -0
- data/lib/rails_ai_bridge/registry/resolver_cache.rb +2 -2
- data/lib/rails_ai_bridge/registry/response_too_large_error.rb +14 -0
- data/lib/rails_ai_bridge/registry/timeout_error.rb +14 -0
- data/lib/rails_ai_bridge/registry.rb +21 -3
- data/lib/rails_ai_bridge/resources.rb +5 -1
- data/lib/rails_ai_bridge/rubydex_adapter.rb +4 -0
- data/lib/rails_ai_bridge/serializers/context_file_serializer.rb +7 -2
- data/lib/rails_ai_bridge/serializers/context_summary.rb +1 -85
- data/lib/rails_ai_bridge/serializers/formatters/providers/mcp_guide_formatter.rb +1 -0
- data/lib/rails_ai_bridge/serializers/markdown_serializer.rb +1 -1
- data/lib/rails_ai_bridge/serializers/providers/base_provider_serializer.rb +1 -0
- data/lib/rails_ai_bridge/serializers/providers/claude_rules_serializer.rb +1 -0
- data/lib/rails_ai_bridge/serializers/providers/claude_serializer.rb +1 -0
- data/lib/rails_ai_bridge/serializers/providers/codex_serializer.rb +1 -0
- data/lib/rails_ai_bridge/serializers/providers/collaborators/rules_document_builder.rb +1 -1
- data/lib/rails_ai_bridge/serializers/providers/collaborators/stack_overview_builder.rb +3 -1
- data/lib/rails_ai_bridge/serializers/providers/copilot_serializer.rb +8 -0
- data/lib/rails_ai_bridge/serializers/providers/cursor_rules_serializer.rb +2 -2
- data/lib/rails_ai_bridge/serializers/providers/devin_serializer.rb +1 -0
- data/lib/rails_ai_bridge/serializers/providers/gemini_serializer.rb +1 -0
- data/lib/rails_ai_bridge/serializers/providers/mcp_tool_reference_formatter.rb +1 -0
- data/lib/rails_ai_bridge/serializers/providers/rules_orchestrator.rb +1 -0
- data/lib/rails_ai_bridge/serializers/providers/rules_serializer.rb +1 -0
- data/lib/rails_ai_bridge/serializers/shared_assistant_guidance.rb +44 -8
- data/lib/rails_ai_bridge/server.rb +4 -1
- data/lib/rails_ai_bridge/static_app.rb +99 -0
- data/lib/rails_ai_bridge/tasks/rails_ai_bridge.rake +6 -4
- data/lib/rails_ai_bridge/tool_result_cache.rb +12 -1
- data/lib/rails_ai_bridge/tools/README.md +4 -0
- data/lib/rails_ai_bridge/tools/base_tool.rb +4 -2
- data/lib/rails_ai_bridge/tools/confidence_tag.rb +34 -0
- data/lib/rails_ai_bridge/tools/explain_symbol/cli_explorer.rb +70 -0
- data/lib/rails_ai_bridge/tools/explain_symbol.rb +124 -0
- data/lib/rails_ai_bridge/tools/get_context/composer.rb +213 -0
- data/lib/rails_ai_bridge/tools/get_context/related_tests.rb +95 -0
- data/lib/rails_ai_bridge/tools/get_context/resolver.rb +320 -0
- data/lib/rails_ai_bridge/tools/get_context.rb +124 -0
- data/lib/rails_ai_bridge/tools/get_controllers.rb +19 -4
- data/lib/rails_ai_bridge/tools/get_model_details.rb +4 -3
- data/lib/rails_ai_bridge/tools/get_provider_context.rb +280 -0
- data/lib/rails_ai_bridge/tools/get_routes.rb +52 -7
- data/lib/rails_ai_bridge/tools/get_schema.rb +18 -2
- data/lib/rails_ai_bridge/tools/get_view/base_formatter.rb +2 -2
- data/lib/rails_ai_bridge/tools/list_registry.rb +2 -2
- data/lib/rails_ai_bridge/tools/model_details/full_formatter.rb +3 -1
- data/lib/rails_ai_bridge/tools/model_details/single_model_formatter.rb +47 -3
- data/lib/rails_ai_bridge/tools/schema/full_formatter.rb +4 -2
- data/lib/rails_ai_bridge/tools/schema/standard_formatter.rb +20 -2
- data/lib/rails_ai_bridge/tools/schema/summary_formatter.rb +4 -2
- data/lib/rails_ai_bridge/tools/schema/table_formatter.rb +24 -3
- data/lib/rails_ai_bridge/version.rb +1 -1
- data/lib/rails_ai_bridge/view_file_analyzer.rb +39 -1
- data/lib/rails_ai_bridge/watcher.rb +5 -2
- data/lib/rails_ai_bridge.rb +14 -6
- data/lib/tasks/quality.rake +22 -0
- data/lib/tasks/zeitwerk.rake +32 -0
- data/rails-ai-bridge.gemspec +9 -9
- data/repomix.config.json +44 -0
- metadata +83 -9
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: c3ff80f45d85160ef2e84f6f0a838ef49dc3301c4595bd2a336f5e5ded6a44a3
|
|
4
|
+
data.tar.gz: 39d5e276f4d32fc1c7d4b2072ada05a08fa7fa0a8359d7bb49385856ba547896
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bd3db69993fc48e125750a8e56a49a8e3aa84b8d2637c336e820738f932fb7ef4fd68f1083c429c85f8d2ffc15bf473dd18e7aa79cb9b612e3db2e368e4b8585
|
|
7
|
+
data.tar.gz: c1902b9560283b27190d526d8f40befab209555c877e991d6a8b1403fb03e94ae15745eccd7d275a33cba5458eac25ffc8d284b091ec5906a662d824c1f54be5
|
data/.aider.conf.yml
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
read:
|
|
2
|
+
- AGENTS.md
|
|
3
|
+
- repomix.config.json
|
|
4
|
+
|
|
5
|
+
mcp_servers:
|
|
6
|
+
codegraph:
|
|
7
|
+
command: "/Users/igmarin/.local/bin/codegraph"
|
|
8
|
+
args:
|
|
9
|
+
- serve
|
|
10
|
+
- --mcp
|
|
11
|
+
- --path
|
|
12
|
+
- "/Volumes/minimini/Developer/Projects/rails-ai-bridge"
|
|
13
|
+
graphify:
|
|
14
|
+
command: "/Users/igmarin/.local/bin/graphify-mcp"
|
|
15
|
+
args:
|
|
16
|
+
- --graph
|
|
17
|
+
- "/Volumes/minimini/Developer/Projects/rails-ai-bridge/graphify-out/graph.json"
|
|
18
|
+
repomix:
|
|
19
|
+
command: "/opt/homebrew/bin/repomix"
|
|
20
|
+
args:
|
|
21
|
+
- --mcp
|
|
22
|
+
- --sandbox
|
|
23
|
+
- "/Volumes/minimini/Developer/Projects/rails-ai-bridge"
|
data/.graphifyignore
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
.git
|
|
2
|
+
.idea
|
|
3
|
+
.cursor
|
|
4
|
+
.claude
|
|
5
|
+
.grok
|
|
6
|
+
.zed
|
|
7
|
+
.codegraph
|
|
8
|
+
graphify-out
|
|
9
|
+
repomix-output.xml
|
|
10
|
+
repomix-output.md
|
|
11
|
+
coverage
|
|
12
|
+
review-result.txt
|
|
13
|
+
rs-guard-metrics.json
|
|
14
|
+
*.gem
|
|
15
|
+
.DS_Store
|
|
16
|
+
tmp/
|
|
17
|
+
doc/
|
|
18
|
+
vendor/bundle/
|
|
19
|
+
coverage/
|
data/.mutant.yml
CHANGED
|
@@ -13,6 +13,9 @@
|
|
|
13
13
|
# Subject expressions are passed on the CLI to target critical paths:
|
|
14
14
|
# RailsAiBridge::Registry — registry resolution
|
|
15
15
|
# RailsAiBridge::Tools — MCP tools
|
|
16
|
+
# RailsAiBridge::Tools::SearchCode::Validator
|
|
17
|
+
# RailsAiBridge::ViewFileAnalyzer
|
|
18
|
+
# RailsAiBridge::ExclusionHelper
|
|
16
19
|
# RailsAiBridge::Serializers — output serializers
|
|
17
20
|
usage: opensource
|
|
18
21
|
integration: rspec
|