[GH-ISSUE #67] Handle Obsolete Metaconfiguration Units During Module Upgrade #20

Open
opened 2026-03-03 11:58:26 +03:00 by kerem · 0 comments
Owner

Originally created by @olegprivate on GitHub (Jul 22, 2025).
Original GitHub issue: https://github.com/finmars-platform/finmars-core/issues/67

Originally assigned to: @falendary on GitHub.

This is a sub-task related to the main module deletion feature. The installation script for a module update should be able to gracefully handle metaconfiguration units that are now obsolete.

User Story

As a system administrator, when I upgrade a module to a new version, I want the installation script to automatically identify and propose the deletion of any metaconfiguration units that are no longer part of the module, so that my system configuration stays clean and doesn't contain legacy components.


Acceptance Criteria

  1. Detection of Obsolete Units

    • Given a user initiates an upgrade of an existing module.
    • When the installation script runs.
    • Then the script must compare the metaconfiguration units in the new version against the ones currently installed.
    • And it must create a list of any units that exist in the current installation but are absent in the new version (i.e., they are obsolete).
  2. Dependency Check and User Warning

    • Given the script has identified obsolete units.
    • Then it must perform the same dependency check as the manual deletion feature on these units.
    • And a warning modal must be displayed to the user, stating: "The following configuration units are obsolete in the new version and will be removed: [List of obsolete units]."
    • If dependencies are found, the message must also include: "Warning: This action will also affect [X] dependent entities. [Link to view details].".
  3. Confirmation and Deletion

    • Given the user has been shown the warning.
    • Then they must be presented with a confirmation button (e.g., "Confirm and Proceed").
    • When the user confirms the action.
    • Then the obsolete metaconfiguration units (and any dependent entities, based on the established deletion logic) are removed from the system.
Originally created by @olegprivate on GitHub (Jul 22, 2025). Original GitHub issue: https://github.com/finmars-platform/finmars-core/issues/67 Originally assigned to: @falendary on GitHub. This is a sub-task related to the main module deletion feature. The installation script for a module **update** should be able to gracefully handle metaconfiguration units that are now obsolete. #### **User Story** As a system administrator, when I upgrade a module to a new version, I want the installation script to automatically identify and propose the deletion of any metaconfiguration units that are no longer part of the module, so that my system configuration stays clean and doesn't contain legacy components. --- ### **Acceptance Criteria** 1. **Detection of Obsolete Units** * **Given** a user initiates an upgrade of an existing module. * **When** the installation script runs. * **Then** the script must compare the metaconfiguration units in the new version against the ones currently installed. * **And** it must create a list of any units that exist in the current installation but are absent in the new version (i.e., they are obsolete). 2. **Dependency Check and User Warning** * **Given** the script has identified obsolete units. * **Then** it must perform the **same dependency check** as the manual deletion feature on these units. * **And** a warning modal must be displayed to the user, stating: `"The following configuration units are obsolete in the new version and will be removed: [List of obsolete units]."` * **If** dependencies are found, the message must also include: `"Warning: This action will also affect [X] dependent entities. [Link to view details]."`. 3. **Confirmation and Deletion** * **Given** the user has been shown the warning. * **Then** they must be presented with a confirmation button (e.g., `"Confirm and Proceed"`). * **When** the user confirms the action. * **Then** the obsolete metaconfiguration units (and any dependent entities, based on the established deletion logic) are removed from the system.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/finmars-core#20
No description provided.