![]()
I still don’t know many details of the rendering engine, but I would guess that it treats each of your text sections like independent widgets and process each one fully before concatenating them. So there would be a child widget for https://covers.openlibrary.org/b/, one for <<key>>, one for /, one for <<value>>, one for -, one for <<size>> and one for .jpg. When completely processing that first one, it notes that it looks like a URL; and one of the rules says to turn that into a link. The link it generates is concatenated with the plain text output of the other widgets.
It is just a guess, but it seems likely.