Plugins:PluginDirectory/EditingWorkflow
The Plugin Directory offers editorial workflows for:
- accepting suggested updates to plugin releases from anonymous users;
- review and acceptance of suggestes updates by users with "editor" access and above;
- allowing editing of plugin releases in personal sandboxes for any registered user;
- reviewing and deploying plugin releases in sandboxes by users with "editor" access and above;
This page offers some more details on how this works.
Access levels
- guest
- anonymous user, not logged in
- member
- registered user, logged in
- trusted
- user assigned "editor" access to a subset of plugins by PFS ID (ie. a vendor, with access to manage their own plugins)
- editor
- user with read/write/deploy access to plugin releases in all sandboxes
- admin
- user with full read/write/delete access to both live and sandboxed plugin releases
Anonymous submissions
Visitors to the front page of the site are offered a list of detected plugins. The PFS API is queried for each detected plugin, which results in a report of each plugin's status with respect to the plugin directory. This status can be one of unknown, latest, outdated, vulnerable, newer, or uncertain.
Each detected plugin offers a link to an anonymous submission form. A visitor can use this form to provide corrections in case:
- displayed plugin details are incorrect;
- he/she has information about a plugin unknown to the directory;
- or he/she has installed a plugin update not yet known to the directory.
These form submissions are viewable by users with "editor" access in a review queue. Each submission can be converted into a new plugin or a release added to an existing plugin in a sandbox. From there, the information can be revised until it's appropriate
Sandbox editing
All registered users have a personal sandbox. Any live plugin and associated releases can be copied to this sandbox, and the user owning the sandbox has full editing access to the data therein. Normal users cannot see other users' sandboxes.
When a user is logged in, plugin data from his/her sandbox takes priority on the front page over live data. This allows the user to preview edits to the sandox data with respect to detected installed plugins.
So, for example, consider the case where live data reports that a given installed plugin is newer than the directory's entry. The user can copy that plugin to his/her sandbox, edit the details to match the updated plugin, and then visit the front page to verify that the new plugin version is correctly detected as the latest using the sandbox data.
Once satisfied with the edits, the user can then request approval for the changes, which sends out an email to site editors to review the sandbox changes.
Editor approval
Users with "editor" access have the ability to view any user's sandbox. From there, they can review sandboxed plugins, perform edits, and deploy a sandbox plugin live.
Deploying a sandboxed plugin live overwrites the live data and makes the changes available to all users via the PFS search API.
Users with "editor" access cannot create/edit/delete live plugins directly.
Trusted users
This is not yet implemented.
Trusted users are assigned "editor" level access to specific plugins. This is most useful for vendors, giving them self-service access to their own plugins.