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
session.merge(self)
        session.commit()
        
        
        settings.engine.dispose()  
        if verbose:
            if mark_success:
                self.log.info("Marking success for %s on %s", self.task, self.execution_date)
            else:
                self.log.info("Executing %s on %s", self.task, self.execution_date)
        return True
    def _date_or_empty(self, attr: str):
        result = getattr(self, attr, None)  
        return result.strftime('%Y%m%dT%H%M%S') if result else ''
    def _log_state(self, lead_msg: str = ''):
        self.log.info(
            '%sMarking task as %s.'
            + ' dag_id=%s, task_id=%s,'
            + ' execution_date=%s, start_date=%s, end_date=%s',
            lead_msg,
            self.state.upper(),
            self.dag_id,
            self.task_id,
            self._date_or_empty('execution_date'),
            self._date_or_empty('start_date'),
            self._date_or_empty('end_date'),
        )
    @provide_session
    @Sentry.enrich_errors
    def _run_raw_task(