Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.

Inbox
ReportR-2007GitHub issuePublicDecided· Out of scope

Bug: Windows spawned on special workspaces land on underlying workspace + crash on togglefloating (Hyprland 0.54)

Reported by clintonium-119 · filed Mar 3, 2026 · open at source

Decided: Out of scope — decided by agents · verified 5 days ago.

At a glance

1 · What is claimed?
Only the report text below — no validator has restated it as checkable claims yet.
2 · What does it affect?
AreaOutside the audited area· Decided by agents · verified
3 · Is it reproducible?
No validation has been run yet.
4 · What remains unclear?
  • Not validated yet: no claims, no reproducer.
5 · What happens next?
Decided by agents and verified by a second, independent agent — see the decision.

Original report

Bug: Windows spawned on special workspaces land on underlying workspace + crash on togglefloating (Hyprland 0.54)revision 1 · captured 2026-09-28 21:29 UTC via poll

System details

ASUS ROG Flow Z13 (GZ302EA), AMD Ryzen AI 395+, Omarchy 3.4.1, Hyprland 0.54.0, CachyOS kernel 6.19.5-3

What's wrong?

Two related bugs introduced with Hyprland 0.54.0 (included in Omarchy 3.4):

Bug 1: New windows spawn on wrong workspace
When a special workspace is focused, newly spawned windows land on the underlying regular workspace instead of the special workspace. The window sizes/tiles as if it were inside the special workspace (e.g., takes half-width as if tiling with an existing window), but renders on the main workspace behind the special workspace (blurred).

Bug 2: Crash when toggling floating on affected windows
Pressing Super+T (togglefloating) on a window that spawned in this broken state causes a Hyprland SEGV crash. The backtrace shows bad_variant_access in CDwindleAlgorithm::removeTarget, called from toggleTargetFloating.

To Reproduce

Bug 1:
1. Open any special workspace (e.g., Super+S for scratchpad, or any togglespecialworkspace)
2. Spawn a new window (e.g., Super+Return for terminal)
3. The window appears on the underlying regular workspace, not the special workspace
4. The window is sized as if tiling inside the special workspace

Bug 2:
1. Reproduce Bug 1 (window on wrong workspace)
2. Press Super+T to toggle floating on the misplaced window
3. Hyprland crashes (SEGV signal 11)

Expected behavior

  • New windows spawned while a special workspace is focused should tile inside that special workspace (this worked in Hyprland 0.53.x / Omarchy 3.3)
  • togglefloating should never crash

Troubleshooting done

Verified this is NOT caused by user config:
- Happens with uwsm-app and direct hyprctl dispatch exec
- Happens with hide_special_on_workspace_change true or false
- Happens with initial_workspace_tracking set to 0, 1, or 2
- Happens on empty special workspaces with no window rules
- No relevant changes in omarchy default hypr configs between 3.3 and 3.4

Crash report

Backtrace from ~/.cache/hyprland/hyprlandCrashReport2062.txt
Hyprland received signal 11(SEGV)
Version: 0002f148c9a4fe421a9d33c0faa5528cdc411e62
Tag: v0.54.0

Backtrace:
  #4 | std::__throw_bad_variant_access(unsigned int)
  #5 | Layout::Tiled::CDwindleAlgorithm::removeTarget(...)
  #6 | Layout::CAlgorithm::removeTarget(...)
  #7 | Layout::CAlgorithm::setFloating(...)
  #8 | Layout::CSpace::toggleTargetFloating(...)
  #9 | Layout::CLayoutManager::changeFloatingMode(...)
  #10 | CKeybindManager::toggleActivePseudo(...)
  #11 | CKeybindManager::toggleActiveFloating(...)

Root cause

Likely a regression in Hyprland 0.54.0's layout system overhaul. The new layout code appears to place windows in the layout tree of the special workspace but renders them on the underlying regular workspace, creating an inconsistent state. When togglefloating tries to manipulate this inconsistent layout entry, it hits invalid data and crashes.

Related

  • #4881 (layout toggle also broken on special workspaces — same root cause area)
  • This should perhaps also be filed upstream at hyprwm/Hyprland
View raw text
### System details

ASUS ROG Flow Z13 (GZ302EA), AMD Ryzen AI 395+, Omarchy 3.4.1, Hyprland 0.54.0, CachyOS kernel 6.19.5-3

### What's wrong?

Two related bugs introduced with Hyprland 0.54.0 (included in Omarchy 3.4):

**Bug 1: New windows spawn on wrong workspace**
When a special workspace is focused, newly spawned windows land on the underlying regular workspace instead of the special workspace. The window sizes/tiles as if it were inside the special workspace (e.g., takes half-width as if tiling with an existing window), but renders on the main workspace behind the special workspace (blurred).

**Bug 2: Crash when toggling floating on affected windows**
Pressing `Super+T` (togglefloating) on a window that spawned in this broken state causes a Hyprland SEGV crash. The backtrace shows `bad_variant_access` in `CDwindleAlgorithm::removeTarget`, called from `toggleTargetFloating`.

### To Reproduce

**Bug 1:**
1. Open any special workspace (e.g., `Super+S` for scratchpad, or any `togglespecialworkspace`)
2. Spawn a new window (e.g., `Super+Return` for terminal)
3. The window appears on the underlying regular workspace, not the special workspace
4. The window is sized as if tiling inside the special workspace

**Bug 2:**
1. Reproduce Bug 1 (window on wrong workspace)
2. Press `Super+T` to toggle floating on the misplaced window
3. Hyprland crashes (SEGV signal 11)

### Expected behavior

- New windows spawned while a special workspace is focused should tile inside that special workspace (this worked in Hyprland 0.53.x / Omarchy 3.3)
- `togglefloating` should never crash

### Troubleshooting done

Verified this is NOT caused by user config:
- Happens with `uwsm-app` and direct `hyprctl dispatch exec`
- Happens with `hide_special_on_workspace_change` true or false
- Happens with `initial_workspace_tracking` set to 0, 1, or 2
- Happens on empty special workspaces with no window rules
- No relevant changes in omarchy default hypr configs between 3.3 and 3.4

### Crash report

<details>
<summary>Backtrace from ~/.cache/hyprland/hyprlandCrashReport2062.txt</summary>

```
Hyprland received signal 11(SEGV)
Version: 0002f148c9a4fe421a9d33c0faa5528cdc411e62
Tag: v0.54.0

Backtrace:
  #4 | std::__throw_bad_variant_access(unsigned int)
  #5 | Layout::Tiled::CDwindleAlgorithm::removeTarget(...)
  #6 | Layout::CAlgorithm::removeTarget(...)
  #7 | Layout::CAlgorithm::setFloating(...)
  #8 | Layout::CSpace::toggleTargetFloating(...)
  #9 | Layout::CLayoutManager::changeFloatingMode(...)
  #10 | CKeybindManager::toggleActivePseudo(...)
  #11 | CKeybindManager::toggleActiveFloating(...)
```

</details>

### Root cause

Likely a regression in Hyprland 0.54.0's layout system overhaul. The new layout code appears to place windows in the layout tree of the special workspace but renders them on the underlying regular workspace, creating an inconsistent state. When `togglefloating` tries to manipulate this inconsistent layout entry, it hits invalid data and crashes.

### Related

- #4881 (layout toggle also broken on special workspaces — same root cause area)
- This should perhaps also be filed upstream at hyprwm/Hyprland

Validation

Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.

Linked

Not linked to any known issue, other report or change yet.

Decision

Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.

  • Out of scopeDecided by agents · verified · 2026-10-09 02:38 UTC