From 3a84386954da6a2022647e04b02bfedd2e908c3f Mon Sep 17 00:00:00 2001 From: Alain Brenzikofer Date: Tue, 22 Aug 2023 09:02:27 +0200 Subject: [PATCH 01/14] init new RFC --- text/0000-adopt-encointer-runtime.md | 59 ++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 text/0000-adopt-encointer-runtime.md diff --git a/text/0000-adopt-encointer-runtime.md b/text/0000-adopt-encointer-runtime.md new file mode 100644 index 00000000..e5086b97 --- /dev/null +++ b/text/0000-adopt-encointer-runtime.md @@ -0,0 +1,59 @@ +# RFC-0000: Feature Name Here + +| | | +| --------------- | ------------------------------------------------------------------------------------------- | +| **Start Date** | Date of initial proposal | +| **Description** | One-sentence description | +| **Authors** | | + +## Summary + +One paragraph summary of the RFC. + +## Motivation + +Longer motivation behind the content of the RFC, presented as a combination of both problems and requirements for the solution. + +## Stakeholders + +A brief catalogue of the primary stakeholder sets of this RFC, with some description of previous socialization of the proposal. + +## Explanation + +Detail-heavy explanation of the RFC, suitable for explanation to an implementer of the changeset. This should address corner cases in detail and provide justification behind decisions, and provide rationale for how the design meets the solution requirements. + +## Drawbacks + +Description of recognized drawbacks to the approach given in the RFC. Non-exhaustively, drawbacks relating to performance, ergonomics, user experience, security, or privacy. + +## Testing, Security, and Privacy + +Describe the the impact of the proposal on these three high-importance areas - how implementations can be tested for adherence, effects that the proposal has on security and privacy per-se, as well as any possible implementation pitfalls which should be clearly avoided. + +## Performance, Ergonomics, and Compatibility + +Describe the impact of the proposal on the exposed functionality of Polkadot. + +### Performance + +Is this an optimization or a necessary pessimization? What steps have been taken to minimize additional overhead? + +### Ergonomics + +If the proposal alters exposed interfaces to developers or end-users, which types of usage patterns have been optimized for? + +### Compatibility + +Does this proposal break compatibility with existing interfaces, older versions of implementations? Summarize necessary migrations or upgrade strategies, if any. + +## Prior Art and References + +Provide references to either prior art or other relevant research for the submitted design. + +## Unresolved Questions + +Provide specific questions to discuss and address before the RFC is voted on by the Fellowship. This should include, for example, alternatives to aspects of the proposed design where the appropriate trade-off to make is unclear. + +## Future Directions and Related Material + +Describe future work which could be enabled by this RFC, if it were accepted, as well as related RFCs. This is a place to brain-dump and explore possibilities, which themselves may become their own RFCs. From 4a7c42db83b9db0c7a95ea6cf486a0376101cd9c Mon Sep 17 00:00:00 2001 From: Alain Brenzikofer Date: Tue, 22 Aug 2023 09:23:21 +0200 Subject: [PATCH 02/14] first version written --- text/0000-adopt-encointer-runtime.md | 59 ---------------------------- text/0022-adopt-encointer-runtime.md | 53 +++++++++++++++++++++++++ 2 files changed, 53 insertions(+), 59 deletions(-) delete mode 100644 text/0000-adopt-encointer-runtime.md create mode 100644 text/0022-adopt-encointer-runtime.md diff --git a/text/0000-adopt-encointer-runtime.md b/text/0000-adopt-encointer-runtime.md deleted file mode 100644 index e5086b97..00000000 --- a/text/0000-adopt-encointer-runtime.md +++ /dev/null @@ -1,59 +0,0 @@ -# RFC-0000: Feature Name Here - -| | | -| --------------- | ------------------------------------------------------------------------------------------- | -| **Start Date** | Date of initial proposal | -| **Description** | One-sentence description | -| **Authors** | | - -## Summary - -One paragraph summary of the RFC. - -## Motivation - -Longer motivation behind the content of the RFC, presented as a combination of both problems and requirements for the solution. - -## Stakeholders - -A brief catalogue of the primary stakeholder sets of this RFC, with some description of previous socialization of the proposal. - -## Explanation - -Detail-heavy explanation of the RFC, suitable for explanation to an implementer of the changeset. This should address corner cases in detail and provide justification behind decisions, and provide rationale for how the design meets the solution requirements. - -## Drawbacks - -Description of recognized drawbacks to the approach given in the RFC. Non-exhaustively, drawbacks relating to performance, ergonomics, user experience, security, or privacy. - -## Testing, Security, and Privacy - -Describe the the impact of the proposal on these three high-importance areas - how implementations can be tested for adherence, effects that the proposal has on security and privacy per-se, as well as any possible implementation pitfalls which should be clearly avoided. - -## Performance, Ergonomics, and Compatibility - -Describe the impact of the proposal on the exposed functionality of Polkadot. - -### Performance - -Is this an optimization or a necessary pessimization? What steps have been taken to minimize additional overhead? - -### Ergonomics - -If the proposal alters exposed interfaces to developers or end-users, which types of usage patterns have been optimized for? - -### Compatibility - -Does this proposal break compatibility with existing interfaces, older versions of implementations? Summarize necessary migrations or upgrade strategies, if any. - -## Prior Art and References - -Provide references to either prior art or other relevant research for the submitted design. - -## Unresolved Questions - -Provide specific questions to discuss and address before the RFC is voted on by the Fellowship. This should include, for example, alternatives to aspects of the proposed design where the appropriate trade-off to make is unclear. - -## Future Directions and Related Material - -Describe future work which could be enabled by this RFC, if it were accepted, as well as related RFCs. This is a place to brain-dump and explore possibilities, which themselves may become their own RFCs. diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md new file mode 100644 index 00000000..925a827a --- /dev/null +++ b/text/0022-adopt-encointer-runtime.md @@ -0,0 +1,53 @@ +# RFC-0022: Adopt Encointer Runtime + +| | | +| --------------- |-------------------------------------------------------| +| **Start Date** | Aug 22nd 2023 | +| **Description** | merge Encointer runtime into fellowship runtimes repo | +| **Authors** | @brenzi | + +## Summary + +Encointer is a system chain on Kusama since Jan 2022 and has been developed and maintained by the Encointer association. This RFC proposes to treat Encointer like any other system chain and include it in the fellowship repo with [this PR](https://github.com/polkadot-fellows/runtimes/pull/17) + +## Motivation + +Encointer does not seek to be in control of its runtime repository. As a decentralized system, the fellowship has a more suitable structure to maintain a system chain runtime repo than the Encointer association does. + +Also, Encointer aims to update its runtime in batches with other system chains in order to have consistency for interoperability across system chains. + +## Stakeholders + +* Fellowship: streamlined reviews of system chain runtime upgrades +* Kusama Network: all system chains in one place +* Encointer Association: Further decentralization of the Encointer Network necessities like devops. +* Encointer devs: May be eligible for fellowship membership because of their contributions to the encointer runtime - being a system chain. + +## Explanation + +There are no details to elaborate on. It's just about the location of our runtime code. +[Our PR](https://github.com/polkadot-fellows/runtimes/pull/17) has all details + +## Drawbacks + +No known drawbacks + +## Testing, Security, and Privacy + +No changes to the existing system are proposed. Only changes to how maintenance is organized + +## Performance, Ergonomics, and Compatibility + +No changes + +## Prior Art and References + +[Existing Encointer runtime repo](https://github.com/encointer/encointer-parachain/tree/master/polkadot-parachains/encointer-runtime) + +## Unresolved Questions + +None identified + +## Future Directions and Related Material + +More info on Encointer: [https//encointer.org](https//encointer.org) From e164f0b82be75a7bf621e389cf0e564801f917fe Mon Sep 17 00:00:00 2001 From: Alain Brenzikofer Date: Tue, 22 Aug 2023 10:13:57 +0200 Subject: [PATCH 03/14] add more detail --- text/0022-adopt-encointer-runtime.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 925a827a..20e267fc 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -26,11 +26,13 @@ Also, Encointer aims to update its runtime in batches with other system chains i ## Explanation There are no details to elaborate on. It's just about the location of our runtime code. -[Our PR](https://github.com/polkadot-fellows/runtimes/pull/17) has all details +[Our PR](https://github.com/polkadot-fellows/runtimes/pull/17) has all details. + +Noteworthy: All Encointer-specific pallets will still be located in encointer's repo for the time being: https://github.com/encointer/pallets ## Drawbacks -No known drawbacks +Other than all other system chains, development and maintenance of the Encointer Network is mainly financed by the KSM Treasury and possibly the DOT Treasury in the future. Encointer is dedicated to maintaining its network and runtime code for as long as possible, but there is a dependency on funding which is not in the hands of the fellowship. The only risk in the context of funding, however, is that the Encointer runtime will see less frequent updates if there's less funding. ## Testing, Security, and Privacy From 4f1f9401315cb170045e3758947f47938da9223c Mon Sep 17 00:00:00 2001 From: brenzi Date: Mon, 4 Sep 2023 13:01:50 +0200 Subject: [PATCH 04/14] Update text/0022-adopt-encointer-runtime.md Co-authored-by: Oliver Tale-Yazdi --- text/0022-adopt-encointer-runtime.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 20e267fc..86d99ec3 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -3,7 +3,7 @@ | | | | --------------- |-------------------------------------------------------| | **Start Date** | Aug 22nd 2023 | -| **Description** | merge Encointer runtime into fellowship runtimes repo | +| **Description** | Permanently move the Encointer runtime into the Fellowship runtimes repo. | | **Authors** | @brenzi | ## Summary From 9ec3be7a964759e160243cf6b86393f6e6e97c74 Mon Sep 17 00:00:00 2001 From: brenzi Date: Mon, 4 Sep 2023 13:02:27 +0200 Subject: [PATCH 05/14] Update text/0022-adopt-encointer-runtime.md Co-authored-by: Oliver Tale-Yazdi --- text/0022-adopt-encointer-runtime.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 86d99ec3..12d490b0 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -8,7 +8,7 @@ ## Summary -Encointer is a system chain on Kusama since Jan 2022 and has been developed and maintained by the Encointer association. This RFC proposes to treat Encointer like any other system chain and include it in the fellowship repo with [this PR](https://github.com/polkadot-fellows/runtimes/pull/17) +Encointer is a system chain on Kusama since Jan 2022 and has been developed and maintained by the Encointer association. This RFC proposes to treat Encointer like any other system chain and include it in the fellowship repo with [this PR](https://github.com/polkadot-fellows/runtimes/pull/17). ## Motivation From 9f3ed2a3fa36918822b70d9cc8eeb66225cbe149 Mon Sep 17 00:00:00 2001 From: brenzi Date: Mon, 4 Sep 2023 13:04:31 +0200 Subject: [PATCH 06/14] Update text/0022-adopt-encointer-runtime.md Co-authored-by: Oliver Tale-Yazdi --- text/0022-adopt-encointer-runtime.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 12d490b0..eecd3595 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -19,7 +19,7 @@ Also, Encointer aims to update its runtime in batches with other system chains i ## Stakeholders * Fellowship: streamlined reviews of system chain runtime upgrades -* Kusama Network: all system chains in one place +* Kusama Network: Tokenholders can easily see the changes of all system chains in one place. * Encointer Association: Further decentralization of the Encointer Network necessities like devops. * Encointer devs: May be eligible for fellowship membership because of their contributions to the encointer runtime - being a system chain. From da4a2e11a6fd6aa8a6223c8a98e37f7be626c11f Mon Sep 17 00:00:00 2001 From: brenzi Date: Mon, 4 Sep 2023 13:05:29 +0200 Subject: [PATCH 07/14] Update text/0022-adopt-encointer-runtime.md Co-authored-by: Oliver Tale-Yazdi --- text/0022-adopt-encointer-runtime.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index eecd3595..b95f8a05 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -21,7 +21,7 @@ Also, Encointer aims to update its runtime in batches with other system chains i * Fellowship: streamlined reviews of system chain runtime upgrades * Kusama Network: Tokenholders can easily see the changes of all system chains in one place. * Encointer Association: Further decentralization of the Encointer Network necessities like devops. -* Encointer devs: May be eligible for fellowship membership because of their contributions to the encointer runtime - being a system chain. +* Encointer devs: Being able to work directly in the Fellowship runtimes repo to streamline and synergize with other developers. ## Explanation From e2bc935c292a84a475f8b716c56c202fbc67c665 Mon Sep 17 00:00:00 2001 From: brenzi Date: Mon, 4 Sep 2023 13:05:44 +0200 Subject: [PATCH 08/14] Update text/0022-adopt-encointer-runtime.md Co-authored-by: Oliver Tale-Yazdi --- text/0022-adopt-encointer-runtime.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index b95f8a05..8fa93dc9 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -52,4 +52,4 @@ None identified ## Future Directions and Related Material -More info on Encointer: [https//encointer.org](https//encointer.org) +More info on Encointer: [encointer.org](https://encointer.org) From 38ee9517cfb823b2ef1f440c2d54fc1fc55667d1 Mon Sep 17 00:00:00 2001 From: brenzi Date: Mon, 4 Sep 2023 13:06:03 +0200 Subject: [PATCH 09/14] Update text/0022-adopt-encointer-runtime.md Co-authored-by: Oliver Tale-Yazdi --- text/0022-adopt-encointer-runtime.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 8fa93dc9..680d4c7a 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -36,7 +36,7 @@ Other than all other system chains, development and maintenance of the Encointer ## Testing, Security, and Privacy -No changes to the existing system are proposed. Only changes to how maintenance is organized +No changes to the existing system are proposed. Only changes to how maintenance is organized. ## Performance, Ergonomics, and Compatibility From d395723ab0c42a961f1dae626f780515621f978d Mon Sep 17 00:00:00 2001 From: Alain Brenzikofer Date: Mon, 4 Sep 2023 13:09:08 +0200 Subject: [PATCH 10/14] add legal entity with author --- text/0022-adopt-encointer-runtime.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 680d4c7a..9dc7a654 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -1,10 +1,10 @@ # RFC-0022: Adopt Encointer Runtime -| | | -| --------------- |-------------------------------------------------------| -| **Start Date** | Aug 22nd 2023 | +| | | +| --------------- |---------------------------------------------------------------------------| +| **Start Date** | Aug 22nd 2023 | | **Description** | Permanently move the Encointer runtime into the Fellowship runtimes repo. | -| **Authors** | @brenzi | +| **Authors** | @brenzi for Encointer Association, 8000 Zurich, switzerland | ## Summary From 558c0854b85a653c7e8dedc9b7d869021ad6f997 Mon Sep 17 00:00:00 2001 From: Alain Brenzikofer Date: Mon, 4 Sep 2023 13:12:35 +0200 Subject: [PATCH 11/14] More precise stakeholder description for fellowship --- text/0022-adopt-encointer-runtime.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 9dc7a654..b3257f1d 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -18,7 +18,7 @@ Also, Encointer aims to update its runtime in batches with other system chains i ## Stakeholders -* Fellowship: streamlined reviews of system chain runtime upgrades +* Fellowship: Will continue to take upon them the review and auditing work for the Encointer runtime, but the process is streamlined with other system chains and therefore less time-consuming compared to the separate repo and CI process we currently have. * Kusama Network: Tokenholders can easily see the changes of all system chains in one place. * Encointer Association: Further decentralization of the Encointer Network necessities like devops. * Encointer devs: Being able to work directly in the Fellowship runtimes repo to streamline and synergize with other developers. From 64bc8ad76fab21ce121ba6eacc608e8e0d9c39ac Mon Sep 17 00:00:00 2001 From: Alain Brenzikofer Date: Mon, 4 Sep 2023 13:25:25 +0200 Subject: [PATCH 12/14] extend description about updates, reviews and audits --- text/0022-adopt-encointer-runtime.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index b3257f1d..652d822a 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -25,11 +25,17 @@ Also, Encointer aims to update its runtime in batches with other system chains i ## Explanation -There are no details to elaborate on. It's just about the location of our runtime code. -[Our PR](https://github.com/polkadot-fellows/runtimes/pull/17) has all details. +[Our PR](https://github.com/polkadot-fellows/runtimes/pull/17) has all details about our runtime and how we would move it into the fellowship repo. Noteworthy: All Encointer-specific pallets will still be located in encointer's repo for the time being: https://github.com/encointer/pallets +It will still be the duty of the Encointer team to keep its runtime up to date and provide adequate test fixtures. So far, Encointer pallets have proven to be very stable and the runtime only needed to be updated every few months. +However, frequent dependency bumps with Polkadot releases would be beneficial for interoperability and could be streamlined with other system chains collectively by the fellowship. This would allow to upgrade all system chains jointly (including Encointer) regularly with a batch referendum + +Further notes: +* Encointer currently releases none of its crates on crates.io +* Encointer does not carry out external auditing of its runtime nor pallets. It would be beneficial but not a requirement from our side if Encointer could join the auditing process of other system chains. + ## Drawbacks Other than all other system chains, development and maintenance of the Encointer Network is mainly financed by the KSM Treasury and possibly the DOT Treasury in the future. Encointer is dedicated to maintaining its network and runtime code for as long as possible, but there is a dependency on funding which is not in the hands of the fellowship. The only risk in the context of funding, however, is that the Encointer runtime will see less frequent updates if there's less funding. From 4d92dbb29274532821bdd01f58d925bef7f52e00 Mon Sep 17 00:00:00 2001 From: Oliver Tale-Yazdi Date: Thu, 21 Sep 2023 15:31:14 +0100 Subject: [PATCH 13/14] Typo --- text/0022-adopt-encointer-runtime.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 652d822a..01302567 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -4,7 +4,7 @@ | --------------- |---------------------------------------------------------------------------| | **Start Date** | Aug 22nd 2023 | | **Description** | Permanently move the Encointer runtime into the Fellowship runtimes repo. | -| **Authors** | @brenzi for Encointer Association, 8000 Zurich, switzerland | +| **Authors** | @brenzi for Encointer Association, 8000 Zurich, Switzerland | ## Summary From 464ea2201af4d12af7d90cc7a53eb57ed33829c2 Mon Sep 17 00:00:00 2001 From: Alain Brenzikofer Date: Thu, 28 Sep 2023 08:57:07 +0200 Subject: [PATCH 14/14] crates must be on crates.io --- text/0022-adopt-encointer-runtime.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/text/0022-adopt-encointer-runtime.md b/text/0022-adopt-encointer-runtime.md index 01302567..b4ad36e4 100644 --- a/text/0022-adopt-encointer-runtime.md +++ b/text/0022-adopt-encointer-runtime.md @@ -29,11 +29,10 @@ Also, Encointer aims to update its runtime in batches with other system chains i Noteworthy: All Encointer-specific pallets will still be located in encointer's repo for the time being: https://github.com/encointer/pallets -It will still be the duty of the Encointer team to keep its runtime up to date and provide adequate test fixtures. So far, Encointer pallets have proven to be very stable and the runtime only needed to be updated every few months. -However, frequent dependency bumps with Polkadot releases would be beneficial for interoperability and could be streamlined with other system chains collectively by the fellowship. This would allow to upgrade all system chains jointly (including Encointer) regularly with a batch referendum +It will still be the duty of the Encointer team to keep its runtime up to date and provide adequate test fixtures. Frequent dependency bumps with Polkadot releases would be beneficial for interoperability and could be streamlined with other system chains but that will not be a duty of fellowship. Whenever possible, all system chains could be upgraded jointly (including Encointer) with a batch referendum. Further notes: -* Encointer currently releases none of its crates on crates.io +* Encointer will publish all its crates crates.io * Encointer does not carry out external auditing of its runtime nor pallets. It would be beneficial but not a requirement from our side if Encointer could join the auditing process of other system chains. ## Drawbacks