Hustle Karma Process

From 0L Network Handbook
Jump to navigation Jump to search

Overview[edit | edit source]

The process is broken down into 3 subprocesses

  • Creation and organization of missions
  • Onboarding and allocation of missions
  • Completion of missions and payment

Creation and organization of missions[edit | edit source]

A mission is created by the broker of the respective working group that the mission is aligned with. A couple of different informal methods can initiate this.

  1. A mission is proposed and accepted by a sponsor.
  2. A mission not listed on the Airtable is completed by a community member, entity or team. The mission is then deemed necessary or a needed addition and a Community Program steward decides to sponsor it.
  3. Members of a working group inform the Broker of missions that are necessary to the project

Proposal[edit | edit source]

A user will engage in the community by first asking around to find if there is a need for the proposed solution. They will then be directed to the pinned message on the Hustle Karma channel by a community member or a moderator.

  • Use the link to view that the Airtable missions list does not already contain a similar task
  • Fill in the form to propose the specific mission.
  • The Broker for the respective department will review, bring it up at the working group meeting and provide a bounty based upon the Hustle Karma compensation structure. Once a bounty is attached to the mission, the broker will see if there is any interest from the community wallet stewards to sponsor the bounty

Sponsoring of Bounties[edit | edit source]

Each mission will be assigned a bounty by the broker in accordance to the Codification of Compensation Creation Process at the bottom of this document. A bounty may or not be sponsored depending on interest. As missions are placed in the airtable and dont have a sponsor they will fall into the *Unsponsored Missions* view.

It is the brokers responsibility to find a sponsor for a bounty. Most likely the sponsor will be a Community Wallet but it can be anyone wishing to allocate 0L GAS to a specific task. To avoid congestion and unneccessary administration the roker will reach out to the community wallet's steward thats goals are aligned to the brokers working group. If there is a need to contact all of the Community Wallet Programs an email can be sent to  [email protected]

Onboarding and allocation of missions[edit | edit source]

Onboarding[edit | edit source]

A user will engage on Discord with the community and be directed to the pinned message on the Hustle Karma channel by a community member or a moderator.

  • Use the link to view the Airtable missions
  • Fill in the form to show interest in a specific mission.
  • The Broker for the Working Group associated with the mission will review and reach out to the individual to discuss
    •     Scope of work
    •     Timeline
    •     Bounty
    •     Review process

Note: that it may be that the discussion with the individual reveals that there are problems/ambiguities with the mission, or the pricing, which requires revision of the mission and/or bounty. Broker will use his/her best efforts to be an intermediary between the individual and the working group and/or the bounty sponsor to arrive at a mutually acceptable solution.

Allocation[edit | edit source]

On a frequent basis(daily/every second day), the broker will view the current users who have expressed interest in the available missions and reach out to the respective user. For the moment, if interest is initiated, the user will most likely be given the missions to complete due to the low amount of interest. In the future, preference will be given to users who have completed missions previously and have a high karma score(details need to be considered regarding this method and allow entry of new participants).

Completion of missions and payment[edit | edit source]

Monitoring[edit | edit source]

Each mission has a time period stated in the mission brief. When the mission has been allocated, the broker takes note and will contact the warrior close to the duration of the time period. It will be either extended, and the scope may be changed due to unforeseen reasons or will verify completion of the mission

Review[edit | edit source]

Depending on the mission and the scope, the respective reviewer for the working group will be contacted by the broker to review and access the completed work. The review will differ depending on the deliverables. An engineering mission will have a different verification process than a branding mission.

For engineering, a merged pull request is considered to be verified as it has been confirmed and tested as part of the code review process.

Once the mission has been verified and signed off as completed, the broker can now send the payment information to the sponsor.

Payment[edit | edit source]

The payment process follows the initial framework designed by [BlockScience](https://block.science/) and is outlined in two documents:


1. If the Sponsor does not have a contributors.json file as specified in the above document they can fork this Repository and fill in the applicable details.

2. The warrior must provide a 0L account address that is set as a slow wallet. Steps to achieve this are:

onboard keygen
txs create-account  -a <AUTH KEY> //This must be done by an existing 0L account
txs wallet --slow

3. A Transaction json file must be created as per the documentation linked above. This can be then sent to the sponser with additional information(for the time being a broker should also keep a record of each 'invoice')

Todo: We need to find a good invoicing service to keep a paper trai

Example(This was the first engineering payment that was sent)[edit | edit source]


warrior: coin1111#6493

0L account: C8A2AFA2D3FC5908CF2D247D8B27FDD5

AUTH KEY: aa1c0583c35fcb95ebbed74d2a000deac8a2afa2d3fc5908cf2d247d8b27fdd5

AMOUNT: 30000

TASKS:

- keccak in VM

- secp in VM

- Functional tests for Kekkak and secp signatures.


Attached Payment.json file(001_Hustle_Karma_Eng.json)


{

    "transaction":<0xTBD>,

    "type":1,

    "details":

        {

        "memo": "Karma Hustle bounty for completing the first batch of missions in the engineering project, specifically addition of cryptographic signatures",

        "missions":

            [

                {

                    "recordURL":"https://airtable.com/appuiDshjiBzOAGl2/tblixhNzkEaKt3a75/viwlz7S2kmgCkoHFS/recrU6tfBpHS8xJF4?blocks=hide",

                    "author":"otto",

                    "worker":"coin1111#6493",

                    "reviewer":"0o-de-lally#9527",

                    "artifacts":["https://github.com/OLSF/libra/pull/894"]

                },

                {

                    "recordURL":"https://airtable.com/appuiDshjiBzOAGl2/tblixhNzkEaKt3a75/viwlz7S2kmgCkoHFS/recLzsOCheWleRKhK?blocks=hide",

                    "author":"otto",

                    "worker":"coin1111#6493",

                    "reviewer":"0o-de-lally#9527",

                    "artifacts":["https://github.com/OLSF/libra/pull/894"]

                },

                {

                    "recordURL":"https://airtable.com/appuiDshjiBzOAGl2/tblixhNzkEaKt3a75/viwlz7S2kmgCkoHFS/recoEGjRNLXIQdRNK?blocks=hide",

                    "author":"otto",

                    "worker":"coin1111#6493",

                    "reviewer":"0o-de-lally#9527",

                    "artifacts":["https://github.com/OLSF/libra/pull/894"]

                }

            ]

        }

    }



4. The sponsor will then send the specified amount to the warrior's address.

5. Once the Transaction has been completed. The broker will input the tx into the JSON. The file can then be added as a pull request to the sponsor's Community Wallet Github repository. The broker will then sign the mission as complete on the Airtable.

Example Repository: Iqlusion Engineering Fund

Community Wallet transfers take around 3 days to process. Please see the documentation

Discord Pinned Message[edit | edit source]


CONTRIBUTING TO OL

----------------------MISSIONS------------------

- View the current missions that 0L needs help with.

Airtable(current missions): https://airtable.com/shrCuXWvrZgHkspk7/tblixhNzkEaKt3a75

----------------------SIGN UP--------------------

- Show your interest in working on one or more of these missions

Form: https://airtable.com/shrHdIF3UfyX4cFJD

----------------------PROPOSE--------------------

- Propose a mission that you are interested in completing and contributing to 0L

Form: https://airtable.com/shrrIW1synjYDQDGl


Governance[edit | edit source]

We propose the following as a potential process around decision making:

  • Reviewers must agree [unanimously][by majority] as a group, on the fulfillment of any part of the deliverable as defined above
  • Contributors do the work to fulfill some part of the brief, and submit it to reviewers for one of several types of feedback:
    1. Uncompensated recommendations for revision
    2. Compensated recommendation for revision
    3. Qualified acceptance, i.e., accepted after recommended changes
    4. Unqualified acceptance
    5. Compensated rejection, i.e., wrong direction but good work
    6. Uncompensated rejection

Working Group Dispute Resolution[edit | edit source]

  • Each working group is charged with resolving any disputes that arise within their scope of work
  • If the dispute cannot be resolved, then the matter will be escalated to the Operations Working Group, who will provide arbitration between the parties.

Exception: Hustle Karma disputes use a different process

If the working group cannot resolve a dispute related to Hustle Karma, the matter is escalated first to the Hustle Karma Working Group, who will provide arbitration between the parties.

If the issue cannot be resolved by the Hustle Karma Working group, the last appeal is to the Operations Working Group.

Codification of Compensation Creation Process[edit | edit source]

Initial Implementation: Work is currently being performed for compensation The process that exists to allocate compensation for work needs to be adjusted to ensure that a long term compensation strategy can properly attract labor. As it stands today, tasks are added to Airtable and contributors can pick up tasks that they feel they are able to accomplish and willing to perform for a given bounty.

Today's bounties are fairly straight forward and exist as the following

  • Low Skill Task: 1,000 OL
  • Medium Skill Task: 2,000 OL
  • High Skill Task: 10,000 OL


First Improvement Proposal: Develop a scalable and reviewable process that takes into account fair market rates for workers experience level and estimated time commitment on any given task.

Issues exist with the current bounty formula for the following reasons:

  1. Low/Medium/High Skill is not well defined
  2. Bounties IRL economic value is unknowable (OL Token is not tradable)
  3. Values for Bounties have no defensible logic
  4. Task Bounties do not take into account time requirements (only skill)

Accepted Proposal(Jan 2022):[edit | edit source]

Since we are not able to understand what an OL is currently worth in Fiat or BTC, the only worth that we can attribute to OL is the current effort that contributors are will to put forth for a given task. Currently there existsTasks in Airtable that have been completed. If contributors are happy with the bounties for their efforts than we can work backwards and ascribe an assumed value to the tokens based on a High skilled workers opportunity cost. From there we can develop a ratio of effort between the High, Medium, and Low skill tasks and adjust rewards for the Medium and Low skill tasks.

In order for us to build this the following initiatives need to take place:

  1. Socialize approach with Brokers (Gather Input)
  2. Connect with contributors who have completed Tasks and survey them to see their satisfaction level with the current bounties (Determine Base Rate)
  3. Work with Brokers to define ration of High, Medium, and Low skill (Determine Ratio)
  4. Assign OL Token Bounties and assumed value to each task (Develop Cost/Reward Metric)
  5. Agree that all tasks will be broken down into smaller tasks that do not exceed 1 day of work

Example End Results[edit | edit source]

Skill Ratio:

Hard, Medium, Easy Ratio = 1:0.5:0.25


Skill Definition:

Hard = 5+ Years Experience In Field Required to Accomplish Task

Medium = 2-5 Years Experience In Field Required to Accomplish Task

Easy = 0-2 Years Experience In Field Required to Accomplish Task

Base Rate For Hard = 10,000 OL


Example:

Building OL Blog Website.

Requires Medium Skill Level and will likely take 3 days to complete.

Posted As "Medium = 5,000 OL" (10,000 Base Rate x 0.5 Medium Ratio).

Design and Branding proposal:

Design work requires iteration and collaboration. We would like to structure the incentives to encourage multiple submissions to a work task during a pre-specified "open for entries" time frame. In this format the following rewards will be given out:

100 0L = submitting

200 0L = submitting but needs revision

10,000 0L = acceptance (will be split amongst all contributors to the acceptance)