You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by js...@apache.org on 2025/09/18 05:43:43 UTC
(airflow) branch main updated: fix(hitl): HITL ti state sorting (#55779)
This is an automated email from the ASF dual-hosted git repository.
jscheffl pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new a0c7e9378c3 fix(hitl): HITL ti state sorting (#55779)
a0c7e9378c3 is described below
commit a0c7e9378c33f0113548a90a74e54cfe1f182ae6
Author: Wei Lee <we...@gmail.com>
AuthorDate: Thu Sep 18 13:43:36 2025 +0800
fix(hitl): HITL ti state sorting (#55779)
* fix(hitl): fix HITL state sorting
* feat(hitl): add task_instance_state sorting to get hitl details endpoint
---
airflow-core/src/airflow/api_fastapi/core_api/routes/public/hitl.py | 1 +
.../src/airflow/ui/src/pages/HITLTaskInstances/HITLTaskInstances.tsx | 2 +-
.../tests/unit/api_fastapi/core_api/routes/public/test_hitl.py | 4 ++++
3 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/airflow-core/src/airflow/api_fastapi/core_api/routes/public/hitl.py b/airflow-core/src/airflow/api_fastapi/core_api/routes/public/hitl.py
index f4b1e0baae2..e3f4b59c448 100644
--- a/airflow-core/src/airflow/api_fastapi/core_api/routes/public/hitl.py
+++ b/airflow-core/src/airflow/api_fastapi/core_api/routes/public/hitl.py
@@ -220,6 +220,7 @@ def get_hitl_details(
"run_after": DagRun.run_after,
"rendered_map_index": TI.rendered_map_index,
"task_instance_operator": TI.operator,
+ "task_instance_state": TI.state,
},
).dynamic_depends(),
),
diff --git a/airflow-core/src/airflow/ui/src/pages/HITLTaskInstances/HITLTaskInstances.tsx b/airflow-core/src/airflow/ui/src/pages/HITLTaskInstances/HITLTaskInstances.tsx
index 376c2abf37f..82e43b6aa4f 100644
--- a/airflow-core/src/airflow/ui/src/pages/HITLTaskInstances/HITLTaskInstances.tsx
+++ b/airflow-core/src/airflow/ui/src/pages/HITLTaskInstances/HITLTaskInstances.tsx
@@ -58,7 +58,7 @@ const taskInstanceColumns = ({
translate: TFunction;
}): Array<ColumnDef<HITLDetail>> => [
{
- accessorKey: "task_instance.operator",
+ accessorKey: "task_instance_state",
cell: ({ row: { original } }: TaskInstanceRow) => (
<StateBadge state={original.task_instance.state}>{getHITLState(translate, original)}</StateBadge>
),
diff --git a/airflow-core/tests/unit/api_fastapi/core_api/routes/public/test_hitl.py b/airflow-core/tests/unit/api_fastapi/core_api/routes/public/test_hitl.py
index f8ab8e1c4d9..9a431565e7d 100644
--- a/airflow-core/tests/unit/api_fastapi/core_api/routes/public/test_hitl.py
+++ b/airflow-core/tests/unit/api_fastapi/core_api/routes/public/test_hitl.py
@@ -637,18 +637,22 @@ class TestGetHITLDetailsEndpoint:
("run_after", lambda x: x["task_instance"]["run_after"]),
("rendered_map_index", lambda x: x["task_instance"]["rendered_map_index"]),
("task_instance_operator", lambda x: x["task_instance"]["operator_name"]),
+ ("task_instance_state", lambda x: x["task_instance"]["state"]),
# htil key
("subject", itemgetter("subject")),
("responded_at", itemgetter("responded_at")),
("created_at", itemgetter("created_at")),
],
ids=[
+ # ti key
"ti_id",
"dag_id",
"run_id",
"run_after",
"rendered_map_index",
"task_instance_operator",
+ "task_instance_state",
+ # htil key
"subject",
"responded_at",
"created_at",