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

Update milestone for #329 #419

Merged
merged 2 commits into from
May 22, 2021
Merged

Update milestone for #329 #419

merged 2 commits into from
May 22, 2021

Conversation

yz89
Copy link
Contributor

@yz89 yz89 commented May 18, 2021

Hello, W3F Committee,

After several weeks of development, we find that the progress of the project deviates a little from the milestone, so we need to update the milestone content.

Grant Application PR: #329

The main plan of milestone1-1.a is to receive cross-chain assets through XCM and integrate them into Lending Market. Such as moving KSM/ DOT from RelayChain to Parachain and USDT from Statemint to Parchain. But so far neither Rococo-v1 nor the StateMint branch has been able to set up a stable testing environment for our plans.

Regarding the XCM. We have done a considerable amount of work. Please check the links below:

Over the past few weeks, we've developed some new features, such as

  • Redesigned the interest rate mode
  • Added the Liquidate Pallet
  • Added Price Pallet

We wanted to adjust the Milestone to be able to deliver Milestone 1 now.

@semuelle
Copy link
Member

Hi @yz89, thanks for the update. Is this summary correct and complete?

  • USD 1k less,
  • You have combined the Testing and Documentation deliverables into one for each milestone,
  • [M1] You have replaced the XCMP module with Loans and a Liquidation pallets,
  • [M2] You have replaced the Substrate module: KSM with a Validator evaluation schema deliverable (is this a document?).

Can you provide a bit more background about what these changes accomplish? We are generally open to moving deliverables between milestones, especially when they get delayed due to external dependencies, but it sounds as if you have completely removed and replaced a considerable part of the project.

@semuelle semuelle self-assigned this May 18, 2021
@yz89 yz89 force-pushed the update branch 2 times, most recently from 09c7206 to d0d0a26 Compare May 19, 2021 03:20
* update

* fix commments
@yz89
Copy link
Contributor Author

yz89 commented May 19, 2021

Hi @semuelle, thanks for the reply.

As you can see from the Application, our project is a lending and staking protocol based on Substrate implementation. The project, which started in February, is progressing according to plan.

Project Repo: https://github.com/parallel-finance/parallel

8 weeks ago we wanted to add XCM support to add cross-chain assets to the Lending Market. Similarly, we want to use XCM to call the RalayChain bond to do staking in a decentralized way. Therefore, we applied for grants based on these new features. As mentioned earlier, we are stuck with the XCM protocol. So in this update, we've removed the XCM related content and replaced it with other work we've done over the past 12 weeks, all of which we've planned. Our project plan has not changed, but the Milestone in Grant needs to be updated.

Let me confirm your summary:

USD 1k less.

Yes. XCM related functions have not been completed, so we are willing to reduce the amount.

You have combined the Testing and Documentation deliverables into one for each milestone

Yes. For each milestone, we will present tests and documentation for all the code. It is no longer necessary to have a separate entry for each module.

[M1] You have replaced the XCMP module with Loans and a Liquidation pallets

Yes. Loans Pallet is the implementation of the Lending Protocol. Liquidation Pallet will do automated liquidation work based on OCW. We're going to deliver the code.

[M2] You have replaced the Substrate module: KSM with a Validator evaluation schema deliverable (is this a document?) .

I moved back the Substrate module: KSM. Validator Evaluation Schema is a Document. This is our strategy for nominating Validators.

@semuelle
Copy link
Member

Thanks for the quick reply. Let's see what the rest of the committee thinks.

@semuelle semuelle added the ready for review The project is ready to be reviewed by the committee members. label May 19, 2021
@alxs
Copy link
Contributor

alxs commented May 19, 2021

Hi @yz89. I understand why you'd want to propose these changes, since as you correctly identified most of the components you wanted to build on top of are still in the early stages. However I do wonder if this shouldn't rather be a different grant altogether since the scope differs substantially.

In any case, some of the new deliverables you propose are already present in the ecosystem. Could you please do a bit of research into existing pallets for the proposed functionality and see to what extent you'd need to adapt them to your use case if at all? Lending, liquidation, staking and slashing are all implemented across multiple projects. Oracles too, you may want to look into ChainLink's or Bandot's implementations.

Bifrost are also working on implementing liquid staking, but I don't know how far they are with the development. Maybe @wodlj1314 wants to leave a few comments/discuss possible collaboration.

@yz89
Copy link
Contributor Author

yz89 commented May 20, 2021

Hi @alxs. Thanks for your reply. I understand that the new content we replaced is duplicated with the existing projects in the Polkadot ecosystem. This will make this update difficult. If so, I would close this PR. Please let me know if my understanding is correct.

Regarding staking, we saw a lot of projects doing liquidate staking in communities, each with its own unique solution. Such as, Acala uses a bridge for the interaction between Parachain and Relaychain. Stafi uses staking derivative, and issues ERC20 rDOT. We looked at the code for these projects.

Our solution is different from the above projects. We will set up multi-signed accounts on RelayChain, and then conduct NPOS nomination by controlling these multi-signed accounts through Parachain on-chain governance.

Here is the design document: https://docs.parallel.fi/white-paper#iv-staking-protocol
Code(WIP): https://github.com/parallel-finance/parallel/tree/master/pallets/staking

I think in an ecosystem of developers, it's a good thing to be able to encourage diverse approaches to achieving similar goals.

@alxs
Copy link
Contributor

alxs commented May 20, 2021

Yes, that's what I meant. We generally try to avoid this. It's okay as long as teams can justify why they'd need to implement something that already exists in the ecosystem from scratch, or if they can point out significant differences between existing approaches and theirs. But at some point it doesn't make sense for us to fund reinventing the wheel where a couple of good implementations exist already.

In this case, seeing as you're aware of other solutions and especially after looking at the documentation, I'm more than happy to go ahead with the amendment. Frankly I was impressed with the documentation, I hadn't looked at it since it's just modestly mentioned in the additional info. But it contains exactly the information we're looking for. Could you add links to the relevant sections in the design document to the deliverables wherever possible? This would make the evaluation easier from our side.

| 3.c | Docker | We will provide a dockerfile to demonstrate the full cross-chain functionality |
| 4. | User Testing | We will conduct user testing to improve our product's UX and UI, to ensure that the borrowing and lending functionalities are intuitive. Initially, we will conduct qualitative user testing by observing 10-15 users use the v1 platform and provide a summary of the findings and improvements made based on insights. |
| 1.a | Substrate module: Loans pallet | Loans pallet will be implemented as a multi-assets lending protocol which offers lending and borrowing by using floating rate model. |
| 1.b | Substrate module: Liquidation pallet | We will implement a liquidation solution build with Substrate Off-chain Worker, which will calculate the health factor of each borrower's account and send a liquidation transaction automatically. |
Copy link
Contributor

@alxs alxs May 20, 2021

Choose a reason for hiding this comment

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

For example here

Suggested change
| 1.b | Substrate module: Liquidation pallet | We will implement a liquidation solution build with Substrate Off-chain Worker, which will calculate the health factor of each borrower's account and send a liquidation transaction automatically. |
| 1.b | Substrate module: Liquidation pallet | We will implement a liquidation solution build with Substrate Off-chain Worker, which will calculate the health factor of each borrower's account and send a liquidation transaction automatically. The full expected functionality is described [here](https://docs.parallel.fi/white-paper#4-liquidation). |

assuming this pallet would indeed provide all functionality described in subsections 4.1, 4.2 and 4.3.

@yz89
Copy link
Contributor Author

yz89 commented May 21, 2021

Thank you very much. I am glad to see that you agree to continue this amendment. I will add the links to the relevant sections in the design document to this amendment.

@yz89
Copy link
Contributor Author

yz89 commented May 21, 2021

I added the links. If there need some more information in the evaluation, please let me know. Thanks.

Copy link
Contributor

@alxs alxs left a comment

Choose a reason for hiding this comment

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

Thanks @yz89. Happy to go ahead with the amendment.

@semuelle
Copy link
Member

At the risk of opening a whole new can of worms, wouldn't it make more sense to just move the XCMP pallet to a Milestone 3 at the end of the grant? The XCMP situation might look differently 8 weeks from now, and even if not, you will still be able to submit M1 and M2 and postpone M3 if necessary.

@yz89
Copy link
Contributor Author

yz89 commented May 22, 2021

Hi @semuelle, it's a good idea for us. It may increase the amount of funding, thank you.

With this amendment, we revisited the deliverables. The deliverables should be protocols that we implement ourselves because that's what we want to do, and that's what brings something new to the entire ecosystem. We plan to participate in the auction of Kusama. As a parachain, we will support the XCM protocol even without a grant. So we decided not to add M3, but thank you for your advice.

@semuelle semuelle requested a review from Noc2 May 22, 2021 10:19
@Noc2 Noc2 merged commit f54a70a into w3f:master May 22, 2021
@w3f w3f deleted a comment from github-actions bot May 22, 2021
chrisli30 pushed a commit to AvaProtocol/W3F-Grants-Fork that referenced this pull request May 31, 2021
* update milestone

* update

* fix commments

* add links for deliverables
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.

4 participants