At the Toolchain Summit this year, one of the discussion sessions was to reflect on how the DBIx::Class ownership conflict was handled. We didn't only discuss DBIx::Class, but how a range of other situations were handled. One of the outcomes of that session was a request that the PAUSE admins document the rules and principles for how PAUSE is operated, and how various situations are, or will be going forward, resolved.

Since then the PAUSE admins have been discussing various scenarios and gradually working on a document which we ended up calling the PAUSE Operating Model. The name reflects that it not only describes how PAUSE works, but how the PAUSE admins run the service.

The rest of this post gives an outline of what the document covers, and where you can read it.

It's now in the PAUSE github repo, ( pause/doc/operating-model.md ) and we're hoping many of you will read it and let us know what you think.

We're assuming it will evolve a lot initially, but will then settle down. At that point it will appear on the sidebar in the PAUSE web interface.

Here's a brief outline of what the operating model covers:

The principles that we believe underlie the specifics, and some basic concepts and terminology .

that we believe underlie the specifics, and some basic . Indexing permissions : the existing first-come and co-maint, and a new indexing permission we plan to add. The "admin" permission will give someone the ability to grant co-maint to others, without requiring the first-come permission.

: the existing first-come and co-maint, and a new indexing permission we plan to add. The "admin" permission will give someone the ability to grant co-maint to others, without requiring the first-come permission. Dealing with PAUSE indexing issues : requesting transfer of permissions, handling disagreements, and the special PAUSE usernames (such as ADOPTME).

: requesting transfer of permissions, handling disagreements, and the special PAUSE usernames (such as ADOPTME). A brief discussion on licensing and copyright (full coverage of which is beyond the scope of the document).

(full coverage of which is beyond the scope of the document). The PAUSE admins: who we are and what we do.

If you have comments on the document, you can:

Add them to this blog post

Add them on reddit

Email them to the public admins list: modules@perl.org

Submit a pull request on the document. This is fine for spelling and grammatical changes, but if you're proposing a change, please discuss with us first, or open a github issue.

In writing this, we've identified a number of changes that will support the model. Github issues have already been opened for some of these, with more to come. The operating model notes where features aren't yet implemented.

The PAUSE Admins