SIGN IN SIGN UP

fix(tasks): stop spurious not-found overlay on tag removal

Removing a tag from a task association could throw a "not found"
BusinessException if the association was already removed (e.g. by a
racing/duplicate removal request), even though the desired end state
was already achieved. This surfaced as an error overlay notification
alongside a successful removal.

- RemoveTaskTagCommandHandler now treats a missing/already-deleted
  association as an idempotent no-op instead of throwing.
- TaskDetailsController guards processTagChanges against concurrent
  invocations and removes tags from the local cache optimistically so
  a stale diff can't re-target an association already being removed.
- Update remove_task_tag_command_test.dart to assert the new
  successful no-op behavior.
A
ahmet-cetinkaya committed
32f776e756fcbb6ebb76f7381f310adb5ed7fa6f
Parent: 85eb8c6