{"action":"created","comment":{"url":"https://api.github.com/repos/18F/identity-idp/pulls/comments/122744398","pull_request_review_id":44886811,"id":122744398,"diff_hunk":"@@ -70,11 +71,25 @@ def authorization_params\n       params.permit(OpenidConnectAuthorizeForm::ATTRS)\n     end\n \n+    def handle_invalid_logged_out_form","path":"app/controllers/openid_connect/authorization_controller.rb","position":12,"original_position":12,"commit_id":"a8096fc7821ad61576a408de359e24323dfc556f","original_commit_id":"a8096fc7821ad61576a408de359e24323dfc556f","user":{"login":"monfresh","id":811150,"avatar_url":"https://avatars2.githubusercontent.com/u/811150?v=3","gravatar_id":"","url":"https://api.github.com/users/monfresh","html_url":"https://github.com/monfresh","followers_url":"https://api.github.com/users/monfresh/followers","following_url":"https://api.github.com/users/monfresh/following{/other_user}","gists_url":"https://api.github.com/users/monfresh/gists{/gist_id}","starred_url":"https://api.github.com/users/monfresh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/monfresh/subscriptions","organizations_url":"https://api.github.com/users/monfresh/orgs","repos_url":"https://api.github.com/users/monfresh/repos","events_url":"https://api.github.com/users/monfresh/events{/privacy}","received_events_url":"https://api.github.com/users/monfresh/received_events","type":"User","site_admin":false},"body":"Rename this to `validate_oidc_request`, to make it consistent with `validate_saml_request`? The OIDC request needs to be validated before `store_request` can be called, so I think this more accurately describes what's happening.","created_at":"2017-06-19T15:41:12Z","updated_at":"2017-06-19T15:41:12Z","html_url":"https://github.com/18F/identity-idp/pull/1494#discussion_r122744398","pull_request_url":"https://api.github.com/repos/18F/identity-idp/pulls/1494","_links":{"self":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/comments/122744398"},"html":{"href":"https://github.com/18F/identity-idp/pull/1494#discussion_r122744398"},"pull_request":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/1494"}}},"pull_request":{"url":"https://api.github.com/repos/18F/identity-idp/pulls/1494","id":126326503,"html_url":"https://github.com/18F/identity-idp/pull/1494","diff_url":"https://github.com/18F/identity-idp/pull/1494.diff","patch_url":"https://github.com/18F/identity-idp/pull/1494.patch","issue_url":"https://api.github.com/repos/18F/identity-idp/issues/1494","number":1494,"state":"open","locked":false,"title":"Handle invalid OIDC requests before persisting","user":{"login":"zachmargolis","id":458784,"avatar_url":"https://avatars3.githubusercontent.com/u/458784?v=3","gravatar_id":"","url":"https://api.github.com/users/zachmargolis","html_url":"https://github.com/zachmargolis","followers_url":"https://api.github.com/users/zachmargolis/followers","following_url":"https://api.github.com/users/zachmargolis/following{/other_user}","gists_url":"https://api.github.com/users/zachmargolis/gists{/gist_id}","starred_url":"https://api.github.com/users/zachmargolis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zachmargolis/subscriptions","organizations_url":"https://api.github.com/users/zachmargolis/orgs","repos_url":"https://api.github.com/users/zachmargolis/repos","events_url":"https://api.github.com/users/zachmargolis/events{/privacy}","received_events_url":"https://api.github.com/users/zachmargolis/received_events","type":"User","site_admin":false},"body":"**Why**: Saving invalid forms to the database causes errors","created_at":"2017-06-19T15:07:35Z","updated_at":"2017-06-19T15:41:12Z","closed_at":null,"merged_at":null,"merge_commit_sha":"e7132690326b5c2f3273dee0009115cd9b136fe4","assignee":{"login":"zachmargolis","id":458784,"avatar_url":"https://avatars3.githubusercontent.com/u/458784?v=3","gravatar_id":"","url":"https://api.github.com/users/zachmargolis","html_url":"https://github.com/zachmargolis","followers_url":"https://api.github.com/users/zachmargolis/followers","following_url":"https://api.github.com/users/zachmargolis/following{/other_user}","gists_url":"https://api.github.com/users/zachmargolis/gists{/gist_id}","starred_url":"https://api.github.com/users/zachmargolis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zachmargolis/subscriptions","organizations_url":"https://api.github.com/users/zachmargolis/orgs","repos_url":"https://api.github.com/users/zachmargolis/repos","events_url":"https://api.github.com/users/zachmargolis/events{/privacy}","received_events_url":"https://api.github.com/users/zachmargolis/received_events","type":"User","site_admin":false},"assignees":[{"login":"zachmargolis","id":458784,"avatar_url":"https://avatars3.githubusercontent.com/u/458784?v=3","gravatar_id":"","url":"https://api.github.com/users/zachmargolis","html_url":"https://github.com/zachmargolis","followers_url":"https://api.github.com/users/zachmargolis/followers","following_url":"https://api.github.com/users/zachmargolis/following{/other_user}","gists_url":"https://api.github.com/users/zachmargolis/gists{/gist_id}","starred_url":"https://api.github.com/users/zachmargolis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zachmargolis/subscriptions","organizations_url":"https://api.github.com/users/zachmargolis/orgs","repos_url":"https://api.github.com/users/zachmargolis/repos","events_url":"https://api.github.com/users/zachmargolis/events{/privacy}","received_events_url":"https://api.github.com/users/zachmargolis/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"amoose","id":1328699,"avatar_url":"https://avatars3.githubusercontent.com/u/1328699?v=3","gravatar_id":"","url":"https://api.github.com/users/amoose","html_url":"https://github.com/amoose","followers_url":"https://api.github.com/users/amoose/followers","following_url":"https://api.github.com/users/amoose/following{/other_user}","gists_url":"https://api.github.com/users/amoose/gists{/gist_id}","starred_url":"https://api.github.com/users/amoose/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amoose/subscriptions","organizations_url":"https://api.github.com/users/amoose/orgs","repos_url":"https://api.github.com/users/amoose/repos","events_url":"https://api.github.com/users/amoose/events{/privacy}","received_events_url":"https://api.github.com/users/amoose/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/18F/identity-idp/pulls/1494/commits","review_comments_url":"https://api.github.com/repos/18F/identity-idp/pulls/1494/comments","review_comment_url":"https://api.github.com/repos/18F/identity-idp/pulls/comments{/number}","comments_url":"https://api.github.com/repos/18F/identity-idp/issues/1494/comments","statuses_url":"https://api.github.com/repos/18F/identity-idp/statuses/a8096fc7821ad61576a408de359e24323dfc556f","head":{"label":"18F:margolis-openid-params-bugs","ref":"margolis-openid-params-bugs","sha":"a8096fc7821ad61576a408de359e24323dfc556f","user":{"login":"18F","id":6233994,"avatar_url":"https://avatars3.githubusercontent.com/u/6233994?v=3","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"repo":{"id":50386243,"name":"identity-idp","full_name":"18F/identity-idp","owner":{"login":"18F","id":6233994,"avatar_url":"https://avatars3.githubusercontent.com/u/6233994?v=3","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/18F/identity-idp","description":"18F Identity Provider (IdP)","fork":false,"url":"https://api.github.com/repos/18F/identity-idp","forks_url":"https://api.github.com/repos/18F/identity-idp/forks","keys_url":"https://api.github.com/repos/18F/identity-idp/keys{/key_id}","collaborators_url":"https://api.github.com/repos/18F/identity-idp/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/18F/identity-idp/teams","hooks_url":"https://api.github.com/repos/18F/identity-idp/hooks","issue_events_url":"https://api.github.com/repos/18F/identity-idp/issues/events{/number}","events_url":"https://api.github.com/repos/18F/identity-idp/events","assignees_url":"https://api.github.com/repos/18F/identity-idp/assignees{/user}","branches_url":"https://api.github.com/repos/18F/identity-idp/branches{/branch}","tags_url":"https://api.github.com/repos/18F/identity-idp/tags","blobs_url":"https://api.github.com/repos/18F/identity-idp/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/18F/identity-idp/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/18F/identity-idp/git/refs{/sha}","trees_url":"https://api.github.com/repos/18F/identity-idp/git/trees{/sha}","statuses_url":"https://api.github.com/repos/18F/identity-idp/statuses/{sha}","languages_url":"https://api.github.com/repos/18F/identity-idp/languages","stargazers_url":"https://api.github.com/repos/18F/identity-idp/stargazers","contributors_url":"https://api.github.com/repos/18F/identity-idp/contributors","subscribers_url":"https://api.github.com/repos/18F/identity-idp/subscribers","subscription_url":"https://api.github.com/repos/18F/identity-idp/subscription","commits_url":"https://api.github.com/repos/18F/identity-idp/commits{/sha}","git_commits_url":"https://api.github.com/repos/18F/identity-idp/git/commits{/sha}","comments_url":"https://api.github.com/repos/18F/identity-idp/comments{/number}","issue_comment_url":"https://api.github.com/repos/18F/identity-idp/issues/comments{/number}","contents_url":"https://api.github.com/repos/18F/identity-idp/contents/{+path}","compare_url":"https://api.github.com/repos/18F/identity-idp/compare/{base}...{head}","merges_url":"https://api.github.com/repos/18F/identity-idp/merges","archive_url":"https://api.github.com/repos/18F/identity-idp/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/18F/identity-idp/downloads","issues_url":"https://api.github.com/repos/18F/identity-idp/issues{/number}","pulls_url":"https://api.github.com/repos/18F/identity-idp/pulls{/number}","milestones_url":"https://api.github.com/repos/18F/identity-idp/milestones{/number}","notifications_url":"https://api.github.com/repos/18F/identity-idp/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/18F/identity-idp/labels{/name}","releases_url":"https://api.github.com/repos/18F/identity-idp/releases{/id}","deployments_url":"https://api.github.com/repos/18F/identity-idp/deployments","created_at":"2016-01-25T22:40:59Z","updated_at":"2017-06-13T23:34:15Z","pushed_at":"2017-06-19T15:07:36Z","git_url":"git://github.com/18F/identity-idp.git","ssh_url":"git@github.com:18F/identity-idp.git","clone_url":"https://github.com/18F/identity-idp.git","svn_url":"https://github.com/18F/identity-idp","homepage":"https://secure.login.gov/","size":9268,"stargazers_count":51,"watchers_count":51,"language":"Ruby","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":14,"mirror_url":null,"open_issues_count":9,"forks":14,"open_issues":9,"watchers":51,"default_branch":"master"}},"base":{"label":"18F:master","ref":"master","sha":"d272dffba5eba5c5b7e56dcebcdc1ec8d9fe84ef","user":{"login":"18F","id":6233994,"avatar_url":"https://avatars3.githubusercontent.com/u/6233994?v=3","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"repo":{"id":50386243,"name":"identity-idp","full_name":"18F/identity-idp","owner":{"login":"18F","id":6233994,"avatar_url":"https://avatars3.githubusercontent.com/u/6233994?v=3","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/18F/identity-idp","description":"18F Identity Provider (IdP)","fork":false,"url":"https://api.github.com/repos/18F/identity-idp","forks_url":"https://api.github.com/repos/18F/identity-idp/forks","keys_url":"https://api.github.com/repos/18F/identity-idp/keys{/key_id}","collaborators_url":"https://api.github.com/repos/18F/identity-idp/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/18F/identity-idp/teams","hooks_url":"https://api.github.com/repos/18F/identity-idp/hooks","issue_events_url":"https://api.github.com/repos/18F/identity-idp/issues/events{/number}","events_url":"https://api.github.com/repos/18F/identity-idp/events","assignees_url":"https://api.github.com/repos/18F/identity-idp/assignees{/user}","branches_url":"https://api.github.com/repos/18F/identity-idp/branches{/branch}","tags_url":"https://api.github.com/repos/18F/identity-idp/tags","blobs_url":"https://api.github.com/repos/18F/identity-idp/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/18F/identity-idp/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/18F/identity-idp/git/refs{/sha}","trees_url":"https://api.github.com/repos/18F/identity-idp/git/trees{/sha}","statuses_url":"https://api.github.com/repos/18F/identity-idp/statuses/{sha}","languages_url":"https://api.github.com/repos/18F/identity-idp/languages","stargazers_url":"https://api.github.com/repos/18F/identity-idp/stargazers","contributors_url":"https://api.github.com/repos/18F/identity-idp/contributors","subscribers_url":"https://api.github.com/repos/18F/identity-idp/subscribers","subscription_url":"https://api.github.com/repos/18F/identity-idp/subscription","commits_url":"https://api.github.com/repos/18F/identity-idp/commits{/sha}","git_commits_url":"https://api.github.com/repos/18F/identity-idp/git/commits{/sha}","comments_url":"https://api.github.com/repos/18F/identity-idp/comments{/number}","issue_comment_url":"https://api.github.com/repos/18F/identity-idp/issues/comments{/number}","contents_url":"https://api.github.com/repos/18F/identity-idp/contents/{+path}","compare_url":"https://api.github.com/repos/18F/identity-idp/compare/{base}...{head}","merges_url":"https://api.github.com/repos/18F/identity-idp/merges","archive_url":"https://api.github.com/repos/18F/identity-idp/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/18F/identity-idp/downloads","issues_url":"https://api.github.com/repos/18F/identity-idp/issues{/number}","pulls_url":"https://api.github.com/repos/18F/identity-idp/pulls{/number}","milestones_url":"https://api.github.com/repos/18F/identity-idp/milestones{/number}","notifications_url":"https://api.github.com/repos/18F/identity-idp/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/18F/identity-idp/labels{/name}","releases_url":"https://api.github.com/repos/18F/identity-idp/releases{/id}","deployments_url":"https://api.github.com/repos/18F/identity-idp/deployments","created_at":"2016-01-25T22:40:59Z","updated_at":"2017-06-13T23:34:15Z","pushed_at":"2017-06-19T15:07:36Z","git_url":"git://github.com/18F/identity-idp.git","ssh_url":"git@github.com:18F/identity-idp.git","clone_url":"https://github.com/18F/identity-idp.git","svn_url":"https://github.com/18F/identity-idp","homepage":"https://secure.login.gov/","size":9268,"stargazers_count":51,"watchers_count":51,"language":"Ruby","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":14,"mirror_url":null,"open_issues_count":9,"forks":14,"open_issues":9,"watchers":51,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/1494"},"html":{"href":"https://github.com/18F/identity-idp/pull/1494"},"issue":{"href":"https://api.github.com/repos/18F/identity-idp/issues/1494"},"comments":{"href":"https://api.github.com/repos/18F/identity-idp/issues/1494/comments"},"review_comments":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/1494/comments"},"review_comment":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/18F/identity-idp/pulls/1494/commits"},"statuses":{"href":"https://api.github.com/repos/18F/identity-idp/statuses/a8096fc7821ad61576a408de359e24323dfc556f"}}}}
{"actor":{"display_login":"monfresh"}}