という話があった。
確かにいくつかそういう記事も見つかった。

だけどrailsに関して言えば、application.rbでrailsをrequireした後にBundler.requireをしているので、気にしなくて良さそうにも見える。
rubocopのBundler/OrderedGemsも気にしていなそう)

だが、心配なので一応検証してみた。

Gemを用意

$ cd ~/Documents/Temporary/
$ bundle gem defined_rails_checker
$ cd defined_rails_checker/

$ vim defined_rails_checker.gemspec 
# TODOを適当に埋める

$ vim lib/defined_rails_checker.rb
puts "###### defined rails checker"
if defined?(Rails)
  puts "OK! I love rails."
else
  raise "NO!!! I need rails!"
end

アプリケーション

$ vim Gemfile
# frozen_string_literal: true

source 'https://rubygems.org'

ruby '2.7.3'

gem 'defined_rails_checker', path: '~/Documents/Temporary/defined_rails_checker'
gem 'rails'

$ bundle
$ ./bin/rails s
###### defined rails checker
OK! I love rails.

というわけで、大丈夫そうだった。

以下のような行儀の悪い運用スクリプトとかがいて、
それをrunnerじゃなく、単体で実行したい場合とかには気にする必要がありそう?
(そんなケースはあるのか??)

# ActiveSupport使いたいだけだけど、全部読み込む!
Bundler.require