Odd choice for "legacy mode" mouse position/event reporting range.
In Terminal::feed_mouse_event vte uses 231 as the maximum unencoded value to report in legacy mode.
} else if (cx <= 231 && cy <= 231) {
/* legacy mode */
len = g_snprintf(buf, sizeof(buf), _VTE_CAP_CSI "M%c%c%c", 32 + cb, 32 + (guchar)cx, 32 + (guchar)cy);
32 + 231
overflows the char to (effectively) 7. The boundary seems odd and is different than other emulators do this.
xterm stops reporting details with 223 but uses '\0' as indication that an overflow occurred.
rxvt-unicode freely wraps without limit.
konsole uses a condition similar to vte but with 223 as highest reported unencoded value which will be encoded as 255 and thus avoids wrapping around.