Page MenuHomePhabricator

Enqueue: Don't allow enqueueing pages in unsupported namespaces
Closed, ResolvedPublicBUG REPORT

Description

Steps to Reproduce:

  • Using the API, attempt to enqueue a page that is not included in the array $config->get( 'PageTriageNamespaces' ) or is PageTriageDraftNamespaceId

Actual Results:

  • Enqueueing works

Expected Results:

  • API returns an error about the namespace being unsupported

See, eg, logs for User talk:DannyS712 on the beta cluster: https://en.wikipedia.beta.wmflabs.org/w/index.php?title=Special:Log&page=User+talk%3ADannyS712

Event Timeline

Change 540690 had a related patch set uploaded (by DannyS712; owner: DannyS712):
[mediawiki/extensions/PageTriage@master] Enqueue: Don't allow enqueueing pages in unsupported namespaces

https://gerrit.wikimedia.org/r/540690

Change 540690 merged by jenkins-bot:
[mediawiki/extensions/PageTriage@master] Enqueue: Don't allow enqueueing pages in unsupported namespaces

https://gerrit.wikimedia.org/r/540690

Much appreciated, @DannyS712! I think this is relevant to our work, so tagging with Community-Tech seems appropriate, but in general please let us manage what columns tasks go under, and whether they belong on the Kanban board. Thanks!

That said I suppose this could use QA, so I'll move it there.

Much appreciated, @DannyS712! I think this is relevant to our work, so tagging with Community-Tech seems appropriate, but in general please let us manage what columns tasks go under, and whether they belong on the Kanban board. Thanks!

That said I suppose this could use QA, so I'll move it there.

Sorry; it was under the Kanban board because it was created as a sub task. Should I ensure that I remove that tag each time?

it was under the Kanban board because it was created as a sub task. Should I ensure that I remove that tag each time?

I didn't realize that was default behaviour, but yes I suppose removing the Kanban tag would be best. To be clear, I'm not complaining or saying you were out of line, rather generally everything goes through Community-Tech first and we decide as a team where tasks go from there. We of course very much appreciate the patches, so keep those coming :)

it was under the Kanban board because it was created as a sub task. Should I ensure that I remove that tag each time?

I didn't realize that was default behaviour, but yes I suppose removing the Kanban tag would be best. To be clear, I'm not complaining or saying you were out of line, rather generally everything goes through Community-Tech first and we decide as a team where tasks go from there. We of course very much appreciate the patches, so keep those coming :)

Will do. I've been thinking of requesting +2 for PageTriage - thoughts?

Also, once this is live on the beta cluster and verified to be working, can you take a look at T234577

I've been thinking of requesting +2 for PageTriage - thoughts?

I don't see that as necessary, with our current throughput and product oversight, not to mention the general strictness around +2 rights for anything that deploys to production environments. You wouldn't ever +2 your own patch, for the record. The ability to test others' patches is also an obvious requirement. We've talked about this before; I can try to help you get MediaWiki set up on your local. Let's chat over email :) In the meantime, +1's are still a great way to endorse patches and may assist those who are able to merge.

On beta, using the API I am able to enqueue pages in the Article, User and Draft namespaces. These are the only supported namespaces on beta.

I have been unable to enqueue pages in other namespaces, including custom namespaces on beta like "Module" and "Portal". The API returns the error: The page specified is in a namespace that does not have page triage enabled.

This change only affects the API.

This change should now be on production.

@DannyS712 Thanks for doing this work! Before I close this ticket, I would like to receive notification for you that it is working as expected on production. So, please do let me know, when you get the chance. Thanks!

Api error
{
    "error": {
        "code": "bad-pagetriage-enqueue-invalidnamespace",
        "info": "The page specified is in a namespace that does not have page triage enabled",
        "*": "See https://en.wikipedia.org/w/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce> for notice of API deprecations and breaking changes."
    },
    "servedby": "mw1344"
}

confirmed to be working