{"action":"closed","issue":{"url":"https://api.github.com/repos/jalcine/wintermute/issues/45","labels_url":"https://api.github.com/repos/jalcine/wintermute/issues/45/labels{/name}","comments_url":"https://api.github.com/repos/jalcine/wintermute/issues/45/comments","events_url":"https://api.github.com/repos/jalcine/wintermute/issues/45/events","html_url":"https://github.com/jalcine/wintermute/issues/45","id":54412955,"number":45,"title":"Craft Hard Specification for Message.","user":{"login":"jalcine","id":452100,"avatar_url":"https://avatars.githubusercontent.com/u/452100?v=3","gravatar_id":"","url":"https://api.github.com/users/jalcine","html_url":"https://github.com/jalcine","followers_url":"https://api.github.com/users/jalcine/followers","following_url":"https://api.github.com/users/jalcine/following{/other_user}","gists_url":"https://api.github.com/users/jalcine/gists{/gist_id}","starred_url":"https://api.github.com/users/jalcine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jalcine/subscriptions","organizations_url":"https://api.github.com/users/jalcine/orgs","repos_url":"https://api.github.com/users/jalcine/repos","events_url":"https://api.github.com/users/jalcine/events{/privacy}","received_events_url":"https://api.github.com/users/jalcine/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/jalcine/wintermute/labels/core","name":"core","color":"5319e7"},{"url":"https://api.github.com/repos/jalcine/wintermute/labels/cross-platform","name":"cross-platform","color":"0052cc"}],"state":"closed","locked":false,"assignee":{"login":"jalcine","id":452100,"avatar_url":"https://avatars.githubusercontent.com/u/452100?v=3","gravatar_id":"","url":"https://api.github.com/users/jalcine","html_url":"https://github.com/jalcine","followers_url":"https://api.github.com/users/jalcine/followers","following_url":"https://api.github.com/users/jalcine/following{/other_user}","gists_url":"https://api.github.com/users/jalcine/gists{/gist_id}","starred_url":"https://api.github.com/users/jalcine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jalcine/subscriptions","organizations_url":"https://api.github.com/users/jalcine/orgs","repos_url":"https://api.github.com/users/jalcine/repos","events_url":"https://api.github.com/users/jalcine/events{/privacy}","received_events_url":"https://api.github.com/users/jalcine/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/jalcine/wintermute/milestones/1","html_url":"https://github.com/jalcine/wintermute/milestones/v0.1.x","labels_url":"https://api.github.com/repos/jalcine/wintermute/milestones/1/labels","id":396267,"number":1,"title":"v0.1.x","description":"# v0.1.0 - First Drop","creator":{"login":"jalcine","id":452100,"avatar_url":"https://avatars.githubusercontent.com/u/452100?v=3","gravatar_id":"","url":"https://api.github.com/users/jalcine","html_url":"https://github.com/jalcine","followers_url":"https://api.github.com/users/jalcine/followers","following_url":"https://api.github.com/users/jalcine/following{/other_user}","gists_url":"https://api.github.com/users/jalcine/gists{/gist_id}","starred_url":"https://api.github.com/users/jalcine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jalcine/subscriptions","organizations_url":"https://api.github.com/users/jalcine/orgs","repos_url":"https://api.github.com/users/jalcine/repos","events_url":"https://api.github.com/users/jalcine/events{/privacy}","received_events_url":"https://api.github.com/users/jalcine/received_events","type":"User","site_admin":false},"open_issues":3,"closed_issues":38,"state":"open","created_at":"2013-08-07T03:05:38Z","updated_at":"2015-08-14T19:52:13Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2015-01-15T05:03:41Z","updated_at":"2015-08-14T19:52:13Z","closed_at":"2015-08-14T19:52:13Z","body":"In order to ensure a decent level of predictability for (or a lack of the need of)\nfor messages in Wintermute, this issue (until the release of 0.1.0) serves as a\nreference point for what a `Message` object should initially be in JSON. Things that\nbase themselves upon a `Message`  like `MethodCall` and the likes will have their\nown implementation but will be contained within a message.\n\nSome things pivotal for a message's integrity:\n\n+ [ ] **timestamp** - The time, in UTC, at which a message was crafted. This doesn't\n      represent _when_ it was sent though, not sure if that matters.\n+ [ ] **sender** - The information needed to learn about the instance of Wintermute\n      that sent this Message. Initially, this was equivalent to a JSON object\n      representing a Module::Designation object but more information might be needed.\n+ [ ] **receiver** - The information needed to learn about the instance of Wintermute\n      to receive this Message. Initially, this was equivalent to a JSON object\n      representing a Module::Designation object but more information might be needed.\n+ [ ] **payload** - This would be the actual data being sent to the receiver. This\n      is expected to be a dictionary, though later implementations might change this.\n\n## Proposed Fields\n+ [ ] **flags** - An array of text representing fields that were used to modify the\n      `payload` value. Something like this would help with encryption, signing and the likes.\n"}}