open-webui-openwebui/backend/open_webui/utils/access_control
Classic298 23b3a69bc2
fix: keep folder parent references acyclic (#28748)
Moving a folder under one of its own subfolders was accepted. A folder in a parent loop is never a root, so it and everything under it silently disappeared from the sidebar, and there was no way to get it back from the UI.

The move is now rejected with a 400, folders whose parent chain loops are put back at the root on the next folder list, and the folder tree traversals skip ids they have already visited so existing data in that state stays workable.
2026-08-24 17:06:19 -04:00
..
__init__.py perf: use the orjson codec for the permission deep copy (#27807) 2026-07-31 17:32:14 -04:00
files.py perf: resolve group membership once per folder listing instead of once per entry (#28810) 2026-08-19 11:16:29 -07:00
folders.py fix: keep folder parent references acyclic (#28748) 2026-08-24 17:06:19 -04:00