🛒 Solidus, the open-source eCommerce framework for industry trailblazers.
This report presents the forensic synthetic code analysis of solidusio/solidus, a Ruby project with 5,316 GitHub stars. SynthScan v2.0 examined 181,048 lines of code across 2517 source files, recording 520 pattern matches distributed across 11 syntactic categories. The overall adjusted score of 3.7 places this repository in the Likely human-written band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 520 distinct pattern matches across 11 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .rubocop_todo.yml | 1 | # This configuration was generated by | COMMENT |
| LOW | legacy_promotions/app/models/spree/promotion_action.rb | 21 | # Updates the state of the order or performs some other action depending on | COMMENT |
| LOW | …spree/promotion/actions/create_quantity_adjustments.rb | 21 | # colours: red, blue, and white. | COMMENT |
| LOW | …spree/promotion/actions/create_quantity_adjustments.rb | 41 | # *Reasoning:* We have a total quantity of 4. However, we only apply the | COMMENT |
| LOW | …s/app/models/spree/promotion/rules/minimum_quantity.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …s/app/models/spree/promotion/rules/minimum_quantity.rb | 21 | # @param promotable [Spree::Order,Spree::LineItem] | COMMENT |
| LOW | …/app/models/spree/permission_sets/promotion_display.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …p/models/spree/permission_sets/promotion_management.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …_promotions/app/models/spree/promotion_handler/cart.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …pp/assets/config/solidus_legacy_promotions/manifest.js | 1 | //= link solidus_legacy_promotions/promotions.css | COMMENT |
| LOW | …app/assets/javascripts/spree/backend/edit_promotion.js | 1 | //= require_tree ./templates | COMMENT |
| LOW | …motions/lib/solidus_legacy_promotions/configuration.rb | 41 | COMMENT | |
| LOW | storefront/.rubocop_todo.yml | 1 | # This configuration was generated by | COMMENT |
| LOW | storefront/.rubocop_todo.yml | 41 | # Configuration parameters: AllowForAlignment, AllowBeforeTrailingComments, ForceEqualSignAlignment. | COMMENT |
| LOW | storefront/.rubocop_todo.yml | 181 | # Cop supports --auto-correct. | COMMENT |
| LOW | …lates/app/assets/config/solidus_storefront_manifest.js | 1 | //= link solidus_storefront.js | COMMENT |
| LOW | …templates/app/assets/javascripts/solidus_storefront.js | 1 | // Placeholder manifest file. | COMMENT |
| LOW | storefront/templates/app/helpers/layout_helper.rb | 1 | module LayoutHelper | COMMENT |
| LOW | core/app/models/spree/variant.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/variant.rb | 341 | COMMENT | |
| LOW | core/app/models/spree/user_last_url_storer.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/variant_property_rule.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/variant_property_rule.rb | 21 | has_many :option_values, through: :conditions | COMMENT |
| LOW | core/app/models/spree/return_item.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/order_merger.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/order_merger.rb | 21 | def initialize(order) | COMMENT |
| LOW | core/app/models/spree/order_merger.rb | 121 | # Handle an error from saving the `line_item` | COMMENT |
| LOW | core/app/models/spree/order_taxation.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/tax_rate.rb | 41 | scope :active, -> do | COMMENT |
| LOW | core/app/models/spree/tax_rate.rb | 61 | # 21% inclusive - "Clothing" - Spain | COMMENT |
| LOW | core/app/models/spree/payment_create.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/order_shipping.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/mergeable_orders_finder.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/calculator.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/calculator.rb | 21 | # Spree::ShippingRate) | COMMENT |
| LOW | core/app/models/spree/fulfilment_changer.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/product.rb | 181 | COMMENT | |
| LOW | core/app/models/spree/product.rb | 201 | # Poor man's full text search. | COMMENT |
| LOW | core/app/models/spree/simple_order_contents.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/money.rb | 41 | @money = Monetize.from_string(amount, currency) | COMMENT |
| LOW | core/app/models/spree/reimbursement.rb | 21 | before_create :calculate_total | COMMENT |
| LOW | core/app/models/spree/order.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/payment_method.rb | 121 | # Used as partial name for your payment method | COMMENT |
| LOW | core/app/models/spree/payment_method.rb | 161 | COMMENT | |
| LOW | core/app/models/spree/order_updater.rb | 101 | "partial" | COMMENT |
| LOW | core/app/models/spree/in_memory_order_updater.rb | 61 | alias_method :update, :recalculate | COMMENT |
| LOW | core/app/models/spree/order/number_generator.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/order/payments.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/permission_sets/base.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …e/app/models/spree/permission_sets/default_customer.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …e/app/models/spree/permission_sets/default_customer.rb | 21 | # - Taxonomies | COMMENT |
| LOW | …dels/spree/permission_sets/configuration_management.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …re/app/models/spree/permission_sets/product_display.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …e/app/models/spree/permission_sets/order_management.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …app/models/spree/permission_sets/product_management.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …/models/spree/permission_sets/configuration_display.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/permission_sets/order_display.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/core/state_machines/payment.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | …app/models/spree/core/state_machines/inventory_unit.rb | 1 | # frozen_string_literal: true | COMMENT |
| LOW | core/app/models/spree/core/state_machines/shipment.rb | 1 | # frozen_string_literal: true | COMMENT |
| 188 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …tions/app/mailers/spree/promotion_code_batch_mailer.rb | 5 | def promotion_code_batch_finished(promotion_code_batch) | CODE |
| LOW | …tions/app/mailers/spree/promotion_code_batch_mailer.rb | 10 | def promotion_code_batch_errored(promotion_code_batch) | CODE |
| LOW | …pree_calculator_returns_default_refund_amount_patch.rb | 7 | def weighted_order_adjustment_amount(inventory_unit) | CODE |
| LOW | …/models/solidus_legacy_promotions/spree_order_patch.rb | 16 | def apply_shipping_promotions(_event = nil) | CODE |
| LOW | legacy_promotions/app/models/spree/promotion_rule.rb | 49 | def eligibility_error_message(key, options = {}) | CODE |
| LOW | legacy_promotions/app/models/spree/promotion.rb | 257 | def eligibility_excluded_orders(promotable) | CODE |
| LOW | …spree/promotion/actions/create_quantity_adjustments.rb | 97 | def total_applicable_quantity(line_items) | CODE |
| LOW | …spree/promotion/actions/create_quantity_adjustments.rb | 110 | def set_line_item_action_quantity(quantity, line_item) | CODE |
| LOW | …romotions/app/models/spree/promotion_handler/coupon.rb | 92 | def set_promotion_eligibility_error_code(promotion) | CODE |
| LOW | …promotions/app/helpers/spree/promotion_rules_helper.rb | 5 | def options_for_promotion_rule_types(promotion) | CODE |
| LOW | …/spec/features/backend/promotions/product_rule_spec.rb | 14 | def add_promotion_rule_of_type(type) | CODE |
| LOW | …ons/spec/models/spree/promotion_handler/coupon_spec.rb | 17 | def expect_adjustment_creation(adjustable:, promotion:, promotion_code: nil) | CODE |
| LOW | storefront/templates/app/mailers/user_mailer.rb | 4 | def reset_password_instructions(user, token, *_args) | CODE |
| LOW | storefront/templates/app/mailers/user_mailer.rb | 10 | def confirmation_instructions(user, token, _opts = {}) | CODE |
| LOW | …/templates/app/controllers/checkout_base_controller.rb | 55 | def rescue_from_spree_gateway_error(exception) | CODE |
| LOW | …lates/app/controllers/user_confirmations_controller.rb | 6 | def after_confirmation_path_for(resource_name, resource) | CODE |
| LOW | …efront/templates/app/helpers/product_options_helper.rb | 4 | def product_variants_with_options(product) | CODE |
| LOW | storefront/templates/app/helpers/checkout_helper.rb | 4 | def partial_name_with_fallback(prefix, partial_name, fallback_name = "default") | CODE |
| LOW | storefront/templates/spec/system/coupon_code_spec.rb | 17 | def create_basic_coupon_promotion(code) | CODE |
| LOW | …/support/solidus_storefront/system/checkout_helpers.rb | 45 | def fill_addresses_fields_with(address) | CODE |
| LOW | …/support/solidus_storefront/system/checkout_helpers.rb | 78 | def find_existing_payment_radio(wallet_source_id) | CODE |
| LOW | core/app/mailers/spree/order_mailer.rb | 21 | def inventory_cancellation_email(order, inventory_units, resend = false) | CODE |
| LOW | core/app/models/spree/variant.rb | 309 | def price_difference_from_master(pricing_options = Spree::Config.default_pricing_options) | CODE |
| LOW | core/app/models/spree/refund.rb | 31 | def total_amount_reimbursed_for(reimbursement) | CODE |
| LOW | core/app/models/spree/order_inventory.rb | 59 | def determine_target_shipment(quantity) | CODE |
| LOW | core/app/models/spree/return_item.rb | 133 | def eligible_exchange_variants(stock_locations = nil) | CODE |
| LOW | core/app/models/spree/return_item.rb | 201 | def sibling_intended_for_exchange(status) | CODE |
| LOW | core/app/models/spree/shipment.rb | 303 | def update_attributes_and_order(params = {}) | CODE |
| LOW | core/app/models/spree/unit_cancel.rb | 42 | def weighted_line_item_amount(line_item) | CODE |
| LOW | core/app/models/spree/payment_create.rb | 63 | def build_from_payment_source(payment_source) | CODE |
| LOW | core/app/models/spree/reimbursement_performer.rb | 33 | def calculate_reimbursement_types(reimbursement) | CODE |
| LOW | core/app/models/spree/product.rb | 219 | def variants_and_option_values_for(pricing_options = Spree::Config.default_pricing_options) | CODE |
| LOW | core/app/models/spree/product.rb | 232 | def variant_option_values_by_option_type(variant_scope = nil) | CODE |
| LOW | core/app/models/spree/product.rb | 288 | def find_variant_property_rule(option_value_ids) | CODE |
| LOW | core/app/models/spree/simple_order_contents.rb | 113 | def grab_line_item_by_variant(variant, raise_error = false, options = {}) | CODE |
| LOW | core/app/models/spree/reimbursement.rb | 57 | def build_from_customer_return(customer_return) | CODE |
| LOW | core/app/models/spree/store_credit.rb | 223 | def create_credit_record_params(amount) | CODE |
| LOW | core/app/models/spree/order.rb | 183 | def register_line_item_comparison_hook(hook) | CODE |
| LOW | core/app/models/spree/order.rb | 354 | def find_line_item_by_variant(variant, options = {}) | CODE |
| LOW | core/app/models/spree/order.rb | 515 | def create_shipments_for_line_item(line_item) | CODE |
| LOW | core/app/models/spree/order.rb | 725 | def validate_payments_attributes(attributes) | CODE |
| LOW | core/app/models/spree/calculator/default_tax.rb | 56 | def sum_of_included_tax_rates(item) | CODE |
| LOW⚡ | …dels/spree/calculator/returns/default_refund_amount.rb | 16 | def weighted_order_adjustment_amount(inventory_unit) | CODE |
| LOW⚡ | …dels/spree/calculator/returns/default_refund_amount.rb | 20 | def weighted_line_item_amount(inventory_unit) | CODE |
| LOW⚡ | …dels/spree/calculator/returns/default_refund_amount.rb | 24 | def percentage_of_order_total(inventory_unit) | CODE |
| LOW | core/app/models/spree/payment_method/credit_card.rb | 22 | def reusable_sources_by_order(order) | CODE |
| LOW | core/app/models/spree/address/name.rb | 21 | def initialize_name_components(components) | CODE |
| LOW | …dels/spree/reimbursement_type/reimbursement_helpers.rb | 70 | def sorted_eligible_refund_payments(payments) | CODE |
| LOW | core/app/models/spree/variant/vat_price_generator.rb | 41 | def find_or_initialize_price_by(country_iso, currency) | CODE |
| LOW | core/app/models/spree/stock/estimator.rb | 28 | def choose_default_shipping_rate(shipping_rates) | CODE |
| LOW | core/app/models/spree/stock/inventory_unit_builder.rb | 16 | def missing_units_for_line_item(line_item) | CODE |
| LOW | core/app/models/spree/reimbursement/credit.rb | 15 | def total_amount_reimbursed_for(reimbursement) | CODE |
| LOW | …odels/spree/reimbursement/reimbursement_type_engine.rb | 35 | def calculate_reimbursement_type(return_item) | CODE |
| LOW | core/app/models/concerns/spree/user_address_book.rb | 9 | def find_first_by_address_values(address_attrs) | CODE |
| LOW | core/app/models/concerns/spree/user_address_book.rb | 160 | def mark_default_ship_address(address) | CODE |
| LOW | core/app/models/concerns/spree/user_address_book.rb | 164 | def mark_default_bill_address(address) | CODE |
| LOW | core/app/models/concerns/spree/user_address_book.rb | 187 | def remove_user_address_reference(address_id) | CODE |
| LOW⚡ | core/app/models/concerns/spree/user_methods.rb | 96 | def last_incomplete_spree_order(store: nil, only_frontend_viewable: true) | CODE |
| LOW⚡ | core/app/models/concerns/spree/user_methods.rb | 106 | def available_store_credit_total(currency:) | CODE |
| LOW⚡ | core/app/models/concerns/spree/user_methods.rb | 112 | def display_available_store_credit_total(currency:) | CODE |
| 55 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …motions/spec/features/solidus_admin/promotions_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | …tions/spec/features/solidus_admin/orders/index_spec.rb | 10 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | …orefront/templates/spec/requests/carts_ability_spec.rb | 22 | patch cart_path, params: {order: {email: "foo@bar.com"}} | CODE |
| LOW | …quests/solidus_paypal_commerce_platform/orders_spec.rb | 80 | address_line_1: "123 Main St", | CODE |
| LOW | …quests/solidus_paypal_commerce_platform/orders_spec.rb | 103 | "address1" => "123 Main St", | CODE |
| LOW⚡ | core/spec/models/spree/order_spec.rb | 2036 | let(:bill_address) { create(:address, name: "John Doe") } | CODE |
| LOW⚡ | core/spec/models/spree/order_spec.rb | 2037 | let(:ship_address) { create(:address, name: "Jane Doe") } | CODE |
| LOW⚡ | core/spec/models/spree/order_spec.rb | 2043 | it { is_expected.to eq("John Doe") } | CODE |
| LOW⚡ | core/spec/models/spree/order_spec.rb | 2048 | it { is_expected.to eq("Jane Doe") } | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 107 | order.email = "user@example.com" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 180 | order.email = "user@example.com" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 260 | order.email = "user@example.com" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 277 | order.email = "user@example.com" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 371 | user = create(:user, email: "solidus@example.org", bill_address: user_bill_address) | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 467 | order.email = "solidus@example.org" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 539 | order.email = "solidus@example.org" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 567 | order.email = "solidus@example.org" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 597 | order.email = "solidus@example.org" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 690 | order.email = "user@example.com" | CODE |
| LOW | core/spec/models/spree/order/checkout_spec.rb | 699 | order.email = "user@example.com" | CODE |
| LOW | core/spec/lib/spree/core/importer/order_spec.rb | 55 | params = {email: "test@test.com", | CODE |
| LOW⚡ | core/spec/helpers/products_helper_spec.rb | 120 | <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus a ligula leo. Proin eu arcu at ipsum dapibus ullamco | CODE |
| LOW⚡ | core/spec/helpers/products_helper_spec.rb | 120 | <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus a ligula leo. Proin eu arcu at ipsum dapibus ullamco | CODE |
| LOW⚡ | core/spec/helpers/products_helper_spec.rb | 122 | <li>Lorem ipsum dolor sit amet</li> | CODE |
| LOW⚡ | core/spec/helpers/products_helper_spec.rb | 122 | <li>Lorem ipsum dolor sit amet</li> | CODE |
| LOW⚡ | core/spec/helpers/products_helper_spec.rb | 123 | <li>Lorem ipsum dolor sit amet</li> | CODE |
| LOW⚡ | core/spec/helpers/products_helper_spec.rb | 123 | <li>Lorem ipsum dolor sit amet</li> | CODE |
| LOW | …e/lib/spree/testing_support/factories/store_factory.rb | 8 | mail_from_address { "solidus@example.org" } | CODE |
| LOW | admin/spec/features/stock_items_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/properties_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/shipping_methods_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/return_reasons_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/product_spec.rb | 9 | sign_in create(:admin_user, email: "admin@example.com") | CODE |
| LOW | admin/spec/features/store_credit_reasons_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/taxonomies_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/refund_reasons_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/roles_spec.rb | 8 | sign_in create(:admin_user, email: "admin@example.com") | CODE |
| LOW | admin/spec/features/store_credits_spec.rb | 6 | let(:admin) { create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/tax_categories_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/reimbursement_types_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/payment_methods_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/tax_rates_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/zones_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/shipping_categories_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/products_spec.rb | 8 | sign_in create(:admin_user, email: "admin@example.com") | CODE |
| LOW | admin/spec/features/option_types_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/accounts_spec.rb | 7 | user = create(:admin_user, email: "admin@example.com") | CODE |
| LOW | admin/spec/features/accounts_spec.rb | 22 | user = create(:admin_user, email: "admin@example.com") | CODE |
| LOW | admin/spec/features/stores_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/users_spec.rb | 6 | let(:admin) { create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/adjustment_reasons_spec.rb | 7 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/stock_locations/form_spec.rb | 11 | sign_in create(:admin_user, email: "admin@example.com") | CODE |
| LOW | admin/spec/features/stock_locations/index_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| LOW | admin/spec/features/orders/show_spec.rb | 8 | sign_in create(:admin_user, email: "admin@example.com") | CODE |
| LOW | admin/spec/features/orders/show_spec.rb | 56 | fill_in "Name", with: "John Doe" | CODE |
| LOW | admin/spec/features/orders/show_spec.rb | 68 | expect(page).to have_content("John Doe") | CODE |
| LOW | admin/spec/features/orders/show_spec.rb | 82 | fill_in "Name", with: "Jane Doe" | CODE |
| LOW | admin/spec/features/orders/show_spec.rb | 94 | expect(page).to have_content("Jane Doe") | CODE |
| LOW | admin/spec/features/orders/adjustments_spec.rb | 10 | sign_in create(:admin_user, email: "admin@example.com") | CODE |
| LOW | admin/spec/features/orders/index_spec.rb | 6 | before { sign_in create(:admin_user, email: "admin@example.com") } | CODE |
| 41 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | storefront/template.rb | 163 | # This file is always necessary in order to run frontend specs from extensions | COMMENT |
| MEDIUM | …front/templates/spec/solidus_storefront_spec_helper.rb | 23 | # Define the namespace for the helpers. | COMMENT |
| MEDIUM | core/app/models/spree/order_merger.rb | 16 | # Create the OrderMerger | COMMENT |
| MEDIUM | core/app/models/spree/order_taxation.rb | 10 | # Create a new order taxation. | COMMENT |
| MEDIUM | core/app/models/spree/tax_rate.rb | 97 | # This method is used by Adjustment#update to recalculate the cost. | COMMENT |
| MEDIUM | core/app/models/spree/unit_cancel.rb | 33 | # This method is used by Adjustment#update to recalculate the cost. | COMMENT |
| MEDIUM | core/app/models/spree/unauthorized_redirect_handler.rb | 12 | # This method is responsible for handling unauthorized redirects | COMMENT |
| MEDIUM | core/app/models/spree/payment_method.rb | 11 | # This class is not meant to be instantiated. Please create instances of concrete payment methods. | COMMENT |
| MEDIUM | core/app/models/spree/order_cancellations.rb | 3 | # This class represents all of the actions one can take to modify an Order after it is complete | COMMENT |
| MEDIUM | core/app/models/spree/tax/tax_location.rb | 13 | # Create a new TaxLocation object | COMMENT |
| MEDIUM | …p/models/spree/wallet/add_payment_sources_to_wallet.rb | 3 | # This class is responsible for saving payment sources in the user's "wallet" | COMMENT |
| MEDIUM | core/app/models/spree/wallet/default_payment_builder.rb | 3 | # This class is responsible for building a default payment on an order, using a | COMMENT |
| MEDIUM | core/app/models/spree/variant/price_selector.rb | 5 | # This class is responsible for selecting a price for a variant given certain pricing options. | COMMENT |
| MEDIUM | core/app/models/spree/store_selector/legacy.rb | 3 | # This class provides the old behaviour for finding a matching Spree::Store | COMMENT |
| MEDIUM | core/app/models/spree/tax_calculator/shipping_rate.rb | 16 | # Create a new tax calculator. | COMMENT |
| MEDIUM | core/app/models/spree/tax_calculator/default.rb | 14 | # Create a new tax calculator. | COMMENT |
| MEDIUM | …rs/spree/core/controller_helpers/payment_parameters.rb | 5 | # This method handles the awkwardness of how the html forms are currently | COMMENT |
| MEDIUM⚡ | …rs/spree/core/controller_helpers/payment_parameters.rb | 66 | # This method handles the awkwardness of how the html forms are currently | COMMENT |
| MEDIUM | core/spec/models/spree/permission_sets/base_spec.rb | 16 | # Define a subclass that does not override privilege | COMMENT |
| MEDIUM | core/spec/models/spree/permission_sets/base_spec.rb | 27 | # Define a subclass that does not override category | COMMENT |
| MEDIUM | core/spec/models/spree/permission_sets/base_spec.rb | 38 | # Define a subclass that correctly overrides privilege and category | COMMENT |
| MEDIUM | core/lib/spree/core.rb | 63 | # This method is defined within the core gem on purpose. | COMMENT |
| MEDIUM | core/lib/spree/preferences/configuration.rb | 131 | # This method is a specialized version of {.preference} that generates a | COMMENT |
| MEDIUM | admin/lib/solidus_admin/install_tailwindcss.rb | 3 | # This file is a Rails app template and should be loaded with `bin/rails `. | COMMENT |
| MEDIUM | backend/spec/spec_helper.rb | 17 | # This file is copied to ~/spec when you run 'ruby script/generate rspec' | COMMENT |
| MEDIUM | …pec/features/admin/orders/return_payment_state_spec.rb | 21 | # Create a Return Authorization (select the Original Reimbursement type) | COMMENT |
| MEDIUM | …pec/features/admin/orders/return_payment_state_spec.rb | 29 | # Create a Customer Return (select the item from 'Items in Return Authorizations') | COMMENT |
| MEDIUM | sample/spec/spec_helper.rb | 3 | # This file is copied to ~/spec when you run 'ruby script/generate rspec' | COMMENT |
| MEDIUM | sample/db/samples/reimbursements.rb | 23 | # Create a return authorization | COMMENT |
| MEDIUM | sample/db/samples/reimbursements.rb | 35 | # Create a customer return and mark it as received | COMMENT |
| MEDIUM | api/spec/spec_helper.rb | 17 | # This file is copied to spec/ when you run 'rails generate rspec:install' | COMMENT |
| MEDIUM | api/spec/requests/spree/api/stock_items_spec.rb | 115 | # Creating a variant also creates stock items. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | …pree_calculator_returns_default_refund_amount_patch.rb | 8 | inventory_unit.order.adjustments.eligible.non_tax.sum(:amount) * percentage_of_order_total(inventory_unit) | CODE |
| CRITICAL | …end/app/controllers/spree/admin/variants_controller.rb | 19 | @object.prices.build(@object.product.master.default_price.attributes.except("id", "created_at", "updated_at", "d | CODE |
| CRITICAL | …/controllers/spree/admin/payment_methods_controller.rb | 54 | @payment_method_types = Rails.application.config.spree.payment_methods.sort_by(&:name) | CODE |
| CRITICAL | …c/models/solidus_promotions/product_advertiser_spec.rb | 34 | expect(product.master.prices.first.discounts.map(&:label)).to include("Promotion (Because we like you)") | CODE |
| CRITICAL | …/spec/models/solidus_promotions/order_adjuster_spec.rb | 210 | end.not_to change { order.shipments.first.shipping_rates.first.discounts.reject(&:marked_for_destruction?).lengt | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | core/config/i18n-tasks.yml | 125 | ## In these cases you can use the built-in PatternMapper to map patterns to keys, e.g.: | COMMENT |
| MEDIUM | core/config/initializers/friendly_id.rb | 53 | # 'slug', but you can change it if you wish. | COMMENT |
| LOW | core/config/initializers/friendly_id.rb | 83 | # you use this, don't forget to add "babosa" to your Gemfile. | COMMENT |
| LOW | core/config/initializers/friendly_id.rb | 83 | # you use this, don't forget to add "babosa" to your Gemfile. | COMMENT |
| LOW | …re/lib/generators/solidus/install/install_generator.rb | 175 | say_status :skipping, "migrations (don't forget to run rake db:migrate)" | CODE |
| MEDIUM | promotions/lib/solidus_promotions/promotion_map.rb | 6 | # If you have custom rules or actions, you can add them to this hash like so: | COMMENT |
| LOW | …rators/solidus_promotions/install/install_generator.rb | 44 | say "Skipping bin/rails db:migrate, don't forget to run it!" | CODE |
| MEDIUM | api/config/i18n-tasks.yml | 125 | ## In these cases you can use the built-in PatternMapper to map patterns to keys, e.g.: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/spec/lib/tasks/dummy_task_spec.rb | 22 | # random so we just create the same spec twice. We could probably combine this | COMMENT |
| MEDIUM | admin/lib/solidus_admin/preview.rb | 3 | # This module will add all the necessary harness to a ViewComponent::Preview | COMMENT |
| LOW | api/app/controllers/spree/api/products_controller.rb | 58 | # Or just pass in the option types hash: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …rs/spree/core/controller_helpers/payment_parameters.rb | 44 | # Step 1: Gather all the information and ensure all the pieces are there. | COMMENT |
| LOW⚡ | …rs/spree/core/controller_helpers/payment_parameters.rb | 58 | # Step 2: Perform the modifications. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …rs/spree/core/controller_helpers/payment_parameters.rb | 44 | # Step 1: Gather all the information and ensure all the pieces are there. | COMMENT |
| LOW⚡ | …rs/spree/core/controller_helpers/payment_parameters.rb | 58 | # Step 2: Perform the modifications. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/app/models/spree/payment_method.rb | 162 | # Check if given source is supported by this payment method | COMMENT |
| LOW | …rate/20250129061658_add_metadata_to_spree_resources.rb | 17 | # Check if the database supports jsonb for efficient querying | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/lib/spree/testing_support/flaky.rb | 5 | # Usage: | COMMENT |
| LOW | promotions/app/models/solidus_promotions/benefit.rb | 22 | # Usage example | COMMENT |