### Description

Going to Airflow web UI, Browse>DAG Run displays the list of runs, but there is no way to search or filter based on the text in the "Note" column.

### Use case/motivation

It is possible to do a free text search for the "Run Id" field. The Note field may contain pieces of information that may be relevant to find, or to filter on the basis of these notes.

### Related issues

Sorting by Note in List Dag Run fails: 
https://github.com/apache/airflow/issues/30041

### Are you willing to submit a PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

"""
    Cast the task_duration to an int was for optimization for large/huge dags if task_duration > 10s
    otherwise we keep it as a float with 3dp.
    """
    return int(task_duration) if task_duration > 10.0 else round(task_duration, 3)
def sanitize_args(args: dict[str, str]) -> dict[str, str]:
    """
    Remove all parameters starting with `_`.
    :param args: arguments of request
    :return: copy of the dictionary passed as input with args starting with `_` removed.
    """
    return {key: value for key, value in args.items() if not key.startswith("_")}
def get_safe_url(url):
    """Given a user-supplied URL, ensure it points to our web server."""
    if not url:
        return url_for("Airflow.index")
    
    
    if ";" in unquote(url):
        return url_for("Airflow.index")
    host_url = urlsplit(request.host_url)
    redirect_url = urlsplit(urljoin(request.host_url, url))
    if not (redirect_url.scheme in ("http", "https") and host_url.netloc == redirect_url.netloc):
        return url_for("Airflow.index")
    
    return redirect_url.geturl()
def get_date_time_num_runs_dag_runs_form_data(www_request, session, dag):