I understand this sentiment - especially in task management tools like Asana (which manage trackable human activities) and not project management tools (which manage deliverables - often regardless of details around individual activities).
If you take a deliverables management approach, the importance of parent tasks becomes apparent.
I - like you - prefer thinking of sections as phases. This fits well into a traditional level 1 of WBS - phase, initiative, major release etc. Each level of WBS is expected to be hierarchical (like Phase 1 - design, implementation, deployment; Phase 2 - design, implementation, deployment). But it can be represented in flat way without much of the loss (maybe that would be different projects within a portfolio or something like that).
The level 2 of WBS is subsystems (major breakdown of components). In simplest of projects this tier has 2 levels (order management - products list, product details, checkout; reporting - report 1, report 2 etc.), in more complex situations I easily had 2 more levels - admin portal / subsystem 1 / module 2; microservice X / cache manager / core components; etc.).
The last level of WBS is actual deliverable - report 1 UI, report 1 presentation, report 1 back-end, report 1 business logic, report 1 integration, followed by the milestone “report 1 complete”.
In traditional WBS actual tasks - human assignable activities - don’t even start until below level 3. Which is in most my cases I don’t need to go into. So I will keep it from going below level wbs 3 (but you already see, we are at least at the level 5 of top to bottom hierarchy).
One can ask - why being that fancy? Well, let’s remember the purpose of the project management - an ability to understand the status and answering questions [from clients, for example]. How can I answer the question about the % of completion of report 1 without having proper grouping of child tasks?
As far as sub-tasks go, I typically use sub-tasks for the purpose of “definition of done” - the simple checklist of things that must happen to complete a task (code is managed, reviews are complete, testing is complete, technical documentation is complete, database scripts are published to the master update folder for the release, user documentation changes are posted etc.).
Another purpose of subtasks would be to monitor % of completion of the task (by checking off sub-tasks with pre-assigned weights).
But neither of the described purposes would require to end up to the timeline / Gantt charts.
I understand, Asana is fundamentally task management platform to monitor assigned work. This is why I am using SmartSheet for PM purposes (good for PM, but terrible for task management). And I would hate paying for both tools.
This is why I am looking how much I can compromise on WBS to consolidate under Asana.