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.
airflow/models/taskinstance.py
return (self.execution_date - timedelta(1)).strftime('%Y-%m-%d')
        def get_yesterday_ds_nodash() -> str:
            return get_yesterday_ds().replace('-', '')
        @cache
        def get_tomorrow_ds() -> str:
            return (self.execution_date + timedelta(1)).strftime('%Y-%m-%d')
        def get_tomorrow_ds_nodash() -> str:
            return get_tomorrow_ds().replace('-', '')
        @cache
        def get_next_execution_date() -> Optional[pendulum.DateTime]:
            
            
            
            
            if dag_run.external_trigger:
                next_execution_date = self.execution_date
            else:
                next_execution_date = task.dag.following_schedule(self.execution_date)
            if next_execution_date is None:
                return None
            return timezone.coerce_datetime(next_execution_date)
        def get_next_ds() -> Optional[str]: