I guess another solution is to create separate perspectives with single contexts in OF. But, depending on the number of contexts, this would make a lot of perspectives.
The workflow you laid out sounds fine to me. But, it might actually be more useful to have an extra command which immediately lists the contexts of the perspective you gave as argument (or is that what you meant anyway?). Then, you have 1 step to choose the context, and from there you get the tasks.
I think that the advantage would be that by filtering down onto 1 context, you will get a lot less items (well, depending on the perspective) - which fits well with the few lines we have in Alfred (and makes choosing a task easier without distraction…).
The extra step, in my eyes, is not problematic, because it follows my own structure (for example, I always look at the today perspective, and I know my contexts there, and similar with waiting for) - I would make a TextExpander shortcut for both, and then remember which number to press for each context afterwards.
I suppose people would get annoyed about the extra step if they always had to enter the exact same combination (so, they would always go to the same context in the same perspective). These people would probably just rearrange your workflow and take out the context choice to get rid of the extra input.