After further inspection I realized that adding degrees in the mini-notation does something different from what I expected. The Sonic Pi chord_degree I was referring to actually returns the chord built on the specific scale degree, picking notes from the original scale but respecting the intervals, thus giving you the classic chord progressions. For the C major scale that would be:
I ii iii IV V vi vii(diminished)
Cmaj Dmin Emin Fmaj Gmaj Amin Bdim
(chord_degree :ii, :c4, :major, 3)
# 62, 65, 69 -> D minor (degree ii of the C major scale)
(chord_degree :vii, :c4, :major, 3)
# 71, 74, 77 -> B diminished (degree vii(dim) of the C major scale)
Both these chords (Dmin and Bdim) fit in the C tonality and are built on the C scale.
What Tidal does instead I think is looking at the degree specified, picking the notes that compose the original chord, applying an offset and adding the same notes on top from an octave above. For example:
d1 $ arpg $ n "c'maj'4ii" # sound "superpiano"
-- same as:
d1 $ arpg $ n "[g5,c6,e6,g6]" # sound "superpiano"
d1 $ arpg $ n "c'maj'4iiiiiii" # sound "superpiano"
-- same as:
d1 $ arpg $ n "[e7,g7,c8,e8]" # sound "superpiano"
If I'm not mistaken these are all C chord inversions, but my knowledge of musical theory is not so good, I might be wrong