Giter VIP home page Giter VIP logo

rgov's Introduction

RChain Rgov

This project aims to create an environment to support governance capabilities on RChain designed to support a collective intelligence (video) of members, support other applications forked from this repo, and specifically the development of governance related ideaton awards.

We internd to support liquid democracy with a trust metric (video) and multistakeholder decision process. We have an evolving RGOV guiding document.

liquid democracy

image credit: Liquid Democracy, Ethereum, and the slow path to revolution. | Jul 2017 by Luke Duncan | 1Hive | Medium

Liquid democracy enables bottom up trust while the trust metric (video) balances that with trust delegated from the leaders down to help guide the community in a coherent direction.

Contributos see CONTRIBUTING.md. (Quick start)

Progress

rgov's People

Contributors

bill-kunj avatar david405 avatar dckc avatar fdoherty13 avatar haller33 avatar jimscarver avatar momchilov avatar raviclalwani avatar sjellen avatar vinay-bhamidipati avatar w2vy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rgov's Issues

bundles of capabilities: maps or method suites?

Sometimes the contracts return maps:

     capabilities!({"read": bundle+{*read},
       "write": bundle+{*write},
       "grant": bundle+{*grant}}) |

-- https://github.com/rchain-community/community/blob/master/directory.rho#L5-L7

other times they return channels with "method suites":

      contract self(
        @"get",
        @{signature /\ String},
        @{nextNonce /\ String},
        getReturn
      ) = {

-- https://github.com/rchain-community/community/blob/master/locker.rho#L102-L107

The latter seems to fit more straightforwardly with traditional ocap patterns better.

See also librho style guide discussion from Oct 2018 JoshOrndorff/librho#7

Actions text box does not update

participate.js has been changed to fetch actions from .rho files instead of getting them from the actions.js file
fetching the .rho files works, but the text box in the web UI no longer updates with the selected action unless the "explore" button is pressed.

deploy front end connected to demo network

I gather this is in progress; http://rhobot.net:8888/ https://rgov.rhobot.net/ have a rhobot network option.

When I first went to https://rgov.rhobot.net/ I ran into:

rnode.js:63 Mixed Content: The page at 'https://rgov.rhobot.net/' was loaded over HTTPS, but requested an insecure resource 'http://rhobot.net:40403/api/explore-deploy'. This request has been blocked; the content must be served over HTTPS.

Perhaps this part is actually working. But reportedly "everything broke" and it's not clear to me whether the problem was in the back end network (#55) or this one.

@jimscarver @Bill-Keuntje is it clear who has the ball on this? Would you please nominate someone by assigning them?

deploy demo rchain network (rhobot)

I gather that part of the preparation for a demo yesterday was setting up a network, but "everything broke" in some way.

@Bill-Keuntje says

Current theory is we didn't have latest code.

cite source for Ballot.rho

Large parts of Ballot.rho look awfully familiar. I think I wrote them. I strongly prefer preserving git history so git blame works, but at least add something in the "initial commit" message and/or the code itself. I guess I could, but it would be a lot easier if you cited the source from which you copied it, @jimscarver

In case, I sound like a broken record, get used to it. :)

test shard on rhobot.net

until the performance of testnet is improved there is a need for a more performant test shard.

rhobot.net may be added as a fourth choice in the network dropdown. It may be used to trial rgov community features like usernames, CrowdFund, WorkGroup, etc. with real users

This can initially be stand alone for the best performance. Later we can allow developers to bond with the rhobot.net shard.

MacRhoBot macros to be considered for reimplementation

MacRhoBot is running in colab discord. To see the rholang of a macro on discord type:

show: macroname
or to fully expand imbedded macros
echo: $addmember(community,user)

find:


$add2Directory($name,$key,$value,$ret)
$addmember($community,$user)
$addUser($username,$directory)
$allowalltovote($community,$ballot)
$allowtovote($user,$ballot)
$chat($user,$message)
$makemylocker
$membersOf($community,$return)
$mydefaultdelegate($community,$username)
$mydelegate($ballot,$username)
$newBallot($name,$choiceSet)
$newCommunity($name)
$newDirectory($name)
$newinbox
$peek($types_return...)
$readchat
$readDirectory($name,$arg_ret...)
$readDir($name,$arg_ret...)
$receive($type,$subtype_return...)
$send($user,$list...)
$share($username,$type,$subtype)
$vote($ballot,$vote)
$voteresults($ballot)

office hours: CrowdFund, REVIssuer, ...

Feb 27 office hours recording

tab dump:

dckc/finquick: web app access to gnucash financial data: https://github.com/dckc/finquick
jessica/quasi-jessie.js.ts at master · dckc/jessica: https://github.com/dckc/jessica/blob/master/lib/quasi-jessie.js.ts
rchain-community/liquid-democracy at react: https://github.com/rchain-community/liquid-democracy/tree/react
Liquid Democracy Participation Experiment: https://rgov1.netlify.app/
Try js2rho: http://localhost:8888/try-js2rho.html
Try js2rho: http://localhost:8888/try-js2rho.html
Agoric DEX tools: ERTP, Zoe, ... · Issue #4 · rchain-community/js2rho: rchain-community/js2rho#4
SealerUnsealer · dckc/awesome-ocap Wiki: https://github.com/dckc/awesome-ocap/wiki/SealerUnsealer
support W3C DID document format? keybase style follow, proof? · Issue #22 · rchain-community/liquid-democracy: #22
how to read web pages from rholang smart contracts? build a market for consensus (oracle) · Issue #28 · rchain/hackathon-2020: rchain/hackathon-2020#28
Dan Connolly on Twitter: "🦄Verifying myself as a @uniswapprotocol #UNIDelegate on Sybil🏛️ https://t.co/YTCgg2xVY0 addr:0x3dA3050208a3F2e0d04b33674aAa7b1A9F9B313C sig:0x195274576ddb995b7239b8176b0cb540c2dab9879b7d3eec5622d8cae0efd3644fa7561aacad703547734eaba6f123259c5e62d8981a10f5dc52ca88a81a76c91c" / Twitter: https://twitter.com/dckc/status/1362490248039723017
rchain-token/main.rho at ocap · fabcotech/rchain-token: https://github.com/fabcotech/rchain-token/blob/ocap/rholang/main.rho#L97
Issues · rchain/hackathon-2020: https://github.com/rchain/hackathon-2020/issues
Issues: https://github.com/issues?q=archived%3Afalse+user%3Archain-community+sort%3Aupdated-desc+NOT+snyk+
rstake/rstake.md at master · rchain-community/rstake: https://github.com/rchain-community/rstake/blob/master/rstake.md
Rev Define: https://revdefine.io/#/
Governance Proposals on Cosmos Hub | The Big Dipper: https://cosmos.bigdipper.live/proposals
Cosmos | Cosmos Hub 2 | Activate the Community Pool: https://hubble.figment.io/cosmos/chains/cosmoshub-2/governance/proposals/7
Cosmos price today, ATOM live marketcap, chart, and info | CoinMarketCap: https://coinmarketcap.com/currencies/cosmos/
Cosmos Will Have 3 Coding Languages – Here's Why That Matters - CoinDesk: https://www.coindesk.com/cosmos-will-have-3-coding-languages-heres-why-that-matters-for-ethereum

Secure smart contracts - Agoric: https://agoric.com/
MadMode: What's Next: Agoric Computing | Code: https://www.madmode.com/2021/next-gig-agoric.html
Agoric (@Agoric) / Twitter: https://twitter.com/agoric
Cosmos Demo Day: Ethereum Assets on Agoric - YouTube: https://www.youtube.com/watch?v=3arKAQLkm0s
agoric-sdk/issuer.js at master · Agoric/agoric-sdk: https://github.com/Agoric/agoric-sdk/blob/master/packages/ERTP/src/issuer.js
Governance Proposals on Cosmos Hub | The Big Dipper: https://explorer.testnet.agoric.com/proposals
SwingSet Solo REPL Demo: http://127.0.0.1:8000/#
Announcing the Gravity Bridge: https://blog.althea.net/gravity-bridge/

rename the repo to rgov?

I suggest changing the liquid-democracy repo name to rgov since it is more encompassing than liquid and not necessarily liquid unless a group wants to be liquid. We call the app rgov in many places. Are there any objections?

Rank-choice voting

Different voting schemes should be available for liquid democracy.
Right now, the only voting scheme we have is single choice.
Alternative schemes should be "pluggable" into individual issues at the time of creation.

locker using `deployerId` - no other crypto, no registry

check out Locker using deployerID

The insight is: since rho:rchain:deployerId forms an unforgeable name, no other deployer can refer to it (unless you send it to them, and even then I'm not sure). Likewise compound names built with it. So @[*deployer, "locker1", "put"] is only available to one who holds the deployer key as well.

And the deployer can refer to it in any number of deploys without any registry lookups.

for reference:

rchain-community/rvote@157eaf4

these are in the rv2020 on a branch just now; I'm not sure where to put them. I'm also not sure of the scope of this community repo, but I see some recent work on the Locker idea here.

cc @jimscarver

URI_Directory error - NOT Error when using rnode-0.11.0-alpha

create-master-directory.log
I ran across this when using rnode 0.11, not sure if it is an issue for rgov or rnode(alpha)

./deploy-all: Propose finished.
./deploy-all: Generating javascript file [generated.rhoid.bootstrap.js]
./deploy-all: Generating json file [generated.rhoid.bootstrap.json]
./deploy-all: Generating directory creation rholang
Deploying generated.create-master-contract-directory.rho
Parsing error: Error in parsing term:
coop.rchain.rholang.interpreter.errors$TopLevelFreeVariablesNotAllowedError: Top level free variables are not allowed: URI_Directory at 20:15.

URI_Directory is referenced on line 36 of bootstrap/master-contract-directory.sh

create-master-directory.log

support a hierarchy of directories of capabilities.

This is supported in the reorganizing-actions branch

A master directory is created and put under workinggroup.rho (in production) control. A read capability is the only URI that is needed. All the rhain standard contracts and the liquid-democracy/rgov contracts are added.

communities are defined with subdirectories of the master. Each person's locker has a subdirectory of the community directory.

Standardize storage of "ReadcapURI"

Currently, ReadcapURI should not be checked in to source control. However, the file is updated whenever a bootstrap process is performed, regardless of platform (rhobot, demo, localhost). This leads to easy commit mistakes. A better mechanism of storing the various ReadcapURIs for each platform is needed that does not conflict with source control processes.

Create housekeeping branch

Many names, TODO items, and other cleanup work needs to be done after the merge of "reorganize-actions"

performance: nextToPropose, explore at latest block

I asked: what's the API for picking the right validator to deploy to? my mainnet deploys are SOOOOOO SLOOOOWWWW.

will said: https://status.rchain.coop/api/validators this is only for mainnet. The nextToPropose is the node you want to deploy.

hm. even after a deploy is done and the results are available at the deployId, the registry lags. Is this a finalization thing?

will: The default exploratory deploy which you are using for looking up data in deployId is using last finalized block to do that. You can use https://developer.rchain.coop/rnode-api#/rhovm/postExplore-deploy-by-block-hash-body to explore your data in the latest block

browser console UI? compose expressions, save values in variables

As long as we're in the dev tool space, for a somewhat chat-like UI, how about just using the browser console?

This would let us compose expressions, save values in variables, etc.

The agoric REPL does this trick where promises are sort of animated... they look like [promise 1] until they're resolved, and then pop! we see the {size: 10, color: "blue"} resolution. I don't think that's feasible with the console, but thingP.then(answer => console.log("got answer:", answer) might be kinda tolerable.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.