{"action":"created","comment":{"url":"https://api.github.com/repos/opencontainers/tob/pulls/comments/66610655","id":66610655,"diff_hunk":"@@ -0,0 +1,26 @@\n+# OCI Project Release Approval Process v1.0\n+\n+OCI projects need a standard process for making releases so the community of maintainers can consistently know when something can be tagged and released. As the OCI maintains three categories of projects: specifications, applications, and conformance/testing tools we will set different rules for each.\n+\n+## Specifications\n+\n+**Planning a release:** Every OCI specification project SHOULD hold a weekly meeting that involves maintainers reviewing pull requests, debating outstanding issues, and planning releases. This meeting MUST be advertised on the project README and MAY happen on a phone call, video conference, or on IRC. Maintainers MUST send updates to the dev@opencontainers.org with results of these meetings. Maintainers MAY change the meeting cadence once a specification has reached v1.0.0. The meeting cadence MUST NOT be greater than once every four weeks The release plans, corresponding milestones and estimated due dates MUST be published on GitHub (e.g. https://github.com/opencontainers/runtime-spec/milestones). \n+\n+**Making a release:** OCI specification projects MUST announce intentions to release with two project maintainer sponsors (listed in the repo MAINTAINERS file) on the dev@opencontainers.org mailing list. After the announcement a two-thirds super majority of project maintainers MUST reply to the list with an LGTM within one week for the release to be approved. The maintainers MUST wait a full week for maintainers to reply but if all maintainers reply with an LGTM then the release MAY release earlier except in the case of a major releases.\n+\n+**Rejecting a release:** A project maintainer MAY choose to reply with REJECT and MUST include a list of concerns filed as GitHub issues. The project maintainers SHOULD try to resolve the concerns and wait for the rejecting maintainer to change their opinion to LGTM. However, a release MAY continue with a single REJECT as long two-thirds of the project maintainers approved the release.\n+\n+**Timelines:** Specifications have a variety of different timelines in their lifecycle. In early stages the spec SHOULD release often to garner feedback. In later stages there will be bug fix releases, security fix releases, and major breaking change releases. Each of these should have a different level of notification.\n+\n+- Pre-v1.0.0 specifications SHOULD release on a regular cadence and MUST follow the normal release process. In practice this should be a release every week or two.","path":"proposals/release-approval-process.md","position":15,"original_position":15,"commit_id":"bdfa70d70f093146bc730be2576586ec8ed57cca","original_commit_id":"bdfa70d70f093146bc730be2576586ec8ed57cca","user":{"login":"RobDolinMS","id":8301581,"avatar_url":"https://avatars.githubusercontent.com/u/8301581?v=3","gravatar_id":"","url":"https://api.github.com/users/RobDolinMS","html_url":"https://github.com/RobDolinMS","followers_url":"https://api.github.com/users/RobDolinMS/followers","following_url":"https://api.github.com/users/RobDolinMS/following{/other_user}","gists_url":"https://api.github.com/users/RobDolinMS/gists{/gist_id}","starred_url":"https://api.github.com/users/RobDolinMS/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RobDolinMS/subscriptions","organizations_url":"https://api.github.com/users/RobDolinMS/orgs","repos_url":"https://api.github.com/users/RobDolinMS/repos","events_url":"https://api.github.com/users/RobDolinMS/events{/privacy}","received_events_url":"https://api.github.com/users/RobDolinMS/received_events","type":"User","site_admin":false},"body":"@wking Is right here.  The runtime-spec has hit about monthly milestones.  I'm a +1 making monthly the minimum.  ","created_at":"2016-06-10T13:16:10Z","updated_at":"2016-06-10T13:16:10Z","html_url":"https://github.com/opencontainers/tob/pull/15#discussion_r66610655","pull_request_url":"https://api.github.com/repos/opencontainers/tob/pulls/15","_links":{"self":{"href":"https://api.github.com/repos/opencontainers/tob/pulls/comments/66610655"},"html":{"href":"https://github.com/opencontainers/tob/pull/15#discussion_r66610655"},"pull_request":{"href":"https://api.github.com/repos/opencontainers/tob/pulls/15"}}},"pull_request":{"url":"https://api.github.com/repos/opencontainers/tob/pulls/15","id":73281212,"html_url":"https://github.com/opencontainers/tob/pull/15","diff_url":"https://github.com/opencontainers/tob/pull/15.diff","patch_url":"https://github.com/opencontainers/tob/pull/15.patch","issue_url":"https://api.github.com/repos/opencontainers/tob/issues/15","number":15,"state":"open","locked":false,"title":"proposals: add release-approval-process","user":{"login":"philips","id":33544,"avatar_url":"https://avatars.githubusercontent.com/u/33544?v=3","gravatar_id":"","url":"https://api.github.com/users/philips","html_url":"https://github.com/philips","followers_url":"https://api.github.com/users/philips/followers","following_url":"https://api.github.com/users/philips/following{/other_user}","gists_url":"https://api.github.com/users/philips/gists{/gist_id}","starred_url":"https://api.github.com/users/philips/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philips/subscriptions","organizations_url":"https://api.github.com/users/philips/orgs","repos_url":"https://api.github.com/users/philips/repos","events_url":"https://api.github.com/users/philips/events{/privacy}","received_events_url":"https://api.github.com/users/philips/received_events","type":"User","site_admin":false},"body":"This is a proposed process for approval of new releases of\r\nspecifications and projects from the OCI.\r\n\r\nThe creation of this process is designed to clarify how a release gets\r\ncreated and who needs to sign off.","created_at":"2016-06-09T20:35:41Z","updated_at":"2016-06-10T13:16:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"115ecadf62b363b6dfa7821bcf064f9b90eb2f87","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/opencontainers/tob/pulls/15/commits","review_comments_url":"https://api.github.com/repos/opencontainers/tob/pulls/15/comments","review_comment_url":"https://api.github.com/repos/opencontainers/tob/pulls/comments{/number}","comments_url":"https://api.github.com/repos/opencontainers/tob/issues/15/comments","statuses_url":"https://api.github.com/repos/opencontainers/tob/statuses/bdfa70d70f093146bc730be2576586ec8ed57cca","head":{"label":"philips:release-approval-process","ref":"release-approval-process","sha":"bdfa70d70f093146bc730be2576586ec8ed57cca","user":{"login":"philips","id":33544,"avatar_url":"https://avatars.githubusercontent.com/u/33544?v=3","gravatar_id":"","url":"https://api.github.com/users/philips","html_url":"https://github.com/philips","followers_url":"https://api.github.com/users/philips/followers","following_url":"https://api.github.com/users/philips/following{/other_user}","gists_url":"https://api.github.com/users/philips/gists{/gist_id}","starred_url":"https://api.github.com/users/philips/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philips/subscriptions","organizations_url":"https://api.github.com/users/philips/orgs","repos_url":"https://api.github.com/users/philips/repos","events_url":"https://api.github.com/users/philips/events{/privacy}","received_events_url":"https://api.github.com/users/philips/received_events","type":"User","site_admin":false},"repo":{"id":53615928,"name":"tob","full_name":"philips/tob","owner":{"login":"philips","id":33544,"avatar_url":"https://avatars.githubusercontent.com/u/33544?v=3","gravatar_id":"","url":"https://api.github.com/users/philips","html_url":"https://github.com/philips","followers_url":"https://api.github.com/users/philips/followers","following_url":"https://api.github.com/users/philips/following{/other_user}","gists_url":"https://api.github.com/users/philips/gists{/gist_id}","starred_url":"https://api.github.com/users/philips/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philips/subscriptions","organizations_url":"https://api.github.com/users/philips/orgs","repos_url":"https://api.github.com/users/philips/repos","events_url":"https://api.github.com/users/philips/events{/privacy}","received_events_url":"https://api.github.com/users/philips/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/philips/tob","description":"Technical Oversight Board (TOB)","fork":true,"url":"https://api.github.com/repos/philips/tob","forks_url":"https://api.github.com/repos/philips/tob/forks","keys_url":"https://api.github.com/repos/philips/tob/keys{/key_id}","collaborators_url":"https://api.github.com/repos/philips/tob/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/philips/tob/teams","hooks_url":"https://api.github.com/repos/philips/tob/hooks","issue_events_url":"https://api.github.com/repos/philips/tob/issues/events{/number}","events_url":"https://api.github.com/repos/philips/tob/events","assignees_url":"https://api.github.com/repos/philips/tob/assignees{/user}","branches_url":"https://api.github.com/repos/philips/tob/branches{/branch}","tags_url":"https://api.github.com/repos/philips/tob/tags","blobs_url":"https://api.github.com/repos/philips/tob/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/philips/tob/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/philips/tob/git/refs{/sha}","trees_url":"https://api.github.com/repos/philips/tob/git/trees{/sha}","statuses_url":"https://api.github.com/repos/philips/tob/statuses/{sha}","languages_url":"https://api.github.com/repos/philips/tob/languages","stargazers_url":"https://api.github.com/repos/philips/tob/stargazers","contributors_url":"https://api.github.com/repos/philips/tob/contributors","subscribers_url":"https://api.github.com/repos/philips/tob/subscribers","subscription_url":"https://api.github.com/repos/philips/tob/subscription","commits_url":"https://api.github.com/repos/philips/tob/commits{/sha}","git_commits_url":"https://api.github.com/repos/philips/tob/git/commits{/sha}","comments_url":"https://api.github.com/repos/philips/tob/comments{/number}","issue_comment_url":"https://api.github.com/repos/philips/tob/issues/comments{/number}","contents_url":"https://api.github.com/repos/philips/tob/contents/{+path}","compare_url":"https://api.github.com/repos/philips/tob/compare/{base}...{head}","merges_url":"https://api.github.com/repos/philips/tob/merges","archive_url":"https://api.github.com/repos/philips/tob/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/philips/tob/downloads","issues_url":"https://api.github.com/repos/philips/tob/issues{/number}","pulls_url":"https://api.github.com/repos/philips/tob/pulls{/number}","milestones_url":"https://api.github.com/repos/philips/tob/milestones{/number}","notifications_url":"https://api.github.com/repos/philips/tob/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/philips/tob/labels{/name}","releases_url":"https://api.github.com/repos/philips/tob/releases{/id}","deployments_url":"https://api.github.com/repos/philips/tob/deployments","created_at":"2016-03-10T20:48:57Z","updated_at":"2016-02-17T22:39:54Z","pushed_at":"2016-06-09T20:50:28Z","git_url":"git://github.com/philips/tob.git","ssh_url":"git@github.com:philips/tob.git","clone_url":"https://github.com/philips/tob.git","svn_url":"https://github.com/philips/tob","homepage":"https://groups.google.com/a/opencontainers.org/forum/#!forum/tob","size":11,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"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":"eba40bd970be3496395570830b7ec032a0972632","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":51417569,"name":"tob","full_name":"opencontainers/tob","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/tob","description":"Technical Oversight Board (TOB)","fork":false,"url":"https://api.github.com/repos/opencontainers/tob","forks_url":"https://api.github.com/repos/opencontainers/tob/forks","keys_url":"https://api.github.com/repos/opencontainers/tob/keys{/key_id}","collaborators_url":"https://api.github.com/repos/opencontainers/tob/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/opencontainers/tob/teams","hooks_url":"https://api.github.com/repos/opencontainers/tob/hooks","issue_events_url":"https://api.github.com/repos/opencontainers/tob/issues/events{/number}","events_url":"https://api.github.com/repos/opencontainers/tob/events","assignees_url":"https://api.github.com/repos/opencontainers/tob/assignees{/user}","branches_url":"https://api.github.com/repos/opencontainers/tob/branches{/branch}","tags_url":"https://api.github.com/repos/opencontainers/tob/tags","blobs_url":"https://api.github.com/repos/opencontainers/tob/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/opencontainers/tob/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/opencontainers/tob/git/refs{/sha}","trees_url":"https://api.github.com/repos/opencontainers/tob/git/trees{/sha}","statuses_url":"https://api.github.com/repos/opencontainers/tob/statuses/{sha}","languages_url":"https://api.github.com/repos/opencontainers/tob/languages","stargazers_url":"https://api.github.com/repos/opencontainers/tob/stargazers","contributors_url":"https://api.github.com/repos/opencontainers/tob/contributors","subscribers_url":"https://api.github.com/repos/opencontainers/tob/subscribers","subscription_url":"https://api.github.com/repos/opencontainers/tob/subscription","commits_url":"https://api.github.com/repos/opencontainers/tob/commits{/sha}","git_commits_url":"https://api.github.com/repos/opencontainers/tob/git/commits{/sha}","comments_url":"https://api.github.com/repos/opencontainers/tob/comments{/number}","issue_comment_url":"https://api.github.com/repos/opencontainers/tob/issues/comments{/number}","contents_url":"https://api.github.com/repos/opencontainers/tob/contents/{+path}","compare_url":"https://api.github.com/repos/opencontainers/tob/compare/{base}...{head}","merges_url":"https://api.github.com/repos/opencontainers/tob/merges","archive_url":"https://api.github.com/repos/opencontainers/tob/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/opencontainers/tob/downloads","issues_url":"https://api.github.com/repos/opencontainers/tob/issues{/number}","pulls_url":"https://api.github.com/repos/opencontainers/tob/pulls{/number}","milestones_url":"https://api.github.com/repos/opencontainers/tob/milestones{/number}","notifications_url":"https://api.github.com/repos/opencontainers/tob/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/opencontainers/tob/labels{/name}","releases_url":"https://api.github.com/repos/opencontainers/tob/releases{/id}","deployments_url":"https://api.github.com/repos/opencontainers/tob/deployments","created_at":"2016-02-10T02:58:13Z","updated_at":"2016-04-21T07:04:23Z","pushed_at":"2016-06-09T21:11:02Z","git_url":"git://github.com/opencontainers/tob.git","ssh_url":"git@github.com:opencontainers/tob.git","clone_url":"https://github.com/opencontainers/tob.git","svn_url":"https://github.com/opencontainers/tob","homepage":"https://groups.google.com/a/opencontainers.org/forum/#!forum/tob","size":17,"stargazers_count":3,"watchers_count":3,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4,"mirror_url":null,"open_issues_count":5,"forks":4,"open_issues":5,"watchers":3,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/opencontainers/tob/pulls/15"},"html":{"href":"https://github.com/opencontainers/tob/pull/15"},"issue":{"href":"https://api.github.com/repos/opencontainers/tob/issues/15"},"comments":{"href":"https://api.github.com/repos/opencontainers/tob/issues/15/comments"},"review_comments":{"href":"https://api.github.com/repos/opencontainers/tob/pulls/15/comments"},"review_comment":{"href":"https://api.github.com/repos/opencontainers/tob/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/opencontainers/tob/pulls/15/commits"},"statuses":{"href":"https://api.github.com/repos/opencontainers/tob/statuses/bdfa70d70f093146bc730be2576586ec8ed57cca"}}}}
{"actor":{"display_login":"RobDolinMS"}}