Currently we use execution-date when generating the command to send via executor in https://github.com/apache/airflow/blob/9c94b72d440b18a9e42123d20d48b951712038f9/airflow/models/taskinstance.py#L420-L436

We should replace the execution_date in their to run_id instead and handle the corresponding changes needs on the executor and worker.
tests/models/test_taskinstance.py
"""
        Test that task reschedules are handled properly
        """
        
        done = False
        fail = False
        def func():
            if fail:
                raise AirflowException()
            return done
        with dag_maker(dag_id='test_reschedule_handling') as dag:
            task = PythonSensor(
                task_id='test_reschedule_handling_sensor',
                poke_interval=0,
                mode='reschedule',
                python_callable=func,
                retries=1,
                retry_delay=datetime.timedelta(seconds=0),
            )
        ti = TI(task=task, execution_date=timezone.utcnow())
        assert ti._try_number == 0
        assert ti.try_number == 1
        dag_maker.create_dagrun()
        def run_ti_and_assert(