At the meeting, they actively discussed the payment for the debugger contest, when an emergency situation occurred — the most fundamental disagreement between the judges of the jury. Also, the topic for discussion was the RTDB contest and who will ultimately decide on the membership of the new group in the jury.
To Pay Or Not to Pay: What the Smart Contract Says
The fact is that if the first prize-winner in a controversial contest received consent from all four judges, then the second, according to anazarov79, had 2 reject and 1 abstain and only 1 positive vote. Since SG faced this for the first time and the rules do not clearly define what to do in such cases, it is simply necessary to discuss it and clearly decide what decisions to make in such situations in the future.
Marina Guryeva confirmed the situation: “Neither the terms of the contest nor the SG rules stipulate that if a work is rejected by a certain number of judges, it automatically loses its place. In this case, it turns out that some judges did not give a vote. There is no general reject, but there is a partial one. This case is not considered by the rules, it is not said anywhere that we will not pay the participant if this happens”.
Boris Ivanovsky believes that first of all it is necessary to gather those judges who made different votes and reach an understanding, because, according to him, a reject means that the work does not meet the conditions of the contest, and if it has a positive vote, then it does… It is clear that people know something and something they don’t. But the situation in which some judges vote with rejections, and others with positive votes, is considered extremely abnormal… If there is a split, then this is what needs to be discussed first. It is possible that someone simply does not understand what voting is and what the rules are.
Marina Guryeva wondered what to do in such a situation — whether to re-vote? Pavel P believes that SG can make its own decisions and if there is a precedent, it is necessary to decide whether to make propositions.
Mitja (TON Labs) objected that this is not an SG issue: “It’s just that the smart contract does not properly account for this case. It is necessary to propose a solution at the level of the contract, and what to do with the old voting is another question. In the future, this is a non-working story, someone has to get together and decide what to do. The contract must regulate the consensus, which is bound to act in accordance with the rules”.
If Mitja is sure that according to the contract, the vote took place and nothing can be decided, then Pavel P did not agree, because he believes that SG still accepts the rules, and then it is necessary to deploy the contract with the appropriate rules: “We are now discussing not how to change the work of the smart contract, but how to interpret the result. Because SG makes the payments anyway”.
Marina Guryeva, on other hand, is sure that smart contracts should not work outside the SG rules. She believes that it is necessary to either write the rules on SG, and then make a smart contract for them, or somehow bring them to a consensus.
Boris Ivanovsky suggested getting acquainted with how this mechanic is implemented, because, in his opinion, it is very easy to change a smart contract for conflict governance, one line of code is enough.
Marina Guryeva is unwavering and believes that the rules in SG should be spelled out: “We can’t send people to read the additional rules that you didn’t see in human language on the smart contract. If you are not a specialist, then you will not recognize something”.
Pavel P does not deny that it is quite easy to change the smart contract, but it should have been done a few months ago, so that there would not be dozens of such discussions.
Ivan thinks that there should be 2 reject, 1 abstain and 1 positive vote. And now, in his opinion, you need to look at what the contract says and just pay, following the recommendation.
Alex Novikov believes that it is necessary to decide whether the submission has passed or rejected by the SNV: “Roughly speaking, the submission does not pass until it meets the criteria. In my opinion, this is more logical. It is clear that there is some error in the contract. If you look at the actual submission, the criteria for passing, the description of the contest, then the most basic requirements were not met”.
After the discussion, Marina invited those present to vote on whether to make a payment for a specific case. The result after the vote is negative.
They decided that they need to make clear changes to the rules in English and be sure to insert them in the proposals of the contests. And, of course, have a smart contract in accordance with the rules.
But at the same time, there is one more question on the agenda: whether 50+1 remains reject, and the submission cannot take any place and is rejected automatically, or it will be a different percentage.
Ivan suggested the following option: “The conditions for rejecting the submission should be as follows: exclude abstains from the considered votes and then, if 50+1% of the votes are for the reject, the submission will be rejected”.
Alexey Novikov also expressed his opinion: “The condition for submission to pass should be, rejecting those who are abstained, and among the remaining votes who have put at least some score, there should be 50+1%. So that the submission does not pass by default, but if the majority of votes on SNV voted for it, then it passes, participates in the contest and receives a reward in accordance with the table”.
Alexander Hramcov agreed with the opinion that if because of those who did not abstain, the majority will reject, then so be it.
Boris Ivanovsky asked Alexey, as the only judge who voted in favor of the controversial submission, why he gave a positive rating. He said that he is ready to answer, but only after watching his notes. Marina asked to move this discussion outside of this meeting.
Renat Skitsan summed up: “There is a contract that makes some decisions, and all people act as the protocol ascribes to them. If all people are not satisfied with the protocol, then they change it and use it. As the smart contract decided, it will be so”.
After the vote, the majority decided that if 50+1% reject, the participant is excluded from the reward pool. From now on, smart contracts must meet this rule.
Contests Within SG
Boris Ivanovsky, who is responsible for the toolchain, noted that the goals that have been set so far have not really advanced the community in terms of tools: “We need to conduct a detailed review and see what we have done during this time and, in this regard, plan what we will do next”.
RTDB Contest. DevNet is Dead. The Security of the Current Network Is Not Guaranteed
Mitja: “We analyzed the Hypercore protocol at the contests and came to the conclusion that most of it repeats what is already in the blockchain. We don’t see much sense in using it right now. But still, we are going to launch a contest on the RTDB architecture on Free TON, with a recommendation to make an architecture that takes into account and uses the Free TON protocols”.
On this occasion, Dmitry asked the question: “Will RTDB be made for C++ or Rust node, or is the implementation for Rust node seen as the only relevant one in the near future?”
Mitja replied that for now — design and architecture. “By the way” Mitja continued, “DevNet died a few minutes ago, he was wounded by our engineer, I don’t want to voice the cost, but it’s not that big. Therefore, we are urgently forcing work on the Rust node, the Rust network… Now the main branch of our development has moved to the Rust network. It is launched, it will be updated with the latest edits and a config will be released, which will invite everyone to participate in contests that will be held in this network, and in debugging, crashing, etc. As soon as we know that the mechanisms on the Rust network are debugged, at this point the mechanisms can be transferred to the C++ node. There is a suspicion that part of the transfer of these mechanisms will take a very long time, because it will require a redesign, including the architecture of the C++ node, which is essentially done synchronously”.
Sergey Tyurin noted that the possibility of a node-independent solution is interesting so that you can work with both Rust and C++ nodes. According to Mitja, it is not a problem to make a contest for implementation for all nodes.
Dmitry had a question about interaction with the guys who are currently engaged in Rust-node, because in his opinion, there is no connection with the developers. He is also interested in the question of documentation, architecture.
Mitja noted that communication with developers will not be direct, but will occur through people, including, for example, Artem Ryabov. This is done in order not to distract them. “All feedback will be collected meticulously and carefully. Communication will be, but so far one-way, in order to more effectively solve the work. Rust-node is the highest priority area that is moving at the fastest pace. And at the moment, from our point of view, this is the only way to ensure the security of the network. We can’t guarantee the security of the network that we currently have. I speak plainly.
As for the documentation, everything is much better in the Rust node, because we generated the documentation directly from the Rust (Rust docs) — it’s brilliant. So the consensus documentation is already posted. But in general, there will be another separate Rust docs book about node”.
Questions About Jury Membership
Ivan wanted to speak on the proposal of the Global Community SubGov – Jury Selection contest, the main direction of which is the formation of the jury, the scheme of its work. But there is also an idea: “To open a discussion about how exactly smart contract developers (all communities) can participate in supporting all business interests from SG, DGO, DeFi movement, and collaboration partnership. I consider it necessary to launch”.
Alex Novikov asked the following question: “Who will make the decision on membership in the new group? And if it will be the same DevEx, then why do we need to create new groups? I don’t mind, I just want to understand why we are doing this, if we can use the existing one”.
Mitja did not hesitate to answer: “The proposal is automated by inviting only the winners of contests on this topic to the jury. I don’t know what to do with the old ones, you can rename them, for example, to “Burgundy lovers”. Any SG will be judged by a new group”.
Alexander Khramtsov doubted how high-quality the judges would be if they were among the winners of the smart contracts contests, because there are not so many of them.
Borisn invited everyone to recommend his candidacies: “We need people who take the contracts apart, look at them practically, try them, look for vulnerabilities. It’s a hell of a job, but, for example, after talking with Alexander about the contract, I tend to think that he is competent.
And it is not so important how a person builds, but how he breaks. How well he looks for inconsistencies, problems, all sorts of troubles with the evaluation of smart contracts. Therefore, if there are any reliable stories of the destructive work of this jury member, then, in my opinion, they are much more valuable in terms of assessing”.
Ivan is sure that in order to ensure a high level of expertise of the jury’s smart contract, it is proposed to have a consensus with the existing jury to add members, as well as to launch small contests in parallel, so that everyone has a chance: “Deploy and implement some tokens, i.e. to show creativity, and to give space for this: to deploy tokens, to help with the deployment of contest contracts. Make a contribution, no matter where — in Free TON, a series of smart contracts… That is, the contests are short, small, inexpensive, and the main award is the participation in the jury. And no deadlines. I propose to make these contests last forever, with a very modest reward, because it’s more like volunteering. To highlight those who take the initiative”.
Marina noted that all this must be recorded.