According to https://secure.phabricator.com/book/phabricator/article/projects/#subprojects, it's okay for a task to be tagged with multiple subprojects that have a common ancestor project. When you do that and then query for tasks tagged with the ancestor (either from maniphest advanced search or via conduit) any result page which contains the multi-subproject'd task will not have a "Next" button or an "after" value for the pagination cursor even if there are more results that should be shown.
- Create a project (we'll call it A)
- Create two subprojects of A (B and C)
- Create several tasks each tagged with one of the above projects
- Create a task that is tagged with B and C (we'll call this Problem Task)
- Edit one of the tasks you created in step 3 so it has a more recent update time than Problem Task
- Go to /maniphest/query/advanced/
- Query for projects tagged with A, Group By None, Order By Date Updated (Latest First), Limit 2.
At this point you'd expect to see a "Next" button at the bottom of the page, but there is not. If you increase the Limit to 10, you'll see that it returns more results than 2. Any page of results that contains Problem Task won't have a "Next" button on it (ie. if you set Limit to 1 and page through to Problem Task). The same happens when you perform the same query via /conduit/method/maniphest.search; there is no "after" value in the cursor even though there should be more results.