Skip to content

[ML 0.5/MVI.02.4] Implement LocalDeleteOperationDecider (Domain Logic) #10515

@rafaeltonholo

Description

@rafaeltonholo

Description

Migrate the LocalDeleteOperationDecider from the legacy module (:legacy:core) into a new LocalDeleteOperationDecider interface within the feature domain api :feature:mail:message:list:api and a default implementation inside the :feature:mail:message:list:internal.

Goal

Encapsulate the business rules that determine if a deletion should bypass the trash (e.g., when deleting from Spam/Trash or based on DeletePolicy) without bloating the DeleteMessages orchestrator.

Acceptance Criteria

  • Correctly identifies "hard delete" scenarios based on Account settings and Folder type.
  • Ensure the logic is tested correctly.

Technical Details

  • Need to move both DefaultLocalDeleteOperationDecider(old LocalDeleteOperationDecider) implementation AND tests to the internal feature module
  • Need to wire the MessagingController to retrieve the instance of the new interface LocalDeleteOperationDecider via DI.

Metadata

Metadata

Assignees

No one assigned

    Labels

    good first issueIdeal for newcomers to start contributingtype: enhancementNew features or improvements to existing features.

    Type

    Projects

    Status

    In Review

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions