I suspect the problem is due to links being rendered within the wikify widget and this leading to recursion, though this is merely a suspicion. Perhaps try the example with camel case links disabled?
Another potential approach might look like this:
\widget $link()
\procedure tv-wikilink-tooltip()
<$let newtip={{{[<currentTiddler>get[text]split[]limit[50]join[]]}}} tv-wikilinks="no">
<$wikify text=<<newtip>> name="newtip2" output="text">
<$transclude $variable="newtip2"/>
</$wikify>
</$let>
\end tv-wikilink-tooltip
<$parameters $params="params-var">
<$genesis
$type="$link"
$remappable="no"
$names="[<params-var>jsonindexes[]]"
$values="[<params-var>jsonindexes[]] :map[<params-var>jsonget<currentTiddler>]"
>
<$slot $name="ts-raw"/>
</$genesis>
</$parameters>
\end