{"action":"created","issue":{"url":"https://api.github.com/repos/cloudevents/spec/issues/191","repository_url":"https://api.github.com/repos/cloudevents/spec","labels_url":"https://api.github.com/repos/cloudevents/spec/issues/191/labels{/name}","comments_url":"https://api.github.com/repos/cloudevents/spec/issues/191/comments","events_url":"https://api.github.com/repos/cloudevents/spec/issues/191/events","html_url":"https://github.com/cloudevents/spec/pull/191","id":320637307,"number":191,"title":"Add event 'ordinal' field","user":{"login":"BenBeattieHood","id":5625031,"avatar_url":"https://avatars2.githubusercontent.com/u/5625031?v=4","gravatar_id":"","url":"https://api.github.com/users/BenBeattieHood","html_url":"https://github.com/BenBeattieHood","followers_url":"https://api.github.com/users/BenBeattieHood/followers","following_url":"https://api.github.com/users/BenBeattieHood/following{/other_user}","gists_url":"https://api.github.com/users/BenBeattieHood/gists{/gist_id}","starred_url":"https://api.github.com/users/BenBeattieHood/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BenBeattieHood/subscriptions","organizations_url":"https://api.github.com/users/BenBeattieHood/orgs","repos_url":"https://api.github.com/users/BenBeattieHood/repos","events_url":"https://api.github.com/users/BenBeattieHood/events{/privacy}","received_events_url":"https://api.github.com/users/BenBeattieHood/received_events","type":"User","site_admin":false},"labels":[{"id":927948896,"url":"https://api.github.com/repos/cloudevents/spec/labels/v1.0","name":"v1.0","color":"0e8a16","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":14,"created_at":"2018-05-06T23:07:03Z","updated_at":"2018-05-18T00:28:58Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/cloudevents/spec/pulls/191","html_url":"https://github.com/cloudevents/spec/pull/191","diff_url":"https://github.com/cloudevents/spec/pull/191.diff","patch_url":"https://github.com/cloudevents/spec/pull/191.patch"},"body":"Events are inherently ordered - and without such cannot be interpreted by their consumers. This change makes the order explicit, rather than a requirement of the transport. \r\n\r\nThe ordinal should be *per aggregate instance*, and so I'd assume a `source` structured as `AggregateType/AggregateId#CorrelationId`, where `AggregateType/AggregateId/Ordinal` is essentially the address for an individual event. It might be worth calling out these values into separate fields, but that should be a separate PR.\r\n\r\nIncluding the ordinal also allows simpler deduplication (valid are >= last processed ordinal, rather than a growing list of processed ids), as well as a simple mechanism to check for gaps (eg. if you've received event ordinals 1,2,3,6,7, it's easy to know you still need to wait for 4 & 5)"},"comment":{"url":"https://api.github.com/repos/cloudevents/spec/issues/comments/390055855","html_url":"https://github.com/cloudevents/spec/pull/191#issuecomment-390055855","issue_url":"https://api.github.com/repos/cloudevents/spec/issues/191","id":390055855,"user":{"login":"BenBeattieHood","id":5625031,"avatar_url":"https://avatars2.githubusercontent.com/u/5625031?v=4","gravatar_id":"","url":"https://api.github.com/users/BenBeattieHood","html_url":"https://github.com/BenBeattieHood","followers_url":"https://api.github.com/users/BenBeattieHood/followers","following_url":"https://api.github.com/users/BenBeattieHood/following{/other_user}","gists_url":"https://api.github.com/users/BenBeattieHood/gists{/gist_id}","starred_url":"https://api.github.com/users/BenBeattieHood/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BenBeattieHood/subscriptions","organizations_url":"https://api.github.com/users/BenBeattieHood/orgs","repos_url":"https://api.github.com/users/BenBeattieHood/repos","events_url":"https://api.github.com/users/BenBeattieHood/events{/privacy}","received_events_url":"https://api.github.com/users/BenBeattieHood/received_events","type":"User","site_admin":false},"created_at":"2018-05-18T00:28:58Z","updated_at":"2018-05-18T00:28:58Z","author_association":"NONE","body":"@jroper yes, I fully agree. I felt it was a separate issue, and so I'm glad you've created it. "}}
{"actor":{"display_login":"BenBeattieHood"}}