You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue: Implement Initial Token Distribution in Constructor
Description
This issue explores the possibility of handling the initial token distribution directly in the constructor of the Unruggable Memecoin contract. The proposal is to pass arrays of holders and their respective token amounts into the constructor, thereby conducting the distribution at the time of deployment. This approach could simplify several aspects of the contract's operation, including transfer restrictions and holder tracking prior to the launch.
Discussion Points
Distribution via Constructor: Assess the feasibility and advantages of performing the initial distribution through the contract constructor.
Simplification of Transfer Restrictions: Explore how this method simplifies the process of disabling transfers post-initial distribution and until the launch_memecoin function is called.
Reduction of On-Chain Tracking Needs: Evaluate the impact on the need for tracking initial holders on-chain.
Flexibility in Ownership and Recipient Roles: Consider how this approach maintains flexibility in defining different entities as owners and initial recipients.
Implementation Considerations
Ensure the constructor can efficiently handle an array of holders and token amounts without exceeding gas limits.
Develop robust error handling and validation for the input arrays to prevent any discrepancies in the distribution process.
Thoroughly test the constructor's distribution logic to ensure accuracy and reliability.
Maintain clarity and transparency in the contract's code and documentation regarding the distribution process.
Pros and Cons
Pros:
Simplifies contract logic by consolidating distribution into deployment.
Reduces the need for complex on-chain tracking mechanisms.
Maintains flexibility in roles and responsibilities within the contract.
Cons:
Potentially higher deployment gas costs due to the inclusion of distribution logic in the constructor.
Requires careful input validation to ensure accurate and fair distribution.
The text was updated successfully, but these errors were encountered:
Issue: #60
This is a first draft.
In the proposed implementation, the dev would pass an array
`initial_holders` of tuples `(initial_holder_address, amount)`.
The `initial_recipient` should be in the position 0 of the array. As
`initial_recipient` is an `initial_holder`, it makes sense to add him in
the array. But it implies that the sum of all amounts of the
`initial_holders` array should remain equal to `initial_supply`. This is
verified by line 116 `assert(initial_minted_supply <= initial_supply,
'Unruggable: max supply reached');`.
I'm also considering that the `initial_recipient` account should deposit
ALL of his tokens when `launch_memecoin` is called.. Otherwise it is not
possible to perform the "team allocation" check since the balance of
`initial_recipient` would be greater. If `initial_recipient` does not
deposit all of his token in `launch_memecoin` then I'm not performing
the "max team allocation" check on him which bypasses the rule (does
that make sense ?).
Didn't write the tests yet, I wanted to have feedbacks on my
implementation.
Issue: Implement Initial Token Distribution in Constructor
Description
This issue explores the possibility of handling the initial token distribution directly in the constructor of the Unruggable Memecoin contract. The proposal is to pass arrays of holders and their respective token amounts into the constructor, thereby conducting the distribution at the time of deployment. This approach could simplify several aspects of the contract's operation, including transfer restrictions and holder tracking prior to the launch.
Discussion Points
launch_memecoin
function is called.Implementation Considerations
Pros and Cons
The text was updated successfully, but these errors were encountered: