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
A transaction type should be added to deal with the deployment of contracts. This is necessary for a contract deployment system to be able to function in the context of phoenix.
The transaction type should allow for charging the transaction, as well as deploying a contract - meaning it should include all the relevant data and metadata to perform this.
Possible solution design or implementation
A possible way to tackle this is to replace the Transaction::call field by a new field - maybe called exec - that contains an enum that can either be a contract call, or a contract deployment.
structTransaction{/* other fields */exec:Execution,}enumExecution{Call{/*fields*/}Deploy{/*fields*/}}
Additional context
Upstream should be able to use the data of this transaction to charge the user, as well as make decisions on how much to charge. This means the fields of the new transaction should likely be public, or otherwise accessible.
The text was updated successfully, but these errors were encountered:
The deployment transaction contains the metadata necessary to deploy a
contract, together with its bytecode and possible constructor arguments.
Resolves: #163
The deployment transaction contains the metadata necessary to deploy a
contract, together with its bytecode and possible constructor arguments.
Resolves: #163
Summary
A transaction type should be added to deal with the deployment of contracts. This is necessary for a contract deployment system to be able to function in the context of phoenix.
The transaction type should allow for charging the transaction, as well as deploying a contract - meaning it should include all the relevant data and metadata to perform this.
Possible solution design or implementation
A possible way to tackle this is to replace the
Transaction::call
field by a new field - maybe calledexec
- that contains an enum that can either be a contract call, or a contract deployment.Additional context
Upstream should be able to use the data of this transaction to charge the user, as well as make decisions on how much to charge. This means the fields of the new transaction should likely be public, or otherwise accessible.
The text was updated successfully, but these errors were encountered: