A client's office manager kept getting a full-window "An Error Occurred - Looks like something went wrong! Please reload the application." in Boomea, a team-chat desktop app. The usual reflex is to reinstall, repair Office, or start blaming the laptop. Ten minutes in the app's log file showed none of that was needed.
It's an Electron app, so check its log first
Boomea, like Slack, Teams (classic), Discord and many others, is an Electron wrapper around a web app. Almost all of them write a main.log under the user's roaming profile:
%APPDATA%\Boomea\logs\main.log
(swap in the app name for others). That log records both the desktop shell and the web page running inside it.
What the log said
Every time the error screen appeared, the log showed the same pair:
[renderer] TypeError: Cannot read properties of undefined (reading 'root_id')
[renderer] Uncaught TypeError: Cannot read properties of null (reading 'getUserAgent')
The [renderer] tag means the JavaScript inside the web app threw an error. The app's error screen caught it and asked for a reload. The second line is fallout from that. It isn't a separate problem.
That rules out a lot:
- Not a Windows crash. Nothing in the Application event log (IDs 1000/1001/1002/1026).
- Not an out-of-date client. The updater's hourly check in the same log reported "latest version: 2.0.1".
- Not resources. Plenty of free RAM and disk.
Compare against everyone else
The quickest way to tell "this machine" from "this account" from "the vendor" is to count the same error across every profile that runs the app. We pushed one small script through our RMM to every workstation:
Get-ChildItem C:\Users -Directory | % {
$f = "$($_.FullName)\AppData\Roaming\Boomea\logs\main.log"
if (Test-Path $f) {
$e = Select-String $f -Pattern "reading '(root_id|id)'"
"$env:COMPUTERNAME $($_.Name): $(@($e).Count) errors"
}
}
The result: 42 occurrences on the one laptop, climbing from a few a month to near-daily. Across 18 other profiles there were 4 in total, none since May. That includes the same Windows account on a different PC, which had zero.
So the trigger is tied to that one user's app data or chat account, not to the product in general. root_id usually means a reply thread whose parent message the app expected but couldn't find.
The fix we tried first: clear the cache, keep the login
Electron apps keep a Chromium cache that can hold outdated copies of the web app's code. We closed the app and deleted only the cache folders, leaving login and settings alone:
Get-Process Boomea -ErrorAction SilentlyContinue | Stop-Process -Force
$r = "$env:APPDATA\Boomea"
'Cache','Code Cache','GPUCache','DawnGraphiteCache','DawnWebGPUCache' |
% { Remove-Item (Join-Path $r $_) -Recurse -Force -ErrorAction SilentlyContinue }
Leave Local Storage, IndexedDB and Session Storage in place, or the user has to sign in again. The app came back up clean.
If it comes back
At that point it's the vendor's bug, most likely one specific message or thread in that account. Send their support:
- the client version,
- the exact error line,
- the timestamps from
main.log,
- what the user clicked right before it happened.
Timestamps plus the action narrow it down to one conversation far faster than "the app keeps crashing."
Takeaways
- For any Electron app, read
%APPDATA%\<App>\logs\main.log before reinstalling anything.
[renderer] errors come from the web app, not from Windows. The PC is almost never the problem.
- Count the error across all profiles and machines. That one comparison tells you whether it's the machine, the account or the vendor.
- Clear the cache folders only; keep the storage folders so the user stays signed in.
The real point here is that ten minutes in a log file beat an afternoon of reinstalling. That is most of what good support actually is. If your team is losing hours to "just reinstall it" troubleshooting, that's what we're for.