Adom Hydrogen
Public Made by Adomby adom
The whole Adom experience as one signed native app: your editor, your AI agent, and the full electronics design toolchain, running locally on your own machine.
Update banner: one dismiss hides every later version for the whole session (arav-rog sat on 1.0.201 while 1.0.257, 1.0.274, 1.0.280 were staged); fixed in 1.0.281, banner test added to preprod
Reported by John on arav-rog (2026-09-08): Settings > updater said an update was found "and there is a banner", but no banner was on screen. arav-rog was on 1.0.201 (built Sep 4). Its log shows the updater staging 1.0.257, then 1.0.274, then 1.0.280 over a day and a half, each "staged + verified, ready for instant apply", and the user never saw any of them.
Diagnosis, live through the control API on arav-rog (no restart, evidence preserved):
GET /updater/status: update_available true, staged_version 1.0.280, tier insiders. Backend fine./eval-inon the main window: App.svelte mounted (main, nav, dock present),__TAURI_INTERNALS__present,.update-bannerabsent.- A listener registered by hand via
plugin:event|listenfires on an in-pageupdater-statusemit; the banner component does not react to the same emit. - Emitting a status with
below_floor:true(the path that ignores dismiss) rendered the red floor banner immediately, and restoring the real status left the normal banner on screen ("1.0.201, version 1.0.280 is ready, restart to apply").
So the component was mounted and listening, and dismissed was true: someone clicked × once (on 1.0.257) and let dismissed = false // hide for this session only is a plain process-lifetime boolean. A desktop session lives for days, so one × hides every later version until the app restarts. Apply-on-launch still updates the box at the next launch, so it is not "never", but a long-lived session never sees the bar again and the settings copy claims a banner exists.
Fix (Hydrogen 1.0.281): the × remembers WHICH latest_version it dismissed; a newer version shows the bar again, and the same version returns after 24 h. The floor still cannot be dismissed. The pre-production release test now has a banner phase (skill insiders-tier-preprod-test): fake-status emit must render the bar, × then a newer status must re-render it, and a hand listener must see the backend's updater-status after POST /updater/check.
Verification on a 1.0.280 box (ConfRoomROG) confirmed the component wiring works when not dismissed: fake status rendered "Hydrogen 1.0.280, version 9.9.9-banner-test INSIDERS is available", restore hid it.