かつての RuboCop は condition and return というコードに対して、condition && return にするようデフォルトでサジェスチョンしていた。 このサジェスチョンはおかしく見えたので、結構前に構成を変えてデフォルトで condition and return を受け入れるようにしている。 https://github.com/rubocop-hq/rubocop-rails/pull/224 https://github.com/rubocop-hq/rubocop/pull/7959 このあたり Ruby での演算子の結合順位をおさらいすると、以下のとおり。 && || and, or docs.ruby-lang.org サジェスチョンされるがまま演算子を変えると、結果が変わるサンプルです。 % ruby -e 'p false || true a