{"action":"created","comment":{"url":"https://api.github.com/repos/opencontainers/runc/pulls/comments/35059007","id":35059007,"diff_hunk":"@@ -63,35 +66,54 @@ by anyone is denoted by adding a comment in the pull request: `LGTM`.\n However, only currently listed `MAINTAINERS` are counted towards the required\n two LGTMs.\n \n-runc follows the timeless, highly efficient and totally unfair system\n-known as [Benevolent dictator for life](http://en.wikipedia.org/wiki/Benevolent_Dictator_for_Life), with Michael Crosby in the role of BDFL.\n-This means that all decisions are made by default by Michael. Since making\n-every decision himself would be highly un-scalable, in practice decisions\n-are spread across multiple maintainers.\n+Overall the maintainer system works because of mutual respect across the\n+maintainers of the project.  The maintainers trust one another to make decision\n+in the best interests of the project.  Sometimes maintainers can disagree and \n+this is part of a healthy project to represent the point of views of various people.\n+In the case where maintainers cannot find agreement on a specific change the \n+role of a Chief Maintainer comes into play.  \n \n-The relevant maintainers for a pull request can be worked out in two steps:\n+The Chief Maintainer for the project is responsible for overall architecture \n+of the project to maintain conceptual integrity.  Large decisions and \n+architecture changes should be reviewed by the chief maintainer.  \n+The current chief maintainer for the project is Michael Crosby (@crosbymichael).  \n \n-* Step 1: Determine the subdirectories affected by the pull request. This\n-  might be `netlink/` and `security/`, or any other part of the repo.\n+Even though the maintainer system is built on trust, if there is a conflict\n+with the chief maintainer on a decision, their decision can be challenged \n+and brought to the technical oversight board if two third of the \n+maintainers vote for an appeal. It is expected that this would be a \n+very exceptional event.\n \n-* Step 2: Find the `MAINTAINERS` file which affects this directory. If the\n-  directory itself does not have a `MAINTAINERS` file, work your way up\n-  the repo hierarchy until you find one.\n \n-### I'm a maintainer, and I'm going on holiday\n+### How are maintainers added?\n \n-Please let your co-maintainers and other contributors know by raising a pull\n-request that comments out your `MAINTAINERS` file entry using a `#`.\n+The best maintainers have a vested interest in the project.  Maintainers\n+are first and foremost contributors that have shown they are committed in\n+the long term success of the project.  Contributors wanting to become \n+maintainers are expected to be deeply involved contributing code, \n+pull request review, and triage of issues in the project for more than two months.\n \n-### I'm a maintainer, should I make pull requests too?\n+Just contributing does not make you a maintainer, it is about building trust \n+with the current maintainers of the project and being a person that they can\n+depend on and trust to make decisions in the best interest of the project.  The\n+final vote to add a new maintainer should be approved by over 66% of the current\n+maintainers with the chief maintainer having veto power.  In case of a veto, conflict resolution rules expressed above apply.  The voting period is\n+five business days on the Pull Request to add the new maintainer.\n \n-Yes. Nobody should ever push to master directly. All changes should be\n-made through a pull request.\n \n-### Who assigns maintainers?\n+### What is expected of maintainers?\n+\n+Part of a healthy project is to have active maintainers to support the community\n+in contributions and perform tasks to keep the project running.  Maintainers are\n+expect to be able to respond in a timely manner if their help is required on specific\n+issues where they are pinged.  Being a maintainer is a time consuming commitment and should\n+not be taken lightly.\n+\n+When a maintainer is unable to perform the required duties they can be removed with\n+a vote by 66% of the current maintainers with the chief maintainer having veto power.\n+The voting period is ten business days.  Issues with a maintainer's performance should","path":"MAINTAINERS_GUIDE.md","position":88,"original_position":88,"commit_id":"37eaaca4594c117519f313ac52ef49e2237833e7","original_commit_id":"37eaaca4594c117519f313ac52ef49e2237833e7","user":{"login":"duglin","id":1944671,"avatar_url":"https://avatars.githubusercontent.com/u/1944671?v=3","gravatar_id":"","url":"https://api.github.com/users/duglin","html_url":"https://github.com/duglin","followers_url":"https://api.github.com/users/duglin/followers","following_url":"https://api.github.com/users/duglin/following{/other_user}","gists_url":"https://api.github.com/users/duglin/gists{/gist_id}","starred_url":"https://api.github.com/users/duglin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/duglin/subscriptions","organizations_url":"https://api.github.com/users/duglin/orgs","repos_url":"https://api.github.com/users/duglin/repos","events_url":"https://api.github.com/users/duglin/events{/privacy}","received_events_url":"https://api.github.com/users/duglin/received_events","type":"User","site_admin":false},"body":"s/with a maintainers's/relatex to a maintainer's/","created_at":"2015-07-21T00:15:08Z","updated_at":"2015-07-21T00:15:08Z","html_url":"https://github.com/opencontainers/runc/pull/138#discussion_r35059007","pull_request_url":"https://api.github.com/repos/opencontainers/runc/pulls/138","_links":{"self":{"href":"https://api.github.com/repos/opencontainers/runc/pulls/comments/35059007"},"html":{"href":"https://github.com/opencontainers/runc/pull/138#discussion_r35059007"},"pull_request":{"href":"https://api.github.com/repos/opencontainers/runc/pulls/138"}}},"pull_request":{"url":"https://api.github.com/repos/opencontainers/runc/pulls/138","id":40284649,"html_url":"https://github.com/opencontainers/runc/pull/138","diff_url":"https://github.com/opencontainers/runc/pull/138.diff","patch_url":"https://github.com/opencontainers/runc/pull/138.patch","issue_url":"https://api.github.com/repos/opencontainers/runc/issues/138","number":138,"state":"open","locked":false,"title":"Update maintainers guide","user":{"login":"crosbymichael","id":749551,"avatar_url":"https://avatars.githubusercontent.com/u/749551?v=3","gravatar_id":"","url":"https://api.github.com/users/crosbymichael","html_url":"https://github.com/crosbymichael","followers_url":"https://api.github.com/users/crosbymichael/followers","following_url":"https://api.github.com/users/crosbymichael/following{/other_user}","gists_url":"https://api.github.com/users/crosbymichael/gists{/gist_id}","starred_url":"https://api.github.com/users/crosbymichael/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crosbymichael/subscriptions","organizations_url":"https://api.github.com/users/crosbymichael/orgs","repos_url":"https://api.github.com/users/crosbymichael/repos","events_url":"https://api.github.com/users/crosbymichael/events{/privacy}","received_events_url":"https://api.github.com/users/crosbymichael/received_events","type":"User","site_admin":false},"body":"This makes some changes to the maintainer's guide and roles within the\r\nproject.  It removed the concept of a BDFL and carries over the chief\r\nmaintainer role into the project.  BDFL sucks and we can do better and\r\nthese changed help to make many more things specific around adding new\r\nmaintainers and removing them as well.\r\n\r\nSigned-off-by: Michael Crosby <crosbymichael@gmail.com>","created_at":"2015-07-18T01:55:56Z","updated_at":"2015-07-21T00:15:08Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9ff4eefbf0dc6475662636cfd2b207aaf77de6c5","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/opencontainers/runc/pulls/138/commits","review_comments_url":"https://api.github.com/repos/opencontainers/runc/pulls/138/comments","review_comment_url":"https://api.github.com/repos/opencontainers/runc/pulls/comments{/number}","comments_url":"https://api.github.com/repos/opencontainers/runc/issues/138/comments","statuses_url":"https://api.github.com/repos/opencontainers/runc/statuses/37eaaca4594c117519f313ac52ef49e2237833e7","head":{"label":"crosbymichael:maintainers","ref":"maintainers","sha":"37eaaca4594c117519f313ac52ef49e2237833e7","user":{"login":"crosbymichael","id":749551,"avatar_url":"https://avatars.githubusercontent.com/u/749551?v=3","gravatar_id":"","url":"https://api.github.com/users/crosbymichael","html_url":"https://github.com/crosbymichael","followers_url":"https://api.github.com/users/crosbymichael/followers","following_url":"https://api.github.com/users/crosbymichael/following{/other_user}","gists_url":"https://api.github.com/users/crosbymichael/gists{/gist_id}","starred_url":"https://api.github.com/users/crosbymichael/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crosbymichael/subscriptions","organizations_url":"https://api.github.com/users/crosbymichael/orgs","repos_url":"https://api.github.com/users/crosbymichael/repos","events_url":"https://api.github.com/users/crosbymichael/events{/privacy}","received_events_url":"https://api.github.com/users/crosbymichael/received_events","type":"User","site_admin":false},"repo":{"id":38062262,"name":"runc","full_name":"crosbymichael/runc","owner":{"login":"crosbymichael","id":749551,"avatar_url":"https://avatars.githubusercontent.com/u/749551?v=3","gravatar_id":"","url":"https://api.github.com/users/crosbymichael","html_url":"https://github.com/crosbymichael","followers_url":"https://api.github.com/users/crosbymichael/followers","following_url":"https://api.github.com/users/crosbymichael/following{/other_user}","gists_url":"https://api.github.com/users/crosbymichael/gists{/gist_id}","starred_url":"https://api.github.com/users/crosbymichael/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crosbymichael/subscriptions","organizations_url":"https://api.github.com/users/crosbymichael/orgs","repos_url":"https://api.github.com/users/crosbymichael/repos","events_url":"https://api.github.com/users/crosbymichael/events{/privacy}","received_events_url":"https://api.github.com/users/crosbymichael/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/crosbymichael/runc","description":"runc container cli tools","fork":true,"url":"https://api.github.com/repos/crosbymichael/runc","forks_url":"https://api.github.com/repos/crosbymichael/runc/forks","keys_url":"https://api.github.com/repos/crosbymichael/runc/keys{/key_id}","collaborators_url":"https://api.github.com/repos/crosbymichael/runc/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/crosbymichael/runc/teams","hooks_url":"https://api.github.com/repos/crosbymichael/runc/hooks","issue_events_url":"https://api.github.com/repos/crosbymichael/runc/issues/events{/number}","events_url":"https://api.github.com/repos/crosbymichael/runc/events","assignees_url":"https://api.github.com/repos/crosbymichael/runc/assignees{/user}","branches_url":"https://api.github.com/repos/crosbymichael/runc/branches{/branch}","tags_url":"https://api.github.com/repos/crosbymichael/runc/tags","blobs_url":"https://api.github.com/repos/crosbymichael/runc/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/crosbymichael/runc/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/crosbymichael/runc/git/refs{/sha}","trees_url":"https://api.github.com/repos/crosbymichael/runc/git/trees{/sha}","statuses_url":"https://api.github.com/repos/crosbymichael/runc/statuses/{sha}","languages_url":"https://api.github.com/repos/crosbymichael/runc/languages","stargazers_url":"https://api.github.com/repos/crosbymichael/runc/stargazers","contributors_url":"https://api.github.com/repos/crosbymichael/runc/contributors","subscribers_url":"https://api.github.com/repos/crosbymichael/runc/subscribers","subscription_url":"https://api.github.com/repos/crosbymichael/runc/subscription","commits_url":"https://api.github.com/repos/crosbymichael/runc/commits{/sha}","git_commits_url":"https://api.github.com/repos/crosbymichael/runc/git/commits{/sha}","comments_url":"https://api.github.com/repos/crosbymichael/runc/comments{/number}","issue_comment_url":"https://api.github.com/repos/crosbymichael/runc/issues/comments{/number}","contents_url":"https://api.github.com/repos/crosbymichael/runc/contents/{+path}","compare_url":"https://api.github.com/repos/crosbymichael/runc/compare/{base}...{head}","merges_url":"https://api.github.com/repos/crosbymichael/runc/merges","archive_url":"https://api.github.com/repos/crosbymichael/runc/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/crosbymichael/runc/downloads","issues_url":"https://api.github.com/repos/crosbymichael/runc/issues{/number}","pulls_url":"https://api.github.com/repos/crosbymichael/runc/pulls{/number}","milestones_url":"https://api.github.com/repos/crosbymichael/runc/milestones{/number}","notifications_url":"https://api.github.com/repos/crosbymichael/runc/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/crosbymichael/runc/labels{/name}","releases_url":"https://api.github.com/repos/crosbymichael/runc/releases{/id}","created_at":"2015-06-25T16:59:57Z","updated_at":"2015-06-25T16:59:58Z","pushed_at":"2015-07-18T01:55:47Z","git_url":"git://github.com/crosbymichael/runc.git","ssh_url":"git@github.com:crosbymichael/runc.git","clone_url":"https://github.com/crosbymichael/runc.git","svn_url":"https://github.com/crosbymichael/runc","homepage":"","size":1723,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"opencontainers:master","ref":"master","sha":"1eeb86fbf2ec75661b9d843fd46679c868bc242d","user":{"login":"opencontainers","id":12563465,"avatar_url":"https://avatars.githubusercontent.com/u/12563465?v=3","gravatar_id":"","url":"https://api.github.com/users/opencontainers","html_url":"https://github.com/opencontainers","followers_url":"https://api.github.com/users/opencontainers/followers","following_url":"https://api.github.com/users/opencontainers/following{/other_user}","gists_url":"https://api.github.com/users/opencontainers/gists{/gist_id}","starred_url":"https://api.github.com/users/opencontainers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/opencontainers/subscriptions","organizations_url":"https://api.github.com/users/opencontainers/orgs","repos_url":"https://api.github.com/users/opencontainers/repos","events_url":"https://api.github.com/users/opencontainers/events{/privacy}","received_events_url":"https://api.github.com/users/opencontainers/received_events","type":"Organization","site_admin":false},"repo":{"id":36960321,"name":"runc","full_name":"opencontainers/runc","owner":{"login":"opencontainers","id":12563465,"avatar_url":"https://avatars.githubusercontent.com/u/12563465?v=3","gravatar_id":"","url":"https://api.github.com/users/opencontainers","html_url":"https://github.com/opencontainers","followers_url":"https://api.github.com/users/opencontainers/followers","following_url":"https://api.github.com/users/opencontainers/following{/other_user}","gists_url":"https://api.github.com/users/opencontainers/gists{/gist_id}","starred_url":"https://api.github.com/users/opencontainers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/opencontainers/subscriptions","organizations_url":"https://api.github.com/users/opencontainers/orgs","repos_url":"https://api.github.com/users/opencontainers/repos","events_url":"https://api.github.com/users/opencontainers/events{/privacy}","received_events_url":"https://api.github.com/users/opencontainers/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/opencontainers/runc","description":"runc container cli tools","fork":false,"url":"https://api.github.com/repos/opencontainers/runc","forks_url":"https://api.github.com/repos/opencontainers/runc/forks","keys_url":"https://api.github.com/repos/opencontainers/runc/keys{/key_id}","collaborators_url":"https://api.github.com/repos/opencontainers/runc/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/opencontainers/runc/teams","hooks_url":"https://api.github.com/repos/opencontainers/runc/hooks","issue_events_url":"https://api.github.com/repos/opencontainers/runc/issues/events{/number}","events_url":"https://api.github.com/repos/opencontainers/runc/events","assignees_url":"https://api.github.com/repos/opencontainers/runc/assignees{/user}","branches_url":"https://api.github.com/repos/opencontainers/runc/branches{/branch}","tags_url":"https://api.github.com/repos/opencontainers/runc/tags","blobs_url":"https://api.github.com/repos/opencontainers/runc/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/opencontainers/runc/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/opencontainers/runc/git/refs{/sha}","trees_url":"https://api.github.com/repos/opencontainers/runc/git/trees{/sha}","statuses_url":"https://api.github.com/repos/opencontainers/runc/statuses/{sha}","languages_url":"https://api.github.com/repos/opencontainers/runc/languages","stargazers_url":"https://api.github.com/repos/opencontainers/runc/stargazers","contributors_url":"https://api.github.com/repos/opencontainers/runc/contributors","subscribers_url":"https://api.github.com/repos/opencontainers/runc/subscribers","subscription_url":"https://api.github.com/repos/opencontainers/runc/subscription","commits_url":"https://api.github.com/repos/opencontainers/runc/commits{/sha}","git_commits_url":"https://api.github.com/repos/opencontainers/runc/git/commits{/sha}","comments_url":"https://api.github.com/repos/opencontainers/runc/comments{/number}","issue_comment_url":"https://api.github.com/repos/opencontainers/runc/issues/comments{/number}","contents_url":"https://api.github.com/repos/opencontainers/runc/contents/{+path}","compare_url":"https://api.github.com/repos/opencontainers/runc/compare/{base}...{head}","merges_url":"https://api.github.com/repos/opencontainers/runc/merges","archive_url":"https://api.github.com/repos/opencontainers/runc/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/opencontainers/runc/downloads","issues_url":"https://api.github.com/repos/opencontainers/runc/issues{/number}","pulls_url":"https://api.github.com/repos/opencontainers/runc/pulls{/number}","milestones_url":"https://api.github.com/repos/opencontainers/runc/milestones{/number}","notifications_url":"https://api.github.com/repos/opencontainers/runc/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/opencontainers/runc/labels{/name}","releases_url":"https://api.github.com/repos/opencontainers/runc/releases{/id}","created_at":"2015-06-05T23:30:45Z","updated_at":"2015-07-20T23:49:48Z","pushed_at":"2015-07-21T00:09:11Z","git_url":"git://github.com/opencontainers/runc.git","ssh_url":"git@github.com:opencontainers/runc.git","clone_url":"https://github.com/opencontainers/runc.git","svn_url":"https://github.com/opencontainers/runc","homepage":"","size":4454,"stargazers_count":1769,"watchers_count":1769,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":139,"mirror_url":null,"open_issues_count":35,"forks":139,"open_issues":35,"watchers":1769,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/opencontainers/runc/pulls/138"},"html":{"href":"https://github.com/opencontainers/runc/pull/138"},"issue":{"href":"https://api.github.com/repos/opencontainers/runc/issues/138"},"comments":{"href":"https://api.github.com/repos/opencontainers/runc/issues/138/comments"},"review_comments":{"href":"https://api.github.com/repos/opencontainers/runc/pulls/138/comments"},"review_comment":{"href":"https://api.github.com/repos/opencontainers/runc/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/opencontainers/runc/pulls/138/commits"},"statuses":{"href":"https://api.github.com/repos/opencontainers/runc/statuses/37eaaca4594c117519f313ac52ef49e2237833e7"}}}}