{"action":"created","comment":{"url":"https://api.github.com/repos/mostjs/core/pulls/comments/169465851","pull_request_review_id":97996362,"id":169465851,"diff_hunk":"@@ -0,0 +1,53 @@\n+# ADR 1: External Tooling\n+\n+Brian Cavalier,\n+David Chase,\n+Tylor Steinberger <tlsteinberger167@gmail.com>,\n+Frederik Krautwald <fkrautwald@gmail.com>,\n+\n+## Status\n+\n+**Proposed** | ~~Accepted~~ | ~~Deprecated~~ | ~~Superceded~~\n+\n+## Context\n+\n+While streams solve many issues, working with streams have a particular \n+pain-point when it comes to debugging them. Aforementioned is especially true \n+when the complexity of an application increases.\n+\n+Presently, we must resort to using `observe`, often with a console log, to \n+inspect the values of a stream. We end up with these `observe`s cluttered all \n+over the place in our effort to track down a possible bug or issue, which we \n+then have to remove again once resolved. Debugging with `observe` also doesn't \n+provide any particularly useful feedback on dataflow nor combinators used.\n+\n+To alleviate this, it is essential that external tools can gain access to \n+expecting the details of streams. Currently, there is no hook to accomplishing \n+this, wherefore this document will attempt to uncover a reasonable way of \n+doing so.\n+\n+How such a hook should be implemented came down to the following choices:\n+\n+1. **Add a third hook parameter to `Stream.run`.**\n+   A third parameter may be okay if we provide a sensible default value because \n+   it won't break clients' existing runtime code. Thus, we can be backward \n+   compatible. It may not be okay because we are reaching the limit of \n+   parameters for what is acceptable for a function. Three parameters introduce \n+   a mental overhead for developers because they have to remember the order of \n+   the parameters. It may also not be okay because the new type this change \n+   would introduce could break the static type-checking of existing code.","path":"docs/adrs/adr-001-external-tooling.md","position":38,"original_position":38,"commit_id":"170300c0fdc026bd8b80b7e7c98468c49cd1996e","original_commit_id":"170300c0fdc026bd8b80b7e7c98468c49cd1996e","user":{"login":"Frikki","id":180569,"avatar_url":"https://avatars2.githubusercontent.com/u/180569?v=4","gravatar_id":"","url":"https://api.github.com/users/Frikki","html_url":"https://github.com/Frikki","followers_url":"https://api.github.com/users/Frikki/followers","following_url":"https://api.github.com/users/Frikki/following{/other_user}","gists_url":"https://api.github.com/users/Frikki/gists{/gist_id}","starred_url":"https://api.github.com/users/Frikki/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Frikki/subscriptions","organizations_url":"https://api.github.com/users/Frikki/orgs","repos_url":"https://api.github.com/users/Frikki/repos","events_url":"https://api.github.com/users/Frikki/events{/privacy}","received_events_url":"https://api.github.com/users/Frikki/received_events","type":"User","site_admin":false},"body":"right","created_at":"2018-02-20T21:30:31Z","updated_at":"2018-02-20T21:30:31Z","html_url":"https://github.com/mostjs/core/pull/211#discussion_r169465851","pull_request_url":"https://api.github.com/repos/mostjs/core/pulls/211","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/mostjs/core/pulls/comments/169465851"},"html":{"href":"https://github.com/mostjs/core/pull/211#discussion_r169465851"},"pull_request":{"href":"https://api.github.com/repos/mostjs/core/pulls/211"}},"in_reply_to_id":169091444},"pull_request":{"url":"https://api.github.com/repos/mostjs/core/pulls/211","id":168911719,"html_url":"https://github.com/mostjs/core/pull/211","diff_url":"https://github.com/mostjs/core/pull/211.diff","patch_url":"https://github.com/mostjs/core/pull/211.patch","issue_url":"https://api.github.com/repos/mostjs/core/issues/211","number":211,"state":"open","locked":false,"title":"docs: add initial ADR on external tooling","user":{"login":"Frikki","id":180569,"avatar_url":"https://avatars2.githubusercontent.com/u/180569?v=4","gravatar_id":"","url":"https://api.github.com/users/Frikki","html_url":"https://github.com/Frikki","followers_url":"https://api.github.com/users/Frikki/followers","following_url":"https://api.github.com/users/Frikki/following{/other_user}","gists_url":"https://api.github.com/users/Frikki/gists{/gist_id}","starred_url":"https://api.github.com/users/Frikki/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Frikki/subscriptions","organizations_url":"https://api.github.com/users/Frikki/orgs","repos_url":"https://api.github.com/users/Frikki/repos","events_url":"https://api.github.com/users/Frikki/events{/privacy}","received_events_url":"https://api.github.com/users/Frikki/received_events","type":"User","site_admin":false},"body":"This PR is intended for receiving comments and suggestions. We could easily merge it, though not complete, as the document would just live as a proposal and can be updated to its development accordingly, leaving an excellent track record in Git.\r\n\r\nSigned-off-by: Frederik Krautwald <fkrautwald@gmail.com>","created_at":"2018-02-13T17:43:03Z","updated_at":"2018-02-20T21:30:31Z","closed_at":null,"merged_at":null,"merge_commit_sha":"83385aca344f32fe6ce45646c544b0e281f6c2cf","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/mostjs/core/pulls/211/commits","review_comments_url":"https://api.github.com/repos/mostjs/core/pulls/211/comments","review_comment_url":"https://api.github.com/repos/mostjs/core/pulls/comments{/number}","comments_url":"https://api.github.com/repos/mostjs/core/issues/211/comments","statuses_url":"https://api.github.com/repos/mostjs/core/statuses/170300c0fdc026bd8b80b7e7c98468c49cd1996e","head":{"label":"mostjs:adr-001-external-tooling","ref":"adr-001-external-tooling","sha":"170300c0fdc026bd8b80b7e7c98468c49cd1996e","user":{"login":"mostjs","id":15834413,"avatar_url":"https://avatars0.githubusercontent.com/u/15834413?v=4","gravatar_id":"","url":"https://api.github.com/users/mostjs","html_url":"https://github.com/mostjs","followers_url":"https://api.github.com/users/mostjs/followers","following_url":"https://api.github.com/users/mostjs/following{/other_user}","gists_url":"https://api.github.com/users/mostjs/gists{/gist_id}","starred_url":"https://api.github.com/users/mostjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mostjs/subscriptions","organizations_url":"https://api.github.com/users/mostjs/orgs","repos_url":"https://api.github.com/users/mostjs/repos","events_url":"https://api.github.com/users/mostjs/events{/privacy}","received_events_url":"https://api.github.com/users/mostjs/received_events","type":"Organization","site_admin":false},"repo":{"id":77230382,"name":"core","full_name":"mostjs/core","owner":{"login":"mostjs","id":15834413,"avatar_url":"https://avatars0.githubusercontent.com/u/15834413?v=4","gravatar_id":"","url":"https://api.github.com/users/mostjs","html_url":"https://github.com/mostjs","followers_url":"https://api.github.com/users/mostjs/followers","following_url":"https://api.github.com/users/mostjs/following{/other_user}","gists_url":"https://api.github.com/users/mostjs/gists{/gist_id}","starred_url":"https://api.github.com/users/mostjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mostjs/subscriptions","organizations_url":"https://api.github.com/users/mostjs/orgs","repos_url":"https://api.github.com/users/mostjs/repos","events_url":"https://api.github.com/users/mostjs/events{/privacy}","received_events_url":"https://api.github.com/users/mostjs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mostjs/core","description":"Most.js core event stream","fork":false,"url":"https://api.github.com/repos/mostjs/core","forks_url":"https://api.github.com/repos/mostjs/core/forks","keys_url":"https://api.github.com/repos/mostjs/core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mostjs/core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mostjs/core/teams","hooks_url":"https://api.github.com/repos/mostjs/core/hooks","issue_events_url":"https://api.github.com/repos/mostjs/core/issues/events{/number}","events_url":"https://api.github.com/repos/mostjs/core/events","assignees_url":"https://api.github.com/repos/mostjs/core/assignees{/user}","branches_url":"https://api.github.com/repos/mostjs/core/branches{/branch}","tags_url":"https://api.github.com/repos/mostjs/core/tags","blobs_url":"https://api.github.com/repos/mostjs/core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mostjs/core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mostjs/core/git/refs{/sha}","trees_url":"https://api.github.com/repos/mostjs/core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mostjs/core/statuses/{sha}","languages_url":"https://api.github.com/repos/mostjs/core/languages","stargazers_url":"https://api.github.com/repos/mostjs/core/stargazers","contributors_url":"https://api.github.com/repos/mostjs/core/contributors","subscribers_url":"https://api.github.com/repos/mostjs/core/subscribers","subscription_url":"https://api.github.com/repos/mostjs/core/subscription","commits_url":"https://api.github.com/repos/mostjs/core/commits{/sha}","git_commits_url":"https://api.github.com/repos/mostjs/core/git/commits{/sha}","comments_url":"https://api.github.com/repos/mostjs/core/comments{/number}","issue_comment_url":"https://api.github.com/repos/mostjs/core/issues/comments{/number}","contents_url":"https://api.github.com/repos/mostjs/core/contents/{+path}","compare_url":"https://api.github.com/repos/mostjs/core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mostjs/core/merges","archive_url":"https://api.github.com/repos/mostjs/core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mostjs/core/downloads","issues_url":"https://api.github.com/repos/mostjs/core/issues{/number}","pulls_url":"https://api.github.com/repos/mostjs/core/pulls{/number}","milestones_url":"https://api.github.com/repos/mostjs/core/milestones{/number}","notifications_url":"https://api.github.com/repos/mostjs/core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mostjs/core/labels{/name}","releases_url":"https://api.github.com/repos/mostjs/core/releases{/id}","deployments_url":"https://api.github.com/repos/mostjs/core/deployments","created_at":"2016-12-23T14:27:44Z","updated_at":"2018-02-13T00:35:29Z","pushed_at":"2018-02-13T17:43:04Z","git_url":"git://github.com/mostjs/core.git","ssh_url":"git@github.com:mostjs/core.git","clone_url":"https://github.com/mostjs/core.git","svn_url":"https://github.com/mostjs/core","homepage":"http://mostcore.rtfd.io","size":1612,"stargazers_count":89,"watchers_count":89,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":15,"mirror_url":null,"archived":false,"open_issues_count":8,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":15,"open_issues":8,"watchers":89,"default_branch":"master"}},"base":{"label":"mostjs:master","ref":"master","sha":"708b9bb1268384cb587129838c6b0bfb86cab417","user":{"login":"mostjs","id":15834413,"avatar_url":"https://avatars0.githubusercontent.com/u/15834413?v=4","gravatar_id":"","url":"https://api.github.com/users/mostjs","html_url":"https://github.com/mostjs","followers_url":"https://api.github.com/users/mostjs/followers","following_url":"https://api.github.com/users/mostjs/following{/other_user}","gists_url":"https://api.github.com/users/mostjs/gists{/gist_id}","starred_url":"https://api.github.com/users/mostjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mostjs/subscriptions","organizations_url":"https://api.github.com/users/mostjs/orgs","repos_url":"https://api.github.com/users/mostjs/repos","events_url":"https://api.github.com/users/mostjs/events{/privacy}","received_events_url":"https://api.github.com/users/mostjs/received_events","type":"Organization","site_admin":false},"repo":{"id":77230382,"name":"core","full_name":"mostjs/core","owner":{"login":"mostjs","id":15834413,"avatar_url":"https://avatars0.githubusercontent.com/u/15834413?v=4","gravatar_id":"","url":"https://api.github.com/users/mostjs","html_url":"https://github.com/mostjs","followers_url":"https://api.github.com/users/mostjs/followers","following_url":"https://api.github.com/users/mostjs/following{/other_user}","gists_url":"https://api.github.com/users/mostjs/gists{/gist_id}","starred_url":"https://api.github.com/users/mostjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mostjs/subscriptions","organizations_url":"https://api.github.com/users/mostjs/orgs","repos_url":"https://api.github.com/users/mostjs/repos","events_url":"https://api.github.com/users/mostjs/events{/privacy}","received_events_url":"https://api.github.com/users/mostjs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mostjs/core","description":"Most.js core event stream","fork":false,"url":"https://api.github.com/repos/mostjs/core","forks_url":"https://api.github.com/repos/mostjs/core/forks","keys_url":"https://api.github.com/repos/mostjs/core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mostjs/core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mostjs/core/teams","hooks_url":"https://api.github.com/repos/mostjs/core/hooks","issue_events_url":"https://api.github.com/repos/mostjs/core/issues/events{/number}","events_url":"https://api.github.com/repos/mostjs/core/events","assignees_url":"https://api.github.com/repos/mostjs/core/assignees{/user}","branches_url":"https://api.github.com/repos/mostjs/core/branches{/branch}","tags_url":"https://api.github.com/repos/mostjs/core/tags","blobs_url":"https://api.github.com/repos/mostjs/core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mostjs/core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mostjs/core/git/refs{/sha}","trees_url":"https://api.github.com/repos/mostjs/core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mostjs/core/statuses/{sha}","languages_url":"https://api.github.com/repos/mostjs/core/languages","stargazers_url":"https://api.github.com/repos/mostjs/core/stargazers","contributors_url":"https://api.github.com/repos/mostjs/core/contributors","subscribers_url":"https://api.github.com/repos/mostjs/core/subscribers","subscription_url":"https://api.github.com/repos/mostjs/core/subscription","commits_url":"https://api.github.com/repos/mostjs/core/commits{/sha}","git_commits_url":"https://api.github.com/repos/mostjs/core/git/commits{/sha}","comments_url":"https://api.github.com/repos/mostjs/core/comments{/number}","issue_comment_url":"https://api.github.com/repos/mostjs/core/issues/comments{/number}","contents_url":"https://api.github.com/repos/mostjs/core/contents/{+path}","compare_url":"https://api.github.com/repos/mostjs/core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mostjs/core/merges","archive_url":"https://api.github.com/repos/mostjs/core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mostjs/core/downloads","issues_url":"https://api.github.com/repos/mostjs/core/issues{/number}","pulls_url":"https://api.github.com/repos/mostjs/core/pulls{/number}","milestones_url":"https://api.github.com/repos/mostjs/core/milestones{/number}","notifications_url":"https://api.github.com/repos/mostjs/core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mostjs/core/labels{/name}","releases_url":"https://api.github.com/repos/mostjs/core/releases{/id}","deployments_url":"https://api.github.com/repos/mostjs/core/deployments","created_at":"2016-12-23T14:27:44Z","updated_at":"2018-02-13T00:35:29Z","pushed_at":"2018-02-13T17:43:04Z","git_url":"git://github.com/mostjs/core.git","ssh_url":"git@github.com:mostjs/core.git","clone_url":"https://github.com/mostjs/core.git","svn_url":"https://github.com/mostjs/core","homepage":"http://mostcore.rtfd.io","size":1612,"stargazers_count":89,"watchers_count":89,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":15,"mirror_url":null,"archived":false,"open_issues_count":8,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":15,"open_issues":8,"watchers":89,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mostjs/core/pulls/211"},"html":{"href":"https://github.com/mostjs/core/pull/211"},"issue":{"href":"https://api.github.com/repos/mostjs/core/issues/211"},"comments":{"href":"https://api.github.com/repos/mostjs/core/issues/211/comments"},"review_comments":{"href":"https://api.github.com/repos/mostjs/core/pulls/211/comments"},"review_comment":{"href":"https://api.github.com/repos/mostjs/core/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/mostjs/core/pulls/211/commits"},"statuses":{"href":"https://api.github.com/repos/mostjs/core/statuses/170300c0fdc026bd8b80b7e7c98468c49cd1996e"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"Frikki"}}