kyungjunleeme commented on code in PR #53782:
URL: https://github.com/apache/airflow/pull/53782#discussion_r2232838460


##########
airflow-core/src/airflow/models/dagrun.py:
##########
@@ -1373,7 +1374,10 @@ def get_last_ti(self, dag: DAG, session: Session = 
NEW_SESSION) -> TI | None:
         if dag.partial:
             tis = [ti for ti in tis if not ti.state == State.NONE]
         # filter out removed tasks
-        tis = [ti for ti in tis if ti.state != TaskInstanceState.REMOVED]
+        tis = natsorted(

Review Comment:
   Airflow’s expand() and expand_kwargs() dynamic task mapping mechanisms 
automatically generate task IDs with numeric suffixes such as `__0`, `__1`, 
`__10`, etc. In such cases, a regular sorted() call does not preserve the 
expected order—e.g., `task__10` would appear before `task__2`. This causes 
unintuitive ordering in both tests and the UI. Using natsort resolves this 
issue by producing a natural sort order that aligns with user expectations and 
the way Airflow internally generates task IDs.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to