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

Liberland judiciary and smart contracts #2267

Closed
wants to merge 1 commit into from

Conversation

DorianSternVukotic
Copy link

@DorianSternVukotic DorianSternVukotic commented Mar 27, 2024

Project Abstract

Liberland is a new nation state running as much of its infrastructure on-chain. As part of this grant, we implement an on-chain judiciary and hybrid contracts to handle traditional as well as web3 business cases

Follow-up on Liberland Grant Application

Grant level

  • [ x ] Level 2: Up to $30,000, 3 approvals

Application Checklist

  • The application template has been copied and aptly renamed (project_name.md).
  • I have read the application guidelines.
  • Payment details have been provided (Polkadot AssetHub (DOT, USDC & USDT) address in the application and bank details via email, if applicable).
  • I understand that 30% of each milestone will be paid in vested DOT, to the Polkadot AssetHub address listed in the application.
  • I am aware that, in order to receive a grant, I (and the entity I represent) have to successfully complete a KYC/KYB check.
  • The software delivered for this grant will be released under an open-source license specified in the application.
  • The initial PR contains only one commit (squash and force-push if needed).
  • The grant will only be announced once the first milestone has been accepted (see the announcement guidelines).

@github-actions github-actions bot added the admin-review This application requires a review from an admin. label Mar 27, 2024
Copy link
Contributor

github-actions bot commented Mar 27, 2024

CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅

@michalptacnik
Copy link

I have read and hereby sign the Contributor License Agreement.

@keeganquigley
Copy link
Contributor

Hi @DorianSternVukotic

Are you still intending to make further changes or should we be reviewing it in draft form?

@keeganquigley keeganquigley added the changes requested The team needs to clarify a few things first. label Apr 2, 2024
@PieWol PieWol self-assigned this Apr 3, 2024
applications/Liberland_judiciary.md Outdated Show resolved Hide resolved
@DorianSternVukotic
Copy link
Author

Hi @DorianSternVukotic

Are you still intending to make further changes or should we be reviewing it in draft form?

We will update

@DorianSternVukotic DorianSternVukotic force-pushed the master branch 2 times, most recently from 66975a9 to 0d38a8b Compare April 20, 2024 18:42
@DorianSternVukotic DorianSternVukotic changed the title Draft: Liberland judiciary and smart contracts Liberland judiciary and smart contracts Apr 20, 2024
@DorianSternVukotic DorianSternVukotic marked this pull request as ready for review April 20, 2024 18:45
@DorianSternVukotic
Copy link
Author

DorianSternVukotic commented Apr 20, 2024

@keeganquigley @semuelle

Ready now, not sure what to do with PR label though.

applications/Liberland_judiciary.md Outdated Show resolved Hide resolved

Upon a comprehensive review of the solutions currently available within the Polkadot Ecosystem, we have found that none of these proposals or existing systems align directly with the unique functionality and objectives of our proposed solution. The two proposals that bear the closest resemblance to our initiative are the SaaS3 Court and the DOT Marketplace. However, upon closer examination, these systems diverge significantly from our approach in several key areas.

**[SaaS3 Court](https://github.com/SaaS3-Foundation/saas3-dao/tree/main/pallets/court)**: This proposal outlines a jury-based judiciary system specifically designed for the blockchain. However, it lacks the comprehensive legal framework that our solution offers, as it does not aim to establish a full-fledged jurisdiction or nation-state. Its primary focus is to implement a judiciary system on the blockchain, where jurors are compensated in tokens based on the outcomes of certain cases. This system, while innovative, does not encompass the breadth of legal considerations that our solution addresses.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you explain a bit more what you mean by 'comprehensive legal framework' and how this pallet falls short of that?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added explanation. Basically, the Saas3DAO is dead, and their court only supported 1 use case (sue - get money), while ours is more generic through contracts and can have arbitrary executions, not just transfer of tokens.

Pls resolve if clear.


#### Project Overview

The Liberland Judiciary is developing an on-chain system capable of acting on behalf of a party without their explicit permission in pre-determined ways with mutual consent given in advance.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In what ways does the judiciary act on behalf of another party? Can you give examples? This sounds like a fairly simple role-based setup akin to AccessControl.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question, should i answer your questions in comments or update the application to be more clear?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The best way usually is to add info to the document and then post a summary as a PR comment. Thanks.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe its explained in the rest of the proposal. Basically, the contracts define the dispute mode and actions available in dispute mode and the way to trigger them. Sometimes it can be simple proxy/access control, but dispute resolution can be a more complex process.

We will probably make use of some contract library like openbrush. Any reason you specifically suggested pendzl instead of openbrush?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any reason you specifically suggested pendzl instead of openbrush?

Pendzl is the successor to OpenBrush, which is not being developed anymore.

applications/Liberland_judiciary.md Show resolved Hide resolved
applications/Liberland_judiciary.md Outdated Show resolved Hide resolved

This limitation needs to be solved in order to run a country on the blockchain.

Liberland solves this through courts acting as on-chain oracles providing data and judgements to contracts.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you explain what a court looks like, both on-chain and off-chain? The way I understand it, "acting as on-chain oracle" simply refers to discussing a case IRL and then submitting judgements to the chain, correct? Or is there more involved?

applications/Liberland_judiciary.md Show resolved Hide resolved
@semuelle semuelle requested a review from PieWol April 23, 2024 10:43
@semuelle
Copy link
Member

semuelle commented May 6, 2024

pinging @DorianSternVukotic & @michalptacnik

@DorianSternVukotic
Copy link
Author

@semuelle

Thanks.

Everything should be handled, please resolve if its satisfactory.

@semuelle semuelle added ready for review The project is ready to be reviewed by the committee members. and removed changes requested The team needs to clarify a few things first. labels May 13, 2024
Copy link
Member

@semuelle semuelle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the updates, @DorianSternVukotic. I still have some questions, but I am going to share your application with the rest of the committee already, so they can comment as well.

| **0d.** | Docker | Dockerfile(s) that can be used to test the functionality in this milestone.
| 1. | Contract insurace | Develop default insurance contracts that can be used as collateral provider in other contracts |
| 2. | Substrate module: Judiciary Market | Module that gathers on-chain data to facilitate the operation of the marketplace of judges to be used as judges and jurisdictions in contracts|
| 3. | Contract builder | Easy to use frontend interface to build hybrid contracts by adding pre-built smart and traditional clauses, define jurisdictions, handle collateral, handle dispute mode etc. |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have you done any work on this yet? Usually, we ask for wireframes or designs at the time of application.


- **Who is your target audience (parachain/dapp/wallet/UI developers, designers, your own user base, some dapp's userbase, yourself)?**

Liberland justice system, Liberland entrepreneurs, anyone else who wants to run complex contracts and dispute resolution on chain
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How many citizens does Liberland have?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

978 + about 4000 e-residents

https://liberland.org/

Copy link
Collaborator

@Noc2 Noc2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the application and the interest in our grants program. However, I personally won’t approve the application. On the one hand, I’m personally not fully convinced about the project itself. On the other hand, I think the grants program should ideally always only support projects with some initial funding, and after this, ideally projects find other funding sources, like the on-chain treasury or VCs, etc.

@PieWol
Copy link
Member

PieWol commented May 14, 2024

Hey @DorianSternVukotic ,
thank you for the application and the effort you put into it. Sadly I have to agree with @Noc2 here. I will also not approve this application. Even though the idea sounds interesting I fear the reusability of the code produced is just not given within the remaining Polkadot ecosystem. Wishing you all the best going forward.

@DorianSternVukotic
Copy link
Author

@PieWol @Noc2 @semuelle

If i understand correctly, this means the grant has been rejected already, or is there still something left to do ?

@semuelle
Copy link
Member

There are still some other committee members who might want to comment. I'll try to get some more eyes on it until EOD tomorrow.

@keeganquigley
Copy link
Contributor

Hi @DorianSternVukotic while I'm a fan of the "open-source govt" vision of Liberland, I have to agree with my colleagues that I'm not sure these components will be of value to the greater Polkadot ecosystem. In other words, the smart contracts and the judiciary marketplace front-end seem very specific to your use case. For example, I'm not seeing how others would be able to make use of the insurance contracts.

I'm also not sure that the contract builder deliverable is necessary since there are other projects working on making it easy for non-technical users to create smart contracts. I would love to see an OpenGov-like system used by a country to move diplomatic mechanisms on-chain, (possibly at the runtime-level with no need for Solidity contracts) but I think it could be more appropriately funded by alternative sources as mentioned above.

Therefore I also will not approve the application at this time.

@DorianSternVukotic
Copy link
Author

@keeganquigley

For example, I'm not seeing how others would be able to make use of the insurance contracts.

I... dont understand this. If there is a fully functional crypto insurance system, for example health insurance like mentioned in the grant, that works within any country as long as there is a private court to enforce it, then that would definitely be a feature used by many.

The doubt i would raise would be about if we are able to build a real ecosystem around it, not if if would be useful to others if built. Am I understanding it correctly?

there are other projects working on making it easy for non-technical users to create smart contracts.

Yeah, for tokens or dApps, not for traditional business cases. If I missed something and you know of a contract builder that does what we need, I would love to hear it as it would save us time.

@keeganquigley
Copy link
Contributor

Thanks for your response @DorianSternVukotic, to clarify, I was referring to other developers rather than end-users. This led me to realize I should also explain that there have been some changes to the grants program since your last grant was received, in which we are now aiming to focus mainly on Polkadot core tech & tooling. These Solidity contracts, while interesting, aren't super specific to Polkadot and could really be written for any supported EVM chain.

Additionally, you are correct in the sense that our concern lies around the ability to create a robust ecosystem around the product, as we have had many projects in the past become unmaintained or non-starters, especially in the Healthcare arena.

Yeah, for tokens or dApps, not for traditional business cases. If I missed something and you know of a contract builder that does what we need, I would love to hear it as it would save us time.

Fair point here, but I would still argue that you're attempting to cover a lot of ground, and it seems very ambitious. Before building tooling, in my opinion it might be better to focus on just the on-chain judicial system PoC & research, as there has already been a lot conducted in this area in the Ethereum world. For example, Open Law has done some work on creating standardized legal agreements as Solidity contracts. For arbitration, both Aragon Court (now defunct) and Kleros Court have come a long way in development.

Perhaps worth checking to see if its possible to collaborate w/ one of these other projects instead of building from scratch.

@DorianSternVukotic
Copy link
Author

DorianSternVukotic commented May 14, 2024

These Solidity contracts, while interesting, aren't super specific to Polkadot

Not solidity, we are doing it in ink, our chain is substrate chain.

... focus mainly on Polkadot core tech & tooling ...
in the Ethereum world. For example, Open Law has done some work on creating standardized legal agreements as Solidity contracts

So... doing something like Open Law as substrate pallet or in ink would be covered in what grants are looking for :P ?

have had many projects in the past become unmaintained or non-starters,

Fair point, but Id like to point out that Liberland has existed since 2015, we have people living on the actual land, and also have started a PoC of company and legal ecosystem that is in use already since last month. You can check it for yourself at blockchain.liberland.org if you would like, though it requires a liberland.org account to use for now. You can browse existing companies and contracts, which is what this grants scope ties into

in my opinion it might be better to focus on just the on-chain judicial system PoC

Yeah, thats kinda what we started with, but the grant request took so long because we realized having a PoC judiciary for disputes and judiciary for companies could both be solved by the use of hybrid contracts and courts as oracles... So that original version was adapted to what we have now.

@keeganquigley
Copy link
Contributor

@DorianSternVukotic ah ok thanks for clarifying, I just assumed since I didn't see ink! mentioned in the application. That being said, ink! also happens to be undergoing a transformation currently, which means there may be alternative means of funding in the coming months. In the meantime, I can also recommend the Aleph Zero Ecosystem Funding Program, which can fast-track ink! applications up to $30k.

@takahser
Copy link
Collaborator

@DorianSternVukotic thanks for the work you put into this. Unfortunately, the committee decided to not go ahead with this proposal at this time. The reasons are those named above, mainly reusability by other parties as well as the fact that ink! is undergoing a transformation, as mentioned by @keeganquigley.
This doesn't mean that we don't see utility in what you want to develop, but for the reasons named it's currently not a good match. We hope you can secure funding elsewhere and wish you good luck and success for the future of your project.

@takahser takahser closed this May 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
admin-review This application requires a review from an admin. ready for review The project is ready to be reviewed by the committee members.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants