Skip to content

[Bug] Linux 0.7.17 → 0.8.1 upgrade does not migrate profiles, history, workflows, or favorites #666

Description

@tkfkevin

Summary

After upgrading the official Linux x64 build from Decaid 0.7.17 to 0.8.1 in a headless/systemd installation, Decaid started with a new empty application data directory instead of migrating the existing data.

The old data was not deleted, but the UI appeared to have lost all custom profiles, extraction history, steam history, workflows, and favorites. This is especially disruptive for unattended Coffee Server installations because users may reasonably assume their production data has been erased.

Environment

  • Ubuntu Server 24.04 LTS, x86_64
  • Headless installation managed by systemd
  • Official Decaid Linux x64 release archives
  • Upgrade path: 0.7.17 → 0.8.1

Previous data layout

The 0.7.17 installation was launched with a working directory containing:

  • streamline_bridge.sqlite
  • store/*.hive

Before the upgrade, the existing database contained:

  • 89 profile records, including 9 custom profiles
  • 1 workflow
  • 259 shot records
  • 34 steam records

The existing Streamline store also contained five user-selected favorites.

Actual behavior

On first launch, 0.8.1 created and used a new data location:

  • ~/.local/share/decaid/streamline_bridge.sqlite
  • ~/.local/share/decaid/store/streamline-app.hive

The newly created database contained:

  • 71 default profiles
  • 0 custom profiles
  • 0 workflows
  • 0 shot records
  • 0 steam records

Favorites were also reset.

The startup log reported:

Default profiles: 71 new, 0 refreshed, 0 existing (71 total)

The old database and Hive files remained intact in the previous working directory, but were not discovered or migrated.

Manual recovery

The data was successfully restored by:

  1. Stopping Decaid.
  2. Backing up both old and new data directories.
  3. Copying the legacy streamline_bridge.sqlite into ~/.local/share/decaid/.
  4. Copying the legacy store/*.hive files into ~/.local/share/decaid/store/.
  5. Restoring ownership and starting Decaid.

After recovery, all 89 profiles, the workflow, 259 shots, 34 steam records, and all five favorites reappeared. The startup log then reported:

Default profiles: 0 new, 0 refreshed, 71 existing (71 total)

Expected behavior

When upgrading from 0.7.x to 0.8.x on Linux, Decaid should:

  1. Detect the legacy database and store in the configured/previous working directory.
  2. Migrate the database and all Hive stores atomically to the new application data directory.
  3. Preserve custom profiles, workflows, shot/steam history, favorites, and settings.
  4. Verify the migration before starting with a new empty database.
  5. Show a clear warning and recovery path if migration cannot be completed.

An automated migration test for a populated 0.7.x Linux data directory would help prevent this regression.

No data was permanently deleted in this case, but without manual inspection and recovery the upgrade looks like a complete data loss.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions