ActiveRecord is the primary database interface rails provides. At the time of writing the edgeguides have no references to Arel at all (google search link). And the 7.1.1 docs have exactly one Arel method documented: Arel.sql (docs link).
At Rails World 2023 there was a question during the Rails Core AMA about if Arel table would ever be a public API, and the answer from Jeremy Daer was a definitive no. (youtube link - Rails Core AMA (t=17:38)).
I realize that this is a bit of a re-hashing, and that this discussion has been had at least twice before (1, 2), but given the definitive comment about Arel table, I’m confused why Arel is included at all. That one seemingly public Arel.sql method is jumping down a layer of abstraction that new people have not been introduced to. If the core team considers Arel to be a private API, then shouldn’t it be hidden? For example by handling it in the ActiveRecord query api (be that unsafe_sql_order/unsafe_sql_pluck or even a ActiveRecord.sql wrapper method)?