Key Performance Indicators (KPIs) define success metrics for the overall testnet system, and will act as an incentive for the Council to do a good job.
Starting with Antioch, KPI rewards will be distributed to Council Members based on their contributions. See Antioch KPIs here, and note that since it was "just" a runtime upgrade and not a new chain, the numbering continues.
Table of Contents
- Overview
- Current KPIs
- Previous KPIs
Overview
For each Council Term, a new set of KPIs will be released. These will contain a mix of tasks, attempting to target different skills and knowledge.
As soon as the Council is set, the Council Members CMs should try to agree on who is assigned what. If there are any disagreement, Jsgenesis will use the individual "Term Summaries" (see below) and the deliveries to set the individual rewards. This may lead to some "unfair" rulings, but that is unfortunately how it must work.
Finally, as we have tried improving the KPI system, there will surely be some issues along the way. Please bear with us!
Current
KPI 31
- KPIs:
17+3
- Total Possible Rewards:
$3925+$665
- Max Fiat Pool Difference:
$364
- Council Elected in Round:
33
- Council Members:
20
- KPI Length:
7 days / 100800
- Start Block/Date:
#3186000 / 16.11.21
- End Block/Date:
#3286800 / 23.11.21
- Start Block/Date:
- Deadline to Submit Summary:
#3315600 / 25.11.21
Notes
We're seeing some signs that whenever the new KPIs are posted, some of the CMs lay claim to a large amount of them ASAP, and are then, in effect, the only ones who can work on them. This is not how the system was intended to work.
If everyone WANTS to co-operate, that's fine, but not if two CMs can claim half of KPIs each, leaving the remaining 18 to fight for the remaining half.
If the CMs would rather compete that's fine too, but in most cases, the winner will take it all.
Section I - Council work, Proposals and Bureaucracy
31.I-1 - Proposal Clearance
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#3186000
- End Block:
#3286800
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
TBD
31.I-2 - Council Secretary
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3186000
- End Block:
#3286800
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal, which happens once per term.
Note that proposals can be created for this role as soon as a new council term begins - it is not necessary to wait for the KPIs to be announced, and that some (friendly) competition for the spot may be a good thing!
Scope of Work
This includes a variety of tasks that the Council Secretary can also sometimes assign to the Deputy Secretary if required. The tasks listed below are only a partial list of what is required to be done, and in some cases there may be additional tasks not noted here:
- Jsgenesis
- The Council Secretary will act as a bridge between the Council and Jsgenesis. If there are significant testnet issues, the Secretary is responsible for making sure JSG is aware of them.
- 2 days after the end of the council term, compile all KPI term summaries into an easy to read file that includes all necessary links.
- At the end of the Council Term, outline which tasks, if any, you assigned to the Deputy, and how the collaboration went.
- Community Repo Management
- For all new PRs made to the repo, the Secretary and/or deputy is expected to attach a link to an approved council proposal prior to merging. Additionally there are other things that must be followed:
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- For all new PRs made to the repo, the Secretary and/or deputy is expected to attach a link to an approved council proposal prior to merging. Additionally there are other things that must be followed:
- Elections
- Make threads for each new election as well as term summary threads.
- Try to make users aware of how to apply for the council and about relevant important deadlines
- Education / Assistance
- The Council Secretary should be available as much as reasonably possible on Discord and the platform's forum to assist and support other CMs.
- Try to answer questions about KPIs that may arise, and if needs be get authoritive answers from JSG.
- Proposals
- Maintain a list of proposals that are addressed to JSG and follow up once JSG has given an official reply jsg_requests.md
- Create proposals for WG Lead term limits as required by the following file WG_Lead_Term_Limits.md
- Bounties
- Ensure the bounty information presented on the website is up to date
- Maintain the file
spending_proposal_categories.csv
and periodically update JSG if there are several outstanding Bounty reimbursements to be made- Also ensure that all spending proposals, whether for OKR bonuses or non-bounty spending proposals are added to this list.
- The council secretary is responsible for receiving payments from Bounty 18 and paying these out to users.
- Documentation
- Periodically reassess the documents contained in the
community-repo
and suggest improvements for easier navigation and help to assist users in making sure that the governance system is represented as much as possible in this repo.- For example: If an approved proposal changes the responsibilities of a role, the relevant file should also be updated.
- Periodically reassess the documents contained in the
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
TBD
31.I-3 - Deputy Council Secretary
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#3193200
- End Block:
#3279600
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for assisting the Council Secretary is needed.
The role should be occupied by someone who is highly motivated and willing to learn, the skills ideally required include:
- must have been on the Council before
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal, which happens once per term. (NOTE: proposals can be created for this role as soon as a new council term begins, it is not necessary to wait for the KPIs to be announced)
Scope of Work
The primary work of the deputy, is to maintain Pull Requests within the community-repo
and ensuring proposals are attached with their relevant PRs.
Additionally to this, the Deputy should refer to the Council Secretary
KPI for a full list of tasks they may be asked to assist with.
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
TBD
31.I-4 - Council Minutes
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Term end + 1 day
- Start Block:
#3286800
- End Block:
#3402000
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
Scope of Work
- The
30th
"official" Council #3085200-#3186000 produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
TBD
31.I-5 - KPI Manager
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#3193200
- End Block:
#3279600
- Start Block:
Purpose
Keeping track of the KPIs is no easy task. Parts of this task has often been handled by the Council Secretary, especially @tomato
, but it might have gotten a little too much in addition to other Secretary tasks.
The idea for this KPI can seen in proposals 686and 689.
Scope of Work
- Please check the "overall" KPI notes for some thoughts on the current status. If the Council wants to co-operate:
- Don't let any CM select more than one KPI AND no more than 1/10 of the overall rewards in one go.
- If a CM wants to reserve two KPIs, tell them they can only have one of them before they have submitted their work. If they want to reserve a "high reward" KPI, they'll have to find/allow someone to cooperate with, or accept competition.
- If someone hasn't done in work within
n
days (KPI manager chooses, but between 1 and 3 sounds reasonable), the KPI will "re-open". - To avoid "KPI squatting", or simply poor work, consider requiring a "stake" for reserving a KPI. This could be as simple as requesting some amount of tJOY sent to your address, that will be released on the conditions the KPI manager sets.
If the Council doesn't want to co-operate, let them compete!
- As soon as a new set of KPIs are released:
- Review them, and look for errors, unclear sections and similar.
- Create a forum thread for KPI Discussion in the appropriate forum area (https://testnet.joystream.org/#/forum/categories/23)
- Ask the Council Members which KPIs they want, and create a (pinned) post on Discord (#kpis), where everyone can see who is planning to do what. Note that although it's better for everyone if CMs co-operate, and don't step on each others toes, there is no rule against multiple CMs trying to work on the same KPI.
- Frequently update the Discord post, forum thread (kpi x discussion) and Russian telegram as CMs announce what they want to do.
- Frequently check in on them and their progress (preferably not in DMs, so that discussion is public), and assist them as best you can. Each CM should ask the KPI Manager before any questions are brought on to the Council Secretary or
@bwhm#6514
. - Periodically mention any unclaimed KPIs. You can highlight how much the KPI potentially pays when doing this to attract users.
- ~24h before the end of the Term, post the progress for each KPI on discord. This should include as much information as possible, including whether KPIs are partially done or are unlikely to be completed in time before the term ends. If possible, include links to relevant proposals, PRs and forum posts alongside each KPI so that the work can be reviewed by JSG. The purpose of this progress report is so that JSG can understand which KPIs have or haven't been completed, so that they can write the new KPIs.
- Towards the end of the Council Term, create a thread for
Term Summaries
in the appropriate forum area (https://testnet.joystream.org/#/forum/categories/23). This thread should include the reporting deadline which is mentioned in the KPIs. This should be linked to on Discord so users are aware of it.
Reward Distribution
Except for 1. ($50), no weighting will apply here, as doing only one or two of the above tasks would make the rest of the work obsolete. The grading for this KPI will in part be based on the feedback from the other CMs.
Grading
TBD
31.I-6 - Council Insight
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#3193200
- End Block:
#3279600
- Start Block:
Purpose
As much of what we were trying to achieve with the "Council Dissent" KPI was already achieved, it got discontinued. With the new direction (TBA) we want to take the governance/testnet incentives/KPIs, it seems important to start rewarding the main responsibilities of the Council - creating, voting and discussing proposals. Simply clicking on one of the four options is easy. Making the "right" decision, and influencing your fellow councilors to do the same is not!
Scope of Work
- Simply share your insight and knowledge with the platform! Each week, every CM can present up to five "posts" made in a discussion on-chain. This means:
- Proposal texts created
- Replies to a proposal
- Forum posts or threads
The point here is to not limit it to dissent, meaning any question, comment or statement may be evaluated.
Reward Distribution
- Individual CMs are capped at $100 each
- The whole KPI is capped at $500
Grading
TBD
31.I-7 - Joystream Node Issues
- Reward:
$250
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#3193200
- End Block:
#3279600
- Start Block:
Purpose
Two weeks ago, we had an unfortunate event where some of our RPC and Bootnodes had gone down.
We have, and continue to, look into exactly what has happened to them, but thus far we have yet to solve the issue.
Information:
- The nodes are running different versions. At least one was running joystream-node-5.1.0-9d9e77751.
- The problematic seems to be #2661218, with hash
0xf5a468e133149fc094bdfa9d8842610a82fbdae10d57a4d5e980093d4691bbbc
.- Note that this block was re-orged in (common occurance), replacing
0x7c1e11029ada770a98100f4aae3a4d4c23192343eaaf879ab57b888ae18dd841
- Also note that it's the first block in a new era (
4458
)
- Note that this block was re-orged in (common occurance), replacing
- One node stopped finalizing at this exact height, whereas some other continued for a little while before halting.
- At some point, all failing nodes (that is running with
--log runtime
) will show:
INFO 💔 Invalid justification provided by 12D3KooWFkZZ23LoeyrpFpsDWEQwwRSWx9VaG6bwiz6jL8AE8HfS for #0x2e04…620a
- The block in question being #2661813 with hash
0x2e04e790f04d336e2d58efb705e4773782d15041de776f755034b6355100620a
- This happens to be the first block in a new era (
4459
)
- This happens to be the first block in a new era (
Note that the "old" part 1 was completed last term.
Scope of Work
-
Get ALL events that has to with slashing, eg.
imOnline.SomeOffline
, andoffences.*
starting from block #2000000 up until the current height. Create a dataset and chart the development of occurrences.
(If you also get all the blocks with the eventstaking.payout
, 3 will be significantly easier.) -
How many validators were there in each
era
, starting from #4457 up until now, and what was the set of validators? It's sufficient to check a single block in eachactiveEra
. Provide:
- the full validator set
- number of validators
- blockheight
- era (
activeEra
andcurrentEra
) - validator points for each era
- Having the data from 1 and 2, see if there is any reason to believe it implies anything "bad" happening around the problem blocks listed above.
Reward Distribution
Weighting:
- $100
- $100
- $50
Grading
TBD
Section II - Community Management
31.II-1 - Discord & Telegram Channel Management
- Reward:
$75
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3186000
- End Block:
#3286800
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
TBD
31.II-2 - Create new KPIs
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#3193200
- End Block:
#3279600
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
TBD
31.II-3 - Council Term Summary Videos
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Term end + 2 days
- Start Block:
#3286800
- End Block:
#3416400
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
We have seen some decent first iterations, but now is the time to see if we can get some improvements!
The problems we have seen thus far:
- Some of the English videos (especially the first few times) has been "text to speech". This makes it far less personal, and interesting.
- The visual of the videos have, in all cases, been screenshots and screen recordings of pioneer, discord, github, etc. This makes it very tempting to skip ahead.
- All videos are made by a single member
Scope of Work
-
Team up with one or more community member, and make the video more of a panel discussion. If you wish to stay anonymous, that is ok, but consider concealing your face some other way than disabled camera. As far as we can tell, most of the community has no/little problems understanding English. For that reason, and for grading purposes, the video must be recorded in English.
-
Instead of a strict list of topics, take some notes on what has happened (doesn't have to be this week), and discuss it. Feel free to request topics from the Community!
-
After publishing the video, get feedback by the community, and for the next video, discuss it on air.
Note
After a couple of iterations, we would consider sponsoring equipment, and other costs associated with the production. Examples:
- Improved cameras/microphones
- Greenscreens
- Introduction animations
- etc.
Note that you have to ask in advance!
Reward Distribution
More than one team can apply, and more than one team can earn the full amount.
Weighting:
- $300
Grading
TBD
31.II-4 - Community Call 1 - Part 2
- Reward:
$700
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3186000
- End Block:
#3286800
- Start Block:
Purpose
The Community call has been successfully held, and the raw video was uploaded here.
A little follow up work (editing, translating, etc) is needed!
Note
The reward has been reduced a bit, as these kind of videos needs to go out quickly to get the best value. Remember for next time!
(The tasks that was completed by the end of the last term will be graded with the "old" rewards)
Scope of Work
- Create a spreadsheet with:
- index of the question (1, 2, etc.)
- each question asked written in English
- the timestamp of when the question started, in hours, minutes, seconds, milliseconds, eg.
00:20:30,4000
- the timestamp of when the answer was finish, in hours, minutes, seconds, milliseconds, eg.
00:21:31,4100
- if two (or more) subsequent questions are linked, such as a follow up question, make a note of it.
Chit chat, off-topic, pauses, etc- in between questions should not be included, meaning the timestamp of the end of question 1, should in most cases not be the same as the timestamp of the start of question 2
Then, With the list from above, do an informal poll among the community, and find out which 3-10 questions is considered most interesting/important. Note that this doesn't (necessarily) mean the best question. The entertainment value is the most important element:
- If the answer isn't very interesting, the clip won't be either!
- If a question spurred further conversation, even if somewhat off-topic, it might still have been more interesting to watch.
- For each of the 3-10 "questions" from 1, create a "teaser" for each video. These should all be in the same style. Examples:
- 2/3-off, 2s-5s clips enticing the prospective viewer to wathc the video, edited in a "nice" way
- a concise, short "version" of the question spelled out
- soft (license free) music?
Note that the above are just suggestions - we hope someone in the community knows how to create engaging videos, and grow a base better than we do :)
(Let me know if you want the chatlog!)
-
Create a text based FAQ based on the questions that was asked. Both the question and answer needs a rewrite to make it suitable as an FAQ. This may even mean creating your question, if something interesting was said, that wasn't spurred by a direct question.
-
Create a condensed version of the video, keeping more than the just the top rated above, but removing section that seems less interesting. How much to keep is up to you!
(Let me know if you want the chatlog!) -
Create russian subtitles for the video from 2, using the
.srt
, or other "widespread" format.
Notes
For all videos, subtitles and artwork, you are free to upload yourself, but it has to be "CC0", and jsgenesis will likely re-upload.
Reward Distribution
For 1, only the first "good" submission will be rewarded.
For 2-3, only the best submission will be rewarded.
For 3, we are thinking it may be an iterative process, where we (may):
- want to combine the work of two people
- potentially request small changes/fixes
- if/when we get something that looks great, we would want that team or person create more of these (paid) in the future
- $125
- $275
- $150
- $75
- $75
(If you don't have any experience here, you'll likely be disappointed with your grading - this will be very strict)
Grading
TBD
31.II-5 - Community Call 2 - Part 1
- Reward:
$100
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3186000
- End Block:
#3286800
- Start Block:
Purpose
As announced on Discord, we will host a community call this Wednesday!
Scope of Work
- Gather questions and present them at least 2h before the scheduled start.
- Translate questions made in Russian (both written and oral) to English. Requires proficient (spoken) English, and a willingness to show your face on camera :)
Reward Distribution
1-2: $100 each.
Grading
TBD
Section III - Working Groups
31.III-1 - Follow up the Storage Working Group
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#3193200
- End Block:
#3279600
- Start Block:
Purpose
It's been a while since we've had these!
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
- Since the current Lead was hired, how many weekly reports were created? What, in general, did each report contain?
- Since the current Lead was hired, how many workers were hired and fired? If anyone was fired, what was the stated reason(s)?
- What was the overall spending (in both tJOY and USD) at the start of every Council Term starting from the week before the Lead was hired, until now?
- Is the Lead tracking of the performance of each node at regular interval? If yes, is there a carrot/stick system in place?
Reward Distribution
Individual grading, and equal reward for each task. Unless all tasks are addressed, no reward is given.
Grading
TBD
31.III-2 - Follow up the Content Curator Group
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#3193200
- End Block:
#3279600
- Start Block:
Purpose
It's been a while since we've had these!
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
- Since the current Lead was hired, how many weekly reports were created? What, in general, did each report contain?
- Since the current Lead was hired, how many workers were hired and fired? If anyone was fired, what was the stated reason(s)?
- What was the overall spending (in both tJOY and USD) at the start of every Council Term starting from the week before the Lead was hired, until now?
- What is the Curator Groups system/approach for reviewing/approving each new video as they are uploaded? Are they all checked, or is that done for Bounties only?
Reward Distribution
Individual grading, and equal reward for each task. Unless all tasks are addressed, no reward is given.
Grading
TBD
31.III-3 - Follow up the Operations Group
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#3193200
- End Block:
#3279600
- Start Block:
Purpose
It's been a while since we've had these!
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
- Since the current Lead was hired, how many weekly reports were created? What, in general, did each report contain?
- Since the current Lead was hired, how many workers were hired and fired? If anyone was fired, what was the stated reason(s)?
- What was the overall spending (in both tJOY and USD) at the start of every Council Term starting from the week before the Lead was hired, until now?
- Is the Operations handling their "basic" workload as defined in the helpdesk repo?
Reward Distribution
Individual grading, and equal reward for each task. Unless all tasks are addressed, no reward is given.
Grading
TBD
Section IV - Bounties
31.IV-1 - Joystream Education Series Bounty
- Reward:
$100
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#3186000
- End Block:
#3286800
- Start Block:
Note
Extended, as it's not clear if finished.
Purpose
Creating a series of explainer videos was proposed by @marinag_mary
on Discord. Creating video(s) explaining in particular the Council role, and more testnet specific information was planned way back in 5.10, but never materialized. Let's try again!
Quite some topics was introduced, but I think we should start somewhere smaller and rather branch out.
As these videos:
- should be a series, created in the same style,
- will be a lot of work to get nice,
- will require frequent tweaking, both with feedback, and with changes to the testnet (runtime)/kpi, etc.
I think it should be a Bounty. Who is better to write it than the Council?
Scope of Work
- What topics should be covered in the initial 3-5 videos? I propose:
- How to join the project
- What is the Councils role
- Intro to the Joystream player
- Intro to the governance app
There are many other topics, and future additions should be mentioned. I think it's counterproductive to pretend like we can complete them all rather soon, if we want to uphold a certain standard. However, these four might not the be the right ones! It would be good to loop in the people doing Community Feedback, and other surveys, the AMA, etc. Anything that indicates where the pain points are really.
- Create a (draft) Bounty text for this series of explainer videos. Be as specific as possible, including a fairly opinionated list of:
- What each should covered in each video
- How they should look (animated, screensharing/screenshots, etc)
Check out the status of the Official music theme, as that would be a nice addition!
- Present the draft to the council/community for approval. When approved, Jsgenesis wants to review as well.
Reward Distribution
All parts must be attempted for this to get graded.
Grading
TBD
31.IV-2 - Bounty Managers
- Reward:
$100
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#3186000
- End Block:
#3286800
- Start Block:
Note
Extended, as it's not clear if finished.
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Scope of Work
-
For all "Official" Jsgenesis created/endorsed bounties: what is the current status of the grading/payment? Is there an action on JSG?
-
What is the status of Bounty 27? Note that OP isn't the offical text.
-
What is the status of Bounty 21? We have heard whispers that it's completed, but would like to know more specifics.
Reward Distribution
Weighting:
- $20
- $40
- $40
Grading
TBD
Working Group KPIs
31.CC-1 - Discover Category Videos - Part 2
- Reward:
$250
- Fiat Pool Factor:
0.3
- Start Block:
#3186000
- End Block:
#3387600
- Start Block:
Purpose
As part of a small update to the Joystream Player, we're adding some featured videos to each category for exploring. See example of the design here. For this, we need to curators to step in. After the leg work was done in KPI 25.CC-1, we're now ready to go live with this feature!
Notes
- A json with the current videos can be found here.
- Note that the timestamps (in seconds) denotes the rough start/stop of the clip.
- A guide showing how to trim the video files can be found here.
- The Curator Lead must also read through the further instructions here to ensure there is nothing missing between what is created and what is needed.
Scope of Work
- Prepare a somewhere where all the clips can be stored, and accessed (eg. dropbox, google drive, etc.). They should all be ~10s long, so this shouldn't require much storage.
- For each video in the list, ensure once more that it doesn't violate any license.
- If the video is "kosher", create a clip of the video, and upload it to the destination in 1, with the title of the file being
<categoryId>-<videoId>.<extension>
-> eg.1-3.mp4
for "Did An Alternate Reality Game Gone Wrong Predict QAnon?". - Update a spreadsheet that keeps the following information:
categoryId
categoryName
videoId
channelId
ownerId
title
- Exact start of the clip (in ms)
- Exact end of the clip (in ms)
- Rating. (Meaning how appropriate you think this is, scale 1-5 - 5 being the best, for highlighting this category)
- Once they're all ready, ping me (@bwhm) and
@tomato
on discord. This will in the future be solely run by the community. For the time being,tomato
will be the only one with the key that allows setting and changing the featured vids for a category.
Reward Distribution
This should be split among many curators, to ensure it's done quickly. The payout scheme works as following:
- If completed within block 3207600, the reward is $250
- If completed within block 3214800, the reward is $200
- If completed within block 3222000, the reward is $150
- If completed within block 3229200, the reward is $100
If not completed by the end of the term, all members of the Curator group will be annihilated for the Term.
Grading
TBD
31.OP-1 - Pioneer 2.0
- Reward:
$90
- Fiat Pool Factor:
0.1
- Start Block:
#2883600
- End Block:
#3488400
- Start Block:
Purpose
Now that we are finally closing in on the release launching pioneer 2.0, we want to focus on something that we've wanted to for some time. Namely giving the community both an opportunity and reason to contribute.
As we've stated many times before, we wish for the community to take charge of the platform in the future, which means they have to understand the software they're working on. Starting early, on an something that's both unfinished and that will require lots of improvements and updates sounds ideal. To make things "even better", there are both developer docs, contributor guides, and a fair amount of (good first) issues to start with!
KPI 27.OP-1 had the Lead review all the (then) open issues, and assign a dollar value for grading them. These values have been set as rewards!
Scope of Work
For each of the issues below, open a PR that gets merged. Even if the PR is merged in the end, the reward may be lower than what is stated, if:
- There are lots of requested changes
- It takes "too long" from the review, until the changes has been made.
Reward Distribution
Each of the issues are graded separately. No requirement to complete all.
Grading
TBD
31.OP-2 - Giza Testing
- Reward:
$25
- Fiat Pool Factor:
0
- Start Block:
#2984400
- End Block:
#3286800
- Start Block:
Purpose
As we have started testing of Giza, we want the Operations group to help in testing. The reward will be $25/h of testing. However, we need some continuity, and reliability in terms of the testers availability.
The Lead is free to select a subset of the group they think is most qualified. Qualifications:
- Some familiarity with using the command line (linux) and
git
(for most, not required for all) - If possible, one or more that has been a storage provider
- Basic english (for communication, documentation and instructions parsing)
- Likes to try and break things :)
We will provide linodes for the testers to ssh into.
Scope of Work
Testing will likely continue throughout the week. Information has been/will be shared to those participating.
Grading
TBD
Previous KPIs
KPI 30
- KPIs:
14+3
- Total Possible Rewards:
$3865+$465
- Max Fiat Pool Difference:
$299
- Council Elected in Round:
32
- Council Members:
20
- KPI Length:
7 days / 100800
- Start Block/Date:
#3085200 / 09.11.21
- End Block/Date:
#3186000 / 16.11.21
- Start Block/Date:
- Deadline to Submit Summary:
#3214800 / 18.11.21
Notes
Changes has been made to the Council (Deputy) Secretary KPI!
Grading
CMs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2194 | ilich | 116 | 3952229 |
1521 | arseniy2706 | 4 | 136284 |
361 | blackmass | 6 | 204426 |
2141 | joyval | 2 | 68142 |
515 | l1dev | 109 | 3713732 |
2574 | alexznet | 12 | 408851 |
2531 | nanapa6otaet | 88 | 2998243 |
2697 | ardashoff | 109 | 3713732 |
1962 | nkhlghbl | 10 | 340709 |
321 | freakstatic_council | 15 | 511064 |
1345 | kadyrovs | 71 | 2419037 |
2462 | chiffah | 6 | 204426 |
2 | tomato | 313 | 10664204 |
2137 | kalpakci | 3 | 102213 |
1997 | marinag_mary | 178 | 6064627 |
2329 | laura | 463 | 15774845 |
319 | sparky | 0 | 0 |
2435 | zazik | 313 | 10664204 |
582 | hayabusa | 10 | 340709 |
2154 | marat_mu | 296 | 10084998 |
SUM | 20 | 2174 | 72366675 |
WGs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
515 | l1dev | 50 | 1703547 |
Paid out on blocks #3,258,261 and #3,258,262.
The Fiat Pool Factor resulted in the -$250.
Section I - Council work, Proposals and Bureaucracy
30.I-1 - Proposal Clearance
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#3085200
- End Block:
#3186000
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
2194 | ilich | 26 | 85 | 16 |
1521 | arseniy2706 | 5 | 19 | 4 |
361 | blackmass | 10 | 31 | 6 |
2141 | joyval | 2 | 8 | 2 |
515 | l1dev | 15 | 45 | 9 |
2574 | alexznet | 20 | 63 | 12 |
2531 | nanapa6otaet | 17 | 65 | 13 |
2697 | ardashoff | 19 | 75 | 14 |
1962 | nkhlghbl | 13 | 52 | 10 |
321 | freakstatic_council | 24 | 80 | 15 |
1345 | kadyrovs | 22 | 67 | 13 |
2462 | chiffah | 8 | 29 | 6 |
2 | tomato | 22 | 68 | 13 |
2137 | kalpakci | 4 | 16 | 3 |
1997 | marinag_mary | 12 | 41 | 8 |
2329 | laura | 27 | 91 | 18 |
319 | sparky | 0 | 0 | 0 |
2435 | zazik | 27 | 96 | 18 |
582 | hayabusa | 13 | 52 | 10 |
2154 | marat_mu | 18 | 56 | 11 |
SUM | 20 | 304 | 1039 | 200 |
30.I-2 - Council Secretary
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3085200
- End Block:
#3186000
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal, which happens once per term.
Note that proposals can be created for this role as soon as a new council term begins - it is not necessary to wait for the KPIs to be announced, and that some (friendly) competition for the spot may be a good thing!
Scope of Work
This includes a variety of tasks that the Council Secretary can also sometimes assign to the Deputy Secretary if required. The tasks listed below are only a partial list of what is required to be done, and in some cases there may be additional tasks not noted here:
- Jsgenesis
- The Council Secretary will act as a bridge between the Council and Jsgenesis. If there are significant testnet issues, the Secretary is responsible for making sure JSG is aware of them.
- 2 days after the end of the council term, compile all KPI term summaries into an easy to read file that includes all necessary links.
- At the end of the Council Term, outline which tasks, if any, you assigned to the Deputy, and how the collaboration went.
- Community Repo Management
- For all new PRs made to the repo, the Secretary and/or deputy is expected to attach a link to an approved council proposal prior to merging. Additionally there are other things that must be followed:
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- For all new PRs made to the repo, the Secretary and/or deputy is expected to attach a link to an approved council proposal prior to merging. Additionally there are other things that must be followed:
- Elections
- Make threads for each new election as well as term summary threads.
- Try to make users aware of how to apply for the council and about relevant important deadlines
- Education / Assistance
- The Council Secretary should be available as much as reasonably possible on Discord and the platform's forum to assist and support other CMs.
- Try to answer questions about KPIs that may arise, and if needs be get authoritive answers from JSG.
- Proposals
- Maintain a list of proposals that are addressed to JSG and follow up once JSG has given an official reply jsg_requests.md
- Create proposals for WG Lead term limits as required by the following file WG_Lead_Term_Limits.md
- Bounties
- Ensure the bounty information presented on the website is up to date
- Maintain the file
spending_proposal_categories.csv
and periodically update JSG if there are several outstanding Bounty reimbursements to be made- Also ensure that all spending proposals, whether for OKR bonuses or non-bounty spending proposals are added to this list.
- The council secretary is responsible for receiving payments from Bounty 18 and paying these out to users.
- Documentation
- Periodically reassess the documents contained in the
community-repo
and suggest improvements for easier navigation and help to assist users in making sure that the governance system is represented as much as possible in this repo.- For example: If an approved proposal changes the responsibilities of a role, the relevant file should also be updated.
- Periodically reassess the documents contained in the
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
30.I-3 - Deputy Council Secretary
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#3092400
- End Block:
#3178800
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for assisting the Council Secretary is needed.
The role should be occupied by someone who is highly motivated and willing to learn, the skills ideally required include:
- must have been on the Council before
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal, which happens once per term. (NOTE: proposals can be created for this role as soon as a new council term begins, it is not necessary to wait for the KPIs to be announced)
Scope of Work
The primary work of the deputy, is to maintain Pull Requests within the community-repo
and ensuring proposals are attached with their relevant PRs.
Additionally to this, the Deputy should refer to the Council Secretary
KPI for a full list of tasks they may be asked to assist with.
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
30.I-4 - Council Minutes
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Term end + 1 day
- Start Block:
#3186000
- End Block:
#3301200
- Start Block:
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
Scope of Work
- The
30th
"official" Council #3085200-#3186000 produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
30.I-5 - KPI Manager
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#3092400
- End Block:
#3178800
- Start Block:
Purpose
Keeping track of the KPIs is no easy task. Parts of this task has often been handled by the Council Secretary, especially @tomato
, but it might have gotten a little too much in addition to other Secretary tasks.
The idea for this KPI can seen in proposals 686and 689.
Scope of Work
- As soon as a new set of KPIs are released:
- Review them, and look for errors, unclear sections and similar.
- Ask the Council Members which KPIs they want, and create a (pinned) post on Discord (#kpis), where everyone can see who is planning to do what. Note that although it's better for everyone if CMs co-operate, and don't step on each others toes, there is no rule against multiple CMs trying to work on the same KPI.
- Frequently update, the Discord post, forum thread (kpi x discussion) and Russian telegram as CMs announce what they want to do.
- Frequently check in on them and their progress (preferably not in DMs, so that discussion is public), and assist them as best you can. Each CM should ask the KPI Manager before any questions are brought on to the Council Secretary or
@bwhm#6514
. - ~24h before the end of the Term, post the progress for each KPI on discord.
- When term summaries thread has been created, remind everyone who has "claimed" a KPI to post their work there.
Note
This includes WG KPIs. If no one claims this KPI, the work must be done by the Council Secretary or Deputy.
Reward Distribution
No weighting will apply here, as doing only one or two of the above tasks would make the rest of the work obsolete. The grading for this KPI will in part be based on the feedback from the other CMs.
Grading
- @laura - $85
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=6
- Did forum threads and KPI updates on the forum. Also posted the status update at the end of term.
- @marinag_mary - $65
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=8
- Posted updates on Discord and followed up on progress regularly.
30.I-6 - Council Insight
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#3092400
- End Block:
#3178800
- Start Block:
Purpose
As much of what we were trying to achieve with the "Council Dissent" KPI was already achieved, it got discontinued. With the new direction (TBA) we want to take the governance/testnet incentives/KPIs, it seems important to start rewarding the main responsibilities of the Council - creating, voting and discussing proposals. Simply clicking on one of the four options is easy. Making the "right" decision, and influencing your fellow councilors to do the same is not!
Scope of Work
- Simply share your insight and knowledge with the platform! Each week, every CM can present up to five "posts" made in a discussion on-chain. This means:
- Proposal texts created
- Replies to a proposal
- Forum posts or threads
The point here is to not limit it to dissent, meaning any question, comment or statement may be evaluated.
Reward Distribution
- Individual CMs are capped at $100 each
- The whole KPI is capped at $500
Grading
- General Note: Lots of comments from this thread, which makes it quite difficult to grade "objectively" without taking "sides". We considered voiding all references to this thread entirely, but we don't want to stop discussions of what is clearly of importance to many.
- @kadyrovs - $32.5
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=2
- https://testnet.joystream.org/#/proposals/801
- Insightful comment - $25
- https://testnet.joystream.org/#/proposals/812
- Provided a comment of support - $7.5
- https://testnet.joystream.org/#/proposals/801
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=2
- @ilich - $100
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=3
- https://pioneer.joystreamstats.live/#/proposals/794
- Raised a very good question - $30
- https://pioneer.joystreamstats.live/#/proposals/801
- Included a valuable opinion which used data to show the proposal finalize time possibly increases in relation with the council size - $30
- https://pioneer.joystreamstats.live/#/proposals/813
- Highlighted the reduction in fiat pool reward that was not accounted for in the budget - $30
- https://testnet.joystream.org/#/forum/threads/743?page=3&replyIdx=25
- Insightful comment - $10
- https://pioneer.joystreamstats.live/#/proposals/794
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=3
- @zazik - $25
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=4
- https://pioneer.joystreamstats.live/#/proposals/801
- Suggested that increasing the council size is an issue that should be first discussed on the forum before making a proposal - $25
- https://pioneer.joystreamstats.live/#/proposals/801
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=4
- @laura - $40
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=6
- https://testnet.joystream.org/#/forum/threads/743
- Created a very interesting topic - $40
- https://testnet.joystream.org/#/forum/threads/743
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=6
- @nanapa6otaet - $50
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=7
- https://pioneer.joystreamstats.live/#/proposals/801
- Raised some really interesting points covering a wide range of views - $50
- https://pioneer.joystreamstats.live/#/proposals/813
- Not very high quality comments - $0
- https://testnet.joystream.org/#/forum/threads/743?page=3&replyIdx=25
- Not very high quality comments - $0
- https://pioneer.joystreamstats.live/#/proposals/801
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=7
- @marinag_mary - $40
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=8
- https://testnet.joystream.org/#/proposals/801
- Provided a supporting comment - $10
- https://pioneer.joystreamstats.live/#/forum/threads/744?replyIdx=2
- Provided a supporting comment - $5
- https://pioneer.joystreamstats.live/#/forum/threads/751?replyIdx=8
- Provided a comment that analyzed work done by another user - $15
- https://testnet.joystream.org/#/proposals/812
- Provided a supporting comment - $10
- https://testnet.joystream.org/#/proposals/801
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=8
30.I-7 - Joystream Node Issues
- Reward:
$250
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#3092400
- End Block:
#3178800
- Start Block:
Purpose
Two weeks ago, we had an unfortunate event where some of our RPC and Bootnodes had gone down.
We have, and continue to, look into exactly what has happened to them, but thus far we have yet to solve the issue.
Information:
- The nodes are running different versions. At least one was running joystream-node-5.1.0-9d9e77751.
- The problematic seems to be #2661218, with hash
0xf5a468e133149fc094bdfa9d8842610a82fbdae10d57a4d5e980093d4691bbbc
.- Note that this block was re-orged in (common occurance), replacing
0x7c1e11029ada770a98100f4aae3a4d4c23192343eaaf879ab57b888ae18dd841
- Also note that it's the first block in a new era (
4458
)
- Note that this block was re-orged in (common occurance), replacing
- One node stopped finalizing at this exact height, whereas some other continued for a little while before halting.
- At some point, all failing nodes (that is running with
--log runtime
) will show:
INFO 💔 Invalid justification provided by 12D3KooWFkZZ23LoeyrpFpsDWEQwwRSWx9VaG6bwiz6jL8AE8HfS for #0x2e04…620a
- The block in question being #2661813 with hash
0x2e04e790f04d336e2d58efb705e4773782d15041de776f755034b6355100620a
- This happens to be the first block in a new era (
4459
)
- This happens to be the first block in a new era (
Note that the "old" part 1 was completed last term.
Scope of Work
-
Get ALL events that has to with slashing, eg.
imOnline.SomeOffline
, andoffences.*
starting from block #2000000 up until the current height. Create a dataset and chart the development of occurrences.
(If you also get all the blocks with the eventstaking.payout
, 3 will be significantly easier.) -
How many validators were there in each
era
, starting from #4457 up until now, and what was the set of validators? It's sufficient to check a single block in eachactiveEra
. Provide:
- the full validator set
- number of validators
- blockheight
- era (
activeEra
andcurrentEra
) - validator points for each era
- Having the data from 1 and 2, see if there is any reason to believe it implies anything "bad" happening around the problem blocks listed above.
Reward Distribution
Weighting:
- $100
- $100
- $50
Grading
- @l1dev
- Still in progress. Grading deferred.
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=9
30.I-8 - KPI Presentation - Part 2
- Reward:
$300
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3092400
- End Block:
#3178800
- Start Block:
Purpose
There's been plenty of feedback on the rather crude way the KPI's are presented, and how it negatively impacts several aspects of the KPIs.
- It's very hard to read and parse, scaring people away from even trying
- There are often errors in the ToC and formatting
- It's very hard to read and parse the results
- The page is infinite
I'm sure I could go on, but let's instead focus on how to improve it.
Part 1 of this was mostly completed in 26.I-5 and 27.I-5. Lets finish this!
Scope of Work
- Go through the work, with emphasis on what to include, design briefs and wireframes in the aforementioned Part 1 (follow the links above), and provide a quick summary:
- Does the "what to include" cover the basics needed?
- Is the wireframe(s) and/or design brief(s) cover the above?
- Can the best wireframe be implemented?
-
Although not part of the Scope in Part 1, complete json files for some older KPIs was created an merged here. This would have been some of the scope for Part 2, so it'll be retroactively rewarded!
-
Does the json in 2 contain all the data needed to work as the backend for the design? If yes, make a PR:
- That moves the file to a reasonable place in the repo (similar to the bounty-status.json and bounties.schema.json)
- Adds the latest KPI info in to the file
- Create a json.schema to validate the json
- Write basic instructions for updating the json, so that it can be done frequently by the KPI manager
- Have the operations group implement the design, and make it a part of joystreamstats.live (or some other website accessible for the community).
Reward Distribution
Parts 1-3 must all be addressed (not necessarily by the same person) for this to be graded.
Weighting:
- $50
- $125
- $75
- $50
Grading
- No work submitted, no rewards.
Section II - Community Management
30.II-1 - Discord & Telegram Channel Management
- Reward:
$75
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3085200
- End Block:
#3186000
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @kadyrovs - $25
- @zazik - $25
- @nanapa6otaet - $25
30.II-2 - Create new KPIs
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#3092400
- End Block:
#3178800
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- No work submitted, no rewards.
30.II-3 - Council Term Summary Videos
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Term end + 2 days
- Start Block:
#3186000
- End Block:
#3315600
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
We have seen some decent first iterations, but now is the time to see if we can get some improvements!
The problems we have seen thus far:
- Some of the English videos (especially the first few times) has been "text to speech". This makes it far less personal, and interesting.
- The visual of the videos have, in all cases, been screenshots and screen recordings of pioneer, discord, github, etc. This makes it very tempting to skip ahead.
- All videos are made by a single member
Scope of Work
-
Team up with one or more community member, and make the video more of a panel discussion. If you wish to stay anonymous, that is ok, but consider concealing your face some other way than disabled camera. As far as we can tell, most of the community has no/little problems understanding English. For that reason, and for grading purposes, the video must be recorded in English.
-
Instead of a strict list of topics, take some notes on what has happened (doesn't have to be this week), and discuss it. Feel free to request topics from the Community!
-
After publishing the video, get feedback by the community, and for the next video, discuss it on air.
Note
After a couple of iterations, we would consider sponsoring equipment, and other costs associated with the production. Examples:
- Improved cameras/microphones
- Greenscreens
- Introduction animations
- etc.
Note that you have to ask in advance!
Reward Distribution
More than one team can apply, and more than one team can earn the full amount.
Weighting:
- $300
Grading
- @laura - $220
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=6
- https://play.joystream.org/video/7625
- https://testnet.joystream.org/#/forum/threads/756?replyIdx=2
- Provided the view of a newer council member and discussed at length various topics surrounding the project (DAO, KPIs, FM program) and provided valuable insight as well as raised important issues relating to newer users being unable to grasp the project easily
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=6
- @marat_mu - $200
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=10
- https://testnet.joystream.org/#/forum/threads/765
- https://play.joystream.org/video/7669
- Discussed a wide range of topics, including council stake requirements, council size and JSG participation in voting for CMs and also discussed the recent AMA and in particular how JSG grades FM reports
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=10
30.II-4 - Community Feedback - Part 2
- Reward:
$140
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3085200
- End Block:
#3186000
- Start Block:
Purpose
As we are closing on Giza, and further towards mainnet, it seems like a good time to get some feedback from the Community. There are a couple of ways to go about this, so it will be divided in to two tasks. The results from Part 1 can be found here and here.
The person(s) or group(s) tackling this KPI should cooperate with the whoever is tackling the Joystream Education Series Bounty.
Scope of Work
- The survey(s) created has been up for a while. Combine the results, from all surveys in "all" languages, and divide the questions in to (at least) three categories:
- Questions that is best answered in a video series, eg. the Joystream Education Series.
- Consider a sub-category for questions that fits in here, but the overall topic is not in the top priority, for whatever reason.
- Questions that is best answered by Jsgenesis, eg. in a Q&A/AMA setting.
- Questions that should be answered in some other context, eg. simply a reply on discord, longer article form, etc. (explain).
- How many people replied to the survey? How many were members, and how "active" are the members in the community (posts on discord, roles occupied, transactions made, age of membership, etc.)
- What is the best way to get this information in the future?
Reward Distribution
Weighting:
- $100
- $20
- $20
Grading
- @zazik - $70
This KPI was done together with @ardashoff
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=4
- Great work, the results were categorized, the format of the report was also good.
- @ardashoff - $70
This KPI was done together with @ZAZIK
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=5
- Great work, the results were categorized, the format of the report was also good.
30.II-5 - Community Call - Part 2
- Reward:
$1000
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#3085200
- End Block:
#3186000
- Start Block:
Purpose
The Community call has been successfully held, and the raw video was uploaded here.
A little follow up work (editing, translating, etc) is needed!
Scope of Work
- Create a spreadsheet with:
- index of the question (1, 2, etc.)
- each question asked written in English
- the timestamp of when the question started, in hours, minutes, seconds, milliseconds, eg.
00:20:30,4000
- the timestamp of when the answer was finish, in hours, minutes, seconds, milliseconds, eg.
00:21:31,4100
- if two (or more) subsequent questions are linked, such as a follow up question, make a note of it.
Chit chat, off-topic, pauses, etc- in between questions should not be included, meaning the timestamp of the end of question 1, should in most cases not be the same as the timestamp of the start of question 2
Then, With the list from above, do an informal poll among the community, and find out which 3-10 questions is considered most interesting/important. Note that this doesn't (necessarily) mean the best question. The entertainment value is the most important element:
- If the answer isn't very interesting, the clip won't be either!
- If a question spurred further conversation, even if somewhat off-topic, it might still have been more interesting to watch.
- For each of the 3-10 "questions" from 1, create a "teaser" for each video. These should all be in the same style. Examples:
- 2/3-off, 2s-5s clips enticing the prospective viewer to wathc the video, edited in a "nice" way
- a concise, short "version" of the question spelled out
- soft (license free) music?
Note that the above are just suggestions - we hope someone in the community knows how to create engaging videos, and grow a base better than we do :)
(Let me know if you want the chatlog!)
-
Create a text based FAQ based on the questions that was asked. Both the question and answer needs a rewrite to make it suitable as an FAQ. This may even mean creating your question, if something interesting was said, that wasn't spurred by a direct question.
-
Create a condensed version of the video, keeping more than the just the top rated above, but removing section that seems less interesting. How much to keep is up to you!
(Let me know if you want the chatlog!) -
Create russian subtitles for the video from 2, using the
.srt
, or other "widespread" format.
Notes
For all videos, subtitles and artwork, you are free to upload yourself, but it has to be "CC0", and jsgenesis will likely re-upload.
Reward Distribution
For 1, only the first "good" submission will be rewarded.
For 2-3, only the best submission will be rewarded.
For 3, we are thinking it may be an iterative process, where we (may):
- want to combine the work of two people
- potentially request small changes/fixes
- if/when we get something that looks great, we would want that team or person create more of these (paid) in the future
- $150
- $350
- $200
- $100
- $100
(If you don't have any experience here, you'll likely be disappointed with your grading - this will be very strict)
Grading
- @laura - $100
We also worked on kpi @zazik @ mary_75 @art_khabibelin
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=6
- https://play.joystream.org/video/7666
- SOW 1: No spreadsheet provided
- SOW 2: No teasers created
- SOW 3: No FAQ created
- SOW 4: Created a video that was a cut down version of the original (in Russian language) - $100
- SOW 5: No subtitles provided
Section III - Working Groups
Section IV - Bounties
30.IV-1 - Joystream Education Series Bounty
- Reward:
$100
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#3085200
- End Block:
#3186000
- Start Block:
Purpose
Creating a series of explainer videos was proposed by @marinag_mary
on Discord. Creating video(s) explaining in particular the Council role, and more testnet specific information was planned way back in 5.10, but never materialized. Let's try again!
Quite some topics was introduced, but I think we should start somewhere smaller and rather branch out.
As these videos:
- should be a series, created in the same style,
- will be a lot of work to get nice,
- will require frequent tweaking, both with feedback, and with changes to the testnet (runtime)/kpi, etc.
I think it should be a Bounty. Who is better to write it than the Council?
Scope of Work
- What topics should be covered in the initial 3-5 videos? I propose:
- How to join the project
- What is the Councils role
- Intro to the Joystream player
- Intro to the governance app
There are many other topics, and future additions should be mentioned. I think it's counterproductive to pretend like we can complete them all rather soon, if we want to uphold a certain standard. However, these four might not the be the right ones! It would be good to loop in the people doing Community Feedback, and other surveys, the AMA, etc. Anything that indicates where the pain points are really.
- Create a (draft) Bounty text for this series of explainer videos. Be as specific as possible, including a fairly opinionated list of:
- What each should covered in each video
- How they should look (animated, screensharing/screenshots, etc)
Check out the status of the Official music theme, as that would be a nice addition!
- Present the draft to the council/community for approval. When approved, Jsgenesis wants to review as well.
Reward Distribution
All parts must be attempted for this to get graded.
Grading
- @zazik - $25
KPI was done together with @ardashoff , @marat_mu , @marinag_mary
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=4
- The proposal is very well structured, and the GitHub issue/draft created by @marat_mu was also great (https://github.com/Joystream/community-repo/issues/469)
- @ardashoff - $25
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=5
- The proposal is very well structured, and the GitHub issue/draft created by @marat_mu was also great (https://github.com/Joystream/community-repo/issues/469)
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=5
- @marinag_mary - $25
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=8
* The proposal is very well structured, and the GitHub issue/draft created by @marat_mu was also great (https://github.com/Joystream/community-repo/issues/469)
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=8
- @marat_mu - $25
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=10
- https://pioneer.joystreamstats.live/#/forum/threads/751
- https://github.com/Joystream/community-repo/issues/469
- The proposal is very well structured, and the GitHub issue/draft created by @marat_mu was also great (https://github.com/Joystream/community-repo/issues/469)
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=10
30.IV-2 - Bounty Managers
- Reward:
$100
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#3085200
- End Block:
#3186000
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Scope of Work
-
For all "Official" Jsgenesis created/endorsed bounties: what is the current status of the grading/payment? Is there an action on JSG?
-
What is the status of Bounty 27? Note that OP isn't the offical text.
-
What is the status of Bounty 21? We have heard whispers that it's completed, but would like to know more specifics.
Reward Distribution
Weighting:
- $20
- $40
- $40
Grading
- @marinag_mary - $40
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=8
- https://docs.google.com/document/d/1MCvGGhdXb2FNimmGj2LuOplX5JrZF8agpbxSYEpqIF8/edit?usp=sharing
- SOW 3: The table provided gives a good overview of the status of Bounty 21.
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=8
- @marat_mu - $60
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=10
- https://testnet.joystream.org/#/forum/threads/749
- https://docs.google.com/spreadsheets/d/14Pgvs6B_QJDunw6EjI3sYv1qu83xMKGjpm3xQGPmIaY/edit?usp=sharing
- SOW 1: Gave a good update on the status of all bounties - $20
- SOW 2: Gave an update on the status of Bounty 27 - $40
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=10
Working Group KPIs
30.OP-1 - Pioneer 2.0
- Reward:
$390
- Fiat Pool Factor:
0.1
- Start Block:
#2883600
- End Block:
#3387600
- Start Block:
Purpose
Now that we are finally closing in on the release launching pioneer 2.0, we want to focus on something that we've wanted to for some time. Namely giving the community both an opportunity and reason to contribute.
As we've stated many times before, we wish for the community to take charge of the platform in the future, which means they have to understand the software they're working on. Starting early, on an something that's both unfinished and that will require lots of improvements and updates sounds ideal. To make things "even better", there are both developer docs, contributor guides, and a fair amount of (good first) issues to start with!
KPI 27.OP-1 had the Lead review all the (then) open issues, and assign a dollar value for grading them. These values have been set as rewards!
Scope of Work
For each of the issues below, open a PR that gets merged. Even if the PR is merged in the end, the reward may be lower than what is stated, if:
- There are lots of requested changes
- It takes "too long" from the review, until the changes has been made.
- #1566 - $90
- #858 - $120
- [#888]((https://github.com/Joystream/pioneer/issues/888) - $60
- #1260 - $30
- #1480 - $30
- #1497 - $60
Reward Distribution
Each of the issues are graded separately. No requirement to complete all.
Grading
- Many completed the previous week, thus no impact on fiat pool.
- @l1dev
- Still in progress. Grading deferred.
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=9
30.OP-2 - Giza Testing Schedule
- Reward:
$50
- Fiat Pool Factor:
0
- Start Block:
#3085200
- End Block:
#3200400
- Start Block:
As we have started testing of Giza, we want the Operations group to help in testing. The reward will be $25/h of testing. However, we need some continuity, and reliability in terms of the testers availability.
The Lead is free to select a subset of the group they think is most qualified. Qualifications:
- Some familiarity with using the command line (linux) and
git
(for most, not required for all) - If possible, one or more that has been a storage provider
- Basic english (for communication, documentation and instructions parsing)
- Likes to try and break things :)
We will provide linodes for the testers to ssh into.
Note that this has been delayed multiple times on Jsgenesis' account. Won't happen again!
Scope of Work
Ask the members of the Operations if they are interested, and provide a rough timetable of their availability starting from 11.11 - 19.11.
We are going to start at the latest on the 12th, but it's unclear how many days after. There will be more series' of testing to come though!
Create a table, showing their availability for the days in question, and a rough summary of the qualifications.
Grading
- @l1dev - $50
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=9
- Provided the required schedule.
- https://pioneer.joystreamstats.live/#/forum/threads/757?page=1&replyIdx=9
30.OP-3 - Giza Testing
- Reward:
$25
- Fiat Pool Factor:
0
- Start Block:
#2984400
- End Block:
#3286800
- Start Block:
Purpose
As we have started testing of Giza, we want the Operations group to help in testing. The reward will be $25/h of testing. However, we need some continuity, and reliability in terms of the testers availability.
The Lead is free to select a subset of the group they think is most qualified. Qualifications:
- Some familiarity with using the command line (linux) and
git
(for most, not required for all) - If possible, one or more that has been a storage provider
- Basic english (for communication, documentation and instructions parsing)
- Likes to try and break things :)
We will provide linodes for the testers to ssh into.
Scope of Work
Testing will start (latest) on the 12th of November. Information will be presented then.
Grading
- @l1dev
- Still in progress.
KPI 29
- KPIs:
16+3
- Total Possible Rewards:
$4300+$540
- Max Fiat Pool Difference:
$401.5
- Council Elected in Round:
31
- Council Members:
20
- KPI Length:
7 days / 100800
- Start Block/Date:
#2984400 / 02.11.21
- End Block/Date:
#3085200 / 09.11.21
- Start Block/Date:
- Deadline to Submit Summary:
#3114000 / 11.11.21
Grading
CMs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
1905 | kate_fm | 9 | 357796 |
2194 | ilich | 164 | 6519842 |
1521 | arseniy2706 | 3 | 119265 |
644 | lkskrn | 6 | 238531 |
361 | blackmass | 5 | 198776 |
515 | l1dev | 107 | 4253799 |
635 | xfactorus | 14 | 556572 |
2096 | svasilenko | 305 | 12125315 |
321 | freakstatic_council | 13 | 516817 |
1345 | kadyrovs | 50 | 1987757 |
2 | tomato | 312 | 12403602 |
1997 | marinag_mary | 145 | 5764494 |
2329 | laura | 311 | 12363846 |
790 | ururu | 11 | 437306 |
319 | sparky | 0 | 0 |
2130 | maxlevush | 14 | 556572 |
1048 | igrex | 292 | 11608499 |
2435 | zazik | 238 | 9461722 |
2182 | isonar | 3 | 119265 |
3045 | oklick | 15 | 596327 |
SUM | 20 | 2567 | 80186103 |
WGs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
644 | lkskrn | 300 | 11926540 |
1905 | kate_fm | 50 | 1987757 |
2194 | ilich | 100 | 3975513 |
515 | l1dev | 100 | 3975513 |
Paid out on blocks #3,177,697 and #3,177,698.
The Fiat Pool was reduced by $220.
Section I - Council work, Proposals and Bureaucracy
29.I-1 - Proposal Clearance
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2984400
- End Block:
#3085200
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
1905 | kate_fm | 18 | 57 | 9 |
2194 | ilich | 24 | 87 | 14 |
1521 | arseniy2706 | 4 | 16 | 3 |
644 | lkskrn | 11 | 40 | 6 |
361 | blackmass | 8 | 29 | 5 |
515 | l1dev | 11 | 46 | 7 |
635 | xfactorus | 24 | 87 | 14 |
2096 | svasilenko | 20 | 65 | 10 |
321 | freakstatic_council | 23 | 80 | 13 |
1345 | kadyrovs | 20 | 65 | 10 |
2 | tomato | 20 | 78 | 12 |
1997 | marinag_mary | 10 | 34 | 5 |
2329 | laura | 26 | 104 | 16 |
790 | ururu | 20 | 71 | 11 |
319 | sparky | 0 | 0 | 0 |
2130 | maxlevush | 25 | 92 | 14 |
1048 | igrex | 29 | 109 | 17 |
2435 | zazik | 25 | 95 | 15 |
2182 | isonar | 6 | 21 | 3 |
3045 | oklick | 24 | 94 | 15 |
SUM | 20 | 348 | 1270 | 200 |
29.I-2 - Council Secretary
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2984400
- End Block:
#3085200
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
Note that the SoW is somewhat outdated.
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $300
29.I-3 - Deputy Council Secretary
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2991600
- End Block:
#3078000
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
Note that the SoW is somewhat outdated.
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
29.I-4 - Council Minutes
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Term end + 1 day
- Start Block:
#3085200
- End Block:
#3200400
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2494800) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
29.I-5 - KPI Manager
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2991600
- End Block:
#3078000
- Start Block:
Purpose
Keeping track of the KPIs is no easy task. Parts of this task has often been handled by the Council Secretary, especially @tomato
, but it might have gotten a little too much in addition to other Secretary tasks.
The idea for this KPI can seen in proposals 686and 689.
Scope of Work
- As soon as a new set of KPIs are released:
- Review them, and look for errors, unclear sections and similar.
- Ask the Council Members which KPIs they want, and create a (pinned) post on Discord (#kpis), where everyone can see who is planning to do what. Note that although it's better for everyone if CMs co-operate, and don't step on each others toes, there is no rule against multiple CMs trying to work on the same KPI.
- Update the post as CMs announce what they want to do.
- Frequently check in on them and their progress (preferably not in DMs, so that discussion is public), and assist them as best you can. Each CM should ask the KPI Manager before any questions are brought on to the Council Secretary or
@bwhm#6514
. - ~24h before the end of the Term, post the progress for each KPI on discord.
Note
This includes WG KPIs. If no one claims this KPI, the work must be done by the Council Secretary or Deputy.
Reward Distribution
No weighting will apply here, as doing only one or two of the above tasks would make the rest of the work obsolete. The grading for this KPI will in part be based on the feedback from the other CMs.
Grading
- As two people took this role, the reward is split between them based upon the work they each reported.
- @svasilenko - $110
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=2
- Multiple Discord messages about KPIs, reminded about unclaimed KPIs
- Followed up with CMs regarding KPI status
- Did KPI status at end of term
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=2
- @marinag_mary - $40
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=10
- Did forum thread summary
- Posted some updates in Discord about unassigned KPIs
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=10
29.I-6 - Council Insight
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2991600
- End Block:
#3078000
- Start Block:
Purpose
As much of what we were trying to achieve with the "Council Dissent" KPI was already achieved, it got discontinued. With the new direction (TBA) we want to take the governance/testnet incentives/KPIs, it seems important to start rewarding the main responsibilities of the Council - creating, voting and discussing proposals. Simply clicking on one of the four options is easy. Making the "right" decision, and influencing your fellow councilors to do the same is not!
Scope of Work
- Simply share your insight and knowledge with the platform! Each week, every CM can present up to five "posts" made in a discussion on-chain. This means:
- Proposal texts created
- Replies to a proposal
- Forum posts or threads
The point here is to not limit it to dissent, meaning any question, comment or statement may be evaluated.
Reward Distribution
- Individual CMs are capped at $100 each
- The whole KPI is capped at $500
Grading
- @svasilenko - $85
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=2
- User submitted more than the allowed
5
submissions, as such the first 5 they submitted will be used.- https://pioneer.joystreamstats.live/#/forum/threads/729?replyIdx=3 - $20
- Raised a good question and shared a system used by another platform.
- https://testnet.joystream.org/#/forum/threads/732 - $20
- Created a good thread for a new role, and the first post set out some clear ideas and generated some discussion.
- https://pioneer.joystreamstats.live/#/forum/threads/721?replyIdx=3 - $5
- Feedback on a Council Term Summary Video
- https://pioneer.joystreamstats.live/#/forum/threads/734?replyIdx=2 - $10
- Feedback on a Council Term Summary Video
- https://pioneer.joystreamstats.live/#/forum/threads/735 - $25
- Created a good initiative to extend the responsibilities of a role. Generated a great amount of discussion.
- https://pioneer.joystreamstats.live/#/forum/threads/729?replyIdx=3 - $20
- @igrex - $20
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=4
- https://testnet.joystream.org/#/proposals/781 - $5
- Raised a file format issue.
- https://testnet.joystream.org/#/proposals/777 - $15
- Raised some good questions early on in the proposal discussion and asked for specifics on how such an idea would actually be implemented.
- https://testnet.joystream.org/#/proposals/781 - $5
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=4
- @zazik - $47.5
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=6
- https://pioneer.joystreamstats.live/#/proposals/781
- File format issue - $2.5
- https://pioneer.joystreamstats.live/#/proposals/778 - $20
- Raised a good question about how changes to a role should be done via updating the appropriate file in the
community-repo
- Raised a good question about how changes to a role should be done via updating the appropriate file in the
- https://pioneer.joystreamstats.live/#/proposals/777
- Highlighted how discussion for this kind of proposal would've been better done before actual proposal creation - $25
- https://pioneer.joystreamstats.live/#/proposals/781
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=6
- @kadyrovs - $15
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=7
- https://testnet.joystream.org/#/proposals/777 - $10
- Made a good quality comment regarding the proposal and lack of discussion prior to proposal creation.
- https://testnet.joystream.org/#/proposals/778 - $5
- Added a comment in support of the proposal
- https://testnet.joystream.org/#/proposals/777 - $10
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=7
- @l1dev - $100
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=8 - $25
- Raised important issues of how such a proposal can actually be implemented and noted the lack of clear steps in the proposal.
- https://pioneer.joystreamstats.live/#/proposals/753 - $30
- Raised some issues with the proposal in a clear manner, and presented potential solutions.
- https://pioneer.joystreamstats.live/#/forum/threads/717?page=2 - $35
- Raised several issues/notes with the budget in a high quality format.
- https://pioneer.joystreamstats.live/#/forum/threads/735?page=1 - $10
- Mentioned that the appropriate file should be adjusted when changing the responsibilities of this role.
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=8 - $25
- @marinag_mary - $20
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=10
- https://testnet.joystream.org/#/forum/threads/732?replyIdx=3 - $5
- minor comment
- https://testnet.joystream.org/#/forum/threads/738?replyIdx=4 - $10
- Helped provide feedback on the community call.
- https://testnet.joystream.org/#/forum/threads/734?replyIdx=4 - $5
- minor comment
- https://testnet.joystream.org/#/forum/threads/732?replyIdx=3 - $5
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=10
- @ilich - $50
- https://testnet.joystream.org/#/forum/threads/740?page=2&replyIdx=11
- https://pioneer.joystreamstats.live/#/proposals/777 - $50
- Particularly high quality comments about the elections, provided clear and valuable insight on recent changes with the council and raised important questions.
- https://pioneer.joystreamstats.live/#/proposals/777 - $50
- https://testnet.joystream.org/#/forum/threads/740?page=2&replyIdx=11
- @laura - $20
- https://testnet.joystream.org/#/forum/threads/740?page=2&replyIdx=12
- https://pioneer.joystreamstats.live/#/proposals/777 - $20
- Raised interesting points regarding elections and our project's aim to be a DAO
- https://pioneer.joystreamstats.live/#/proposals/777 - $20
- https://testnet.joystream.org/#/forum/threads/740?page=2&replyIdx=12
29.I-7 - Joystream Node Issues
- Reward:
$400
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2991600
- End Block:
#3078000
- Start Block:
Purpose
Last week, we had an unfortunate event where some of our RPC and Bootnodes had gone down.
We have, and continue to, look into exactly what has happened to them, but thus far we have yet to solve the issue.
Information:
- The nodes are running different versions. At least one was running joystream-node-5.1.0-9d9e77751.
- The problematic seems to be #2661218, with hash
0xf5a468e133149fc094bdfa9d8842610a82fbdae10d57a4d5e980093d4691bbbc
.- Note that this block was re-orged in (common occurance), replacing
0x7c1e11029ada770a98100f4aae3a4d4c23192343eaaf879ab57b888ae18dd841
- Also note that it's the first block in a new era (
4458
)
- Note that this block was re-orged in (common occurance), replacing
- One node stopped finalizing at this exact height, whereas some other continued for a little while before halting.
- At some point, all failing nodes (that is running with
--log runtime
) will show:
INFO 💔 Invalid justification provided by 12D3KooWFkZZ23LoeyrpFpsDWEQwwRSWx9VaG6bwiz6jL8AE8HfS for #0x2e04…620a
- The block in question being #2661813 with hash
0x2e04e790f04d336e2d58efb705e4773782d15041de776f755034b6355100620a
- This happens to be the first block in a new era (
4459
)
- This happens to be the first block in a new era (
Scope of Work
-
We asked in discord whether someone else had the same issue, but the replies were all negative. We are fairly confident however that someone has indeed had this issue. Perhaps having not yet realized it. Try to reach as many validators/node runners as possible and ask them:
- Are you running a validator, or "just" a node?
- How long has it been running, and when was it last down (
systemctl status joystream-node
) - What flags are you running? (eg.
--pruning=archive, --log runtime, etc.
) - Which version of the node are you running, and on what OS? (
/path/to/joystream-node --version
) - Check the logs for the blocks in question, and provide the entire output between first spotting block #2661217 for the next ~20 blocks, and the same starting from #2661813.
- Is your node finalizing the new blocks?
- If your node is not finalizing, restart it, and provide full logs for the first minute after restart.
-
Get ALL events that has to with slashing, eg.
imOnline.SomeOffline
, andoffences.*
starting from block #2000000 up until the current height. Create a dataset and chart the development of occurrences.
(If you also get all the blocks with the eventstaking.payout
, 3 will be significantly easier.) -
How many validators were there in each
era
, starting from #4457 up until now, and what was the set of validators? It's sufficient to check a single block in eachactiveEra
. Provide:
- the full validator set
- number of validators
- blockheight
- era (
activeEra
andcurrentEra
) - validator points for each era
- Having the data from 2 and 3, see if there is any reason to believe it implies anything "bad" happening around the problem blocks listed above.
Reward Distribution
Weighting:
- $150
- $100
- $100
- $50
Grading
- @svasilenko - $0
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=3
- The submitted work didn't fulfill the KPI's requirements
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=3
Section II - Community Management
29.II-1 - Discord & Telegram Channel Management
- Reward:
$75
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2984400
- End Block:
#3085200
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @igrex - $25
- @zazik - $25
- @kadyrovs - $25
29.II-2 - Create new KPIs
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2991600
- End Block:
#3078000
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- @marinag_mary
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=10
- KPI 30.IV-1 - $35
- KPI 30.II-5 - $45 (SoW 3 only)
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=10
29.II-3 - Council Term Summary Videos
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Term end + 2 days
- Start Block:
#3085200
- End Block:
#3214800
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
We have seen some decent first iterations, but now is the time to see if we can get some improvements!
The problems we have seen thus far:
- Some of the English videos (especially the first few times) has been "text to speech". This makes it far less personal, and interesting.
- The visual of the videos have, in all cases, been screenshots and screen recordings of pioneer, discord, github, etc. This makes it very tempting to skip ahead.
- All videos are made by a single member
Scope of Work
-
Team up with one or more community member, and make the video more of a panel discussion. If you wish to stay anonymous, that is ok, but consider concealing your face some other way than disabled camera. As far as we can tell, most of the community has no/little problems understanding English. For that reason, and for grading purposes, the video must be recorded in English.
-
Instead of a strict list of topics, take some notes on what has happened (doesn't have to be this week), and discuss it. Feel free to request topics from the Community!
-
After publishing the video, get feedback by the community, and for the next video, discuss it on air.
Note
After a couple of iterations, we would consider sponsoring equipment, and other costs associated with the production. Examples:
- Improved cameras/microphones
- Greenscreens
- Introduction animations
- etc.
Note that you have to ask in advance!
Reward Distribution
More than one team can apply, and more than one team can earn the full amount.
Weighting:
- $300
Grading
29.II-4 - Community Feedback - Part 2
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2984400
- End Block:
#3085200
- Start Block:
Purpose
HOLD
Scope of Work
Reward Distribution
Grading
TBD
29.II-5 - Research Boardroom
- Reward:
$200
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2984400
- End Block:
#3085200
- Start Block:
Purpose
Boardroom is a website that showcases the governance side of a selection of DAO projects. Some of the projects put out a weekly update which is included in a newsletter, as well as contribute to a calendar which lists updates and proposals from projects. It would be interesting to know how Joystream could integrate with Boardroom.
Scope of Work
- Investigate Boardroom and write a report showing whether it is possible for Joystream to integrate with it.
- This must include what the process and/or requirements to be featured on the site
- If there is an application process, and how this looks like
- Whether the Community can maintain this
- Any other any other relevant information, as well as Joystream's blockchain compatibility with the project.
- Are there any other Polkadot or Substrate based projects currently included on Boardroom? If yes, what are they?
- Are there any similar websites/platforms to Boardroom where the Joystream project could possibly be listed? These sites should similarly show proposals, newsletters and some governance information from the Joystream project alongside other projects.
- If possible, an indication of how many people are using Boardroom (and other similar platforms) would be useful.
Reward Distribution
1-4: $50 each
Grading
- As two people took this role, the reward is split between them based upon the work they each reported.
- @igrex - $125
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=4
- https://pioneer.joystreamstats.live/#/proposals/775
- Good overview on the project, including a list of projects and some fundamental information on what it includes.
- Highlighted that there were no Polkadot or Substrate projects on the platform and also additional information about Boardroom being an Ethereum only project.
- @laura - $75
- https://testnet.joystream.org/#/forum/threads/740?page=2&replyIdx=12
- Noted that all projects are Ethereum based
- Included another alternative platform, Snapshot (which does include what appears to be one substrate based project)
- https://testnet.joystream.org/#/forum/threads/740?page=2&replyIdx=12
29.II-6 - Community Call - Part I
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Term start + 2 days
- Start Block:
#2984400
- End Block:
#3114000
- Start Block:
Purpose
As announced on Discord, we will host a community call this Wednesday!
Scope of Work
-
Spread the word, ask who will join and whether they are planning any questions. Create a post on discord, with your best guesstimate on how many that will participate. The zoom join link will be posted before 17:55 CET in the
#general
channel on discord. Whoever is closest when the clock strikes 18:10 CET will win $100 :) -
Translate questions made in Russian (both written and oral) to English. Requires proficient (spoken) English, and a willingness to show your face on camera :)
Reward Distribution
1-2: $100 each.
Grading
- @svasilenko - $100
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=2
- Chosen by JSG to participate in call for translations
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=2
- @igrex - $100
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=4
- Posted a reminder of the call in #general on Discord
- Guessed
22 people
- Guessed
- Posted a reminder of the call in #general on Discord
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=4
- @zazik - $0
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=6
- Posted a reminder of the call in #general on Discord
- Guessed
20 people
- Guessed
- Translated some questions in a survey/spreadsheet
- Posted a reminder of the call in #general on Discord
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=6
- @marinag_mary - $0
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=10
- Posted reminders of the call in #general on Discord
- Didn't guess the number of participants
- Translated some questions in a survey/spreadsheet
- Posted reminders of the call in #general on Discord
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=10
29.II-7 - Community Call - Part II
- Reward:
$1000
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2984400
- End Block:
#3023300
- Start Block:
Purpose
The Community call has been successfully held, and the raw video was uploaded here.
A little follow up work (editing, translating, etc) is needed!
Scope of Work
- Create a spreadsheet with:
- index of the question (1, 2, etc.)
- each question asked written in English
- the timestamp of when the question started, in hours, minutes, seconds, milliseconds, eg.
00:20:30,4000
- the timestamp of when the answer was finish, in hours, minutes, seconds, milliseconds, eg.
00:21:31,4100
- if two (or more) subsequent questions are linked, such as a follow up question, make a note of it.
Chit chat, off-topic, pauses, etc- in between questions should not be included, meaning the timestamp of the end of question 1, should in most cases not be the same as the timestamp of the start of question 2
Then, With the list from above, do an informal poll among the community, and find out which 3-10 questions is considered most interesting/important. Note that this doesn't (necessarily) mean the best question. The entertainment value is the most important element:
- If the answer isn't very interesting, the clip won't be either!
- If a question spurred further conversation, even if somewhat off-topic, it might still have been more interesting to watch.
- For each of the 3-10 "questions" from 1, create a "teaser" for each video. These should all be in the same style. Examples:
- 2/3-off, 2s-5s clips enticing the prospective viewer to wathc the video, edited in a "nice" way
- a concise, short "version" of the question spelled out
- soft (license free) music?
Note that the above are just suggestions - we hope someone in the community knows how to create engaging videos, and grow a base better than we do :)
(Let me know if you want the chatlog!)
-
Create a text based FAQ based on the questions that was asked. Both the question and answer needs a rewrite to make it suitable as an FAQ. This may even mean creating your question, if something interesting was said, that wasn't spurred by a direct question.
-
Create a condensed version of the video, keeping more than the just the top rated above, but removing section that seems less interesting. How much to keep is up to you!
(Let me know if you want the chatlog!) -
Create russian subtitles for the video from 2, using the
.srt
, or other "widespread" format.
Notes
For all videos, subtitles and artwork, you are free to upload yourself, but it has to be "CC0", and jsgenesis will likely re-upload.
Reward Distribution
For 1, only the first "good" submission will be rewarded.
For 2-3, only the best submission will be rewarded.
For 3, we are thinking it may be an iterative process, where we (may):
- want to combine the work of two people
- potentially request small changes/fixes
- if/when we get something that looks great, we would want that team or person create more of these (paid) in the future
- $150
- $350
- $200
- $100
- $100
(If you don't have any experience here, you'll likely be disappointed with your grading - this will be very strict)
Grading
TBD
Section III - Working Groups
Section IV - Bounties
29.IV-1 - Bounty Managers
Working Group KPIs
29.SP-1 - Storage Status
- Reward:
$150
- Fiat Pool Factor:
0.25
- Start Block:
#2984400
- End Block:
#3186000
- Start Block:
Purpose
Lately, my subjective impression is that the playing videos on the Joystream Player is slower than before. Let's get some stats!
Scope of Work
Gather as much as you can of the following data:
- What is the current size of the Content Directory as found through hydra playground
- How much storage does
ipfs
consume for the individual SPs? - How much bandwidth does
ipfs
consume for each SP per week? (Requires deducting resources for running ajoystream-node
etc.) - What are the runnning costs for each SP?
- What is the distribution of uploads received since you were hired? (For each item, the
liasion
was the one that received it) - How good is the uptime for each node?
- How many failed uploads have we seen since you were hired?
Note
Some of this information should be available through joystreamstats.
Grading
Completed during last term
29.OP-1 - Pioneer 2.0
- Reward:
$390
- Fiat Pool Factor:
0.1
- Start Block:
#2883600
- End Block:
#3186000
- Start Block:
Purpose
Now that we are finally closing in on the release launching pioneer 2.0, we want to focus on something that we've wanted to for some time. Namely giving the community both an opportunity and reason to contribute.
As we've stated many times before, we wish for the community to take charge of the platform in the future, which means they have to understand the software they're working on. Starting early, on an something that's both unfinished and that will require lots of improvements and updates sounds ideal. To make things "even better", there are both developer docs, contributor guides, and a fair amount of (good first) issues to start with!
KPI 27.OP-1 had the Lead review all the (then) open issues, and assign a dollar value for grading them. These values have been set as rewards!
Scope of Work
For each of the issues below, open a PR that gets merged. Even if the PR is merged in the end, the reward may be lower than what is stated, if:
- There are lots of requested changes
- It takes "too long" from the review, until the changes has been made.
- #1566 - $90
- #858 - $120
- [#888]((https://github.com/Joystream/pioneer/issues/888) - $60
- #1260 - $30
- #1480 - $30
- #1497 - $60
Reward Distribution
Each of the issues are graded separately. No requirement to complete all.
Grading
- @lkskrn - $300
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=5
-
1566 - PR created and merged: https://github.com/Joystream/pioneer/pull/1733 issue closed. - $90
-
858 - RP created and tested, sorting works on deployment preview, not yet merged because of some other dependency (see PR discussion): https://github.com/Joystream/pioneer/pull/1706 - $120
-
1480 - PR created and merged: https://github.com/Joystream/pioneer/pull/1734 - $30
-
1497 - PR created and merged: https://github.com/Joystream/pioneer/pull/1735 - $60
-
- https://testnet.joystream.org/#/forum/threads/740?replyIdx=5
29.OP-2 - Giza Testing
- Reward:
$25/h
- Fiat Pool Factor:
0
- Start Block:
#2984400
- End Block:
#3286800
- Start Block:
Purpose
As we have started testing of Giza, we want the Operations group to help in testing. The reward will be $25/h of testing. However, we need some continuity, and reliability in terms of the testers availability.
The Lead is free to select a subset of the group they think is most qualified. Qualifications:
- Some familiarity with using the command line (linux) and
git
(for most, not required for all) - If possible, one or more that has been a storage provider
- Basic english (for communication, documentation and instructions parsing)
- Likes to try and break things :)
We will provide linodes for the testers to ssh into.
Scope of Work
Testing will start on the 4th of November. Information will be presented then.
Grading
- @l1dev - $100
- @ilich - $100
- @kate_fm - $50
KPI 28
- KPIs:
11+3
- Total Possible Rewards:
$2375+$590
- Max Fiat Pool Difference:
$96.5
- Council Elected in Round:
30
- Council Members:
20
- KPI Length:
7 days / 100800
- Start Block/Date:
#2883600 / 26.10.21
- End Block/Date:
#2984400 / 02.11.21
- Start Block/Date:
- Deadline to Submit Summary:
#3013200 / 04.11.21
Notes
The below notes are a copypasta from the last few weeks, simply as reminders.
We're adding the new concept of having KPIs affect the fiat pool replenishment rate! As there hasn't been approved proposal to a KPI to this effect, it will work like so:
Every KPI now has a "Fiat Pool Factor", where the minimum is 0
. For this round, the maximum is 1
, but that may change.
This determines how much the fiat pool will grow or shrink depending on the grading. The reasoning behind it's weighting is two-fold:
- Important and/or urgent KPIs will get a higher number, to incentivize peer pressure and voting power behind getting it done.
- Some KPIs, although they can be important, will be set to zero as the reward doesn't always imply good/bad work has happened. A good examples is the Council Dissent.
How it works:
Suppose a KPI rewards up to $100
, and the "Fiat Pool Factor" is 1. Suppose it's the only KPI with a factor not equal to 0.
- If nothing has been done, the fiat pool replenishment shrinks by $100
- If it gets graded as partially completed, and rewarded $25, the fiat pool replenishment shrinks by $50
- It it gets graded as partially completed, and rewarded $50, the fiat pool replenishment is unchanged
- If it gets graded as partially completed, and rewarded $75, the fiat pool replenishment grows by $50
- If it gets graded as fully completed, and rewarded $100, the fiat pool replenishment grows by $100
If the factor is 0.2, simply multiple the calculated change from the example with 0.2.
This will be another way for us to "force" the Council to act on some of the KPIs that has been neglected for a while, in addition to the existing ones (changing rewards, changing the scope, improving the writing).
Note that if a KPI isn't completed in time for round x
, but gets extended to round x+1
where it's fully completed, the net change will be zero. So although there is an incentive to deliver in time, a CM/WG Lead may "redeem" themselves!
We hope this will make things more fun, and allow for a gradual increase in the fiat pool replenishment!
Grading
CMs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2194 | ilich | 265+45 | 11418354+1938965 |
2346 | anastasiiahurina | 9 | 387793 |
1541 | godshunter | 14 | 603234 |
1521 | arseniy2706 | 7 | 301617 |
644 | lkskrn | 13 | 560146 |
361 | blackmass | 5 | 215441 |
2531 | nanapa6otaet | 92 | 3964108 |
2697 | ardashoff | 69 | 2973081 |
1962 | nkhlghbl | 94 | 4050284 |
321 | freakstatic_council | 16 | 689410 |
957 | leet_joy | 3 | 129264 |
1345 | kadyrovs | 57 | 2456023 |
2 | tomato | 1 | 43088 |
2137 | kalpakci | 0 | 0 |
2329 | laura | 586 | 25249643 |
319 | sparky | 0 | 0 |
1048 | igrex | 187 | 8057480 |
2276 | joydiesel | 5 | 215441 |
582 | hayabusa | 35 | 1508084 |
2154 | marat_mu | 283 | 12193940 |
SUM | 20 | 1941+45 | 75016431+1938965 |
WGs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2098 | 0x2bc | 150 | 6463219 |
515 | l1dev | 50 | 2154406 |
Paid out on blocks 3,063,903 and 3,063,904.
Section I - Council work, Proposals and Bureaucracy
28.I-1 - Proposal Clearance
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2883600
- End Block:
#2984400
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
2194 | ilich | 24 | 97 | 15 |
2346 | anastasiiahurina | 14 | 58 | 9 |
1541 | godshunter | 23 | 89 | 14 |
1521 | arseniy2706 | 12 | 45 | 7 |
644 | lkskrn | 20 | 84 | 13 |
361 | blackmass | 8 | 32 | 5 |
2531 | nanapa6otaet | 23 | 81 | 13 |
2697 | ardashoff | 15 | 59 | 9 |
1962 | nkhlghbl | 22 | 87 | 14 |
321 | freakstatic_council | 27 | 100 | 16 |
957 | leet_joy | 4 | 16 | 3 |
1345 | kadyrovs | 22 | 82 | 13 |
2 | tomato | 1 | 4 | 1 |
2137 | kalpakci | 0 | 0 | 0 |
2329 | laura | 23 | 103 | 16 |
319 | sparky | 0 | 0 | 0 |
1048 | igrex | 25 | 111 | 18 |
2276 | joydiesel | 8 | 31 | 5 |
582 | hayabusa | 26 | 100 | 16 |
2154 | marat_mu | 21 | 85 | 13 |
SUM | 20 | 318 | 1264 | 200 |
28.I-2 - Council Secretary
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2883600
- End Block:
#2984400
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
Note that the SoW is somewhat outdated.
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
28.I-3 - Deputy Council Secretary
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2890800
- End Block:
#2977200
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
Note that the SoW is somewhat outdated.
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
28.I-4 - Council Minutes
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Term end + 1 day
- Start Block:
#2984400
- End Block:
#3099600
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2494800) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
28.I-5 - KPI Manager
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2890800
- End Block:
#2977200
- Start Block:
Purpose
Keeping track of the KPIs is no easy task. Parts of this task has often been handled by the Council Secretary, especially @tomato
, but it might have gotten a little too much in addition to other Secretary tasks.
The idea for this KPI can seen in proposals 686and 689.
Scope of Work
- As soon as a new set of KPIs are released:
- Review them, and look for errors, unclear sections and similar.
- Ask the Council Members which KPIs they want, and create a (pinned) post on Discord (#kpis), where everyone can see who is planning to do what. Note that although it's better for everyone if CMs co-operate, and don't step on each others toes, there is no rule against multiple CMs trying to work on the same KPI.
- Update the post as CMs announce what they want to do.
- Frequently check in on them and their progress (preferably not in DMs, so that discussion is public), and assist them as best you can. Each CM should ask the KPI Manager before any questions are brought on to the Council Secretary or
@bwhm#6514
. - ~24h before the end of the Term, post the progress for each KPI on discord.
Note
This includes WG KPIs. If no one claims this KPI, the work must be done by the Council Secretary or Deputy.
Reward Distribution
No weighting will apply here, as doing only one or two of the above tasks would make the rest of the work obsolete. The grading for this KPI will in part be based on the feedback from the other CMs.
Grading
- @svasilenko (assigned by @igrex) - $150
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=2
- As the "designated" CM, igrex gets the reward.
28.I-6 - Council Insight
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2890800
- End Block:
#2977200
- Start Block:
Purpose
As much of what we were trying to achieve with the "Council Dissent" KPI was already achieved, it got discontinued. With the new direction (TBA) we want to take the governance/testnet incentives/KPIs, it seems important to start rewarding the main responsibilities of the Council - creating, voting and discussing proposals. Simply clicking on one of the four options is easy. Making the "right" decision, and influencing your fellow councilors to do the same is not!
Scope of Work
- Simply share your insight and knowledge with the platform! Each week, every CM can present up to five "posts" made in a discussion on-chain. This means:
- Proposal texts created
- Replies to a proposal
- Forum posts or threads
The point here is to not limit it to dissent, meaning any question, comment or statement may be evaluated.
Reward Distribution
- Individual CMs are capped at $100 each
- The whole KPI is capped at $500
Grading
- @kadyrovs - $25
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=3
- https://testnet.joystream.org/#/proposals/753
- Highlighted a lack of information and the absence of discussion prior to the proposal's creation - $25
- https://testnet.joystream.org/#/proposals/753
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=3
- @laura - $70
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=8
- The first link is a Discord link. This KPI only rewards on-chain (forum posts/threads & proposals).
- https://testnet.joystream.org/#/proposals/760
- Valuable comment regarding the lack of information included in the spending proposal. - $40
- https://testnet.joystream.org/#/proposals/753
- Raises good points/questions. - $30
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=8
- @ilich - $45
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=10
- https://testnet.joystream.org/#/forum/threads/717?replyIdx=3
- Good suggestion/thought on an alternative path for the curator group's budget - $40
- https://testnet.joystream.org/#/proposals/754
- Highlighted minor mistake with token quantity - $5
- https://testnet.joystream.org/#/forum/threads/717?replyIdx=3
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=10
- @marat_mu - $70
- https://testnet.joystream.org/#/forum/threads/726?page=2&replyIdx=11
- https://testnet.joystream.org/#/proposals/758
- Great feedback - $40
- https://pioneer.joystreamstats.live/#/forum/threads/721
- Great feedback - $30
- https://testnet.joystream.org/#/proposals/758
- https://testnet.joystream.org/#/forum/threads/726?page=2&replyIdx=11
- @nkhlghbl - $80
- https://testnet.joystream.org/#/forum/threads/726?page=2&replyIdx=13
- https://testnet.joystream.org/#/forum/threads/720?page=1&replyIdx=10
- Limited feedback - $5
- https://testnet.joystream.org/#/proposals/753
- Highlighted that the propsoal and links included did not include a table of grading according to the rules: $40
- https://testnet.joystream.org/#/proposals/754
- Provided insight on the ways in which BM can pay rewards to participants - $35
- https://testnet.joystream.org/#/forum/threads/720?page=1&replyIdx=10
- https://testnet.joystream.org/#/forum/threads/726?page=2&replyIdx=13
Section II - Community Management
28.II-1 - Discord & Telegram Channel Management
- Reward:
$75
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2883600
- End Block:
#2984400
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @kadyrovs - $18.75
- @nanapa6otaet - $18.75
- @igrex - $18.75
- @hayabusa - $18.75
28.II-2 - Create new KPIs
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2890800
- End Block:
#2977200
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- @kadyrovs
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=3
- This is already part of the Council Secretary scope, although not really clear from the current SOW. We're also a bit hesitant to add even more "recurring" roles to the Council.
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=3
28.II-3 - Council Term Summary Videos
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Term end + 2 days
- Start Block:
#2984400
- End Block:
#3114000
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
Updated 30.10
We have seen some decent first iterations, but now is the time to see if we can get some improvements!
The problems we have seen thus far:
- Some of the English videos (especially the first few times) has been "text to speech". This makes it far less personal, and interesting.
- The visual of the videos have, in all cases, been screenshots and screen recordings of pioneer, discord, github, etc. This makes it very tempting to skip ahead.
- All videos are made by a single member
Scope of Work
-
Team up with one or more community member, and make the video more of a panel discussion. If you wish to stay anonymous, that is ok, but consider concealing your face some other way than disabled camera. As far as we can tell, most of the community has no/little problems understanding English. For that reason, and for grading purposes, the video must be recorded in English.
-
Instead of a strict list of topics, take some notes on what has happened (doesn't have to be this week), and discuss it. Feel free to request topics from the Community!
-
After publishing the video, get feedback by the community, and for the next video, discuss it on air.
Note
After a couple of iterations, we would consider sponsoring equipment, and other costs associated with the production. Examples:
- Improved cameras/microphones
- Greenscreens
- Introduction animations
- etc.
Note that you have to ask in advance!
Reward Distribution
More than one team can apply, and more than one team can earn the full amount.
Weighting:
- $300
Grading
- @laura - $200
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=8
- Great presentation and graphics.
- Good to see inclusion of clips from other council members.
- A great amount of included information.
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=8
- @marat_mu - $200
- https://testnet.joystream.org/#/forum/threads/726?page=2&replyIdx=11 (with @swasilenko)
- Good to see a "dual cast", and nice background :)
- Great range of topics covered, with some interesting insight and discussion.
- Still a little too many screenshot for my liking, but I understand it's hard to do it in other ways!
- https://testnet.joystream.org/#/forum/threads/726?page=2&replyIdx=11 (with @swasilenko)
28.II-4 - Community Feedback - Part 1
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2883600
- End Block:
#2984400
- Start Block:
Not clear if this was completed, so extended...
Purpose
As we are closing on Giza, and further towards mainnet, it seems like a good time to get some feedback from the Community. There are a couple of ways to go about this, so it will be divided in to two tasks. This may be a recurring KPI, but let's see how the first attemot goes first!
The idea for this KPI can seen in this proposal.
Scope of Work
-
Conduct a survey of as many community members as possible in order to identify what they consider to be the most pressing problems and issues at the moment. Make sure the respondents adds some data, links or explanation, and not "just" something like "pioneer is slow". Once the survey is ready, ping
@bwhm#6514
on discord, for a quick review, then leave it open for at least 1 full week. (Part 2 will deal with the rest.) -
Not everyone will be willing to participate in surveys, but it is assumed that there are similar concerns raised on the forum, in proposals, on discord and on telegram. Create an issue in the community repo, and add these as you see them appear.
Reward
Weighting:
- $75
- $75
Grading
- @adrashoff - $60
- @nanapa6otaet - $60
- Work submitted is the same, grading split.
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=4
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=5
- https://github.com/ZAZIK3/community-repo/blob/e9989c9865ce78e47d20faafa0569335ebe34e52/council/kpi/Community_Feedback_Part_1.md
- https://testnet.joystream.org/#/proposals/758
- Participants: @nanapa6otaet, @ardashoff, @ZAZIK
- Grading:
- The report includes some nice graphics and information, and the Google Spreadsheet includes some useful feedback from the community that went beyond typical surveys which is great to see.
- SOW 2 was not properly covered as no issue was created in the community repo as required. However, the spreadsheet included a wide enough range of opinions that this will be partially ignored.
- Work submitted is the same, grading split.
Section III - Working Groups
Section IV - Bounties
28.IV-1 - Bounty Managers
- Reward:
$0
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2883600
- End Block:
#2984400
- Start Block:
Purpose
Status unclear - HOLD.
Working Group KPIs
28.SP-1 - Storage Status
- Reward:
$150
- Fiat Pool Factor:
0.25
- Start Block:
#2883600
- End Block:
#3085200
- Start Block:
Not clear if this was completed, so extended...
Purpose
Lately, my subjective impression is that the playing videos on the Joystream Player is slower than before. Let's get some stats!
Scope of Work
Gather as much as you can of the following data:
- What is the current size of the Content Directory as found through hydra playground
- How much storage does
ipfs
consume for the individual SPs? - How much bandwidth does
ipfs
consume for each SP per week? (Requires deducting resources for running ajoystream-node
etc.) - What are the runnning costs for each SP?
- What is the distribution of uploads received since you were hired? (For each item, the
liasion
was the one that received it) - How good is the uptime for each node?
- How many failed uploads have we seen since you were hired?
Note
Some of this information should be available through joystreamstats.
Grading
- @0x2bc - $150
- https://testnet.joystream.org/#/forum/threads/726?page=2&replyIdx=12
- https://docs.google.com/document/d/1DA68jeQbcPuMEBJG-IC4od5cTVaa2VglUm2V7tXBAQc/edit?usp=sharing
- Well presented, clearly answers each part of the KPI and the information is very interesting to see. Brilliant work.
28.OP-1 - Pioneer 2.0
- Reward:
$390
- Fiat Pool Factor:
0.1
- Start Block:
#2883600
- End Block:
#3186000
- Start Block:
Purpose
Now that we are finally closing in on the release launching pioneer 2.0, we want to focus on something that we've wanted to for some time. Namely giving the community both an opportunity and reason to contribute.
As we've stated many times before, we wish for the community to take charge of the platform in the future, which means they have to understand the software they're working on. Starting early, on an something that's both unfinished and that will require lots of improvements and updates sounds ideal. To make things "even better", there are both developer docs, contributor guides, and a fair amount of (good first) issues to start with!
KPI 27.OP-1 had the Lead review all the (then) open issues, and assign a dollar value for grading them. These values have been set as rewards!
Scope of Work
For each of the issues below, open a PR that gets merged. Even if the PR is merged in the end, the reward may be lower than what is stated, if:
- There are lots of requested changes
- It takes "too long" from the review, until the changes has been made.
- #1566 - $90
- #858 - $120
- [#888]((https://github.com/Joystream/pioneer/issues/888) - $60
- #1260 - $30
- #1480 - $30
- #1497 - $60
Reward Distribution
Each of the issues are graded separately. No requirement to complete all.
Grading
- @lkskrn
- https://testnet.joystream.org/#/forum/threads/726?replyIdx=7
- (#858) https://github.com/Joystream/pioneer/pull/1706
- PR issue created but not merged yet--grading deferred.
28.OP-2 - Giza Testing Schedule
- Reward:
$50
- Fiat Pool Factor:
0
- Start Block:
#2883600
- End Block:
#3027600
- Start Block:
Purpose
As we have started testing of Giza, we want the Operations group to help in testing. The reward will be $25/h of testing. However, we need some continuity, and reliability in terms of the testers availability.
The Lead is free to select a subset of the group they think is most qualified. Qualifications:
- Some familiarity with using the command line (linux) and
git
(for most, not required for all) - If possible, one or more that has been a storage provider
- Basic english (for communication, documentation and instructions parsing)
- Likes to try and break things :)
We will provide linodes for the testers to ssh into.
Scope of Work
Ask the members of the Operations if they are interested, and provide a rough timetable of their availability starting from 29.10 - 12.11.
Note that the testing will most likely occur mostly from 01.11-05.11, between 10:00-20:00 CET (not CEST).
Create a table, showing their availability for the days in question, and a rough summary of the qualifications.
Grading
- @l1dev - $50
- Table created and presented in #kpis on Discord: https://discord.com/channels/811216481340751934/812343783504085062/904750161102794772
- Would have been useful to list the specific qualifications of each person, but this was not asked for in the KPI.
KPI 27
- KPIs:
13+3
- Total Possible Rewards:
$3275+$850
- Max Fiat Pool Difference:
$592.5
- Council Elected in Round:
29
- Council Members:
16
- KPI Length:
7 days / 100800
- Start Block/Date:
#2782800 / 18.10.21
- End Block/Date:
#2883600 / 27.10.21
- Start Block/Date:
- Deadline to Submit Summary:
#2912400 / 29.10.21
Notes
(Notes are the same as last week ones!)
We're adding the new concept of having KPIs affect the fiat pool replenishment rate! As there hasn't been approved proposal to a KPI to this effect, it will work like so:
Every KPI now has a "Fiat Pool Factor", where the minimum is 0
. For this round, the maximum is 1
, but that may change.
This determines how much the fiat pool will grow or shrink depending on the grading. The reasoning behind it's weighting is two-fold:
- Important and/or urgent KPIs will get a higher number, to incentivize peer pressure and voting power behind getting it done.
- Some KPIs, although they can be important, will be set to zero as the reward doesn't always imply good/bad work has happened. A good examples is the Council Dissent.
How it works:
Suppose a KPI rewards up to $100
, and the "Fiat Pool Factor" is 1. Suppose it's the only KPI with a factor not equal to 0.
- If nothing has been done, the fiat pool replenishment shrinks by $100
- If it gets graded as partially completed, and rewarded $25, the fiat pool replenishment shrinks by $50
- It it gets graded as partially completed, and rewarded $50, the fiat pool replenishment is unchanged
- If it gets graded as partially completed, and rewarded $75, the fiat pool replenishment grows by $50
- If it gets graded as fully completed, and rewarded $100, the fiat pool replenishment grows by $100
If the factor is 0.2, simply multiple the calculated change from the example with 0.2.
This will be another way for us to "force" the Council to act on some of the KPIs that has been neglected for a while, in addition to the existing ones (changing rewards, changing the scope, improving the writing).
Note that if a KPI isn't completed in time for round x
, but gets extended to round x+1
where it's fully completed, the net change will be zero. So although there is an incentive to deliver in time, a CM/WG Lead may "redeem" themselves!
We hope this will make things more fun, and allow for a gradual increase in the fiat pool replenishment!
CMs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2194 | ilich | 265 | 10283545 |
1521 | arseniy2706 | 33 | 1280592 |
644 | lkskrn | 361 | 14008904 |
361 | blackmass | 10 | 388058 |
2141 | joyval | 1 | 38806 |
605 | okayko | 5 | 194029 |
2098 | 0x2bc | 6 | 232835 |
635 | xfactorus | 14 | 543282 |
2096 | svasilenko | 214 | 8304447 |
2531 | nanapa6otaet | 39 | 1513427 |
321 | freakstatic_council | 11 | 426864 |
2462 | chiffah | 2 | 77612 |
2 | tomato | 1 | 38806 |
2137 | kalpakci | 3 | 116417 |
2329 | laura | 808 | 31355110 |
790 | ururu | 15 | 582087 |
1048 | igrex | 262 | 10167127 |
2682 | alenleps | 66 | 2561185 |
2182 | isonar | 178 | 6907438 |
2154 | marat_mu | 360 | 13970098 |
SUM | 20 | 2804 | 102990669 |
WGs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2329 | laura | 150 | 5820874 |
Payous done on blocks #2,949,530 and 2,949,531.
Section I - Council work, Proposals and Bureaucracy
27.I-1 - Proposal Clearance
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2782800
- End Block:
#2883600
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
2194 | ilich | 25 | 100 | 15 |
1521 | arseniy2706 | 15 | 51 | 8 |
644 | lkskrn | 22 | 74 | 11 |
361 | blackmass | 19 | 64 | 10 |
2141 | joyval | 1 | 4 | 1 |
605 | okayko | 9 | 33 | 5 |
2098 | 0x2bc | 10 | 37 | 6 |
635 | xfactorus | 28 | 94 | 14 |
2096 | svasilenko | 28 | 93 | 14 |
2531 | nanapa6otaet | 26 | 95 | 14 |
321 | freakstatic_council | 21 | 75 | 11 |
2462 | chiffah | 4 | 15 | 2 |
2 | tomato | 2 | 8 | 1 |
2137 | kalpakci | 7 | 22 | 3 |
2329 | laura | 29 | 116 | 18 |
790 | ururu | 30 | 101 | 15 |
1048 | igrex | 30 | 111 | 17 |
2682 | alenleps | 31 | 104 | 16 |
2182 | isonar | 15 | 54 | 8 |
2154 | marat_mu | 18 | 66 | 10 |
SUM | 20 | 370 | 1317 | 200 |
27.I-2 - Council Secretary
- Reward:
$300
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2782800
- End Block:
#2883600
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
27.I-3 - Deputy Council Secretary
- Reward:
$150
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2790000
- End Block:
#2876400
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
27.I-4 - Council Minutes
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Term end + 1 day
- Start Block:
#2883600
- End Block:
#2998800
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2494800) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
27.I-5 - KPI Presentation
- Reward:
$500
- Fiat Pool Factor:
0.5
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2790000
- End Block:
#2876400
- Start Block:
Purpose
There's been plenty of feedback on the rather crude way the KPI's are presented, and how it negatively impacts several aspects of the KPIs.
- It's very hard to read and parse, scaring people away from even trying
- There are often errors in the ToC and formatting
- It's very hard to read and parse the results
- The page is infinite
I'm sure I could go on, but let's instead focus on how to improve it.
The first key part, which will be addressed separately, is to store the data in a json or yaml format, making so that it can be presented in a flexible way.
The second is to start thinking about the design. It's not if this is a task the Council is currently able to attempt, as design is hard. What can be done however, is to write a design brief. In order to do that, we need to establish what the page must and should contain.
Note that what we're doing here, isn't solely being able to read a single, ungraded KPI, but create (a) page(s) where all the KPI information can be kept in a functional way.
Note
Extended from last Term. Not clear exactly what is finished.
Scope of Work.
- List "all of the things" such a page should contain. This can include, but is not limited to:
- The current KPIs
- Full (or at least covering a significant part of the) KPI history, with results and stats.
- Links to all the work that was done
- Links to all the old term summaries
- Stats on how many KPIs were "done" per round
- Stats on how much was earned for each KPI
- Stats on how many KPIs each member has done, how much they've earned, and how many councils they've been a part
- etc.
- Not clear if these belongs here, and much less clear if it should be prioritized early, but:
- Should this "page" also track the token value and inflation over time?
- Should it include some way to "claim" you want to work on a task, and other "KPI manager" tools?
- What else?
Use what you find (as a group, this likely requires input from several sources) in one, to either:
-
Write a design brief, covering at least current KPIs.
-
Create a wireframe of (at least) the current KPIs. We have been using balsamiq for these things, and will re-imburse anyone giving it a go. If you prefer other tools, preferably open source, that would be even better!
Reward Distribution
Grading will be shared across the contributors for 1, individual for 2 and 3.
Weighting:
- 200
- 100
- 200
Grading
- @isonar - $170
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=4 (SOW 3)
- This design does a good job of simplifying the information shown, in particular the dropdown box for each KPI round looks like a good idea. It is a little unclear how the unassigned/graded parts would work and although a link to an admin control panel was provided (which was beyond the scope of this KPI) I was unable to get it working.
- The only potential negative is that maybe the two column design is a little confusing in terms of readability. It would also be nice to see the headings for each set of KPIs (i.e.
Section II - Community Management
) which are collapsible. - It is also a little unclear from the provided screenshot what is shown when using the
View Details
button. It is assumed that the full description is shown. - The design also doesn't include dates for each KPI round, nor deadline information. This information should be included for both the current KPIs as well as historical KPIs.
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=4 (SOW 3)
- @svasilenko - $0
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=6
- This was already submitted and graded in the previous council term.
27.I-6 - KPI Manager
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2790000
- End Block:
#2876400
- Start Block:
Purpose
Keeping track of the KPIs is no easy task. Parts of this task has often been handled by the Council Secretary, especially @tomato
, but it might have gotten a little too much in addition to other Secretary tasks.
The idea for this KPI can seen in proposals 686and 689.
Scope of Work
- As soon as a new set of KPIs are released:
- Review them, and look for errors, unclear sections and similar.
- Ask the Council Members which KPIs they want, and create a (pinned) post on Discord (#kpis), where everyone can see who is planning to do what. Note that although it's better for everyone if CMs co-operate, and don't step on each others toes, there is no rule against multiple CMs trying to work on the same KPI.
- Update the post as CMs announce what they want to do.
- Frequently check in on them and their progress (preferably not in DMs, so that discussion is public), and assist them as best you can. Each CM should ask the KPI Manager before any questions are brought on to the Council Secretary or
@bwhm#6514
. - ~24h before the end of the Term, post the progress for each KPI on discord.
Note
This includes WG KPIs. If no one claims this KPI, the work must be done by the Council Secretary or Deputy.
Reward Distribution
No weighting will apply here, as doing only one or two of the above tasks would make the rest of the work obsolete. The grading for this KPI will in part be based on the feedback from the other CMs.
Grading
- @svasilenko - $150
Section II - Community Management
27.II-1 - Discord & Telegram Channel Management
- Reward:
$75
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2782800
- End Block:
#2883600
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @nanapa60taet - $25
- @igrex - $25
- @arseniy2706 - $25
27.II-2 - Create new KPIs
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2790000
- End Block:
#2876400
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- No work submitted, no rewards.
27.II-3 - Minting and Burning - Part 2
- Reward:
$400
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2790000
- End Block:
#2876400
- Start Block:
Purpose
See KPI 25.II-3 for part 1, and grading!
Although lots were solved for this KPI, there are still some issues to sort out! Note that I haven't "finely" read the code, so some of the issues below may be explained from that.
Scope of Work
- Missing from SoW 1 from Part 1. An exhaustive list of all the things which CAN impact the issuance. This should include:
- A list of all events that may affect issuance, and how to find them from the chain state. Note that you sometimes need to parse the corresponding extrinsic to find the number.
- A list of non-events that may impact issuance, and how to figure it out using the chain state.
This should include both a written explaination, and a snippet of code.
- Missing from SoW 3 from Part 1. There were 49 blocks that included an unexplained delta between the expected issuance and the actual issuance. These can be found here. Go through each block (many appear similar, so solve one, solve many), and try and figure out what the cause of the discrepancy was. Once solved, add an explaination and "fix" the code so that future runs will not have this error. Some hints:
- When an exchange of tJOY is done, the tokens sent to
5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu
will be sent back to the same account, with the full amount as a "tip". This gets burned. All extrinsic MAY include a tip. Examples in block 746873 and 860789.- It appears the script gets the "burning" numbers from the status server. This is not a reliable source, and should be replaced by the aforementioned
tip
check.
- It appears the script gets the "burning" numbers from the status server. This is not a reliable source, and should be replaced by the aforementioned
- When a member is registered through the player onboarding, the member is added by a screener, and no fee is paid. Examples in blocks 776192, 1199575 and 1262558
- If a
mint
is empty, tokens that "should" have been minted, will not get minted. This can affect both proposals, and worker rewards. - When someone is hired to the operations group, the staked tokens are burned due to a bug in the runtime. This will get corrected, but is still the case.
-
Once updated, do a new "run", and collect all the
warn
blocks still remaining. Hypothesize over what the source of error can be for each of them. -
If there is anything in the code where you have simply corrected the error through "guessing", or fetched it from another source than the state, explain what they are, and where in the code it is. Examples:
- Is the amount burned when a member is registered a constant you have added (100), or taken from the chain constants?
- Is the amount minted when the screener adds a member a constant from the chain, or "manual"?
- Update the PR, so that it:
- contains all the newest code, but moved to a new root directory, called
joystream-api
. Make sure it builds when cloning the repo - all the text and information can be kept where they are
- contains all the
warn
blocks - instead of leaving the entire log in there, upload it as a "gist", and add a link to it
- contains all the
Reward Distribution
- $150
- $100
- $75
- $50
- $25
Grading
- @lkskrn - $350
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=8
- Comments for SoW 1
- Some things are missing here, but probably not occurred in practice
- proposal slashed
- workers slashed
- validator slashed
- wrt.
tip
, every extrinsic can be made with it tip, so although these may be the instances where they have been "seen", a general explanation should be rephrased - wrt. worker rewards, all checking the value of a mint may be easier, if not (always) as precise.
- Some things are missing here, but probably not occurred in practice
- Comments for SoW 1
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=8
27.II-4 - Council Term Summary Videos
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Term end + 2 days
- Start Block:
#2883600
- End Block:
#3013200
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
Scope of Work
- Record a video (in English) presenting the "highlights" of the Term, from a community point of view. The video should be recorded after the following information is secured:
- The Council Minutes
- A KPI status update, made by the Council Secretary. Example
- As many of the Term Summaries as possible.
This means the video should be recorded approximately two days after the end of the Term.
Some potential topics:
- Who were on the Council
- Fiat Pool and exchange rate changes
- Any changes to the workers or Leads?
- Did something fun happen?
-
We imagine the format will change over time, and with feedback, but in order to bootstrap it, someone has to give it a go. After you made your video, create a forum thread for feedback/discussion. Then create a text proposal with the format you opted for, and a link to the forum post.
-
Have the video re-recorded in Russian, either by yourself, or someone else.
Note
Ideally, this should be a running project (ie. no longer be a KPI) once it "settles". In the meantime, if you are fluent in both languages you can make both. If not, collaborate with someone that masters the "other" language.
Reward Distribution
Individual grading. If more than one CM creates (a) video(s), the reward is not capped. So multiple people can all earn $400 each.
Weighting:
- $300
- Soft cap, an extremely good video may earn even more.
- A 1 min short where someone is reading the Council Minutes will not earn anything.
- $50
- $150
Grading
- For all:
- Great to hear real voices this time :)
- All videos mainly show only screenshots/recordings of proposals etc. As mentioned last week, this will be "punished" quite a bit.
- @igrex
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=2&replyIdx=14
- SOW 1: $120
- Covered a good range of topics including specific proposals (including those that failed). Although it did not cover any of the term summaries. It may have been a little shorter than ideal.
- SOW 2: $0 (no proposal provided)
- SOW 3: $100
- SOW 1: $120
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=2&replyIdx=14
- @laura
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=9
- SOW 1: $150
- Covered a great range of topics. Nice visuals/illustrations. Could've included more failed proposals and issues.
- SOW 2: $0 (no proposal provided)
- SOW 3: $100
- SOW 1: $150
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=9
- @marat_mu
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=10
- SOW 1: $150
- Nice coverage of issues, good to see some coverage of the Working Groups, budget . Minor audio issues (a bit of popping in the microphone)
- SOW 2: $0 (proposal included, but it did not specify the format opted for, so it does not cover this SOW)
- SOW 3: $100
- SOW 1: $150
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=10
27.II-5 - Community Feedback - Part 1
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2782800
- End Block:
#2883600
- Start Block:
Purpose
As we are closing on Giza, and further towards mainnet, it seems like a good time to get some feedback from the Community. There are a couple of ways to go about this, so it will be divided in to two tasks. This may be a recurring KPI, but let's see how the first attemot goes first!
The idea for this KPI can seen in this proposal.
Scope of Work
-
Conduct a survey of as many community members as possible in order to identify what they consider to be the most pressing problems and issues at the moment. Make sure the respondents adds some data, links or explanation, and not "just" something like "pioneer is slow". Once the survey is ready, ping
@bwhm#6514
on discord, for a quick review, then leave it open for at least 1 full week. (Part 2 will deal with the rest.) -
Not everyone will be willing to participate in surveys, but it is assumed that there are similar concerns raised on the forum, in proposals, on discord and on telegram. Create an issue in the community repo, and add these as you see them appear.
Reward
Weighting:
- $75
- $75
Grading
- @alenleps - $50
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=2&replyIdx=15
- No SoW 2, and Russian only
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=2&replyIdx=15
Section III - Working Groups
27.III-1 - Follow up the Storage Working Group
- Reward:
$100
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2790000
- End Block:
#2876400
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
There has been little follow up of this WG lately - perhaps all the way back since a new Lead was hired.
Scope of Work
- Has the Lead submitted reports? If yes:
- Are they providing helpful insight to the status?
- Do they include any stats, from
helios
or otherwise?
- How many workers have they hired or fired since the Lead was hired? What is the current spending of the WG, and what was it when they started?
- Assist the Lead in their WG KPI for the Term.
Reward Distribution
Weighting:
- $50
- $50
- $50
Grading
- @laura - $90
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=9
- SOW 1: $10/$50
- Did not include a summary on whether the reports include enough information/statistics. Although it states there is "useful status information" more detail is necessary.
- SOW 2: $30/$50
- Partially covered what was required by the SOW, however it did not include actual spending information and only broad budget information. Actual spending information should include the weekly mint usage by the working group.
- SOW 3: $50/50
- SOW 1: $10/$50
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=9
Section IV - Bounties
27.IV-1 - Bounty Managers
- Reward:
$150
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2782800
- End Block:
#2883600
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets.
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Scope of Work
- Review the Status of all Open Bounties, as they appear here.
- What is the progress?
- How many have a Bounty Manager, how many do not?
- How many were created by JSG?
- How much has been paid out in the last month?
- Check the issues community repo, and see how many are Bounties are either Drafts, or simply not (yet) published to the bounty-json.
- How many are created by the community?
- What is missing for these to go live?
- If they are created by Jsg, and not yet live, ensure they do!
Reward Distribution
Weighting:
- $50
- $50
- $50
Grading
- @svasilenko
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=6
- SOW 1: $50
- SOW 2: $0
- SOW 3: $0
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=6
- @marat_mu
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=10
- SOW 1: $0
- SOW 2: $50
- SOW 3: $50
- https://pioneer.joystreamstats.live/#/proposals/745
- Created a proposal to close a bounty, which while not covered specifically by the SOW is ensuring the status of bounties is updated/maintained.
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=10
Working Group KPIs
27.CC-1 - Free Editing Tools
- Reward:
$500
- Fiat Pool Factor:
0.2
- Start Block:
#2782800
- End Block:
#2984400
- Start Block:
Purpose
The Curators will sometimes need to be able to edit videos. For example in order to create previews/teasers. Although it's doubtful the best tools are available for free, there may go some that are good enough!
Scope of Work
Research video editing software that has (some) the following functionalities, in order of priority:
A) Cut and splice videos
B) Add still images
C) Add/replace audio tracks (for specific frames only)
D) Transcoding (change the video format, without negatively affecting the audio/video quality)
For each of the Operative System below, test the default software, and search for the "top" recommended free alternatives, and report back:
- If possible (A-D)
- Ease of use
- Quality of end product
- Precision (eg. can you cut from specific frame, or by second?)
- What file formats are supported
- In browser tools
- Windows
- MacOS
- Linux (ubuntu)
Reward Distribution
Unlike most WG KPIs, you do not have to submit all at once in order to be graded. The same person does not have to do them all.
Weighting:
1: $200
2-3: Depends on which OS is most used by the current Curator group.
- The most used OS: $150
- The second most used OS: $100
- The least used OS: $50
Grading
- @laura - $150
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=9
- @igrex ( https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=7)
- SOW 1: $75
- Includes some promising looking browser-based video editors. Did not include links.
- It does not appear that any of the software was tested as required by the KPI. The report information only includes lists of formats, but is not clear on whether these formats can be ingested by the software or exported.
- SOW 2-3: $75
- Did not identify which OS is most commonly used by curators.
- Included some powerful editors that are free.
- Included tools which are products that require payment, which is not within the scope of the KPI.
- It does not appear that any of the software was tested as required by the KPI. The report information only includes lists of formats, but is not clear on whether these formats can be ingested by the software or exported.
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=9
27.SP-1 - Storage Status
- Reward:
$150
- Fiat Pool Factor:
0.25
- Start Block:
#2782800
- End Block:
#2984400
- Start Block:
Purpose
Lately, my subjective impression is that the playing videos on the Joystream Player is slower than before. Let's get some stats!
Scope of Work
Gather as much as you can of the following data:
- What is the current size of the Content Directory as found through hydra playground
- How much storage does
ipfs
consume for the individual SPs? - How much bandwidth does
ipfs
consume for each SP per week? (Requires deducting resources for running ajoystream-node
etc.) - What are the runnning costs for each SP?
- What is the distribution of uploads received since you were hired? (For each item, the
liasion
was the one that received it) - How good is the uptime for each node?
- How many failed uploads have we seen since you were hired?
Note
Some of this information should be available through joystreamstats.
Grading
- No work submitted, no rewards.
27.OP-1 - Pioneer 2.0
- Reward:
$400
- Fiat Pool Factor:
0.25
- Start Block:
#2782800
- End Block:
#2984400
- Start Block:
Now that we are finally closing in on the release launching pioneer 2.0, we want to focus on something that we've wanted to for some time. Namely giving the community both an opportunity and reason to contribute.
As we've stated many times before, we wish for the community to take charge of the platform in the future, which means they have to understand the software they're working on. Starting early, on an something that's both unfinished and that will require lots of improvements and updates sounds ideal. To make things "even better", there are both developer docs, contributor guides, and a fair amount of (good first) issues to start with!
Scope of Work
- Find your way in to the pioneer repo, try out the build, and play around a bit.
- Read through the aforementioned contribution guidelines and developer docs. If they're helpful and all you need, great! If not, make an issue with your feedback.
- Review the "good first issue"(s), and estimate the time needed to solve each of them, assuming you are somewhat comfortable with the stack, but no knowledge of codebase. If anything is unclear in any of the issues, ask kindly for clarification.
- Provide feedback on how these issues would best be presented to the community. By that, I mean:
- Should it be separate bounties for all the
n
issues? - Should there be
n-k
bounties for thesen
issues? - Should they instead be KPIs, or simply general tasks for (one or more of) the operations group(s) to tackle?
- Other?
Present your findinds not through an issue in the pioneer repo this time, but rather in the community repo.
Grading
- @isonar - $0
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=3
- The actual "work" here was done last week, and as this didn't really add anything, it gets nothing.
- https://pioneer.joystreamstats.live/#/forum/threads/707?page=1&replyIdx=3
KPI 26
- KPIs:
10+3
- Total Possible Rewards:
$2825+$900
- Max Fiat Pool Difference:
$1035
- Council Elected in Round:
28
- Council Members:
16
- KPI Length:
7 days / 100800
- Start Block/Date:
#2696400 / 12.10.21
- End Block/Date:
#2797200 / 19.10.21
- Start Block/Date:
- Deadline to Submit Summary:
#2826000 / 21.10.21
Notes
(Notes are the same as last week ones!)
We're adding the new concept of having KPIs affect the fiat pool replenishment rate! As there hasn't been approved proposal to a KPI to this effect, it will work like so:
Every KPI now has a "Fiat Pool Factor", where the minimum is 0
. For this round, the maximum is 1
, but that may change.
This determines how much the fiat pool will grow or shrink depending on the grading. The reasoning behind it's weighting is two-fold:
- Important and/or urgent KPIs will get a higher number, to incentivize peer pressure and voting power behind getting it done.
- Some KPIs, although they can be important, will be set to zero as the reward doesn't always imply good/bad work has happened. A good examples is the Council Dissent.
How it works:
Suppose a KPI rewards up to $100
, and the "Fiat Pool Factor" is 1. Suppose it's the only KPI with a factor not equal to 0.
- If nothing has been done, the fiat pool replenishment shrinks by $100
- If it gets graded as partially completed, and rewarded $25, the fiat pool replenishment shrinks by $50
- It it gets graded as partially completed, and rewarded $50, the fiat pool replenishment is unchanged
- If it gets graded as partially completed, and rewarded $75, the fiat pool replenishment grows by $50
- If it gets graded as fully completed, and rewarded $100, the fiat pool replenishment grows by $100
If the factor is 0.2, simply multiple the calculated change from the example with 0.2.
This will be another way for us to "force" the Council to act on some of the KPIs that has been neglected for a while, in addition to the existing ones (changing rewards, changing the scope, improving the writing).
Note that if a KPI isn't completed in time for round x
, but gets extended to round x+1
where it's fully completed, the net change will be zero. So although there is an incentive to deliver in time, a CM/WG Lead may "redeem" themselves!
We hope this will make things more fun, and allow for a gradual increase in the fiat pool replenishment!
Grading
CMs:
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
1905 | kate_fm | 84 | 3256351 |
2194 | ilich | 318 | 12327616 |
644 | lkskrn | 18 | 697790 |
361 | blackmass | 4 | 155064 |
515 | l1dev | 180 | 6977896 |
2096 | svasilenko | 138 | 5349720 |
2531 | nanapa6otaet | 36 | 1395579 |
321 | freakstatic_council | 12 | 465193 |
2462 | chiffah | 15 | 581491 |
2 | tomato | 3 | 116298 |
736 | mmsaww | 7 | 271363 |
2137 | kalpakci | 12 | 465193 |
2329 | laura | 621 | 24073741 |
2130 | maxlevush | 13 | 503959 |
2435 | zazik | 80 | 3101287 |
2154 | marat_mu | 304 | 11784891 |
SUM | 16 | 2245 | 71523432 |
WGs:
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
515 | l1dev | 400 | 15506435 |
Paid out at blocks #2,864,063 and #2,864,064.
The fiat pool factor ensured a growth of $335 -> $2015 in reccuring rewards.
Section I - Council work, Proposals and Bureaucracy
26.I-1 - Proposal Clearance
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2696400
- End Block:
#2797200
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
1905 | kate_fm | 27 | 101 | 19 |
2194 | ilich | 24 | 95 | 18 |
644 | lkskrn | 23 | 94 | 18 |
361 | blackmass | 6 | 21 | 4 |
515 | l1dev | 8 | 25 | 5 |
2096 | svasilenko | 17 | 67 | 13 |
2531 | nanapa6otaet | 16 | 55 | 11 |
321 | freakstatic_council | 15 | 64 | 12 |
2462 | chiffah | 19 | 78 | 15 |
2 | tomato | 4 | 18 | 3 |
736 | mmsaww | 11 | 35 | 7 |
2137 | kalpakci | 16 | 61 | 12 |
2329 | laura | 27 | 110 | 21 |
2130 | maxlevush | 17 | 65 | 13 |
2435 | zazik | 21 | 76 | 15 |
2154 | marat_mu | 20 | 75 | 14 |
SUM | 16 | 271 | 1040 | 200 |
26.I-2 - Council Secretary
- Reward:
$300
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2696400
- End Block:
#2797200
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
26.I-3 - Deputy Council Secretary
- Reward:
$150
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2703600
- End Block:
#2790000
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
26.I-4 - Council Minutes
- Reward:
$100
- Fiat Pool Factor:
0.5
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Term end + 1 day
- Start Block:
#2797200
- End Block:
#2811600
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2494800) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
26.I-5 - KPI Presentation
- Reward:
$500
- Fiat Pool Factor:
0.5
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2703600
- End Block:
#2790000
- Start Block:
Purpose
There's been plenty of feedback on the rather crude way the KPI's are presented, and how it negatively impacts several aspects of the KPIs.
- It's very hard to read and parse, scaring people away from even trying
- There are often errors in the ToC and formatting
- It's very hard to read and parse the results
- The page is infinite
I'm sure I could go on, but let's instead focus on how to improve it.
The first key part, which will be addressed separately, is to store the data in a json or yaml format, making so that it can be presented in a flexible way.
The second is to start thinking about the design. It's not if this is a task the Council is currently able to attempt, as design is hard. What can be done however, is to write a design brief. In order to do that, we need to establish what the page must and should contain.
Note that what we're doing here, isn't solely being able to read a single, ungraded KPI, but create (a) page(s) where all the KPI information can be kept in a functional way.
Scope of Work.
- List "all of the things" such a page should contain. This can include, but is not limited to:
- The current KPIs
- Full (or at least covering a significant part of the) KPI history, with results and stats.
- Links to all the work that was done
- Links to all the old term summaries
- Stats on how many KPIs were "done" per round
- Stats on how much was earned for each KPI
- Stats on how many KPIs each member has done, how much they've earned, and how many councils they've been a part
- etc.
- Not clear if these belongs here, and much less clear if it should be prioritized early, but:
- Should this "page" also track the token value and inflation over time?
- Should it include some way to "claim" you want to work on a task, and other "KPI manager" tools?
- What else?
Use what you find (as a group, this likely requires input from several sources) in one, to either:
-
Write a design brief, covering at least current KPIs.
-
Create a wireframe of (at least) the current KPIs. We have been using balsamiq for these things, and will re-imburse anyone giving it a go. If you prefer other tools, preferably open source, that would be even better!
Reward Distribution
Grading will be shared across the contributors for 1, individual for 2 and 3.
Weighting:
- 200
- 100
- 200
Grading
- svasilenko - $125
- l1dev - $175
- https://testnet.joystream.org/#/forum/threads/685?replyIdx=2
- SOW 1: https://testnet.joystream.org/#/forum/threads/684?page=2
- SOW 3: https://joystreamstats.live/kpi (functional, but a little "boring")
- https://testnet.joystream.org/#/forum/threads/685?replyIdx=2
Section II - Community Management
26.II-1 - Discord & Telegram Channel Management
- Reward:
$75
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2696400
- End Block:
#2797200
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- nanapa6otaet - $25
- zazik - $25
- kate_fm - $25
26.II-2 - Create new KPIs
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2703600
- End Block:
#2790000
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- marat_mu - $40
- zazik - $40
- kate_fm - $40
26.II-3 - Council Term Summary Videos
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Term end + 2 days
- Start Block:
#2797200
- End Block:
#2926800
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
Scope of Work
- Record a video (in English) presenting the "highlights" of the Term, from a community point of view. The video should be recorded after the following information is secured:
- The Council Minutes
- A KPI status update, made by the Council Secretary. Example
- As many of the Term Summaries as possible.
This means the video should be recorded approximately two days after the end of the Term.
Some potential topics:
- Who were on the Council
- Fiat Pool and exchange rate changes
- Any changes to the workers or Leads?
- Did something fun happen?
-
We imagine the format will change over time, and with feedback, but in order to bootstrap it, someone has to give it a go. After you made your video, create a forum thread for feedback/discussion. Then create a text proposal with the format you opted for, and a link to the forum post.
-
Have the video re-recorded in Russian, either by yourself, or someone else.
Note
Ideally, this should be a running project (ie. no longer be a KPI) once it "settles". In the meantime, if you are fluent in both languages you can make both. If not, collaborate with someone that masters the "other" language.
Reward Distribution
Individual grading. If more than one CM creates (a) video(s), the reward is not capped. So multiple people can all earn $400 each.
Weighting:
- $300
- Soft cap, an extremely good video may earn even more.
- A 1 min short where someone is reading the Council Minutes will not earn anything.
- $50
- $150
Grading
- marat_mu - $250
- laura - $250
- https://testnet.joystream.org/#/forum/threads/685?replyIdx=7
- Although it's nice to have these, I think we need to seriously work on the format! Next Term will see a lot stricter grading.
Section III - Working Groups
26.III-1 - Deputy Working Group Lead
- Reward:
$200
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2703600
- End Block:
#2790000
- Start Block:
Purpose
The WG Lead is expected to be available and active, but just as any other job, it's impossible to be available 24/7.
The idea of having deputy leads was raised again last Term. As has having Leads in shifts. What should each working group do?
Scope of Work
For each of the WGs:
-
Is the groups output, productivity and/or efficiency hampered by the Lead? Is that person a bottleneck for getting things done? (This is not meant to imply the Lead is underperforming. As groups have grown, the workload has followed!)
-
There are at least three options for each group:
- Keep the leadership hierarchy as is
- Assign a deputy Lead
- Have two (or more) people share the title as Lead
- Can be done on-chain, or off-chain (by sharing account)
What seems like the most "applicable" for each group?
- Can be done on-chain, or off-chain (by sharing account)
- What does the Leads themselves think of this?
Reward Distribution
Grading is individual.
Weighting:
1,3: $50
2: $100
Grading
- laura - $50
Section IV - Bounties
26.IV-1 - Weekly Bounty Managers
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2696400
- End Block:
#2797200
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Scope of Work
-
Manage Bounty #9
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected). -
Find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
-
There are currently 10 more open Bounties, some of them not created/funded by Jsgenesis. Which one of these has a format which lends themselves to weekly Bounty Managers?
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Weighting:
1: $50
2: $100
3: $100
Grading
Working Group KPIs
26.OP-1 - Runtime Upgrade Verification
- Reward:
$300
- Fiat Pool Factor:
1.5
- Start Block:
#2696400
- End Block:
#2898000
- Start Block:
Purpose
With KPI 17.OP-1), the runtime upgrade was tested. However, the results weren't straight forward to parse. We need to verify exactly what happened, before we perform the upgrade on the real testnet!
Note that an updated version of pioneer can be found here, and that you can use the endpoint wss://staging-3.joystream.app/rpc
for both pioneer and the API. Also note that the noteworthy fixes in this runtime upgrade was to:
- Fix the bug that caused all stakes when applying to the
operations
group caused the role and application stakes to get burned. - Increase the max mint capacity increase through proposals from 5,000,000 to 50,000,000.
Note
Extended from last KPI round, with small reward increase.
Scope of Work
-
After the proposed testing protocol was shared on Discord, I replied with some extra tasks. Although the tasks appear to have been performed, it's not easy to confirm from the results. Go through the list, and verify everything was done.
-
Using the Member IDs, worker IDs, block heights, membership and worker accounts listed in the report, get the historical chain data from the applicable reports and test/verify for each opening and application:
- What was the opening ID, opening parameters (max applicants, application/role stake, rewards and the various unstaking parameters)
- Was the opening created before or after the runtime upgrade
- What was the member ID, member handle, membership root/controller account, and role account
- Was the application made before or after the runtime upgrade
- What was the balance of each account, and the total issuance, on the block, and the block before, the member:
- applied
- was crowded out, not hired or hired
- if hired:
- fired or quit
- note that if the unstaking parameter was >0, you need to check the block + the applicable unstaking value
- note that if they were hired, they may have earned rewards that further complicates things
- they may also have received tokens from other addresses/rewards in the window
- also note that if the same member applied to multiple openings, you need to keep track of all stakes/values/rewards
After having generated all this information, create a report containing all the numbers above, an explanation of what you think happened, and whether the bug was fixed.
Grading
- completed in the last term
26.OP-2 - Event Email Service
- Reward:
$200
- Fiat Pool Factor:
0
- Start Block:
#2696400
- End Block:
#2998800
- Start Block:
Purpose
It can be quite useful to have notifications setup for various on chain events. The telegram/discord bots partially fulfills this role, but it could be equally, or more, useful to have email notifications as well!
Scope of Work
-
Outline the feasibility of deploying a hosted service for this, where a user can sign up, and choose from a list of events to which they want subscribe.
-
Outline the feasibility of building a self hosted service for users that are running nodes themselves. This would mean making the source code available on our community repo, where users can compile, configure and run it themselves.
-
Estimate the hours and resource needed to build these tools, and the resource consumption for a user running it themselves like in 2.
Grading
- completed in the last term
26.OP-3 - Pioneer 2.0
- Reward:
$400
- Fiat Pool Factor:
0.5
- Start Block:
#2696400
- End Block:
#2898000
- Start Block:
Purpose
Not that we are finally closing in on the release launching pioneer 2.0, we want to focus on something that we've wanted to for some time. Namely giving the community both an opportunity and reason to contribute.
As we've stated many times before, we wish for the community to take charge of the platform in the future, which means they have to understand the software they're working on. Starting early, on an something that's both unfinished and that will require lots of improvements and updates sounds ideal. To make things "even better", there are both developer docs, contributor guides, and a fair amount of (good first) issues to start with!
Scope of Work
- Find your way in to the pioneer repo, try out the build, and play around a bit.
- Read through the aforementioned contribution guidelines and developer docs. If they're helpful and all you need, great! If not, make an issue with your feedback.
- Review the "good first issue"(s), and estimate the time needed to solve each of them, assuming you are somewhat comfortable with the stack, but no knowledge of codebase. If anything is unclear in any of the issues, ask kindly for clarification.
- Provide feedback on how these issues would best be presented to the community. By that, I mean:
- Should it be separate bounties for all the
n
issues? - Should there be
n-k
bounties for thesen
issues? - Should they instead be KPIs, or simply general tasks for (one or more of) the operations group(s) to tackle?
- Other?
Present your findinds not through an issue in the pioneer repo this time, but rather in the community repo.
Reward Distribution
Grading is individual.
Grading
- l1dev - $400
KPI 25
- KPIs:
15+3
- Total Possible Rewards:
$4125+$750
- Max Fiat Pool Difference:
$925
- Council Elected in Round:
27
- Council Members:
16
- KPI Length:
7 days / 100800
- Start Block/Date:
#2595600 / 05.10.21
- End Block/Date:
#2696400 / 12.10.21
- Start Block/Date:
- Deadline to Submit Summary:
#2725200 / 14.10.21
Notes
We're adding the new concept of having KPIs affect the fiat pool replenishment rate! As there hasn't been approved proposal to a KPI to this effect, it will work like so:
Every KPI now has a "Fiat Pool Factor", where the minimum is 0
. For this round, the maximum is 1
, but that may change.
This determines how much the fiat pool will grow or shrink depending on the grading. The reasoning behind it's weighting is two-fold:
- Important and/or urgent KPIs will get a higher number, to incentivize peer pressure and voting power behind getting it done.
- Some KPIs, although they can be important, will be set to zero as the reward doesn't always imply good/bad work has happened. A good examples is the Council Dissent.
How it works:
Suppose a KPI rewards up to $100
, and the "Fiat Pool Factor" is 1. Suppose it's the only KPI with a factor not equal to 0.
- If nothing has been done, the fiat pool replenishment shrinks by $100
- If it gets graded as partially completed, and rewarded $25, the fiat pool replenishment shrinks by $50
- It it gets graded as partially completed, and rewarded $50, the fiat pool replenishment is unchanged
- If it gets graded as partially completed, and rewarded $75, the fiat pool replenishment grows by $50
- If it gets graded as fully completed, and rewarded $100, the fiat pool replenishment grows by $100
If the factor is 0.2, simply multiple the calculated change from the example with 0.2.
This will be another way for us to "force" the Council to act on some of the KPIs that has been neglected for a while, in addition to the existing ones (changing rewards, changing the scope, improving the writing).
Note that if a KPI isn't completed in time for round x
, but gets extended to round x+1
where it's fully completed, the net change will be zero. So although there is an incentive to deliver in time, a CM/WG Lead may "redeem" themselves!
We hope this will make things more fun, and allow for a gradual increase in the fiat pool replenishment!
Grading
Due to the Fiat Pool Factor
, the Fiat Pool replinshment grows by $605.
CMs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2194 | ilich | 362 | 13971267 |
644 | lkskrn | 441 | 17020246 |
2141 | joyval | 1 | 38595 |
515 | l1dev | 8 | 308757 |
2096 | svasilenko | 181 | 6985634 |
321 | freakstatic_council | 16 | 617515 |
957 | leet_joy | 1 | 38595 |
2462 | chiffah | 120 | 4631359 |
2 | tomato | 3 | 115784 |
736 | mmsaww | 12 | 463136 |
2137 | kalpakci | 17 | 656109 |
2329 | laura | 362 | 13971267 |
2836 | art_khabibullin | 4 | 154379 |
790 | ururu | 17 | 656109 |
2130 | maxlevush | 12 | 463136 |
1048 | igrex | 195 | 7525959 |
SUM | 16 | 2467 | 67617847 |
WGs
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2329 | laura | 215 | 8297852 |
515 | l1dev | 500 | 19297331 |
Section I - Council work, Proposals and Bureaucracy
25.I-1 - Proposal Clearance
- Reward:
$200
- Fiat Pool Factor:
0
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2595600
- End Block:
#2696400
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
2194 | ilich | 29 | 131 | 22 |
644 | lkskrn | 23 | 98 | 16 |
2141 | joyval | 3 | 9 | 1 |
515 | l1dev | 12 | 48 | 8 |
2096 | svasilenko | 23 | 91 | 15 |
321 | freakstatic_council | 24 | 99 | 16 |
957 | leet_joy | 2 | 8 | 1 |
2462 | chiffah | 23 | 95 | 16 |
2 | tomato | 5 | 20 | 3 |
736 | mmsaww | 17 | 70 | 12 |
2137 | kalpakci | 27 | 102 | 17 |
2329 | laura | 30 | 134 | 22 |
2836 | art_khabibullin | 6 | 24 | 4 |
790 | ururu | 27 | 105 | 17 |
2130 | maxlevush | 17 | 70 | 12 |
1048 | igrex | 26 | 103 | 17 |
SUM | 16 | 294 | 1207 | 200 |
25.I-2 - Council Dissent
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2595600
- End Block:
#2696400
- Start Block:
Purpose
The Council appeared to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Note
After seeing this play out for a while, we still have mixed feelings about it. On one had, there is clearly more discussion, questioning and disagreeing. Whereas before, all proposals were basically approved, this is no longer the case.
On the flip-side, some (smaller) traces of fractioning has happened. To address this, we are doubling down on what was said last time:
We are trying to build a strong, yet friendly community, welcoming to all. There is no reason to be rude, and personal attacks without substance will automatically void an otherwise insightful message. There are standards even when disagreeing on the internet.
Finally, note that some of the SoW and reward requirements have changed.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
For all of the above, your comment should be precise, concise, polite, and if required, well sourced. A simple "no" will get you no where.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- How clear and reasonably was the message your question/comment?
- was your argument(s) backed up by verifiable facts?
- did you link to source(s)?
- did your question(s) make it clear what your concern were?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $200)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $150)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Further:
- Only comments made in the proposal discussion will be evaluated. You can of course link to a longer post somewhere else there, but then you have to add a summary in the proposal discussion. Remember, having someones attention is not permanent.
- Stay polite, even if you are replying to a personal comment, keep it civil.
- You can only claim rewards for up to three proposals you dissented to.
- Total Cap at $1000 per KPI, eg. $500 per Term
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- igrex - $140
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=3
- https://testnet.joystream.org/#/proposals/637
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: No, but not explained well.
- Did the vote/comment affect the outcome: Possibly
- Reward: $30
- https://testnet.joystream.org/#/proposals/638
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: No, but not explained well.
- Did the vote/comment affect the outcome: Possibly
- Reward: $30
- https://testnet.joystream.org/#/proposals/664
- Cost: $300
- Was it a malicious, or objectively bad proposal: No, but it was not detailed enough.
- Did the vote/comment affect the outcome: Possibly
- Reward: $40
- https://testnet.joystream.org/#/proposals/670
- Cost: $323 (the proposal was resubmitted with more details)
- Was it a malicious, or objectively bad proposal: No, but it did not include necessary information
- Did the vote/comment affect the outcome: Yes
- Reward: $40
- https://testnet.joystream.org/#/proposals/637
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=3
- laura - $40
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=6
- https://testnet.joystream.org/#/proposals/664
- Cost: $300
- Was it a malicious, or objectively bad proposal: No, but it was not detailed enough.
- Did the vote/comment affect the outcome: Possibly
- Reward: $40
- https://testnet.joystream.org/#/proposals/664
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=6
- ilich - $40
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=9
- https://pioneer.joystreamstats.live/#/proposals/670
- Cost: $323 (the proposal was resubmitted with more details)
- Was it a malicious, or objectively bad proposal: No, but it did not include necessary information
- Did the vote/comment affect the outcome: Yes
- Reward: $40
- https://pioneer.joystreamstats.live/#/proposals/670
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=9
- l1dev - $0
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=7
- Did not link to proposals, no grading.
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=7
25.I-3 - Council Secretary
- Reward:
$300
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2595600
- End Block:
#2696400
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
25.I-4 - Deputy Council Secretary
- Reward:
$150
- Fiat Pool Factor:
0.1
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2602800
- End Block:
#2689200
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- ilich - $150
25.I-5 - Council Minutes
- Reward:
$100
- Fiat Pool Factor:
0.5
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Term end + 1 day
- Start Block:
#2696400
- End Block:
#2811600
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2494800) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
25.I-6 - Runtime Paramaters
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2602800
- End Block:
#2689200
- Start Block:
Purpose
A new runtime upgrade is coming up. What could/should be changed?
Scope of Work
- Create a text proposal outlining any runtime parameters that you would like changed, and why. If the proposal is approved, Jsgenesis will review and provide feedback.
Reward Distribution
Grading is individual.
The rewards will be based on the level of details presented in the proposal. A proposal pointing to the exact line that needs to be changed, what it does and what the secondary effects are will earn more than "Make X higher".
Grading
- 25.I-6 - Runtime Parameters ($500)
- No work submitted, no rewards.
Section II - Community Management
25.II-1 - Discord & Telegram Channel Management
- Reward:
$75
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2595600
- End Block:
#2696400
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- igrex - $37.5
- chiffah - $37.5
25.II-2 - Create new KPIs
- Reward:
$500
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2602800
- End Block:
#2689200
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- igrex
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=3
- https://testnet.joystream.org/#/proposals/660
- Will be graded as part of next Term
25.II-3 - Minting and Burning - Part 1
- Reward:
$700
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2602800
- End Block:
#2689200
- Start Block:
Purpose
The platform has taken a larger interest in the minting and burning of tokens recently. We believe this is good progress from previously, and it was a large part of the reason the dreaded "Council Dissent" KPI was introduced.
Although the "Tokenomics" and the status server combined gives a good idea of the mints and burns of Tokens, they do not provide the full picture.
Note
Bumping the reward a bit, after it's been unclaimed.
Scope of Work
The list below will hopefully cover all the sources of minting and burning of tokens on the platform, with some information on how to quantify it in (parentheses) from the historical chain data:
- Minting:
- Validator rewards (event)
- Council rewards (from the Council Mint, which also funds proposals, refill is an event)
- Other Worker and Lead rewards (from the respective mints, refill is an event)
- Spending Proposals (event)
sudo
1 (event)- Other?
- Burning:
- Membership creation 2 (event)
- Exchanges (when user sends to the exchange account,
5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu
, it makes a new transfer to itself with all tokens as fees) - Extrinsics/tx fees (must be set manually, see above)
- Proposal fee (when not approved)
- Proposal slashes
- Worker and Lead slashes
- Due to an issue with the current runtime, all stakes (both role and application) for the Operations group are/were burned
- Other?
- Create a document with:
- if applicable, the event, eg.
sudo.setBalance
for each mint/burn - what values from the chain state you need to compare for each block to calculate the mint/burn for that block
- other sources of mints and burns.
- if you find one, add the information requested above
-
Write up a chunk of code (in typescript) that can be used to calculate this from the API, and comment the code to explain in words what you are trying to do/doing.
-
Create a script that, at every block:
- gets the
totalIssuance
- calculates what is minted and burned in the block
- and compares the two amounts
- if the they're not matching, return the block height(s)
- for each "group" og mint and burn, sum up the total amounts
Use the script from block #717987
to #2091600
(or at least some intervals in that range), and whenever you see a discrepancy, check the particular block, and see if you can find the source, then update script and repeat.
The deliverable is the script (with comments), in PR to the Community Repo, alongside a list of blocks that you haven't been able to "understand", and some comments on what you have tried.
sudo
always mints new tokens as KPI rewards, but on rare occasions for other purposes- when created through the Player onboarding, it's minted first
Reward Distribution
Individual grading.
- $250
- $250
- $200
Grading
- lkskrn - $425
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=2
- https://testnet.joystream.org/#/proposals/672
- Not really done ($50)
- Some examples (of events) are listed, but this is meant to be a comprehensive list.
- How does each of them affect the issuance?
- Completed ($250)
- Partially completed ($125).
- It's not clear how much "research" is done in the cases where there is a discrepancy.
- In some cases, it's somewhat "clear" from looking at the block what the reason was.
- It appears that some blocks may be missing, as similar transaction only sometimes triggers a
[WARN]
. Not deducted for this.
- It's not clear how much "research" is done in the cases where there is a discrepancy.
- Not really done ($50)
25.II-4 - Council Term Summary Videos
- Reward:
$500
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Term end + 2 days
- Start Block:
#2696400
- End Block:
#2826000
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
Scope of Work
- Record a video (in English) presenting the "highlights" of the Term, from a community point of view. The video should be recorded after the following information is secured:
- The Council Minutes
- A KPI status update, made by the Council Secretary. Example
- As many of the Term Summaries as possible.
This means the video should be recorded approximately two days after the end of the Term.
Some potential topics:
- Who were on the Council
- Fiat Pool and exchange rate changes
- Any changes to the workers or Leads?
- Did something fun happen?
-
We imagine the format will change over time, and with feedback, but in order to bootstrap it, someone has to give it a go. After you made your video, create a forum thread for feedback/discussion. Then create a text proposal with the format you opted for, and a link to the forum post.
-
Have the video re-recorded in Russian, either by yourself, or someone else.
Note
Ideally, this should be a running project (ie. no longer be a KPI) once it "settles". In the meantime, if you are fluent in both languages you can make both. If not, collaborate with someone that masters the "other" language.
Reward Distribution
Individual grading. If more than one CM creates (a) video(s), the reward is not capped. So multiple people can all earn $400 each.
Weighting:
- $300
- Soft cap, an extremely good video may earn even more.
- A 1 min short where someone is reading the Council Minutes will not earn anything.
- $50
- $150
Grading
- No work submitted, no rewards.
Section III - Working Groups
25.III-1 - Follow up the Storage Working Group
- Reward:
$0
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2602800
- End Block:
#2689200
- Start Block:
Note
As we are about to launch a new system, it seems a bit redundant to spend to much resources on this atm.
25.III-2 - Follow up the Content Curators Working Group
- Reward:
$0
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2602800
- End Block:
#2689200
- Start Block:
Note
HOLD
25.III-3 - Follow up the Operations Working Group
- Reward:
$0
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2602800
- End Block:
#2689200
- Start Block:
Note
HOLD
25.III-4 - Deputy Working Group Lead
- Reward:
$200
- Fiat Pool Factor:
0.2
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Core Term
- Start Block:
#2602800
- End Block:
#2689200
- Start Block:
Purpose
The WG Lead is expected to be available and active, but just as any other job, it's impossible to be available 24/7.
The idea of having deputy leads was raised again last Term. As has having Leads in shifts. What should each working group do?
Scope of Work
For each of the WGs:
-
Is the groups output, productivity and/or efficiency hampered by the Lead? Is that person a bottleneck for getting things done? (This is not meant to imply the Lead is underperforming. As groups have grown, the workload has followed!)
-
There are at least three options for each group:
- Keep the leadership hierarchy as is
- Assign a deputy Lead
- Have two (or more) people share the title as Lead
- Can be done on-chain, or off-chain (by sharing account)
What seems like the most "applicable" for each group?
- Can be done on-chain, or off-chain (by sharing account)
- What does the Leads themselves think of this?
Reward Distribution
Grading is individual.
Weighting:
1,3: $50
2: $100
Grading
- svasilenko - $66
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=5
- Operations Working Group
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=5
- chiffah - $66
Section IV - Bounties
25.IV-1 - Weekly Bounty Managers
- Reward:
$300
- Fiat Pool Factor:
0
- Reward Distribution:
Individual
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2595600
- End Block:
#2696400
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Scope of Work
-
Manage Bounty #9
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected). -
Find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
-
There are currently 10 more open Bounties, some of them not created/funded by Jsgenesis. Which one of these has a format which lends themselves to weekly Bounty Managers?
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Weighting:
1: $50
2: $100
3: $100
Grading
- ilich - $50
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=9
- Bounty 9 management
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=9
- svasilenko - $100
Working Group KPIs
25.CC-1 - Discover Category Videos Part 1
- Reward:
$250
- Fiat Pool Factor:
1
- Start Block:
#2595600
- End Block:
#2739600
- Start Block:
Purpose
As part of a small update to the Joystream Player, we're adding some featured videos to each category for exploring. See example of the design here. For this, we need to curators to step in!
Scope of Work
-
For each category, find 12 videos (if possible) that matches best with the following criteria (in a somewhat ordered list):
a. Content is in fact representative for the category
b. Good quality (resolution and frame rate)
c. "Appropriate" for making a 10sec clip/snippet, that will look good and display relevance to the category
Obviously, if any video is not in line with the ToS, it should be discarded from consideration. This, of course, includes any video that have suspicious license data. -
For the 12 proposals in each category, provide the results in a json (preferable) or csv/markdown format:
- category ID+name
- video ID+title
- timestamps for start/stop of each clip
- channel ID+owner
- Point out which categories, if any, that needs more videos to achieve a reasonable level of quality.
Notes
Although the Lead
is free to delegate as they see fit, this is a lot of work for a single person, and delegating among the curators seems good to quickly resolve the issue. The Lead should review the work if possible, but it's not feasible that all videos can be equally good ref criteria in 1.
Grading
- laura - $215
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=6
- Video ID: 2142 is not public domain/CC (questionable license)
- Video ID: 777 is not public domain/CC (questionable license)
- https://testnet.joystream.org/#/forum/threads/671?replyIdx=6
25.OP-1 - Runtime Upgrade Verification
- Reward:
$300
- Fiat Pool Factor:
1
- Start Block:
#2595600
- End Block:
#2797200
- Start Block:
Purpose
With KPI 17.OP-1), the runtime upgrade was tested. However, the results weren't straight forward to parse. We need to verify exactly what happened, before we perform the upgrade on the real testnet!
Note that an updated version of pioneer can be found here, and that you can use the endpoint wss://staging-3.joystream.app/rpc
for both pioneer and the API. Also note that the noteworthy fixes in this runtime upgrade was to:
- Fix the bug that caused all stakes when applying to the
operations
group caused the role and application stakes to get burned. - Increase the max mint capacity increase through proposals from 5,000,000 to 50,000,000.
Note
Extended from last KPI round, with small reward increase.
Scope of Work
-
After the proposed testing protocol was shared on Discord, I replied with some extra tasks. Although the tasks appear to have been performed, it's not easy to confirm from the results. Go through the list, and verify everything was done.
-
Using the Member IDs, worker IDs, block heights, membership and worker accounts listed in the report, get the historical chain data from the applicable reports and test/verify for each opening and application:
- What was the opening ID, opening parameters (max applicants, application/role stake, rewards and the various unstaking parameters)
- Was the opening created before or after the runtime upgrade
- What was the member ID, member handle, membership root/controller account, and role account
- Was the application made before or after the runtime upgrade
- What was the balance of each account, and the total issuance, on the block, and the block before, the member:
- applied
- was crowded out, not hired or hired
- if hired:
- fired or quit
- note that if the unstaking parameter was >0, you need to check the block + the applicable unstaking value
- note that if they were hired, they may have earned rewards that further complicates things
- they may also have received tokens from other addresses/rewards in the window
- also note that if the same member applied to multiple openings, you need to keep track of all stakes/values/rewards
After having generated all this information, create a report containing all the numbers above, an explanation of what you think happened, and whether the bug was fixed.
Grading
- l1dev - $300
- chiffah
25.OP-2 - Event Email Service
- Reward:
$200
- Fiat Pool Factor:
0
- Start Block:
#2595600
- End Block:
#2898000
- Start Block:
Purpose
It can be quite useful to have notifications setup for various on chain events. The telegram/discord bots partially fulfills this role, but it could be equally, or more, useful to have email notifications as well!
Scope of Work
-
Outline the feasibility of deploying a hosted service for this, where a user can sign up, and choose from a list of events to which they want subscribe.
-
Outline the feasibility of building a self hosted service for users that are running nodes themselves. This would mean making the source code available on our community repo, where users can compile, configure and run it themselves.
-
Estimate the hours and resource needed to build these tools, and the resource consumption for a user running it themselves like in 2.
Grading
KPI 24
- KPIs:
17+4
- Total Possible Rewards:
4750$ + 750$
- Council Elected in Round:
26
- Council Members:
16
- KPI Length:
7 days / 100800 blocks
- Start Block/Date:
#2494800 / 28.09.21
- End Block/Date:
#2595600 / 05.10.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#2624400 / 07.10.21
Grading Results
Council
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2194 | ilich | 167 | 6315622 |
644 | lkskrn | 7 | 264727 |
515 | l1dev | 4 | 151272 |
2098 | 0x2bc | 5 | 189090 |
2096 | svasilenko | 111 | 4197809 |
867 | xandrell | 19 | 718544 |
321 | freakstatic_council | 20 | 756362 |
1842 | uliczny | 16 | 605090 |
2462 | chiffah | 311 | 11761427 |
2 | tomato | 271 | 10248704 |
2137 | kalpakci | 8 | 302545 |
2329 | laura | 199 | 7525801 |
2836 | art_khabibullin | 62 | 2344722 |
790 | ururu | 19 | 718544 |
2130 | maxlevush | 16 | 605090 |
2154 | marat_mu | 443 | 16753416 |
SUM | 16 | 1778 | 63458765 |
Working Groups
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2329 | laura | 150 | 5672715 |
Paid out on blocks #2,664,568 and #2,664,569.
Section I - Council work, Proposals and Bureaucracy
24.I-1 - Proposal Clearance
- Reward:
$200
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2494800
- End Block:
#2595600
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
2194 | ilich | 20 | 75 | 17 |
644 | lkskrn | 9 | 29 | 7 |
515 | l1dev | 5 | 16 | 4 |
2098 | 0x2bc | 9 | 24 | 5 |
2096 | svasilenko | 16 | 49 | 11 |
867 | xandrell | 22 | 81 | 19 |
321 | freakstatic_council | 23 | 89 | 20 |
1842 | uliczny | 18 | 71 | 16 |
2462 | chiffah | 14 | 50 | 11 |
2 | tomato | 12 | 48 | 11 |
2137 | kalpakci | 10 | 37 | 8 |
2329 | laura | 21 | 84 | 19 |
2836 | art_khabibullin | 8 | 32 | 7 |
790 | ururu | 21 | 83 | 19 |
2130 | maxlevush | 17 | 69 | 16 |
2154 | marat_mu | 10 | 36 | 8 |
SUM | 16 | 235 | 873 | 200 |
24.I-2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2494800
- End Block:
#2595600
- Start Block:
Purpose
The Council appeared to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Note
After seeing this play out for a while, we still have mixed feelings about it. On one had, there is clearly more discussion, questioning and disagreeing. Whereas before, all proposals were basically approved, this is no longer the case.
On the flip-side, some (smaller) traces of fractioning has happened. To address this, we are doubling down on what was said last time:
We are trying to build a strong, yet friendly community, welcoming to all. There is no reason to be rude, and personal attacks without substance will automatically void an otherwise insightful message. There are standards even when disagreeing on the internet.
Finally, note that some of the SoW and reward requirements have changed.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
For all of the above, your comment should be precise, concise, polite, and if required, well sourced. A simple "no" will get you no where.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- How clear and reasonably was the message your question/comment?
- was your argument(s) backed up by verifiable facts?
- did you link to source(s)?
- did your question(s) make it clear what your concern were?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $200)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $150)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Further:
- Only comments made in the proposal discussion will be evaluated. You can of course link to a longer post somewhere else there, but then you have to add a summary in the proposal discussion. Remember, having someones attention is not permanent.
- Stay polite, even if you are replying to a personal comment, keep it civil.
- You can only claim rewards for up to three proposals you dissented to.
- Total Cap at $1000 per KPI, eg. $500 per Term
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @laura - $30
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=4
- https://testnet.joystream.org/#/proposals/637
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: No, but it was vague.
- Did the vote/comment affect the outcome: Possibly
- Reward: $30
- https://testnet.joystream.org/#/proposals/637
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=4
- @art_khabibulin - $30
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=7
- https://testnet.joystream.org/#/proposals/637
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: No, but it was vague.
- Did the vote/comment affect the outcome: Possibly
- Reward: $30
- https://testnet.joystream.org/#/proposals/637
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=7
- @marat_mu - $60
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=8
- https://testnet.joystream.org/#/proposals/638
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: No, but it was vague.
- Did the vote/comment affect the outcome: Possibly
- Reward: $30
- https://testnet.joystream.org/#/proposals/637
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: No, but it was vague.
- Did the vote/comment affect the outcome: Possibly
- Reward: $30
- https://testnet.joystream.org/#/proposals/638
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=8
24.I-3 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2494800
- End Block:
#2595600
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $260
24.I-4 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2494800
- End Block:
#2595600
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
24.I-5 - Council Minutes
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2494800
- End Block:
#2595600
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2494800) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
24.I-6 - New Fiat Pool Scheme
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2494800
- End Block:
#2595600
- Start Block:
Purpose
The community is taking a larger and more involved part of the Council voting, much to our pleasure. Let's make it more meaningful for them to do so!
An idea that's been discussed for some time now is the introduction of a way to increase the fiat pool based on the KPI performance. The exact structure of this has not been thought through, but here is one example of how it could work:
The current "baseline" for fiat pool replenishments is $1075 per week. Additionally, the fiat pool is increased at irregular intervals based on Bounty completions, and when minting new tokens as KPI rewards. Say the total achievable KPI (Council and WGs) rewards for a Term is $5000.
It must be assumed that if the all the KPIs are achieved, the Council did well (directly through Council KPIs, and indirectly for hiring good WG Leads). To reward the community for voting in a "good" Council, we could say that for every KPI dollar earned over $4000, 20% is added to the pool on a permanent basis.
On the other hand, if nothing is achieved, the Council did poorly. To punish the community for voting in a "bad" Council, we could say that for every KPI dollar under $2000, NOT earned, 20% is permanently removed from the pool.
Scope of Work
-
Come up with a percentage based increase and/or decrease of the fiat pool based on the KPI performance. Use the results from KPI 21.10 to project what the current fiat pool would have been due to the past performance. The Council must approve your proposal in order for it to count.
-
Propose other mechanism that could be used to decrease or fiat pool, based on either on-chain or off-chain events.
Reward Distribution
Grading is individual.
Weighting:
- $150
- $50
Grading
- No work submitted, no rewards.
24.7 - Runtime Parameters
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2494800
- End Block:
#2595600
- Start Block:
Purpose
A new runtime upgrade is coming up. What could/should be changed?
Scope of Work
- Create a text proposal outlining any runtime parameters that you would like changed, and why. If the proposal is approved, Jsgenesis will review and provide feedback.
Reward Distribution
Grading is individual.
The rewards will be based on the level of details presented in the proposal. A proposal pointing to the exact line that needs to be changed, what it does and what the secondary effects are will earn more than "Make X higher".
Grading
- No work submitted, no rewards.
Section II - Community Management
24.II-1 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
Full Term
- Start Block:
#2494800
- End Block:
#2595600
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @xandrell - $25
- @art_khabibullin - $25
- @chiffah - $25
24.II-2 - Find All PRs/Issues That Require Jsgenesis Action
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
As we are often behind on certain issues, and have multiple github repos (and discord) to monitor, assistance is often needed.
We need to compile a new list of actions required.
Scope of Work
-
Find the last issue of this sort created in the community repo, review each of the items, reference it and create a new issue (in the same format) with the still unresolved items and reference the "old one".
-
Go through the following repos, and look for open issues and PRs made by someone outside of the "organization", that has not been solved/addressed:
- joystream
- helpdesk
- hydra
- community-repo
- atlas
- founding-members
- joystream-org
- handbook
Then, go through the Discord channels (last week only), and add questions/comments that needs to be addressed.
Finally, update the issue from 1. and add the new items.
Reward Distribution
If multiple issues are created, only the best one will be rewarded.
- $50
- $100
- $200
Grading
- No work submitted, no rewards.
24.II-3 - Create new KPIs
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- No work submitted, no rewards.
24.II-4 - Minting and Burning - Part 1
- Reward:
$700
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
The platform has taken a larger interest in the minting and burning of tokens recently. We believe this is good progress from previously, and it was a large part of the reason the dreaded "Council Dissent" KPI was introduced.
Although the "Tokenomics" and the status server combined gives a good idea of the mints and burns of Tokens, they do not provide the full picture.
Note
Bumping the reward a bit, after it's been unclaimed.
Scope of Work
The list below will hopefully cover all the sources of minting and burning of tokens on the platform, with some information on how to quantify it in (parentheses) from the historical chain data:
- Minting:
- Validator rewards (event)
- Council rewards (from the Council Mint, which also funds proposals, refill is an event)
- Other Worker and Lead rewards (from the respective mints, refill is an event)
- Spending Proposals (event)
sudo
1 (event)- Other?
- Burning:
- Membership creation 2 (event)
- Exchanges (when user sends to the exchange account,
5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu
, it makes a new transfer to itself with all tokens as fees) - Extrinsics/tx fees (must be set manually, see above)
- Proposal fee (when not approved)
- Proposal slashes
- Worker and Lead slashes
- Due to an issue with the current runtime, all stakes (both role and application) for the Operations group are/were burned
- Other?
- Create a document with:
- if applicable, the event, eg.
sudo.setBalance
for each mint/burn - what values from the chain state you need to compare for each block to calculate the mint/burn for that block
- other sources of mints and burns.
- if you find one, add the information requested above
-
Write up a chunk of code (in typescript) that can be used to calculate this from the API, and comment the code to explain in words what you are trying to do/doing.
-
Create a script that, at every block:
- gets the
totalIssuance
- calculates what is minted and burned in the block
- and compares the two amounts
- if the they're not matching, return the block height(s)
- for each "group" og mint and burn, sum up the total amounts
Use the script from block #717987
to #2091600
(or at least some intervals in that range), and whenever you see a discrepancy, check the particular block, and see if you can find the source, then update script and repeat.
The deliverable is the script (with comments), in PR to the Community Repo, alongside a list of blocks that you haven't been able to "understand", and some comments on what you have tried.
sudo
always mints new tokens as KPI rewards, but on rare occasions for other purposes- when created through the Player onboarding, it's minted first
Reward Distribution
Individual grading.
- $250
- $250
- $200
Grading
- No work submitted, no rewards.
24.II-5 - Council Term Summary Videos
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Term end + 2 days
- Start Block:
#2595600
- End Block:
#2624400
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
Scope of Work
- Record a video (in English) presenting the "highlights" of the Term, from a community point of view. The video should be recorded after the following information is secured:
- The Council Minutes
- A KPI status update, made by the Council Secretary. Example
- As many of the Term Summaries as possible.
This means the video should be recorded approximately two days after the end of the Term.
Some potential topics:
- Who were on the Council
- Fiat Pool and exchange rate changes
- Any changes to the workers or Leads?
- Did something fun happen?
-
We imagine the format will change over time, and with feedback, but in order to bootstrap it, someone has to give it a go. After you made your video, create a forum thread for feedback/discussion. Then create a text proposal with the format you opted for, and a link to the forum post.
-
Have the video re-recorded in Russian, either by yourself, or someone else.
Note
Ideally, this should be a running project (ie. no longer be a KPI) once it "settles". In the meantime, if you are fluent in both languages you can make both. If not, collaborate with someone that masters the "other" language.
Reward Distribution
Individual grading. If more than one CM creates (a) video(s), the reward is not capped. So multiple people can all earn $400 each.
Weighting:
- $300
- Soft cap, an extremely good video may earn even more.
- A 1 min short where someone is reading the Council Minutes will not earn anything.
- $50
- $150
Grading
- @marat_mu - $375
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=8
- https://pioneer.joystreamstats.live/#/forum/threads/664
- https://play.joystream.org/video/6610 + https://play.joystream.org/video/6611
- SOW 1 (Video of term, minutes, KPIs, summaries) - $200
- No term summaries were included
- SOW 2 (Forum thread + proposal) - $25
- Only a forum thread created
- SOW 3 (Translate to Russian)
- Complete - $150
- SOW 1 (Video of term, minutes, KPIs, summaries) - $200
- General notes:
- Nicely edited, good duration of video.
- Not much coverage of KPIs
- Introduction of the council members was quite lengthy
- Did bring up some intersting issues like inflation (the coverage of this was well done)
- If possible, try to avoid TTS
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=8
- @chiffah - $275
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=10
- https://testnet.joystream.org/#/forum/threads/660
- https://play.joystream.org/video/6503
- SOW 1 (Video of term, minutes, KPIs, summaries) - $250
- SOW 2 (Forum thread + proposal)
- Only a forum thread created - $25
- SOW 3 (Translate to Russian)
- Not complete - $0
- Another great first attempt! Some general notes for the future:
- Try avoiding reading out long block of text, instead:
- Do a TL;DR of what it contains
- Add a link to the description
- Focus on feedback and reactions, and feel free to add some of your own
- Well edited, nice graphics. Perhaps a bit lengthy in some parts.
- Excellent graphics showing the council members
- "Interesting Proposals" was quite nice, but there was a lack of information about KPIs
- Some of the text was a bit lengthy to listen to, it may be a good idea to try and summarize the information a bit more.
- If possible, try to avoid TTS
- Try avoiding reading out long block of text, instead:
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=10
24.II-6 - Community Calls
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
As stated before, we have unfortunately not been able to follow up, assist and inform the community sufficiently for some time. Let's schedule some community calls (or similar) to remedy this!
Scope of Work
- In addition to having tried a community call or two before, we have also made a (long inactive) podcast, and Bedeho has made a number of community update videos. Although the latter will surely return soon (tm), we believe there are many topics and questions that are more suitable for other formats. Start a discussion with the community, and decide on a format for which Jsgenesis should start a weekly, or fortnightly calls with the Community. The following should be decided:
- Should it be an actual call, where everyone are free to join and ask question (Q&A)
- Pre-recorded questions by the community answered over a call, with everyone muted?
- Should it be a discussion moderated by a selected community member?
- Should it not be a call at all, but an AMA somewhere?
- Do you prefer the presentation style from Bedehos videos?
- Other?
- What should the first 3 calls cover? Although we understand there are many different topics the community wants more information about, some structure may be useful. If nothing else because people may want very different granularity.
- Topics/agenda
- Who should be present from JSG
- Can be either a name/handle, or representative of some product/feature (eg.
Atlas
)
- Can be either a name/handle, or representative of some product/feature (eg.
- Schedule a time and date next week that is suitable. Note that most of the Jsgenesis team are on UTC+2.
Reward Distribution
Individual grading. Although this must be based on feedback not just from the Council, but the entire community, a single person should lead.
Grading
- @svasilenko - $100
Section III - Working Groups
Note
While finishing these KPIs, this proposal came to our attention. Very relevant for this section of KPIs.
24.III-1 - Follow up the Storage Working Group
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Note
Now that a Storage Lead has been hired, we're trying this one again. Note that anyone from the Storage Provider WG can not be the "primary" on this KPI.
Although the task was "claimed", it's not clear whether all the work here is completed, so it'ss being renewed.
Scope of Work
- Establishing the new OKR system for the SPs has unfortunately stalled. The technical part is more or less complete, and will be completed for the next Council Term, so we're going to cut through and propose something more specific. The work is to find out exactly what the numbers
R_rec.L
,R_okr.L
,R_rec.W
andR_okr.W
should be:
- The Lead currently earns ~$72 per week in recurring rewards
- The Workers (ex JSG) all earn ~$30 per week in recurring rewards
- Going forward, we propose all Workers (
R_rec.W
) earn either the break-even cost in terms of hardware, or slightly below. - Whether the recurring reward for the Lead (
R_rec.L
) should be higher or lower than this isn't clear.- The Lead has extra responsibilities to running their node, which has a value
- The Lead will however potentially earn an extra income on this, as they will earn OKR rewards for the groups performance, and for Storage KPIs, which will cover most of their extra tasks
- After establishing a benchmark value for OKRs, the OKR payout scheme will mean that of max OKR payout pool, equal to
R_rec.L
+R_rec.W
, so that:- For the Group:
- For each of the 7
*
KRs that exceeds the weekly target -> 1/7th ofR_okr.W
is shared between all the SPs that reached this individual KR. - If the group on average exceeds the target for 4/7 KRs, the Lead gets a bonus equal to
R_okr.L/10
- If the group on average exceeds the target for 5/7 KRs, the Lead gets a bonus equal to
R_okr.L/5
- If the group on average exceeds the target for 6/7 KRs, the Lead gets a bonus equal to
R_okr.L/2
- If the group on average exceeds the target for 7/7 KRs, the Lead gets a bonus equal to
R_okr.L
- For each of the 7
- For the Group:
- Get these independent numbers approved by the Council, and provide specific examples of outcomes for the Workers and Lead with this schedule.
- Note that half of the OKR rewards will come from minting of new tokens, so only half of the OKR rewards needs to be accounted for in the budget.
- Further note that it's unlikely that the FULL OKR rewards (
R_okr.W
+R_okr.L
) will actually be paid out each week, so the Council can assume the budget for the SP group won't have to pay all ofR_rec.L + R_rec.W + (R_okr.W + R_okr.L)/2
.
*
Note that while the OKRs are being rolled out, the number will be lower than 7. The general process will still apply.
The CM addressing this task should familiarize themselves with the somehwat overlapping Storage KPIs.
Reward Distribution
Individual grading.
*
Firing is not the only valid consequence
Weighting:
- 1: $300
Grading
TBD
24.III-2 - Follow up the Content Curators Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Note
This was partially completed, but extending the whole thing for context. Grading will be delayed until after it's fully done.
Scope of Work
- After the closing of Bounty 10, the amount of uploads to the platform dropped substantially. Create a report containing information about content between blocks
#717987
(first block with the current content directory) and#1998000
the following information, with charts where applicable:
- Channel creation over time
- Members with Channels over time
- Uploads over time
- Size of the
dataDirectory
over time - Curators (including Lead) over time
- Curator rewards (including Lead), both in USD and tJOY.
- Changes made to Channels and Videos over time
- Curation/Censoring over time
Note that the information for the first 3 bullets above can be generated from the Hydra Playground, whereas the rest will require getting historical data from the chain. In the latter case, getting data for every 14400 blocks (eg. every day) is sufficient. The historical exchange rate can be derived from the status server.
-
Use the data, and compare to the previous Curator Lead reports to get an estimate of the workload over time for the Curators, and compare the result to what was found in 1.
-
Use the results as a baseline to review the current budget for the Curator group, keeping in mind that the workload is expected to go up (substantially) once the "new" content bounty is live.
-
Assist the Curator Lead with their Curator KPI, KPI 19.CC-1.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $150
- 2: $100
-
- $50
-
- $100
Grading
- @chiffah - $0
- https://pioneer.joystreamstats.live/#/forum/threads/654?replyIdx=10
- Does not cover the Scope of Work of the KPI.
- https://pioneer.joystreamstats.live/#/forum/threads/654?replyIdx=10
24.III-3 - Follow up the Operations Working Group
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
For our next release, we are planning on adding two more Operations groups. How to organize them is another thing!
Scope of Work
- Discuss the downsides and benefits with each of the approaches below:
- Separate the groups in two specific fields, such as:
- Marketing
- Coding (general)
- Front-end
- Scripts and tools
- Moderators
- etc.
- Have three independent groups, with no group-specific overarching theme, but assign new tasks to a specific group every time.
- Have the groups "compete", with all teams competing for the same tasks
Reward Distribution
Grading is individual.
Grading
- No work submitted, no rewards.
Section IV - Bounties
24.IV.1 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
Working Group KPIs
We are trying out new ways of rewarding the Working Groups, for multiple reasons.
The Working Group KPIs will, at least for this Council Term, work like so:
- The Lead assigns a group or individual to the task (they can choose themselves).
- The Lead (if the position is occupied), must fill out the Term Summary and regardless if the task was assigned to a worker, or performed themselves.
- Unless otherwise noted, all subtasks must be completed. If not, no rewards will be given.
24.CC-1 - Update Featured Video
- Reward:
$150
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
This should be replaced pretty regularly, and it's been a while since the last time!
Scope of Work
- In line with the process established in a previous KPI, propose 2 or 3 alternatives for the featured video to Jsgenesis. The proposal should be the finished json with all data required.
Grading
- @laura - $150
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=4
- JSON file
notprovided
- JSON file
- https://testnet.joystream.org/#/forum/threads/654?replyIdx=4
24.CC-2 - Discover Category Videos Part 1
- Reward:
$250
- Start Block:
#2577000
- End Block:
#2624400
- Start Block:
Purpose
As part of a small update to the Joystream Player, we're adding some featured videos to each category for exploring. See example of the design here. For this, we need to curators to step in!
Scope of Work
-
For each category, find 12 videos (if possible) that matches best with the following criteria (in a somewhat ordered list):
a. Content is in fact representative for the category
b. Good quality (resolution and frame rate)
c. "Appropriate" for making a 10sec clip/snippet, that will look good and display relevance to the category
Obviously, if any video is not in line with the ToS, it should be discarded from consideration. This, of course, includes any video that have suspicious license data. -
For the 12 proposals in each category, provide the results in a json (preferable) or csv/markdown format:
- category ID+name
- video ID+title
- timestamps for start/stop of each clip
- channel ID+owner
- Point out which categories, if any, that needs more videos to achieve a reasonable level of quality.
Notes
Although the Lead
is free to delegate as they see fit, this is a lot of work for a single person, and delegating among the curators seems good to quickly resolve the issue. The Lead should review the work if possible, but it's not feasible that all videos can be equally good ref criteria in 1.
Grading
- No work submitted, no rewards.
24.OP-1 - Runtime Upgrade Verification
- Reward:
$300
- Start Block:
#2502000
- End Block:
#2595600
- Start Block:
Purpose
With KPI 17.OP-1), the runtime upgrade was tested. However, the results weren't straight forward to parse. We need to verify exactly what happened, before we perform the upgrade on the real testnet!
Note that an updated version of pioneer can be found here, and that you can use the endpoint wss://staging-3.joystream.app/rpc
for both pioneer and the API. Also note that the noteworthy fixes in this runtime upgrade was to:
- Fix the bug that caused all stakes when applying to the
operations
group caused the role and application stakes to get burned. - Increase the max mint capacity increase through proposals from 5,000,000 to 50,000,000.
Note
Extended from last KPI round, with small reward increase.
Scope of Work
-
After the proposed testing protocol was shared on Discord, I replied with some extra tasks. Although the tasks appear to have been performed, it's not easy to confirm from the results. Go through the list, and verify everything was done.
-
Using the Member IDs, worker IDs, block heights, membership and worker accounts listed in the report, get the historical chain data from the applicable reports and test/verify for each opening and application:
- What was the opening ID, opening parameters (max applicants, application/role stake, rewards and the various unstaking parameters)
- Was the opening created before or after the runtime upgrade
- What was the member ID, member handle, membership root/controller account, and role account
- Was the application made before or after the runtime upgrade
- What was the balance of each account, and the total issuance, on the block, and the block before, the member:
- applied
- was crowded out, not hired or hired
- if hired:
- fired or quit
- note that if the unstaking parameter was >0, you need to check the block + the applicable unstaking value
- note that if they were hired, they may have earned rewards that further complicates things
- they may also have received tokens from other addresses/rewards in the window
- also note that if the same member applied to multiple openings, you need to keep track of all stakes/values/rewards
After having generated all this information, create a report containing all the numbers above, an explanation of what you think happened, and whether the bug was fixed.
Grading
- No work submitted, no rewards.
24.SP-1 - Storage OKRs
- Reward:
$300
- Start Block:
#2494800
- End Block:
#2595600
Note that this task is shared between the Operations Lead and the Storage Provider Lead. Ideally, they'll either co-operate, or delegate to workers in their respective groups to co-operate.
Purpose
We still believe OKRs to be a good way to reward the Storage Provider Lead, and workers. However, the actual OKRs needs to be settled, and some benchmark numbers must be established.
Although the task was "claimed", it's not clear whether all the work here is completed, so it's being renewed.
Scope of Work
- Review the Storage OKRs here.
- Review the proposed Key Results 1 - uptime, 5 - Rendering Time, and 6 - Upload Speed, and:
- Are there any changes required to these?
- What tools, not already available (eg.
helios
and joystreamstats.live has some helpful tools already) are needed to start measuring these right away? - Add examples, and improve the instructions and notations used so that the Council, Storage Providers and others understand exactly what and how is being measured, how it's going to be graded, and how frequently the should be measured
Feel free to co-ordinate with the Operations group if additional technical support is needed.
- Deploy a script that measures the data you can, and share the script so that others can do so.
- Finally, review the proposed OKR system outlined in KPI 19.9, and the numbers that come out of it.
24.SP-2 - Storage Provider Sanctions
- Reward:
$50
- Start Block:
#2494800
- End Block:
#2595600
Purpose
Although the OKR system will make it less profitable to be an underperforming SP on paper, the savings in costs by running a "cheap" node may break that assumption. Although we believe the Lead should have some subjective decision making power in deciding when the sanction a Worker, some objective data should be made available for the benefit of all parties. That doesn't mean that for long running SPs, with a great track record, some underperformance for some time is accepted.
Although the task was "claimed", it's not clear whether all the work here is completed, so it'ss being renewed.
Scope of Work
- Based on OKR related data, and/or other criteria, create a set of rules that could or should lead to the firing, slashing, or other sanctions agains an SP.
Grading
- No work submitted, no rewards.
KPI 23
- KPIs:
20+3
- Total Possible Rewards:
5800$ + 650$
- Council Elected in Round:
25
- Council Members:
16
- KPI Length:
7 days / 100800 blocks
- Start Block/Date:
#2394000 / 21.09.21
- End Block/Date:
#2494800 / 28.09.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#2523600 / 30.09.21
Notes
Not sure if this is the "correct" place to first release this information, but a new JSG voting policy will be introduced soon, in harmony with KPI 23.I-7:
- JSG will no longer vote for Founding Members in Council Elections.
- JSG will primarily prioritize voting in first timers, that puts in an effort.
- If there are more tokens "left" to vote for, the priority will be non-FMs that has done well on the Council before, or deserves another chance.
Grading
CMs:
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2194 | ilich | 280 | 11012887 |
644 | lkskrn | 27 | 1061957 |
361 | blackmass | 21 | 825967 |
635 | xfactorus | 27 | 1061957 |
2574 | alexznet | 21 | 825967 |
867 | xandrell | 51 | 2005919 |
321 | freakstatic_council | 25 | 983294 |
957 | leet_joy | 13 | 511313 |
1842 | uliczny | 22 | 865298 |
2462 | chiffah | 148 | 5821098 |
2 | tomato | 291 | 11445537 |
2137 | kalpakci | 27 | 1061957 |
2329 | laura | 285+75 | 11209546+ |
790 | ururu | 29 | 1140620 |
1048 | igrex | 258 | 10147589 |
2182 | isonar | 477 | 18761240 |
SUM | 16 | 2427 | 81253056 |
Workers:
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2098 | 0x2bc | 350 | 13766109 |
Paid out at blocks #2,591,063 and #2,591,098.
Section I - Council work, Proposals and Bureaucracy
23.I-1 - Proposal Clearance
- Reward:
$200
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2394000
- End Block:
#2494800
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
2194 | ilich | 26 | 97 | 17 |
644 | lkskrn | 21 | 81 | 14 |
361 | blackmass | 11 | 44 | 8 |
635 | xfactorus | 21 | 80 | 14 |
2574 | alexznet | 11 | 44 | 8 |
867 | xandrell | 20 | 74 | 13 |
321 | freakstatic_council | 19 | 69 | 12 |
957 | leet_joy | 0 | 0 | 0 |
1842 | uliczny | 14 | 50 | 9 |
2462 | chiffah | 15 | 57 | 10 |
2 | tomato | 10 | 44 | 8 |
2137 | kalpakci | 20 | 81 | 14 |
2329 | laura | 28 | 123 | 22 |
790 | ururu | 22 | 91 | 16 |
1048 | igrex | 26 | 111 | 20 |
2182 | isonar | 20 | 77 | 14 |
23.I-2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2394000
- End Block:
#2494800
- Start Block:
Purpose
The Council appeared to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Note
After seeing this play out for a while, we still have mixed feelings about it. On one had, there is clearly more discussion, questioning and disagreeing. Whereas before, all proposals were basically approved, this is no longer the case.
On the flip-side, some (smaller) traces of fractioning has happened. To address this, we are doubling down on what was said last time:
We are trying to build a strong, yet friendly community, welcoming to all. There is no reason to be rude, and personal attacks without substance will automatically void an otherwise insightful message. There are standards even when disagreeing on the internet.
Finally, note that some of the SoW and reward requirements have changed.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
For all of the above, your comment should be precise, concise, polite, and if required, well sourced. A simple "no" will get you no where.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- How clear and reasonably was the message your question/comment?
- was your argument(s) backed up by verifiable facts?
- did you link to source(s)?
- did your question(s) make it clear what your concern were?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $200)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $150)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Further:
- Only comments made in the proposal discussion will be evaluated. You can of course link to a longer post somewhere else there, but then you have to add a summary in the proposal discussion. Remember, having someones attention is not permanent.
- Stay polite, even if you are replying to a personal comment, keep it civil.
- You can only claim rewards for up to three proposals you dissented to.
- Total Cap at $1000 per KPI, eg. $500 per Term
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @igrex
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=4
- https://testnet.joystream.org/#/proposals/601
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: No, although it was a little soft on details.
- Did the vote/comment affect the outcome: Possibly
- Reward: $0
- https://testnet.joystream.org/#/proposals/613
- Cost: up to $600
- Was it a malicious, or objectively bad proposal: No, although it was a little soft on details.
- Did the vote/comment affect the outcome: Yes
- Reward: $100
- https://testnet.joystream.org/#/proposals/601
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=4
- @laura
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=6
- https://testnet.joystream.org/#/proposals/610
- Cost: up to $400
- Was it a malicious, or objectively bad proposal:
- Did the vote/comment affect the outcome: Possibly
- Reward: $75
- https://testnet.joystream.org/#/proposals/601
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: No, although it was a little soft on details.
- Did the vote/comment affect the outcome: Possibly
- Reward: $0
- https://testnet.joystream.org/#/proposals/610
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=6
23.I-3 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2394000
- End Block:
#2494800
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $270
23.I-4 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2394000
- End Block:
#2494800
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @isonar - $150
23.I-5 - Council Minutes
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2394000
- End Block:
#2494800
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2394000) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
- @ilich - $100
23.I-6 - New Fiat Pool Scheme
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2394000
- End Block:
#2494800
- Start Block:
Purpose
The community is taking a larger and more involved part of the Council voting, much to our pleasure. Let's make it more meaningful for them to do so!
An idea that's been discussed for some time now is the introduction of a way to increase the fiat pool based on the KPI performance. The exact structure of this has not been thought through, but here is one example of how it could work:
The current "baseline" for fiat pool replenishments is $1075 per week. Additionally, the fiat pool is increased at irregular intervals based on Bounty completions, and when minting new tokens as KPI rewards. Say the total achievable KPI (Council and WGs) rewards for a Term is $5000.
It must be assumed that if the all the KPIs are achieved, the Council did well (directly through Council KPIs, and indirectly for hiring good WG Leads). To reward the community for voting in a "good" Council, we could say that for every KPI dollar earned over $4000, 20% is added to the pool on a permanent basis.
On the other hand, if nothing is achieved, the Council did poorly. To punish the community for voting in a "bad" Council, we could say that for every KPI dollar under $2000, NOT earned, 20% is permanently removed from the pool.
Scope of Work
-
Come up with a percentage based increase and/or decrease of the fiat pool based on the KPI performance. Use the results from KPI 21.10 to project what the current fiat pool would have been due to the past performance. The Council must approve your proposal in order for it to count.
-
Propose other mechanism that could be used to decrease or fiat pool, based on either on-chain or off-chain events.
Reward Distribution
Grading is individual.
Weighting:
- $150
- $50
Grading
- @ilich - $0
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=8
- No approved proposal
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=8
23.7 - Expand Council Size
- Reward:
$100+$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2394000
- End Block:
#2494800
- Start Block:
Purpose
Competition for seats on the Council has gotten fierce. Although that is a good thing in almost every way, it has (at least) one bad side: It blocks entry for new, or newly dedicated, community members to show their worth.
Scope of Work
- Get a
Set Election Parameters
proposal, with a larger Council size, approved before the end of the Term.
Note that the process to get it approved is up to the Council. We decided to stick to the undefined "larger" instead of a number or range, to let the community find reasonable values.
Reward Distribution
If passed, the creator of the proposal gets $100. The Council will share a $200 bonus.
Grading
- @ilich - $100
- @chiffah - $0
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=9
- Created discussion thread, but this is not rewarded by the KPI.
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=9
Section II - Community Management
23.II-1 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
Full Term
- Start Block:
#2394000
- End Block:
#2494800
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @xandrell - $25
- @igrex - $25
- @chiffah - $25
23.II-2 - Find All PRs/Issues That Require Jsgenesis Action
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
As we are often behind on certain issues, and have multiple github repos (and discord) to monitor, assistance is often needed.
We need to compile a new list of actions required.
Scope of Work
-
Find the last issue of this sort created in the community repo, review each of the items, reference it and create a new issue (in the same format) with the still unresolved items and reference the "old one".
-
Go through the following repos, and look for open issues and PRs made by someone outside of the "organization", that has not been solved/addressed:
- joystream
- helpdesk
- hydra
- community-repo
- atlas
- founding-members
- joystream-org
- handbook
Then, go through the Discord channels (last week only), and add questions/comments that needs to be addressed.
Finally, update the issue from 1. and add the new items.
Reward Distribution
If multiple issues are created, only the best one will be rewarded.
- $50
- $100
- $200
Grading
- @isonar - $150
23.II-3 - Create new KPIs
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- @laura - $75
- 25.III-4 - Deputy Working Group Lead
23.II-4 - Minting and Burning - Part 1
- Reward:
$700
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
The platform has taken a larger interest in the minting and burning of tokens recently. We believe this is good progress from previously, and it was a large part of the reason the dreaded "Council Dissent" KPI was introduced.
Although the "Tokenomics" and the status server combined gives a good idea of the mints and burns of Tokens, they do not provide the full picture.
Note
Bumping the reward a bit, after it's been unclaimed.
Scope of Work
The list below will hopefully cover all the sources of minting and burning of tokens on the platform, with some information on how to quantify it in (parentheses) from the historical chain data:
- Minting:
- Validator rewards (event)
- Council rewards (from the Council Mint, which also funds proposals, refill is an event)
- Other Worker and Lead rewards (from the respective mints, refill is an event)
- Spending Proposals (event)
sudo
1 (event)- Other?
- Burning:
- Membership creation 2 (event)
- Exchanges (when user sends to the exchange account,
5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu
, it makes a new transfer to itself with all tokens as fees) - Extrinsics/tx fees (must be set manually, see above)
- Proposal fee (when not approved)
- Proposal slashes
- Worker and Lead slashes
- Due to an issue with the current runtime, all stakes (both role and application) for the Operations group are/were burned
- Other?
- Create a document with:
- if applicable, the event, eg.
sudo.setBalance
for each mint/burn - what values from the chain state you need to compare for each block to calculate the mint/burn for that block
- other sources of mints and burns.
- if you find one, add the information requested above
-
Write up a chunk of code (in typescript) that can be used to calculate this from the API, and comment the code to explain in words what you are trying to do/doing.
-
Create a script that, at every block:
- gets the
totalIssuance
- calculates what is minted and burned in the block
- and compares the two amounts
- if the they're not matching, return the block height(s)
- for each "group" og mint and burn, sum up the total amounts
Use the script from block #717987
to #2091600
(or at least some intervals in that range), and whenever you see a discrepancy, check the particular block, and see if you can find the source, then update script and repeat.
The deliverable is the script (with comments), in PR to the Community Repo, alongside a list of blocks that you haven't been able to "understand", and some comments on what you have tried.
sudo
always mints new tokens as KPI rewards, but on rare occasions for other purposes- when created through the Player onboarding, it's minted first
Reward Distribution
Individual grading.
- $250
- $250
- $200
Grading
- No work submitted, no rewards.
23.II-5 - Implement Community Repo Changes
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
With KPI 21.8 completed, it's time to merge and bask in the glory!
Scope of Work
- Go through all open PRs and:
- Merge those that can be
- Tag
@bwhm
and@DzhideX
on those that require jsgenesis attention - Notify/assist the people that created the "remaining" PRs.
- Create a new branch that has also cleans up after the changes from 1. Have a last look, and consider:
- Are any the files that are being read/used by other repos, or the joystream website seeing their path/name changed? If yes, notify
@bwhm
and@DzhideX
- Any other potential issues?
- Merge!
Reward Distribution
Individual grading. All items must be completed in order to earn any rewards.
Grading
- @isonar - $150
23.II-6 - Community Calls
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
As stated before, we have unfortunately not been able to follow up, assist and inform the community sufficiently for some time. Let's schedule some community calls (or similar) to remedy this!
Scope of Work
- In addition to having tried a community call or two before, we have also made a (long inactive) podcast, and Bedeho has made a number of community update videos. Although the latter will surely return soon (tm), we believe there are many topics and questions that are more suitable for other formats. Start a discussion with the community, and decide on a format for which Jsgenesis should start a weekly, or fortnightly calls with the Community. The following should be decided:
- Should it be an actual call, where everyone are free to join and ask question (Q&A)
- Pre-recorded questions by the community answered over a call, with everyone muted?
- Should it be a discussion moderated by a selected community member?
- Should it not be a call at all, but an AMA somewhere?
- Do you prefer the presentation style from Bedehos videos?
- Other?
- What should the first 3 calls cover? Although we understand there are many different topics the community wants more information about, some structure may be useful. If nothing else because people may want very different granularity.
- Topics/agenda
- Who should be present from JSG
- Can be either a name/handle, or representative of some product/feature (eg.
Atlas
)
- Can be either a name/handle, or representative of some product/feature (eg.
- Schedule a time and date next week that is suitable. Note that most of the Jsgenesis team are on UTC+2.
Reward Distribution
Individual grading. Although this must be based on feedback not just from the Council, but the entire community, a single person should lead.
Grading
- @igrex - $100
- @chiffah - $100
23.II-7 - Council Term Summary Videos
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Term end + 2 days
- Start Block:
#2494800
- End Block:
#2523600
- Start Block:
Purpose
Although the community is diligently creating Council Minutes in text format every week, a video platform should have video updates!
Scope of Work
- Record a video (in English) presenting the "highlights" of the Term, from a community point of view. The video should be recorded after the following information is secured:
- The Council Minutes
- A KPI status update, made by the Council Secretary. Example
- As many of the Term Summaries as possible.
This means the video should be recorded approximately two days after the end of the Term.
Some potential topics:
- Who were on the Council
- Fiat Pool and exchange rate changes
- Any changes to the workers or Leads?
- Did something fun happen?
-
We imagine the format will change over time, and with feedback, but in order to bootstrap it, someone has to give it a go. After you made your video, create a forum thread for feedback/discussion. Then create a text proposal with the format you opted for, and a link to the forum post.
-
Have the video re-recorded in Russian, either by yourself, or someone else.
Note
Ideally, this should be a running project (ie. no longer be a KPI) once it "settles". In the meantime, if you are fluent in both languages you can make both. If not, collaborate with someone that masters the "other" language.
Reward Distribution
Individual grading. If more than one CM creates (a) video(s), the reward is not capped. So multiple people can all earn $400 each.
Weighting:
- $300
- Soft cap, an extremely good video may earn even more.
- A 1 min short where someone is reading the Council Minutes will not earn anything.
- $50
- $150
Grading
- No work submitted, no rewards.
Section III - Working Groups
Note
While finishing these KPIs, this proposal came to our attention. Very relevant for this section of KPIs.
23.III-1 - Follow up the Storage Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Note
Now that a Storage Lead has been hired, we're trying this one again. Note that anyone from the Storage Provider WG can not be the "primary" on this KPI.
Although the task was "claimed", it's not clear whether all the work here is completed, so it'ss being renewed.
Scope of Work
- Establishing the new OKR system for the SPs has unfortunately stalled. The technical part is more or less complete, and will be completed for the next Council Term, so we're going to cut through and propose something more specific. The work is to find out exactly what the numbers
R_rec.L
,R_okr.L
,R_rec.W
andR_okr.W
should be:
- The Lead currently earns ~$72 per week in recurring rewards
- The Workers (ex JSG) all earn ~$30 per week in recurring rewards
- Going forward, we propose all Workers (
R_rec.W
) earn either the break-even cost in terms of hardware, or slightly below. - Whether the recurring reward for the Lead (
R_rec.L
) should be higher or lower than this isn't clear.- The Lead has extra responsibilities to running their node, which has a value
- The Lead will however potentially earn an extra income on this, as they will earn OKR rewards for the groups performance, and for Storage KPIs, which will cover most of their extra tasks
- After establishing a benchmark value for OKRs, the OKR payout scheme will mean that of max OKR payout pool, equal to
R_rec.L
+R_rec.W
, so that:- For the Group:
- For each of the 7
*
KRs that exceeds the weekly target -> 1/7th ofR_okr.W
is shared between all the SPs that reached this individual KR. - If the group on average exceeds the target for 4/7 KRs, the Lead gets a bonus equal to
R_okr.L/10
- If the group on average exceeds the target for 5/7 KRs, the Lead gets a bonus equal to
R_okr.L/5
- If the group on average exceeds the target for 6/7 KRs, the Lead gets a bonus equal to
R_okr.L/2
- If the group on average exceeds the target for 7/7 KRs, the Lead gets a bonus equal to
R_okr.L
- For each of the 7
- For the Group:
- Get these independent numbers approved by the Council, and provide specific examples of outcomes for the Workers and Lead with this schedule.
- Note that half of the OKR rewards will come from minting of new tokens, so only half of the OKR rewards needs to be accounted for in the budget.
- Further note that it's unlikely that the FULL OKR rewards (
R_okr.W
+R_okr.L
) will actually be paid out each week, so the Council can assume the budget for the SP group won't have to pay all ofR_rec.L + R_rec.W + (R_okr.W + R_okr.L)/2
.
*
Note that while the OKRs are being rolled out, the number will be lower than 7. The general process will still apply.
-
Finally, as the OKRs will be tracked starting with the next Council Term, ensure that the Lead has set the new rewards for the workers before block
#2091600
. -
Assist the Lead with their other KPIs for the Term.
The CM addressing this task should familiarize themselves with the somehwat overlapping Storage KPIs.
Reward Distribution
Individual grading.
For 3.
If the SP KPI is graded as complete, the SP Lead will decide the reward for the CM(s). If not, nothing will be granted unless there are consequences*
for the Lead.
*
Firing is not the only valid consequence
Weighting:
- 1: $250
- 2: $100
- 3: $50
Grading
- @chiffah - $0
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=10
- No work submitted.
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=10
23.III-2 - Follow up the Content Curators Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Note
This was partially completed, but extending the whole thing for context. Grading will be delayed until after it's fully done.
Scope of Work
- After the closing of Bounty 10, the amount of uploads to the platform dropped substantially. Create a report containing information about content between blocks
#717987
(first block with the current content directory) and#1998000
the following information, with charts where applicable:
- Channel creation over time
- Members with Channels over time
- Uploads over time
- Size of the
dataDirectory
over time - Curators (including Lead) over time
- Curator rewards (including Lead), both in USD and tJOY.
- Changes made to Channels and Videos over time
- Curation/Censoring over time
Note that the information for the first 3 bullets above can be generated from the Hydra Playground, whereas the rest will require getting historical data from the chain. In the latter case, getting data for every 14400 blocks (eg. every day) is sufficient. The historical exchange rate can be derived from the status server.
-
Use the data, and compare to the previous Curator Lead reports to get an estimate of the workload over time for the Curators, and compare the result to what was found in 1.
-
Use the results as a baseline to review the current budget for the Curator group, keeping in mind that the workload is expected to go up (substantially) once the "new" content bounty is live.
-
Assist the Curator Lead with their Curator KPI, KPI 19.CC-1.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $150
- 2: $100
-
- $50
-
- $100
Grading
- @lkskrn - $0
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=5
- Grading deferred as work is incomplete. This KPI was extended so will be graded once work is submitted.
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=5
23.III-3 - Follow up the Operations Working Group
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
For our next release, we are planning on adding two more Operations groups. How to organize them is another thing!
Scope of Work
- Discuss the downsides and benefits with each of the approaches below:
- Separate the groups in two specific fields, such as:
- Marketing
- Coding (general)
- Front-end
- Scripts and tools
- Moderators
- etc.
- Have three independent groups, with no group-specific overarching theme, but assign new tasks to a specific group every time.
- Have the groups "compete", with all teams competing for the same tasks
Reward Distribution
Grading is individual.
Grading
- @chiffah - $0
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=10
- No work submitted.
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=10
Section IV - Bounties
23.IV.1 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
23.IV.2 - Other Bounty Managers
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
We have lost track on the status of our bounties. Let's get back on track!
Scope of Work
For each of these open Bounties (#9, #16, #20, #21, #23), prepare a status update with the following information:
- What has been started and completed? What is remaining?
- Must include links to forum posts/github issues and PRs and proposals.
- How much has been paid out by the Council? To whom?
- Must include links to all spending proposals and PRs.
- How much has been paid out by JSG?
- Is there any action (review/payout/deploy/etc.) on JSG?
- Is there a BM currently assigned?
- Any other information to report?
Note that if you have participated OR is, or have been, a BM for one of the Bounties, please make that clear!
Reward Distribution
Individual.
Weighting:
-
9 : $100
-
16, #20, #21, #23 : $50
Grading
- No work submitted, no rewards.
23.IV.3 - Decentralized Domains Bounty
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
We want to create a new Bounty for researching blockchain based decentralized domain name systems. To avoid having the Bounty require some of the success events being completed before we can move forward with the next ones, let's do some of the pre-work as bounties!
Scope of Work
Currently, there are at least a couple of projects focusing on blockchain based decentralized domains, such as:
We find this concept very interesting, and would love for the community to research these concepts further.
- Find Projects in the Substrate Space
As we are building on substrate, it's easy to argue substrate based projects would be "best". Research if there are any actors in the space, and report back some "generic information":
- Project Website
- Project status (is it "live" and working?)
- Supported blockchain(s)
- Supported browser(s)
- Is
joystream.something
available?- If yes, a 100$ bonus is added per project (not domain) IF:
- Instructions to claim are added
- This information is DM'ed to
bwhm#6514
on discord, so that I can claim it before anyone else :)
- Find Other Projects in the Blockchain Space
Research if there are any actors in the space, and report back some "generic information":
- Project Website
- Project status (is it "live" and working?)
- Supported blockchain(s)
- Supported browser(s)
- Is
joystream.something
free?- If yes, a 50$ bonus is added per project (not domain) IF:
- Instructions to claim are added
- This information is DM'ed to
bwhm#6514
on discord, so that I can claim it before anyone else :)
Reward Distribution
Individual grading.
If more than one person creates reports on this, the first one for each project earns the reward.
Weighting:
- 1: $100 per project, capped at $300 (not including the
joystream.something
part) - 2: $25 per project, capped at $200 (not including the
joystream.something
part)
Grading
- @laura - $175
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=6
- Apparently a misunderstanding regarding the SOW. Nice overview of all(?) the projects in the space, but not clear which ones are related to the actual SOW.
- Found 3 projects, and two sets of domains - ($75+$100)
- https://testnet.joystream.org/#/forum/threads/628?replyIdx=6
Working Group KPIs
We are trying out new ways of rewarding the Working Groups, for multiple reasons.
The Working Group KPIs will, at least for this Council Term, work like so:
- The Lead assigns a group or individual to the task (they can choose themselves).
- The Lead (if the position is occupied), must fill out the Term Summary and regardless if the task was assigned to a worker, or performed themselves.
- Unless otherwise noted, all subtasks must be completed. If not, no rewards will be given.
23.CC-1 - TBD
23.OP-1 - Runtime Upgrade Verification
- Reward:
$300
- Start Block:
#2401200
- End Block:
#2494800
- Start Block:
Purpose
With KPI 17.OP-1), the runtime upgrade was tested. However, the results weren't straight forward to parse. We need to verify exactly what happened, before we perform the upgrade on the real testnet!
Note that an updated version of pioneer can be found here, and that you can use the endpoint wss://staging-3.joystream.app/rpc
for both pioneer and the API. Also note that the noteworthy fixes in this runtime upgrade was to:
- Fix the bug that caused all stakes when applying to the
operations
group caused the role and application stakes to get burned. - Increase the max mint capacity increase through proposals from 5,000,000 to 50,000,000.
Note
Extended from last KPI round, with small reward increase.
Scope of Work
-
After the proposed testing protocol was shared on Discord, I replied with some extra tasks. Although the tasks appear to have been performed, it's not easy to confirm from the results. Go through the list, and verify everything was done.
-
Using the Member IDs, worker IDs, block heights, membership and worker accounts listed in the report, get the historical chain data from the applicable reports and test/verify for each opening and application:
- What was the opening ID, opening parameters (max applicants, application/role stake, rewards and the various unstaking parameters)
- Was the opening created before or after the runtime upgrade
- What was the member ID, member handle, membership root/controller account, and role account
- Was the application made before or after the runtime upgrade
- What was the balance of each account, and the total issuance, on the block, and the block before, the member:
- applied
- was crowded out, not hired or hired
- if hired:
- fired or quit
- note that if the unstaking parameter was >0, you need to check the block + the applicable unstaking value
- note that if they were hired, they may have earned rewards that further complicates things
- they may also have received tokens from other addresses/rewards in the window
- also note that if the same member applied to multiple openings, you need to keep track of all stakes/values/rewards
After having generated all this information, create a report containing all the numbers above, an explanation of what you think happened, and whether the bug was fixed.
Grading
- No work submitted, no rewards.
23.SP-1 - Storage OKRs
- Reward:
$300
- Start Block:
#2394000
- End Block:
#2494800
Note that this task is shared between the Operations Lead and the Storage Provider Lead. Ideally, they'll either co-operate, or delegate to workers in their respective groups to co-operate.
Purpose
We still believe OKRs to be a good way to reward the Storage Provider Lead, and workers. However, the actual OKRs needs to be settled, and some benchmark numbers must be established.
Although the task was "claimed", it's not clear whether all the work here is completed, so it's being renewed.
Scope of Work
- Review the Storage OKRs here.
- Review the proposed Key Results 1 - uptime, 5 - Rendering Time, and 6 - Upload Speed, and:
- Are there any changes required to these?
- What tools, not already available (eg.
helios
and joystreamstats.live has some helpful tools already) are needed to start measuring these right away? - Add examples, and improve the instructions and notations used so that the Council, Storage Providers and others understand exactly what and how is being measured, how it's going to be graded, and how frequently the should be measured
Feel free to co-ordinate with the Operations group if additional technical support is needed.
- Deploy a script that measures the data you can, and share the script so that others can do so.
- Finally, review the proposed OKR system outlined in KPI 19.9, and the numbers that come out of it.
Grading
- @0x2bc - $300
- @freakstatic
23.SP-2 - Storage Provider Sanctions
- Reward:
$50
- Start Block:
#2394000
- End Block:
#2494800
Purpose
Although the OKR system will make it less profitable to be an underperforming SP on paper, the savings in costs by running a "cheap" node may break that assumption. Although we believe the Lead should have some subjective decision making power in deciding when the sanction a Worker, some objective data should be made available for the benefit of all parties. That doesn't mean that for long running SPs, with a great track record, some underperformance for some time is accepted.
Although the task was "claimed", it's not clear whether all the work here is completed, so it'ss being renewed.
Scope of Work
- Based on OKR related data, and/or other criteria, create a set of rules that could or should lead to the firing, slashing, or other sanctions agains an SP.
Grading
KPI 22
- KPIs:
15+3
- Total Possible Rewards:
$4075+650
- Council Elected in Round:
24
- Council Members:
16
- KPI Length:
7 days / 100800 blocks
- Start Block/Date:
#2293200 / 15.09.21
- End Block/Date:
#2394000 / 21.09.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#2422800 / 23.09.21
Notes
- As stated in the last round, we moved away from the fortnightly KPIs. We're keeping the notes below to avoid any further confusion.
- One thing we will keep from the failed attempt is that new KPIs may be added during the Term.
- A new introduction of this KPI is "permissions", in an attempt to reduce the occasional conflict of interest that may arise when you have a CM working on a (Council) KPI for a WG they are a part of. By default, all CMs can work on all Council KPIs (eg. all but the WG KPIs at the end), whereas for the WG KPIs, the Lead can assign anyone from their group.
Grading
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
1905 | kate_fm | 18 | 728545 |
2194 | ilich | 346 | 14004263 |
644 | lkskrn | 207 | 8378273 |
361 | blackmass | 3 | 121424 |
635 | xfactorus | 13 | 526172 |
867 | xandrell | 22 | 890444 |
321 | freakstatic_council | 114 | 4614121 |
2462 | chiffah | 148 | 5990263 |
2 | tomato | 282 | 11413879 |
736 | mmsaww | 14 | 566646 |
2137 | kalpakci | 13 | 526172 |
2329 | laura | 272 | 11009131 |
790 | ururu | 15 | 607121 |
2130 | maxlevush | 163 | 6597384 |
2435 | zazik | 16 | 647596 |
513 | kriptos | 15 | 607121 |
SUM | 16 | 1661 | 67228555 |
Paid out on blocks #2,437,365 and #2,437,366.
Section I - Council work, Proposals and Bureaucracy
22.1 - Proposal Clearance
- Reward:
$200
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2293200
- End Block:
#2394000
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
1905 | kate_fm | 22 | 90 | 18 |
2194 | ilich | 20 | 76 | 16 |
644 | lkskrn | 7 | 34 | 7 |
361 | blackmass | 4 | 16 | 3 |
635 | xfactorus | 16 | 64 | 13 |
867 | xandrell | 15 | 57 | 12 |
321 | freakstatic_council | 15 | 67 | 14 |
2462 | chiffah | 22 | 87 | 18 |
2 | tomato | 3 | 12 | 2 |
736 | mmsaww | 5 | 20 | 4 |
2137 | kalpakci | 16 | 61 | 13 |
2329 | laura | 24 | 105 | 22 |
790 | ururu | 18 | 72 | 15 |
2130 | maxlevush | 15 | 61 | 13 |
2435 | zazik | 17 | 78 | 16 |
513 | kriptos | 19 | 73 | 15 |
SUM | 16 | 238 | 973 | 200 |
22.2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2293200
- End Block:
#2394000
- Start Block:
Purpose
The Council appeared to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Note
After seeing this play out for a while, we still have mixed feelings about it. On one had, there is clearly more discussion, questioning and disagreeing. Whereas before, all proposals were basically approved, this is no longer the case.
On the flip-side, some (smaller) traces of fractioning has happened. To address this, we are doubling down on what was said last time:
We are trying to build a strong, yet friendly community, welcoming to all. There is no reason to be rude, and personal attacks without substance will automatically void an otherwise insightful message. There are standards even when disagreeing on the internet.
Finally, note that some of the SoW and reward requirements have changed.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
For all of the above, your comment should be precise, concise, polite, and if required, well sourced. A simple "no" will get you no where.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- How clear and reasonably was the message your question/comment?
- was your argument(s) backed up by verifiable facts?
- did you link to source(s)?
- did your question(s) make it clear what your concern were?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $200)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $150)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Further:
- Only comments made in the proposal discussion will be evaluated. You can of course link to a longer post somewhere else there, but then you have to add a summary in the proposal discussion. Remember, having someones attention is not permanent.
- Stay polite, even if you are replying to a personal comment, keep it civil.
- You can only claim rewards for up to three proposals you dissented to.
- Total Cap at $1000 per KPI, eg. $500 per Term
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @laura
- https://testnet.joystream.org/#/proposals/584
- Cost: $500+
- Was it a malicious, or objectively bad proposal: No
- Did the vote/comment affect the outcome: Possibly, but it was made quite late.
- Reward: $50
22.3 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2293200
- End Block:
#2394000
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $280
22.4 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2293200
- End Block:
#2394000
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @maxlevush - $150
22.5 - Council Minutes
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2293200
- End Block:
#2394000
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2293200) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
- @freakstatic - $100
22.6 - New Fiat Pool Scheme
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2293200
- End Block:
#2394000
- Start Block:
Purpose
The community is taking a larger and more involved part of the Council voting, much to our pleasure. Let's make it more meaningful for them to do so!
An idea that's been discussed for some time now is the introduction of a way to increase the fiat pool based on the KPI performance. The exact structure of this has not been thought through, but here is one example of how it could work:
The current "baseline" for fiat pool replenishments is $1075 per week. Additionally, the fiat pool is increased at irregular intervals based on Bounty completions, and when minting new tokens as KPI rewards. Say the total achievable KPI (Council and WGs) rewards for a Term is $5000.
It must be assumed that if the all the KPIs are achieved, the Council did well (directly through Council KPIs, and indirectly for hiring good WG Leads). To reward the community for voting in a "good" Council, we could say that for every KPI dollar earned over $4000, 20% is added to the pool on a permanent basis.
On the other hand, if nothing is achieved, the Council did poorly. To punish the community for voting in a "bad" Council, we could say that for every KPI dollar under $2000, NOT earned, 20% is permanently removed from the pool.
Scope of Work
-
Come up with a percentage based increase and/or decrease of the fiat pool based on the KPI performance. Use the results from KPI 21.10 to project what the current fiat pool would have been due to the past performance. The Council must approve your proposal in order for it to count.
-
Propose other mechanism that could be used to decrease or fiat pool, based on either on-chain or off-chain events.
Reward Distribution
Grading is individual.
Weighting:
- $150
- $50
Grading
- @ilich - $0
- https://testnet.joystream.org/#/forum/threads/614?replyIdx=5
- https://testnet.joystream.org/#/forum/threads/612
- https://testnet.joystream.org/#/proposals/584
- Proposal was rejected by the council, no rewards.
Section II - Community Management
22.7 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
Full Term
- Start Block:
#2293200
- End Block:
#2394000
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @xandrell - $10
- @mmsaww - $10
- @chiffah - $55
22.8 - Find All PRs/Issues That Require Jsgenesis
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
As we are often behind on certain issues, and have multiple github repos (and discord) to monitor, assistance is often needed.
We need to compile a new list of actions required.
Scope of Work
-
Find the last issue of this sort created in the community repo, review each of the items, reference it and create a new issue (in the same format) with the still unresolved items and reference the "old one".
-
Go through the following repos, and look for open issues and PRs made by someone outside of the "organization", that has not been solved/addressed:
- joystream
- helpdesk
- hydra
- community-repo
- atlas
- founding-members
- joystream-org
- handbook
Then, go through the Discord channels (last week only), and add questions/comments that needs to be addressed.
Finally, update the issue from 1. and add the new items.
Reward Distribution
If multiple issues are created, only the best one will be rewarded.
- $50
- $100
Grading
- No work submitted, no rewards.
22.9 - Create new KPIs
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- @laura
- https://testnet.joystream.org/#/forum/threads/614?replyIdx=4
- Reward to be assesed when KPI is "used" or not.
22.10 - KPIs Overview
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
The community has started voting as a unit, to ensure that a new Council is working well. As they have somewhat limited data to make that judgement, let's make it easier!
Note
SOW 1-3 was completed in KPI 21.10, but trying SOW 4 once more, with slightly higher rewards!
Scope of Work
- Get the stake for each CM for every Term. Note that unlike 1-3, this data must come from historical chain data. Should be separated in four datapoints:
- Own stake
- Other stake
- If applicable, how much of the "other" stake was from JSG (
5CJzTaCp5fuqG7NdJQ6oUCwdmFHKichew8w4RZ3zFHM8qSe6
) - If applicable, how much of the "other" stake was themselves (eg. membership
root
and/orctrl
account)
Reward Distribution
Individual grading.
Grading
- @lkskrn - $200
22.11 - Minting and Burning - Part 1
- Reward:
$700
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
The platform has taken a larger interest in the minting and burning of tokens recently. We believe this is good progress from previously, and it was a large part of the reason the dreaded "Council Dissent" KPI was introduced.
Although the "Tokenomics" and the status server combined gives a good idea of the mints and burns of Tokens, they do not provide the full picture.
Note
Bumping the reward a bit, after it's been unclaimed.
Scope of Work
The list below will hopefully cover all the sources of minting and burning of tokens on the platform, with some information on how to quantify it in (parentheses) from the historical chain data:
- Minting:
- Validator rewards (event)
- Council rewards (from the Council Mint, which also funds proposals, refill is an event)
- Other Worker and Lead rewards (from the respective mints, refill is an event)
- Spending Proposals (event)
sudo
1 (event)- Other?
- Burning:
- Membership creation 2 (event)
- Exchanges (when user sends to the exchange account,
5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu
, it makes a new transfer to itself with all tokens as fees) - Extrinsics/tx fees (must be set manually, see above)
- Proposal fee (when not approved)
- Proposal slashes
- Worker and Lead slashes
- Due to an issue with the current runtime, all stakes (both role and application) for the Operations group are/were burned
- Other?
- Create a document with:
- if applicable, the event, eg.
sudo.setBalance
for each mint/burn - what values from the chain state you need to compare for each block to calculate the mint/burn for that block
- other sources of mints and burns.
- if you find one, add the information requested above
-
Write up a chunk of code (in typescript) that can be used to calculate this from the API, and comment the code to explain in words what you are trying to do/doing.
-
Create a script that, at every block:
- gets the
totalIssuance
- calculates what is minted and burned in the block
- and compares the two amounts
- if the they're not matching, return the block height(s)
- for each "group" og mint and burn, sum up the total amounts
Use the script from block #717987
to #2091600
(or at least some intervals in that range), and whenever you see a discrepancy, check the particular block, and see if you can find the source, then update script and repeat.
The deliverable is the script (with comments), in PR to the Community Repo, alongside a list of blocks that you haven't been able to "understand", and some comments on what you have tried.
sudo
always mints new tokens as KPI rewards, but on rare occasions for other purposes- when created through the Player onboarding, it's minted first
Reward Distribution
Individual grading.
- $250
- $250
- $200
Grading
- No work submitted, no rewards.
Section III - Working Groups
Note
While finishing these KPIs, this proposal came to our attention. Very relevant for this section of KPIs.
22.12 - Follow up the Storage Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Note
Now that a Storage Lead has been hired, we're trying this one again. Note that anyone from the Storage Provider WG can not be the "primary" on this KPI.
Scope of Work
- Establishing the new OKR system for the SPs has unfortunately stalled. The technical part is more or less complete, and will be completed for the next Council Term, so we're going to cut through and propose something more specific. The work is to find out exactly what the numbers
R_rec.L
,R_okr.L
,R_rec.W
andR_okr.W
should be:
- The Lead currently earns ~$72 per week in recurring rewards
- The Workers (ex JSG) all earn ~$30 per week in recurring rewards
- Going forward, we propose all Workers (
R_rec.W
) earn either the break-even cost in terms of hardware, or slightly below. - Whether the recurring reward for the Lead (
R_rec.L
) should be higher or lower than this isn't clear.- The Lead has extra responsibilities to running their node, which has a value
- The Lead will however potentially earn an extra income on this, as they will earn OKR rewards for the groups performance, and for Storage KPIs, which will cover most of their extra tasks
- After establishing a benchmark value for OKRs, the OKR payout scheme will mean that of max OKR payout pool, equal to
R_rec.L
+R_rec.W
, so that:- For the Group:
- For each of the 7
*
KRs that exceeds the weekly target -> 1/7th ofR_okr.W
is shared between all the SPs that reached this individual KR. - If the group on average exceeds the target for 4/7 KRs, the Lead gets a bonus equal to
R_okr.L/10
- If the group on average exceeds the target for 5/7 KRs, the Lead gets a bonus equal to
R_okr.L/5
- If the group on average exceeds the target for 6/7 KRs, the Lead gets a bonus equal to
R_okr.L/2
- If the group on average exceeds the target for 7/7 KRs, the Lead gets a bonus equal to
R_okr.L
- For each of the 7
- For the Group:
- Get these independent numbers approved by the Council, and provide specific examples of outcomes for the Workers and Lead with this schedule.
- Note that half of the OKR rewards will come from minting of new tokens, so only half of the OKR rewards needs to be accounted for in the budget.
- Further note that it's unlikely that the FULL OKR rewards (
R_okr.W
+R_okr.L
) will actually be paid out each week, so the Council can assume the budget for the SP group won't have to pay all ofR_rec.L + R_rec.W + (R_okr.W + R_okr.L)/2
.
*
Note that while the OKRs are being rolled out, the number will be lower than 7. The general process will still apply.
-
Finally, as the OKRs will be tracked starting with the next Council Term, ensure that the Lead has set the new rewards for the workers before block
#2091600
. -
Assist the Lead with their other KPIs for the Term.
The CM addressing this task should familiarize themselves with the somehwat overlapping Storage KPIs.
Reward Distribution
Individual grading.
For 3.
If the SP KPI is graded as complete, the SP Lead will decide the reward for the CM(s). If not, nothing will be granted unless there are consequences*
for the Lead.
*
Firing is not the only valid consequence
Weighting:
- 1: $250
- 2: $100
- 3: $50
Grading
- @chiffah
- https://testnet.joystream.org/#/forum/threads/614?replyIdx=9
- Grading deferred as work is not complete
- https://testnet.joystream.org/#/forum/threads/614?replyIdx=9
22.13 - Follow up the Content Curators Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Note
This was partially completed, but extending the whole thing for context. Grading will be delayed until after it's fully done.
Scope of Work
- After the closing of Bounty 10, the amount of uploads to the platform dropped substantially. Create a report containing information about content between blocks
#717987
(first block with the current content directory) and#1998000
the following information, with charts where applicable:
- Channel creation over time
- Members with Channels over time
- Uploads over time
- Size of the
dataDirectory
over time - Curators (including Lead) over time
- Curator rewards (including Lead), both in USD and tJOY.
- Changes made to Channels and Videos over time
- Curation/Censoring over time
Note that the information for the first 3 bullets above can be generated from the Hydra Playground, whereas the rest will require getting historical data from the chain. In the latter case, getting data for every 14400 blocks (eg. every day) is sufficient. The historical exchange rate can be derived from the status server.
-
Use the data, and compare to the previous Curator Lead reports to get an estimate of the workload over time for the Curators, and compare the result to what was found in 1.
-
Use the results as a baseline to review the current budget for the Curator group, keeping in mind that the workload is expected to go up (substantially) once the "new" content bounty is live.
-
Assist the Curator Lead with their Curator KPI, KPI 19.CC-1.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $150
- 2: $100
-
- $50
-
- $100
Grading
- No work submitted, no rewards.
22.14 - Follow up the Operations Working Group
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
Note
This was partially completed, but extending the whole thing for context. Grading will be delayed until after it's fully done.
Scope of Work
-
The Operations group regularly presents interesting work that can enhance the platform. Get a an updated, and exhaustive list of what they want to achieve, and present it to the Council, in order to get a ranking of what the Council wants them to focus on. Note that this requires understanding not only what the end product is, but also insight about the complexity, value and time line for each of them.
-
Once the results are in from the first Term, repeat the process for the second Council. Once the "final" results are in, co-operate with the Lead to get a firm timeline and manpower required for the top 3 items.
Reward Distribution
Grading is individual.
Grading
- @chiffah - $75
- https://testnet.joystream.org/#/forum/threads/614?replyIdx=9
- Does not include information about
complexity, value and time line for each of them
- Does not include a
firm timeline and manpower required for the top 3 items
- Does not include information about
- https://testnet.joystream.org/#/forum/threads/614?replyIdx=9
Section IV - Bounties
22.15 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
- Bounty 9 ($25-$50)
- @ilich - $50
22.16 - Other Bounty Managers
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
We have lost track on the status of our bounties. Let's get back on track!
Scope of Work
For each of these open Bounties (#9, #16, #20, #21, #23), prepare a status update with the following information:
- What has been started and completed? What is remaining?
- Must include links to forum posts/github issues and PRs and proposals.
- How much has been paid out by the Council? To whom?
- Must include links to all spending proposals and PRs.
- How much has been paid out by JSG?
- Is there any action (review/payout/deploy/etc.) on JSG?
- Is there a BM currently assigned?
- Any other information to report?
Note that if you have participated OR is, or have been, a BM for one of the Bounties, please make that clear!
Reward Distribution
Individual.
Weighting:
-
9 : $100
-
16, #20, #21, #23 : $50
Grading
- @ilich - $280
- https://testnet.joystream.org/#/forum/threads/614?replyIdx=5
- https://docs.google.com/spreadsheets/d/1gVFBbCbCY6wLwNsk1aT93_2yjJs1afXYIBX_QrJWv1Q/edit?usp=sharing
- Doesn't include links to github issues, but otherwise fulfills the requirements
22.17 - Decentralized Domains Bounty
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
We want to create a new Bounty for researching blockchain based decentralized domain name systems. To avoid having the Bounty require some of the success events being completed before we can move forward with the next ones, let's do some of the pre-work as bounties!
Scope of Work
Currently, there are at least a couple of projects focusing on blockchain based decentralized domains, such as:
We find this concept very interesting, and would love for the community to research these concepts further.
- Find Projects in the Substrate Space
As we are building on substrate, it's easy to argue substrate based projects would be "best". Research if there are any actors in the space, and report back some "generic information":
- Project Website
- Project status (is it "live" and working?)
- Supported blockchain(s)
- Supported browser(s)
- Is
joystream.something
available?- If yes, a 100$ bonus is added per project (not domain) IF:
- Instructions to claim are added
- This information is DM'ed to
bwhm#6514
on discord, so that I can claim it before anyone else :)
- Find Other Projects in the Blockchain Space
Research if there are any actors in the space, and report back some "generic information":
- Project Website
- Project status (is it "live" and working?)
- Supported blockchain(s)
- Supported browser(s)
- Is
joystream.something
free?- If yes, a 50$ bonus is added per project (not domain) IF:
- Instructions to claim are added
- This information is DM'ed to
bwhm#6514
on discord, so that I can claim it before anyone else :)
Reward Distribution
Individual grading.
If more than one person creates reports on this, the first one for each project earns the reward.
Weighting:
- 1: $100 per project, capped at $300 (not including the
joystream.something
part) - 2: $25 per project, capped at $200 (not including the
joystream.something
part)
Grading
- The work for this was submitted after the council term ended. Grading will be deferrred until the next council term. This KPI was continued in KPI 23.x.
Working Group KPIs
We are trying out new ways of rewarding the Working Groups, for multiple reasons.
The Working Group KPIs will, at least for this Council Term, work like so:
- The Lead assigns a group or individual to the task (they can choose themselves).
- The Lead (if the position is occupied), must fill out the Term Summary and regardless if the task was assigned to a worker, or performed themselves.
- Unless otherwise noted, all subtasks must be completed. If not, no rewards will be given.
22.CC-1 - Bounty 18 Status Update
- Reward:
$200
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
See KPI 21.16!
Scope of Work
Same as KPI 21.16, but for Bounty 18.
Grading
22.OP-1 - Runtime Upgrade Verification
- Reward:
$300
- Start Block:
#2300400
- End Block:
#2386800
- Start Block:
Purpose
With KPI 17.OP-1), the runtime upgrade was tested. However, the results weren't straight forward to parse. We need to verify exactly what happened, before we perform the upgrade on the real testnet!
Note that an updated version of pioneer can be found here, and that you can use the endpoint wss://staging-3.joystream.app/rpc
for both pioneer and the API. Also note that the noteworthy fixes in this runtime upgrade was to:
- Fix the bug that caused all stakes when applying to the
operations
group caused the role and application stakes to get burned. - Increase the max mint capacity increase through proposals from 5,000,000 to 50,000,000.
Note
Extended from last KPI round, with small reward increase.
Scope of Work
-
After the proposed testing protocol was shared on Discord, I replied with some extra tasks. Although the tasks appear to have been performed, it's not easy to confirm from the results. Go through the list, and verify everything was done.
-
Using the Member IDs, worker IDs, block heights, membership and worker accounts listed in the report, get the historical chain data from the applicable reports and test/verify for each opening and application:
- What was the opening ID, opening parameters (max applicants, application/role stake, rewards and the various unstaking parameters)
- Was the opening created before or after the runtime upgrade
- What was the member ID, member handle, membership root/controller account, and role account
- Was the application made before or after the runtime upgrade
- What was the balance of each account, and the total issuance, on the block, and the block before, the member:
- applied
- was crowded out, not hired or hired
- if hired:
- fired or quit
- note that if the unstaking parameter was >0, you need to check the block + the applicable unstaking value
- note that if they were hired, they may have earned rewards that further complicates things
- they may also have received tokens from other addresses/rewards in the window
- also note that if the same member applied to multiple openings, you need to keep track of all stakes/values/rewards
After having generated all this information, create a report containing all the numbers above, an explanation of what you think happened, and whether the bug was fixed.
Grading
- No work submitted, no rewards.
22.SP-1 - Storage OKRs
- Reward:
$300
- Start Block:
#2293200
- End Block:
#2394000
Note that this task is shared between the Operations Lead and the Storage Provider Lead. Ideally, they'll either co-operate, or delegate to workers in their respective groups to co-operate.
Purpose
We still believe OKRs to be a good way to reward the Storage Provider Lead, and workers. However, the actual OKRs needs to be settled, and some benchmark numbers must be established.
This has dragged out for far too long. Rewards increased again.
Scope of Work
- Review the Storage OKRs here.
- Review the proposed Key Results 1 - uptime, 5 - Rendering Time, and 6 - Upload Speed, and:
- Are there any changes required to these?
- What tools, not already available (eg.
helios
and joystreamstats.live has some helpful tools already) are needed to start measuring these right away? - Add examples, and improve the instructions and notations used so that the Council, Storage Providers and others understand exactly what and how is being measured, how it's going to be graded, and how frequently the should be measured
Feel free to co-ordinate with the Operations group if additional technical support is needed.
- Deploy a script that measures the data you can, and share the script so that others can do so.
- Finally, review the proposed OKR system outlined in KPI 19.9, and the numbers that come out of it.
Grading
- @freakstatic_council
- https://testnet.joystream.org/#/forum/threads/614?replyIdx=7
- Still in progress, grading deferred.
22.SP-2 - Storage Provider Sanctions
- Reward:
$50
- Start Block:
#2293200
- End Block:
#2394000
Purpose
Although the OKR system will make it less profitable to be an underperforming SP on paper, the savings in costs by running a "cheap" node may break that assumption. Although we believe the Lead should have some subjective decision making power in deciding when the sanction a Worker, some objective data should be made available for the benefit of all parties. That doesn't mean that for long running SPs, with a great track record, some underperformance for some time is accepted.
Scope of Work
- Based on OKR related data, and/or other criteria, create a set of rules that could or should lead to the firing, slashing, or other sanctions agains an SP.
Grading
- No work submitted, no rewards.
KPI 21
- KPIs:
16+3
- Total Possible Rewards:
$4125+$350
- Council Elected in Round:
23
- Council Members:
16
- KPI Length:
7 days / 100800 blocks
- Start Block/Date:
#2192400 / 07.09.21
- End Block/Date:
#2293200 / 14.09.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#2293200 / 16.09.21
Notes
- After attempting moving to two terms per KPI set last time, we realized it wasn't really worth the confusion, and are moving back to the "old" way.
- One thing we will keep from the failed attempt is that new KPIs may be added during the Term.
- A new introduction of this KPI is "permissions", in an attempt to reduce the occasional conflict of interest that may arise when you have a CM working on a (Council) KPI for a WG they are a part of. By default, all CMs can work on all Council KPIs (eg. all but the WG KPIs at the end), whereas for the WG KPIs, the Lead can assign anyone from their group.
Grading
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
2194 | ilich | 65 | 2624282 |
644 | lkskrn | 17 | 686351 |
361 | blackmass | 11 | 444109 |
515 | l1dev | 10 | 403736 |
2096 | svasilenko | 89 | 3593247 |
867 | xandrell | 42 | 1695690 |
321 | freakstatic_council | 18 | 726724 |
957 | leet_joy | 2 | 80747 |
2703 | strowdeath | 11 | 444109 |
2462 | chiffah | 141 | 5692673 |
2 | tomato | 280 | 11304598 |
2329 | laura | 143 | 5773420 |
705 | flakes9776 | 36 | 1453448 |
2130 | maxlevush | 166 | 6702012 |
2182 | isonar | 482 | 19460058 |
2154 | marat_mu | 108 | 4360345 |
SUM | 16 | 1621 | 65445549 |
Paid out at block #2,376,668.
Section I - Council work, Proposals and Bureaucracy
21.1 - Proposal Clearance
- Reward:
$200
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
2194 | ilich | 22 | 89 | 15 |
644 | lkskrn | 27 | 103 | 17 |
361 | blackmass | 16 | 64 | 11 |
515 | l1dev | 15 | 63 | 10 |
2096 | svasilenko | 21 | 86 | 14 |
867 | xandrell | 26 | 101 | 17 |
321 | freakstatic_council | 25 | 107 | 18 |
957 | leet_joy | 3 | 12 | 2 |
2703 | strowdeath | 17 | 66 | 11 |
2462 | chiffah | 24 | 97 | 16 |
2 | tomato | 15 | 62 | 10 |
2329 | laura | 28 | 109 | 18 |
705 | flakes9776 | 17 | 68 | 11 |
2130 | maxlevush | 23 | 98 | 16 |
2182 | isonar | 10 | 42 | 7 |
2154 | marat_mu | 12 | 48 | 8 |
SUM | 16 | 301 | 1215 | 200 |
21.2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
The Council appeared to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Note
After seeing this play out for a while, we still have mixed feelings about it. On one had, there is clearly more discussion, questioning and disagreeing. Whereas before, all proposals were basically approved, this is no longer the case.
On the flip-side, some (smaller) traces of fractioning has happened. To address this, we are doubling down on what was said last time:
We are trying to build a strong, yet friendly community, welcoming to all. There is no reason to be rude, and personal attacks without substance will automatically void an otherwise insightful message. There are standards even when disagreeing on the internet.
Finally, note that some of the SoW and reward requirements have changed.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
For all of the above, your comment should be precise, concise, polite, and if required, well sourced. A simple "no" will get you no where.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- How clear and reasonably was the message your question/comment?
- was your argument(s) backed up by verifiable facts?
- did you link to source(s)?
- did your question(s) make it clear what your concern were?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $200)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $150)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Further:
- Only comments made in the proposal discussion will be evaluated. You can of course link to a longer post somewhere else there, but then you have to add a summary in the proposal discussion. Remember, having someones attention is not permanent.
- Stay polite, even if you are replying to a personal comment, keep it civil.
- You can only claim rewards for up to three proposals you dissented to.
- Total Cap at $1000 per KPI, eg. $500 per Term
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @laura
- https://testnet.joystream.org/#/proposals/562
- Cost: $500+
- Was it a malicious, or objectively bad proposal: No, but it was a highly expensive bounty request.
- Did the vote/comment affect the outcome: No, but it did generate discussion.
- Reward: $50
- https://testnet.joystream.org/#/proposals/562
21.3 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $270
- Managing PR's in community repo per rules: Yes
- Signing off on all reports - Yes
- Assisting and support other CMs - Yes
- Monitor the bounties - Yes
- Council mint refilled - Yes
- Notify Jsgenesis of network issues - Yes
- Report on progress - Yes
- Term summaries - Yes
- Bounty JSON updated: No
- Council wrangling in #council channel - Yes
21.4 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @maxlevush - $150
21.5 - Council Minutes
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2192400) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
- @isonar - $100
21.6 - FM Surveys
- Reward:
$75
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
We are still trying to figure out exactly why we don't see more FM submissions from the Working Groups. These specific Surveys are likely to be a recurring KPI. Note that these are not anonymous!
Scope of Work
- Have the Council Members fill out this survey. All CMs that does gets a $15 bonus.
- Have the Content Curators fill out this survey. At the time of writing, there are 6 workers + (1 the lead). For each CC after the 4th one, $25 will be awarded to the CM(s) in charge. These surveys must be completed each council term.
- Have the Storage Providers fill out this survey. At the time of writing, there are 9 workers (no lead!). For each SP after the 5th one, $25 will be awarded to the CM(s) in charge. These surveys must be completed each council term.
Reward Distribution
Grading is individual. Note that if you are elected for both terms, you still need to fill out the survey twice.
Grading
- Content Curators
- @laura - $75
Section II - Community Management
21.7 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @xandrell - $25
- @flakes9776 - $25
- @chiffah - $25
21.8 - Clean up Community Repo - Part 2
- Reward:
$225+$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2199600
- End Block:
#2286000
- Start Block:
Purpose
KPI 17.8 - Clean up Community Repo - Part 1, was partially completed, but it was nevertheless meant as a two-parter. Now it's time to finish it up!
Note that the @maxlevush, who submitted the work for Part 1, may be part of a team completing this task, but as the Scope of Work will reveal, they shouldn't complete it alone.
Extended from last KPI round.
Scope of Work
- Review the work already completed here, and consider the following:
- Is the hierarchy proposed coherent and intiutive?
- Are the conventions proposed both "good" enough, and not too difficult to adhere to?
- What, if anything, is missing in the (now outdated) "preview" branch from the "original" SoW?
- Based on the findings in 1:
- Draft up the "Contribution Guidelines", and for the purposes of the Council and the user of the repo, add some context about your choices.
- Make a new, and updated
*
, branch on your fork showing how the repo would if all your proposed changes were included.*
the branch must not be based on a fork older than 48h.
- Make a PR to the Joystream repo, so that all the changes are visible.
- Make a Text Proposal to the Council with everything above.
-
When the proposal is made, tag the Council Secretary and
@bwhm#6514
on Discord, to participate in the discussion. -
While the proposal is being discussed, check in frequently, to participate in the discussion and ensure that any changes requested can be implemented quickly. In order to complete this task, all of the below must be done:
- a (doesn't have to be the first one!) Text Proposal is approved by the Council
- the format is accepted by
@bwhm#6514
- the PR must be updated to include any new PRs merged in the Joystream repo
Reward Distribution
As alluded to, this should KPI ideally be a collaborative effort. Unless 1-3 are all completed within the Term, the KPI will be extended and not graded before the next round.
Weighting:
- $50
- $150
- $25
- $150
*
Note that this part is unlikely not to be completed before the end of the Term. If so, create a Spending Proposal that JSG will re-imburse after all the items in 4. is completed.
Grading
- @isonar - $375
- SOW 1 - Review work and revisions
- Complete
- SOW 2 - Contribution Guidelines and PR
- Complete
- SOW 3 - Tag Secretary & @bwhm
- Complete
- SOW 4 - Revisions and approval
- Complete
21.9 - Create new KPIs
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2199600
- End Block:
#2286000
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- No work claimed, no rewards.
21.10 - KPIs Overview
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2199600
- End Block:
#2286000
- Start Block:
Purpose
The community has started voting as a unit, to ensure that a new Council is working well. As they have somewhat limited data to make that judgement, let's make it easier!
Scope of Work
- What was the total possible rewards for each Term
- How much was paid out for each Term
- Who where the CMs for each Term
- How much did they earn in rewards
- Make sure the data is presented in such a way that it can be used to create tables ranking all past (and future) CMs by performance, both relatively and absolutely. Examples:
- Rank all by total KPI earnings
- Rank all by total KPI earnings per Term
- Rank all by ratio of KPI earnings in a Term over total possible rewards for that Term
- Rank all by ratio of KPI earnings in a Term over total paid rewards for that Term
- etc.
- Make sure the data is presented in a way that allows creation of charts showing the performance over time for the both the entire Council and individual CMs. Examples:
- Paid out per Term
- Ratio of earned / total possible rewards
- etc.
- Get the stake for each CM for every Term. Note that unlike 1-3, this data must come from historical chain data. Should be separated in four datapoints:
- Own stake
- Other stake
- If applicable, how much of the "other" stake was from JSG (
5CJzTaCp5fuqG7NdJQ6oUCwdmFHKichew8w4RZ3zFHM8qSe6
) - If applicable, how much of the "other" stake was themselves (eg. membership
root
and/orctrl
account)
Reward Distribution
Individual grading.
- $150
- $50
- $50
- $150
Grading
- SOW 1, 2 + 3 were completed in KPI 19/20
- SOW 4 has not been claimed or completed.
21.11 - Minting and Burning - Part 1.
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2199600
- End Block:
#2286000
- Start Block:
Purpose
The platform has taken a larger interest in the minting and burning of tokens recently. We believe this is good progress from previously, and it was a large part of the reason the dreaded "Council Dissent" KPI was introduced.
Although the "Tokenomics" and the status server combined gives a good idea of the mints and burns of Tokens, they do not provide the full picture.
Scope of Work
The list below will hopefully cover all the sources of minting and burning of tokens on the platform, with some information on how to quantify it in (parentheses) from the historical chain data:
- Minting:
- Validator rewards (event)
- Council rewards (from the Council Mint, which also funds proposals, refill is an event)
- Other Worker and Lead rewards (from the respective mints, refill is an event)
- Spending Proposals (event)
sudo
1 (event)- Other?
- Burning:
- Membership creation 2 (event)
- Exchanges (when user sends to the exchange account,
5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu
, it makes a new transfer to itself with all tokens as fees) - Extrinsics/tx fees (must be set manually, see above)
- Proposal fee (when not approved)
- Proposal slashes
- Worker and Lead slashes
- Due to an issue with the current runtime, all stakes (both role and application) for the Operations group are/were burned
- Other?
- Create a document with:
- if applicable, the event, eg.
sudo.setBalance
for each mint/burn - what values from the chain state you need to compare for each block to calculate the mint/burn for that block
- other sources of mints and burns.
- if you find one, add the information requested above
- Write up a chunk of code (in typescript) that can be used to calculate this from the API, and comment the code to explain in words what you are trying to do/doing.
<body="19.16-1">sudo
always mints new tokens as KPI rewards, but on rare occasions for other purposes>
<body="19.16-2">when created through the Player onboarding, it's minted first>
Reward Distribution
Individual grading.
- $150
- $150
Grading
- No work submitted.
- Create a script that, at every block:
- gets the
totalIssuance
- calculates what is minted and burned in the block
- and compares the two amounts
- if the they're not matching, return the block height(s)
- for each "group" og mint and burn, sum up the total amounts
Use the script from block #717987
to #2091600
(or at least some intervals in that range), and whenever you see a discrepancy, check the particular block, and see if you can find the source, then update script and repeat.
The deliverable is the script (with comments), in PR to the Community Repo, alongside a list of blocks that you haven't been able to "understand", and some comments on what you have tried.
Section III - Working Groups
Note
While finishing these KPIs, this proposal came to our attention. Very relevant for this section of KPIs.
21.12 - Follow up the Storage Working Group
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2199600
- End Block:
#2286000
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
- Hire a new Lead!
Reward Distribution
Individual grading.
Grading
- SOW 1 - Hire a new lead
- Assist the new lead
- @freakstatic_council
21.13 - Follow up the Content Curators Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2199600
- End Block:
#2286000
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
- After the closing of Bounty 10, the amount of uploads to the platform dropped substantially. Create a report containing information about content between blocks
#717987
(first block with the current content directory) and#1998000
the following information, with charts where applicable:
- Channel creation over time
- Members with Channels over time
- Uploads over time
- Size of the
dataDirectory
over time - Curators (including Lead) over time
- Curator rewards (including Lead), both in USD and tJOY.
- Changes made to Channels and Videos over time
- Curation/Censoring over time
Note that the information for the first 3 bullets above can be generated from the Hydra Playground, whereas the rest will require getting historical data from the chain. In the latter case, getting data for every 14400 blocks (eg. every day) is sufficient. The historical exchange rate can be derived from the status server.
-
Use the data, and compare to the previous Curator Lead reports to get an estimate of the workload over time for the Curators, and compare the result to what was found in 1.
-
Use the results as a baseline to review the current budget for the Curator group, keeping in mind that the workload is expected to go up (substantially) once the "new" content bounty is live.
-
Assist the Curator Lead with their Curator KPI, KPI 19.CC-1.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $150
- 2: $100
-
- $50
-
- $100
Grading
- SOW 1/2/3 - Bounty 10 refined data
- No work submitted.
21.14 - Follow up the Operations Working Group
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core Term
- Start Block:
#2199600
- End Block:
#2286000
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
Note: Extended from last week. Some work about this was submitted, but at the time of writing, it appears to be a little different than what was intended.
Scope of Work
-
The Operations group regularly presents interesting work that can enhance the platform. Get a an updated, and exhaustive list of what they want to achieve, and present it to the Council, in order to get a ranking of what the Council wants them to focus on. Note that this requires understanding not only what the end product is, but also insight about the complexity, value and time line for each of them.
-
Once the results are in from the first Term, repeat the process for the second Council. Once the "final" results are in, co-operate with the Lead to get a firm timeline and manpower required for the top 3 items.
Reward Distribution
Grading is individual.
Grading
- SOW 1/2 (create a list of tasks)
- @marat_mu - $100
- https://testnet.joystream.org//#/forum/threads/605?page=1&replyIdx=8
- Created a thread and started discussion. No actual list delivered yet.
- https://testnet.joystream.org//#/forum/threads/605?page=1&replyIdx=8
- @marat_mu - $100
Section IV - Bounties
21.15 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
- Bounty 9
- @ilich - $50
- https://testnet.joystream.org//#/forum/threads/605?page=2&replyIdx=13
- Waiting for JSG merge of changes/corrections.
- https://testnet.joystream.org//#/forum/threads/605?page=2&replyIdx=13
- @ilich - $50
21.16 - Other Bounty Managers
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term
- Start Block:
#2192400
- End Block:
#2293200
- Start Block:
Purpose
With two new Bounties Community Bounty #20 - "Github Bounty Guide" and Community Bounty #21 - "Website Translation", ready to go and two more expected during this Term, some work is needed!
Scope of Work
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager
- either a technical person from the Curator group or,
- a person from the Operations group with some knowledge about the Content system
- open and promote the Bounty to the community
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- add reasonable milestones
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager from the Operations group
- open and promote the Bounty to the community
- once the work has reached the first milestone, find a suitable member of the Community to review the language
- The JSG "Specs" for Community Bounty #24 - "Upload Content", can be found here. From KPI 18.CC-3, these terms and conditions were presented. KPI 19.CC-2 will continue to focus on launching this Bounty.
- Set a weekly reward for the BM, reflecting the expected workload of reviewing 100s of videos each week.
- Find one or two BMs (ideally yourself) that:
- Speaks English and Russian
- Is interested in, and knowledge of, videos and old films
- Is willing not to participate in the Bounty themselves
- Has some understanding of the platform
- Is not currently, or is willing to quit as, a Curator
- Get the person approved by the Council
- Push the BM, and the Curator Lead, to get the final Bounty text for the participants, and the workflow for the Curators and the BM(s) approved by JSG.
- Ensure the BM sets a reward structure that rewards the best video(s) a little extra.
Note that some extra information can be found in KPI 19.CC-2.
Reward Distribution
Grading is individual.
Weighting:
- 1-2: $50
- 3: $200 - Note that the BM(s) should get half of this, if it's not the same person(s) as the CM
Grading
- Bounty 21 - Website Translation
- @svasilenko - $75
Working Group KPIs
We are trying out new ways of rewarding the Working Groups, for multiple reasons.
The Working Group KPIs will, at least for this Council Term, work like so:
- The Lead assigns a group or individual to the task (they can choose themselves).
- The Lead (if the position is occupied), must fill out the Term Summary and regardless if the task was assigned to a worker, or performed themselves.
- Unless otherwise noted, all subtasks must be completed. If not, no rewards will be given.
21.CC-1 - TBD
- Reward:
$TBD
- Start Block:
#2192400
- End Block:
#2293200
21.CC-2 - New "Upload Content" Bounty
- Reward:
$100
- Start Block:
#1990800
- End Block:
#2192400
21.OP-1 - Runtime Upgrade Verification
- Reward:
$250
- Start Block:
#2192400
- End Block:
#2293200
Purpose
With KPI 17.OP-1), the runtime upgrade was tested. However, the results weren't straight forward to parse. We need to verify exactly what happened, before we perform the upgrade on the real testnet!
Note that an updated version of pioneer can be found here, and that you can use the endpoint wss://staging-3.joystream.app/rpc
for both pioneer and the API. Also note that the noteworthy fixes in this runtime upgrade was to:
- Fix the bug that caused all stakes when applying to the
operations
group caused the role and application stakes to get burned. - Increase the max mint capacity increase through proposals from 5,000,000 to 50,000,000.
Extended from last KPI round.
Scope of Work
-
After the proposed testing protocol was shared on Discord, I replied with some extra tasks. Although the tasks appear to have been performed, it's not easy to confirm from the results. Go through the list, and verify everything was done.
-
Using the Member IDs, worker IDs, block heights, membership and worker accounts listed in the report, get the historical chain data from the applicable reports and test/verify for each opening and application:
- What was the opening ID, opening parameters (max applicants, application/role stake, rewards and the various unstaking parameters)
- Was the opening created before or after the runtime upgrade
- What was the member ID, member handle, membership root/controller account, and role account
- Was the application made before or after the runtime upgrade
- What was the balance of each account, and the total issuance, on the block, and the block before, the member:
- applied
- was crowded out, not hired or hired
- if hired:
- fired or quit
- note that if the unstaking parameter was >0, you need to check the block + the applicable unstaking value
- note that if they were hired, they may have earned rewards that further complicates things
- they may also have received tokens from other addresses/rewards in the window
- also note that if the same member applied to multiple openings, you need to keep track of all stakes/values/rewards
After having generated all this information, create a report containing all the numbers above, an explanation of what you think happened, and whether the bug was fixed.
21.SP-1 - Storage OKRs (Joint with 19.OP-2)
- Reward:
$250
- Start Block:
#2192400
- End Block:
#2293200
Note that this task is shared between the Operations Lead and the Storage Provider Lead. Ideally, they'll either co-operate, or delegate to workers in their respective groups to co-operate.
As there is no Lead at the moment, any Storage Provider can complete this task.
Purpose
We still believe OKRs to be a good way to reward the Storage Provider Lead, and workers. However, the actual OKRs needs to be settled, and some benchmark numbers must be established. As it appears KPI 16.8-2 was not done, and the KPI 17.SP-1 wasn't completed last term, we'll give them one more chance, but with a shorter deadline.
Scope of Work
- Review the Storage OKRs here.
- Review the proposed Key Results 1 - uptime, 5 - Rendering Time, and 6 - Upload Speed, and:
- Are there any changes required to these?
- What tools, not already available (eg.
helios
and joystreamstats.live has some helpful tools already) are needed to start measuring these right away? - Add examples, and improve the instructions and notations used so that the Council, Storage Providers and others understand exactly what and how is being measured, how it's going to be graded, and how frequently the should be measured
Feel free to co-ordinate with the Operations group if additional technical support is needed.
- Deploy a script that measures the data you can, and share the script so that others can do so.
- Finally, review the proposed OKR system outlined in KPI 19.9, and the numbers that come out of it.
KPI 19
- KPIs:
16+7
- Total Possible Rewards:
$4550+$1125
- Council Elected in Round:
21
- Council Members:
16
- KPI Length:
14 days / 201600 blocks
- Start Block/Date:
#1990800 / 24.08.21
- End Block/Date:
#2192400 / 07.09.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#2221200 / 09.09.21
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
1905 | lyazufey1812 | 33 | 1270701 |
2194 | ilich | 395 | 15209909 |
644 | lkskrn | 33 | 1270701 |
2098 | 0x2bc | 208 | 8009269 |
635 | xfactorus | 16 | 616098 |
798 | shtihmas | 46 | 1771281 |
867 | xandrell | 70 | 2695427 |
1962 | nkhlghbl | 4 | 154024 |
439 | fierydev | 0 | 0 |
2 | tomato | 292 | 11243781 |
736 | mmsaww | 54 | 2079329 |
2329 | laura | 357 | 13746678 |
2130 | maxlevush | 598 | 23026648 |
1048 | igrex | 149 | 5737409 |
2435 | zazik | 16 | 616098 |
2182 | isonar | 17+50 | 654604+1925304 |
361 | blackmass | 6 | 231037 |
2096 | svasilenko | 87 | 3350031 |
321 | freakstatic_council | 517 | 19907654 |
2462 | chiffah | 51 | 1963811 |
790 | ururu | 12 | 462073 |
2148 | controlla | 11 | 423567 |
SUM | 22 | 2972+50 | 114440130+1925304 |
Paid out at blocks #2,297,046 and #2,297,047.
Important Note
This set of KPIs extends across two weeks, which means it covers two Councils Terms. Some KPIs cover a single week. During the Terms, at least wWhen the 22nd
council is elected (the second council), some new KPIs will be presented and extra scope may be added to existing ones.
The purpose of the change is two-fold:
- A lot of time is "lost" for the KPIs as they have been. We need to evaluate what has been done, and to what extent, meaning there's a delay in creating new ones. Then, the Council looks at, discusses and claims/distributes the tasks among themselves. Then, we need to slice some time off of the end to give room to evaluate.
- Grading, creating and publishing takes a lot of time. Although this change won't cut that in two, it will reduce some of the overhead.
For the individual CM, it means that if you are elected during the first Term, but not re-elected, you still have time to finish a KPI you started. You can however not start on the KPIs that was added/expanded upon. If you were elected in the second Term only, we hope the other CMs will be accommodating, and give you "priority" on the new tasks.
This was meant to follow a switch back to two week long Terms, but after giving it some thinking, we concluded the predictability of running for the Council every week is too important to give up.
If it doesn't work this way, we will revert back to the old system.
Added 19.8 on the 31st of August.
Added 19.14-19.16 on the 2nd of September.
Section I - Council work, Proposals and Bureaucracy
19.1 - Proposal Clearance
- Reward:
$400
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
2 council terms
- Start Block:
#1990800
- End Block:
#2192400
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that were open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
1905 | lyazufey1812 | 36 | 134 | 18 |
2194 | ilich | 29 | 105 | 14 |
644 | lkskrn | 35 | 125 | 17 |
2098 | 0x2bc | 6 | 24 | 3 |
635 | xfactorus | 34 | 117 | 16 |
798 | shtihmas | 34 | 120 | 16 |
867 | xandrell | 33 | 114 | 16 |
1962 | nkhlghbl | 7 | 30 | 4 |
439 | fierydev | 0 | 0 | 0 |
2 | tomato | 23 | 90 | 12 |
736 | mmsaww | 22 | 83 | 11 |
2329 | laura | 36 | 136 | 19 |
2130 | maxlevush | 30 | 119 | 16 |
1048 | igrex | 38 | 151 | 21 |
2435 | zazik | 21 | 76 | 10 |
2182 | isonar | 11 | 43 | 6 |
SUM | 16 | 395 | 1467 | 200 |
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
1905 | lyazufey1812 | 30 | 107 | 15 |
2194 | ilich | 21 | 75 | 11 |
644 | lkskrn | 30 | 110 | 16 |
361 | blackmass | 13 | 40 | 6 |
2098 | 0x2bc | 10 | 34 | 5 |
2096 | svasilenko | 24 | 83 | 12 |
867 | xandrell | 34 | 118 | 17 |
321 | freakstatic_council | 30 | 120 | 17 |
2462 | chiffah | 25 | 93 | 13 |
2329 | laura | 30 | 129 | 18 |
790 | ururu | 23 | 83 | 12 |
2130 | maxlevush | 23 | 101 | 14 |
1048 | igrex | 33 | 129 | 18 |
2435 | zazik | 11 | 40 | 6 |
2148 | controlla | 19 | 76 | 11 |
2182 | isonar | 18 | 79 | 11 |
SUM | 16 | 374 | 1417 | 200 |
19.2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
2 council terms
- Start Block:
#1990800
- End Block:
#2192400
- Start Block:
Purpose
The Council appeared to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Note
After seeing this play out for a while, we still have mixed feelings about it. On one had, there is clearly more discussion, questioning and disagreeing. Whereas before, all proposals were basically approved, this is no longer the case.
On the flip-side, some (smaller) traces of fractioning has happened. To address this, we are doubling down on what was said last time:
We are trying to build a strong, yet friendly community, welcoming to all. There is no reason to be rude, and personal attacks without substance will automatically void an otherwise insightful message. There are standards even when disagreeing on the internet.
Finally, note that some of the SoW and reward requirements have changed.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
For all of the above, your comment should be precise, concise, polite, and if required, well sourced. A simple "no" will get you no where.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- How clear and reasonably was the message your question/comment?
- was your argument(s) backed up by verifiable facts?
- did you link to source(s)?
- did your question(s) make it clear what your concern were?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $200)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $150)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Further:
- Only comments made in the proposal discussion will be evaluated. You can of course link to a longer post somewhere else there, but then you have to add a summary in the proposal discussion. Remember, having someones attention is not permanent.
- Stay polite, even if you are replying to a personal comment, keep it civil.
- You can only claim rewards for up to three proposals you dissented to.
- Total Cap at $1000 per KPI, eg. $500 per Term
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @igrex -
- https://testnet.joystream.org/#/forum/threads/573?page=1&replyIdx=2
- https://testnet.joystream.org/#/proposals/473
- Cost: $50-100
- Was it a malicious, or objectively bad proposal: It was a proposal with incorrect details.
- Did the vote/comment affect the outcome: Possibly
- Reward: $10
- https://testnet.joystream.org/#/proposals/493
- Cost: $100+
- The proposal did not indicate a direct financial request
- Was it a malicious, or objectively bad proposal: no, but it was not a clear request
- Did the vote/comment affect the outcome: Yes
- Reward: $40
- The comment raised some important missing details with the proposal, and presented a better way of presenting the same idea to the council.
- Cost: $100+
- https://testnet.joystream.org/#/proposals/496
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: no, but it may have had some incorrect details.
- Did the vote/comment affect the outcome: No vote was cast.
- Reward: $10
- https://testnet.joystream.org/#/proposals/473
- https://testnet.joystream.org/#/forum/threads/573?page=1&replyIdx=2
- @laura -
- https://testnet.joystream.org/#/forum/threads/573?page=1&replyIdx=4
- https://testnet.joystream.org/#/proposals/493
- Cost: $100+
- The proposal did not indicate a direct financial request
- Was it a malicious, or objectively bad proposal: no, but it was not a clear request
- Did the vote/comment affect the outcome: Yes
- Reward: $30
- Cost: $100+
- https://testnet.joystream.org/#/proposals/496
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: no, but it may have had some incorrect details.
- Did the vote/comment affect the outcome: No vote was cast.
- Reward: $15
- https://testnet.joystream.org/#/proposals/493
- https://testnet.joystream.org/#/forum/threads/573?page=1&replyIdx=4
- @lyazufey -
- https://testnet.joystream.org/#/forum/threads/573?page=1&replyIdx=5
- https://testnet.joystream.org/#/proposals/473
- Cost: $50-100
- Was it a malicious, or objectively bad proposal: It was a proposal with incorrect details.
- Did the vote/comment affect the outcome: No
- Reward: $0
- https://testnet.joystream.org/#/proposals/473
- Cost: $50-100
- Was it a malicious, or objectively bad proposal: It was a proposal with incorrect details.
- Did the vote/comment affect the outcome: No
- Reward: $0
- https://testnet.joystream.org/#/proposals/473
- https://testnet.joystream.org/#/forum/threads/573?page=1&replyIdx=5
- @shtihmas -
- https://testnet.joystream.org/#/forum/threads/573?page=1&replyIdx=7
- https://testnet.joystream.org/#/proposals/491
- Cost: $225
- Was it a malicious, or objectively bad proposal: No, but it was unclear
- Did the vote/comment affect the outcome: Possibly
- Reward: $30
- https://testnet.joystream.org/#/proposals/491
- https://testnet.joystream.org/#/forum/threads/573?page=1&replyIdx=7
- @mmsaww -
- https://pioneer.joystreamstats.live/#/forum/threads/573?page=1&replyIdx=6
- https://testnet.joystream.org/#/proposals/482
- Cost: Unknown (Operations Task)
- Was it a malicious, or objectively bad proposal: No
- Did the vote/comment affect the outcome: No
- Reward: $5
- https://testnet.joystream.org/#/proposals/491
- Cost: $225
- Was it a malicious, or objectively bad proposal: No, but it was unclear
- Did the vote/comment affect the outcome: No
- Reward: $0
- https://testnet.joystream.org/#/proposals/482
- https://pioneer.joystreamstats.live/#/forum/threads/573?page=1&replyIdx=6
- @ilich -
- https://testnet.joystream.org/#/forum/threads/573?page=2&replyIdx=18
- https://testnet.joystream.org/#/proposals/491
- Cost: $75
- Was it a malicious, or objectively bad proposal: No
- Did the vote/comment affect the outcome: Possibly
- Reward: $20
- https://testnet.joystream.org/#/proposals/491
- https://testnet.joystream.org/#/forum/threads/573?page=2&replyIdx=18
19.3 - Council Secretary
- Reward:
$300 per council term
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
(elected once per council term)
- Start Block:
#1990800
- End Block:
#2192400
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
This role is applied for via text proposal
, which happens once per term.
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- W1 - tomato - $280 - https://testnet.joystream.org/#/proposals/478
- Managing PR's in community repo per rules: Yes
- Signing off on all reports - Yes
- Assisting and support other CMs - Yes
- Monitor the bounties - Yes
- Council mint refilled - Yes
- Notify Jsgenesis of network issues - Yes
- Report on progress - Yes
- Term summaries - Yes
- Bounty JSON updated: No
- Council wrangling in #council channel - Yes
- W2 - maxlevush - $280 - https://testnet.joystream.org/#/proposals/518
- Managing PR's in community repo per rules: Yes
- Signing off on all reports - Yes
- Assisting and support other CMs - Yes
- Monitor the bounties - Yes
- Council mint refilled - Yes
- Notify Jsgenesis of network issues - Yes
- Report on progress - Yes
- Term summaries - Yes
- Bounty JSON updated: No
- Council wrangling in #council channel - Yes
19.4 - Deputy Council Secretary
- Reward:
$150 per council term
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
(elected once per council term)
- Start Block:
#1990800
- End Block:
#2192400
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- W1 - maxlevush - $150 - https://testnet.joystream.org/#/proposals/474
- W2 - freakstatic - $150 - https://testnet.joystream.org/#/proposals/522
19.5 - Council Minutes
- Reward:
$100 per council term
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full Term(s) + 1 day
- Start Block:
#1990800
- End Blocks:
#2091600, #2192400
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Council Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
As the KPIs now cover 2 Council Terms, these reports must be generated for both terms. The naming convention should be 19A
and 19B
to refer to the two terms.
Scope of Work
- The
21st
&22nd
"official" Councils (#1990800-#2091600 & #2091600-#2192400) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report (for both Council Terms) covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
- W1 - maxlevush - $100/$100
- W2 - freakstatic - $100/$100
19.6 - FM Surveys
- Reward:
$75 per term
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
2 Full Terms
- Start Block:
#1990800
- End Blocks:
#2091600, #2192400
- Start Block:
Purpose
We are still trying to figure out exactly why we don't see more FM submissions from the Working Groups. These specific Surveys are likely to be a recurring KPI. Note that these are not anonymous!
Scope of Work
- Have the Council Members fill out this survey. Any individual CM that doesn't complete will get annihilated, but only that CM (not the others). These surveys must be completed each council term.
- Have the Content Curators fill out this survey. At the time of writing, there are 9 workers + (1 the lead). For each CC after the 6th one, $25 will be awarded to the CM(s) in charge. These surveys must be completed each council term.
- Have the Storage Providers fill out this survey. At the time of writing, there are 9 workers + 1 (the lead). For each SP after the 6th one, $25 will be awarded to the CM(s) in charge. These surveys must be completed each council term.
Reward Distribution
Grading is individual. Note that if you are elected for both terms, you still need to fill out the survey twice.
Grading
- No claims
Section II - Community Management
19.7 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
2x Full Terms
- Start Block:
#1990800
- End Block:
#2192400
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @xandrell $37.5
- @mmsaww $37.5
- @chiffah $37.5
- @maxlevush $37.5
19.8 - Clean up Community Repo - Part 2
- Reward:
$225+$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core (last) term
- Start Block:
#2091600
- End Block:
#2192400
- Start Block:
Purpose
KPI 17.8 - Clean up Community Repo - Part 1, was partially completed, but it was nevertheless meant as a two-parter. Now it's time to finish it up!
Note that the @maxlevush, who submitted the work for Part 1, may be part of a team completing this task, but as the Scope of Work will reveal, they shouldn't complete it alone.
Scope of Work
- Review the work already completed here, and consider the following:
- Is the hierarchy proposed coherent and intiutive?
- Are the conventions proposed both "good" enough, and not too difficult to adhere to?
- What, if anything, is missing in the (now outdated) "preview" branch from the "original" SoW?
- Based on the findings in 1:
- Draft up the "Contribution Guidelines", and for the purposes of the Council and the user of the repo, add some context about your choices.
- Make a new, and updated
*
, branch on your fork showing how the repo would if all your proposed changes were included.*
the branch must not be based on a fork older than 48h.
- Make a PR to the Joystream repo, so that all the changes are visible.
- Make a Text Proposal to the Council with everything above.
-
When the proposal is made, tag the Council Secretary and
@bwhm#6514
on Discord, to participate in the discussion. -
While the proposal is being discussed, check in frequently, to participate in the discussion and ensure that any changes requested can be implemented quickly. In order to complete this task, all of the below must be done:
- a (doesn't have to be the first one!) Text Proposal is approved by the Council
- the format is accepted by
@bwhm#6514
- the PR must be updated to include any new PRs merged in the Joystream repo
Reward Distribution
As alluded to, this should KPI ideally be a collaborative effort. Unless 1-3 are all completed within the Term, the KPI will be extended and not graded before the next round.
Weighting:
- $50
- $150
- $25
- $150
*
Note that this part is unlikely not to be completed before the end of the Term. If so, create a Spending Proposal that JSG will re-imburse after all the items in 4. is completed.
Grading
- Continued in KPI 21
Section III - Working Groups
Note
While finishing these KPIs, this proposal came to our attention. Very relevant for this section of KPIs.
19.9 - Follow up the Storage Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full terms
- Start Block:
#1990800
- End Block:
#2192400
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
- Establishing the new OKR system for the SPs has unfortunately stalled. The technical part is more or less complete, and will be completed for the next Council Term, so we're going to cut through and propose something more specific. The work is to find out exactly what the numbers
R_rec.L
,R_okr.L
,R_rec.W
andR_okr.W
should be:
- The Lead currently earns ~$72 per week in recurring rewards
- The Workers (ex JSG) all earn ~$30 per week in recurring rewards
- Going forward, we propose all Workers (
R_rec.W
) earn either the break-even cost in terms of hardware, or slightly below. - Whether the recurring reward for the Lead (
R_rec.L
) should be higher or lower than this isn't clear.- The Lead has extra responsibilities to running their node, which has a value
- The Lead will however potentially earn an extra income on this, as they will earn OKR rewards for the groups performance, and for Storage KPIs, which will cover most of their extra tasks
- After establishing a benchmark value for OKRs, the OKR payout scheme will mean that of max OKR payout pool, equal to
R_rec.L
+R_rec.W
, so that:- For the Group:
- For each of the 7
*
KRs that exceeds the weekly target -> 1/7th ofR_okr.W
is shared between all the SPs that reached this individual KR. - If the group on average exceeds the target for 4/7 KRs, the Lead gets a bonus equal to
R_okr.L/10
- If the group on average exceeds the target for 5/7 KRs, the Lead gets a bonus equal to
R_okr.L/5
- If the group on average exceeds the target for 6/7 KRs, the Lead gets a bonus equal to
R_okr.L/2
- If the group on average exceeds the target for 7/7 KRs, the Lead gets a bonus equal to
R_okr.L
- For each of the 7
- For the Group:
- Get these independent numbers approved by the Council, and provide specific examples of outcomes for the Workers and Lead with this schedule.
- Note that half of the OKR rewards will come from minting of new tokens, so only half of the OKR rewards needs to be accounted for in the budget.
- Further note that it's unlikely that the FULL OKR rewards (
R_okr.W
+R_okr.L
) will actually be paid out each week, so the Council can assume the budget for the SP group won't have to pay all ofR_rec.L + R_rec.W + (R_okr.W + R_okr.L)/2
.
*
Note that while the OKRs are being rolled out, the number will be lower than 7. The general process will still apply.
-
Finally, as the OKRs will be tracked starting with the next Council Term, ensure that the Lead has set the new rewards for the workers before block
#2091600
. -
Assist the Lead with their other KPIs for the Term.
The CM addressing this task should familiarize themselves with the somehwat overlapping Storage KPIs.
Reward Distribution
Individual grading.
For 3.
If the SP KPI is graded as complete, the SP Lead will decide the reward for the CM(s). If not, nothing will be granted unless there are consequences*
for the Lead.
*
Firing is not the only valid consequence
Weighting:
- 1: $250
- 2: $150
Grading
- SOW 1 (new OKR system) - $250
- freakstatic - $50 - did work on storage provider costs
- SOW 2 (set new rewards) - $150
- No work submitted/completed
- SOW 3 (assist lead with their other KPIs)
- No work submitted/completed
19.10 - Follow up the Content Curators Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full terms
- Start Block:
#1990800
- End Block:
#2192400
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
- After the closing of Bounty 10, the amount of uploads to the platform dropped substantially. Create a report containing information about content between blocks
#717987
(first block with the current content directory) and#1998000
the following information, with charts where applicable:
- Channel creation over time
- Members with Channels over time
- Uploads over time
- Size of the
dataDirectory
over time - Curators (including Lead) over time
- Curator rewards (including Lead), both in USD and tJOY.
- Changes made to Channels and Videos over time
- Curation/Censoring over time
Note that the information for the first 3 bullets above can be generated from the Hydra Playground, whereas the rest will require getting historical data from the chain. In the latter case, getting data for every 14400 blocks (eg. every day) is sufficient. The historical exchange rate can be derived from the status server.
-
Use the data, and compare to the previous Curator Lead reports to get an estimate of the workload over time for the Curators, and compare the result to what was found in 1.
-
Use the results as a baseline to review the current budget for the Curator group, keeping in mind that the workload is expected to go up (substantially) once the "new" content bounty is live.
-
Assist the Curator Lead with their Curator KPI, KPI 19.CC-1.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $150
- 2: $100
-
- $50
-
- $100
Grading
- SOW 1 (Bounty 10 report) - $150
- igrex - $50 - assigned the appropriate tasks to the Operations Group
- SOW 2 (Estimate curator workload) - $100
- No work submitted/completed
- SOW 3 (Review the budget) - $50
- No work submitted/completed
- SOW 4 (Assist lead wth Curator KPI) - $100
- No work submitted/completed
19.11 - Follow up the Operations Working Group
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1998000
- End Block:
#2192400
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
Scope of Work
-
The Operations group regularly presents interesting work that can enhance the platform. Get a an updated, and exhaustive list of what they want to achieve, and present it to the Council, in order to get a ranking of what the Council wants them to focus on. Note that this requires understanding not only what the end product is, but also insight about the complexity, value and time line for each of them.
-
Once the results are in from the first Term, repeat the process for the second Council. Once the "final" results are in, co-operate with the Lead to get a firm timeline and manpower required for the top 3 items.
Reward Distribution
Grading is individual.
Grading
- SOW 1 (Get a list of what Operations wants to achieve)
- svasilenko - $75
- https://pioneer.joystreamstats.live/#/forum/threads/573?replyIdx=8
- Work was done on this KPI, however it did not include enough information about the complexity, value and time required for each of the objectives.
- svasilenko - $75
- SOW 2 (Get a firm timeline)
- No work submitted/completed
Section IV - Bounties
19.12 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50 per term
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full terms + 1 day
- Start Block:
#1990800
- End Block:
#2106000
(denote as19-12.A
) - End Block:
#2192400
(denote as19-12.B
)
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
- Bounty 9 - Corrections
19.13 - Other Bounty Managers
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day (single term)
- Start Block:
#1990800
- End Block:
#2106000
(denote as19-12.A
) - End Block:
#2192400
(denote as19-12.B
)
- Start Block:
Purpose
With two new Bounties Community Bounty #20 - "Github Bounty Guide" and Community Bounty #21 - "Website Translation", ready to go and two more expected during this Term, some work is needed!
Scope of Work
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager
- either a technical person from the Curator group or,
- a person from the Operations group with some knowledge about the Content system
- open and promote the Bounty to the community
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- add reasonable milestones
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager from the Operations group
- open and promote the Bounty to the community
- once the work has reached the first milestone, find a suitable member of the Community to review the language
- The JSG "Specs" for Community Bounty #24 - "Upload Content", can be found here. From KPI 18.CC-3, these terms and conditions were presented. KPI 19.CC-2 will continue to focus on launching this Bounty.
- Set a weekly reward for the BM, reflecting the expected workload of reviewing 100s of videos each week.
- Find one or two BMs (ideally yourself) that:
- Speaks English and Russian
- Is interested in, and knowledge of, videos and old films
- Is willing not to participate in the Bounty themselves
- Has some understanding of the platform
- Is not currently, or is willing to quit as, a Curator
- Get the person approved by the Council
- Push the BM, and the Curator Lead, to get the final Bounty text for the participants, and the workflow for the Curators and the BM(s) approved by JSG.
- Ensure the BM sets a reward structure that rewards the best video(s) a little extra.
Note that some extra information can be found in KPI 19.CC-2.
Reward Distribution
Grading is individual.
Weighting:
- 1-2: $50
- 3: $200 - Note that the BM(s) should get half of this, if it's not the same person(s) as the CM
Grading
- Bounty 20 - Github Bounty Guide ($50)
- No claims
- Bounty 21 - Website Translation ($50)
- No claims
- Bounty 24 - Upload Content ($200)
- Laura - $100/$200
- Assigned BM - arseniy2706 - $100/$200
- BM assigned: https://testnet.joystream.org/#/proposals/479
- Workflow set: https://github.com/Joystream/community-repo/blob/master/bounties-reports/Bounty %23 22 terms and conditions.md
- Rewards set: https://github.com/Joystream/community-repo/blob/master/bounties-reports/Bounty %23 22 terms and conditions.md
Section V - Interim KPIs
Due to the numbering system, these are added here. Note that [KPI 19.8](#19.8) was also added after the "first" Term, but the ones below at an even later stage. (We'll go back to weekly KPIs starting next Term)19.14 - Create new KPIs
- Reward:
$500
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core (last) term
- Start Block:
#2091600
- End Block:
#2192400
- Start Block:
Purpose
Sometimes, creating valuable KPIs for a new Term is easy, other times it not so obvious what to focus on. Let's get some inputs from the Community!
Scope of Work
-
Draft up one or more new (Council or WGs) KPIs, that follows the format of the existing system. Additionally, place it in the applicable group (or add new ones if needed), estimate the workload and propose a reward.
-
If specifying it completely, as in the case for 1. is too difficult, or requires JSG input, simply outline what you want a KPI to cover, and what it's meant to achieve.
Reward Distribution
All CMs and WG Leads can contribute.
If your KPI makes it into one or more future set(s) of KPIs, you'll get:
- $25 + 25% of the Reward JSG sets (capped at $200)
- $25 + 10% of the Reward JSG sets (capped at $100)
Grading
- @isonar - Not used ($0)
- https://testnet.joystream.org/#/forum/threads/580 (Idea for Operations OKRs)
19.15 - KPIs Overview
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core (last) term
- Start Block:
#2091600
- End Block:
#2192400
- Start Block:
Purpose
The community has started voting as a unit, to ensure that a new Council is working well. As they have somewhat limited data to make that judgement, let's make it easier!
Scope of Work
- What was the total possible rewards for each Term
- How much was paid out for each Term
- Who where the CMs for each Term
- How much did they earn in rewards
- Make sure the data is presented in such a way that it can be used to create tables ranking all past (and future) CMs by performance, both relatively and absolutely. Examples:
- Rank all by total KPI earnings
- Rank all by total KPI earnings per Term
- Rank all by ratio of KPI earnings in a Term over total possible rewards for that Term
- Rank all by ratio of KPI earnings in a Term over total paid rewards for that Term
- etc.
- Make sure the data is presented in a way that allows creation of charts showing the performance over time for the both the entire Council and individual CMs. Examples:
- Paid out per Term
- Ratio of earned / total possible rewards
- etc.
- Get the stake for each CM for every Term. Note that unlike 1-3, this data must come from historical chain data. Should be separated in four datapoints:
- Own stake
- Other stake
- If applicable, how much of the "other" stake was from JSG (
5CJzTaCp5fuqG7NdJQ6oUCwdmFHKichew8w4RZ3zFHM8qSe6
) - If applicable, how much of the "other" stake was themselves (eg. membership
root
and/orctrl
account)
Reward Distribution
Individual grading.
- $150
- $50
- $50
- $150
Grading
- SOW 1 (create a spreadsheet) - $150
- SOW 2 (additional data) - $50
- SOW 3 (additional data) - $50
- SOW 4 (historical stake data)
- Incomplete / no rewards
19.16 - Minting and Burning - Part 1
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core (last) term
- Start Block:
#2091600
- End Block:
#2192400
- Start Block:
Purpose
The platform has taken a larger interest in the minting and burning of tokens recently. We believe this is good progress from previously, and it was a large part of the reason the dreaded "Council Dissent" KPI was introduced.
Although the "Tokenomics" and the status server combined gives a good idea of the mints and burns of Tokens, they do not provide the full picture.
Scope of Work
The list below will hopefully cover all the sources of minting and burning of tokens on the platform, with some information on how to quantify it in (parentheses) from the historical chain data:
- Minting:
- Validator rewards (event)
- Council rewards (from the Council Mint, which also funds proposals, refill is an event)
- Other Worker and Lead rewards (from the respective mints, refill is an event)
- Spending Proposals (event)
sudo
1 (event)- Other?
- Burning:
- Membership creation 2 (event)
- Exchanges (when user sends to the exchange account,
5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu
, it makes a new transfer to itself with all tokens as fees) - Extrinsics/tx fees (must be set manually, see above)
- Proposal fee (when not approved)
- Proposal slashes
- Worker and Lead slashes
- Due to an issue with the current runtime, all stakes (both role and application) for the Operations group are/were burned
- Other?
- Create a document with:
- if applicable, the event, eg.
sudo.setBalance
for each mint/burn - what values from the chain state you need to compare for each block to calculate the mint/burn for that block
- other sources of mints and burns.
- if you find one, add the information requested above
- Write up a chunk of code (in typescript) that can be used to calculate this from the API, and comment the code to explain in words what you are trying to do/doing.
sudo
always mints new tokens as KPI rewards, but on rare occasions for other purposes- when created through the Player onboarding, it's minted first
Reward Distribution
Individual grading.
- $150
- $150
Grading
- Continued in KPI 21
Working Group KPIs
We are trying out new ways of rewarding the Working Groups, for multiple reasons.
The Working Group KPIs will, at least for this Council Term, work like so:
- The Lead assigns a group or individual to the task (they can choose themselves).
- Unless otherwise noted, all subtasks must be completed. If not, no rewards will be given.
19.CC-1 - Update Featured Video Rules
- Reward:
$75
- Start Block:
#1990800
- End Block:
#2192400
The "Main" featured video for the Joystream Player was just changed, but the rules are still missing!
Some notes:
Scope of Work
- Decide on some "good" mechanism for deciding what it should be, eg:
- Community Vote
- Council Vote
- Most viewed
- Other
Notes: - JSG reserves the right to veto this choice, for any reason.
- Certain metadata is required, including a cover cut.
- The community should keep in mind the featured video slot should be reserved for the absolute best ones in terms of production value etc.
Remember that the featured video is the first thing any new user will see when opening the Joystream Player, and it autoplays the "cover cut" by default. That means that this video has to be standout, and the cover cut needs to be interesting. The main goal of this video (in the future) is to get the person opening the Joystream Player buy a subscription to the platform!
- Decide on frequency for how often the video should be changed.
Grading
- @laura - $75
19.CC-2 - New "Upload Content" Bounty
- Reward:
$100
- Start Block:
#1990800
- End Block:
#2192400
Purpose
We have been working on finalizing this for a while, and now it's time to finish!
The JSG "Specs" for Community Bounty #22 - "Upload Content", can be found here.
Last week, the Curators presented a set of terms and conditions here.
Scope of Work
- The terms contained some good additions to the rules, but some elements requested in the "Specs" and KPI 18.CC-3 was not included:
- The BM, ie. the person that grades the "quality" and thus reward distribution must not be a (current) Curator.
- The exact format that participants should post in the forum (making it easier for all)
- A template for the Curators "approval" spreadsheet
- The workflow and timeline
As the first to act at the end of each week, this must be settled!
Grading
- @laura - $100
- SOW 1 (template, format, workflow and timeline)
19.OP-1 - Runtime Upgrade Verification
- Reward:
$250
- Start Block:
#1998000
- End Block:
#2192400
Purpose
With KPI 17.OP-1), the runtime upgrade was tested. However, the results weren't straight forward to parse. We need to verify exactly what happened, before we perform the upgrade on the real testnet!
Note that an updated version of pioneer can be found here, and that you can use the endpoint wss://staging-3.joystream.app/rpc
for both pioneer and the API. Also note that the noteworthy fixes in this runtime upgrade was to:
- Fix the bug that caused all stakes when applying to the
operations
group caused the role and application stakes to get burned. - Increase the max mint capacity increase through proposals from 5,000,000 to 50,000,000.
Scope of Work
-
After the proposed testing protocol was shared on Discord, I replied with some extra tasks. Although the tasks appear to have been performed, it's not easy to confirm from the results. Go through the list, and verify everything was done.
-
Using the Member IDs, worker IDs, block heights, membership and worker accounts listed in the report, get the historical chain data from the applicable reports and test/verify for each opening and application:
- What was the opening ID, opening parameters (max applicants, application/role stake, rewards and the various unstaking parameters)
- Was the opening created before or after the runtime upgrade
- What was the member ID, member handle, membership root/controller account, and role account
- Was the application made before or after the runtime upgrade
- What was the balance of each account, and the total issuance, on the block, and the block before, the member:
- applied
- was crowded out, not hired or hired
- if hired:
- fired or quit
- note that if the unstaking parameter was >0, you need to check the block + the applicable unstaking value
- note that if they were hired, they may have earned rewards that further complicates things
- they may also have received tokens from other addresses/rewards in the window
- also note that if the same member applied to multiple openings, you need to keep track of all stakes/values/rewards
After having generated all this information, create a report containing all the numbers above, an explanation of what you think happened, and whether the bug was fixed.
Grading
- No work submitted/completed
19.SP-1 - Storage OKRs (Joint with 19.OP-2)
- Reward:
$250
- Start Block:
#1998000
- End Block:
#2192400
Note that this task is shared between the Operations Lead and the Storage Provider Lead. Ideally, they'll either co-operate, or delegate to workers in their respective groups to co-operate.
Purpose
We still believe OKRs to be a good way to reward the Storage Provider Lead, and workers. However, the actual OKRs needs to be settled, and some benchmark numbers must be established. As it appears KPI 16.8-2 was not done, and the KPI 17.SP-1 wasn't completed last term, we'll give them one more chance, but with a shorter deadline.
Scope of Work
- Review the Storage OKRs here.
- Review the proposed Key Results 1 - uptime, 5 - Rendering Time, and 6 - Upload Speed, and:
- Are there any changes required to these?
- What tools, not already available (eg.
helios
and joystreamstats.live has some helpful tools already) are needed to start measuring these right away? - Add examples, and improve the instructions and notations used so that the Council, Storage Providers and others understand exactly what and how is being measured, how it's going to be graded, and how frequently the should be measured
Feel free to co-ordinate with the Operations group if additional technical support is needed.
- Deploy a script that measures the data you can, and share the script so that others can do so.
- Finally, review the proposed OKR system outlined in KPI 19.9, and the numbers that come out of it.
Grading
- No progress.
19.SP-2 - Storage Provider Sanctions
- Reward:
$50
- Start Block:
#1998000
- End Block:
#2192400
Purpose
Although the OKR system will make it less profitable to be an underperforming SP on paper, the savings in costs by running a "cheap" node may break that assumption. Although we believe the Lead should have some subjective decision making power in deciding when the sanction a Worker, some objective data should be made available for the benefit of all parties. That doesn't mean that for long running SPs, with a great track record, some underperformance for some time is accepted.
Scope of Work
- Based on OKR related data, and/or other criteria, create a set of rules that could or should lead to the firing, slashing, or other sanctions agains an SP.
Grading
- No work submitted/completed
19.SP-3 - Test Storage Node Upgrade
- Reward:
$400
- Start Block:
#1998000
- End Block:
#2192400
Purpose
A PR with another upgrade to the storage node was made a while back. This has been testet quite well, and seems to improve the performance further, with some improvements added to helios
as well that should be helpful for the OKRs.
Scope of Work
- Fire up two new storage nodes at the same time, where one runs the current
master
branch, and the other the branch with the upgrade. Log which commit they are built from. Configure them as such:
- both in the same datacenter
- with the same specs
- run as
--anonymous
- set
--max-sync 50
- ensure they have enough storage (at least 300GB) to reduce randomness.
-
Check the amount of storage they have available at regular intervals (say every 1h), and compare the time it takes for each to complete, and whether they have any issues.
-
Deploy them (don't think you need to actually hire them, but you need a URL at least) to test downloading and playing 20-30 videos both have to a third computer, and compare the the download speed.
-
Test the new helios functionalities.
-
Report the results.
Grading
- @0x2bc + @freakstatic
KPI 18
- KPIs:
13+7
- Total Possible Rewards:
$2450+$1075
- Council Elected in Round:
20
- Council Members:
16
- Term Length:
7 days / 100800 blocks
- Start Block/Date:
#1890000 / 17.08.21
- End Block/Date:
#1990800 / 24.08.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#2019600 / 26.08.21
Grading
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
1905 | lyazufey1812 | 51 | 1798036 |
2124 | julysake | 10 | 352556 |
361 | blackmass | 9 | 317300 |
515 | l1dev | 164 | 5781919 |
635 | xfactorus | 19 | 669857 |
867 | xandrell | 57 | 2009570 |
318 | supunssw | 7 | 246789 |
2039 | doppelganger23 | 9 | 317300 |
321 | freakstatic_council | 117 | 4124906 |
957 | leet_joy | 6 | 211534 |
439 | fierydev | 2 | 70511 |
2462 | chiffah | 68 | 2397381 |
4 | nexusfallout | 10 | 352556 |
2 | tomato | 348 | 12268951 |
2435 | zazik | 75 | 2644170 |
2182 | isonar | 215 | 7579955 |
2329 | laura | 480 | 16922691 |
SUM | 17 | 1647 | 58065982 |
Note that some of the CMs shouldn't have gotten rewards, as they forgot to fill out the CM/FM survey. Fortunately for them, we forgot to annihilate them :)
Payouts made on block #2049149.
Section I - Council work, Proposals and Bureaucracy
18.1 - Proposal Clearance
- Reward:
$200
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full term
- Start Block:
#1890000
- End Block:
#1990800
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that was open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
1905 | lyazufey1812 | 39 | 147 | 21 |
2124 | julysake | 21 | 69 | 10 |
361 | blackmass | 16 | 61 | 9 |
515 | l1dev | 25 | 95 | 14 |
635 | xfactorus | 37 | 134 | 19 |
867 | xandrell | 39 | 132 | 19 |
318 | supunssw | 12 | 48 | 7 |
2039 | doppelganger23 | 18 | 60 | 9 |
321 | freakstatic_council | 32 | 118 | 17 |
957 | leet_joy | 14 | 40 | 6 |
439 | fierydev | 4 | 16 | 2 |
2462 | chiffah | 28 | 106 | 15 |
4 | nexusfallout | 18 | 67 | 10 |
2 | tomato | 22 | 90 | 13 |
2435 | zazik | 27 | 106 | 15 |
2182 | isonar | 28 | 103 | 15 |
SUM | 16 | 380 | 1392 | 200 |
18.2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1890000
- End Block:
#1990800
- Start Block:
Purpose
The Council appears to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Note
As we have yet to conclude the second "round" of these, we will give it a little more time. Note however that the grading will require far better arguments (when in disagreement), and more precise questions (when information is required) for qualifying for rewards. A simple "no.", or "why?" will not command anything. Finally, we are trying to build a strong, yet friendly community, welcoming to all. There is no reason to be rude, and personal attacks without substance will automatically void an otherwise insightful message. There are standards even when disagreeing on the internet.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
In all the cases above, it is prudent to add a link to it in the #proposals
room in Discord, or simply paste the comment there as well.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- How clear and reasonably was the message your question/comment?
- was your argument(s) backed up by verifiable facts?
- did you link to source(s)?
- did your question(s) make it clear what your concern were?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $250)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $175)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Total Cap at $500
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @lyazufey1812 ($30)
- https://testnet.joystream.org/#/proposals/463
- Cost: Unknown
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: No
- Reward: $35
- The comment raised some important small mistakes with the written proposal
- https://testnet.joystream.org/#/proposals/463
- @chiffah ($15)
- https://testnet.joystream.org/#/proposals/449
- Cost: Up to $400
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: No. The vote was an abstain vote and there was no comment made.
- Reward: $15
- https://testnet.joystream.org/#/proposals/438
- Cost: Up to $10
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: No. The vote was an abstain vote and the comment didn't provide any dissent.
- Reward: $0
- https://testnet.joystream.org/#/proposals/437
- Cost: Up to $10
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: No. The vote was an abstain vote and the comment didn't provide any dissent.
- Reward: $0
- https://testnet.joystream.org/#/proposals/449
- @tomato ($50)
- https://testnet.joystream.org/#/proposals/449
- Cost: Up to $400
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: Possibly, 4 approvals at time of comment
- Reward: $50
- https://testnet.joystream.org/#/proposals/449
18.3 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1890000
- End Block:
#1990800
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $285/$300
- https://testnet.joystream.org/#/proposals/447
- Managing PR's in community repo per rules: https://github.com/Joystream/community-repo/pulls?q=is%3Apr+is%3Aclosed
- Signing off on all reports - Yes
- Assisting and support other CMs - Yes
- Monitor the bounties - Yes
- Council mint refilled - Yes
- Notify Jsgenesis of network issues - Yes
- Report on progress - Yes
- Term summaries - Yes
- Bounty JSON updated: N/A
- Council wrangling in #council channel - Yes
18.4 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1890000
- End Block:
#1990800
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Note The long running Council Secretary is away for this term, so someone new needs to step up!
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @l1dev ($150/$150)
18.5 - Council Minutes
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day
- Start Block:
#1890000
- End Block:
#2005200
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
Scope of Work
- The
19th
"official" Council (#1890000-#1990800) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
- @freakstatic - $100/$100
- Completed Tokenomics + Council Minutes report: https://testnet.joystream.org/#/proposals/480
18.6 - FM Surveys
- Reward:
$75
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1897200
- End Block:
#1983600
- Start Block:
Purpose
We are still trying to figure out exactly why we don't see more FM submissions from the Working Groups. These specific Surveys are likely to be a recurring KPI. Note that these are not anonymous!
Scope of Work
- Have the Council Members fill out this survey. Any individual CM that doesn't complete will get annihilated, but only that CM (not the others).
- Have the Content Curators fill out this survey. At the time of writing, there are 9 workers + (1 the lead). For each CC after the 6th one, $25 will be awarded to the CM(s) in charge.
- Have the Storage Providers fill out this survey. At the time of writing, there are 9 workers + 1 (the lead). For each SP after the 6th one, $25 will be awarded to the CM(s) in charge.
Reward Distribution
Grading is individual.
Grading
- @lyazufey1812 ($0/$75)
- Notified Council Members, Curators and Storage Providers of survey:
- https://testnet.joystream.org/#/forum/threads/555?replyIdx=4
- SOW 1: 13/16
- SOW 2: 5/10 -> no reward
- SOW 3: 4/10 -> no reward
Section II - Community Management
18.7 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
Full term
- Start Block:
#1897200
- End Block:
#1983600
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- @xandrell - https://testnet.joystream.org/#/forum/threads/555?replyIdx=3
- $37.5/$75
- @chiffah - https://testnet.joystream.org/#/forum/threads/555?replyIdx=5
- $37.5/$75
18.8 - Clean up Community Repo - Part 1
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1897200
- End Block:
#1983600
- Start Block:
Purpose
The Community Repo has gotten quite disorganized.
To make it easier for the community to find what they are looking for, it needs to be "re-orged".
Note
Extended from KPI 16 and 17. Note that this is final extension!
Scope of Work
- Design a set of constribution guidelines (rules) that covers:
- How the repo should be organized, meaning:
- what folders should be in the root directory, eg. should
bounties
,api-examples
andcouncil-reports
be in the root directory? - a further hierarchy, eg.
/council-reports/testnets/sumer/
or/council/council-reports/networks/sumer/
- what folders should be in the root directory, eg. should
- Naming convention rules, meaning:
- naming convention for folders, eg.
dash-separated-words
,camelCase
,underscore_separated_words
- naming convention for files
- may require conventions to depend on type of files
- naming conventions for work submitted as part of a:
- bounty, eg.
bounty_021-websiteTranslation
- kpi, eg.
sumer_kpi_016_dot_6-cleanUpCommunityRepo
- working group reports, eg.
curator_lead_report-210803
- bounty, eg.
- naming convention for folders, eg.
- Etc.
- Create a table/overview to makes browsing easier
- Make a PR, that adds contribution guidelines in a prominent and visible way.
- Create a proposal, and take feedback from:
- the rest of the Council
- the Working Groups (and Leads in particular)
- the community (with a preference for contributors)
Reward Distribution
If multiple PRs are made, only the best one will be rewarded.
Ideally however, this should be a collaborative effort.
Grading
- This was already completed in KPI 17.x and paid out $125/$150 to maxlevush: https://testnet.joystream.org/#/forum/threads/545?replyIdx=9 -- no claims, no rewards.
Section III - Working Groups
Note
While finishing these KPIs, this proposal came to our attention. Very relevant for this secion of KPIs.
18.9 - Follow up the Storage Working Group
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1897200
- End Block:
#1983600
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
- Establishing the new OKR system for the SPs has unfortunately stalled. The technical part is more or less complete, and will be completed for the next Council Term, so we're going to cut through and propose something more specific. The work is to find out exactly what the numbers
R_rec.L
,R_okr.L
,R_rec.W
andR_okr.W
should be:
- The Lead currently earns $72 per week in recurring rewards
- The Workers (ex JSG) all earn $27 per week in recurring rewards
- Going forward, we propose all Workers (
R_rec.W
) earn either the break-even cost in terms of hardware, or slightly below. - Whether the recurring reward for the Lead (
R_rec.L
) should be higher or lower than this isn't clear.- The Lead has extra responsibilities to running their node, which has a value
- The Lead will however potentially earn an extra income on this, as they will earn OKR rewards for the groups performance, and for Storage KPIs, which will cover most of their extra tasks
- After establishing a benchmark value for OKRs, the OKR payout scheme will mean that of max OKR payout pool, equal to
R_rec.L
+R_rec.W
, so that:- For the Group:
- For each of the 7(?) KRs that exceeds the weekly target -> 1/7th of
R_okr.W
is shared between all the SPs that reached this individual KR. - If the group on average exceeds the target for 4/7 KRs, the Lead gets a bonus equal to
R_okr.L/10
- If the group on average exceeds the target for 5/7 KRs, the Lead gets a bonus equal to
R_okr.L/5
- If the group on average exceeds the target for 6/7 KRs, the Lead gets a bonus equal to
R_okr.L/2
- If the group on average exceeds the target for 7/7 KRs, the Lead gets a bonus equal to
R_okr.L
- For each of the 7(?) KRs that exceeds the weekly target -> 1/7th of
- For the Group:
- Get these independent numbers approved by the Council, and provide specific examples of outcomes for the Workers and Lead with this schedule.
- Note that half of the OKR rewards will come from minting of new tokens, so only half of the OKR rewards needs to be accounted for in the budget.
- Further note that it's unlikely that the FULL OKR rewards (
R_okr.W
+R_okr.L
) will actually be paid out each week, so the Council can assume the budget for the SP group won't have to pay all ofR_rec.L + R_rec.W + (R_okr.W + R_okr.L)/2
.
-
Finally, as the OKRs will be tracked starting with the next Council Term, ensure that the Lead has set the new rewards for the workers within that time. (Also a Storage KPI).
-
Assist the Lead with their other KPIs for the Term.
Reward Distribution
Individual grading.
For 3.
If the SP KPI is graded as complete, the SP Lead will decide the reward for the CM(s). If not, nothing will be granted unless there are consequences*
for the Lead.
*
Firing is not the only valid consequence
Weighting:
- 1: $200
- 2: $100
Grading
- SOW 1 (OKRs + payouts) - ($200)
- No work submitted. No rewards.
- SOW 2 (set new rewards) - ($100)
- No work submitted. No rewards.
- SOW 3 (assist lead with their KPIs)
- No work submitted. No rewards.
18.10 - Follow up the Content Curators Working Group
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1897200
- End Block:
#1983600
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
-
With the new "Upload Content" Bounty being presented, ensure we get a good start. Act as the Council's arm, to ensure that all the tasks outlined in KPI 18.13-3 and KPI 18.CC-3 are not only done, but in a satisfactory manner.
-
Assist the Curator Lead with their other Curators KPIs, KPI 18.CC-1 and KPI 18.CC-2.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1-3: $50
Grading
- SOW 1 (Public domain videos + KPI 18.CC-3) - ($75)
- No work submitted. No rewards.
- SOW (assist with KPI 18.CC-1 + 2) ($75)
- No work submitted. No rewards.
18.11 - Follow up the Operations Working Group
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1897200
- End Block:
#1983600
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
Scope of Work
Reward Distribution
Grading is individual.
Grading
- SOW 1 (assist lead in achieving their KPIs) - ($100)
- No work submitted. No rewards.
h2 id="section-iv">Section IV - Bounties
18.12 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50 per week
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day
- Start Block:
#1890000
- End Block:
#2005200
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
- No work submitted. No rewards.
18.13 - Other Bounty Managers
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day
- Start Block:
#1890000
- End Block:
#2005200
- Start Block:
Purpose
With two new Bounties Community Bounty #20 - "Github Bounty Guide" and Community Bounty #21 - "Website Translation", ready to go and two more expected during this Term, some work is needed!
Scope of Work
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager
- either a technical person from the Curator group or,
- a person from the Operations group with some knowledge about the Content system
- open and promote the Bounty to the community
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- add reasonable milestones
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager from the Operations group
- open and promote the Bounty to the community
- once the work has reached the first milestone, find a suitable member of the Community to review the language
- The JSG "Specs" for Community Bounty #22 - "Upload Content", can be found here
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- ensure a BM, or a small team is hired, for the scope of grading the "value" of the videos
- these people should NOT be Curators, to avoid overlap
- ensure the Curators are deploying resources to validate/approve the videos
- ensure a good workflow is established between them, with precise timelines
- officially open the Bounty through a forum post, before the end of the Term
Reward Distribution
Grading is individual.
Weighting:
- 1-2: $50
- 3: $100
Grading
- Bounty 20 ($50)
- @isonar $50/$50 - completed payments - https://testnet.joystream.org/#/proposals/455
- Bounty 21 - Website Translation ($50)
- No work submitted. No rewards.
- Bounty 22/24 - Upload Content ($100)
- No work submitted. No rewards.
Working Group KPIs
We are trying out new ways of rewarding the Working Groups, for multiple reasons.
The Working Group KPIs will, at least for this Council Term, work like so:
- The Lead assigns a group or individual to the task (they can choose themselves).
- Unless otherwise noted, all subtasks must be completed. If not, no rewards will be given.
- Example: If the Operations Group performs the Update Featured Video, but fails to test anything and/or take notes, they will not be rewarded at all.
Note that there were some incorrect block heights for the End Block for all of these. It was meant to be the end of the term, but it's not clear exactly if it was understood to be a typo, so they'll be extended (mostly).
18.CC-1 - Update Featured Video
- Reward:
$75
- Start Block:
#1897200
- End Block:
#1983600
The "Main" featured video for the Joystream Player has been the same for a while now. It's time to change it!
Last week, the same KPI was made, with these results:
Some notes:
-
This mechanism certainly rules out a number of videos, but it doesn't establish a mechanism, unless one accepts that the Lead and curators agree offchain. Further, one has to remember that the featured video is the first thing any new user will see when opening the Joystream Player, and it autoplays the "cover cut" by default. That means that this video has to be standout, and the cover cut needs to be interesting.
-
Nothing provided.
-
Continuing from 1, although this particular video was indeed well made, it's rather short.
- No cover cut was provided, as the link doesn't work
It has to be mentioned that:
- The link provided in the KPI (by me) was not correct, as the file name had been changed.
- The Council approved the "faulty" mechanism.
To summarize, we'll try again!
Scope of Work
- Decide on some "good" mechanism for deciding what it should be, eg:
- Community Vote
- Council Vote
- Most viewed
- Other
Notes: - JSG reserves the right to veto this choice, for any reason.
- Certain metadata is required, including a cover cut.
- The community should keep in mind the featured video slot should be reserved for the absolute best ones in terms of production value etc. The main goal of this video (in the future) is to get the person opening the Joystream Player buy a subscription to the platform!
-
Following
1.
, use said mechanism to select the video. -
Propose one (or more if needed) videos to Jsgenesis -
@kdembler(koalva#6880)
and@bedeho(bedeho#0275)
on Discord for approval. -
After one has been approved, follow the steps here, and share the json with
@kdembler(koalva#6880)
on Discord.
Grading
- @zazik ($30/$75) - https://testnet.joystream.org/#/forum/threads/555?replyIdx=2
- SOW 1/2
- A new PR was made: https://github.com/Joystream/community-repo/pull/309 (this added that the council has to approve the new video)
- Proposal never reached quorum: https://testnet.joystream.org/#/proposals/462
- SOW 3/4
- A new video was proposed, approved and has been integrated into Atlas.
18.CC-2 - Bounty 10 Cleanup
- Reward:
$150
- Start Block:
#1897200
- End Block:
#1933200
Purpose
The post-mortem of Bounty 10 still hasn't been completed. However, with the "old" Lead having left, and "new blood" on the way in, we can't expect them to fix it for free.
Although some work may have been done on this last Term, nothing has been shared as far as we know. We'll give the Curator Lead one more go. (Note the early End Block).
Scope of Work
- Familiarize yourself with the task defined in KPI 15.8 and KPI 16.10, and the WIP delivery. Get an overview of what is done AND correct, what is done but not correct, and what is missing.
- Create a realistic timeline, with milestones, for when the task is completed for all the videos, assuming the entire team will divert their full attention to it.
- Share the work that has been done thus far, with emphasis on the format of what will be delivered when the Cleanup is done.
Grading
@laura ($450)
* As mentioned when grading the last term, the Curators basically finished the work instead of following the KPI rigorously.
* The "issue" with that, is that the rewards for completing hadn't been defined.
* Furthermore, the task in 1. and 2. were graded last week.
* The actual work submitted was great, and spot checks uncovered only a couple minor errors. The only real problem one could find is that it appears not to have been clear to the Curators why this was a KPI - namely identifying incorrect and/or dishonest licensing. In the future, it would be nice to highlight which videos needs curation, and why.
* The reward for this KPI is going to be higher than the reward stated, as it completes KPI 16.10 only double. The reward for those would have been $400.
* Adding another $50 from this brings the total to $450.
18.CC-3 - New "Upload Content" Bounty
- Reward:
$100
- Start Block:
#1897200
- End Block:
#1983600
Purpose
As we sincerely wants to have a lot of uploads on our platform, we're planning to re-open a similar Bounty to #10, but with more strict and precise rules for all parties. The Curators will verify/approve each video, before the BM will do the actual grading.
The JSG "Specs" for Community Bounty #22 - "Upload Content", can be found here.
Scope of Work
- Review the issue, and in collaboration with the Council and the BM that gets assigned, agree on the exact:
- Scope of Work for the Curator group
- Workflow
- Weekly deadlines
- The format of the validation performed by the Curators
- Allocate resources from the Curator Group and "train" them, to ensure what was agreed in
1.
is upheld.
Grading
- @zazik ($30/$50)
- @laura ($30/$50)
- SOW 1 (review issue and agree on specifics)
- Proposal accepted by council: https://testnet.joystream.org/#/proposals/463
- SOW 2 (allocate resources from the curator group)
- Proposal accepted by council: https://testnet.joystream.org/#/proposals/463
18.OP-1 - KPI JSON
- Reward:
$300
- Start Block:
#1897200
- End Block:
#1983600
Purpose
As many have pointed out, using this blog post to read the KPIs is cumbersome at best. The Operations group has proposed a new format for this, under the assumption we still used a JSON to present the data. As this is, sadly, not the case anymore, we need to make it happen!
Note that the Operations Lead proposed using YAML instead of a JSON, but I prefer the latter for the simple fact that it's used in so many other parts of the Joystream Platform, making it easier for most to grasp (if not master).
Scope of Work
-
Based on the structure of this, and previous KPIs, come up with a JSON Schema for presenting the data in the KPIs.
-
Find a "clever" standard of presenting tables, line changes, bullet points (and numbered/lettered) presented.
-
Create a script that parses a markdown and creates a nice looking JSON, OR vice-versa.
Weighing:
- $150
- $50
- $100
Note that unlike most WG KPIs, 1.
will be graded (and rewarded) even if 2.
or 3.
is not completed.
Grading
- SOW 1 (JSON schema) ($150)
- @isonar ($150/$150) - Initial draft of KPIs JSON schema https://github.com/Joystream/community-repo/pull/303
- SOW 2 (standard for presenting tables/bullet points) ($50)
- No work submitted. No rewards.
- SOW 3 (create a script) ($100)
- No work submitted. No rewards.
18.OP-2 - CLI Integration in Pioneer
- Reward:
$200
- Start Block:
#1897200
- End Block:
#1983600
Purpose
Some amount users has issues accessing the CLI, mostly due to the slightly cumbersome installation process, but for others, even opening the terminal is a little scary. Is there a way we could integrate the CLI in to Pioneer? Ideally, it would be similar to how the current JS integration works, but allow you to choose between the keys you have in your local storage.
This was not done last week, but I'm giving it one more Term. I'll also bump the reward, as it seems it may be underpaid a bit.
Scope of Work
- Do some research, and research if this is feasible. If yes, outline the challenges associated with the making this, create an estimate of the time needed and the expected costs.
- It can be used in the browser, similar to how the current JS integration works
- It can use the keys you have in your local storage
Make a PR with the findings to the Community Repo
- Write the draft for making this a Bounty.
Note that unlike most WG KPIs, 1.
will be graded (and rewarded) even if 2.
is not completed.
Grading
- SOW 1 (Research)
- This was already completed in KPI 17.x and paid out $75/$100 to isonar.
- SOW 2 (Write Bounty Draft)
- The KPI 17.x grading notes that this was impractical, no work was reported, so no rewards have been given.
18.SP-1 - Storage OKRs
- Reward:
$200
- Start Block:
#1897200
- End Block:
#1962000
Purpose
We still believe OKRs to be a good way to reward the Storage Provider Lead, and workers. However, the actual OKRs needs to be settled, and some benchmark numbers must be established. As it appears KPI 16.8-2 was not done, and the KPI 17.SP-1 wasn't completed last term, we'll give them one more chance, but with a shorter deadline.
Scope of Work
- Review the Storage OKRs here.
- Review the metrics, and propose what:
- changes
- removals, or;
- additions are in order, and;
- why
- Review the proposed tools needed
- Add examples, and improve the instructions and notations used
Feel free to co-ordinate with the Operations group if additional technical support is needed.
- For the Storage OKRs that CAN be measured without new tools, start getting numbers as a benchmark value for the OKRs. In addition to the "final" numbers, the data sources must be provided.
- Finally, review the proposed OKR system outlined in KPI 18.9, and the numbers that come out of it.
Grading
- SOW 1 (Review Storage OKRs)
- No work submitted. No rewards.
- SOW 2 (Start measurements)
- No work submitted. No rewards.
- SOW 3 (Review proposed OKR system)
- No work submitted. No rewards.
18.SP-2 - Storage Provider Sanctions
- Reward:
$50
- Start Block:
#1897200
- End Block:
#1983600
Purpose
Although the OKR system will make it less profitable to be an underperforming SP on paper, the savings in costs by running a "cheap" node may break that assumption. Although we believe the Lead should have some subjective decision making power in deciding when the sanction a Worker, some objective data should be made available for the benefit of all parties. That doesn't mean that for long running SPs, with a great track record, some underperformance for some time is accepted.
Scope of Work
- Based on OKR related data, and/or other criteria, create a set of rules that could or should lead to the firing, slashing, or other sanctions agains an SP.
Grading
- SOW 1 (set of rules for firing/slashing/sanctions against SPs)
- No work submitted. No rewards.
KPI 17
- KPIs:
13+5
- Total Possible Rewards:
$2825+$725
- Council Elected in Round:
18
- Council Members:
16
- Term Length:
7 days / 100800 blocks
- Start Block/Date:
#1789200 / 10.08.21
- End Block/Date:
#1890000 / 17.08.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#1918800 / 19.08.21
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
1905 | lyazufey1812 | 19+45 | 639959+1515692 |
2124 | julysake | 6 | 202092 |
361 | blackmass | 6 | 202092 |
515 | l1dev | 11 | 370502 |
982 | drmarkovi | 9 | 303138 |
867 | xandrell | 17 | 572594 |
321 | freakstatic_council | 124 | 4176571 |
439 | fierydev | 8 | 269456 |
4 | nexusfallout | 12 | 404184 |
2 | tomato | 329 | 11081387 |
736 | mmsaww | 56 | 1886193 |
2329 | laura | 141 | 4749166 |
705 | flakes9776 | 10 | 336820 |
2130 | maxlevush | 663 | 22331184 |
1048 | igrex | 126 | 4243935 |
2182 | isonar | 282 | 9498331 |
SUM | 16 | 1819 | 61267604 |
- due to an error,
lyazufey1812
didn't get credit for 17.2 in the initial transfer.
Paid out on block #1,963,066 and block #1,963,067.
Section I - Council work, Proposals and Bureaucracy
17.1 - Proposal Clearance
- Reward:
$200
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full term
- Start Block:
#1789200
- End Block:
#1890000
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that was open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
1905 | lyazufey1812 | 34 | 127 | 19 |
2124 | julysake | 12 | 36 | 6 |
361 | blackmass | 11 | 38 | 6 |
515 | l1dev | 18 | 72 | 11 |
982 | drmarkovi | 17 | 59 | 9 |
867 | xandrell | 31 | 109 | 17 |
321 | freakstatic_council | 24 | 93 | 14 |
439 | fierydev | 14 | 50 | 8 |
4 | nexusfallout | 21 | 79 | 12 |
2 | tomato | 18 | 70 | 11 |
736 | mmsaww | 21 | 83 | 13 |
2329 | laura | 26 | 104 | 16 |
705 | flakes9776 | 21 | 66 | 10 |
2130 | maxlevush | 31 | 135 | 21 |
1048 | igrex | 34 | 140 | 21 |
2182 | isonar | 14 | 47 | 7 |
SUM | 16 | 347 | 1308 | 200 |
17.2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1789200
- End Block:
#1890000
- Start Block:
Purpose
The Council appears to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Note
As we have yet to conclude the second "round" of these, we will give it a little more time. Note however that the grading will require far better arguments (when in disagreement), and more precise questions (when information is required) for qualifying for rewards. A simple "no.", or "why?" will not command anything. Finally, we are trying to build a strong, yet friendly community, welcoming to all. There is no reason to be rude, and personal attacks without substance will automatically void an otherwise insightful message. There are standards even when disagreeing on the internet.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
In all the cases above, it is prudent to add a link to it in the #proposals
room in Discord, or simply paste the comment there as well.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- How clear and reasonably was the message your question/comment?
- was your argument(s) backed up by verifiable facts?
- did you link to source(s)?
- did your question(s) make it clear what your concern were?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $250)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $175)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Total Cap at $500
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @laura $0
- https://testnet.joystream.org/#/proposals/424
- Cost (Claimed): $100
- Was it a malicious, or objectively bad proposal: No
- Did the vote/comment affect the outcome: No, comment was made after 5/9 votes were in.
- "Cost" of proposal: unknown
- Reward: $0
- https://testnet.joystream.org/#/proposals/424
- @igrex $55
- https://testnet.joystream.org/#/proposals/408
- Cost: unknown, but presumably some non-trivial amount
- Was it a malicious, or objectively bad proposal: no, but substance was lacking
- Did the vote/comment affect the outcome: Yes, likely
- Was the objection reasonable, and presented in an acceptable way: yes
- Reward: $50
- https://testnet.joystream.org/#/proposals/416
- Proposal was an improvement to the above.
- Cost: $25
- Was it a malicious, or objectively bad proposal: no, but substance was lacking
- Did the vote/comment affect the outcome: Possibly
- Was the objection reasonable, and presented in an acceptable way: yes
- Reward: $5 (shared)
- https://testnet.joystream.org/#/proposals/408
- @isonar $0
- "I really hate this KPI, frankly, but this week there was a case which I couldn't help but reporting as anything else but my dissent."
- https://testnet.joystream.org/#/proposals/423
- Proposal ongoing, will be graded next term
- https://testnet.joystream.org/#/proposals/417
- Cost: $450 (text proposal, so inferred)
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: No
- No comment was made to the actual voters. Discord comments are fine and well, but unless the voters can see them...
- Reward: $0
- @lyazufey1812 $45
- https://testnet.joystream.org/#/forum/threads/545?replyIdx=5
- https://testnet.joystream.org/#/proposals/407
- Cost: $45
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: No (6/7 votes cast, before the first comment, cancelled before the second)
- Reward: $0
- https://testnet.joystream.org/#/proposals/419
- Cost: NA
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: no, but made OP post correct link
- Reward: $5
- https://testnet.joystream.org/#/proposals/416
- Cost: $25
- Was it a malicious, or objectively bad proposal: no, but substance was lacking
- Did the vote/comment affect the outcome: Possibly
- Was the objection reasonable, and presented in an acceptable way: yes
- Reward: $5 (shared)
- https://testnet.joystream.org/#/proposals/421
- Cost: NA
- Improved the proposal, by correcting an error
- Reward: $5
- https://testnet.joystream.org/#/proposals/422
- Cost: NA
- Was it a malicious, or objectively bad proposal: no
- Was the objection reasonable, and presented in an acceptable way: yes
- Reward: $5
- https://testnet.joystream.org/#/proposals/407
- https://testnet.joystream.org/#/forum/threads/545?replyIdx=5
- @mmsaww $5
- https://testnet.joystream.org/#/proposals/416
- Cost: $25
- Was it a malicious, or objectively bad proposal: no, but substance was lacking
- Did the vote/comment affect the outcome: Possibly
- Was the objection reasonable, and presented in an acceptable way: yes
- Reward: $5 (shared)
- https://testnet.joystream.org/#/proposals/416
- @maxlevush $22
- https://testnet.joystream.org/#/proposals/407
- Cost: $45
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: Likely
- Reward: $22
- https://testnet.joystream.org/#/proposals/407
- @freakstatic_council $10
- https://testnet.joystream.org/#/proposals/417
- Cost: $450 (text proposal, so inferred)
- Was it a malicious, or objectively bad proposal: no
- Did the vote/comment affect the outcome: No.
- Reasonable objection, but a more helpful one would be to link to alternatives.
- Reward: $10
- https://testnet.joystream.org/#/proposals/417
17.3 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1789200
- End Block:
#1890000
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
Note The long running Council Secretary is away for this term, so someone new needs to step up!
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $280/$300
- Managing PR's in community repo per rules: https://github.com/Joystream/community-repo/pulls?q=is%3Apr+is%3Aclosed
- Signing off on all reports - Yes
- Assisting and support other CMs - Yes
- Monitor the bounties - Yes
- Council mint refilled - Yes
- Notify Jsgenesis of network issues - Yes
- Report on progress - Yes
- Term summaries - Yes
- Bounty JSON updated: Yes - https://github.com/Joystream/community-repo/pull/296
- Council wrangling in #council channel - Yes
17.4 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1789200
- End Block:
#1890000
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Note The long running Council Secretary is away for this term, so someone new needs to step up!
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @maxlevush - $150/$150
- Assigned all relevant PRs to the secretary: https://testnet.joystream.org/#/forum/threads/545?replyIdx=8
17.5 - Council Minutes
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 2 days
- Start Block:
#1789200
- End Block:
#1918800
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
Scope of Work
- The
18th
"official" Council (#1789200-#1890000) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
- @freakstatic_council - $50/$50
- Council minutes: https://testnet.joystream.org/#/forum/threads/545?replyIdx=10
- @freakstatic_council - $50/$50
- Tokenomics report: https://testnet.joystream.org/#/forum/threads/545?replyIdx=10
17.6 - FM Surveys
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1796400
- End Block:
#1983600
- Start Block:
Purpose
We are still trying to figure out exactly why we don't see more FM submissions from the Working Groups. These specific Surveys are likely to be a recurring KPI. Note that these are not anonymous!
Scope of Work
- Have the Council Members fill out this survey. Any individual CM that doesn't complete will get annihilated, but only that CM (not the others).
- Have the Content Curators fill out this survey. At the time of writing, there are 9 workers + but no lead. For each CC after the 6th one, $25 will be awarded to the CM(s) in charge.
- Have the Storage Providers fill out this survey. At the time of writing, there are 9 workers + 1 the lead - soon(tm). For each SP after the 6th one, $25 will be awarded to the CM(s) in charge.
Reward Distribution
Grading is individual.
Grading
- @tomato - 37.5$/$200
- @maxlevush - 37.5$/$100
- CMs completed in time:
julysake, mmsaww, igrex, Nexusfallout, flakes9776, freakstatic_council, maxlevush, tomato, lyazufey1812, isonar
- Technically,
@laure
should be DQ'd, but it's assumed to be a misunderstanding this time, as the curator survey was completed.
- Technically,
- CCs completed in time: 4/10 -> no reward.
- SPs completed in time: 9/10 -> $75.
Section II - Community Management
17.7 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
Full term
- Start Block:
#1796400
- End Block:
#1983600
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Note
$75 will be added to the budget ref. proposal 393, and removed from this.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- $75 per group
- @mmsaww $37.5/$75 - https://testnet.joystream.org/#/forum/threads/545?replyIdx=7
- @maxlevush $37.5/$75 - https://testnet.joystream.org/#/forum/threads/545?replyIdx=8
17.8 - Clean up Community Repo - Part 1
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1796400
- End Block:
#1983600
- Start Block:
Purpose
The Community Repo has gotten quite disorganized.
To make it easier for the community to find what they are looking for, it needs to be "re-orged".
Note
Extended from KPI 16
Scope of Work
- Design a set of constribution guidelines (rules) that covers:
- How the repo should be organized, meaning:
- what folders should be in the root directory, eg. should
bounties
,api-examples
andcouncil-reports
be in the root directory? - a further hierarchy, eg.
/council-reports/testnets/sumer/
or/council/council-reports/networks/sumer/
- what folders should be in the root directory, eg. should
- Naming convention rules, meaning:
- naming convention for folders, eg.
dash-separated-words
,camelCase
,underscore_separated_words
- naming convention for files
- may require conventions to depend on type of files
- naming conventions for work submitted as part of a:
- bounty, eg.
bounty_021-websiteTranslation
- kpi, eg.
sumer_kpi_016_dot_6-cleanUpCommunityRepo
- working group reports, eg.
curator_lead_report-210803
- bounty, eg.
- naming convention for folders, eg.
- Etc.
- Create a table/overview to makes browsing easier
- Make a PR, that adds constribution guidelines in a prominent and visible way.
- Create a proposal, and take feedback from:
- the rest of the Council
- the Working Groups (and Leads in particular)
- the community (with a preference for contributors)
Reward Distribution
If multiple PRs are made, only the best one will be rewarded.
Ideally however, this should be a collaborative effort.
Grading
- @maxlevush - $125/$150 - https://testnet.joystream.org/#/forum/threads/545?replyIdx=9
- Done, but did not include
3. adds contribution guidelines in a prominent and visible way.
- Done, but did not include
Section III - Working Groups
Note
While finishing these KPIs, this proposal came to our attention. Very relevant for this secion of KPIs.
17.9 - Follow up the Storage Working Group
- Reward:
$300
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1796400
- End Block:
#1983600
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
-
Assist the Lead with their KPI for the Term.
-
Assuming:
- There will, on average, be ~$200 available as KPI rewards (minted by JSG, not part of the budget) for the Storage Group (KPIs managed by the Lead)
- There will be weekly grading of the OKRs, where the Lead is rewarded if the group performs well, and the workers are rewarded if they perform well individually.
Propose on an exact reward structure for the SPs:
- How much should simply occupying the role award, for both workers and Lead?
- What is the assumed break-even point for one SP?
- Why so much/little?
- How much should the individual SP earn for running good nodes through the OKR system?
- Should the OKR system pay for their internal rank, ie.
relative
grading or should it beabsolute
?
- Should the OKR system pay for their internal rank, ie.
- How much should the SP Lead earn for managing a team that gets "good" scores?
- How does the KPIs play in here?
- Should we assume the Lead always assigns themselves?
Based on numbers found, and the current budget, how many SPs should the platform have?
Reward Distribution
Individual grading.
For 1.
If the SP KPI is graded as complete, the SP Lead will decide the reward for the CM(s). If not, nothing will be granted unless there are consequences*
for the Lead.
*
Firing is not the only valid consequence
Weighting:
- 1: $200
- 2: $100
Grading
- Assist the Lead with their KPI for the term ($200)
- No claims for this KPI.
- Propose exact reward structure for SPs + KPIs ($100)
- No claims for this KPI.
17.10 - Follow up the Content Curators Working Group
- Reward:
$350
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1796400
- End Block:
#1983600
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
-
Hire a new Lead. It needs be made abundantly clear to the applicant what is expected of them from the get go, as they will be "under fire" immediately.
-
The platform needs a well defined curation policy for the Curators. Although some examples have been made in the helpdesk, both for the Lead and Workers, the Council should improve and update these based on the experiences thus far. This is not to say that there can't be any degrees of freedom for the Curators, but some basic rules should be prepared, and presented in a comprehensible way. Prepare a PR to the community repo, and get it approved by the rest of the Council. Ensure the new Lead is on board with these rules, keeping in mind the reward they will earn. Finally, present the rules to JSG for approval.
-
Ensure the Lead immediately addresses their KPIs for the Term. If they are hired before block
#1947600
, ie. three or more full days before the end of the term, but is unable to complete the tasks outlined in their KPIs, a warning should be issued.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $100
- 2: $200
- 3: $50
Grading
- Hire a new lead ($100)
- @igrex $50/$100 - https://testnet.joystream.org/#/forum/threads/545?replyIdx=3
- Assisted with instructing the new lead with their role
- @maxlevush $50/$100 - https://testnet.joystream.org/#/forum/threads/545?replyIdx=9
- Created hiring proposal
- @igrex $50/$100 - https://testnet.joystream.org/#/forum/threads/545?replyIdx=3
- Curation Policy ($200)
- @maxlevush $200/$200 - https://github.com/Joystream/community-repo/pull/291
- Ensure the lead immediately addresses their KPIs ($50)
- @maxlevush $20/$50 - https://testnet.joystream.org/#/forum/threads/545?replyIdx=9
17.11 - Follow up the Operations Working Group
- Reward:
$250
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1796400
- End Block:
#1983600
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
Scope of Work
- As for the other Working Groups, we are considering switching the Operations Working Group's rewards scheme to a combination of specific Operations KPIs, and perhaps at a later stage OKRs. Review KPI 15.9-1, adapt it to the Operations Working Group, and propose a scheme. An important thing that is unique to this group is that some of it's Workers are hosting infrastructure out of pocket. It's not entirely clear exactly what that is, who is doing it, how it's being compensated, and whether these tasks are tied to individuals who happens to be part of the Operations WG, or whether these are tasks that are tied to the WG itself.
- Assist the Lead in achieving their Runtime Upgrade Test KPI.
Reward Distribution
Grading is individual.
For 2.
If the KPI is graded as complete, the Operations Lead will decide the reward for the CM(s). If not, nothing will be granted unless there are consequences*
for the Lead.
*
Firing is not the only valid consequence
Weighting:
- 1: $150
- 2: $100
Grading
- Reward Scheme ($150)
- No claims for this KPI.
- Assist the lead in achieving their Runtime Upgrade Test KPI ($100)
- @isonar https://testnet.joystream.org/#/forum/threads/545?replyIdx=4
- Can't claim twice!
h2 id="section-iv">Section IV - Bounties
17.12 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50 per week
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day
- Start Block:
#1688400
- End Block:
#1717200
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
- Bounty 9 ($25/$50 per week)
- No claims for this KPI.
17.13 - Other Bounty Managers
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day
- Start Block:
#1688400
- End Block:
#1717200
- Start Block:
Purpose
With two new Bounties Community Bounty #20 - "Github Bounty Guide" and Community Bounty #21 - "Website Translation", ready to go and two more expected during this Term, some work is needed!
Scope of Work
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager
- either a technical person from the Curator group or,
- a person from the Operations group with some knowledge about the Content system
- open and promote the Bounty to the community
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- add reasonable milestones
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager from the Operations group
- open and promote the Bounty to the community
- once the work has reached the first milestone, find a suitable member of the Community to review the language
Reward Distribution
Grading is individual.
Grading
- Community Bounty #20 - "Github Bounty Guide"
- @isonar - $50/$50 - https://testnet.joystream.org/#/forum/threads/545?replyIdx=4
- Community Bounty #21 - "Website Translation"
- No claims for this KPI.
Working Group KPIs
We are trying out new ways of rewarding the Working Groups, for multiple reasons.
The Working Group KPIs will, at least for this Council Term, work like so:
- The Lead assigns a group or individual to the task (they can choose themselves).
- Unless otherwise noted, all subtasks must be completed. If not, no rewards will be given.
- Example: If the Operations Group performs the runtime upgrade, but fails to test anything and/or take notes, they will not be rewarded at all.
17.CC-1 - Update Featured Video
- Reward:
$75
- Start Block:
#1796400
- End Block:
#1983600
Purpose
The "Main" featured video for the Joystream Player has been the same for a while now. It's time to change it!
Scope of Work
- Decide on some "good" mechanism for deciding what it should be, eg:
- Community Vote
- Council Vote
- Most viewed
- Other
Note that: - JSG reserves the right to veto this choice
- Certain metadata is required.
- Following
1.
, use said mechanism to select the video. - Follow the steps here, and share the json with
@kdembler(koalva#6880)
on Discord.
Grading
- @laura (lead) - $0/$75
- https://testnet.joystream.org/#/forum/threads/545?replyIdx=2
- As stated here, the work contained some issues. As the KPI was extended, no reward given.
- @maxlevush (assisted)
17.CC-2 - Bounty 10 Cleanup
- Reward:
$150
- Start Block:
#1796400
- End Block:
#1983600
Purpose
The post-mortem of Bounty 10 still hasn't been completed. However, with the "old" Lead having left, and "new blood" on the way in, we can't expect them to fix it for free.
Scope of Work
- Familiarize yourself with the task defined in KPI 15.8 and KPI 16.10, and the WIP delivery. Get an overview of what is done AND correct, what is done but not correct, and what is missing.
- Create a realistic timeline for when the task is completed for all the videos, assuming the entire team will divert their full attention to it.
Grading
- @laura (lead) - $125/$150
- https://testnet.joystream.org/#/forum/threads/545?replyIdx=2
- Presumably done
- Estimation not provided during council term, but instead, it seems like the actual work was close to being done.
- This leads to a quite awkward situation, as the next CC KPI was supposed to set a reward for doing the work based on this.
- The final, "human, readable" version of the cleanup was presented formally after the deadline for this term.
- Therefore, the grading of the actual work will be done for the next term, this grading (and reward) covers only what was stated in 17.CC-1.
- In summary, it feels harsh to deduct in this case, but the Lead should expect the next grading to more accurately reflect the work that's been done.
- https://testnet.joystream.org/#/forum/threads/545?replyIdx=2
17.OP-1 - Runtime Upgrade Test
- Reward:
$200
- Start Block:
#1796400
- End Block:
#1983600
Purpose
Looking at the progress for KPI 16.11-3, it seems unlikely that the full test, plus report can be completed before the end of the Term.
Scope of Work
- Finish the test, per the testing protocol.
- Prepare a step by step by step report, with all the relevant information needed to verify the findings. This includes:
- For all the mint proposal testing:
- Proposal IDs
- Results
- Blockheights of every transaction of importance
- For all Operations Group stake testing:
- The addresses and memberships for all applicants
- The blockheights for each "event" and the balances of the relevant accounts before and after each of them.
- Results
- For all "random" tests performed:
- What was tested
- Results
Grading
- @isonar $100/$200
- https://github.com/Joystream/community-repo/pull/294
- Test was finished
- It seems as though the major parts were actually done, but there were many issues with the report:
- The structure of the report makes it very difficult to read.
- The same accounts have been used for multiple openings, and the naming (mix of
memberId
,memberHandle
,workerId
) - It's impossible to tell (from the report notes alone) whether the Operations WG applicants that applied before the upgrade got their stake(s) back or not.
- In @isonars defense, the instructions could have been made more clear, but in general (eg. not just in this case), I think it's important for users to try and think what is actually being done. In this particular case, it means that in order to verify the runtime works as intended, one has to get lots of historical state in order to parse the results.
- Furthermore, Pioneer was not upgraded.
- https://github.com/Joystream/community-repo/pull/294
- @l1dev
17.OP-2 - CLI Integration in Pioneer
- Reward:
$100
- Start Block:
#1796400
- End Block:
#1983600
Purpose
Some amount users has issues accessing the CLI, mostly due to the slightly cumbersome installation process, but for others, even opening the terminal is a little scary. Is there a way we could integrate the CLI in to Pioneer? Ideally, it would be similar to how the current JS integration works, but allow you to choose between the keys you have in your local storage.
Scope of Work
- Do some research, and research if this is feasible. If yes, outline the challenges associated with the making this, create an estimate of the time needed and the expected costs.
- It can be used in the browser, similar to how the current JS integration works
- It can use the keys you have in your local storage
Make a PR with the findings to the Community Repo
- Write the draft for making this a Bounty.
Note that unlike most WG KPIs, 1.
will be graded (and rewarded) even if 2.
is not completed.
Grading
- @isonar $75/$100
- https://testnet.joystream.org/#/forum/threads/545?replyIdx=4 (partially complete)
- The research part seems to have been done meticulously!
- No bounty text written, but as the conclusion was it's not practical, that seems reasonable.
- https://testnet.joystream.org/#/forum/threads/545?replyIdx=4 (partially complete)
- @l1dev (lead)
17.SP-1 - Storage OKRs
- Reward:
$200
- Start Block:
#1796400
- End Block:
#1983600
Purpose
We still believe OKRs to be a good way to reward the Storage Provider Lead, and workers. However, the actual OKRs needs to be settled, and some benchmark numbers must be established. As it appears KPI 16.8-2 was not done, this will be assigned to the group itself.
Scope of Work
- Review the Storage OKRs here.
- Review the metrics, and propose what:
- changes
- removals, or;
- additions are in order, and;
- why
- Review the proposed tools needed
- Add examples, and improve the instructions and notations used
Feel free to co-ordinate with the Operations group if additional technical support is needed.
- For the Storage OKRs that CAN be measured without new tools, start getting numbers as a benchmark value for the OKRs. In addition to the "final" numbers, the data sources must be provided.
Grading
- @l1dev
- https://testnet.joystream.org/#/forum/threads/545?page=2&replyIdx=11
- The work that was done doesn't seem to address anything from the KPI text.
KPI 16
- KPIs:
13
- Total Possible Rewards:
$3600
- Council Elected in Round:
17
- Council Members:
16
- Term Length:
7 days / 100800 blocks
- Start Block/Date:
#1688400 / 03.08.21
- End Block/Date:
#1789200 / 10.08.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#1818000 / 12.08.21
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
1905 | lyazufey1812 | 44 | 1473131 |
2124 | julysake | 7 | 234362 |
361 | blackmass | 6 | 200882 |
515 | l1dev | 11 | 368283 |
635 | xfactorus | 16 | 535684 |
867 | xandrell | 55 | 1841414 |
1962 | nkhlghbl | 2 | 66961 |
2039 | doppelganger23 | 7 | 234362 |
321 | freakstatic_council | 130 | 4352433 |
439 | fierydev | 5 | 167401 |
4 | nexusfallout | 13 | 435243 |
2 | tomato | 645 | 21594765 |
2130 | maxlevush | 473 | 15836161 |
2148 | controlla | 11 | 368283 |
1027 | stavr | 17 | 569164 |
2182 | isonar | 428 | 14329550 |
SUM | 16 | 1870 | 62608079 |
Paid out at block #1,849,466.
Section I - Council work, Proposals and Bureaucracy
16.1 - Proposal Clearance
- Reward:
$200
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full term
- Start Block:
#1688400
- End Block:
#1789200
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that was open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
1905 | lyazufey1812 | 36 | 139 | 19 |
2124 | julysake | 15 | 53 | 7 |
361 | blackmass | 13 | 46 | 6 |
515 | l1dev | 21 | 81 | 11 |
635 | xfactorus | 30 | 118 | 16 |
867 | xandrell | 35 | 125 | 17 |
1962 | nkhlghbl | 4 | 13 | 2 |
2039 | doppelganger23 | 14 | 50 | 7 |
321 | freakstatic_council | 32 | 121 | 17 |
439 | fierydev | 12 | 36 | 5 |
4 | nexusfallout | 26 | 97 | 13 |
2 | tomato | 26 | 109 | 15 |
2130 | maxlevush | 41 | 154 | 21 |
2148 | controlla | 20 | 77 | 11 |
1027 | stavr | 34 | 126 | 17 |
2182 | isonar | 27 | 97 | 13 |
SUM | 16 | 386 | 1442 | 200 |
16.2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1688400
- End Block:
#1789200
- Start Block:
Purpose
The Council appears to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before. Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
In all the cases above, it is prudent to add a link to it in the #proposals
room in Discord, or simply paste the comment there as well.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $250)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $175)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @maxlevush $114/$500
- https://testnet.joystream.org/#/forum/threads/533?replyIdx=6
- https://testnet.joystream.org/#/proposals/364 -
- Was it a malicious, or objectively bad proposal: not malicious, but was for a completely incorrect amount (lower than needed)
- Did the vote/comment affect the outcome: Yes, likely.
- "Cost" of proposal: $0.75 but it was resubmitted with the correct value and approved. Therefore the cost was still incurred by the platform.
- Reward: $0
- https://testnet.joystream.org/#/proposals/350
- Was it a malicious, or objectively bad proposal: No.
- Did the vote/comment affect the outcome: No.
- "Cost" of proposal: $9
- Reward: $0
- https://testnet.joystream.org/#/proposals/371
- Was it a malicious, or objectively bad proposal: No.
- Did the vote/comment affect the outcome: Yes, likely.
- "Cost" of proposal: $200
- Reward: $100
- https://testnet.joystream.org/#/proposals/390
- Was it a malicious, or objectively bad proposal: No.
- Did the vote/comment affect the outcome: No.
- "Cost" of proposal: NA
- Reward: $10
- https://testnet.joystream.org/#/proposals/396
- Was it a malicious, or objectively bad proposal: No.
- Did the vote/comment affect the outcome: No.
- "Cost" of proposal: $19
- Reward: $4
- https://testnet.joystream.org/#/proposals/364 -
- https://testnet.joystream.org/#/forum/threads/533?replyIdx=6
- @lyazufey $25/$500
- https://testnet.joystream.org/#/forum/threads/533?replyIdx=8
- https://testnet.joystream.org/#/proposals/383
- Was it a malicious, or objectively bad proposal: No.
- Did the vote/comment affect the outcome: Partially.
- "Cost" of proposal: $0 for platform, but for KPIs it could've influenced the rewards
- Reward: $25
- https://testnet.joystream.org/#/proposals/383
- https://testnet.joystream.org/#/forum/threads/533?replyIdx=8
16.3 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1688400
- End Block:
#1789200
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
Note The long running Council Secretary is away for this term, so someone new needs to step up!
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $280/$300
- Managing PR's in community repo per rules: https://github.com/Joystream/community-repo/pulls?q=is%3Apr+is%3Aclosed
- Signing off on all reports - Yes
- Assisting and support other CMs - Yes
- Monitor the bounties - Yes
- Council mint refilled - Yes
- Notify Jsgenesis of network issues - Yes
- Report on progress - Yes
- Term summaries - Yes
- Bounty JSON updated: N/A
- Council wrangling in #council channel - Yes
16.4 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1688400
- End Block:
#1789200
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Note The long running Council Secretary is away for this term, so someone new needs to step up!
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @maxlevush - $150/$150
- Assigned all relevant PRs to the secretary: https://testnet.joystream.org/#/forum/threads/533?replyIdx=6
16.5 - Council Minutes
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1688400
- End Block:
#1789200
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
Scope of Work
- The
17th
"official" Council (#1688400-#1789200) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
- @isonar - $50/$50
- Council minutes: https://testnet.joystream.org/#/proposals/400
- @isonar - $25/$50
- @freakstatic - $25/$50
- Tokenomics report: https://testnet.joystream.org/#/proposals/400
- Freakstatic helped with teaching isonar how to use the tokenomics report script and also fixed a
16.6 - Council Term Length and Size
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1702800
- End Block:
#1774800
- Start Block:
Purpose
We have had one week Council Terms and 16 CMs for a while now, giving everyone time to get used to it. Are these the "right" numbers?
Scope of Work
- Discuss the benefits and drawbacks of increasing and decreasing both numbers. Then propose new numbers, and back them up with data and/or arguments.
Reward Distribution
Ideally however, this should be a collaborative effort, but the organizer(s) will earn the rewards. They can however split as they like.
Grading
- @isonar - $150/$150
- Created thread for discussion and made a
text proposal
which was approved with new council parameters - https://testnet.joystream.org/#/forum/threads/524
- Created thread for discussion and made a
Section II - Community Management
16.7 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
- Russian Telegram Community and
#russian
Discord channel
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
Full term
- Start Block:
#1688400
- End Block:
#1789200
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- $75 per group
- @xandrell $37.5 - https://testnet.joystream.org/#/forum/threads/533?replyIdx=3
- @freakstatic $37.5 - https://testnet.joystream.org/#/forum/threads/533?replyIdx=4
- @mmsaww $37.5 - https://testnet.joystream.org/#/forum/threads/533?replyIdx=5
- @maxlevush $37.5 - https://testnet.joystream.org/#/forum/threads/533?replyIdx=7
16.8 - Clean up Community Repo - Part 1
- Reward:
$150
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1702800
- End Block:
#1774800
- Start Block:
Purpose
The Community Repo has gotten quite disorganized.
To make it easier for the community to find what they are looking for, it to be organized logically.
Scope of Work
- Design a set of constribution guidelines (rules) that covers:
- How the repo should be organized, meaning:
- what folders should be in the root directory, eg. should
bounties
,api-examples
andcouncil-reports
be in the root directory? - a further hierarchy, eg.
/council-reports/testnets/sumer/
or/council/council-reports/networks/sumer/
- what folders should be in the root directory, eg. should
- Naming convention rules, meaning:
- naming convention for folders, eg.
dash-separated-words
,camelCase
,underscore_separated_words
- naming convention for files
- may require conventions to depend on type of files
- naming conventions for work submitted as part of a:
- bounty, eg.
bounty_021-websiteTranslation
- kpi, eg.
sumer_kpi_016_dot_6-cleanUpCommunityRepo
- working group reports, eg.
curator_lead_report-210803
- bounty, eg.
- naming convention for folders, eg.
- Etc.
- Create a table/overview to makes browsing easier
- Make a PR, that adds constribution guidelines in a prominent and visible way.
- Create a proposal, and take feedback from:
- the rest of the Council
- the Working Groups (and Leads in particular)
- the community (with a preference for contributors)
Reward Distribution
If multiple PRs are made, only the best one will be rewarded.
Ideally however, this should be a collaborative effort.
Grading
- Work submitted, but incomplete. Grading deffered as this KPI is repeated in KPI 17
Section III - Working Groups
Note
While finishing these KPIs, this proposal came to our attention. Very relevant for this secion of KPIs.
16.9 - Follow up the Storage Working Group
- Reward:
$400
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1702800
- End Block:
#1774800
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Scope of Work
All tasks can be performed by the Council, but some co-ordination with the Lead seems prudent.
- We are considering switching the Storage Working Group's rewards scheme to a combination of Specific Storage KPIs, and OKRs. Propose a new compensation strategy based on all the information below.
Recurring Rewards
Some amount of their compensation should still come from recurring rewards. This could either be meant to:
- Cover the actual running costs of operating a storage node
- Cover the running costs, plus a small bonus for the work of bootstrapping, upgrading and maintaining
- Cover less than the costs, assuming there are secondary incentivizes tied to extraordinary tasks and/or performance
KPIs
- For extraordinary tasks, such as co-ordinated upgrades, testing new software, and debugging or researching errors, the Lead (and workers) have seen little to no incentives (eg. financial rewards) of doing so. Performing these tasks have only (directly) rewarded the Council through their KPIs. This can be fixed in multiple ways:
- The Council could simply pay them extra through spending proposals, thus having "everyone" pay
- The Council could increase their rewards temporarily to pay for it
- The Council could increase their rewards permanently, while also be more "vigilant" in firing/slashing the Leads, thus having a more effective carrot and stick
- All these will in some way affect the budget, complicating the financial side of the equation. Although this has some secondary benefits, it appears as though the Council(s) hasn't thought about it, or discarded it for some reason.
- The Council could pay them directly out of their own pockets (and claimed the KPI rewards themselves).
- This would make backroom deals more profitable. Unclear if this is good or bad.
- We could add Storage Working KPIs to address these.
- This approach would reduce the pressure on the Council, but add to Jsgenesis power and workload.
Assuming introducing Storage KPIs is the starting point for discussion:
- The extraordinary these tasks would be irregular, but important.
- Should they be for the Lead only?
- Is it reasonable at all for the Lead to receive these, or should they be expected to perform "these sort of tasks" anyway?
- What should the Leads recurring rewards be, if the only thing that distinguishes from the Workers is managing the Workers, (eg. hiring, firing and setting rewards) and reporting?
OKRs
Having objective and numeric metrics to evaluate the performance of the group has been long wanted, and used to some extent for a while. A formal system of measuring it, as outlined in #2 could be used to either:
- Give the Council better data to evaluate the performance of the Storage group, or
- Have the OKR system account for some percentage of the Leads, and potentially groups, overall rewards
Assuming we opt for the OKRs tied to rewards is the starting point for discussion. JSG proposes a system where:
- The Council either assigns someone to perform the measuring and grading, or it's done by JSG.
- The metrics and tools needed are provided through a group effort (JSG, the Operations group, and potentially others)
- The "official" OKRs only measures and rewards the Lead.
- The Lead gets the data measured, and uses it to measure and reward the individual Workers.
- They are measured each Council term.
Questions: - Does the above make sense? If not, propose improvements
- How much of the Leads, and potentially Workers, should be tied to the OKRs?
- Should the rewards come from budget, or some other source?
- How should they be paid out.
- Should there be a stick in addition to the carrot?
- Review the Storage OKRs.
An issue outlining the storage OKRs will be posted no later than block #1723000.
- Review the metrics, and propose what changes, removals or additions are in order, and why
- Review the proposed tools needed
- Add examples, and improve the instructions and notations used
- Time permitting, start measuring what the values of each Key Result is right now, to create a benchmark.
Reward Distribution
If multiple PRs are made, only the best one will be rewarded.
Ideally however, this should be a collaborative effort.
Weighting:
- $150
- $100
- $150
Grading
- Propose a KPI/OKR rewards scheme
- @tomato - $150/$150 (https://testnet.joystream.org/#/proposals/394)
- Review the Storage OKRs
- @tomato - $75/$100 (https://testnet.joystream.org/#/proposals/394)
- Start measuring to create a benckmark
- No work completed
16.10 - Follow up the Content Curators Working Group
- Reward:
$600
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1702800
- End Block:
#1774800
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
Note
Scope of Work
Task 1. is expected to be performed/coordinated by the Curator group. The Council, or a Council Member's job is to push them into doing so. The first half should have been completed during the last term.
Tasks 2-4 can be performed by the Council, but some co-ordination with the Lead seems prudent.
- Bounty #10 was cancelled, mainly because a quick spotcheck revealed that the Bounty meant to reward publishing videos in the Public Domain ("PD") (to be fair, other permissive licenses was also allowed, if the license was "valid" - eg. attribution included, no derivates, etc.), was mostly rewarding copying videos from YouTube (YT). After we announced this, a concern that not only was most of the videos taken from, but not all videos was even properly licensed from there.
The Curators must perform a "post mortem", going through ALL videos that submitted a claim to Bounty #10 (even if they weren't rewarded), and provide a spreadsheet with the following columns:
- Video Id
- Channel ID
- Owner Id
- On-chain License
- The on-chain license ID can be mapped to the name - see helpdesk for Curators
- On-chain Attribution
- Not applicable to PD, applicable to most Creative Commons (CC)
- Whether other licensing requirements are upheld
- Only applicable to certain CC licenses, eg. CC BY-ND - "No derivates"
- Information Provided
- If the forum post with Bounty claim contained extra info about the source
- Original YT link
- If available with a quick search
- Actual license of original source
- What license the media is actually licensed as
- On YT, any video that doesn't explicitly say
License - Creative Commons Attribution license (reuse allowed)
, is NOT free to share by anyone else than the owner.- Example: most (if not all) videos in Andreas Antonopoulos channel are licensed as CC BY 3.0
Before the end of the Term, the Curators must have completed the FULL report, and shared it with me @bwhm#6514
on Discord.
-
The platform needs a well defined curation policy for the Curators. Although some examples have been made in the helpdesk, both for the Lead and [Workers]](https://github.com/Joystream/helpdesk/tree/master/roles/content-curators), the Council should improve and update these based on the experiences thus far. This is not to say that there can't be any degrees of freedom for the Curators, but some basic rules should be prepared, and presented in a comprehensible way. Prepare a PR to the community repo, and get it approved by the rest of the Council.
-
At the time of writing, it's not clear whether task 4. and 5. from KPIs 15.8 were completed. These are loosely related to task 2. above.
-
As for the Storage Working Group, we are considering switching the Curators Working Group's rewards scheme to a combination of specific Curator KPIs, and perhaps at a later stage OKRs. Review KPI 16.9-1, adapt it to the Curator Working Group, and propose a scheme.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $200
- 2: $100
- 3-4: $150
Grading
- Bounty 10 report
- @maxlevush $150/$200 - proposed to fire the Curator Lead (unsuccessfully) and followed up consistently with the progress of the bounty 10 report: https://testnet.joystream.org/#/proposals/383
- Curation Policy
- No work completed.
- KPI 15.8 follow up
- No work completed.
- Propose a KPI/OKR rewards scheme
- No work completed.
16.11 - Follow up the Operations Working Group
- Reward:
$550
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1702800
- End Block:
#1774800
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
Scope of Work
Task 1 and 2 needs to be performed with assistance, if not by, the Operations group. Tasks 3 and 4 are open for the Council.
- A runtime upgrade has been prepared quite some time ago, but haven't been properly tested yet. The PR can be found here, and building should return a .wasm file with the
blake2
checksum:
(0x)d6a5f19b0a9834921a2e778676f2c8255d56e1a792bdfcd31dd29263b52c1021416adc126c152d1a425afd859f45f167a17847ec5e3288a75cfb2bfa74172ad2 joystream_runtime.wasm
If you get a different hash, ask us for the wasm
.
As there is a staging network mirroring the current network, this can be used for testing. All that is needed is to ask us for the chain_spec.json
, sync a node (or two), and host the version of pioneer in the PR above. At least the main tester must have access to this node, so they can check the logs when/if needed.
- Prepare a testing protocol, which includes:
- Where to access the old, and new, pioneer
- What needs to be done BEFORE performing the runtime upgrade?
- a step by step list of the transactions that should be made, and
- what should be documented along the way
- What is going to be tested AFTER the runtime upgrade?
- a step by step list of the transactions that should be made, and
- what should be documented along the way
What is needed from JSG to perform the test? When (if at all) is the sudo
key needed?
- Set the Council?
- Provide tokens for the runtime upgrade proposals? (your keys should have the same amount of tokens as at launch)
- Sudo in the runtime ugprade? (if you don't have time to wait the full two days)
- Provide keys to the current occupants of roles?
The test protocol must be approved by @bwhm#6514
on Discord or github.
-
Perform the test.
-
As for the other Working Groups, we are considering switching the Operations Working Group's rewards scheme to a combination of specific Operations KPIs, and perhaps at a later stage OKRs. Review KPI 16.9-1, adapt it to the Operations Working Group, and propose a scheme. An important thing that is unique to this group is that some of it's Workers are hosting infrastructure out of pocket. It's not entirely clear exactly what that is, who is doing it, how it's being compensated, and whether these tasks are tied to individuals who happens to be part of the Operations WG, or whether these are tasks that are tied to the WG itself.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $100
- 2-4: $150
Grading
- Runtime Upgrade
- This has not been completed yet, grading deferred as this KPI is repeated in KPI 17
- Prepare a testing protocol
- @isonar $50 - Prepared Runtime Upgrade Testing protocol (https://discord.com/channels/811216481340751934/812344874099277824/874262462961160225)
- @freakstatic $50 - Helped with Runtime Upgrade Testing protocol (https://testnet.joystream.org/#/forum/threads/533?replyIdx=4)
- @tomato $50 - Assisted and helped with the creation of the testing protocol, and explained relevant extrinsics for testing (https://testnet.joystream.org/#/forum/threads/533?replyIdx=9)
- Perform the test
- Propose a KPI/OKR rewards scheme
- @isonar $40 - Proposed Scrum model for Operations tasks management and estimation (https://testnet.joystream.org/#/forum/threads/53)
- @tomato $75 - Created a draft proposal for workflow of tasks (https://testnet.joystream.org/#/forum/threads/531)
Section IV - Bounties
16.12 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50 per week
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day
- Start Block:
#1688400
- End Block:
#1717200
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
- No reports submitted covering Bounty 9
16.13 - Other Bounty Managers
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day
- Start Block:
#1688400
- End Block:
#1717200
- Start Block:
Purpose
With two new Bounties Community Bounty #20 - "Github Bounty Guide" and Community Bounty #21 - "Website Translation", ready to go and two more expected during this Term, some work is needed!
Scope of Work
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager
- either a technical person from the Curator group or,
- a person from the Operations group with some knowledge about the Content system
- open and promote the Bounty to the community
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- add reasonable milestones
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager from the Operations group
- open and promote the Bounty to the community
- once the work has reached the first milestone, find a suitable member of the Community to review the language
Reward Distribution
Grading is individual.
Grading
- Community Bounty #20 - "Github Bounty Guide"
- @isonar $100/$200 - Managed Bounty 20
- Community Bounty #21 - "Website Translation"
- No claims for this bounty
KPI 15
- KPIs:
11
- Total Possible Rewards:
$3600
- Council Elected in Round:
17
- Council Members:
16
- Term Length:
7 days / 100800 blocks
- Start Block/Date:
#1587600 / 27.07.21
- End Block/Date:
#1688400 / 03.08.21
- Start Block/Date:
- Term Summaries Forum Thread: link
- Deadline to Submit Summary:
#1717200 / 04.08.21
Annihilation
As is explained further here, there were strong arguments for simply annihilating this entire KPI, as 15.8-1 was not handled at the level expected. Instead, we opted to reduce the payments by 50%. Some points that lead to this (final) decision:
- The workload, as described, may have been too much to expect
- The Curators did eventually start producing what seems like an honest attempt (although late AND lacking)
- The Council did try some last minute save, and a firing proposal is at least scary, although it won't pass.
- Note again that this is not Jsgenesis saying the Lead should be fired.
- The Council could, and should also have considered both carrots and sticks:
- Providing better incentives (temporary budget increase, spending proposals, etc)
- Slashing some amount
- Formal warning
- Assisted
- Finally, a lot of excellent work would not have been rewarded.
In summary, future annihilation
conditions will be better and/or more realistically constructed. If they fail however, it will be 100%.
Grading
Member ID | Member Handle | Reward* [USD] |
Reward** [USD] |
Reward [tJOY] |
---|---|---|---|---|
361 | blackmass | 12 | 6 | 207168 |
515 | l1dev | 12 | 6 | 207168 |
982 | drmarkovi | 8 | 4 | 138112 |
867 | xandrell | 70 | 35 | 1208481 |
318 | supunssw | 2 | 1 | 34528 |
1316 | andybut | 102 | 51 | 1760929 |
2039 | doppelganger23 | 6 | 3 | 103584 |
321 | freakstatic_council | 246 | 123 | 4246947 |
957 | leet_joy | 0 | 0 | 0 |
439 | fierydev | 6 | 3 | 103584 |
4 | nexusfallout | 12 | 6 | 207168 |
2 | tomato | 1078 | 539 | 18610603 |
736 | mmsaww | 118 | 59 | 2037153 |
2329 | laura | 90 | 45 | 1553761 |
2130 | maxlevush | 838 | 419 | 14467241 |
1048 | igrex | 22 | 11 | 379808 |
SUM | 16 | 2613 | 1307 | 45266235 |
*
denotes the grading value
**
denotes the actual amount paid, after discounting for the "annihilation"
Payouts were made at block #1748912.
Notes
This set of KPIs will have two "major" changes from the usual:
- A primary focus in KPIs 15.7 and 15.8 (see also Annihilation Modes)
- Stricter submissions rules:
- if your contributions aren't added to the Term Summaries forum thread in time, or
- doesn't include the context needed to grade (not applicable to 15.6), or
- lacks all links needed for a reviewer
Your work will NOT be graded.
- Stricter grading
- if your work lacks key components, or
- is presented in a poor way
Your reward will be deducted more heavily than before
Annihilation Modes
Although the new KPI scheme is meant to improve the "tragedy of the commons" issue by making them more individual, there are certain things they have to "solve" as a group. If one or more of the items below is not achieved, the Council will not receive ANY KPI rewards, despite otherwise flawless work.
- Ensure the
16th
(confusingly listed as "Election round 17" in Pioneer) Council Election gets >=16 applicants, meaning a new Council is elected on time. - For 15.7:
- If conditions 1-3 isn't met AND no actions are taken, or
- If the Council isn't posting daily status updates said conditions, or
- Nothing is submitted, or the quality of work is really poor for conditions 4-5
- For 15.8:
- If condition 1 isn't met AND no actions are taken, or
- Nothing is submitted, or the quality of work is really poor for conditions 2-3
All KPI rewards will be forfeited.
Section I - Council work, Proposals and Bureaucracy
15.1 - Proposal Clearance
- Reward:
$200
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full term
- Start Block:
#1587600
- End Block:
#1688400
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that was open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
361 | blackmass | 22 | 85 | 11 |
515 | l1dev | 22 | 80 | 11 |
982 | drmarkovi | 14 | 50 | 7 |
867 | xandrell | 39 | 149 | 20 |
318 | supunssw | 2 | 8 | 1 |
1316 | andybut | 39 | 161 | 21 |
2039 | doppelganger23 | 12 | 48 | 6 |
321 | freakstatic_council | 32 | 123 | 16 |
957 | leet_joy | 0 | 0 | 0 |
439 | fierydev | 10 | 40 | 5 |
4 | nexusfallout | 24 | 92 | 12 |
2 | tomato | 21 | 85 | 11 |
736 | mmsaww | 33 | 128 | 17 |
2329 | laura | 39 | 149 | 20 |
2130 | maxlevush | 37 | 160 | 21 |
1048 | igrex | 38 | 165 | 22 |
SUM | 16 | 384 | 1523 | 200 |
15.2 - Council Dissent
- Reward:
$500
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1587600
- End Block:
#1688400
- Start Block:
Purpose
The Council appears to be suffering from a lack of dissent, or group think if you will.
This can at least partly be attributed to the Proposal Clearance
KPI, which to some extent makes it rational for an actor to simply vote in line with the others. Taken to the extreme, this means that if you create a proposal yourself, and immediately vote approve
, you're likely to get "anything" passed.
It's quite difficult to create incentives for something like this without also introducing unwanted secondary effects, which is why we haven't touched on this before.
Therefore, the Scope of Work is meant as a guideline, more than a rule for earning rewards.
Scope of Work
Whenever you are to cast a vote, read the proposal text thoroughly (should be obvious).
There are far to many permutations to cover all of them, and ideally, there should also be room to comment or add/request further information even if you agree with the proposal. Too keep it short-ish, we'll stick to dissent for now. Some examples are presented below, but these should not be emphasized over common sense:
- Raise concerns
A
Suppose you know "enough" about the subject, and you know there is incorrect information that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- Vote.
B
Suppose you know "enough" about the subject, and you know there is information missing that could/should have an impact on the voters decision:
- Make a comment in the proposal, outlining what you think is incorrect, even if you still think the proposal should pass.
- If the missing information is not available ATM, and your decision depend on clarifying this, do not yet cast your vote.
C
Suppose you don't know "enough" about the subject, but you suspect there is information incorrect that could/should have an impact on the voters decision:
- Ask for clarification
- Do not yet cast your vote, or vote abstain.
D
Suppose you don't know "enough" about the subject, and there is not enough information for you to cast your vote:
- Same as C
- Reply to raised concerns
If a CM has raised concerns, in either of the cases above, or through some other mechanism:
- If you have information that would support, or add context to, either viewpoint, add your comment on the matter.
In all the cases above, it is prudent to add a link to it in the #proposals
room in Discord, or simply paste the comment there as well.
Reward Distribution
It's impossible to quantify the reward in advance, as it will be a function of:
- What is the potential cost of the error?
- easy for spending proposal
- possibly impossible for other proposal types)
- How big and important was your insight?
- did/should your point have been enough to reverse the decision?
- or was it a combination of multiple community members comments and thoughts?
- Did you manage to make your point clear to enough CMs in time?
- did your comment change the outcome?
- was your concern raised too late?
- was it not made clear enough?
- If the outcome of a vote appear to have been changed because of one or more CMs comments alone, they will split a reward equal to 50% of the perceived cost of the proposal. (Capped at $250)
- If the outcome should have been changed because of one or more CMs comments alone, they will split a reward equal to 35% of the perceived cost of the proposal. (Capped at $175)
- If the outcome could have been changed based some missing/unclear information that was requested by one or more comments alone, they will split a reward equal to 20% of the perceived cost of the proposal. (Capped at $100)
Reporting
In your term summary, present a link to your comment(s) in the proposal discussion, and any relevant follow up in Discord (if applicable). Also a note containing:
- Which of 1-3 above you think you qualify for
- The perceived (in your view) cost of the proposal
- Whether the reward should be shared by one or more other CMs
Grading
- @laura - https://testnet.joystream.org/#/forum/threads/522?replyIdx=4
- $50/$500
- https://testnet.joystream.org/#/proposals/347
- Was it a malicious, or objectively bad proposal: no
- As a reader without full context, it was hard to understand:
- was this for a week, a month, longer?
- was it for managing, completing, deploying and/or maintaining all tasks?
- As a reader without full context, it was hard to understand:
- Did the vote/comment affect the outcome: possibly
- The comment made raised the same questions I had
- "Cost" of proposal: $500-2000
- Was it a malicious, or objectively bad proposal: no
- https://testnet.joystream.org/#/proposals/347
- $50/$500
- @tomato - https://testnet.joystream.org/#/forum/threads/522?replyIdx=5
- $200/$500
- https://testnet.joystream.org/#/proposals/347
- Was it a malicious, or objectively bad proposal: no
- As a reader without full context, it was hard to understand:
- was this for a week, a month, longer?
- was it for managing, completing, deploying and/or maintaining all tasks?
- "Cost" of proposal: $500-2000
- Did the vote/comment affect the outcome: likely
- As a reader without full context, it was hard to understand:
- $200/$500
- @maxlevush - https://testnet.joystream.org/#/forum/threads/522?replyIdx=8
- $25/$500
- https://testnet.joystream.org/#/proposals/326
- Was it a malicious, or objectively bad proposal: no
- The proposal lacks arguments
- "Cost" of proposal: $100
- Did the vote/comment affect the outcome: likely
- Although the comment raises some valid concerns, if they are to be believed, but there is no proof or backing for these claims
- $25/$500
15.3 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term +1 day
- Start Block:
#1587600
- End Block:
#1702800
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
Note The long running Council Secretary is away for this term, so someone new needs to step up!
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @tomato - $275/$300
- Managing PR's in community repo per rules: https://github.com/Joystream/community-repo/pulls?q=is%3Apr+is%3Aclosed
- Signing off on all reports - Yes
- Assisting and support other CMs - Yes
- Monitor the bounties - Yes
- Council mint refilled - Yes
- Notify Jsgenesis of network issues - Yes
- Report on progress - Yes
- Term summaries - Yes
- Bounty JSON updated: N/A
- Council wrangling in #council channel - Yes
15.4 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term +1 day
- Start Block:
#1587600
- End Block:
#1702800
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- must be able to check in at least once every day
- must be eager to learn
- preferably somewhat familiar with github
Note The long running Council Secretary is away for this term, so someone new needs to step up!
Scope of Work
The main task for the Deputy Council Secretary is to assist and offload the Secretary.
- Given
triage
access to the Community Repo - Assigning the Secretary, and/or Jsgenesis to review
*
all PRs made to the Community Repo, with a link to the text or spending proposals and other applicable information. - See the SoW for the Secretary for a full list of tasks
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @maxlevush - $150/$150
- Assigned all relevant PRs to the secretary: https://testnet.joystream.org/#/forum/threads/512?replyIdx=5
15.5 - Council Minutes
- Reward:
$100
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term
- Start Block:
#1587600
- End Block:
#1688400
- Start Block:
Purpose
There needs to be some level of accountability and transparency for the Council. For each Term the Council must produce a report, that both summarizes their communication, covers all 'events' and generally explains what transpired during the Term.
Scope of Work
- The
16th
"official" Council (#1486800-#1587600) produces a report covering any and all "events" of interest:
- Proposals
- Decisions
- Voting statistics
- etc.
- The Council Produces a "Tokenomics" report covering the quantitative aspects of the Term. Must include:
- Issuance statistics, through:
- Spending from proposals
- Role rewards
- Bounties paid
- Validator rewards
- Total tokens minted
- Total tokens burned
- Media statistics
- Note that this should only be a superficial report. A more comprehensive overview should be produced by the Curators.
- Membership statistics
- Role occupants, their recurring and earned rewards, hired dates, etc.
- Forum statistics
Previous Council reports can be used as a guideline.
Reward Distribution
If multiple reports are proposed, only the best one will be rewarded.
Ideally however, this would be a collaborative effort.
Grading
- @freakstatic_council - $75/$75
- Council minutes: https://testnet.joystream.org/#/proposals/373
- @reakstatic_council - $75/$75
- Tokenomics report: https://testnet.joystream.org/#/proposals/373
Section II - Community Management
15.6 - Discord & Telegram Channel Management
-
Reward:
$75 Per Channel Group
- Testnet Roles
#validator
#storage-provider
#content-curator
#content-creator
#tech-support
#council
#proposal
#bounties
#general
#welcome
#introduce-yourself
#faucet
- Russian Telegram Community and
#russian
Discord channel
-
Reward Structure:
Individual
-
Grading Process:
Manual
-
Active:
Full term
- Start Block:
#1587600
- End Block:
#1688400
- Start Block:
Purpose
To make the Joystream community more welcoming to newcomers on Discord, we need high availability and helpfulness there.
Scope of Work
For each of the above groups:
Check in multiple times every day, and welcome/assist every user that posts or asks a question. You need to have some knowledge of the particular topic, or read up on it. If you still don't know the answer, tag someone else!
Reward Distribution
Also note that you will "keep" this role for 1 day (14,400 blocks) AFTER the term to allow a new CM to take over.
Grading is individual.
Grading
- $75 per group
- @xandrell - $50
- @andybut - $60
- @laura - $20
- @maxlevush - $20
Section III - Working Groups
15.7 - Follow up the Storage Working Group
- Reward:
$900
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1594800
- End Block:
#1681200
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council. The storage lead role entails some recurring tasks, and some reactive tasks.
This requires the Storage Lead to stay on top of their group, thus the Council to stay on top of the Lead!
For this Term, the Storage and Curation working groups will be the focal point of the KPIs.
Scope of Work
Task 1-3 are expected to be performed/coordinated by the Storage Lead. The Council, or a Council Member's job is to
- track the results continuously
- report the progress to the Council
- update/notify/warn/slash/fire the SP
Task 4 and 5 can be performed by one or more CMs.
- A new version of the Storage Node is expected on the 28th of July (expect an
@everyone
in the#storage-provider
room on Discord). As restarting a Storage Node takes is offline for ~1h, the rollout needs to be coordinated. As there are 10 nodes not operated by Jsgenesis, the rollout should be something like:
- Within 1h of the release, 2-3 Storage Providers has STARTED upgrading. This can be monitored by the version number when running the new
helios
. - At all times, there should be NO less than 5 Storage Nodes Operational (eg. running with a URL set).
- This means the Lead must ensure that nodes are following their "orders"
- Within 24h of the release,
max
one Storage Node is still Operating the "old" version. - Within 36h of the release, no Storage Node is still Operating the "old" version.
- The Operational, ie. URL set, part is to ensure the Storage Lead can make arrangements with good Storage Providers that, for some reason or other, is unable to make the changes in time.
- At no point during the 36h is more than one "new" Storage Node Operational, without having all files stored locally
- After 72h of the release:
- All SPs Operational (must be at least 7) have ALL files available locally.
- The AVERAGE time it takes
helios
, to complete checking the Operational SPs, must be less than0.06s/file
and0.06s/unique_size [GB]
- Where
unique_size
refers toACCEPTED
files, with non-duplicate ipfs hashes.
- Where
- By the end of the term:
- All SPs Operational (must be at least 9) have ALL files available locally.
- The AVERAGE time it takes
helios
, to complete checking the Operational SPs, must be less than0.05s/file
and0.05s/unique_size [GB]
- Where
unique_size
refers toACCEPTED
files, with non-duplicate ipfs hashes.
- Where
- Deploy a script, or manually perform a check of the Joystream Player landing page asset loading time. A brief explanation of how to do so manually in the browser is outlined below:
- Open the landing page, with the web developer tools open in the
network
tab, withimages and media
enabled.- Make sure you use incognito mode and/or disable/clear caching.
- Scroll down the page, to request more and more assets (video thumbnails and channel avatars are fetched once "visible").
- The SP the asset is getting fetched from, the size of the asset, and the time it takes to complete.
- Log the results
This should be done at least once a day, following the same "procedure" (eg. scrolling speed, etc.) each time. - Use the data to get the average speed for each provider each day.
- Track the data throughout the Term.
Publish a TL;DR of the results every time in #storage-provider
room on Discord, and at the end of the Term, deliver a report of your results, presented in a readable way.
- The Council must go through All reports delivered by the current Storage Lead (
4/nexusfallout
) and provide the following:
- Link to all reports
- A short note comparing the contents and frequency of the reports, to what has been decided as their SOW by the Council
- A short note comparing the contents and frequency of the reports, to what has been suggested as the SOW for both the Workers Lead in the helpdesk
- A verdict on the performance for the Lead
- A verdict on the performance for the Workers
- A suggestion for the path forward, wrt the Scope of Work.
Reward Distribution
Grading is individual.
For 1-3: The CM that reports on these results will get the reward regardless of the actual results, on the condition that "appropriate action" is taken if the results are "bad".
For 4: If one or more publishes a report, the reward will be split based on the quality of the report and results.
Weighting:
- 1: $200
- 2: $100
- 3: $100
- 4: $300
- 5: $200
Grading
- First 36h
- @tomato - $150 (no one else took credit) https://testnet.joystream.org/#/forum/threads/522?replyIdx=5
- Within 1h of the release, 2-3 Storage Providers has STARTED upgrading. This can be monitored by the version number when running the new helios. - OK
- Within 24h of the release, max one Storage Node is still Operating the "old" version. - OK
- At all times, there should be NO less than 5 Storage Nodes Operational (eg. running with a URL set). - OK
- Within 24h of the release, max one Storage Node is still Operating the "old" version. - OK
- Within 36h of the release, no Storage Node is still Operating the "old" version. - OK
- At no point during the 36h is more than one "new" Storage Node Operational, without having all files stored locally - OK
- SP 4 and 16 had many failed for a brief period, but corrective actions were taken quickly. A few nodes had 1 or 2 missing, but that is sync issue and no fault of their own.
- @tomato - $100 (no one else took credit) https://testnet.joystream.org/#/forum/threads/522?replyIdx=5
- After 72h of the release:
- All SPs Operational (must be at least 7) have ALL files available locally. - OK
- The AVERAGE time it takes helios, to complete checking the Operational SPs, must be less than 0.06s/file and 0.06s/unique_size [GB] - OK
- 0.021s/file
- After 72h of the release:
- @tomato - $50 (no one else took credit) https://testnet.joystream.org/#/forum/threads/522?replyIdx=5
- By the end of the term:
- All SPs Operational (must be at least 9) have ALL files available locally. - OK
- It was in fact only 8, but:
- the "final" SP with ID 4 was operational withing 24h.
- SP 6 was live within 26h
- SP 16 was live within 48h
- The AVERAGE time it takes helios, to complete checking the Operational SPs, must be less than 0.05s/file and 0.05s/unique_size [GB] - OK
- 0.018s/file
- All SPs Operational (must be at least 9) have ALL files available locally. - OK
- By the end of the term:
- @tomato - $150
- https://github.com/Joystream/community-repo/pull/272/
- Deducted 50% as the presented data makes it hard to make any strong conclusions.
- would be nice to have raw data as well in future runs!
- @maxlevush - $200
15.8 - Follow up the Content Curators Working Group
- Reward:
$700
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1594800
- End Block:
#1681200
- Start Block:
Purpose
Although the working groups Leads are expected to run the day to day, they must be monitored by the Council.
This requires the Curator Lead to stay on top of their group, thus the Council to stay on top of the Lead!
For this Term, the Storage and Curation working groups will be the focal point of the KPIs.
Scope of Work
Task 1 is expected to be performed/coordinated by the Curator group. The Council, or a Council Member's job is to push them into doing so.
Tasks 2-4 can be performed by one or more CMs.
- Bounty #10 was cancelled, mainly because a quick spotcheck revealed that the Bounty meant to reward publishing videos in the Public Domain ("PD") (to be fair, other permissive licenses was also allowed, if the license was "valid" - eg. attribution included, no derivates, etc.), was mostly rewarding copying videos from YouTube (YT). After we announced this, a concern that not only was most of the videos taken from, but not all videos was even properly licensed from there.
The Curators must perform a "post mortem", going through ALL videos that submitted a claim to Bounty #10 (even if they weren't rewarded), and provide a spreadsheet with the following columns:
-
Video Id
-
Channel ID
-
Owner Id
-
On-chain License
- The on-chain license ID can be mapped to the name - see helpdesk for Curators
-
On-chain Attribution
- Not applicable to PD, applicable to most Creative Commons (CC)
-
Whether other licensing requirements are upheld
- Only applicable to certain CC licenses, eg. CC BY-ND - "No derivates"
-
Information Provided
- If the forum post with Bounty claim contained extra info about the source
-
Original YT link
- If available with a quick search
-
Actual license of original source
- What license the media is actually licensed as
- On YT, any video that doesn't explicitly say
License - Creative Commons Attribution license (reuse allowed)
, is NOT free to share by anyone else than the owner.- Example: most (if not all) videos in Andreas Antonopoulos channel are licensed as CC BY 3.0
Before the end of the Term, the Curators must have made the first half of the report (eg. half the items), and shared it with me
@bwhm#6514
on Discord.
Note:
It's been pointed out that this is quite a time consuming task. Will try to clarify some points:
- There are currently close to no videos getting published, with the cancellation of Bounty #10.
- That means the
curator
group, 9 people, have a lot of "free" time. - Although the
Lead
is responsible, they are not expected to do it alone!
- That means the
- One you have the
videoIds
, getting thechannelId
, (owners)memberId
, (on-chain)license
, and (on-chain)attribution
, is something that takes 5 min, using hydra playgroun. - All the posts where users post their videos for claiming bounty rewards should be in the same thread (or at least only a couple)
- All payout proposals should have that info, and/or links.
- The "Information Provided" from the claimant should be there
- If there's no link to the original source neither in
attribution
nor in the "Information Provided", try a YT search of the title (and check the video thumbnail, it may also show the YT title) - "Only" half of the videos covered in the Bounty must be completed to avoid annihilation.
This should be the top, and ONLY priority for the Curators this term - the time is ticking :)
- Create a draft for a new version of said Bounty, that takes the "lessons learned" in to account.
- What should the workflow look like?
- What should be required of the participants? What information should they be forced to provide?
- What should be required of the BMs? How much time and effort will this cause?
- What should be required of the Curators? Should it be a separate role to approve the submitted material, and another to set the reward based on quality?
- What is a reasonable reward structure?
- The previous version seemed to reward YT copypaste "too high", even after setting a budget
- The previous version may have been "too low", to get curated and more desirable content
- What can be done to improve the incentives for all parties?
- What should the conditions be?
- The Council must go through All reports delivered by the current Curator Lead (
1048/igrex
) and provide the following:
- Link to all reports
- A short note comparing the contents and frequency of the reports, to what has been decided as their SOW by the Council
- A short note comparing the contents and frequency of the reports, to what has been suggested as the SOW for both the Workers Lead in the helpdesk
- A verdict on the performance for the Lead
- A verdict on the performance for the Workers
- A suggestion for the path forward, wrt the Scope of Work.
-
Time permitting, use the results from 3. to draft a new Scope of Work. This should be approved by the Council first, then sent forward to JSG for another round of approval.
-
Time permitting, use the results from 3 and 4. to propose get an idea of how many Workers are needed in the group, assuming they work
x
hours a week.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $200
- 2: $100
- 3: $250
- 4-5: $75
Grading
- No one took credit/blame
Failure here, unless an action was taken, was listed as a cause for annihilation.- Some work has been done, but there are some concerns:
- It's not clear whether all the videos in the list were in fact rewarded by bounty 10
- There are some unaddressed questions about the work here
- It appears to have been too late (even if we're kind and assume 03.08 was withing the term)
- It was not sent to me
- Which raises the question if there was any consequences:
- Some work has been done, but there are some concerns:
- @tomato - $100
- @maxlevush - $200
- NA
- NA
15.9 - Follow up the Operations Working Group
- Reward:
$250
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1594800
- End Block:
#1681200
- Start Block:
Purpose
With the release of Sumer
a new Working Group was added to the platform. The operations
group allows for workers to be hired that don't require any on-chain privileges.
Scope of Work
Task 1 is expected to be performed/coordinated by the Operations lead. The Council, or a Council Member's job is to push them into doing so.
Tasks 2 can be performed by one or more CMs.
- The Operations group current list of assigned tasks (by the Council), and what they are actually doing, appears to not be 100% synced. It appears a trello board has been created (good initiative!), but I didn't not have credentials to view it when I tried.
- Make sure the trello (or similar) kanban board is open for all to view (best to keep
write
access contained :D), and find a way to highlight it - Share a list containing all infrastructure, with links to the service AND source code, hosted by the group
- Elaborate on the trello board, and share short and long term plans for the group
- The Council must go through All reports delivered by the current Operations Lead (
515/l1dev
) and provide the following:
- Link to all reports
- A short note comparing the contents and frequency of the reports, to what has been decided as their SOW by the Council
- A short note comparing the contents and frequency of the reports, to what has been suggested as the SOW for both the group in the helpdesk
- A verdict on the performance for the Lead
- A verdict on the performance for the Workers
- A suggestion for the path forward, wrt the Scope of Work.
Reward Distribution
Grading is individual. If the proposals created in relation to the tasks above are made by different CMs, the rewards will be shared based on the assumed workloads.
Weighting:
- 1: $50
- 2: $200
Grading
- Scope of Work 1 (Trello Board and Trello board)
- @tomato - $40/$50
- https://testnet.joystream.org/#/forum/threads/522?replyIdx=5
- List of infrastructure was not generated
- https://testnet.joystream.org/#/forum/threads/522?replyIdx=5
- @tomato - $40/$50
- Scope of work 2 (Report summary)
- @maxlevush - $200/$200
Section IV - Bounties
15.10 - Weekly Bounty Managers
- Reward:
- Bounty 9:
$25/50 per week
- Bounty Referral Bonus:
$100 Commission
- Bounty 9:
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Full term + 1 day
- Start Block:
#1594800
- End Block:
#1702800
- Start Block:
Purpose
Keeping track of all bounties is both too much for a single person, and it will require different skillsets. There are currently 4 "weekly" bounties, where "weekly" means that the Bounty Manager isn't meant to have this role until the bounty is completed. Instead, the Council will choose one of their own to act as the Bounty Manager for each bounty during the Term.
A new addition is to actually promote the bounties. It appears to be somewhat of a hurdle getting people to apply for, and start working on, our bounties.
Scope of Work
The scope of work for each Bounty will vary quite a lot, depending on the specific bounty.
Some general information can be found here.
Link to Bounties, and specifics:
After the Council Term has ended, create a brief "handover" report for your successor (even if you are re-elected).
Finally, the last part is to find someone, inside or outside of the community, to start working on a bounty. Any CM that manages to find someone (including themselves) to get assigned for any Bounty, a $100 bonus awaits!
Reward Distribution
Individual. The Council Secretary is responsible for assigning CMs for each Bounty.
Note that $X/$Y
means that if there is no work on that particular bounty, the former amount will be the reward. If there is some work done, the latter amount will be awarded IF the work is satisfactory.
Grading
- No summaries submitted for this.
15.11 - Other Bounty Managers
- Reward:
$200
- Reward Structure:
Individual
- Grading Process:
Manual
- Active:
Core term
- Start Block:
#1594800
- End Block:
#1681200
- Start Block:
Purpose
With two new Bounties Community Bounty #20 - "Github Bounty Guide" and Community Bounty #21 - "Website Translation", ready to go and two more expected during this Term, some work is needed!
Scope of Work
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager
- either a technical person from the Curator group or,
- a person from the Operations group with some knowledge about the Content system
- open and promote the Bounty to the community
- Ensure the following is done:
- see if something is unclear, missing, too much, etc.
- add reasonable milestones
- officially open the Bounty through a forum post
- Assign an appropriate Bounty Manager from the Operations group
- open and promote the Bounty to the community
- once the work has reached the first milestone, find a suitable member of the Community to review the language
Reward Distribution
Grading is individual.
Grading
- Community Bounty #21 - "Website Translation"
- @freakstatic - $80/$100
- @maxlevush - $20/$100
- Community Bounty #16 - "Translation of Community Update Videos"
- @mmsaww - $100/$100
KPI 14
- KPIs:
14
- Total Possible Rewards:
$3100
- Council Elected in Round:
17
- Council Members:
16
- Term Length:
7 days / 100800 blocks
- Start Block/Date:
#1486800 / 20.07.21
- End Block/Date:
#1587600 / 20.07.21
- Start Block/Date:
- Term Summaries Forum Thread: TBD
- Deadline to Submit Summary:
#1515600
Grading
Member ID | Member Handle | Reward [USD] | Reward [tJOY] |
---|---|---|---|
361 | blackmass | 15 | 473465 |
515 | l1dev | 32 | 1010059 |
635 | xfactorus | 21 | 662851 |
982 | drmarkovi | 18 | 568158 |
867 | xandrell | 102-75 | 3219563 |
1316 | andybut | 25+75 | 789108 |
2039 | doppelganger23 | 15 | 473465 |
957 | leet_joy | 0 | 0 |
439 | fierydev | 10 | 315643 |
4 | nexusfallout | 40 | 1262574 |
2 | tomato | 1 | 31564 |
525 | oiclid | 216 | 6817897 |
2130 | maxlevush | 767 | 24209848 |
1048 | igrex | 76 | 2398890 |
1027 | stavr | 26 | 820673 |
2182 | isonar | 96 | 3030177 |
SUM | 16 | 1460 | 46083935 |
The rewards were paid out at block #1664236.
Notes
As the Council Secretary has been absent, it has been a little difficult to get a perfect overview of the performance last week, and thus creating new KPIs for this term. As a consequence, the current KPI set will be a little smaller than usual, and there may be some overlap of tasks that was completed last term.
Annihilation Modes
Although the new KPI scheme is meant to improve the "tragedy of the commons" issue by making them more individual, there are certain things they have to "solve" as a group. If one or more of the items below is not achieved, the Council will not receive ANY KPI rewards, despite otherwise flawless work.
Ensure the 13th
(confusingly listed as "Election round 15" in Pioneer) Council Election gets >=16 applicants, meaning a new Council is elected on time.
Section I - Council work, Proposals and Bureaucracy
14.1 - Proposal Clearance
- Reward:
$300
- Reward Distribution:
Shared
- Grading Process:
Automatic
- Active:
Full term
- Start Block:
#1486800
- End Block:
#1587600
- Start Block:
Purpose
For the governance process to function properly, all proposals must be processed effectively, and dealt with within a reasonable time frame. Although we have increased number of proposals that can be open at any time from 5 to 20, it is still important that the community gets a quick result when possible.
This means the Council should be quick to vote when possible, and ask clarifying questions when information is missing.
Scope of Work
For the individual Council Member, this means that they must check in frequently, and address each open proposal. If what is presented is reasonable and within the budget, the proposal should in general be approved.
Of course, the Councils time must be respected, in the sense that the proposal should contain all the information needed to make their verdict. If this is not the case, the proposal discussion system can be used to ask for what is missing.
Without going in too much detail:
- Most proposals will be of type
Text
orSpending
. Along with some of theWorking Group
proposals, these should also be the most straight forward to vote on. - If the
Spending
proposal is for a Bounty, make sure the formalities, (eg. ask the Bounty Manager) are in order before casting your vote. - If you have all the information you need, vote right away.
- Regardless of your decision, you should also make a brief comment outlining your reasoning.
- If you don't have all the information, or don't fully understand, check the comments to see if it has already been addressed. If it hasn't, ask!
- If you are not sure, you can always:
- ask in the discussion
confer with other CMs on Discord and/or the forum- if so, this should be linked to or summarized in the discussion
- vote
abstain
- ask in the discussion
Reward Distribution
After the Term is over, we will get all the voting data from the proposals that was open during the Term. The reward will be divided by the number of total proposals.
- Each time a CM voted for a proposal, they earn 1 point.
- If they voted the same as the final outcome, they earn 3 more points.
- If they voted
abstain
, they also earn 3 more points - as long as they didn't voteabstain
on more than 20% of the total proposals. - Finally, the first 2 CMs that vote, AND vote "correctly" earns 2 more points.
The CMs reward for each proposal will be proportional to their points.
Note
Once a proposal is finalized, voting stops, so if you want to "piggyback" on the others, you may find yourself not getting to vote in time.
Grading
Member ID | Member Handle | Voted | Points | Reward |
---|---|---|---|---|
361 | blackmass | 13 | 49 | 15 |
515 | l1dev | 11 | 46 | 14 |
635 | xfactorus | 18 | 69 | 21 |
982 | drmarkovi | 15 | 59 | 18 |
867 | xandrell | 23 | 91 | 27 |
1316 | andybut | 20 | 83 | 25 |
2039 | doppelganger23 | 14 | 50 | 15 |
957 | leet_joy | 0 | 0 | 0 |
439 | fierydev | 9 | 33 | 10 |
4 | nexusfallout | 19 | 75 | 22 |
2 | tomato | 1 | 4 | 1 |
525 | oiclid | 24 | 102 | 30 |
2130 | maxlevush | 21 | 89 | 26 |
1048 | igrex | 23 | 105 | 31 |
1027 | stavr | 23 | 89 | 26 |
2182 | isonar | 16 | 65 | 19 |
SUM | 16 | 250 | 1009 | 300 |
14.2 - Council Secretary
- Reward:
$300
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term +1 day
- Start Block:
#1486800
- End Block:
#1602000
- Start Block:
Purpose
Although this is not a formal role on the platform, having someone responsible for co-ordinating the Council is needed.
The role should be occupied by a "seasoned" Council Member that:
- is well versed in the platform workings
- is familiar with github
- has high availability
Note The long running Council Secretary is away for this term, so someone new needs to step up!
Scope of Work
The Council Secretary will act as a bridge between the Council and Jsgenesis. This means:
- Given
write
access to the Community Repo - For all new PRs made to the repo, the Secretary and/or is expected to:
- perform a review
- link to a spending or text proposal, confirming the Councils approval
- request Jsgenesis review for all PRs that require their attention
- merge the PR, under the conditions that the PR:
- would not require Jsgenesis to perform any actions related to the tokenomics (payouts or pool increases)
- does not violate any license
- does not introduce any code users can run
- it has also been approved by the Deputy Secretary
- Signing off on all reports created
- Assist and support other CMs
- Monitor the bounties
- propose/hire Bounty Managers, set their rewards and secure funding after the fact
- follow up Bounty Managers (and replace if needed)
- select the "Weekly Bounty Managers" ref 8.3, according to interest (they will be paid through KPI rewards)
- ensure the bounty information presented on the website is up to date
- report on progress after the end of the Term
- Notify Jsgenesis of urgent and important matters on the testnet
- Open a forum thread for the "Term Summaries" where the CMs can report on their Council/KPI activities.
- Ask Jsgenesis to refill the Council Mint in in the
#council
room on Discord
*
Not before all formalities has been completed, eg. approved by the Council
Reward Distribution
Only a single member may be chosen for this role. If more than one proposal for the position is approved, only the first one is considered.
Grading
- @maxlevush - $300/$300
- Managing PR's in community repo per rules: https://github.com/Joystream/community-repo/pulls?q=is%3Apr+is%3Aclosed
- Signing off on all reports - Yes
- Assisting and support other CMs - Yes
- Monitor the bounties - Yes
- Council mint refilled - Yes
- Notify Jsgenesis of network issues - Yes
- Report on progress - Yes
- Term summaries - Yes
- Bounty JSON updated: https://github.com/Joystream/community-repo/pull/262
- Council wrangling in #council channel - Yes
14.3 - Deputy Council Secretary
- Reward:
$150
- Reward Distribution:
Individual
- Grading Process:
Manual
- Active:
Full term +1 day
- Start Block:
#1486800
- End Block:
#1602000
- Start Block:
Purpose
The Council Secretary has been re-elected more than 10 times in a row. We believe the reason is that the Councils seem to recognize their excellent performance - an opinion shared by us.
It does however make the platform, albeit in a testnet stage, highly reliant on a single individual or entity, which may cause trouble down the road.
We believe it's time to add a deputy. This will hopefully have multiple benefits, the key being preparing more people to coordinate the Council and get a better overview of the recurring and, sometimes, critical tasks that needs to be performed.
Requirements:
- must have been on the Council before
- mu