Skip to content
This repository was archived by the owner on Oct 1, 2025. It is now read-only.
This repository was archived by the owner on Oct 1, 2025. It is now read-only.

Proposal: Improvements to remove limitation on token transfer #108

@superical

Description

@superical

Background

Some time ago, there was a concern about owners accidentally or purposefully using an "unintended" title escrow for their token. Thus, in #180799702, changes were made to restrict the token from being transferred to an arbitrary address, but this is not ideal. For example, this would not allow an owner to put his token up on a secondary market if he wants to.

Restricting the NFT to a title escrow address and limiting it to only transferring to its own title escrow also somewhat reduces the benefits of using an NFT standard since we could have just used a much simpler and lighter contract to perform the operations between the beneficiary and holder.

Creating this issue to explore ideas and suggestions.

Here's an idea I'm currently toying around.

Idea

  • Remove restriction on transfer to any address
  • During issuance, issuer defines a title escrow address. This title escrow address will be the only recognised address.
  • User can transfer to any other title escrow addresses but verifier will flag that title escrow is not recognised if it isn't the one defined by issuer.
  • Aggregate title escrow instead of an independent copy for each NFT
  • Once user regains full ownership, he will hold an NFT token that can be used elsewhere.
  • Full owner can re-enter escrow defined during issuance or any other contracts (for eg, staking, etc) if he wants to.

Pros:

  • Token is "compatible" as an NFT and can be used elsewhere.
  • A quasi-prevention of a token with an "unintended" title escrow by only recognising the title escrow provided by issuer at app level.
  • Opens up the possibility of having different variations of escrows for each token. For eg, a different token can be issued to another type of title escrow that holds the token until a stablecoin payment is fulfilled.
  • Allows user to put tokens on secondary markets.
  • Cheaper issuance with aggregated title escrow

Cons:

  • Higher complexity especially at app level
  • The aforementioned "quasi-prevention" is only at app level.
  • Before this, tying NFT to a title escrow address was simpler to reason about.
  • Although it can be transferred to other title escrows, this idea can only recognise the one defined by issuer.
  • Issuer is responsible for determining the "intended" title escrow to be used with a token as opposed to in the current beta where the contract determines the escrow address.

Opening up for ideas, sers....🙉💡

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions