meteorlxy / vssue

:mailbox: A Vue-powered Issue-based Comment Plugin
https://vssue.js.org
MIT License
779 stars 107 forks source link

[Feature Request] Allow Issue/Comment Creation from Non-Owners/Admins #86

Closed itsxallwater closed 4 years ago

itsxallwater commented 4 years ago

What problem does the feature solve?

We host our documentation on GitHub in a public repo which means all users are able to create issues. The current implementation of Vssue restricts that level of access to the Owner (an organization in this case) and Admins only. This causes frustrating UX as if no Issue exists the user can't create it from our docs site within Vssue, they have to go to GitHub instead.

Proposed solution

Remove the isAdmin check here, or introduce an option that allows this to be disabled. https://github.com/meteorlxy/vssue/blob/33acae3beb997b69afb778a01f6e2f05345db330/packages/vssue/src/VssueStore.ts#L267

Alternative solutions

Ideally this would be made into an option and if necessary, only for GitHub APIs as I'm not sure on what the impact would look like for the other supported repo platforms.

Additional context

If you're curious, https://docs.zumasys.com/ is where we're leveraging the plugin. The project contains over 1,500 documents and we'd like to keep them as open as possible.

itsxallwater commented 4 years ago

FWIW, not lost on me that this is related to some of the conversation in https://github.com/meteorlxy/vssue/issues/32.

meteorlxy commented 4 years ago

Why Vssue requires label and title to locate the issue?

If we remove isAdmin check, other users still cannot create issues, because they have no access to labels

itsxallwater commented 4 years ago

Understood. I'd like to think on this if you don't mind leaving open for now, it would be greatly beneficial for us to find a path forward that wouldn't require an admin to create each of the issues for our docs since there are so many. At the same time I don't necessarily want to auto-spawn each of them since there may or may not ever be conversation attached to them; it'd just be nice to have GitHub authenticated users able to do it.

Thank you for taking the time to reply. We love VuePress and Vssue is really neat!

rufuspollock commented 4 years ago

Potential "malicious" users may fake the issue with the same title, but they cannot fake the label.

I think the point here is that quite a few projects would be willing to trade-off a slightly higher risk of "fake" issues from malicious users (who they could then ban) for the benefit of making it possible for any (logged in) user being able to create a comment ...

Is there any chance that one could have that option? (I imagine it may be tough as it is a core logic change ...?)

Thanks again for the awesome project!

stale[bot] commented 4 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

itsxallwater commented 4 years ago

I'm still keen to find a path forward here although I don't know what that looks like without the trade-off. Like @rufuspollock I think I'd be okay with the increased risk, though. This is a total spitball, but is there a capacity to leverage issue templates? Theoretically, have an issue template defined that would conform to something Vssue would look to leverage.

https://help.github.com/en/github/building-a-strong-community/configuring-issue-templates-for-your-repository

stale[bot] commented 4 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.