On Fri, Apr 27, 2018 at 1:56 PM, Kerim Aydin <ke...@u.washington.edu> wrote: > > > I don't know if this will turn out to be useful, but I've put a protos repo > on our github: > https://github.com/AgoraNomic/protos > > I've put in there an Assets start-of-proto. Right now, it's a copy of the > assets rule, where I've clipped out secondary stuff that may be better housed > in other rules (and put it down below in the doc). Feel free to contribute...
I've opened a PR, splitting the assets rule more completely and making some things a bit neater, given the mess it's in is my fault. The revised assets section follows, for those who don't want to look at the Github (also probably a good idea to keep discussion on list): --- Amend Rule 2166 (Power=3.0), "Assets", to read as follows: An asset is an entity defined as such by a document that has been granted Mint Authority by the Rules (hereafter the asset's backing document), and existing solely because its backing document defines its existence. An asset's backing document can generally specify when and how that asset is created, destroyed, and transferred. The rules collectively have Mint Authority. Contracts have mint authority. A rule defined asset is public; one defined by a contract is private. The recordkeepor of a class of assets is the entity (if any) defined as such by, and bound by, its backing document. That entity's report includes a list of all instances of that class and their owners. This portion of that entity's report is self-ratifying. For the purposes of this rule, the promulgator of a regulation is bound by it. Create a power 3.0 rule, entitled "Ownership", with the following text: Each asset has exactly one owner. If an asset's backing document restricts its ownership to a class of entities, then that asset CANNOT be gained by or transferred to an entity outside that class, and is destroyed if it is owned by an entity outside that class. The restrictions in the previous sentence are subject to modification by its backing document. By default, ownership of an asset is restricted to Agora, players, and contracts. If an asset would otherwise lack an owner, it is owned by the Lost and Found Department. Rules to the contrary notwithstanding, the Lost and Found Department can own assets of every type. Assets owned by the Lost and Found Department can be transferred or destroyed by any player without objection. Create a power 3.0 rule, entitled "Asset Actions", with the following text: An asset generally CAN be destroyed by its owner by announcement, subject to modification by its backing document. An indestructible asset is one defined as such by it backing document, and CANNOT be destroyed except by a proposal or rule, other than this one, specifically addressing the destruction of indestructible assets or that asset in particular; any other asset is destructible. To "lose" an asset is to have it destroyed from one's possession; to "revoke" an asset from an entity is to destroy it from that entity's possession. An asset generally CAN be transferred (syn. given) by announcement by its owner to another entity, subject to modification by its backing document. A fixed asset is one defined as such by its backing document, and CANNOT be transferred; any other asset is liquid. When a rule indicates transferring an amount that is not a natural number, the specified amount is rounded up to the nearest natural number. Create a power 3.0 rule, entitled "Currencies", with the following text: A currency is a class of asset defined as such by its backing document. Instances of a currency with the same owner are fungible. The "x balance of an entity", where x is a currency, is the number of x that entity possesses. Where it resolves ambiguity, the asset or currency being referred to is the currency designated as "Agora's official currency", if there is one. Create a new power 3.0 rule, entitled "Contractual Ownership", with the following text: A contract's text can specify whether or not that contract is willing to receive assets or a class of assets. Generally, a contract CANNOT be given assets it is unwilling to receive. If the contract's opinion on the matter would otherwise be uncertain, the procedure to determine its willingness is as follows: 1. If the contract appears to anticipate being given assets, other than for sustenance (e.g. by authorizing parties to spend the contract's assets), then the contract is willing to receive all assets. 2. Otherwise, it is unwilling to receive all assets. The previous paragraph (including the list) notwithstanding, a contract CAN be given 1 unit of Agora’s official currency a month for its sustenance payment, so long as it never has more than 1 unit of Agora’s official currency at a time. Create a new power 2.5 rule, entitled "Contract State", with the following text: If any change to a contract's text, internal state, or other properties would cause them to become indeterminate and remain so for any non-infinitesimal amount of time, the change is canceled and does not occur. Rules to the contrary notwithstanding, a contract CANNOT oblige a person who isn't a member to record its internal state, nor is the default recordkeepor responsible for tracking a contract's internal state. --- -Aris