What on earth is causing this error?
New install of Home Assistant, works normally in Firefox, but Chrome is rendering all text shifted by two characters, so "Welcome" becomes "Ucjamkcâ".

Even stranger is that viewing the source in Chrome shows the correct text, and copying and pasting it also results in correct text.

Any ideas?

Update: Changing the CSS font in the browser debugger to remove Roboto fixes the issue. So does uninstalling Roboto from the computer.
Still confused about why this only affected one browser and not the other, though!

@wintrmute Broken font file maybe?

@cinebox I think you're onto something -- changing the CSS font-family from "Roboto, Noto, sans-serif" to "Noto, sans-serif" (or indeed anything apart from Roboto) corrects the text!

However I'm mystified as to how this happens and doesn't effect Firefox. I did try clearing the browser cache on Chrome, to no effect.

@wintrmute @cinebox It's not particularly unsurprising that it doesn't also fail in Firefox; it must be a bug in Chrome's rendering engine.

The rendering of fonts in the web canvas is different I believe from the rendering of the UI elements which I believe would be rendered by CoreText on macOS

@wintrmute @cinebox

A malicious CDN that serves a different font to Chrome? Can you change the browser signature to test it out?

@TheLancashireman @wintrmute since its Google's font I wonder if its a built-in copy that its using thats screwed up
@TheLancashireman @cinebox Chrome on Android works fine, for whatever that is worth.
@wintrmute @cinebox so @DropTableFoxes had this issue and it seems to be caused by an installed system font acting differently for some reason
@wintrmute Try changing from Clejgqf to English 😁
@wintrmute some kind of font issue, maybe webfont parsing?
@migratory Looks like something to do with fonts -- changing the CSS font-family via the debugger to any other font fixes the issue.
I don't know _how_ this can be broken in this way, though! The webfont is loaded from a CDN by the look of it.
I tried clearing the Chrome browser cache to no avail.
@wintrmute @migratory I have had problems like this in the past when on my Linux system, I did system updates that included font updates while Firefox was running. I'd maybe try restarting the computer and see if the problem persists.

@wintrmute The letter "ằ" is U+1EB1 (UTF-8 0xE1 0xBA 0xB1). I don't understand where it comes from. "!" is U+0021 (UTF-8 0x21).

Edit: Maybe "ằ" is made with combining diacritics? These could be the base letters but they don't seem related to "!" either:
"a" = U+0061 (UTF-8 0x61)
"à" = U+00E0 (UTF-8 0xC3 0xA0)
"ă" = U+0103 (UTF-8 0xC4 0x83)

@wintrmute Anti-Google protection measures
@wintrmute I remember seeing a bug like this before in Chrome. Let me see if I can find it.
@wintrmute Here is one from 2019, but there are others that are similar: https://issues.chromium.org/issues/40104990
Chromium

@wintrmute It’s haunted. This is wild. Is this on a clean profile? Or are there some extensions that could interfere?
@gullevek I'm running Ublock Origin Lite on Chrome, and Ublock Origin on Firefox, but that's normally fine about allowing access to fairly standard webfont CDNs
@wintrmute Yeah. Haven’t had problem with uBlock and fonts. And even if the font doesn’t load it wouldn’t look like this. Just the font face is missing
@wintrmute bogus webfont? Try assigning a different one in the F12 tools.

@wintrmute
Maybe the Chrome team has gotten a hang on AI assisted coding, and the tests now expect #Clejgqf as the language of choice with a certain combination of features and font?

All tests are now passing, you should be happy!

@wintrmute I've seen this before, it was a font issue... Will update when I find it

@wintrmute

Everything is 2 characters off...

What the heck could be causing this?

"Mtcptgcu" -ROT2-> "Overview"

EDIT: Solved, local Roboto font was the culprit!

https://reddit.com/comments/1d0yjyf/comment/l5q7wrl?context=3

@nroach44 Bingo! Removing the local Roboto font does fix it.
Soooo weird that it only causes a problem in Chrome though!
@wintrmute Sounds like corrupted font to me.
@jernej__s the font does seem to be the issue, but the strange thing here is that it's only an issue in one browser, not the other. And it's a webfont.

@wintrmute most definitely an issue with the font file, like the font being updated while a program is running, causing the "IDs" of characters to shift on disk but not in memory. I don't know if that is how it works, but that's what I imagine in my head.

I get the same issue when I have an IDE open, and I run brew upgrade which updates the console font; the characters stay in place, but all icons and other NerdFont stuff gets misplaced. So maybe it's macOS-specific, even.

@kytta Interesting theory, although wouldn't that make the error apply to both browsers?
Or be resolved by me restarting the browsers (which I have tried)
@wintrmute on Linux sometimes that's the result of upgrading the font package, I think it happens when the new .ttf has glyphs shifted around in the actual file, but programs still have older tables cached in memory and end up loading the wrong glyphs – or something along those lines anyway, I don't know for sure. I've had it happen like 10 times, like whenever the 'inter' package gets updated
@wintrmute This is an incredible. bug. (The non-determinism of computers was a thing that bothered me to no end even _before_ LLMs. It's only gotten worse now.)