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

Module Development Task: Lockup Volume Restrictions #287

Closed
CPSTL opened this issue Sep 27, 2018 · 1 comment
Closed

Module Development Task: Lockup Volume Restrictions #287

CPSTL opened this issue Sep 27, 2018 · 1 comment
Labels
Module development Used when new module is created open-source community Something suggest or developed by external developers

Comments

@CPSTL
Copy link
Contributor

CPSTL commented Sep 27, 2018

Module Development Task

Lockup Volume Restrictions Module

Module Type Bounty Completion deadline
Transfer Manager TBD 14 days to complete once task is confirmed by external developer(s).

Short description

A vesting schedule but the investor address needs to hold the tokens. As an Issuer, I want to be able to establish a Lockup period for my Affiliates and Employees so that they cannot materially impact the Security Token Price by selling all their Security Tokens in a short period of time.

Bounty Requirements

  1. Module specs are fulfilled
  2. Module is implemented using appropriate module interface
  3. Module is tested with >95% branch coverage
  4. Module is delivered before deadline
  5. Module does not present any bugs.
  6. Volume restriction until date
  7. Volume restriction by time period
  8. Volume restriction by transaction

Volume restriction until date

Essentially this is a vesting schedule but the investor address needs to hold the tokens.

This can be implemented as TM module with current architecture.

Implementation

Vesting schedule for each investor is stored in the TM

require(amount <= balanceOf(from) - lockedAmount(from));

Example

This applies to staff and current shareholders. For example, if the total number of tokens issued to staff John Doe is 500,000 these are locked-up and released over 4 years.

Prior to 31/12/2019 John Doe cannot transfer any tokens
After 31/12/2019 John Doe is allowed to transfer 25% or 125,000 tokens
After 31/12/2020 John Doe is allowed to transfer 50% or 250,000 tokens
After 31/12/2021 John Doe is allowed to transfer 75% or 375,000 tokens
After 31/12/2022 John Doe is allowed to transfer 100% or 500,000 tokens

Detailed Module Specs (Wireframe Chart)

Wireframe Link: https://www.lucidchart.com/invitations/accept/9a7e8e83-81c7-4f80-8e9e-c530fa8f2a63

@satyamakgec satyamakgec added Module development Used when new module is created open-source community Something suggest or developed by external developers labels Oct 1, 2018
@satyamakgec
Copy link
Contributor

resolved by PR #290

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Module development Used when new module is created open-source community Something suggest or developed by external developers
Projects
None yet
Development

No branches or pull requests

2 participants