fix: get_categories locale filter and list-type filter (v0.4.9)
Bug 1: all 171 category locale variants were returned; now filtered by locale parameter (default "de") → 13 German categories for shopping lists. Bug 2: TODO lists returned 171 shopping categories because sortingIndexByTaskList contains ALL list IDs regardless of type. Fix: look up list's taskListType via taskgettasklists, then match against category's taskListType. TODO lists (type=TODOS) return empty list since all API categories are SHOPPING_LIST type. sortingIndexByTaskList is explicitly documented as unreliable for type filtering in both code comments and SPEC.md. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -139,10 +139,17 @@ a01.r.r.updatedCreated[] → taskcategorysync (Kategorien/Abteilung
|
||||
.name → Kategoriename (sprachabhängig, z.B. "Beverages")
|
||||
.emoji → Emoji-Symbol der Kategorie
|
||||
.systemCategoryId → numerische System-ID (sprach-unabhängig)
|
||||
.taskListType → Listentyp (z.B. "SHOPPING_LIST", "TODO")
|
||||
.taskListType → Listentyp der Kategorie (z.B. "SHOPPING_LIST")
|
||||
**Wichtig:** Alle 171 Kategorien sind SHOPPING_LIST —
|
||||
es gibt keine TODO-Kategorien in der API
|
||||
.sortingIndexByTaskList → dict: Listen-ID → Sortierposition
|
||||
Keys = Listen-IDs der zugeordneten Listen
|
||||
.locale → Sprache des Namens (z.B. "de", "en", "ru")
|
||||
**Achtung:** enthält ALLE Listen-IDs unabhängig vom Typ
|
||||
→ NICHT für Typ-Filterung verwenden!
|
||||
Stattdessen: taskListType der Kategorie mit
|
||||
taskListType der Liste (aus taskgettasklists) vergleichen
|
||||
.locale → Sprache des Namens (z.B. "de", "en", "ru", "fr", "es",
|
||||
"it", "nl", "pt", "sv", "ko", "ja")
|
||||
Jede Sprache = eigener Eintrag mit eigenem metaId/systemCategoryId
|
||||
.hiddenByTaskList → Liste von Listen-IDs, in denen die Kat. versteckt ist
|
||||
a02.r.r.updatedCreated[] → tasksync (Tasks)
|
||||
.metaId → eindeutige Task-ID
|
||||
|
||||
Reference in New Issue
Block a user