make OR in journey patterns compile to a valid regular expression
Pretty-print request params on exception page
Ensure numericality validations work with mutation

The detection of in-place changes caused a weird unexpected issue with
numericality validations. That validator (out of necessity) works on the
`_before_type_cast` version of the attribute, since on an `:integer`
type column, a non-numeric string would type cast to 0.

However, strings are mutable, and we changed strings to ensure that the
post type cast version of the attribute was a different instance than
the before type cast version (so the mutation detection can work
properly).

Even though strings are the only mutable type for which a numericality
validation makes sense, special casing strings would feel like a strange
change to make here. Instead, we can make the assumption that for all
mutable types, we should work on the post-type-cast version of the
attribute, since all cases which would return 0 for non-numeric strings
are immutable.

Fixes #17852
Merge pull request #17861 from kirs/pp-request-params

Pretty-print request params on exception page
Fix value extracted from negative integers for PostgreSQL.

Fixes: https://github.com/rails/rails/issues/17856.
Merge pull request #17863 from tgxworld/fix_extracated_default_value_for_negative_integers

Fix value extracted from negative integers for PostgreSQL.
tests, use public API to verify default parsing. #17863, #17856
tests, run numeric default tests for every adapter.
Merge pull request #17827 from rkh/rkh-fix-or-pattern

Fix OR in Journey patterns
tests, favor public API over inspecting columns where possible.

This is a follow up to https://github.com/rails/rails/commit/07786c5e75a7b0afdf318063510af6b475e3e04c
and https://github.com/rails/rails/commit/cd2596f55e88fe659592612a793c4f4aa723c9be