Skip to content

Auto-create default Optimization Unit on first launch and prompt entity association during creation #24

@markoceri

Description

@markoceri

In the base version of Edge Mining, a user has a single Optimization Unit with a single policy. However, the current onboarding flow requires the user to manually create the Optimization Unit before the dashboard displays any real-time data. Until the Optimization Unit is created, the dashboard shows nothing — leaving new users with a blank and confusing experience.

Current Pain Points

  • Empty dashboard on first launch: The main dashboard is tied to the Optimization Unit's real-time data. Since no Optimization Unit exists by default, new users are greeted with an empty screen and no guidance.

  • Manual assembly required: Users must separately create the Optimization Unit, associate a policy, and then manually link each entity (Energy Source, Miner, Notifier) — a multi-step process that is not intuitive for new users.

  • Disconnected entity creation flow: When creating an Energy Source, Miner, or Notifier, the user is not prompted to associate it with the Optimization Unit. This leads to entities being created but not actively used until the user figures out the association step.

Proposed Changes

1. Auto-create default Optimization Unit on first launch

  • On the very first application startup, automatically create a default Optimization Unit with the default Optimization Policy already associated.
  • This ensures the dashboard has something to display from the moment the user starts configuring entities.

2. Prompt entity association during entity creation

When the user creates a new entity (Energy Source, Miner, or Notifier), the system should check if the Optimization Unit already has an entity of that type assigned:

Scenario Behavior
Optimization Unit does not have an entity of this type assigned Prompt the user: "Do you want to associate this [entity type] with your Optimization Unit?"
Optimization Unit already has an entity of this type assigned Do not prompt; the user can reassign manually later if needed

This applies to:

  • Energy Source (e.g., Energy Monitor / Forecast Provider)
  • Miner (e.g., Miner Controller)
  • Notifier

Acceptance Criteria

  • A default Optimization Unit is automatically created on first application launch with the default Optimization Policy already associated.
  • The dashboard displays the default Optimization Unit's data (or a meaningful empty state) immediately after first launch.
  • When creating an Energy Source, Miner, or Notifier, the user is prompted to associate it with the Optimization Unit if that slot is not already filled.
  • If the Optimization Unit already has an entity of that type assigned, no prompt is shown during creation.
  • The auto-created Optimization Unit and its associations can be edited or reassigned by the user at any time.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions