[DRAFT] Motion to verify new hashes for 5 previous motions

During the process of verifying text and hashes to produce the base for NuLaws I found myself unable to calculate the hashes for 5 previous motions.

@Cybnate suggested we create new hashes using the previous text and move forward with that. So the idea here is to put all of the previous motions into a new file with their content, old hash, and new hash. Then vote on one motion to validate the new hashes for those previous motions.

This would effectively bind references from the old hashes to the new hashes. I produced the new hashes from the raw links you can see at the top of the gist. My thought was to make the motion a hash of the JSON file below. It will contain the motion text describing the changes with necessary text.

Thoughts?

5 Likes

Nice work: One challenge left is how to compare the gist content captured in json format with the original text in the forum.
Json is not known for its human readability. Are there any user friendly tools to just grab the raw document as presented and make it readable as far as you or anyone else are aware? This would greatly help to have a few of us comparing and providing confidence to vote for it.

I was thinking of adding a QA canary somewhere in the middle to make sure someone checked my work! Forgot about it though. I’ve included all the information in the gist needed to check the work. From the raw URL of the original forum posts to the exact content used from those posts to form the new hashes. I’m not sure I understand what the challenge is here. Is someone going to actually read though everything? Why not just copy/paste the contents of the json file into the online converters like I did? Starting with the source text, and then dumping the outputs into an online diff tool. It should take less than a minute for each if you have the tools. I’ll find the links I used when I get to my computer and put together a quick guide on how to check everything.

Actually, you answered my question :slight_smile: You provide a good way to do the verification and which tools to use! I was just not thinking this through. You should have added the canary though :smiling_imp:

1 Like

Ah okay sorry. I just woke up and my brain wasn’t braining properly. I’ll put together a quick guide once I’m situated.

how to verify my results above

At the top of the gist are links to raw versions of each motion which I used as the source. People formatted their sections differently but basically where they created dividers to delineate start/ends of motions I used the text inside the dividers. If you’re not sure where to start check the hash-content field of the motion your checking to see where I started and ended.

https://discuss.nubits.com/raw/624

Lets use this motion as an example since it’s nice and small. That is the text of the post.

Dividend period 001 of Kiara Tamm’s Proposal to Provide Early Stage, Dual-Side Liquidity and Shareholder Dividends, Revision 0.1.0 (https://gist.github.com/KiaraTamm/c30172f9d5d73e970bf2) will be changed in the following way:

Period 001 will be split into two (2) distributions. The first (1st) distribution of 50,000 NBT worth of PPC will be prepared and delivered to shareholders no later than 72 hours after the passing of this motion. The remaining portion of 22,000 NBT worth of PPC will prepared and delivered to shareholders no later than 72 hours after the funds become available from the proceeds of continued NBT sales. After the second (2nd) distribution of Period 001 is paid, the grant operations will continue as outlined in the original proposal, with no other changes.

That is the raw text I used to produce the hash. From here we can create all of the other values in the JSON file I produced.

Checking the new hash

  1. Copy the text inside the code block above (normally you would do it from the source URL in the gist)
  2. Use this tool to produce a hash from the text.
  3. Check the hashes with a diff tool

Checking the hash-content text

  1. Copy the text inside the code block above (normally you would do it from the source URL in the gist)
  2. Use this tool to escape the source text and make it JSON friendly.
  3. Check the result with a diff tool

Checking the content-b64 text:

  1. Copy the text inside the code block above (normally you would do it from the source URL in the gist)
  2. Use this tool to produce a b64 encoded string of the source text
  3. Check the result with a diff tool

That should be it. By following those steps you can verify the source content used, the transformation of that content into the gist, and compare it to the contents I’ve put into the gist.

2 Likes