This is not the sort of thing that I personally would track entirely with GTD. I would track it elsewhere, I would treat the "elsewhere" as project support material. The "elsewhere" would feed my GTD project/action lists with actions for the next few days/weeks, and I would enter those actions during my weekly review.
(You notice that I say "I" a lot here. Some people do track complex projects inside their project/action lists. I can't do it; I need those lists to be lean.)
For example, let's say that I start a yearlong plan for my vegetable garden. The plan would be triggered by various GTD projects and actions, but let's skip over that and assume that it's done. The plan, once it's done, would be project support material. Let's say that it has:
- A list of planting tasks, with start and end dates--when to get the onion seeds planted in the greenhouse, when to get the peas in the ground, and so on.
- A list of prep tasks--when to prepare the onion bed, when to prepare the pea bed, and so on. Also with start and end dates, based on the dates of the previous list.
- A list of maintenance or time-sensitive tasks--when to prune the roses, when the corn is expected to be ready to harvest, when to start watching for a late-winter or early-spring day when the soil is wet enough to till but not too wet, when to check whether the potato onions that I saved for seed look like they'll survive until planting because if they don't I'll plant something else in their bed, and so on.
- And so on, and so on, and so on.
All of that stuff would be project support material. You could argue that it's "inside" GTD, in the sense that the GTD model includes project support material. But it's not "inside" my lists of projects and next actions.
My GTD lists of projects and next actions would instead have, among other things, a project "Plan garden maintenance." That project would have tasks at weekly and monthly intervals instructing me to feed my GTD projects list with projects and actions for whatever I should be doing soon in the garden.
If there are a modest number of tasks, I may fill in everything I could be doing; if not, I will fill in the highest-urgency tasks. For example, the garden has 120 beds, about eighty of which I could be prepping this winter. That's not going to happen; I'll prep some of them and slap sunflowers in the rest. I won't enter tasks for all eighty; I'll choose maybe six of the top priority ones, and when they're done, I'll go back for more.
I would also add reminders for context, so that I don't need to rethink lines of logic in the moment. ("Oh, yeah; I'm not planting the eating peas next to the fence because I planted sweet peas there last year, and I don't want to accidentally eat volunteers." This item might also trigger an action, "Research just how poisonous sweet peas are anyway.")
In this model, I could have projects and actions that look like:
Keep garden planted
- Plant peas in beds D3 and D4.
Keep garden maintained
- Check D1 and D2 for germination of favas planted 12/1.
- Hoe E5 and E6. (Reminder: They're uncovered because they'll be potatoes.)
Keep garden prep ahead of planting
- Attach wires for sweet peas to fence by beds A3 and A4.
- Dig and amend beds A3 and A4 for sweet peas.
- Dig and amend beds H1 and H2 ready for roses. (Reminder: The WHOLE ROW, H1-H12, will be roses.)
Again, the above is a tiny subset of well over a hundred potential tasks. In this scenario, I sat down for my weekly review, and decided that prepping four beds was the most that I had any hope of accomplishing before the next review, though I added that reminder about row H just in case I had extra energy.
Alternatively, I could keep even more detail out of my GTD projects and lists and have GTD projects like:
Keep garden prep ahead of planting
- Do something from garden prep list.
Keep garden planted
- Do something from garden planting list.
Keep garden monitored
- Do something from garden maintenance list.
In real life, I'm halfway between these two; sometimes I select tasks carefully for my lists, and sometimes I realize that, hey! The weather's good for gardening! and I have a quick look at my project support material to find tasks.
I can do it this way because for my garden, I only report to me. If I discover that I didn't get around to "order shallots" in the "Keep seeds supplied" list before the ordering deadline, then I just say "oops" and move on; no homegrown shallots for me this year. The fact that I didn't get to an item probably means that my garden was over-ambitious and something needed to be dropped, and ordering my task lists by approximate priority means that I'm moderately likely to drop the lower priority items.
If I did have to report to anyone, I'd probably use a real project management tool.