Skip to content

Configure and order controller features when creating a new miner #48

Description

@markoceri

Problem

When adding a new miner and associating one or more miner controllers, it is not possible to order/configure the controller features (priority and enabled state) during creation. The "Manage Features" section only appears after the miner has been saved, because features are auto-created on the backend only when a controller is linked to an already-persisted miner. As a result, the user has to save the miner first and then re-open it in edit mode just to reorder its features.

The same limitation applies to controllers added to an existing miner: a note in the form states "Features for newly added controllers will appear after saving", so their priorities cannot be set in the same step.

Proposed solution

Allow configuring controller features (priority, enabled/disabled, active/fallback ordering) directly in the miner creation form, before the miner is saved.

Scope:

  • Expose the feature types supported by a controller so the frontend can know, ahead of saving, which features a controller will provide.
  • In the miner form, when a controller is selected, show its features (with the same defaults the backend uses: enabled, priority 50) so they can be reordered immediately.
  • On save, after the controllers are linked and their features auto-created, apply the priority/enabled choices made in the form.
  • This must work both for brand-new miners and for controllers newly added to an existing miner.

Acceptance criteria

  • Adding a controller in the "Add Miner" form immediately shows the "Manage Features" section for that controller.
  • The user can change priority and enabled state of each feature before saving the new miner.
  • After saving, the persisted miner reflects the feature ordering/enabled state chosen in the form.
  • Newly added controllers on an existing miner expose their features in the same edit session, without requiring a second save.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions