JSON formatter expects JSONable dict/list

not already-serialized JSON string

pre-3.0 case of JSON string is handled with a warning.

msgspec5 made this change, but Python APIs that publish JSON weren't updated to match.

closes #7209
Maybe even `nt.assert_equal(len(w), 1)` for error message, like below.