{"action":"created","issue":{"url":"https://api.github.com/repos/danielballan/bluesky/issues/97","labels_url":"https://api.github.com/repos/danielballan/bluesky/issues/97/labels{/name}","comments_url":"https://api.github.com/repos/danielballan/bluesky/issues/97/comments","events_url":"https://api.github.com/repos/danielballan/bluesky/issues/97/events","html_url":"https://github.com/danielballan/bluesky/pull/97","id":88555307,"number":97,"title":"Scan Validation","user":{"login":"ericdill","id":6223243,"avatar_url":"https://avatars.githubusercontent.com/u/6223243?v=3","gravatar_id":"","url":"https://api.github.com/users/ericdill","html_url":"https://github.com/ericdill","followers_url":"https://api.github.com/users/ericdill/followers","following_url":"https://api.github.com/users/ericdill/following{/other_user}","gists_url":"https://api.github.com/users/ericdill/gists{/gist_id}","starred_url":"https://api.github.com/users/ericdill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ericdill/subscriptions","organizations_url":"https://api.github.com/users/ericdill/orgs","repos_url":"https://api.github.com/users/ericdill/repos","events_url":"https://api.github.com/users/ericdill/events{/privacy}","received_events_url":"https://api.github.com/users/ericdill/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2015-06-15T22:19:09Z","updated_at":"2015-07-21T18:52:12Z","closed_at":"2015-07-21T18:52:12Z","pull_request":{"url":"https://api.github.com/repos/danielballan/bluesky/pulls/97","html_url":"https://github.com/danielballan/bluesky/pull/97","diff_url":"https://github.com/danielballan/bluesky/pull/97.diff","patch_url":"https://github.com/danielballan/bluesky/pull/97.patch"},"body":"Scan Validation. The plan here is to pass a scan generator and a run engine to a validation class.  This class will use one or more state machines internally to validate all the message that it receives. It will also count the number of messages of each type that it has received.  If everything behaves, ScanValidator.validate() will execute without raising. ScanValidator.report() will then print out the number of times each message was called.\r\n\r\nIPython notebook in progress: http://nbviewer.ipython.org/7bda5523b33f7a611b86\r\n\r\nWhen done, this will take care of #73. As of now (https://github.com/danielballan/bluesky/commit/319a502f907d8e00868b39812f3fa24f643b616c) all it does is count messages.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/danielballan/bluesky/issues/comments/123439974","html_url":"https://github.com/danielballan/bluesky/pull/97#issuecomment-123439974","issue_url":"https://api.github.com/repos/danielballan/bluesky/issues/97","id":123439974,"user":{"login":"danielballan","id":2279598,"avatar_url":"https://avatars.githubusercontent.com/u/2279598?v=3","gravatar_id":"","url":"https://api.github.com/users/danielballan","html_url":"https://github.com/danielballan","followers_url":"https://api.github.com/users/danielballan/followers","following_url":"https://api.github.com/users/danielballan/following{/other_user}","gists_url":"https://api.github.com/users/danielballan/gists{/gist_id}","starred_url":"https://api.github.com/users/danielballan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danielballan/subscriptions","organizations_url":"https://api.github.com/users/danielballan/orgs","repos_url":"https://api.github.com/users/danielballan/repos","events_url":"https://api.github.com/users/danielballan/events{/privacy}","received_events_url":"https://api.github.com/users/danielballan/received_events","type":"User","site_admin":false},"created_at":"2015-07-21T18:52:12Z","updated_at":"2015-07-21T18:52:12Z","body":"Per conversation @ericdill, punting for now as low-prio."}}