[Idea] NuLaw - 60 NBT bounty!

I apologize for unintentionally derailing this thread with my ravishing appearance.

Don’t worry @CoinGame – bringing us back to topic :smile:

Just to summarize what we have so far, here’s that status of what I’m proposing:

Law and Order: Special Nu Unit

  • Nu Code is a bunch of JSON and Markdown files in a git repository
    • Mirrors could live on Github, Gitlab, Bitbucket, or anywhere, git is a DVCS
  • Proposed hierarchy is: Title -> Chapter -> Section -> Item
    • Each title is a separate file (rather than having one giant file with all titles)
  • Titles proposed are: Protocol, Funding, Liquidity, Community
  • Motions should (almost) always have changes to Nu Code (JSON files)
  • Motions can have supporting documents, which should be in Markdown format (.md)
  • Proposed process for new motions is:
    1. Discuss the motion wherever you want
    2. When it’s ready, codify it as a single commit to the git repository (git rebase is your friend)
    3. Motion hash determined by git show <commit> | openssl rmd160
    4. Vote on the hash as always
  • Presentation and content to be kept in separate branches (or repositories)
  • The authoritative source of “things the shareholders have approved” is votes on every content commit’s hash (as described above)
  • A validation script checks that all commits have been voted on

Getting up to speed

Seems like the “todo list here” is:

  1. Go through each motion and turn it into a Markdown file (possible format is here).
  2. Categorize each motion into titles.
  3. … More categorization into chapters, etc.
  4. Try to tease out a standard format for new motions (maybe a list of questions that your motion should answer? maybe a list of specific sections you should almost always fill out?)
  5. Propose a motion to “get things started”, which is either:
  • A motion for a single commit to “bring us up to speed”, including all motions so far (one motion is enough). (I prefer this one)
  • N motions for N commits (1 per motion), means N votes (aka, we have to re-vote on everything we already voted on)
3 Likes

With great beauty comes great responsibility!

Haven’t had time to read through all this, but I hope you’ll stay around, @jgeewax! :christmas_tree:

Not sure how to describe this yet, but do we have any way to make arbitrary parameters voteable and accessible for say bots?

I’m thinking FLOT members (and other future groups) may need to have different payrolls, which should be supported. We currently vote for fees in protocol onto blockchain. We vote the same way for motions except only a hash of it.

Would it be useful to have the payout value split out into a separate variable?

{
    "id": "2",
    "content": "By the end of each cycle, a total of amount of 435 NBT shall be paid to @mhps, conditional on satisfactory performance, which shall be measured in terms of his presence, effort and contribution."
},

Putting 435 (US-)NBT … somewhere.

"payment": {
    "asset": "US-NBT",
    "amount": "435"
}

Too complex?

I think if we can codify it clearly (ie, a single amount like your example), it would make sense to do that, with reasonable defaults of course…

This also ties into a separate question I just posted, not sure if anyone has an answer: [Question] Contract enforcement, doomsday, risk, etc (this topic is not very focused)

Fantastic summary. Allow me to utilize this wrench i’m holding and inject it into the discussion once again. This is a fundamentally different approach to governing Nu than what has been the process for many of us over the course of a year and a half (In a good way. I’m sold.). My first concern is that if we put forth a rigid structure for participating in the DAO it could be a very messy transition. Maybe this is an unwarranted concern, but I just wanted to raise it for discussion purposes. Before we go diving into shallow water.

If you look at previous motions they’re very free form. Most people here are volunteering their time trying to emulate roles that organizations have full time employees for. Even paid project members are only working part time and have other full time responsibilities. If the project grows the burden of supporting the services we offer weighs heavier on participants in managing those services (who are unfortunately rather limited at this point). Development, Nu properties, marketing, support, documentation, liquidity. There’s a lot of moving parts here and up until this idea was presented there was no “way” of doing things.

So I say all that to set the stage for my concerns. I know you’re new, so I wanted to provide a little background and put some context in for everyone else. I see you work for Google. I’m assuming they don’t have similar issues of having extremely limited time, money, and people to throw at important projects. We do.

I see implementing NuLaw as a really important project. To me, it’s huge. What you’ve presented is the direction we need to go. It’s a maturing process of the project and I think it helps to lead the way in governance for not only Nu, but possibly other projects with voting systems that could utilize the implementation. (B&C is on the way). There will be growing pains, but how can we make this implementation more transition friendly? That it can still embrace the free form nature of the current model while adopting this more rigid proposition over time. We don’t have the capability to literally stop what everyone is working on, call an ‘all-hands’ meeting, and instruct everyone to start doing it this way.

We’re going to need to build tools that make it easier for people to do things the “right” way in submitting motions and grants in the future. Also displaying all of the content from the documents we produce. People tend to move in and out of the community over the course of days, weeks, and months. It’s going to take time for everyone to catch onto these changes and adjust their habits. In the mean time we’ll still need to be passing motions/grants in the process of implementing all this without the changes impeding us. Also comes into play that some people just don’t have the technical knowledge of working with git, Github, hashing and other elements required in the new proposal.

This is going to be a common sentiment for a lot of people regarding the changes and implementation. Now maybe my concerns are unfounded. I could be over thinking all this. I think it would be beneficial though to consider that the structure should allow for more free form elements to be included. Not only for the transitional purposes but also because not all voted motions will be for NuLaws. They can also be to garner the support of an idea. Meaning we can vote and pass motions to encourage more debate and discussions on topics.

Or Similar to the process of petitions in the UK invoking debates among MPs. These motions wouldn’t be written into NuLaw in the same way that other contractual based motions would be.

So, how do we allow for this? I think we make it a two tiered solution. If you want your motion to be directly included into NuLaws you educate yourself on the process. Submit a PR with the diff hash and all required information included. Ask everyone to vote directly on that. It’s the process moving forward and fastest way to get your language into the book.

For others that prefer the more informal method, or for motions that are to garner sentiments on issues we allow for the existing process. Just put together some text, hash it and ask people to vote on it. If it passes then people with the understanding of using the first process would take that text and rewrite it into the proper format. This would have to then be voted on again to make sure the rewrite matches the language and spirit of the previous motion to be included in the law book. The verification script could be updated to recognize this type of event as well. The new PR would need to include the B64 encoded text of the passed motion in a unique field that it checks for. If the field exists it decodes the B64, hashes it, and checks to see that a hash with that text passed. Then it checks to see if the new PR was passed as well. If so then it’s good to go in the books.

The NuLaws system doesn’t even have to be “legally binding” until the process flows very smoothly. We can allow for the community to continue operating how it does while builders and maintainers of the NuLaws system refines the process (however long that takes). As motions and grants pass we can simply ask shareholders to also symbolically run the second vote of the two-vote system through. Then at some point when the process is matured we can run a final motion to vote the NuLaws repository as the “Network Constitution” if you will.

3 Likes

Keep in mind that this is volunteer time for me too…

Also, I swear that this isn’t the office:

I don’t think it’s unwarranted. Too much structure would alienate people, which would suck.

I think it’s important to note that this all feels like it’s still in requirement-gathering mode, trying some stuff to see what works. Maybe it’s just me, but until we started looking at the possible structure and fitting existing motions into those, I couldn’t really get a feel for whether the structure would work…

I absolutely agree.

Sounds good to me :smile:

Can we at least say that motions should be plaintext rather than formatted on Discourse? Hashing rich-tech means a lot of potential inconsistency, right?

5 Likes

Would be neat with a graphical interface for publishing and voting on motions later.

Markdown and the supported alternatives are “plain text”. I don’t see a problem with hashing because of that, and formatted text is so much more comfortable to read.

1 Like

Totally, and we appreciate you being here. The community needs more developers. It’s not easy having a full time job and then going home to play “DAO central bank”.

Lordy you know it. We had horrible times early on with people posting motions. People were trying to hash things and getting different hashes depending on browser, online hashing site, tools. It was a real mess. @woolly_sammoth ended up building a forum bot (@assistant) that people could PM with their motion text. It would then spit back a verification text people could paste into discourse, plus a plain text output hosted somewhere else. Like this for example.

We also set up Daology.org so that people can submit motions for Nu. It automatically generates the hash for the user when they publish their motion, and also provides a link to access a plain text format like the assistant bot.

So we have a few tools to avoid that issue. There might be some other simpler tools that we can direct people to using for at least getting a plaintext representation of their motion. I’m sure more tools will be developed in getting people to comply with NuLaw process.

3 Likes

Yes – definitely. I just mean that the input to the hash wouldn’t be HTML mark-up with bullet points, but Markdown formatted bullet points.

1 Like

I’ll close the poll tonight, so please consider voting soon, if you were planning to :sunny:

Voting has closed. Thanks to all 9 of you that gave their votes.

101-500 NBT gained 44%
501-1000 NBT gained 33%
1001-2000 and > 2000 gained 11% each.

My interpretation of this is, that asking for a compensation between 101 and 1000 NBT should have a good chance of passing. Yes, that spread is quite high, but it’s a first number.
I personally think that a proposal with a good reasoning will have good chances to reach consensus around 700-1000 NBT.

@jgeewax Looking forward to see a proposal from you. :nbt:

2 Likes

If more funding would produce a better result, please argue for that. NuLaw sounds like something we want well executed. There will always be improvements to be made of course, but I want to encourage thinking big. You seem to have great ideas.

1 Like

[ninja edit: deleted a wrong conclusion]

The question is what do we get around the 1000NBT mark and is that just a one-off for a ‘system’ or do we need ongoing work and grants in this space?

1 Like

I’m new here, but I suspect that most of the work will go into figuring out how to best to represent the “rules” (which we’ve already started here), as well as taking the ~50 previous passed motions and turning them into the initial rules (that’s a lot of reading unless you’ve been following along since the beginning).

After that, the work seems incremental, and something we should push onto people proposing new motions / custodians.

2 Likes

I’ll contribute to this initiative. Monetarily, to start, because I’m not at a place where I have any free time to devote, but if someone or a group of people are able to get it started, I’ll see what I can do to find time to help with the next steps.

I’m good for 100 NBT, and will put in another 100 NBT if we’re able to come up with 2000 NBT total for this initiative as a group. Who else is willing to add to the pool? If it is helpful I can hold a pool of funds in escrow using a known address that NBT can be sent to.

I’d like to initially do this without requesting an actual NBT grant.

1 Like

This actually raises an interesting question. When is a grant the right thing versus a private fundraiser? Shouldn’t grants be limited to things relating to liquidity (as they are effectively “turning on the money printing machine”)? And things like this which are just “we want to fund a project” better suited for private fundraisers?

(Aka, I agree with Ben, but I can’t tell if that’s going against the spirit of Nu’s custodian grants.)

LP’s are private fund raisers. It’s a good question though, especially pertaining to interpretation of past law. How do we know an investor isn’t giving you a list of demands on the down low in return for secure funding. A grant has a way of making the contractor report to a large host of people, meaning that the investor would need to trump not only the monetary price but also the side risk of reputation lost amongst the entire shareholder base. Then again, free money is nice.

That’s my feeling, too, for initiatives like this one.

For major development I can see a benefit for asking shareholders for a true grant (@Cybnate’s custodianship of the Android app is a prime example), but for community-centric activities, I’d like to see external fundraising as the primary driver.

This is an interesting point and one that I don’t yet have a response to that properly addresses it. Personally I believe it’s a risk that exists in either case, but you do make a good case for why a public grant vs. private funding has a higher likelihood of being transparent.

On the other hand, transparency may be less needed for privately-funded initiatives where the results are the important outcome, rather than the process that leads to the results.

We’re talking about interpretation of blockchain hashes as something other than their source. I think transparency is very important.