{"action":"created","comment":{"url":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/comments/78670020","id":78670020,"diff_hunk":"@@ -179,33 +182,54 @@ An address with a SignerList can disable the master key even if a regular key is\n * `tefNOT_MULTI_SIGNING`\n * `tefBAD_AUTH_MASTER`\n \n-<!--{# to be added in a later version:\n+\n ## OwnerPaysFee\n \n-| Amendment ID | Status |\n-|--------------|--------|\n-| TBD | Coming soon |\n+| Amendment ID                                                     | Status    |\n+|:-----------------------------------------------------------------|:----------|\n+| 9178256A980A86CF3D70D0260A7DA6402AAFE43632FDBCB88037978404188871 | In development. |\n+\n+Fixes an inconsistency in the way [transfer fees](concept-transfer-fees.html) are calculated between [OfferCreate](reference-transaction-format.html#offercreate) and [Payment](reference-transaction-format.html#payment) transaction types. Without this amendment, the holder of the issuances pays the transfer fee if an offer is executed in offer placement, but the initial sender of a transaction pays the transfer fees for offers that are executed as part of payment processing. With OwnerPaysFee, the holder of the issuances always pays the transfer fee, regardless of whether the offer is executed as part of a Payment or an OfferCreate transaction. Offer processing outside of payments is unaffected.\n+\n+This Amendment requires the [Flow Amendment](#flow) to be enabled.\n+\n+\n+## PayChan ##\n+\n+| Amendment ID                                                     | Status    |\n+|:-----------------------------------------------------------------|:----------|\n+| 08DE7D96082187F6E6578530258C77FAABABE4C20474BDB82F04B021F1A68647 | In development. |\n+\n+Creates \"Payment Channels\" for XRP. Payment channels are a tool for facilitating repeated unidirectional payments or extensions of credit between two parties. Ripple expects this feature to be useful for the [Interledger Protocol](https://interledger.org/). One party creates a Payment Channel and sets aside some XRP in that channel for a predetermined expiration. Then, through off-ledger secure communications, the sender can send \"Claim\" messages to the receiver. The receiver can redeem the Claim messages before the expiration, or choose not to in case the payment is not needed. The receiver can verify Claims individually without actually distributing them to the network and waiting for the consensus process to redeem them, then redeem the batched content of many small Claims later, as long as it is within the expiration.","path":"content/concept-amendments.md","position":93,"original_position":93,"commit_id":"1f15a6b904a8ee5632b7af2adf893f1c62ec43cd","original_commit_id":"1f15a6b904a8ee5632b7af2adf893f1c62ec43cd","user":{"login":"seelabs","id":5853458,"avatar_url":"https://avatars.githubusercontent.com/u/5853458?v=3","gravatar_id":"","url":"https://api.github.com/users/seelabs","html_url":"https://github.com/seelabs","followers_url":"https://api.github.com/users/seelabs/followers","following_url":"https://api.github.com/users/seelabs/following{/other_user}","gists_url":"https://api.github.com/users/seelabs/gists{/gist_id}","starred_url":"https://api.github.com/users/seelabs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seelabs/subscriptions","organizations_url":"https://api.github.com/users/seelabs/orgs","repos_url":"https://api.github.com/users/seelabs/repos","events_url":"https://api.github.com/users/seelabs/events{/privacy}","received_events_url":"https://api.github.com/users/seelabs/received_events","type":"User","site_admin":false},"body":"What is meant by \"or extensions of credit\" here? When a sender signs an authorization is that considered \"extending credit\"? If so, then that's fine. ","created_at":"2016-09-14T00:36:25Z","updated_at":"2016-09-14T00:36:25Z","html_url":"https://github.com/ripple/ripple-dev-portal/pull/211#discussion_r78670020","pull_request_url":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/211","_links":{"self":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/comments/78670020"},"html":{"href":"https://github.com/ripple/ripple-dev-portal/pull/211#discussion_r78670020"},"pull_request":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/211"}}},"pull_request":{"url":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/211","id":85126171,"html_url":"https://github.com/ripple/ripple-dev-portal/pull/211","diff_url":"https://github.com/ripple/ripple-dev-portal/pull/211.diff","patch_url":"https://github.com/ripple/ripple-dev-portal/pull/211.patch","issue_url":"https://api.github.com/repos/ripple/ripple-dev-portal/issues/211","number":211,"state":"open","locked":false,"title":"known amendments - add PayChan, SHAMapV2, uncomment OwnerPaysFee","user":{"login":"mDuo13","id":7515597,"avatar_url":"https://avatars.githubusercontent.com/u/7515597?v=3","gravatar_id":"","url":"https://api.github.com/users/mDuo13","html_url":"https://github.com/mDuo13","followers_url":"https://api.github.com/users/mDuo13/followers","following_url":"https://api.github.com/users/mDuo13/following{/other_user}","gists_url":"https://api.github.com/users/mDuo13/gists{/gist_id}","starred_url":"https://api.github.com/users/mDuo13/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mDuo13/subscriptions","organizations_url":"https://api.github.com/users/mDuo13/orgs","repos_url":"https://api.github.com/users/mDuo13/repos","events_url":"https://api.github.com/users/mDuo13/events{/privacy}","received_events_url":"https://api.github.com/users/mDuo13/received_events","type":"User","site_admin":false},"body":"Adds 3 more amendments that we expect to be in rippled 0.33.0. (Addresses DOC-530 & DOC-532)\r\n\r\n- In the \"Known Amendments\" table, the \"Introduced\" field is left as TBD in case testing finds a problem that causes us to omit the amendment from 0.33.0\r\n- Amendments in the Known Amendments table are sorted with the newest Amendments at the top. (First by when they were enabled, then by when they were introduced.) Currently we don't have concrete plans for when we'll be voting in favor of each amendment, but I think Flow comes first? We might also enable PayChan on the altnet for testing.\r\n- Please **do** review the OwnerPaysFee amendment description. The text itself isn't changed (aside from correcting a typo) but the text was commented out before so this is the first time it's being reviewed.","created_at":"2016-09-13T21:11:11Z","updated_at":"2016-09-14T00:36:25Z","closed_at":null,"merged_at":null,"merge_commit_sha":"30420a64d92c90d538e7a05c3bccbbd349a1b351","assignee":{"login":"ryangyoung","id":8494827,"avatar_url":"https://avatars.githubusercontent.com/u/8494827?v=3","gravatar_id":"","url":"https://api.github.com/users/ryangyoung","html_url":"https://github.com/ryangyoung","followers_url":"https://api.github.com/users/ryangyoung/followers","following_url":"https://api.github.com/users/ryangyoung/following{/other_user}","gists_url":"https://api.github.com/users/ryangyoung/gists{/gist_id}","starred_url":"https://api.github.com/users/ryangyoung/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ryangyoung/subscriptions","organizations_url":"https://api.github.com/users/ryangyoung/orgs","repos_url":"https://api.github.com/users/ryangyoung/repos","events_url":"https://api.github.com/users/ryangyoung/events{/privacy}","received_events_url":"https://api.github.com/users/ryangyoung/received_events","type":"User","site_admin":false},"assignees":[{"login":"ryangyoung","id":8494827,"avatar_url":"https://avatars.githubusercontent.com/u/8494827?v=3","gravatar_id":"","url":"https://api.github.com/users/ryangyoung","html_url":"https://github.com/ryangyoung","followers_url":"https://api.github.com/users/ryangyoung/followers","following_url":"https://api.github.com/users/ryangyoung/following{/other_user}","gists_url":"https://api.github.com/users/ryangyoung/gists{/gist_id}","starred_url":"https://api.github.com/users/ryangyoung/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ryangyoung/subscriptions","organizations_url":"https://api.github.com/users/ryangyoung/orgs","repos_url":"https://api.github.com/users/ryangyoung/repos","events_url":"https://api.github.com/users/ryangyoung/events{/privacy}","received_events_url":"https://api.github.com/users/ryangyoung/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/211/commits","review_comments_url":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/211/comments","review_comment_url":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ripple/ripple-dev-portal/issues/211/comments","statuses_url":"https://api.github.com/repos/ripple/ripple-dev-portal/statuses/1f15a6b904a8ee5632b7af2adf893f1c62ec43cd","head":{"label":"mDuo13:rippled_033_amendments","ref":"rippled_033_amendments","sha":"1f15a6b904a8ee5632b7af2adf893f1c62ec43cd","user":{"login":"mDuo13","id":7515597,"avatar_url":"https://avatars.githubusercontent.com/u/7515597?v=3","gravatar_id":"","url":"https://api.github.com/users/mDuo13","html_url":"https://github.com/mDuo13","followers_url":"https://api.github.com/users/mDuo13/followers","following_url":"https://api.github.com/users/mDuo13/following{/other_user}","gists_url":"https://api.github.com/users/mDuo13/gists{/gist_id}","starred_url":"https://api.github.com/users/mDuo13/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mDuo13/subscriptions","organizations_url":"https://api.github.com/users/mDuo13/orgs","repos_url":"https://api.github.com/users/mDuo13/repos","events_url":"https://api.github.com/users/mDuo13/events{/privacy}","received_events_url":"https://api.github.com/users/mDuo13/received_events","type":"User","site_admin":false},"repo":{"id":19550849,"name":"ripple-dev-portal","full_name":"mDuo13/ripple-dev-portal","owner":{"login":"mDuo13","id":7515597,"avatar_url":"https://avatars.githubusercontent.com/u/7515597?v=3","gravatar_id":"","url":"https://api.github.com/users/mDuo13","html_url":"https://github.com/mDuo13","followers_url":"https://api.github.com/users/mDuo13/followers","following_url":"https://api.github.com/users/mDuo13/following{/other_user}","gists_url":"https://api.github.com/users/mDuo13/gists{/gist_id}","starred_url":"https://api.github.com/users/mDuo13/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mDuo13/subscriptions","organizations_url":"https://api.github.com/users/mDuo13/orgs","repos_url":"https://api.github.com/users/mDuo13/repos","events_url":"https://api.github.com/users/mDuo13/events{/privacy}","received_events_url":"https://api.github.com/users/mDuo13/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mDuo13/ripple-dev-portal","description":"Ripple developer portal with documentation and examples","fork":true,"url":"https://api.github.com/repos/mDuo13/ripple-dev-portal","forks_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/forks","keys_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/teams","hooks_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/hooks","issue_events_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/issues/events{/number}","events_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/events","assignees_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/assignees{/user}","branches_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/branches{/branch}","tags_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/tags","blobs_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/git/refs{/sha}","trees_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/statuses/{sha}","languages_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/languages","stargazers_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/stargazers","contributors_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/contributors","subscribers_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/subscribers","subscription_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/subscription","commits_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/commits{/sha}","git_commits_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/git/commits{/sha}","comments_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/comments{/number}","issue_comment_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/issues/comments{/number}","contents_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/contents/{+path}","compare_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/merges","archive_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/downloads","issues_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/issues{/number}","pulls_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/pulls{/number}","milestones_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/milestones{/number}","notifications_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/labels{/name}","releases_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/releases{/id}","deployments_url":"https://api.github.com/repos/mDuo13/ripple-dev-portal/deployments","created_at":"2014-05-07T21:23:09Z","updated_at":"2016-01-29T23:24:26Z","pushed_at":"2016-09-13T23:52:40Z","git_url":"git://github.com/mDuo13/ripple-dev-portal.git","ssh_url":"git@github.com:mDuo13/ripple-dev-portal.git","clone_url":"https://github.com/mDuo13/ripple-dev-portal.git","svn_url":"https://github.com/mDuo13/ripple-dev-portal","homepage":null,"size":13262,"stargazers_count":1,"watchers_count":1,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":1,"default_branch":"gh-pages"}},"base":{"label":"ripple:master","ref":"master","sha":"ce608b080ad414c3791e465ae740b403b48159d5","user":{"login":"ripple","id":3165523,"avatar_url":"https://avatars.githubusercontent.com/u/3165523?v=3","gravatar_id":"","url":"https://api.github.com/users/ripple","html_url":"https://github.com/ripple","followers_url":"https://api.github.com/users/ripple/followers","following_url":"https://api.github.com/users/ripple/following{/other_user}","gists_url":"https://api.github.com/users/ripple/gists{/gist_id}","starred_url":"https://api.github.com/users/ripple/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ripple/subscriptions","organizations_url":"https://api.github.com/users/ripple/orgs","repos_url":"https://api.github.com/users/ripple/repos","events_url":"https://api.github.com/users/ripple/events{/privacy}","received_events_url":"https://api.github.com/users/ripple/received_events","type":"Organization","site_admin":false},"repo":{"id":17273151,"name":"ripple-dev-portal","full_name":"ripple/ripple-dev-portal","owner":{"login":"ripple","id":3165523,"avatar_url":"https://avatars.githubusercontent.com/u/3165523?v=3","gravatar_id":"","url":"https://api.github.com/users/ripple","html_url":"https://github.com/ripple","followers_url":"https://api.github.com/users/ripple/followers","following_url":"https://api.github.com/users/ripple/following{/other_user}","gists_url":"https://api.github.com/users/ripple/gists{/gist_id}","starred_url":"https://api.github.com/users/ripple/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ripple/subscriptions","organizations_url":"https://api.github.com/users/ripple/orgs","repos_url":"https://api.github.com/users/ripple/repos","events_url":"https://api.github.com/users/ripple/events{/privacy}","received_events_url":"https://api.github.com/users/ripple/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ripple/ripple-dev-portal","description":"Ripple developer portal with documentation and examples","fork":false,"url":"https://api.github.com/repos/ripple/ripple-dev-portal","forks_url":"https://api.github.com/repos/ripple/ripple-dev-portal/forks","keys_url":"https://api.github.com/repos/ripple/ripple-dev-portal/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ripple/ripple-dev-portal/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ripple/ripple-dev-portal/teams","hooks_url":"https://api.github.com/repos/ripple/ripple-dev-portal/hooks","issue_events_url":"https://api.github.com/repos/ripple/ripple-dev-portal/issues/events{/number}","events_url":"https://api.github.com/repos/ripple/ripple-dev-portal/events","assignees_url":"https://api.github.com/repos/ripple/ripple-dev-portal/assignees{/user}","branches_url":"https://api.github.com/repos/ripple/ripple-dev-portal/branches{/branch}","tags_url":"https://api.github.com/repos/ripple/ripple-dev-portal/tags","blobs_url":"https://api.github.com/repos/ripple/ripple-dev-portal/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ripple/ripple-dev-portal/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ripple/ripple-dev-portal/git/refs{/sha}","trees_url":"https://api.github.com/repos/ripple/ripple-dev-portal/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ripple/ripple-dev-portal/statuses/{sha}","languages_url":"https://api.github.com/repos/ripple/ripple-dev-portal/languages","stargazers_url":"https://api.github.com/repos/ripple/ripple-dev-portal/stargazers","contributors_url":"https://api.github.com/repos/ripple/ripple-dev-portal/contributors","subscribers_url":"https://api.github.com/repos/ripple/ripple-dev-portal/subscribers","subscription_url":"https://api.github.com/repos/ripple/ripple-dev-portal/subscription","commits_url":"https://api.github.com/repos/ripple/ripple-dev-portal/commits{/sha}","git_commits_url":"https://api.github.com/repos/ripple/ripple-dev-portal/git/commits{/sha}","comments_url":"https://api.github.com/repos/ripple/ripple-dev-portal/comments{/number}","issue_comment_url":"https://api.github.com/repos/ripple/ripple-dev-portal/issues/comments{/number}","contents_url":"https://api.github.com/repos/ripple/ripple-dev-portal/contents/{+path}","compare_url":"https://api.github.com/repos/ripple/ripple-dev-portal/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ripple/ripple-dev-portal/merges","archive_url":"https://api.github.com/repos/ripple/ripple-dev-portal/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ripple/ripple-dev-portal/downloads","issues_url":"https://api.github.com/repos/ripple/ripple-dev-portal/issues{/number}","pulls_url":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls{/number}","milestones_url":"https://api.github.com/repos/ripple/ripple-dev-portal/milestones{/number}","notifications_url":"https://api.github.com/repos/ripple/ripple-dev-portal/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ripple/ripple-dev-portal/labels{/name}","releases_url":"https://api.github.com/repos/ripple/ripple-dev-portal/releases{/id}","deployments_url":"https://api.github.com/repos/ripple/ripple-dev-portal/deployments","created_at":"2014-02-28T02:47:58Z","updated_at":"2016-08-12T23:21:45Z","pushed_at":"2016-09-13T23:52:41Z","git_url":"git://github.com/ripple/ripple-dev-portal.git","ssh_url":"git@github.com:ripple/ripple-dev-portal.git","clone_url":"https://github.com/ripple/ripple-dev-portal.git","svn_url":"https://github.com/ripple/ripple-dev-portal","homepage":null,"size":13294,"stargazers_count":40,"watchers_count":40,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":45,"mirror_url":null,"open_issues_count":5,"forks":45,"open_issues":5,"watchers":40,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/211"},"html":{"href":"https://github.com/ripple/ripple-dev-portal/pull/211"},"issue":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/issues/211"},"comments":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/issues/211/comments"},"review_comments":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/211/comments"},"review_comment":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/pulls/211/commits"},"statuses":{"href":"https://api.github.com/repos/ripple/ripple-dev-portal/statuses/1f15a6b904a8ee5632b7af2adf893f1c62ec43cd"}}}}
{"actor":{"display_login":"seelabs"}}