Vote: Adopted Reason:
The proposal replaces dead Offline status node uk6n5 from the ZH2 DC in Zurich, with unassigned healthy Awaiting status node 6qxes from same DC and same NP Dfinity in line with the requirement that at least one node should be controlled in each subnet for ease of recovery, without any change to decentralization.
CodeGov has a team of developers who review and vote independently on the following proposal topics: IC-OS Version Election, Protocol Canister Management, Subnet Management, Node Admin, and Participant Management. The CodeGov NNS known neuron is configured to follow our reviewers on these technical topics. We also have a group of Followees who vote independently on the Governance and the SNS & Neuron’s Fund topics. We strive to be a credible and reliable Followee option that votes on every proposal and every proposal topic in the NNS. We also support decentralization of SNS projects such as WaterNeuron, KongSwap, and Alice with a known neuron and credible Followees.
Learn more about CodeGov and its mission at codegov.org.
The proposal replaces a dead node on subnet qxesv:
Removed node: dead node uk6n5
Added node: node 6qxes
There was no impact on the decentralization coefficients.
About CodeGov
CodeGov has a team of developers who review and vote independently on the following proposal topics: IC-OS Version Election, Protocol Canister Management, Subnet Management, Node Admin, and Participant Management. The CodeGov NNS known neuron is configured to follow our reviewers on these technical topics. We also have a group of Followees who vote independently on the Governance and the SNS & Neuron’s Fund topics. We strive to be a credible and reliable Followee option that votes on every proposal and every proposal topic in the NNS. We also support decentralization of SNS projects such as WaterNeuron, KongSwap, and Alice with a known neuron and credible Followees.
Learn more about CodeGov and its mission at codegov.org.
This one is tricky. DFINITY has 42 nodes in total, and there are 37 subnets. In the NNS subnet we have 3 of our nodes, so that already puts us into 39 nodes used at all times. There are only 3 spare nodes.
There is 1 degraded node in Stockholm that we have to look into, and there are 3 nodes in zh2 that we started redeploying as a part of maintenance (switch to a new HSM-less node operator), but we can’t complete the node redeployment because we the 2 “unused” zh2 nodes have already been added to other subnet membership change proposals and we now have no other free unused nodes to add to these subnets as a replacement.
So we’re basically out of DFINITY nodes.
We’ll have to deal with this in the coming period, but for now I’ll just propose to replace the dead zh2 DFINITY node with another non-DFINITY node. And then we’ll have to follow up with another proposal to add back a healthy DFINITY node into the subnet.
This proposal replaces 2 nodes in subnet qxesv, appearing in the decentralization tool as “DOWN”. As shown in the proposal and verified using the DRE tool, decentralisation parameters are unchanged and remain within the requirements of the target topology.
About CodeGov
CodeGov has a team of developers who review and vote independently on the following proposal topics: IC-OS Version Election, Protocol Canister Management, Subnet Management, Node Admin, and Participant Management. The CodeGov NNS known neuron is configured to follow our reviewers on these technical topics. We also have a group of Followees who vote independently on the Governance and the SNS & Neurons’ Fund topics. We strive to be a credible and reliable Followee option that votes on every proposal and every proposal topic in the NNS. We also support decentralisation of SNS projects such as WaterNeuron, KongSwap, and Alice with a known neuron and credible Followees.
Learn more about CodeGov and its mission at codegov.org.
TLDR: Replaces two offline nodes with two unassigned nodes. IC Target Topology metrics remain unchanged.
There will be 0 DFINITY-controlled nodes in this subnet if this proposal executes, complicating disaster recovery in the event of a subnet stall. This would normally be cause for a rejection, however it’s been highlighted that there are currently a lack of online DFINITY nodes. I’ve verified this below. Expand ‘Status of DFINITY nodes’ (there are only 2 available that are not pending to be added to another subnet, of 43 in total, and those two are down/degraded).
Subnet node distance stats (distance between any 2 nodes in the subnet) →
Smallest Distance
Average Distance
Largest Distance
EXISTING
305.949 km
6739.351 km
18504.433 km
PROPOSED
304.712 km (-0.4%)
6927.487 km (+2.8%)
18504.433 km
This proposal slightly increases decentralisation, considered purely in terms of geographic distance (and therefore there’s a slight theoretical increase in localised disaster resilience).
Subnet characteristic counts →
Continents
Countries
Data Centers
Owners
Node Providers
Node Operator
EXISTING
3
13
13
13
13
13
PROPOSED
3
13
13
13
13
13
Largest number of nodes with the same characteristic (e.g. continent, country, data center, etc.) →
The above subnet information is illustrated below, followed by a node reference table:
Map Description
Red marker represents a removed node (transparent center for overlap visibility)
Green marker represents an added node
Blue marker represents an unchanged node
Highlighted patches represent the country the above nodes sit within (red if the country is removed, green if added, otherwise grey)
Light grey markers with yellow borders are examples of unassigned nodes that would be viable candidates for joining the subnet according to formal decentralisation coefficients (so this proposal can be viewed in the context of alternative solutions that are not being used)
Black dotted line connects to a small black marker that shows where the IP address indicates the node is located (according to ipinfo.io). This is only displayed if it conflicts with where IC records indicate the node is located. See Country Discrepancies section above for more info.
You may wish to follow the CO.DELTA known neuron (coming soon) if you found this analysis helpful.
CO.DELTA △
We’re a verifiably decentralised collective who review IC deltas (changes applied by NNS proposals). We follow a common code:
Look: We observe the details and context of NNS proposals
Test: We test and verify the claims made by those proposals
Automate: We automate as much as possible by building increasingly sophisticated tools that streamline and strengthen the reviewal process.
Every vote cast by CO.DELTA is the result of consensus among diligent, skilled and experienced team members acting independently. The CO.DELTA neuron follows the vote of D-QUORUM on NNS topics that the CO.DELTA team does not handle directly. You can therefore follow CO.DELTA on all topics and rely on the highest quality of vote.
Note that this analysis involved data provided by the IC-API, which is not open source. I’m in the process of switching over to more verifiable sources of this sort of information for future proposal reviews. See here for related discussion.
Current Nakamoto Coefficients and Topology, avg = 5.00
Attribute
Nakamoto Coefficient
Identical attribute values
Max allowed identical values
Unique Counts
Country
5
1
2
13
City
5
1
1
13
Data Center
5
1
1
13
Data Center Owner
5
1
1
13
Node Provider ID
5
1
1
13
Proposed Nakamoto Coefficients and Topology, avg = 5.00
Attribute
Nakamoto Coefficient
Identical attribute values
Max allowed identical values
Unique Counts
Country
5
1
2
13
City
5
1
1
13
Data Center
5
1
1
13
Data Center Owner
5
1
1
13
Node Provider ID
5
1
1
13
You may wish to follow the CO.DELTA known neuron if you found this analysis helpful.
CO.DELTA
We’re a verifiably decentralised collective who review IC deltas (changes applied by NNS proposals). We follow a common code:
Look: We observe the details and context of NNS proposals.
Test: We test and verify the claims made by those proposals.
Automate: We automate as much as possible by building increasingly sophisticated tools that streamline and strengthen the reviewal process.
Every vote cast by CO.DELTA is the result of consensus among diligent, skilled and experienced team members acting independently. The CO.DELTA neuron follows the vote of D-QUORUM on NNS topics that the CO.DELTA team does not handle directly. You can therefore follow CO.DELTA on all topics and rely on the highest quality of vote.
Vote: Adopted Reason:
The proposal replaces 2 dead Offline status node 6qxes from the ZH2 DC in Zurich and dead Offline status node w5nh3 from the AW1 DC in Pennsylvania, with unassigned healthy Awaiting status node 4vzqk from Dallas and unassigned healthy Awaiting status node ctqez from Zurich 4, without any change to decentralization.
Taking into account the follow up on this as outlined by Sasha the dead Dfinity node will be temporarily repleced by non Dfinity one.
About CodeGov
CodeGov has a team of developers who review and vote independently on the following proposal topics: IC-OS Version Election, Protocol Canister Management, Subnet Management, Node Admin, and Participant Management. The CodeGov NNS known neuron is configured to follow our reviewers on these technical topics. We also have a group of Followees who vote independently on the Governance and the SNS & Neuron’s Fund topics. We strive to be a credible and reliable Followee option that votes on every proposal and every proposal topic in the NNS. We also support decentralization of SNS projects such as WaterNeuron, KongSwap, and Alice with a known neuron and credible Followees.
Learn more about CodeGov and its mission at codegov.org.
TLDR:
The proposal replaces offline nodes in Zurich (Europe) and Allentown(North America).
No issues were found in the nodes or locations proposed and decentralization stats remain the same. I vote to adopt
You may wish to follow the CO.DELTA known neuron if you found this analysis helpful.
CO.DELTA
We’re a verifiably decentralised collective who review IC deltas (changes applied by NNS proposals). We follow a common code:
Look: We observe the details and context of NNS proposals
Test: We test and verify the claims made by those proposals
Automate: We automate as much as possible by building increasingly sophisticated tools that streamline and strengthen the reviewal process.
Every vote cast by CO.DELTA is the result of consensus among diligent, skilled and experienced team members acting independently. The CO.DELTA neuron follows the vote of D-QUORUM on NNS topics that the CO.DELTA team does not handle directly. You can therefore follow CO.DELTA on all topics and rely on the highest quality of vote.
The proposal replaces two dead nodes on subnet qxesv:
dead node 6qxesDashboard Status: Offline and dead node w5nh3Dashboard Status: Offline
with nodes:
node 4vzqkDashboard Status: Awaiting and node ctqezDashboard Status: Awaiting
Even tough with this replacement it leaves this subnet with 0 DFINITY nodes, it is a necessary replacement since the node is dead. DFINITY as @sat said is working in fixing this nodes.
There is no impact in the overall decentralization across all features.
About CodeGov
CodeGov has a team of developers who review and vote independently on the following proposal topics: IC-OS Version Election, Protocol Canister Management, Subnet Management, Node Admin, and Participant Management. The CodeGov NNS known neuron is configured to follow our reviewers on these technical topics. We also have a group of Followees who vote independently on the Governance and the SNS & Neuron’s Fund topics. We strive to be a credible and reliable Followee option that votes on every proposal and every proposal topic in the NNS. We also support decentralization of SNS projects such as WaterNeuron, KongSwap, and Alice with a known neuron and credible Followees.
Learn more about CodeGov and its mission at codegov.org.
Business rules check results before the membership change:
Subnet should have 1 DFINITY-owned node(s) for subnet recovery, got 0
UPDATE: To clarify, this was the only option available to bring back one DFINITY-owned node into the subnet. There was no possibility to achieve this without worsening the subnet decentralization, as tooling argumented in the proposal summary. Improvement should nevertheless be possible in follow-up proposals, when we’re able to replace 2 other nodes.
Current Nakamoto Coefficients and Topology, avg = 5.00
Attribute
Nakamoto Coefficient
Identical attribute values
Max allowed identical values
Unique Counts
Country
5
1
2
13
City
5
1
1
13
Data Center
5
1
1
13
Data Center Owner
5
1
1
13
Node Provider ID
5
1
1
13
Proposed Nakamoto Coefficients and Topology, avg = 4.60
Attribute
Nakamoto Coefficient
Identical attribute values
Max allowed identical values
Unique Counts
Country
4
2, CH
2
12
City
4
2, Zurich
1
12
Data Center
5
1
1
13
Data Center Owner
5
1
1
13
Node Provider ID
5
1
1
13
You may wish to follow the CO.DELTA known neuron if you found this analysis helpful.
CO.DELTA
We’re a verifiably decentralised collective who review IC deltas (changes applied by NNS proposals). We follow a common code:
Look: We observe the details and context of NNS proposals.
Test: We test and verify the claims made by those proposals.
Automate: We automate as much as possible by building increasingly sophisticated tools that streamline and strengthen the reviewal process.
Every vote cast by CO.DELTA is the result of consensus among diligent, skilled and experienced team members acting independently. The CO.DELTA neuron follows the vote of D-QUORUM on NNS topics that the CO.DELTA team does not handle directly. You can therefore follow CO.DELTA on all topics and rely on the highest quality of vote.
TLDR: If executed this proposal will cause this subnet to violate the IC Target Topology (2 nodes in the same country, instead of the limit of 1).
Thanks for clarifying @Sat. Looks like you’re right. I’ve listed the DFINITY nodes below. I did note that there is one unassigned DFINITY node in Sweden that would not violate the IC Target Topology if it joined this subnet - however it’s degraded…
I’m planning to adopt because at least 1 DFINITY node in a subnet is what allows recovery from subnet stalls to be actioned smoothly and promptly (by DFINITY). Hopefully in the future this expertise will be spread around and this business requirement wont be as stringent anymore
Country Discrepancies (1)
Minor discrepancy in terms of distance (I think this can be considered to be within a margin of error).
The above subnet information is illustrated below, followed by a node reference table:
Map Description
Red marker represents a removed node (transparent center for overlap visibility)
Green marker represents an added node
Blue marker represents an unchanged node
Highlighted patches represent the country the above nodes sit within (red if the country is removed, green if added, otherwise grey)
Light grey markers with yellow borders are examples of unassigned nodes that would be viable candidates for joining the subnet according to formal decentralisation coefficients (so this proposal can be viewed in the context of alternative solutions that are not being used)
Black dotted line connects to a small black marker that shows where the IP address indicates the node is located (according to ipinfo.io). This is only displayed if it conflicts with where IC records indicate the node is located. See Country Discrepancies section above for more info.
You may wish to follow the CO.DELTA known neuron (coming soon) if you found this analysis helpful.
CO.DELTA △
We’re a verifiably decentralised collective who review IC deltas (changes applied by NNS proposals). We follow a common code:
Look: We observe the details and context of NNS proposals
Test: We test and verify the claims made by those proposals
Automate: We automate as much as possible by building increasingly sophisticated tools that streamline and strengthen the reviewal process.
Every vote cast by CO.DELTA is the result of consensus among diligent, skilled and experienced team members acting independently. The CO.DELTA neuron follows the vote of D-QUORUM on NNS topics that the CO.DELTA team does not handle directly. You can therefore follow CO.DELTA on all topics and rely on the highest quality of vote.
Note that this analysis involved data provided by the IC-API, which is not open source. I’m in the process of switching over to more verifiable sources of this sort of information for future proposal reviews. See here for related discussion.
TLDR:
The proposal replaces offline nodes in Lisbon (Europe).This node has never been offline or dead as claimed in the proposal description. The motivation from the proposal is to have one DFINITY owned node for subnet recovery purpose yet the proposal seem to be misleading as per description. After internal discussions agreed to add Dffinity node as its more important on an recovery event
ISSUE: Node j7mu5… is not degraded or dead as claimed.
Passes:
Node j7mu5…: Remove from Subnet check passed. Node bs2f6…: Replacement Status check passed.
You may wish to follow the CO.DELTA known neuron if you found this analysis helpful.
CO.DELTA
We’re a verifiably decentralised collective who review IC deltas (changes applied by NNS proposals). We follow a common code:
Look: We observe the details and context of NNS proposals
Test: We test and verify the claims made by those proposals
Automate: We automate as much as possible by building increasingly sophisticated tools that streamline and strengthen the reviewal process.
Every vote cast by CO.DELTA is the result of consensus among diligent, skilled and experienced team members acting independently. The CO.DELTA neuron follows the vote of D-QUORUM on NNS topics that the CO.DELTA team does not handle directly. You can therefore follow CO.DELTA on all topics and rely on the highest quality of vote.
This proposal replaces node j7mu5 in subnet mpubz, appearing in the decentralization tool as “UP”. As shown in the proposal, decentralisation parameters are worsened improved with respect to country and pushed outside the requirements of the target topology by virtue of this. The Node Provider Rewards tool shows that this node has not had any failed blocks for the last 6 days recorded, although the data in this tool lags by more than 24 hours. The “node machines” graphic here shows a small blip, presumably corresponding to the time at which this was picked up by the DRE tool.
Given that whatever this problem the node had seems to have righted itself, and that the proposed would have worsened network topology, I have voted to reject this proposal.
CodeGov has a team of developers who review and vote independently on the following proposal topics: IC-OS Version Election, Protocol Canister Management, Subnet Management, Node Admin, and Participant Management. The CodeGov NNS known neuron is configured to follow our reviewers on these technical topics. We also have a group of Followees who vote independently on the Governance and the SNS & Neurons’ Fund topics. We strive to be a credible and reliable Followee option that votes on every proposal and every proposal topic in the NNS. We also support decentralisation of SNS projects such as WaterNeuron, KongSwap, and Alice with a known neuron and credible Followees.
Learn more about CodeGov and its mission at codegov.org.
@timk11@MalithHatananchchige the objective of the proposal was NOT to replace the Lisbon node but rather to bring back a DFINITY-owned node into the subnet, as commented above. Having a DFINITY-owned node is from our point of view a lot stronger requirement than not having 2 nodes from a single country, since there needs to be a DFINITY-owned node in a subnet to perform subnet recovery. So without one, we can’t recover the subnet if needed for any reason.
The same requirement is represented in the DRE tooling through the “penalty” value.
Oh I see… fair point!
But I’d still prefer if we adopt the proposal, regardless of the unfortunate submission time. Except if the consensus of the reviewers is that the Lisbon node MUST stay in the subnet?
I’m planning to vote yes and will do in a sec for the reasons mentioned in my review, however I don’t think it’s a bad decision to reject the proposal (as a means of enforcing standards about what should be considered passable).
In the past I’ve rejected for this sort of reason, mostly because I’m concerned about a lack of rigour in the voting community, and I worry about a future where some of these proposals may be submitted by bad actors. I think it’s important to set expectations that proposal summaries are required to be accurate, to ensure the NNS has the best defence mechanisms that it can.
In this instance I’m adopting though, as I don’t like the risk that the subnet is under while not featuring a DFINITY node (not that a subnet stall wouldn’t be recoverable, but my understanding is that the recovery would be messy).