Separation of Powers + Checks and Balances

Great to see you, @kronosapiens!

Yeah, I really like the idea of giving each group some hard-coded powers, but right now the contours of the groups aren’t clear enough. For now, I’m inclined to start an (initially non-binding) voting process in which each group has a certain number of votes, and I start seeking ratification for any changes to the system. You can think of it as a live dogfooding/alpha of SourceCred governance. As we play it, we’ll learn about the interest groups that form.


It’s true, any capabilities the system has are capabilities that can be used for abuse. However, if we over-index on this fear, we may design a system with too few capabilities to survive and flourish.

The process of amending the constitution is a good example. The self-amendment capability of the Constitution is one of the vital features that makes it so robust. In fact, the Constitution owes its own ratification to the first 10 amendments (the Bill of Rights); they were necessary to placate anti-Federalist concerns. Since then, the amendment process produced changes like the abolition of slavery, women’s suffrage, presidential term limits.

I believe it is strictly impossible to design a political system which enables amendments like the above, but cannot be corrupted. Consider the 19th amendment, which gave women the vote. If it is possible to redefine the category of people allowed to vote, then logically it can redefine the category in ways that arbitrarily favor a dictator (in the limit: “only the dictator may vote”).

I suspect there’s something analogous to Turing Completeness here: once you have a sufficiently capable political system, it can compute arbitrary political functions, some of which are very different from its creators intentions and values.

(However, even if we could come up with a theoretically perfect political system, it would still be vulnerable to side channel attacks: corruption, political violence, general behavior from external systems and actors.)

It’s timely that you bring this up, since we’re currently spec-ing / prototyping the Supernode system, which allows for discretionary modifications to the Cred map.

Basically, we are switching from an “Activity Map” (the entire graph is raw activity data) to an “Annotated Map” (most of the graph is raw activity data, but annotations guide the cred flows towards important activity).

Whoever gains the ability to operate this system (currently, me) gains enormous power over the output. Currently, if I wanted to flow all of the Cred to one person, I would struggle to do so. With corrupted Supernodes, it would be easy.

However, I think we really need these capabilities for the system to function in the medium term. The biggest issue is that the raw activity map will be very susceptible to gaming. Right now we’re in PvE mode, everyone is working together, so the activity map does alright. However, if used at 10-100x larger scale, it would absolutely break down with floods of low-effort high-activity “contributions”, and we would be presented with an un-winnable game of cat and mouse.

Also, even putting aside the fact that activity cred can get lol’d by gamers, it has other major deficiencies: specifically, it totally fails to recognize some categories of work. I think the best example of this is legal work and sensitive strategic planning: @ianjdarrow has been a great help to me on both of these fronts, but because the conversations are 1:1 chats, they don’t produce legible activity. And if SourceCred fails to recognize some contributors, it’s both a moral failing (unfair!) and a utilitarian failing (incentivizing high value contributions is important!).


I think a useful way to orient this discussion is to focus less on what powers exist, and more on the regulatory process that governs the use of those powers. The U.S. Constitution makes it quite hard to ratify amendments – you need 3/4ths of all the states to approve it. We can imagine an alternate amendment process that only requires political consensus from the three branches of government, and it’s easy to imagine such a system collapsing into overt oligarchy or dictatorship.

The question for the Supernode system then is: how should it be regulated? I don’t know the right long-term answer. For now, I’m going to regulate it directly in my role as TBD. I expect that after we’ve spent a few months using it, we’ll have some clever ideas about how best to constrain its use.

1 Like