NIP-2_NULS Community Constitution

  NIP: 2
  Title: NULS Community Constitution
  Author: Reaper Ran <reaper@nuls.io>
  Discussions-To: https://nuls.community/d/251-nuls-community-constitution-discussion-draft-nuls-ncg20181207
  Status: Last call
  Type: Process
  Created: 2018-12-28

Preamble

Due to the development requirement of NULS and to better facilitate the favorable operation of the NULS community and to make blockchain technology easier with NULS, the NULS community will constantly seek and implement NULS community autonomy for the realization of self-governance and self-evolution. This Constitution is hereby formulated based on the NULS community culture and philosophy.

NULS community culture: openness, freedom, autonomy, evolution

NULS community philosophy: share, inherit, grow, innovate

The following rules will be based on the NULS development consensus governance module. The Council members and Ambassadors will be appointed by a vote within the NULS core team before consensus governance module is set in motion.

NULS Foundation

December 2018

Abstract

NULS community is an organization of a group of people who highly assent to NULS community culture and philosophy and have the same purpose and vision to work for the development of NULS community ecology. NULS community members include the NULS Foundation, Council members, contributors, the open-source technology community - CODE CRAFT COUNCIL (CCC) and other all NULS Holders.

Motivation

In order to build a good community operation mechanism, promote community autonomy, and promote the NULS project to enable the community to evolve and drive independently.

Specification

The following is a specification of the NULS Community Constitution.

NULS Community Constitution

I. NULS Community Profile

NULS is a blockchain infrastructure for customizable services and a global open-source community. The designed technical architecture of NULS consists of a micro-kernel and functional modules. With innovative ideas on reducing the main block chain and decoupling events and services, high modularization on underlying architecture is achieved. The NULS project, following the principles of hot plugging, modularization and parallel expansion, provides smart contracts, multi-chain mechanism and cross-chain consensus to reduce cost of development and use, and to promote the application of blockchain in the commercial field. With the proposal of basic framework containing modular thinking and multi-chain mechanism, NULS upholds the “chain” as its core development philosophy and is striving for building a core product - “Chain Factory” where users can select core function modules as they like to create their own blockchains on the NULS chain network and define their own business logic with little programming, to include smart contracts.

NULS community is an organization of a group of people who highly assent to NULS community culture and philosophy and have the same purpose and vision to work for the development of NULS community ecology. NULS community members include the NULS Foundation, Council members, contributors, the open-source technology community - CODE CRAFT COUNCIL (CCC) and other all NULS Holders.

II. NULS Foundation

NULS Foundation, short for the NULS FOUNDATION PTE. LTD. (201729333G), is a limited liability company incorporated in Singapore. It focuses on supporting the construction of NULS community ecology and technical research and development to promote the security, harmony and development of NULS community ecology, with the primary target of ensuring sustainable development of NULS Community ecology.

(I) Objectives of NULS Foundation

Give rewards to contributors, CCC members and members of other communities according to their contributions with the aim to promote development of community ecology and support the NULS community development, including but not limited to:

  1. Code writing
  2. Applications development
  3. Operation and promotion
  4. Other actions in favor of NULS community ecology development

(II) Source of NULS Foundation

20,000,000 NULS from the NULS and entrusted revenues from the contributors.

(III) Management of NULS Foundation

The NULS Foundation shall be managed and utilized based on the principles of fairness, justice and openness with respect to the development needs of the NULS Community ecology. NULS’ fund account is open to the community and subject to supervision of all community members. All proposals of incentives shall be managed under this Constitution and incentives may be given at the back end. The funds in the account shall be managed by the Foundation’s executives in its earlier stage, but then shall be handed over to the community for on-chain management once the governance mechanism is available on the chain.

III. Council members

(I) Introduction to Council members

As a member organization established under the Regulations on Foundation Management, NULS Community’s Council members shall be responsible for NULS Foundation’s objectives as well as the whole community and will add the roles into NULS self-governance model step by step.

(II) Appointment of Council members

The Council members, consisting of 11 members, is formed based on a popular vote within the community. The 11 Council members, which may be changed by proposal, shall be composed of 4 technology community developers (developer council member) elected based on a ballot participated by all developers; and 7 members elected by ballot within the community (standing council member). The top 4 in ballot within the developer community shall be elected and the remaining members shall be the first 7 in dynamic poll. Equivalently, there will be at least 4 core developers in the Council members.

  1. Application. All community members are allowed to run for a position in NULS community’s Council members. The participants only need to meet the following conditions: have at least 50,000 NULS in the application address and accept real-time supervision by the system; provide personal information, as detailed as possible and reserve at least 50,000 NULS in the application address; participants applying for developer council member shall retain at least 20,000 NULS in the application address.
  2. Voting. If the application is approved, all applicants will be ranked by votes from high to low and all NULS Holders can cast a vote. The voting right shall be assigned according to the token ownership accurate to the fourth decimal place. Token and voting right shall be inseparable. Each vote is allowed to select at least 4 developers and 7 Council members.
  3. Appointment. According to votes, the first 7 in the candidate list of Council members and the top 4 in the developers list shall be appointed as the Council members and the addresses of these Council members will be given the permission to put forward a proposal with respect to the system.
  4. Dropping out. If the NULS holdings in candidate’s address are less than 20,000, the candidate is deemed to drop out of the campaign and all the votes will be cleared without his / her presence on the candidate list. If the candidate exits the race of his / her own accord, all his / her votes will be also cleared without his / her presence on the candidate list. After dropping out, a new application shall be made if the application address wants to run for Council member again.

(III) Rights and responsibilities of Council member

  1. Proposal. Council member will be given the permission to put forward a proposal and the proposal will be charged 0.1 NULS. In addition, the proposal may be modified later. Proposal includes the following types:

    (1) Put forward a proposal to create the role of contributor and delete the role of contributor. The voting period will last 15 days and if the approval rating reaches 70%, the proposal will be executed; otherwise it will be invalid.

  • Role for campaign. The Council member shall put forward a proposal to create a role for campaign and provide fixed incentives or delegation. This role works in a similar way with the Council membership. One or more persons may be elected by ballot within the community to take on the role.

  • Permanent role. Put forward a proposal to create a role to give incentives or delegate. The community may vote for or against the assumption of the role.

    (2) Put forward a proposal to modify system parameters. The voting period will last 30 days and if the approval rating reaches 90%, the proposal will be executed; otherwise it will be invalid.

  • Adjustment of lower node agency commission.

  • Adjustment of transfer commission.

  • Adjustment of contract call commission.

  • Adjustment of Council member proposal commission.

  • Adjustment of adjustable system parameter in other systems.

    (3) Put forward a proposal to perform Foundation account operations. The voting period will last 15 days and that of the contributor role proposal will last 5 days; if the approval rating reaches 70%, the proposal will be executed; otherwise it will be invalid.

  • Delegation. For example, a Council member puts forward a proposal to delegate the node of an important role, the node rewards will be used to support the work to be performed by the role.

  • Fund transfer. For example, a Council member puts forward a proposal to transfer funds to financially support a community activity. The initial upper limit of transfer shall be 10,000 NULS and this parameter can be modified.

  • Node creation. For example, a Council member puts forward a proposal to create nodes with respect to developers and carry out a certain amount of delegation; the node rewards will be used to support the work to be performed by the developer.

  • Smart contract call. It aims to perform NRC20 token operation by calling the smart contract. For example, the Council member shall call the smart contract with respect to the CCC.

  1. Start a vote. Council member doesn’t need to pay a deposit if starting a vote and may initiate a vote of another type.
  2. Responsibilities of Council member.
  • Council member shall communicate with the community in good time.

  • Act in strict accordance with the community’s Constitution.

  • Share the same vision and purpose with NULS.

  • Take it as its own mission to protect community members’ interests.

Note: All community members shall take an active part in all proposals and voting because every proposal is critical to the development of the NULS project. As a member of NULS Community, every holder should participate in voting. The absence from voting of any member shall be deemed a waiver of the proposal or the voting right.

IV. CODE CRAFT COUNCIL (CCC)

(I) Introduction to the CCC

The CCC consists of core developers from the global NULS Community and those who are interested in blockchain technology and highly agree with the NULS philosophy. They will take part in underlying architecture development of the NULS project and create the technical ecology together with the core development team.

(II) Philosophy of the CCC

We stick to the following philosophy in the technology community:

  1. Equal: the technology community and core team are equal and work together for joint development.

  2. Synergetic: the technology community and core team co-build the underlying architecture and create NULS ecology together.

  3. Sharing:

  • The whole community shares the achievements of NULS technology.

  • The whole community shares the development dividend of NULS.

  • The whole community shares NULS’s influence and reputation.

  • The industry shares the technical innovation brought by NULS.

  • The industry shares NULS’s standard establishment to promote industry development.

  1. Fair: the gains of every developer are based on his / her ability and contribution to seek for fairness and justice.

  2. Innovative: strong technology community is the basic guarantee of innovative thinking of blockchain.

(III) Appointment of the CCC member

The joining of every CCC member shall be put to vote. Before that they need to present output worthy and recognized to include a period of adaptation (1 or 2 months generally).

The process of joining CCC is:

  1. Have a preliminary communication with a CCC developer to briefly introduce his / her own experience and skilled programming language.
  2. Select tasks they are interested in and capable of. We will let developers join in each development taskforce to work with each other.
  3. Leader of the taskforce will provide necessary documentary information to help developers start in an efficient, expedient manner. We also hope developers can maintain effective communication with one another for smooth, ease of work. About 1 month later, the developer who remains consistent with the work and produces a high-quality product, can file a node application with the technology community.
  4. After intense review by the technology community and core team, the developer will be one of the CCC if the application is approved.

(IV) Rights and responsibilities of the CCC member

  1. NULS hopes to build a module repository covering 80% of underlying technologies in the blockchain field. We aim to lower the entry threshold of blockchain industry by increasing the modules in the repository. In doing so, the enterprises will undertake a much lower chain issuing cost and users will find it easier to use chains. We believe that only in this way can blockchain technology become a part of our daily life.

  2. The technology community will work with the core team to build a brand new architecture – NULS 2.0, which will enable NULS modules to work independently and the low-coupling module shall interact via the interface defined by standard. Then, developers (regardless of development language) can use adept programming languages as long as they comply with NULS module standard to develop the functional modules they need to enrich the module repository.

  3. After that, NULS will launch Chain Factory, a chain creation tool based on the module repository. If the developer is very clear about parameters of the blockchain developed by himself / herself, like the consensus mechanism, block size and block producing time, even if he / she doesn’t have much understanding of the underlying technology, he / she can own a public chain within several minutes in 4 simple steps (of course consortium blockchain and private blockchain are available). The public blockchain development time, which is usually six months to one year, is greatly reduced.

  4. Technology community will take part in all of the work mentioned above. You can bring forward any suggestions and comments to our plans regarding the technology community.

  5. The CCC members, the same as the core team members, shall have the right to know, participate in, assent or object to project progress.

V. Contributor

(I) Contributor for campaign

Contributor role for campaign will be deemed a post in the community available for post-based recruitment and community supervision and management. The Ambassador is a contributor role for campaign and the current Ambassador campaign rules can be seen at nuls.community.

(II) Permanent contributor

Permanent contributor will be deemed a post in the community available for people-based post setting and community supervision and management.

VI. Project Budget

(I) With respect to contributor

Where the Foundation account operation is performed based on the approved proposal of a contributor role in accordance with the established requirements, the Council members shall put forward a proposal to start a vote. The voting period will last 7 days and if the approval rating reaches 70%, the proposal will be executed.

(II) With respect to other transaction funds

The Council members shall put forward a proposal to apply for other budget items. According to the proposal, The voting period will last 15 days and if the approval rating reaches 70%, the proposal will be executed as planned.

VII. Other votes

(I) Start a vote

  1. The Council member shall start a vote and only the transaction fee is required.

  2. Ordinary members shall cast a vote. Deposit (100 NULS now) + transaction fee.

(II) Vote by proxy

  • Anyone can delegate his / her voting right to an agent who shall cast a vote on behalf of him / her.

  • Any NULS user can be an agent.

  • Only primary agency is allowed; secondary agency is prohibited. Every NULS user is only allowed to delegate his / her own voting right.

  • The agency can be cancelled at any time and the vote that has been given will be revoked (voting in progress).

VIII. Feedback

We welcome all of your suggestions and comments on this Constitution. Please contribute your suggestions to the following URLs:

NULS community website: https://nuls.community

Feedback post: https://nuls.community/d/132-we-need-your-suggestions

 NIP: 2
 标题: NULS社区章程
 作者: Reaper Ran <reaper@nuls.io>
 讨论渠道: https://nuls.community/d/251-nuls-community-constitution-discussion-draft-nuls-ncg20181207
 状态: 公示
 类型: 流程
 创建日期: 2018/12/28

前言

根据NULS项目的发展需要,为了更好地促进NULS社区良性运转,达成NULS让区块链技术更简单的愿景。NULS社区将不断探索和实施NULS社区自治,实现NULS项目自治和自进化。基于NULS社区文化和社区理念,特此制定社区发展章程。

NULS社区文化:开放、自由、自治、进化

NULS社区理念:分享、传承、成长、创新

以下规则将会基于NULS开发共识治理模块,在共识治理模块上线前,理事会和大使将由NULS核心团队发起投票来执行。

NULS基金会

2018年12月

摘要

NULS社区是对NULS社区文化和理念高度认可的一群人的合集,是本着共同的目标和愿景,一起共同为NULS社区生态发展而努力的组织。NULS社区成员由NULS基金会、理事会成员、贡献者角色、开源技术社区(NTC)和其他所有的NULS Holder构成。

动机

为了构建一个良好的社区运行机制,促进社区自治,推动NULS项目能够让社区自主进化和自主驱动。

规范

以下内容属于NULS社区章程的规范。

NULS社区章程

一、NULS社区简介

NULS是一个面向定制化服务的区块链基础设施,一个全球化的开源社区项目。NULS设计的技术架构由微内核和功能模块组成,提出了弱化主链的全新思维,通过将事件和服务剥离,进而实现高度模块化的底层架构。同时,NULS制定了一套工业化区块链技术标准,遵循热插拔、模块化、平行扩展原则,提供智能合约、多链并行、跨链共识等运行机制,降低开发和使用的成本,推动区块链商业应用进程。NULS提出模块化思维与多链并行基本架构,秉承以“链”为核心的发展理念,打造核心产品“链工厂”。基于NULS,用户可以灵活选择核心功能模块创建NULS链网中的区块链,也可以通过很少的编程工作基于NULS来智能合约来定义自己的业务逻辑。

**NULS社区是对NULS社区文化和理念高度认可的一群人的合集,是本着共同的目标和愿景,一起共同为NULS社区生态发展而努力的组织。**NULS社区成员由NULS基金会、理事会成员、贡献者角色、开源技术社区(NTC)和其他所有的NULS Holder构成。

二、NULS基金会

NULS基金会是NULS FOUNDATION PTE. LTD.(201729333G)简称, 是设立在新加坡的一家有限责任公司。NULS基金会致力于支持NULS社区生态建设和技术研发,促进NULS社区生态的安全、和谐、发展。主要目标是保证 NULS社区生态的可持续发展。

(一)NULS基金会宗旨

以促进NULS社区生态发展为宗旨,根据贡献者角色、NTC成员和其他社区成员对社区的贡献予以激励,对NULS社区的发展作为支持,包括但不限于以下内容的贡献:

1、代码贡献

2、应用开发

3、运营推广

4、其他有利于NULS社区生态发展的具体事项

(二)NULS社区基金的来源

NULS原始分配20000000NULS注入社区基金,贡献者角色委托收益。

(三)NULS社区基金管理

根据NULS社区生态发展的需要,本着公平、公正、公开的原则对NULS社区基金管理和使用。NULS社区基金账户面向社区公开,接受社区成员共同监督,所有激励的提案根据本章程进行管理,通过后方可进行激励支出。账户资金前期将由基金会管理成员管理,随着治理机制的逐步上链,后期逐步交由社区上链管理。

三、理事会

(一)理事会介绍

NULS社区理事会是基金会管理条例下设的成员组织,为以NULS基金会的宗旨负责,为NULS全体社区负责。

(二)理事会成员产生

社区理事会的产生,将会通过社区投票,产生11位理事成员。社区理事会成员为一共11位(后续可提案修改),其中4位须为技术社区开发者**(技术理事),4位必须熟悉运营管理(运营理事),3位熟悉法律和人力管理(管理理事)**。

1、申请。全体社区成员均可参与NULS社区理事会的竞选,参与者需要满足以下条件,在申请地址中不少于5万NULS,并接受系统实时监测,申请需填写相应尽可能详细的个人介绍,且申请地址需要保留不少于5万NULS,技术理事会成员申请地址需要保留不少于2万NULS。

2、投票。申请成功后,所有申请人会按照得票从高到低进行排序,所有NULS Holder可以对竞选进行投票,投票票权按照币权动态分配,精确到小数点后4位,币在票在。投票方式为一票多选,最多可以选择4名NTC成员、4名运营相关人员和3名管理人员。

3、确定。在理事会成员候选列表中,共选择出11名理事会成员,理事会成员的地址将会获得系统的提案权限。

4、退出。当候选人地址的NULS持有量少于上述要求时,视为退出社区理事会成员竞选,其历史所得所有票数清零,且不再显示在候选人投票列表中。若候选人自主选择退出社区理事会成员竞选,则其历史所得所有票数也会清零,且也不再显示在候选人投票列表中。退出后,申请地址想再参与理事会成员的动态竞争,需重新申请。

(三) 理事会成员权责

1、提案。理事会成员将会获得提案权限,发起提案需要一定的手续费0.1NULS,后期可提案修改。提案主要分为以下类型。

(1)提案创建贡献者角色和删除贡献者角色。提案后投票周期为15天,支持率达到70%执行,否则失效。

  • 竞选角色。理事会提案创建一个竞选角色,提供固定的激励或者委托,这个角色类似理事会成员机制,通过社区投票动态竞选出1人或者多人担任此角色。

  • 固定角色。提案一个角色固定激励或者委托。社区投票支持或者反对达成角色的担任。

(2)提案修改系统参数。提案后投票周期为30天,支持率为90%执行,否则失效。

  • 节点下限代理手续费佣金调整。

  • 转账手续费调整。

  • 合约调用手续费调整。

  • 理事会发起提案的手续费调整。

  • 其他系统可调整的系统参数调整。

(3)提案执行基金会账户操作。提案后投票周期为15天,支持率达到70%执行,否则失效。

  • 委托。例如理事会成员提案对某个重要角色的节点进行委托,其节点奖励用于支持他的工作开展。

  • 转账。例如理事会成员提案对于某个社区活动进行资金支持的转账。转账上限初始参数为10,000NULS,此参数可以修改。

  • 创建节点。例如理事会成员提案为开发者创建节点,并进行一定数量的委托,其节点奖励用于支持开发者的工作开展。

  • 调用智能合约。目的是调用智能合约进行NRC20代币操作,例如NTC,则需要理事会成员提案调用智能合约。

2、发起投票。理事会成员发起投票无需缴纳押金,可以发起其他类型投票。

3、理事会成员的责任。

  • 理事会成员需要能够及时与社区进行沟通。

  • 严格遵照社区章程。

  • 与NULS的愿景和目标一致。

  • 以全体社区成员利益为己任。

注意:所有的提案和投票请全体的社区成员积极参与,因为每一个提案都事关NULS项目未来的发展,作为NULS社区的一员,每一个Holder都有责任参与投票。如果你不参与投票则视为放弃该次提案或者投票的投票权。

四、NULS Technical Community(NTC)

(一)NTC介绍

NTC是由来自NULS全球社区核心的开发者组成,对区块链技术感兴趣并高度认可NULS理念的开发者组成。他们将与核心开发团队一起,参与NULS项目的底层开发并且共同打造技术生态。

(二)NTC理念

在技术社区里我们坚持以下的理念:

1、平等 (Equal):技术社区与核心团队是平等关系,一起合作开发。

2、共建 (Synergetic):技术社区与核心开发团队共建技术底层,共同打造NULS生态。

3、共享 (Sharing):

  • 社区共享NULS技术成果。

  • 社区共享NULS发展红利。

  • 社区共享NULS的影响力和名誉。

  • 行业共享NULS带来的技术革新。

  • 行业共享NULS推动行业发展的标准制定。

4、公平 (Fair):每个开发者的收益,依据的是其能力和贡献的大小,做到公平公正。

5、创新 (Innovative):强大的技术社区是迸发区块链创新思维的基本保障。

(三)NTC成员产生

每一个NTC成员的加入都会由NTCC成员投票决定。在那之前,他们需要拿出值得被认可的产出,并且经过一段不短的时间的磨合(通常1-2个月)。

加入流程如下:

1、跟社区开发者初步沟通,简要介绍自己的经历、擅长的编程语言等。

2、选择感兴趣并胜任的任务。届时,我们会让开发者加入各个开发小组,同其他开发人员一起工作。

3、在小组中,各小组Leader会提供必要的文档资料以便开发者更快入手。同时,我们希望开发者们互相之间保持高效的沟通和交流,以便工作的顺利开展。通过约1个月的工作,那些保持稳定工作状态、高质量产出的开发者可以向技术社区提出节点申请。

4、技术社区和核心团队经过仔细审核后,如果申请被批准,开发者将成为NTC的一员。

(四)NTC成员权责

1、NULS希望建立一个涵盖80%区块链底层技术的模块仓库。通过增加模块仓库的模块数量,我们将降低区块链行业的进入门槛,企业发链成本会更低,用户用链会更容易。我们相信,只有这样,区块链技术才能更好地融入到日常生活中。

2、技术社区将会与核心开发团队一起,构建一个全新的架构——NULS2.0。新的架构将使NULS的模块能独立运行,模块之间低耦合的利用标准定义的接口进行交互。届时,任何开发者(不限开发语言),只需遵守NULS模块的标准,即可使用自己擅长的开发语言,开发自己所需的功能模块,丰富模块仓库。

3、然后,基于模块仓库,NULS会推出一款杀手级的造链产品——“链工厂”。如果开发者很清楚自己开发的区块链的参数,比如共识机制、区块大小、出块时间等,即使他对底层技术不甚了解,也仅需4步,即可在几分钟内拥有一条自己的公链(当然联盟链和私链也是支持的),这极大地缩短了目前公链开发少则半年多则1年的耗时。

4、以上所有的工作,都将有技术社区的参与。如果你对我们的计划有任何的意见与建议,均可在技术社区中提出,展示你独到的见解。

5、NTC成员对项目的整体进展有知晓和参与、赞成或反对的权利。

五、贡献者角色

(一)竞选贡献者角色

竞选贡献者角色将被视为一个社区岗位,可用于因岗选人,社区监督管理。大使是一个竞选贡献者角色,现阶段的大使竞选规则如下展示**https://forum.nuls.io/**。

(二)固定贡献者角色

固定贡献者角色将被视作为一个社区岗位,可用于因人设岗,社区监督管理。

六、项目预算

(一)对于贡献者角色

对于提案按照既定的以通过的贡献者角色提案执行基金会账户操作,由理事会提案进行社区投票,投票期为15天,支持率达到70%,即可快速执行。

(二)对于其他事务资金

理事会对其他预算项目进行提案申请,投票期为15天,根据提案要求支持率达到70%以上,即可按计划执行。

七、其他投票

(一)发起投票

1、理事会成员发起投票。只收取交易手续费。

2、普通成员投票。押金(目前设定是100NULS)+交易手续费。

(二)代理投票

  • 任何人都可以将自己的投票权委托给代理人,由代理人代为执行投票。

  • 任何的NULS用户都可以成为代理人。

  • 代理只能有一级,不能有第二级,每个NULS用户只能委托自己的票权。

  • 代理可随时撤销,已投票的票权也随之撤销(进行中的投票)。

八、建议反馈

如果您对此章程有任何的建议或者意见,均可在社区网站上发表您的建议。

NULS社区网站:https://forum.nuls.io/