Skip to content

Home dashboard favourites and shortcuts wiped when the welcome banner is dismissed after a restart #54822

Description

@BadFlo

Describe the problem

After updating to Core 2026.10.1 (frontend 20260930.3, Home Assistant OS), my Home dashboard lost its favourites and shortcuts. I had dismissed the welcome banner long ago (welcome_banner_dismissed: true) and had 7 favourites plus 7 summary shortcuts. Right after the update restart the banner appeared again; I clicked it and used the dismiss action in the dialog. Afterwards the Home dashboard had no favourites and no custom shortcuts.

/config/.storage/frontend.system_data, key home:

  • Backup taken a few minutes before the update: welcome_banner_dismissed: true, favorite_entities (7 entries), shortcuts (7 entries).
  • After the dismiss click: only welcome_banner_dismissed: true.

I restored the key from the backup with frontend/set_system_data.

What I think happens

src/panels/home/ha-panel-home.ts:

  • _showBanner only returns true when this._config.welcome_banner_dismissed is falsy. Since the stored value was true, the banner showing at all means the panel's _config was empty at that moment.
  • _config is empty either before the initial frontend/get_system_data load finishes, or when that load is rejected: homeResult.status === "rejected" sets this._config = {} (only a console.error).
  • _learnMore() then calls saveFrontendSystemData(connection, "home", { ...this._config, welcome_banner_dismissed: true }). With an empty _config this replaces the whole stored object, so favorite_entities, shortcuts, hide_welcome_message and hide_suggested_entities are deleted server side.

Suggested fix

Do not write the whole object from a possibly empty local copy. Options: do not show or act on the banner until the home config has loaded successfully, or re-read the stored value before merging in the dismiss flag, or have set_system_data for this key merge instead of replace.

Environment

  • Core 2026.10.1, frontend 20260930.3, updated from 2026.9.4, restart right after the update
  • Chrome on a Windows PC

What I could not determine

Whether the first home read failed or had just not finished when I clicked. I did not see an error message, and I do not have the browser console output from that moment, so the analysis above comes from reading the code.

Activity

  1. CRYPTONIKAV commented on Oct 11, 2026

    @CRYPTONIKAV

    Taking this: gating the welcome banner (and its dismiss save) on the home config having loaded, so an empty pre-load/rejected config can never wipe stored favourites/shortcuts. PR from my fork to follow against dev.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions