Skip to content

Feature Backlog from Version 1 #63

@onggunhao

Description

@onggunhao

This is a collection of Github comments + discussions that we KIV-ed:

Usability

  • Understand ERC20 approve step, can it be done as part of "pay"? (for both lenders and borrowers)

Loan Statuses

  • Should refactor loan statuses to have different concepts for stage and outcomes
  • (LoanStatusUpdated should have timestamp)[https://github.com/Exhaustively test RepaymentManager functionality #54#discussion_r307490843]
  • Remove LogAccess event
  • Remove REPAYMENT_COMPLETE from loanStatuses

Crowdloan

  • Should crowdfundStart and crowdfundEnd be params, instead of a struct (which cannot be changed by zos?
  • fund should not allow funding beyond crowdfundEndTimestamp
  • Should have an onlyBorrower modifier (for loan disbursement)
  • Is there a way trackCrowdfundStatus can avoid calling updateCrowdfund multiple times?
  • contributor should be a lender
  • Can we have roles defined? e.g. borrower, lender
  • expect statements should not have the unspecified flag
  • Should have an onlyLender modifier (for refund)
  • isBelowMaxSupply should be belowCrowdfundingGoal

Naming

  • Rename interestRate to monthlyInterestRate
  • controllerRole should be something other than minters
  • Should have a different word for borrower who is having funds disbursed by the smart contract, and lender who is withdrawing repayments from the smart contract

RepaymentManager

  • getRepaymentStatus should have both a now() version and a `(timestamp) version
  • Event LenderWithdrawal should be PaymentReleased
  • Payees should be lenders
  • "Pay" should be "Repay"
  • Remove the whole updateRepaymentStatus?
  • Remove the pay function and just use ERC20 transfers to track off-chain for the status of the loan?
  • Refactor borrower mint and approve function (I can't remember what I was thinking when I wrote this down)

Overall

  • Implement loanStatusUpdated messages throughout the smart contract

Testing

  • Implement more realistic test scenario generation
  • Use a variable number of lenders, refactor split_MAX_CROWDFUND

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions