Proto: Allow ticket transfers from originated to implicit accounts
Context
We shall start allowing smart contracts to transfer tickets to implicit accounts.
Contracts can send tickets to implicit account with TRANSFER_TOKENS
instruction. Implicit account can now accept ticket cty
on the default entrypoint.
Therefore,
- if the parameter type is
unit
, it is a regular XTZ transfer - if the parameter type is
ticket cty
for some comparable type, it is a ticket transfer with optionally some XTZ
In addition to allowing the CONTRACT (ticket ...)
to accept implicit account destination, parsing for contract (ticket ...)
Micheline value is also enabled, so that TRANSFER_TOKENS
can be called on them to initiate ticket transfers as well.
It is pending on !6108 (merged) so that extra tests can be done, such as sending tickets from contracts to implicit accounts and back.
Furthermore, this MR is promised to address the following issues.
-
#4183, a list of scenarios that we need to test for -
#4181 (closed), make sure that octez-client
can handle requests to send tickets in different directions -
#4173, update Michelson document to reflect the changes introduced by this MR -
#4083, retire the test in test_tx_rollup
protocol test and replace it with proper, commuting transaction tests
Documentation for this change will be added in a separate MR: !6901 (merged)
Manually testing the MR
Checklist
-
Document the interface of any function added or modified (see the coding guidelines) -
Document any change to the user interface, including configuration parameters (see node configuration) -
Provide automatic testing (see the testing guide). -
For new features and bug fixes, add an item in the appropriate changelog ( docs/protocols/alpha.rst
for the protocol and the environment,CHANGES.rst
at the root of the repository for everything else). -
Select suitable reviewers using the Reviewers
field below. -
Select as Assignee
the next person who should take action on that MR