This took me some time to figure out,
so sharing both for helping someone out
or for suggestions for improvement
⓵ → dataview “tasks” only, file
TASK
WHERE file = this.file
WHERE !completed
AND (contains(tags, "#obsidianTips") AND !contains(tags, "#deliverable"))
⓶ → dataview, folder, grouping
TASK
WHERE contains(file.path, "2. inbox/")
WHERE !completed
AND (contains(tags, "#deliverable"))
GROUP BY file.name
SORT file.name
⓷ → dataviewJS, folder, grouping & sorting
dv.taskList(dv
.pages('"2. inbox"')
.file.tasks
.where(task => !task.completed && task.tags.includes("#deliverable"))
.groupBy(g => dv.page(g.link.path).file.link)
.sort(s => dv.page(s.key).file.name, "asc"),
false
)
⓸ → dataviewJS, current file
dv.taskList(dv
.current()
.file.tasks
.where(task => !task.completed && task.tags.includes("#deliverable")),
false
)