Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✏️ Edit data directly from the database website #37

Open
JamesAlfonse opened this issue Jan 6, 2025 · 6 comments
Open

✏️ Edit data directly from the database website #37

JamesAlfonse opened this issue Jan 6, 2025 · 6 comments

Comments

@JamesAlfonse
Copy link
Member

JamesAlfonse commented Jan 6, 2025

Stellar idea to have a basic introductory view, then some kind of pop-up or advanced view with all the known info when you click an entry. I'm partial to including an edit this data button that hrefs directly to the database entry in GitHub, as far as that might be feasible.1 Perhaps we could just center our distributed development efforts in this repo, and see what it turns into?

There already seem to be so many interesting use-cases just waiting to be built by passionate community members. I understand that many data resources are dispersed in centralized silos right now. Perhaps we could migrate everything here (assuming rights check out), and return to the naming once we've started building incredible frontends like your user-friendly buttons?

Originally posted by @JFWooten4 in #25 (comment)

Formally turning this idea into an issue. Thinking this through, I believe this would require a multi-step workflow to ease the burden on contributors from having to learn Github. The process would start with a user pressing an "edit" button on the website that allows them to fill out information. That information should be saved to a temporary state somewhere (still workshopping this) and that could be added in with contributions from other people. After a predetermined amount of time (lets say a day) we can have a Github app turn that temporary state into a repository fork that can be reviewed by a Github member for accuracy, then integrated with a pull request by someone with the appropriate access.

Footnotes

  1. In an effort to turn visitors into contributors (no matter the size of a change) with as few steps as possible.

@JFWooten4
Copy link
Member

Thanks a ton for further specing this out, James. The database management specifics are a little outside my specification, as I'm only generally familiar with the DB structure at this point.

I like the idea of making it easier to contribute with a (permissionless?) webform with general info. Sounds like a great way to maximize the number of assistants, if that's the goal.1

Experiences

I've only ever seen the "edit this page" button implemented with an href to the GitHub source of content. You can see this implemented in the DUNA docs site. Not to say that the custom site workflow would be this or that, just that it's an incredible idea from James that I never even thought of.

Would love to see how this gets implemented and try adding new info with it. My only reserve based on convo with Bur would be the accountability of contributions. With direct PRs, we can more easily associate work with an individual account, as I understand it. I think we talked about the implications for reviewing complexity for each change in the meeting at the start of Dec.

👍

Footnotes

  1. Sounds a bit like the Wikipedia model of letting people edit from IP addresses. My only comment here is that I am not familiar with how much of this edit activity comes from anonymous users today. Namely, I don't understand if there would be a lot of info to sort through here.

@JamesAlfonse
Copy link
Member Author

Accountability is important for anonymous contributors, definitely something that needs to be thought through. There is the stopgap of a pull request and reviewers, but that can (potentially) turn into an overwhelming task for reviewers if a bad actor can enter countless submissions. If there was a way for contributors to submit data and tie it to an IP address without necessarily storing that IP address, that would be ideal. Or even limiting contributions to a daily max per IP address that could help prevent this issue. @JFWooten4

@JamesAlfonse
Copy link
Member Author

Looking into Fleek Functions for serverless functions to store submissions. Combined with a web form, a github app, and a database file, this can potentially be used to submit a daily pull request with new data. See discussion with AI here.

@JamesAlfonse
Copy link
Member Author

JamesAlfonse commented Feb 19, 2025

Found this European cloud service provider a while back with extremely competitive pricing (see below) that can host a server in the US. Potentially this could also be a solution for this issue + for use with Artemis and any other WhyDRS services as needed. Wanted to document this in a comment on Github to be able to refer back to it in the future.

Image

@github-project-automation github-project-automation bot moved this from Backlog to Done in Issues Tracker Feb 19, 2025
@JamesAlfonse JamesAlfonse reopened this Feb 19, 2025
@JamesAlfonse JamesAlfonse moved this from Done to Backlog in Issues Tracker Feb 19, 2025
@tehchives
Copy link
Collaborator

Accountability is important for anonymous contributors, definitely something that needs to be thought through. There is the stopgap of a pull request and reviewers, but that can (potentially) turn into an overwhelming task for reviewers if a bad actor can enter countless submissions. If there was a way for contributors to submit data and tie it to an IP address without necessarily storing that IP address, that would be ideal. Or even limiting contributions to a daily max per IP address that could help prevent this issue. @JFWooten4

Hm, isn't that kind of IP-address-storing-without-publicizing how the artemis alt account checker works internally? I am not super familiar, but I know users like @LastResortFriend are looking to make our own version of that tool for our purposes. I wonder if it could be used for this also, in some way.

As an aside, would it be helpful to try and approach this by tying it in to the registry of users concept? I can appreciate concerns of easy exposure to attacks like DDOS or just submission overwhelm if there is anonymous submissions. If a wallet address could be an identifier then while it would put a tracker on who submits, but it wouldn't necessarily solve the volume of submissions because people can make infinite wallets if they want to make infinite submissions, so neither of these two ideas would be a complete solution but maybe they could work together.

@JamesAlfonse
Copy link
Member Author

@tehchives Thanks, I'll dig into the Artemis repo to see if that may apply here. Would be great to not have to reinvent the wheel. Wallets may be more difficult to implement and could be a barrier of entry for new contributors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Backlog
Development

No branches or pull requests

3 participants