{"action":"created","comment":{"url":"https://api.github.com/repos/18F/micropurchase/pulls/comments/60965409","id":60965409,"diff_hunk":"@@ -0,0 +1,53 @@\n+module Rules\n+  class SealedBid < Rules::Basic\n+    def winning_bid\n+      return Presenter::Bid::Null.new if auction.available?","path":"app/models/rules/sealed_bid.rb","position":4,"original_position":4,"commit_id":"b8d7eba86aa3012205d4077f35ebc222c388c83a","original_commit_id":"b8d7eba86aa3012205d4077f35ebc222c388c83a","user":{"login":"jessieay","id":601515,"avatar_url":"https://avatars.githubusercontent.com/u/601515?v=3","gravatar_id":"","url":"https://api.github.com/users/jessieay","html_url":"https://github.com/jessieay","followers_url":"https://api.github.com/users/jessieay/followers","following_url":"https://api.github.com/users/jessieay/following{/other_user}","gists_url":"https://api.github.com/users/jessieay/gists{/gist_id}","starred_url":"https://api.github.com/users/jessieay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jessieay/subscriptions","organizations_url":"https://api.github.com/users/jessieay/orgs","repos_url":"https://api.github.com/users/jessieay/repos","events_url":"https://api.github.com/users/jessieay/events{/privacy}","received_events_url":"https://api.github.com/users/jessieay/received_events","type":"User","site_admin":false},"body":"I would not expect an AR model to return a Presenter. Could we have this return a `NullBid` instead? ","created_at":"2016-04-25T18:40:40Z","updated_at":"2016-04-25T18:40:40Z","html_url":"https://github.com/18F/micropurchase/pull/419#discussion_r60965409","pull_request_url":"https://api.github.com/repos/18F/micropurchase/pulls/419","_links":{"self":{"href":"https://api.github.com/repos/18F/micropurchase/pulls/comments/60965409"},"html":{"href":"https://github.com/18F/micropurchase/pull/419#discussion_r60965409"},"pull_request":{"href":"https://api.github.com/repos/18F/micropurchase/pulls/419"}}},"pull_request":{"url":"https://api.github.com/repos/18F/micropurchase/pulls/419","id":66580469,"html_url":"https://github.com/18F/micropurchase/pull/419","diff_url":"https://github.com/18F/micropurchase/pull/419.diff","patch_url":"https://github.com/18F/micropurchase/pull/419.patch","issue_url":"https://api.github.com/repos/18F/micropurchase/issues/419","number":419,"state":"open","locked":false,"title":"Auction Rules objects","user":{"login":"harrisj","id":2044,"avatar_url":"https://avatars.githubusercontent.com/u/2044?v=3","gravatar_id":"","url":"https://api.github.com/users/harrisj","html_url":"https://github.com/harrisj","followers_url":"https://api.github.com/users/harrisj/followers","following_url":"https://api.github.com/users/harrisj/following{/other_user}","gists_url":"https://api.github.com/users/harrisj/gists{/gist_id}","starred_url":"https://api.github.com/users/harrisj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/harrisj/subscriptions","organizations_url":"https://api.github.com/users/harrisj/orgs","repos_url":"https://api.github.com/users/harrisj/repos","events_url":"https://api.github.com/users/harrisj/events{/privacy}","received_events_url":"https://api.github.com/users/harrisj/received_events","type":"User","site_admin":false},"body":"So, I thought it might be interesting to explore getting rid of the `single_bid?` and `multi_bid?` flags and use polymorphism on that. This let me clean up the `PlaceBid` object a bit but I'm still in the point of needing those helper method to pass tests and figuring out a good way to handle the partials.\r\n\r\nWhat do you think @baccigalupi and @adelevie, is this a good direction or a bridge too far? Would we have to move the partial helpers into these classes?","created_at":"2016-04-15T01:59:52Z","updated_at":"2016-04-25T18:40:41Z","closed_at":null,"merged_at":null,"merge_commit_sha":"cea20f63ca2d66ea76b995f6c79e41eac03a4408","assignee":{"login":"harrisj","id":2044,"avatar_url":"https://avatars.githubusercontent.com/u/2044?v=3","gravatar_id":"","url":"https://api.github.com/users/harrisj","html_url":"https://github.com/harrisj","followers_url":"https://api.github.com/users/harrisj/followers","following_url":"https://api.github.com/users/harrisj/following{/other_user}","gists_url":"https://api.github.com/users/harrisj/gists{/gist_id}","starred_url":"https://api.github.com/users/harrisj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/harrisj/subscriptions","organizations_url":"https://api.github.com/users/harrisj/orgs","repos_url":"https://api.github.com/users/harrisj/repos","events_url":"https://api.github.com/users/harrisj/events{/privacy}","received_events_url":"https://api.github.com/users/harrisj/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/18F/micropurchase/pulls/419/commits","review_comments_url":"https://api.github.com/repos/18F/micropurchase/pulls/419/comments","review_comment_url":"https://api.github.com/repos/18F/micropurchase/pulls/comments{/number}","comments_url":"https://api.github.com/repos/18F/micropurchase/issues/419/comments","statuses_url":"https://api.github.com/repos/18F/micropurchase/statuses/b8d7eba86aa3012205d4077f35ebc222c388c83a","head":{"label":"18F:auction-type-cleanup","ref":"auction-type-cleanup","sha":"b8d7eba86aa3012205d4077f35ebc222c388c83a","user":{"login":"18F","id":6233994,"avatar_url":"https://avatars.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":43830328,"name":"micropurchase","full_name":"18F/micropurchase","owner":{"login":"18F","id":6233994,"avatar_url":"https://avatars.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/micropurchase","description":"18F's micro-purchase threshold experiment management app.","fork":false,"url":"https://api.github.com/repos/18F/micropurchase","forks_url":"https://api.github.com/repos/18F/micropurchase/forks","keys_url":"https://api.github.com/repos/18F/micropurchase/keys{/key_id}","collaborators_url":"https://api.github.com/repos/18F/micropurchase/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/18F/micropurchase/teams","hooks_url":"https://api.github.com/repos/18F/micropurchase/hooks","issue_events_url":"https://api.github.com/repos/18F/micropurchase/issues/events{/number}","events_url":"https://api.github.com/repos/18F/micropurchase/events","assignees_url":"https://api.github.com/repos/18F/micropurchase/assignees{/user}","branches_url":"https://api.github.com/repos/18F/micropurchase/branches{/branch}","tags_url":"https://api.github.com/repos/18F/micropurchase/tags","blobs_url":"https://api.github.com/repos/18F/micropurchase/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/18F/micropurchase/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/18F/micropurchase/git/refs{/sha}","trees_url":"https://api.github.com/repos/18F/micropurchase/git/trees{/sha}","statuses_url":"https://api.github.com/repos/18F/micropurchase/statuses/{sha}","languages_url":"https://api.github.com/repos/18F/micropurchase/languages","stargazers_url":"https://api.github.com/repos/18F/micropurchase/stargazers","contributors_url":"https://api.github.com/repos/18F/micropurchase/contributors","subscribers_url":"https://api.github.com/repos/18F/micropurchase/subscribers","subscription_url":"https://api.github.com/repos/18F/micropurchase/subscription","commits_url":"https://api.github.com/repos/18F/micropurchase/commits{/sha}","git_commits_url":"https://api.github.com/repos/18F/micropurchase/git/commits{/sha}","comments_url":"https://api.github.com/repos/18F/micropurchase/comments{/number}","issue_comment_url":"https://api.github.com/repos/18F/micropurchase/issues/comments{/number}","contents_url":"https://api.github.com/repos/18F/micropurchase/contents/{+path}","compare_url":"https://api.github.com/repos/18F/micropurchase/compare/{base}...{head}","merges_url":"https://api.github.com/repos/18F/micropurchase/merges","archive_url":"https://api.github.com/repos/18F/micropurchase/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/18F/micropurchase/downloads","issues_url":"https://api.github.com/repos/18F/micropurchase/issues{/number}","pulls_url":"https://api.github.com/repos/18F/micropurchase/pulls{/number}","milestones_url":"https://api.github.com/repos/18F/micropurchase/milestones{/number}","notifications_url":"https://api.github.com/repos/18F/micropurchase/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/18F/micropurchase/labels{/name}","releases_url":"https://api.github.com/repos/18F/micropurchase/releases{/id}","deployments_url":"https://api.github.com/repos/18F/micropurchase/deployments","created_at":"2015-10-07T16:47:29Z","updated_at":"2016-04-21T19:51:15Z","pushed_at":"2016-04-25T18:35:00Z","git_url":"git://github.com/18F/micropurchase.git","ssh_url":"git@github.com:18F/micropurchase.git","clone_url":"https://github.com/18F/micropurchase.git","svn_url":"https://github.com/18F/micropurchase","homepage":"https://micropurchase.18f.gov","size":3619,"stargazers_count":25,"watchers_count":25,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":15,"mirror_url":null,"open_issues_count":72,"forks":15,"open_issues":72,"watchers":25,"default_branch":"develop"}},"base":{"label":"18F:develop","ref":"develop","sha":"8b3acce45822fc17ba892c95592abe970909d312","user":{"login":"18F","id":6233994,"avatar_url":"https://avatars.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":43830328,"name":"micropurchase","full_name":"18F/micropurchase","owner":{"login":"18F","id":6233994,"avatar_url":"https://avatars.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/micropurchase","description":"18F's micro-purchase threshold experiment management app.","fork":false,"url":"https://api.github.com/repos/18F/micropurchase","forks_url":"https://api.github.com/repos/18F/micropurchase/forks","keys_url":"https://api.github.com/repos/18F/micropurchase/keys{/key_id}","collaborators_url":"https://api.github.com/repos/18F/micropurchase/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/18F/micropurchase/teams","hooks_url":"https://api.github.com/repos/18F/micropurchase/hooks","issue_events_url":"https://api.github.com/repos/18F/micropurchase/issues/events{/number}","events_url":"https://api.github.com/repos/18F/micropurchase/events","assignees_url":"https://api.github.com/repos/18F/micropurchase/assignees{/user}","branches_url":"https://api.github.com/repos/18F/micropurchase/branches{/branch}","tags_url":"https://api.github.com/repos/18F/micropurchase/tags","blobs_url":"https://api.github.com/repos/18F/micropurchase/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/18F/micropurchase/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/18F/micropurchase/git/refs{/sha}","trees_url":"https://api.github.com/repos/18F/micropurchase/git/trees{/sha}","statuses_url":"https://api.github.com/repos/18F/micropurchase/statuses/{sha}","languages_url":"https://api.github.com/repos/18F/micropurchase/languages","stargazers_url":"https://api.github.com/repos/18F/micropurchase/stargazers","contributors_url":"https://api.github.com/repos/18F/micropurchase/contributors","subscribers_url":"https://api.github.com/repos/18F/micropurchase/subscribers","subscription_url":"https://api.github.com/repos/18F/micropurchase/subscription","commits_url":"https://api.github.com/repos/18F/micropurchase/commits{/sha}","git_commits_url":"https://api.github.com/repos/18F/micropurchase/git/commits{/sha}","comments_url":"https://api.github.com/repos/18F/micropurchase/comments{/number}","issue_comment_url":"https://api.github.com/repos/18F/micropurchase/issues/comments{/number}","contents_url":"https://api.github.com/repos/18F/micropurchase/contents/{+path}","compare_url":"https://api.github.com/repos/18F/micropurchase/compare/{base}...{head}","merges_url":"https://api.github.com/repos/18F/micropurchase/merges","archive_url":"https://api.github.com/repos/18F/micropurchase/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/18F/micropurchase/downloads","issues_url":"https://api.github.com/repos/18F/micropurchase/issues{/number}","pulls_url":"https://api.github.com/repos/18F/micropurchase/pulls{/number}","milestones_url":"https://api.github.com/repos/18F/micropurchase/milestones{/number}","notifications_url":"https://api.github.com/repos/18F/micropurchase/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/18F/micropurchase/labels{/name}","releases_url":"https://api.github.com/repos/18F/micropurchase/releases{/id}","deployments_url":"https://api.github.com/repos/18F/micropurchase/deployments","created_at":"2015-10-07T16:47:29Z","updated_at":"2016-04-21T19:51:15Z","pushed_at":"2016-04-25T18:35:00Z","git_url":"git://github.com/18F/micropurchase.git","ssh_url":"git@github.com:18F/micropurchase.git","clone_url":"https://github.com/18F/micropurchase.git","svn_url":"https://github.com/18F/micropurchase","homepage":"https://micropurchase.18f.gov","size":3619,"stargazers_count":25,"watchers_count":25,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":15,"mirror_url":null,"open_issues_count":72,"forks":15,"open_issues":72,"watchers":25,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/18F/micropurchase/pulls/419"},"html":{"href":"https://github.com/18F/micropurchase/pull/419"},"issue":{"href":"https://api.github.com/repos/18F/micropurchase/issues/419"},"comments":{"href":"https://api.github.com/repos/18F/micropurchase/issues/419/comments"},"review_comments":{"href":"https://api.github.com/repos/18F/micropurchase/pulls/419/comments"},"review_comment":{"href":"https://api.github.com/repos/18F/micropurchase/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/18F/micropurchase/pulls/419/commits"},"statuses":{"href":"https://api.github.com/repos/18F/micropurchase/statuses/b8d7eba86aa3012205d4077f35ebc222c388c83a"}}}}