### Apache Airflow version

Other Airflow 2 version (please specify below)

### What happened

I was changing the roles to remove all delete access. But as soon as I remove permission "Can Delete on Task Instances" clear task takes to a blank page.

Shouldn't clear task access work without Delete access?

### What you think should happen instead

Can Delete Task Instance should not affect clear task access.

### How to reproduce

Copy the Op role and remove all Can Delete and assign that role to a user.
That user will not be able to clear task instance now.
add "Can Delete on Task Instances" permission to the role and user will now have access to clear task instances page.

### Operating System

Redhat 8

### Versions of Apache Airflow Providers

2.6.1 

### Deployment

Docker-Compose

### Deployment details

airflow 2.6.1 running on Docker with postgres 13 and pgbouncer.

### Anything else

_No response_

### Are you willing to submit PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

return redirect(self.get_default_url())
def action_has_dag_edit_access(action_func: Callable) -> Callable:
    """Decorator for actions which verifies you have DAG edit access on the given tis/drs."""
    @wraps(action_func)
    def check_dag_edit_acl_for_actions(
        self,
        items: list[TaskInstance] | list[DagRun] | TaskInstance | DagRun | None,
        *args,
        **kwargs,
    ) -> Callable:
        if items is None:
            dag_ids: set[str] = set()
        elif isinstance(items, list):
            dag_ids = {item.dag_id for item in items if item is not None}
        elif isinstance(items, (TaskInstance, DagRun)):
            dag_ids = {items.dag_id}
        else:
            raise ValueError(
                "Was expecting the first argument of the action to be of type "
                "list[TaskInstance] | list[DagRun] | TaskInstance | DagRun | None."
                f"Was of type: {type(items)}"
            )
        for dag_id in dag_ids:
            if not get_airflow_app().appbuilder.sm.can_edit_dag(dag_id):
                flash(f"Access denied for dag_id {dag_id}", "danger")
                logging.warning("User %s tried to modify %s without having access.", g.user.username, dag_id)
                return redirect(self.get_default_url())
        return action_func(self, items, *args, **kwargs)
    return check_dag_edit_acl_for_actions
class SlaMissModelView(AirflowModelView):