-
Notifications
You must be signed in to change notification settings - Fork 210
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
Get bug fixes in quicker #401
Comments
Any ideas? Maybe add an additional threshold for an instamerge, even before the extended voting window. |
No ideas yet.. |
So I'm starting to get some kind of idea.. Here are the steps I'm thinking
There would have to be an adjustment to the voting thresholds I'm thinking. It would probably need a meritocracy vote. Can you think of how this method could be exploited? |
That could work, but we might need punishments for abusing |
I suppose one question is do we want the PR owner to be the only one able to We would probably need a 30 min window at least just to be safe. |
This could facilitate sneaking in malicious changes, though - especially if it's just a small change that might get missed with the shorter window and spotted once it has passed. |
Yeah there's the risk of that. That's why I was trying to see if there was some approach that could limit or even prevent that from occurring. |
@md678685 the meritocracy might help, but yes it still remains a problem |
Along the same lines, we could make it so that if a majority of the meritocrats submit an approving review, it gets instantly merged. That seems like a pretty high bar, though... We could make it something like 5 reviews, but that also seems like a pretty high bar... |
Ok, here is a new proposal: The author of the PR includes |
@mark-i-m I think |
I suspect that if the bar is significantly high, people won't have high hopes to overuse this. Perhaps we could make it a majority of the meritocracy... a meritjority |
If we only allow the command to be used after the reviews are issued, then it wouldn't get overused. |
Actually now that I think about it this could be used by the meritocracy to take more power without going through a democratic vote. (e.g if someone made a PR to give meritocrats 5x extra voting power and used |
Oh no I just figured out where @anythingbot got their idea from. @mark-i-m what have you done??? 😦 |
@andrewda Yeah I'm sorta afraid of that. I have faith in the meritocracy, but I'd prefer the system not require that. |
If we're going to do anything meritocracy related to speed up the PR's, I'm still a fan of #408. At least having a |
How about this:
|
They'd need to submit them after the |
@PlasmaPower Or we could just restrict PR posters to only say |
@mark-i-m what about edited comments? |
Not sure what you mean |
|
Issue/PR comments have both |
Sounds good. |
@PlasmaPower it's just another power grab, this time for the politburo (you call it a "meritocracy"). This may be fine, but put a time limit on it, no more than 48 hours of this, tops. Putting the bot into "high speed mode" sounds like a worthy experiment, and I'd like to see it run. This effectively lowers the "mass" or "inertia" of the project for a period of time. It makes it much easier to get work done. If it works out well, then weekends can be reserved for "high speed mode", and the bot may act as if the author had performed step 5 automatically (in other words, the PR author doesn't have to do that step since submitting a PR on the weekend will be understood as an intention that it be treated as if the first comment were "/vote speed"). If you want to try it out for a week in "high speed mode", that will probably make people think that the politburo (I'm not going to call it a "meritocracy") has decided to take control and will stand in the way of future progress. High speed mode makes it much more difficult to get progress on your project if the politburo is opposed to it. |
@mark-i-m One other thing, what if a PR gets 5 reviews before the first comment? For instance a rather uncontroversial PR. Should we require a < 5 minute gap between the PR creation and the first comment? |
Sure, that could work... |
Actually, I think I'll wait for @rudehn's database redo. This feature will likely depend on the database. |
Ah, I was just going to ask @rudehn if anything special would be need for that... |
@mark-i-m I'm pretty sure the database redo will result in a major API overhaul, since it'll be using an ORM. |
Hmm... I guess then, I will wait before making a major PR, but I can at least do some groundwork, I think... |
We could also just implement it now and rely on @rudehn to redo the database code. |
Yeah, but I don't want to make @rudehn do more work... that database stuff sounds like a lot of work already. |
Comments on #493 are appreciated |
I just need to know what the table layout looks like. |
Thanks @rudehn I suspect that there are two tables to be created/updated (which are up for discussion):
Of course, I don't think we should create the tables until the design of the feature is more concrete 🔨 |
Why? |
I'm with @PlasmaPower on this one: why would the bot need to record the successfully expedited PRs? This actually speaks to the greater issue of whether or not the bot will record data that doesn't fit into the github data model. In fact, this is getting very close to the blueprints for post-github git development. A two-tiered PR system, one for the aristocracy (I am not calling it a "meritocracy") and one for the hoi polloi, would represent a clean break from github's "software development egalitarianism" ideology that makes everybody (senior developer and newb alike) use the same PR system. Honestly, I find the idea exciting. The anythingbot never discussed the creation of a bicameral PR system. This is literally the absolute frontier of innovation in software development. But this means we're now at the awkward stage where we're flirting with the idea of planning a successor to github...on github. I expect the universe to divide by zero at any moment. |
Suppose X = (universe / 0). Is (X / X) = 1? |
On a serious note though, mostly they are practical reasons, and I haven't thoroughly thought through alternatives yet... Currently the system is structured so that the voting system for PRs (including calculating windows) is completely independent of the system for issue commands. And I like it that way. However, it also means that there must be some way of passing information from one sub-system to the other if we want one to influence the other. The obvious way to do this was to put it in the db. |
An alternative would be to just make redundant API calls to re-fetch the information, but I think we are already doing to much API calling... |
re: doing too much API calling The other option is to store github data in a proxy (either flat text files or tables in a database) |
Question: what exactly does the Also, supposing we switched to webhooks + db. One could imagine a more flexible architecture in which the webhook contacts chaosbot, chaosbot stores events it cares about in a db, and the rest of the system queries/updates the db for relevant information. |
@mark-i-m I'm not sure that an SQL database would be the best fit - maybe a message queue or task queue could be implemented for storing and queuing events, and that could also lead to improved scalability of the bot. |
/vote close This issue hasn't been active for a while. To keep it open, react with 👎 |
Vote Failed |
/vote close This issue hasn't been active for a while. To keep it open, react with 👎 |
Vote Failed |
It would be nice to have some solution to get bug fixes (especially fatal ones) without having to wait through the full voting window.
The text was updated successfully, but these errors were encountered: