Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
7a9ce01
build: prepare beta.16.1 release identities
HANCORE-linux Oct 2, 2026
e6a2bc0
fix: unblock Bluetooth power through the Omarchy helper
HANCORE-linux Oct 2, 2026
e9280ba
fix: restore the raised date beside the clock
HANCORE-linux Oct 2, 2026
5c49fa2
fix: center badge digits in odd-pixel circles
HANCORE-linux Oct 2, 2026
047bcba
release: repin the beta.16.1 candidate payload
HANCORE-linux Oct 2, 2026
7d896b3
docs: document the beta.16.1 release
HANCORE-linux Oct 2, 2026
935641c
test: expect the Bluetooth power deadline timer in the contract guard
HANCORE-linux Oct 3, 2026
53bd4f3
fix: restore application icons for pinned tray apps
HANCORE-linux Oct 3, 2026
665cff3
fix: restore launcher logos without symbol remapping
HANCORE-linux Oct 3, 2026
65c09b2
fix: render the OpenCode usage mark crisply at the shared icon size
HANCORE-linux Oct 3, 2026
59fda3c
docs: note the tray, launcher and OpenCode fixes
HANCORE-linux Oct 3, 2026
ee24e2f
release: repin the beta.16.1 candidate payload
HANCORE-linux Oct 3, 2026
4774f70
fix: keep the OpenCode usage icon within the AI widget's approved imp…
HANCORE-linux Oct 3, 2026
14fe4a4
release: repin the beta.16.1 candidate payload
HANCORE-linux Oct 3, 2026
7f31759
test: align expectations with the approved beta.16.1 visuals
HANCORE-linux Oct 3, 2026
9d065bc
fix: show the update count beside its icon and drop the tray count badge
HANCORE-linux Oct 3, 2026
ad08300
test: align status expectations with the beta.16.1 count presentation
HANCORE-linux Oct 3, 2026
1aa7bf4
docs: describe the beta.16.1 count presentation
HANCORE-linux Oct 3, 2026
69ea4da
release: repin the beta.16.1 candidate payload
HANCORE-linux Oct 3, 2026
299a4a5
fix: match the status icon spacing to the quick-access group
HANCORE-linux Oct 3, 2026
2c15090
fix: follow Omarchy's any-controller Bluetooth power state
HANCORE-linux Oct 3, 2026
52749f5
fix: make the update count part of the update button
HANCORE-linux Oct 3, 2026
22ab9db
test: align expectations with the beta.16.1 status fixes
HANCORE-linux Oct 3, 2026
deeca9b
release: repin the beta.16.1 candidate payload
HANCORE-linux Oct 3, 2026
27896a5
fix: give the status spacing savings back to the group width
HANCORE-linux Oct 3, 2026
4625bfc
release: repin the beta.16.1 candidate payload
HANCORE-linux Oct 3, 2026
c7b9f07
fix: keep the bar raster phase for recovered V1 center placement
HANCORE-linux Oct 3, 2026
9f1fc90
release: repin the beta.16.1 candidate payload
HANCORE-linux Oct 3, 2026
981f5e3
docs: bind the beta.16.1 readiness record to the candidate
HANCORE-linux Oct 3, 2026
84c50f4
docs: date the beta.16.1 changelog entry
HANCORE-linux Oct 3, 2026
3b35049
build: update beta.16.1 release archive checksum
HANCORE-linux Oct 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 67 additions & 0 deletions .github/release-notes/v0.1.1-beta.16.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# 0.1.1-beta.16.1

Beta.16.1 fixes Bluetooth power and the raised date, restores tray and launcher
icons, and simplifies the update and tray count presentation.

## Fixes

- Bluetooth power uses Omarchy's power helper to turn a soft-blocked radio on
and to turn it off again (#68). Repeat clicks while a power request is pending
do not dispatch a reverse action; the display follows observed BlueZ state.
- The smaller date is raised beside the clock again, as before Beta.16. The
clock keeps its shared baseline.
- Show the update count beside the update icon instead of in a badge, and remove
the tray count badge. Both counts remain in the tooltips; vertical bars show
the update count only there.
- Restore application icons for pinned tray apps, with a fallback when no icon is available.
- Restore the selected launcher logo, including Omarchy, Shibumi, and Dragon, without symbol remapping.
- Render the OpenCode usage mark crisply at the size of the other provider icons, so its usage fill reads clearly.

## Compatibility

The 24-plugin suite and transactional installation model are unchanged.
Beta.16.1 retains Beta.16's pinned Omarchy and Omarchy Settings `4.0.4-1`
package and Omarchy `v4.0.4` source baselines with Quickshell `0.3.1-1`.
It does not update Omarchy.

## Install and update

For a new source installation, use the release tag:

```bash
sudo pacman -S --needed python jq curl networkmanager power-profiles-daemon upower xdg-utils libnotify wl-clipboard ttf-material-symbols-variable ttf-jetbrains-mono-nerd-basic noto-fonts-cjk adwaita-fonts
git clone https://github.com/HANCORE-linux/Shibumi-Shell.git
cd Shibumi-Shell
git checkout v0.1.1-beta.16.1
./scripts/shibumi-suite install --yes
```

Update an admitted Beta.16 installation from its existing checkout:

```bash
git fetch --tags
git checkout v0.1.1-beta.16.1
./scripts/shibumi-suite update --dry-run
./scripts/shibumi-suite update --yes
./scripts/shibumi-suite status
```

The exact Beta.16 tag and release-merge checkouts are admitted predecessors.
Older supported identities retain their exact revision and payload checks;
an arbitrary checkout with the same version is not admitted. Do not install
or update from `main`, or delete lifecycle state to bypass admission. See the
[installation and recovery guide](https://github.com/HANCORE-linux/Shibumi-Shell/blob/v0.1.1-beta.16.1/docs/install.md).
AUR publication remains deferred; use the source workflow above.

## Downgrade warning

**Downgrade:** Beta.15.4 and older cannot read V1 layouts with parked widgets
(`order.parked`). They reset the V1 order, roles and splits to defaults; other
settings and V2 stay. `uninstall --keep-settings` does not prevent this. Before
downgrading, back up `~/.config/omarchy/shell.json` and `~/.local/state/shibumi/`.
Details: [Backup before downgrade](https://github.com/HANCORE-linux/Shibumi-Shell/blob/v0.1.1-beta.16.1/docs/install.md#backup-before-downgrade).

## Known limits

- The power helper affects all Bluetooth radios, not only the displayed
adapter, and cannot clear a hardware rfkill block.
35 changes: 23 additions & 12 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -947,22 +947,33 @@ Current Phase 2 foundation:
`BluetoothBackendAdapter`. The adapter keeps native BlueZ device QObjects
private and publishes detached primitive records carrying the device path,
address, adapter identity, and monotonic device/adapter incarnations. Every
mutation resolves exactly one current entity immediately before dispatch;
stale, malformed, ambiguous, unavailable, or state-conflicting requests
return typed failures and dispatch nothing. Beta.13 deliberately retains one
`omarchy-bluetooth-device` helper path per device action and never invokes a
native device method in parallel. Because the 4.0.2 helper accepts only an
action/address pair, production fails closed with more than one adapter; the
residual replacement race after dispatch remains explicit Step-4B helper
debt. Callers inspect `.ok` explicitly. The
adapter also owns pending state and Bluetooth-audio handoff; no complete
Omarchy Bluetooth UI component is instantiated as a backend;
device mutation resolves exactly one current entity immediately before dispatch;
stale, malformed, ambiguous, unavailable, or state-conflicting device requests
return typed failures and dispatch nothing. Device actions retain one
`omarchy-bluetooth-device` helper path and never invoke a native device method
in parallel. Because the helper accepts only an action/address pair, device
actions fail closed with more than one production adapter; the residual
replacement race after dispatch remains explicit Step-4B helper debt.
Device callers inspect `.ok` explicitly. The adapter also owns pending state
and Bluetooth-audio handoff; no complete Omarchy Bluetooth UI component is
instantiated as a backend. Global radio power is a separate host action:
one argv-only detached `omarchy-bluetooth-power on|off` request applies
Omarchy's rfkill persistence policy to all Bluetooth radios. It can clear a
soft block, not a hardware block. Bar, panel, and IPC share this power path;
no direct `adapter.enabled` write or helper `toggle` is used. BlueZ's observed
`adapter.enabled` remains authoritative for the displayed state, not dispatch
success. Repeat clicks are ignored while the adapter-bound target is pending;
observing that target, adapter loss/replacement, a dispatch exception, or the
deadline clears it. Power-off stops owned discovery;
- each output owns only its V1 Bluetooth presentation and lazy Shibumi device
panel. The process-wide service leases discovery across open panels and owns one
symmetric six-method `omarchy.bluetooth` IPC target. Presentation has no
Bluetooth/PipeWire import, process, timer, or file watcher; the service facade
owns one bounded discovery-reconciliation timer and the adapter owns four
bounded lifecycle timers. While a requested Discovery start is still pending
owns one bounded discovery-reconciliation timer and the adapter owns five
bounded lifecycle timers, including a separate one-shot 20-second power-state
deadline. This clears pending state, not the detached helper process; late
helper effects remain possible. It is not a process timeout or cancellation.
While a requested Discovery start is still pending
during teardown, at most one temporary 30-second retry/expiry timer per
native adapter survives the facade. Top mapping, adapter/radio
reactivity, discovery ownership/teardown, both backend load orders, and IPC
Expand Down
20 changes: 20 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
# Changelog

## [0.1.1-beta.16.1] - 2026-10-04

### Fixed

- Turn Bluetooth on after an rfkill soft block, and off again, through
Omarchy's power helper (#68). Ignore repeat clicks while a power request
is pending instead of dispatching a reverse action.
- Raise the smaller date beside the clock again, as before Beta.16.
- Show the update count beside the update icon instead of in a badge, and remove
the tray count badge. Both counts remain in the tooltips; vertical bars show
the update count only there.
- Restore application icons for pinned tray apps, with a fallback when no icon is available.
- Restore the selected launcher logo, including Omarchy, Shibumi, and Dragon, without symbol remapping.
- Render the OpenCode usage mark crisply at the size of the other provider icons, so its usage fill reads clearly.

### Changed

- Admit the exact Beta.16 tag and merge checkouts as update predecessors,
retaining strict payload and lifecycle checks.

## [0.1.1-beta.16] - 2026-10-02

### Added
Expand Down
12 changes: 7 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ process.</sub></p>
[Documentation](docs/README.md) ·
[Release status](docs/release-readiness.md)

`0.1.1-beta.16` is published as a GitHub prerelease. AUR publication is
`0.1.1-beta.16.1` is published as a GitHub prerelease. AUR publication is
deferred; use the source installation below. See the
[release notes](.github/release-notes/v0.1.1-beta.16.md) for changes and the
[release notes](.github/release-notes/v0.1.1-beta.16.1.md) for changes and the
downgrade warning.
The current pinned host contracts use Omarchy and Omarchy Settings `4.0.4-1`
(source tag `v4.0.4`, revision `c668141e`) with Quickshell `0.3.1-1`; the
Expand Down Expand Up @@ -82,19 +82,21 @@ Install from source using the release tag:
sudo pacman -S --needed python jq curl networkmanager power-profiles-daemon upower xdg-utils libnotify wl-clipboard ttf-material-symbols-variable ttf-jetbrains-mono-nerd-basic noto-fonts-cjk adwaita-fonts
git clone https://github.com/HANCORE-linux/Shibumi-Shell.git
cd Shibumi-Shell
git checkout v0.1.1-beta.16
git checkout v0.1.1-beta.16.1
./scripts/shibumi-suite install --yes
```

Update an admitted source installation, including Beta.15.4, to Beta.16.
Update an admitted Beta.16 source installation to Beta.16.1.
Exact predecessor identities, not a version range, govern admission; see the
[update guide](docs/install.md#update).

```sh
cd Shibumi-Shell
git fetch --tags
git checkout v0.1.1-beta.16
git checkout v0.1.1-beta.16.1
./scripts/shibumi-suite update --dry-run
./scripts/shibumi-suite update --yes
./scripts/shibumi-suite status
```

Do not install or update from `main`. If you previously installed from `main`, run `./scripts/shibumi-suite uninstall --keep-settings --yes` from that exact checkout before switching to a tag.
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.1.1-beta.16
0.1.1-beta.16.1
1 change: 1 addition & 0 deletions contracts/backend-boundary-v1.json
Original file line number Diff line number Diff line change
Expand Up @@ -395,6 +395,7 @@
{"value":"omarchy-audio-output-sink","count":1,"category":"omarchyBackend","owner":"hancore.shibumi.audio","capability":"audio","backend":"omarchy.audio","removalStep":"Step 4A","reason":"Resolve the effective physical output before native volume and mute mutations."},
{"value":"omarchy-battery-status","count":1,"category":"omarchyBackend","owner":"hancore.shibumi.power-state","capability":"battery-ac","backend":"omarchy.power","removalStep":"Step 6","reason":"Remove the Omarchy battery helper after UPower is authoritative."},
{"value":"omarchy-bluetooth-device","count":1,"category":"omarchyBackend","owner":"hancore.shibumi.bluetooth","capability":"bluetooth","backend":"omarchy.bluetooth","removalStep":"Step 4B","reason":"Beta.13 resolves the current device and adapter incarnation immediately before this single helper dispatch and rejects a multi-adapter production inventory because the Omarchy 4.0.2 helper carries only action/address, not controller path; closing the residual post-dispatch helper race remains a separately scoped native-action cutover."},
{"value":"omarchy-bluetooth-power","count":1,"category":"omarchyAction","owner":"hancore.shibumi.bluetooth","capability":"bluetooth","reason":"Explicit global radio power requests use the host rfkill persistence policy through one argv-only detached action; BlueZ remains the native state source."},
{"value":"omarchy-capture-screenrecording","count":1,"category":"omarchyBackend","owner":"hancore.shibumi.status","capability":"recording-voxtype","backend":"omarchy.recording","removalStep":"Step 8","reason":"Move recording actions behind the typed Shibumi status service."},
{"value":"omarchy-cmd-missing","count":1,"category":"hostIntegration","owner":"quattro.host","capability":"bar-host-routing"},
{"value":"omarchy-cmd-present","count":4,"category":"hostIntegration","owner":"quattro.host","capability":"bar-host-routing"},
Expand Down
63 changes: 63 additions & 0 deletions contracts/lifecycle-predecessors-v1.json
Original file line number Diff line number Diff line change
Expand Up @@ -751,9 +751,72 @@
],
"settingsStorageVersion": 1,
"sourceRevisions": [
"4840482ec0e06a2ebd478120833d4fae1f30889e",
"05548c8d9ffdf0d37962d6e423e2a0dc21b8cd91",
"package:0.1.1-beta.16"
],
"suiteVersion": "0.1.1-beta.16"
},
{
"id": "public-beta.16.1",
"payloadDigest": "46f72fd02b00dbe34326dbbdf6e95556e7e35641a4d597c5281bc2beed94a974",
"pluginDigests": {
"hancore.shibumi.bar": "8bd1ac4ce7ac2eea83f83c1e2a1e87257d1db41e06ce93f17c88849e04939cb4",
"hancore.shibumi.state": "3aed3c7a3cb92afb66d5f12d7d5c773f1988d5f11c933da187f8b31c68179da8",
"hancore.shibumi.control-center": "730ab1517cf0fe52ec5409203bdeb03661f8440c50a6b8ba8baf6563a4f23ec8",
"hancore.shibumi.reactor": "347d5997e664581da56104a636af44d4675f37d311bb058b9624d8c9f6121322",
"hancore.shibumi.telemetry": "f52aff2aa784a11eab6edb12b5c3610986a01284f98844293e5cc8e1bb2963b0",
"hancore.shibumi.power-state": "f2f664b00436695dbd47edf9b8d7da46d0f4f7fbe740045023479ed707872a50",
"hancore.shibumi.workspaces": "de2a198c2a1fcbada535f046b91f37e5f5ca517ef4a0e3c6f570baf7930699c5",
"hancore.shibumi.update-center": "4f028d0c82cbe0d85c74799a77c12e7e26acc9bd4dcda6f7c14fc40a5f991a86",
"hancore.shibumi.status": "1f16174c157c70e6b05a7ff7c00339090a1d4c2d051a4bd389cde1de6e296fe0",
"hancore.shibumi.memory": "f6fbd0838180fac0740fd27d22f9fe1812528f45210e51fa9984f479f42da8f9",
"hancore.shibumi.cpu": "bb0d1df3404525a45c55fffaa2091a8340ae3d9536f7edab6e6bd56759f7999e",
"hancore.shibumi.audio": "20a3f204e0c55b6c9aff18d12e9627b91f3710596e3d1c2e00b08aaa0f3e3e4c",
"hancore.shibumi.ai": "38e41e443b34c888107bc64e654adef9982130067c52702660f3960450a50959",
"hancore.shibumi.center": "fe792ff696628b9b6ce324e0767d6ccabc6bca98a0529f9c2d7d2a58f36761a6",
"hancore.shibumi.media": "e67e51d2629520b6e7a4578940885b8ff2245798254af4f8ea39ce7b8d2d8c82",
"hancore.shibumi.quick-access": "4ce7d5575e758ddb3cec856672e0717f95dd494c5a4488f61e0269e534697502",
"hancore.shibumi.network": "9ee7d1725749da03e9480529bbfb22c557f6f7da534900c280f0cb031492a41d",
"hancore.shibumi.battery": "59f67a3358c5e419bb98e474a867b53630cf1ee0bcd61c44d59c5775d8c6933f",
"hancore.shibumi.brightness": "80ba42a406f9a24b675ed2daf83555e7f1da6e0442246ae093bb7800be1a8b91",
"hancore.shibumi.power-profile": "6d71528dc88132dfc2c33b22437427c9210df74cdc123dfcdd574b4a3a07113e",
"hancore.shibumi.bluetooth": "f61a18cd1a47be8c820b731ddb9156c6311c02dcafe46533e798f5adba147fbb",
"hancore.shibumi.temperature": "72ac530bd97cf092349351a6c63e2ef78a9446053e7add71cfe72282704a76b4",
"hancore.shibumi.gpu": "a460b94a8f0142ce6da9318493a6343f7bdefcbd1999db3fe73c46d5ff59fa9e",
"hancore.shibumi.storage": "eb97c939b77fc88a17066bfa72ea4a1f9a0c7279d164afbc15b176f767837299"
},
"pluginIds": [
"hancore.shibumi.bar",
"hancore.shibumi.state",
"hancore.shibumi.control-center",
"hancore.shibumi.reactor",
"hancore.shibumi.telemetry",
"hancore.shibumi.power-state",
"hancore.shibumi.workspaces",
"hancore.shibumi.update-center",
"hancore.shibumi.status",
"hancore.shibumi.memory",
"hancore.shibumi.cpu",
"hancore.shibumi.audio",
"hancore.shibumi.ai",
"hancore.shibumi.center",
"hancore.shibumi.media",
"hancore.shibumi.quick-access",
"hancore.shibumi.network",
"hancore.shibumi.battery",
"hancore.shibumi.brightness",
"hancore.shibumi.power-profile",
"hancore.shibumi.bluetooth",
"hancore.shibumi.temperature",
"hancore.shibumi.gpu",
"hancore.shibumi.storage"
],
"settingsStorageVersion": 1,
"sourceRevisions": [
"package:0.1.1-beta.16.1"
],
"suiteVersion": "0.1.1-beta.16.1"
}
]
}
1 change: 1 addition & 0 deletions contracts/package-runtime-v1.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
"wl-copy": "wl-clipboard"
},
"requiredHostCommands": {
"omarchy-bluetooth-power": "Bluetooth radio power and persistent rfkill policy",
"omarchy-bluetooth-device": "Retained Beta.13 Bluetooth device mutation path",
"omarchy-audio-output-set-default": "Retained Bluetooth audio-route compatibility path"
},
Expand Down
2 changes: 1 addition & 1 deletion contracts/plugin-suite-v1.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"schemaVersion": 1,
"suiteId": "hancore.shibumi",
"suiteVersion": "0.1.1-beta.16",
"suiteVersion": "0.1.1-beta.16.1",
"settingsStorageVersion": 1,
"hostContract": "contracts/host-facade-v1.json",
"retiredPlugins": [
Expand Down
2 changes: 1 addition & 1 deletion contracts/v2-feature-evidence.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
{"id":"tray.drawer","implementation":["hancore.shibumi.status/TrayDrawerPanel.qml"],"tests":["tests/status-plugin-smoke.qml","tests/status-plugin-regression.sh"]},
{"id":"tray.item-menu","implementation":["hancore.shibumi.status/TrayAppMenuPanel.qml"],"tests":["tests/tray-app-menu-smoke.qml","tests/status-plugin-regression.sh"]},
{"id":"launcher.logo-variants","implementation":["hancore.shibumi.state/ShibumiConfig.js","hancore.shibumi.control-center/BarWidget.qml"],"tests":["tests/shibumi-config-regression.qml","tests/control-center-smoke.qml"]},
{"id":"updates.badge-controls","implementation":["hancore.shibumi.update-center/UpdateCenterPanel.qml"],"tests":["tests/update-center-ui-smoke.qml","tests/update-center-regression.sh"]},
{"id":"updates.badge-controls","implementation":["hancore.shibumi.update-center/UpdateCenterPanel.qml","hancore.shibumi.update-center/BarWidget.qml"],"tests":["tests/update-center-ui-smoke.qml","tests/update-center-regression.sh"]},
{"id":"updates.shell-lifecycle","implementation":["scripts/shibumi_suite/runtime.py"],"tests":["tests/shibumi-suite-quattro-runtime.sh","tests/test_shibumi_suite.py"]},
{"id":"control-center.v2-capabilities","implementation":["hancore.shibumi.control-center/ControlSettings.qml","hancore.shibumi.control-center/BarFunctionsPage.qml"],"tests":["tests/control-center-smoke.qml","tests/control-center-regression.sh"]},
{"id":"output.lifecycle-recovery","implementation":["hancore.shibumi.bar/core/WindowRecovery.qml","hancore.shibumi.bar/core/BarPanel.qml"],"tests":["tests/bar-host-registry-smoke.qml","tests/contract-regression.sh"]},
Expand Down
2 changes: 1 addition & 1 deletion contracts/v2-feature-port.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
{"id":"tray.drawer","decision":"port","owner":"hancore.shibumi.status","strategy":"official-tray-owner-presentation","phase":4},
{"id":"tray.item-menu","decision":"port","owner":"hancore.shibumi.status","strategy":"official-tray-owner-presentation","phase":4},
{"id":"launcher.logo-variants","decision":"port","owner":"hancore.shibumi.control-center","strategy":"presentation","phase":5},
{"id":"updates.badge-controls","decision":"port","owner":"hancore.shibumi.update-center","strategy":"official-update-actions","phase":4},
{"id":"updates.badge-controls","decision":"port","owner":"hancore.shibumi.update-center","strategy":"bar-count-controls","phase":4},
{"id":"updates.shell-lifecycle","decision":"port","owner":"shibumi-suite","strategy":"transactional-source-update","phase":4},
{"id":"control-center.v2-capabilities","decision":"port","owner":"hancore.shibumi.control-center","strategy":"user-directed-redesign","phase":5},
{"id":"output.lifecycle-recovery","decision":"port","owner":"hancore.shibumi.bar","strategy":"native-quattro-lifecycle","phase":6},
Expand Down
2 changes: 1 addition & 1 deletion docs/architecture/quattro-compatibility.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ by this evidence.

## Current pinned host

Beta.16 targets the exact official Omarchy 4.0.4 baseline. These pins are not
Beta.16.1 retains Beta.16's exact official Omarchy 4.0.4 baseline. These pins are not
physical release acceptance. The historical Beta.13 physical host acceptance
below applies to its recorded single-output Omarchy 4.0.3 setup:

Expand Down
Loading
Loading