Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
2 contributors

Users who have contributed to this file

@evias @dgarcia360
834 lines (630 sloc) 45.2 KB

NIP 8 - Catapult technology release for Public Network

    NIP: 8
    Layer: Core
    Title: Catapult technology release for Public Network
    Author: Gregory Saive <greg@nem.foundation>
    Discussions-To: https://github.com/nemtech/NIP/issues/22
    Comments-URI: https://github.com/nemtech/NIP/issues/22
    Status: Draft
    Type: Process
    Created: 2019-05-10
    License: Apache-2.0

Table of contents

Introduction

This document aims to provide with a decision making process about upgrading the current public blockchain network NEM (hereafter "NIS1") with the newly available Catapult Technology (hereafter "Catapult", each of which represent a "Project" and both "Projects").

Following projects are target of this documentation:

Discussions have been made about migration of NIS1 data sets to Catapult but several points remain open for discussion and unresolved.

Specification

This section describes the process that will be followed when Catapult releases to a Public Network.

Issue Resolution Guidelines

Many issue resolutions must be found (decisions to be taken) with the definition of this migration process. As to provide a clear way of determining whether an issue (decision) has been resolved, we will define base information about issue resolution with guidelines laid out in this section.

Issue resolution are to be numbered from 1 to n (where n is the count of issue resolutions) and will be referred to with the IR prefix. Following examples match our issue resolution identifier format:

  • IR-1
  • IR-2
  • IR-10

Next to the creation of a so-called issue resolution identifier we will be adding the issue resolution description in a table under section Issue Resolutions.

Additionally, every issue resolution will be marked with one of the following annexed information:

  • In case of an unresolved issue (replace IR-1 with issue resolution identifier and set summarizing title):
:warning: (**IR-1** _Summarizing Title_) **An issue resolution must be made here.**
  • In case of a resolved issue (replace IR-1 with issue resolution identifier, set title and add description of decision taken):
:white_check_mark: **Issue Resolution IR-1: _Summarizing Title_**

> Descriptive text about the decision that has been taken

Post-Upgrade Situation

Multiple scenarios can conceptually be planned or a blockchain network upgrade. With the caracteristics of distributed ledger technology and its' blockchain, it is of utter importance to determine a planned post-upgrade scenario.

This conceptual plan and process definition will provide us with optimal settings as to communicate our network upgrade to the public, to partners and exchanges. Introduced technical debt will be handled by special interest groups under section Introduction of Technical Debt.

⚠️ (IR-1 Post-Upgrade Situation) An issue resolution must be made here.

One Chain Approach

Historical data about distributed ledger network forks has shown that it is possible to upgrade a blockchain network by hard fork gathering the majority of community / supporters / participants consensus.

In the scenario of a one chain approach fork, datasets from the previous network will need to be migrated to the newly setup Catapult network. This adds up to the development of many migration tools to permit the migration of several datasets currently available on the NEM blockchain network.

This scenario would officially deprecate the previous NIS1 network. Yet, it is possible that the NIS1 network would be kept online by businesses, community or supporters who would not upgrade their nodes. In the event that the NIS1 chain lives on after the hard fork, account holders will effectively own double balances because two networks will have split independently.

Mitigating the risks of a split is possible by providing with tools for the migration but a network split in a one chain approach is caracterized by a bigger introduced technical debt.

With regards to Partners- and Exchanges- integrations, the one chain approach would introduce technical debt on the side of partners for them to be up to date with the newly created chain. Each exchange that lists trading pairs for XEM, would need to update their nodes and software handling deposits/withdrawals.

Additionally, partners and client integrations must upgrade their software in order for their software to function ahead of the migration.

Two Chains Approach

Another option that has arrised from historical data research about distributed ledger network forks is to upgrade a blockchain network by creating a network apart from the previous network. This scenario intentionally produces two separate chains as an outcome.

In the scenario of a two chains approach fork, datasets from the previous network will also need to be migrated to the newly setup Catapult network but datasets can be ellected with more flexibility as to create a fresh start of the new chain.

It is possible that the NIS1 network would be kept online by businesses, community or supporters. Additionally, with the two chain approach, at the moment of genesis of the new chain, only the balances of the old chain have actual capital value.

There is fewer risks associated with this scenario as Partners and Exchanges must decide whether they want to support the newly setup Catapult network or not. The creation of the new network will not affect available integrations.

With regards to the migration of datasets for this scenario, it can be done with more flexibility. As such, we must ellect datasets to be migrated on to the newly created network. A section Dataset Migrations will be provided in this document to define datasets that will be migrated.

Fork Schemes

In the event of a migration happening with the two chains approach, there is also two possible fork schemes identified:

  • Fork with Snapshot: The new chain is identical up to fork block and then splits. Account holders are automatically credited on new chain.
  • Fork with Burn: Account holders must burn tokens on old chain to get credited on new chain.

More details about these two alternatives will be provided here.

⚠️ (IR-2 Snapshot or Burn) An issue resolution must be made here.

Ellected Situation

Possible outcomes include, and are limited to:

  • Catapult technology upgrades NIS1, resulting in one chain and network.
  • Catapult technology is released alongside of NIS1, resulting in two chains and networks with Snapshot scheme.
  • Catapult technology is released alongside of NIS1, resulting in two chains and networks with Burn scheme.

The ellected post-upgrade network situation will be determined by the resolution of IR-1: Post-Upgrade Situation.

Migrated Modules / Datasets / Integrations

Following list includes all the migrated modules that are currently available with NIS1 and datasets or integrations (exchanges/clients) that must be taken into account when migrating to the Catapult technology:

Each of these migrated modules and datasets will be described more in detail in sub-sections of this document under the section Dataset Migrations.

Process Implications

Several points have to be taken into account about implications of the migration in both legal and technical domains. Each of these implications that are open for resolution will be described in a sub-section of the current section.

Legal implications

The proposed approaches for migration imply the creation of a potential taxable event. It is important to clear this point before migration can be planned correctly.

  • Can/Should we avoid the creation of a taxable event ? NO
  • Is the creation of a taxable event a blocking Point for migration ? NO

Issue Resolution IR-3: Taxable event creation

The creation of a taxable event is non-blocking to the migration because it will effectively affect users only upon trading tokens which falls off of our responsibility scope.

Technical implications

During the process of migration, it is preferred that end-users know exactly what they have to do in order for the Catapult migration/release to be successful. For this, we should be defining important documentation and article references in this section, that will give end-users an overview of how the necessary steps for the upgrade can/should be taken.

Additionally, we will be providing an overview of the technical debt that accompanies the Catapult release on Public Network grouped in the different Special Interest Groups as described in nemtech/community.

Following list may be re-defined over time, when decisions have been made on subsequent topics. Below is the list of important tools and documentation for the Catapult Release on Public Network.

Some of the listed tools and documentation may change due to decisions taken on subsequent topics. Also, some of the tools will require work assignment to permit usage with Public Network Nodes.

Issue Resolution IR-4: Migration tools development

Integrations / Implementations to be finished by end of Q2 2019.

Reputational implications

Due to the decentralized aspect of the NIS1 and Catapult technologies, each and every supporting end-user is bound to upgrade the NIS1/Catapult technology as told by this publication.

This can have implications in the reputational form as well. More details will follow in this section.

⚠️ This section is currently not described correctly.

⚠️ (IR-5 Reputational harm analysis) An issue resolution must be made here.

Partner implications

Second Layer Integrations of the NIS1 network as well as any other client integrations will be affected by the network upgrade. As such, it is important to measure the implications for our partners to be able to make decisions on whether the upgrade must be done by their side or if help is to be requested for the matter.

This analysis will make sure that our partners can estimate the time needed for their teams to make upgrades as a way for us to optimally prepare our network migration.

⚠️ (IR-6 Catapult upgrade technical definition) An issue resolution must be made here.

Dataset Migrations

This section describes the different datasets that have to be taken into account when migrating to Catapult technology. Each of the datasets available will be reviewed by asking the following questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? 1.2. will not migrating dataset irreparably harm nem/catapult reputation? 1.3. will dataset be migrated ?
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? 2.2. will not migrating dataset irreparably harm nem/catapult reputation? 2.3. will dataset be migrated ?
  3. will there be any legal implication to the migration of this dataset ?
  4. will there be any technical debt introduction with the migration of this dataset ?

Each sub-section may have siblings which are datasets that are related to the given sub-section dataset. Siblings are not required.

Additionally, each sub-section will be affected a list of task assignments that must be fulfilled in order for the sub-section to be resolved. The set of tasks will be the following (do not fill in these tasks) :

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • (Optional) Resolution on the introduced technical debt.

Account Data

Account data represents those datasets that are linked to Accounts on the NEM blockchain Public Network (MAIN_NET).

Following sub-sections identify datasets that are linked to an Account on the NIS1 network.

⚠️ (IR-7 Define mandatory migrated datasets) An issue resolution must be made here.

Multi-Signature Historical Data

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 1.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? NO
  4. will there be any technical debt introduction with the migration of this dataset ? NO

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.

Importance Delegation

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES / NO

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.

Multi-Signature Information

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? NO
  4. will there be any technical debt introduction with the migration of this dataset ? NO

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.

XEM Balances

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 2.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? NO

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.

Mosaic Balances

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Account Importance

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? NO
  4. will there be any technical debt introduction with the migration of this dataset ? NO

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.

Transaction History

The transaction history of the NIS1 network represents those datasets that are said to be Transactions on the NEM blockchain Public Network. Several types of transactions are available and some of them may require a migration.

Following sub-sections identify datasets that are linked to a Transaction History on the NIS1 network.

Transfer Transaction

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.

Modify Multisig Transaction

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 1.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? NO
  4. will there be any technical debt introduction with the migration of this dataset ? NO

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.

Importance Transfer Transaction

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 1.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? NO
  4. will there be any technical debt introduction with the migration of this dataset ? NO

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.

Register Namespace Transaction

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Mosaic Definition Transaction

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Namespaces

The namespaces of the NIS1 network represents those datasets that are identified as expirable Namespace registrations on the NEM blockchain Public Network.

Following sub-sections identify datasets that are linked to a Namespace on the NIS1 network.

Root Namespaces

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Sub Namespaces

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Mosaics

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Mosaics

The mosaics of the NIS1 network represents those datasets that are identified as custom mosaics created on the NEM blockchain Public Network.

Following sub-sections identify datasets that are linked to a Mosaic on the NIS1 network.

Balances

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Distribution (Transfers)

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 1.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Namespaces

This dataset is described and addressed under sub-section Dataset Migration: Namespaces.

Second Layer Integrations

The second layer integrations of the NIS1 network represents those datasets that are related to data stored on the NEM blockchain Public Network, including but not limited to: Apostille configurations, Voting / Poll data.

Following sub-sections identify datasets that are linked to Second Layer Integrations on the NIS1 network.

Apostille

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Voting Data

Siblings:

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

Exchanges Integrations

The exchanges integrations of the NIS1 network represents those datasets that are related to exchanges integrations of XEM or custom Mosaics on the NEM blockchain Public Network.

Following sub-sections identify datasets that are linked to Exchanges Integrations on the NIS1 network.

XEM Buy / Sell Integrations

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 2.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

⚠️ Each exchange integration for XEM mosaics must be contacted for a clear resolution on whether migration will be supported by work on their side or not.

List of available XEM Buy / Sell Integrations:

Custom Mosaics Buy / Sell Integrations

Migration Questions:

  1. In the scenario of the one chain approach 1.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? YES 1.2. will not migrating dataset irreparably harm nem/catapult reputation? YES 1.3. will dataset be migrated ? YES / NO
  2. In the scenario of the two chains approach 2.1. will not migrating dataset make majority of users unhappy and/or prefer NIS1? NO 2.2. will not migrating dataset irreparably harm nem/catapult reputation? NO 2.3. will dataset be migrated ? YES / NO
  3. will there be any legal implication to the migration of this dataset ? YES / NO
  4. will there be any technical debt introduction with the migration of this dataset ? YES

Task Assignments:

  • Evaluate potential harm / importance of feature in both scenarios (one chain approach and two chains approach).
  • Analyse legal implications with given dataset.
  • Evaluate introduced technical debt where possible.
  • Make decision on whether the dataset will be migrated, or not.
  • Resolution on the introduced technical debt.

⚠️ Businesses who have issued custom mosaics on the NEM blockchain Public Network must be contacted in order to find a clear resolution on their future with the Catapult technology.

List of available Custom Mosaics Buy / Sell Integrations:

Introduction of Technical Debt

During the process of decision making on the Catapult release on Public Network, it is possible that technical debt is introduced through any of the decisions/resolutions taken. In order to favoritize a smooth release, it is best that the introduced technical debt is planned/organized/described in this document accordingly.

As such, special interest groups will be listed with their introduced technical debt in the following table:

SIG Technical Debt Topic Assigned ? Blocking Topic ?
#sig-api SDK TS/JS Keccak Implementation NO
#sig-api SDK Java Keccak Implementation 🛑 NO
#sig-api Docker instructions for Public Network Nodes 🛑 NO
#sig-client Migration tools 🛑 YES, needed resolution on Possible Outcomes
#sig-docs Guide for Public Network YES, needed resolution on Possible Outcomes
#sig-testing End-to-end test suite NO
catapult-server Build instructions for Public Network Nodes 🛑 NO

Issue Resolutions

Task Title Assignee Status
IR-1 Post-Upgrade Situation N/A Progress
IR-2 Snapshot or Burn N/A Progress
IR-3 Taxable event creation N/A Progress
IR-4 Migration tools development N/A Progress
IR-5 Reputational harm analysis Dave Hodgson Progress
IR-6 Catapult upgrade technical definition @evias Progress
IR-7 Define mandatory migrated datasets N/A Progress

Backwards compatibility

As the Catapult software is a rewrite in a different software development language, it is not possible to provide with a simple update process. Backwards compatibility is being reviewed and researched and should be discussed in this document.

All backwards incompatible modules and features of the Catapult technology are being evaluated in order find clear resolutions on the topics before migration can happen.

⚠️ More information will be described in this section when issues have been resolved.

Annexes

Annexes to this NIP are listed below:

References

History

Date Version
May 10 2019 Initial Draft
May 13 2019 Second Draft
May 16 2019 Third Draft
You can’t perform that action at this time.