### Discussed in https://github.com/apache/airflow/discussions/19366

<div type='discussions-op-text'>

<sup>Originally posted by **a-pertsev** November  2, 2021</sup>
### Apache Airflow version

2.2.1 (latest released)

### Operating System

Ubuntu 20.04 LTS

### Versions of Apache Airflow Providers

apache-airflow-providers-amazon==2.3.0
apache-airflow-providers-apache-cassandra==2.1.0
apache-airflow-providers-ftp==2.0.1
apache-airflow-providers-google==6.0.0
apache-airflow-providers-http==2.0.1
apache-airflow-providers-imap==2.0.1
apache-airflow-providers-jdbc==2.0.1
apache-airflow-providers-mysql==2.1.1
apache-airflow-providers-postgres==2.3.0
apache-airflow-providers-presto==2.0.1
apache-airflow-providers-slack==4.1.0
apache-airflow-providers-sqlite==2.0.1

### Deployment

Virtualenv installation

### Deployment details

_No response_

### What happened

Got error when manually run newly created task in already finished dag run (in UI).

### What you expected to happen

"Run" button should work without exceptions.

### How to reproduce

1. Define a dag with some tasks.
2. Create dag run (manually or by schedule)
3. Add new task into dag, deploy code
4. Select new task in UI and press "Run" button

### 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)
</div>
airflow/www/views.py
"""Filter using DagIDs"""
    def apply(self, query, func):  
        filter_dag_ids = current_app.appbuilder.sm.get_editable_dag_ids(g.user)
        return query.filter(self.model.dag_id.in_(filter_dag_ids))
class AirflowModelView(ModelView):
    """Airflow Mode View."""
    list_widget = AirflowModelListWidget
    page_size = PAGE_SIZE
    CustomSQLAInterface = wwwutils.CustomSQLAInterface
class AirflowPrivilegeVerifierModelView(AirflowModelView):
    """
    This ModelView prevents ability to pass primary keys of objects relating to DAGs you shouldn't be able to
    edit. This only holds for the add, update and delete operations.
    You will still need to use the `action_has_dag_edit_access()` for actions.
    """
    @staticmethod
    def validate_dag_edit_access(item: Union[DagRun, TaskInstance]):
        """Validates whether the user has 'can_edit' access for this specific DAG."""
        if not current_app.appbuilder.sm.can_edit_dag(item.dag_id):
            raise AirflowException(f"Access denied for dag_id {item.dag_id}")
    def pre_add(self, item: Union[DagRun, TaskInstance]):
        self.validate_dag_edit_access(item)
    def pre_update(self, item: Union[DagRun, TaskInstance]):
        self.validate_dag_edit_access(item)
    def pre_delete(self, item: Union[DagRun, TaskInstance]):
        self.validate_dag_edit_access(item)
    def post_add_redirect(self):  
        return redirect(self.get_default_url())
    def post_edit_redirect(self):