Perhaps take a step back and explain what you are wanting to achieve with the hover text... (and let's not discount something Smartly may have introduced... have you tried a "vanilla" dashboard?)
Demonstration of a tile with the variable attribute set as the attribute for an Attribute tile template:
I would suggest paring your code down to a minimal example so you can figure out exactly what the problem is in your case, as the title attribute does not seem to be broken or problematic in general.
Considering that you posted on a Sunday and today, less than one whole day later, is a holiday in the US, where Hubitat is based, I would also give it a bit more time before you consider tagging/bumping your own post. (But I suspect you'll figure out something on your own with the above.)
The variable attribute I mentioned above is a custom attribute on the device, not an actual variable. They should be the same. I think the best way to figure this out is to pare your code down to a minimal, non-working example so you can determine exactly what breaks it for you as I suggested above:
This can't be a minimal working example, as it is not complete code someone else can run. Create an app or driver (whatever your doing or can demonstrate the same thing) that sets an attribute to a value that breaks and does only that, nothing else. Then share that complete code here. Ideally, do this in a way where you gradually build on it to find the specific HTML that causes the problem. I suspect you'll discover something on your own this way, but if not, it will give someone else the best clues.
My HTML was a best guess based on the snippet I can see in your post. Even that can't be everything, otherwise you have malformed HTML (no table), though I tried it both ways and my browser didn't barf.
Is it the attribute itself or just the calie that's the problem?
Also, thinking about this a bit more, you are using string interpolation. Have you verified that nothing getting put in uses characters that would be invalid at that point in the HTML? Testing with hardcoded strings (again, just to test) instead of whatever these values may be would be a good thing to test.
just for $hits and grins i took the minimal device driver i posted above and tried it on my other c8 pro in another location just in case something was corrupted in my local hub..
nope: same issue.. so either something is wrong in my code or there is some issue.
When it doesn't, this is the self-explanatory problem (the fact that above works is probably an artifact of the apparent design choice to only care about this on reload, not when the event itself happens -- I had the dashboard open at that moment and reloaded it at this one):
One of my suggestions above was to have built up this string until it breaks; had you tried this, I suspect you would have discovered this yourself sooner. It's also a good idea to check Logs when something doesn't work as expected, as you'll likely find the same clue I did.
As for the actual issue, I suspect you'll have to either shorten your data or find some other way to display this information if needed (splitting the data among multiple attributes, hosting it at a local endpoint from an app you can manuever the dashboard into displaying somehow, etc.). Given the above, I don't see any demonstrated problem with Hubitat Dashboard or the title attribute as in the original question.
Thanks it the boy who cried wolf ... I see that message all the time so just ignored it as it never really seemed to effect anything. I was looking for a message in the logs when setting the attribute not displaying the dash. Shame it works fine in the device panel.
Ill have to code it as 5 or 10 separate attributes but the nimber cannot be user selectable as it is now sigh.