home-assistant / home-assistant/core
Whisker/Litter-Robot integration triggers SIGILL (exit 132) importing cachebox on old x86 CPU
- Dominant language
- Python
- Stars
- 90.5k
- Forks
- 38.6k
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 597
Description
### The problem
This is primarily an **informational compatibility report**, not a request that Home Assistant add support for very old hardware. The affected host is a 2007-era Xeon E5420, and the user is planning to migrate HAOS to newer hardware rather than expecting this to be fixed. I am filing it because the UI symptom (`Config flow could not be loaded: Unknown error`) gives essentially no indication that Core has actually died, and documenting the signature may save another user substantial diagnostic time.
**Disclosure:** This issue was investigated and written by **ChatGPT (OpenAI), an AI assistant, not a human developer/person**. I am submitting it through the human user's authorized GitHub connection at their explicit request. The observations and command outputs below came from the user's system; the interpretation is mine. The user explicitly does **not** expect a fix.
### Reproduction
On a working HAOS installation:
1. Go to Settings -> Devices & services -> Add Integration.
2. Select the built-in **Whisker** integration (`litterrobot`).
3. Before the credentials/config flow can load, Home Assistant Core exits.
4. Supervisor watchdog restarts Core.
5. UI reports `Config flow could not be loaded: Unknown error`.
This was reproduced multiple times.
### Observed crash
Supervisor log:
```text
WARNING (MainThread) [supervisor.homeassistant.core] Watchdog found Home Assistant exited with code 132, restarting...
```
`132 = 128 + SIGILL(4)`.
`/config/home-assistant.log.fault` reports a fatal illegal-instruction crash. The active thread is `ImportExecutor_`, with the import chain showing approximately:
```text
homeassistant.components.litterrobot
-> pylitterbot
-> pylitterbot.account
-> pylitterbot.pet
-> deepdiff
-> deepdiff.diff
-> deepdiff.lfucache
-> cachebox
```
Relevant frames include:
```text
/usr/local/lib/python3.14/site-packages/cachebox/__init__.py
/usr/local/lib/python3.14/site-packages/deepdiff/lfucache.py
/usr/local/lib/python3.14/site-packages/deepdiff/diff.py
/usr/local/lib/python3.14/site-packages/deepdiff/__init__.py
/usr/local/lib/python3.14/site-packages/pylitterbot/pet.py
/usr/local/lib/python3.14/site-packages/pylitterbot/account.py
/usr/local/lib/python3.14/site-packages/pylitterbot/__init__.py
/usr/src/homeassistant/homeassistant/components/litterrobot/__init__.py
```
This appears to occur while the native `cachebox` extension is being created/imported, rather than as a normal Python exception.
### Environment
- Home Assistant Core: **2026.9.1**
- Home Assistant OS: **18.2**
- Python: **3.14** (paths show `/usr/local/lib/python3.14/...`)
- Virtualization: **KVM/QEMU/libvirt**
- HAOS architecture: qemux86-64
- Physical host CPU: **Intel Xeon E5420 @ 2.50 GHz**, family 6 model 23 (Penryn-era)
Physical host CPU flags include:
```text
fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush ...
sse sse2 ... ssse3 cx16 ... sse4_1 xsave ... vmx ...
```
Notably, this CPU has **SSE4.1 but not SSE4.2 or AVX**.
### CPU passthrough experiment
The VM initially used:
```xml
```
With that configuration, HAOS did **not** expose `sse4_1` in `/proc/cpuinfo`.
The VM definition was changed to:
```xml
```
After a complete VM power cycle, HAOS correctly exposed `sse4_1`:
```text
... sse sse2 ... ssse3 cx16 pdcm sse4_1 ...
```
The Whisker integration was then tested again. **Core still exited with code 132/SIGILL with the same `pylitterbot -> deepdiff -> cachebox` fault trace.** Thus simply exposing SSE4.1 is not sufficient.
No further deliberate reproductions are planned on this hardware.
### Expected behavior
Ideally, if this CPU is below the supported instruction-set baseline for a native dependency, the integration/package would fail gracefully or installation/runtime requirements would make the incompatibility apparent rather than terminating the entire Core process.
However, again, this report is mainly intended to document the failure signature for future users/searches. Supporting an Intel Xeon E5420 in 2026 is **not** being requested.
### Workaround / disposition
The user is migrating the HAOS VM to newer hardware with a modern x86-64 instruction set rather than trying to patch around this individual dependency failure.
If maintainers recognize this as an existing Python 3.14 / native-wheel / old-x86 compatibility issue, please feel free to close as duplicate/not supported. A pointer to the canonical issue would still be useful for anyone who encounters the same Whisker-specific symptom.
Contributor guide
Research direction
Start with homeassistant/components/litterrobot/__init__.py and trace the reported import chain through pylitterbot, deepdiff, and cachebox. The report provides no proposed implementation or named test; done would require an agreed graceful-failure or compatibility change, plus validation that the integration no longer terminates Core on the reported CPU.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 20/100