RabahAmrouche05 opened a new pull request, #68544:
URL: https://github.com/apache/airflow/pull/68544

   ## What
   
   Adds a **folder navigation tree** to the Dags page. The tree is built from 
each
   Dag's `relative_fileloc` directory, and selecting a folder filters the Dag 
list
   to the Dags that live in it (and its subfolders).
   
   ## Why
   
   The Dags page only offered a flat list. In deployments with many Dags spread
   across subfolders of the dags folder (e.g. `team_a/etl/…`, `team_b/ml/…`) 
there
   was no way to browse or filter by folder.
   
   ## How
   
   - **Backend** — a server-side `relative_fileloc_prefix` filter on `GET 
/ui/dags`
     (strict folder match, so `team_a` never catches `team_alpha`) and a new
     `GET /ui/dags/folders` endpoint returning the distinct folders of all 
readable
     Dags. Filtering is done server-side so the result stays correct across
     pagination, sorting and the other filters.
   - **Frontend** — a collapsible folder tree on the Dags page that drives the
     filter via a `dag_folder` search param, with the tree hierarchy 
reconstructed
     client-side from the folder paths.
   
   Dags located at the bundle root contribute no folder and appear under "All 
Dags".
   
   Tests: backend (folders endpoint + filter, incl. the `team_a` / `team_alpha`
   edge case) and frontend (`buildFolderTree` unit tests + `DagFolderTree`
   component tests).
   
   ---
   
   ##### Was generative AI tooling used to co-author this PR?
   
   - [X] Yes — Claude Code (Opus 4.8)
   
   Generated-by: Claude Code (Opus 4.8) following [the 
guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)


-- 
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