fix: sort focus projects — General first, then alphabetical

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-03 15:29:02 +00:00
parent 4c51a1daad
commit 997ea786ba

View File

@@ -85,14 +85,24 @@ async def focus_view(
proj_map[pk] = {"label": pl, "rows": []}
proj_map[pk]["rows"].append(item)
# Convert to nested lists for Jinja
# Convert to nested lists for Jinja — "General" first, then alpha
def _sorted_projects(proj_dict):
general = []
named = []
for pk, pv in proj_dict.items():
entry = {"label": pv["label"], "rows": pv["rows"]}
if pk == "__none__":
general.append(entry)
else:
named.append(entry)
named.sort(key=lambda p: p["label"].lower())
return general + named
hierarchy = []
for dk, dv in domain_map.items():
domain_group = {"label": dv["label"], "color": dv["color"], "areas": []}
for ak, av in dv["areas"].items():
area_group = {"label": av["label"], "projects": []}
for pk, pv in av["projects"].items():
area_group["projects"].append({"label": pv["label"], "rows": pv["rows"]})
area_group = {"label": av["label"], "projects": _sorted_projects(av["projects"])}
domain_group["areas"].append(area_group)
hierarchy.append(domain_group)