DFINITY Foundation’s vote on Governance proposal #96475


We intend to vote NO on the motion proposal for NNS Principles #96475 for formal reasons. In particular, we believe that there should be a path from proposal to code running on the IC, which does not seem to be the case for this proposal.

What we liked about the proposal

The proposal touches on a very important point: How do we explain in a concise way to outsiders of the IC how the community thinks and how the IC could evolve over time? Formulating voting principles could be a useful vehicle for that.

Why we are voting NO

As per our earlier communication on the voting principles of DFINITY, we believe that governance proposals should be tangible & achievable and that there should be a ”path from proposal to code running on the IC”.

As per our interpretation, the proposal for NNS principles does not meet this criterion, because it focuses on meta aspects of the voting process, by establishing principles as “a way for the NNS to signal its future voting intentions”. This feedback is aligned with points raised earlier in the governance working group.

A secondary argument is that NNS principles are in any case not enforceable.

We want to be clear in what this means and does not mean

While we vote NO on the proposal, we think it is a reasonable proposal created in good faith. We also very much appreciate the careful syndication of this proposal, which included concise write-ups, forum deliberation, and presentations in the governance working group & in Twitter spaces.

Further comments

We would like to point out that readily available voting principles could be useful on the level of known neurons. For example, it might be very helpful for NNS participants if the interface for choosing followees in the NNS app, could link to the voting principles of known neurons.


@bjoernek to say this is very disappointing is an understatement.

This proposal literally came out of a discussion I had WITH YOU during the Governance Working Group DFINITY hosts, and with the governance group’s approval.

Where were these objections in the 2 months of leading up to the proposal when we did our due diligence? Why should anyone ever put this much work into a proposal again, just to have DFINITY unexpectantly shoot it down, only to give an explanation after the fact?

Frankly, I feel your explanation doesn’t include whatever DFINITY’s real reasons for rejecting this proposal are.

To not bring up these concerns for months, and to wait to explain them until only after placing a vote to reject, means you don’t want to have to argue the merit of your decision ahead of time. Why exactly is that?

Why your reasons for voting no make no sense

  • The whole point of the proposals was to provide a framework for submitting proposals would “lead to code running on the IC”. Right now we have no common ground we can use to objectively argue to merit of different code changes, this is a first step.
  • We were also going to make an NNS controlled canister to host the NNS Principles, which would be code running on the IC.
  • We did define a specific an achievable process to implementation.
  • DFINITY has voted to adopt other motion proposals in the past which specific were never intended to run code on the IC, such as the “Temperature Check” proposal. The purpose of that proposal was only to start a discussion, it specifically claimed no intent to change code. To approve a proposal like that, and reject this one is 100% hypocrisy.
  • The NNS is designed to be a hybrid of both community and code. Therefore, defined parameters for the community aspect should be just as valid as defining parameters for the code aspect. Otherwise, I suggest DFINITY either remove the “motion” proposal type, abstain from voting on all motion proposals, or stop using the “this won’t lead to code” excuse whenever it’s convenient.
  • If proposals for code changes are so important, then why hasn’t DFINITY implemented any of the community proposals arguing for code changes that have passed? For example, why are we still waiting on the implementation of the followee reset proposal?

Why DFINITY should have voted yes
In DFINITY’s own stated voting guidelines you list “About the IC and in the interest of the IC”.

This proposal was created to address serious concerns regarding the NNS, which were causing skilled building in the ecosystem to leave. Specifically, we design the “NNS Principles” proposal to ask neurons to tell the ecosystem that we can trust them not to abuse censorship or tokenomic powers. Neurons have no collective voice, and now you’ve removed even the chance for them to start forming one.

How is the NNS supposed to coordinate and accomplish anything meaningful or complex with absolutely no defined foundation, direction, or expectations?

What DFINITY should do next:

  1. Pick one:
    A. Remove the “motion” proposal type entirely.
    B. Abstain from voting on all motion proposals.
    C. Stop using the “this won’t lead to code” excuse on motion proposals whenever it’s convenient and you don’t want to explain your actual motives.
  2. Explain why you waited until AFTER voting to reject to bring up these objections, when you could have brought them up during the Governance Working Group meetings you hosted, where they were approved by the working group.
  3. Explain your plan for addressing the problem statement of this proposal, or your opposing research showing this problem doesn’t exist. You host the working group to do research to solve problems, so if you won’t accept those solutions it’s only fair that you produce your own plan to solve those problems.
  4. Since you think Known Neurons need to list their principles, and DFINITY and ICA are the largest Known Neurons, then please follow your own advice and list these principles. Namely, tell us where DFINITY will draw the line for censorship and tokenomic changes when voting on NNS proposals. I think everyone would really like to know!

To be fair I directly raised my feedback & concerns in the working group and summarized these points directly after the meeting on Nov 10 in the minutes shared in the forum.

In the minutes I wrote: “With respect to turning Ethos into a proposal: In my opinion we should try to clarify beforehand what is in scope of being a NNS proposal. I am personally in favour of a narrow scope, where NNS proposals are about concrete changes to the NNS protocol (or at least motion-like intentions on introducing certain features). From that perspective, guiding principles would not be in scope of NNS voting.”

Of course, back then this was my personal feedback, which I shared in the forum with the community and also within DFINITY. However, I believe I was very transparent about my concerns and also the merits of the proposal.

The final decision was then made by the trusted neurons within DFINITY this week. I provided input to this discussion (namely the minutes mentioned above), but I am not a trusted neuron myself.


I can follow your description of the problem statement and also the narrative of your proposal. And I can also follow the logic that, if one takes a broader view on what should be in scope of an NNS proposal, one could be in favour of this proposal.

On the other hand, I would like to kindly ask you accept the line of argument above, which is based on a more narrow interpretation of the scope of NNS voting (even if you do not agree with it). There are no further reasons apart from what is described above.


The linked forum post here is precisely an attempt to summarize the voting guideline/principles which DFINITY strives to follow.

1 Like

The governance topic is a glorified poll, which wouldn’t be a bad thing if it were used as such: a place to do temperature checks with liquid democracy, preventing bots and platform bias influence.

Unfortunately Dfinity seems to ignore or forget this when it suits their agenda.
They shot down proposals cause they “don’t lead to code changes” but voted yes to other motions with:

  • No code changes.
  • Code changes they haven’t worked on.
  • Code changes they latter refused to implement cause they have issues with proposed implementation despite having voted in favour, i.e periodic confirmation.

@aiv your frustration is understandable. I’ve been there. Many of us have been there. You did put in a lot of time to this proposal and you did an excellent job leading it. However, I am personally glad that DFINITY voted the way they voted on this proposal. I think principles make sense for individual neurons, but not the NNS as a whole. In a similar way to what @bjoernek described, I think you received feedback of opposition during the deliberation on this topic, but mistakenly interpreted your clarification to the points people made as convincing them to agree with your position. I still don’t care to argue about this topic, but you seem to be pushing your own agenda really hard. Perhaps it would be more productive to take a step back long enough to let emotions settle.


I really like your proposal but I feel it was to early to implement, too many waring parties, when the dust settles they will steal your idea.


I have my voting right. When I cast my vote, I will always vote based on my own interest and principles. I don’t need some folks defining NNS principles for me regardless how well defined they are.
We have a village of, let’s say 100 folks. And somehow 95 of them manage to talk about issues such as governance, tokenomics, etc. all day long while only 5 working on products. Mixing politics and technology in the early stage of development has proven to be a disaster.


This feels very strange and exceptional to have the Foundation use it’s tremendous power in governance to veto an effort to enable the community to define the future of the IC while making no effort to respond to the problem described in the proposal itself. I would like to hear a counter-solution to the stated problem:

Internet Computer Investors & Developers feel insecure with the ability of the NNS to change token economics & platform operation. NNS Proposal creators lack guidance on the attitudes of NNS participants which could inform proposal creation. No statement exists on the attitudes or intentions of NNS participants as a body.



I’m more and more convinced that the only path here is development of external expertise on the replica, decentralization of voting power and moving to rough consensus and running code. Motion proposal still hold the mystique of agency, but are, as previously mentioned, glorified polls.

Just my two cents…and again…a lightly held opinion.


The reason for lots of deleted messages here is I’m reeling in shock at having a post removed or deleted for the first time ever and also coming to terms with the fact that this thread is nonsense and Dom personally had our proposal killed.

I have a long and insane legal letter sent to me by his lawyers but obviously penned by him.

Don’t delete or flag this. You’ll be inflaming a really serious issue. I have contacted Dom’s lawyers about publishing the letter.


They Censored you?

This is insane… And a reason this forum should move off to a decentralised platform


Can you publish the content of this legal letter? If what you wrote is true and you’re getting censored because of it, that’s a very serious matter.


I want to start by saying that I respect Dfinity’s vote and its right to vote however it sees fit. But this argument is weak and to be frank the hypocrisy is deafeaning.

Dfinity has voted YES to a lot of proposals that had absolutely no “path from proposal to code running on the IC”. While this proposal has quite a few paths that lead to code changes. We can explore them further if you want but I doubt it would be a fruitful endeavour since I honestly don’t believe this is the actual reason for the vote. No disrespect but it makes no sense to me personally.

I don’t have any special interest in this proposal passing or not. However, it would be reassuring for us to agree on certain principles especially regarding censorship and tokeneconomics changes, so I tend to favor a YES vote…but I decided to not get involved and let my followee vote for me.

But I have to wonder what criterion for governance decision making is this, if you pick and choose when to use it? What is the difference between this proposal, that Dfinity rejected, and other proposals with no enforceable path forward, that Dfinity accepted?


We went from “it’s just a temp check” to “we need specific executable code changes” real quick!


If @Arthur claim is true I think it’s a clear :triangular_flag_on_post:regarding motion proposals. You can’t use them to change code; but, you can use them to spread propaganda and/or influence the community. If Dom recognizes this maybe we should consider removing this topic from the NNS.


In my opinoion DFINITY’s vote makes sense. We should not experiment with the NNS governance structure without having a systematic way to confidently assess the consequences of a governance proposal like this one. I agree with the existence of principles but we should first experiment with different ideas on less significant environments like SNS1. Let’s try to propose principles to govern SNS1, let’s try to develop tools to asses the consequences of governance proposals on SNS1. Then, when we feel confident about ourselfs and our tools, then we can transfer this knowledge to NNS.


Yep, this is not the first time its happening


Treasury proposal: no enforceable code.
Possible path to code: redirect “abandoned ICP” to a centralized organization to fund dev work.
Dfinity vote: YES

Ethos proposal: no enforceable code.
Possible path to code: change voting parameters for censorship & tokeneconomics.
Dfinity vote: NO

What’s the difference @bjoernek?