mastercoin-MSC / masterchest-wallet

Masterchest Wallet
MIT License
15 stars 13 forks source link

Support early fundraiser closing (spec change) #48

Closed ripper234 closed 10 years ago

ripper234 commented 10 years ago

We need the fundraiser creator to be able to issue a 'close fundraiser' command.

Essentially how that would look like is that they would say "starting block number X, the fundraiser is no longer in effect". We should probablly a flag on the issuance command - some Fundraisers would be 'early closable' and others would not.

curtislacy commented 10 years ago

I put in a spec change: https://github.com/mastercoin-MSC/spec/pull/110

I didn't put in the block number or the early closable flag, but I'm open to both (though the "early closable" flag seems unnecessary to me).

ripper234 commented 10 years ago

@curtislacy the purpose of the 'early closeable' flag is to signal that a particular fundraiser cannot be closed in advance. This is a strong commitment on behalf of the issuer, if he wishes to take that. Issuers that opt-in to having the option to early-close their fundraisers should declare this in advance.

curtislacy commented 10 years ago

I guess the question in my mind is, "why would an issuer make that commitment"? It seemed like the talk today was that there's potential upside to having the capability, both as an issuer and as an investor. Declaring that it can't be closed is indeed a strong commitment on the part of the issuer, why would they make it?

ripper234 commented 10 years ago

With Fundraisers that have a premine, it makes sense to cap it. However with fundraisers that do not premine, it makes more sense to me to keep it unlimited - since the creators are not getting special treatment, it is in everyone's interest that more funds are raised - so in this case capping it is not necessarily something you want to even allow.

I don't feel too strongly about it at this point, we can have that configurable or not. I guess not having it configurable simplifies the state machine.

zathras-crypto commented 10 years ago

As discussed with Craig, simplest implementation of an early close is to allow the address to broadcast another message (new TX type) that immediately flips the fundraiser expiry to the new messages blocktime (ie now).

That way existing models/code on fundraiser expiry/end can be reused.

Thanks Zathras

ripper234 commented 10 years ago

Agreed. Who volunteers to implement it and send a pull request on the spec for that? @zathras-crypto what do you think of my suggestion on that boolean flag on creating an fundraiser - so you need to decide when creating the fundraiser whether it's "early closeable" or not?

ripper234 commented 10 years ago

Closing this issue - this is supported already.