{"action":"created","issue":{"url":"https://api.github.com/repos/acdlite/flux-standard-action/issues/5","labels_url":"https://api.github.com/repos/acdlite/flux-standard-action/issues/5/labels{/name}","comments_url":"https://api.github.com/repos/acdlite/flux-standard-action/issues/5/comments","events_url":"https://api.github.com/repos/acdlite/flux-standard-action/issues/5/events","html_url":"https://github.com/acdlite/flux-standard-action/issues/5","id":92913044,"number":5,"title":"Should we add a meta field?","user":{"login":"acdlite","id":3624098,"avatar_url":"https://avatars.githubusercontent.com/u/3624098?v=3","gravatar_id":"","url":"https://api.github.com/users/acdlite","html_url":"https://github.com/acdlite","followers_url":"https://api.github.com/users/acdlite/followers","following_url":"https://api.github.com/users/acdlite/following{/other_user}","gists_url":"https://api.github.com/users/acdlite/gists{/gist_id}","starred_url":"https://api.github.com/users/acdlite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/acdlite/subscriptions","organizations_url":"https://api.github.com/users/acdlite/orgs","repos_url":"https://api.github.com/users/acdlite/repos","events_url":"https://api.github.com/users/acdlite/events{/privacy}","received_events_url":"https://api.github.com/users/acdlite/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-07-03T17:29:04Z","updated_at":"2015-07-03T18:15:47Z","closed_at":null,"body":"```\r\n{\r\n  type,\r\n  status,\r\n  payload: {...}\r\n  meta: {...}\r\n}\r\n```\r\n\r\nThis would keep the top-level action object predictable — 1 required property (`type`), and 3 optional properties. All other properties at the top-level would be invalid.\r\n\r\n@goatslacker @taion"},"comment":{"url":"https://api.github.com/repos/acdlite/flux-standard-action/issues/comments/118404430","html_url":"https://github.com/acdlite/flux-standard-action/issues/5#issuecomment-118404430","issue_url":"https://api.github.com/repos/acdlite/flux-standard-action/issues/5","id":118404430,"user":{"login":"clearjs","id":9261262,"avatar_url":"https://avatars.githubusercontent.com/u/9261262?v=3","gravatar_id":"","url":"https://api.github.com/users/clearjs","html_url":"https://github.com/clearjs","followers_url":"https://api.github.com/users/clearjs/followers","following_url":"https://api.github.com/users/clearjs/following{/other_user}","gists_url":"https://api.github.com/users/clearjs/gists{/gist_id}","starred_url":"https://api.github.com/users/clearjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/clearjs/subscriptions","organizations_url":"https://api.github.com/users/clearjs/orgs","repos_url":"https://api.github.com/users/clearjs/repos","events_url":"https://api.github.com/users/clearjs/events{/privacy}","received_events_url":"https://api.github.com/users/clearjs/received_events","type":"User","site_admin":false},"created_at":"2015-07-03T18:15:47Z","updated_at":"2015-07-03T18:15:47Z","body":"OK, so that's mostly about preferences? A standard might simply work with both options: since both 'metadata' and 'type' are top-level fields, they both would be considered metadata under the definition that I proposed.\r\n\r\nSo, both of the following would be FSA-compliant:\r\n\r\n```javascript\r\n{\r\n  type: 'DO_SMTH',\r\n  payload: {},\r\n  metadata: {\r\n    field1: null\r\n  }\r\n}\r\n```\r\nand\r\n```javascript\r\n{\r\n  type: 'DO_SMTH',\r\n  payload: {},\r\n  field1: null\r\n}\r\n```\r\nWithout loss of any functionality already discussed. (Spec extensions which specify additional metadata fields wouldn't, though.)"}}