Spotted that there are some x.com/ URLs now appearing for the normal tweet links - as a result, oembed will fail and they'll be links.
'twitter.com' => array( 'https://publish.twitter.com/oembed', static::EMBED_TWEET ),
'mobile.twitter.com' => array( 'https://publish.twitter.com/oembed', static::EMBED_TWEET ),
Tested and adding x.com equivalents of the above to oembedServices in \IPS\Text\Parser will sort it out.
'x.com' => array( 'https://publish.x.com/oembed', static::EMBED_TWEET ),
'x.twitter.com' => array( 'https://publish.x.com/oembed', static::EMBED_TWEET ),