Add a "maintainer" role for Devvit apps
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 38/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- typescript
- Domain
- authorization, release
Research direction
No files, tests, or entry points are named. Start by locating the existing app-owner checks for upload, publish, and rollback, then define the maintainer permissions and owner-only exclusions described in the proposal. Done means maintainers can perform approved deployment operations without gaining ownership or other restricted capabilities.
Written by the indexing model from the issue text.
Description
Summary
Devvit currently limits app uploads and publishing to the app owner. For mature, collaboratively maintained apps, this creates a deployment bottleneck even when backend changes have already been reviewed and approved.
I propose adding an optional maintainer role that can upload, publish, and roll back approved app revisions without receiving full ownership.
Problem
The current ownership model works well for single-developer apps, but it becomes restrictive as an app grows.
Bot Bouncer is now a collaborative moderation platform with multiple contributors helping review code, develop features, answer appeals, and improve moderator workflows. However, every backend deployment still depends on a single app owner.
This puts the app developer in a bind:
- The developer is needed in Bot Bouncer modmail to help reduce the appeal backlog.
- The same developer is also the only person who can review, approve, and deploy backend changes that would make appeals more efficient.
- When the backlog consumes the developer’s time, improvements that could reduce the backlog become harder to ship.
As Bot Bouncer is adopted by more moderator teams,, this owner-only deployment model becomes harder to sustain for time-sensitive workflow improvements.
Proposed Solution
Introduce an application-level maintainer role with limited deployment permissions.
Maintainers could:
- Upload app revisions that only affect the backend moderator workflow.
- Upload approved app revisions.
- Publish approved releases.
- Roll back to a previously published version.
Maintainers could not:
- Transfer ownership.
- Delete the app.
- Modify ownership or owner-only administrative settings.
- Access sensitive owner-only capabilities.
This proposal is intended to reduce operational bottlenecks, not distribute project governance. The app owner would continue to appoint and remove maintainers, while maintainers would handle routine operational tasks such as deploying reviewed changes. Most apps could continue using the existing owner-only model, while larger collaborative projects could opt into one or a small number of maintainers.
This preserves owner control while allowing trusted contributors to handle routine operational maintenance.
Use Case
For Bot Bouncer, trusted maintainers could deploy backend improvements that reduce moderator workload, including:
- More efficient appeal handling.
- Better moderator-only statistics pages for evaluating appeal and detection performance.
- Rapid workflow adjustments for rare evaluator configuration errors.
These changes primarily affect backend moderator workflows, but they can significantly improve response time and reduce manual work.
Bot Bouncer motivated this request, but the same role could benefit other Devvit apps that grow from single-maintainer projects into collaborative tools.
Alternatives Considered
Transferring ownership or sharing owner credentials would grant more authority than needed for routine maintenance.
A limited maintainer role would better follow the principle of least privilege: trusted contributors could deploy reviewed changes, while ownership, sensitive administration, and long-term governance remain with the app owner.
- Dominant language
- TypeScript
- Stars
- 210
- Forks
- 88
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from reddit/devvit
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 5/5 Over a week Newbie friendliness 42/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
area:tools bug good first issue help wanted priority:P2
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
TaewoooPark/Motifcode#14 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
newrelic-experimental/preflight#793 · 1 comment ·
-
bug 🐞
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
[Bounty proposal] fix(web): memory insights count an evening memory on the next day ($25 proposed) Open
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
BasedHardware/omi#15320 ·