{"action":"closed","issue":{"url":"https://api.github.com/repos/AugurProject/augur-core/issues/52","repository_url":"https://api.github.com/repos/AugurProject/augur-core","labels_url":"https://api.github.com/repos/AugurProject/augur-core/issues/52/labels{/name}","comments_url":"https://api.github.com/repos/AugurProject/augur-core/issues/52/comments","events_url":"https://api.github.com/repos/AugurProject/augur-core/issues/52/events","html_url":"https://github.com/AugurProject/augur-core/issues/52","id":126026332,"number":52,"title":"Misc. mega issue","user":{"login":"joeykrug","id":5925937,"avatar_url":"https://avatars.githubusercontent.com/u/5925937?v=3","gravatar_id":"","url":"https://api.github.com/users/joeykrug","html_url":"https://github.com/joeykrug","followers_url":"https://api.github.com/users/joeykrug/followers","following_url":"https://api.github.com/users/joeykrug/following{/other_user}","gists_url":"https://api.github.com/users/joeykrug/gists{/gist_id}","starred_url":"https://api.github.com/users/joeykrug/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joeykrug/subscriptions","organizations_url":"https://api.github.com/users/joeykrug/orgs","repos_url":"https://api.github.com/users/joeykrug/repos","events_url":"https://api.github.com/users/joeykrug/events{/privacy}","received_events_url":"https://api.github.com/users/joeykrug/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/AugurProject/augur-core/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"closed","locked":false,"assignee":{"login":"joeykrug","id":5925937,"avatar_url":"https://avatars.githubusercontent.com/u/5925937?v=3","gravatar_id":"","url":"https://api.github.com/users/joeykrug","html_url":"https://github.com/joeykrug","followers_url":"https://api.github.com/users/joeykrug/followers","following_url":"https://api.github.com/users/joeykrug/following{/other_user}","gists_url":"https://api.github.com/users/joeykrug/gists{/gist_id}","starred_url":"https://api.github.com/users/joeykrug/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joeykrug/subscriptions","organizations_url":"https://api.github.com/users/joeykrug/orgs","repos_url":"https://api.github.com/users/joeykrug/repos","events_url":"https://api.github.com/users/joeykrug/events{/privacy}","received_events_url":"https://api.github.com/users/joeykrug/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/AugurProject/augur-core/milestones/2","html_url":"https://github.com/AugurProject/augur-core/milestones/Ready%20for%20Sec.%20Audits","labels_url":"https://api.github.com/repos/AugurProject/augur-core/milestones/2/labels","id":1587617,"number":2,"title":"Ready for Sec. Audits","description":"","creator":{"login":"joeykrug","id":5925937,"avatar_url":"https://avatars.githubusercontent.com/u/5925937?v=3","gravatar_id":"","url":"https://api.github.com/users/joeykrug","html_url":"https://github.com/joeykrug","followers_url":"https://api.github.com/users/joeykrug/followers","following_url":"https://api.github.com/users/joeykrug/following{/other_user}","gists_url":"https://api.github.com/users/joeykrug/gists{/gist_id}","starred_url":"https://api.github.com/users/joeykrug/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joeykrug/subscriptions","organizations_url":"https://api.github.com/users/joeykrug/orgs","repos_url":"https://api.github.com/users/joeykrug/repos","events_url":"https://api.github.com/users/joeykrug/events{/privacy}","received_events_url":"https://api.github.com/users/joeykrug/received_events","type":"User","site_admin":false},"open_issues":5,"closed_issues":15,"state":"open","created_at":"2016-02-17T05:06:46Z","updated_at":"2016-05-23T02:48:12Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2016-01-11T20:11:21Z","updated_at":"2016-05-23T02:48:12Z","closed_at":"2016-05-23T02:48:12Z","body":"- [x] make fork + round 1 pushback wait 48 hr instead of 24\r\n- [x] make so can't report in last 48 hr of period\r\n- [x] Market has tags, description (where someone has to put a title at minimum), and should have an additional optional information section where they can either put all the additional information they want there and/or add link(s). \r\n- [x] Event has a question and should have a resolution source\r\n- [x] Handle: Report threshold is raised so anyone can report on it if it has no reports in last 24 hr\r\n- [x] if 0 reports on an event either push back or indeterminate?\r\n- [x] want reporters to report on 2x min reports number\r\n- [x] No auto pushback for .5, must be challenged\r\n- [x] add moving events to new period in case fall behind in beta w/ shorter cycles\r\n- [x] When selecting to report make sure based off of total active rep, not including dormant\r\n- [x] finalize rep transfer api\r\n- [x] Assign reporters based on shares outstanding when expiration date arrives, not volume\r\n- [x] when to allow / prohibit trading and how it fits into outstanding shares at the end of a market\r\n- [x] mm pay cost to close markets ahead of time in a fee instead of forcing users to do it: closing gas cost [1.1194M + 1M per addl. event]\r\n- [x] get list of events to report on for a user w/ a call function\r\n- [x] Keep reporters low below some $ in volume amount according to fee on market\r\n   - need to keep track of amount of fees charged in a market for this\r\n   - calc. # of reporters per outstanding shares [old version was volume]\r\n   - calc. ability to pay for reporting fees calculated from fees from market for how many reporters it can pay for\r\n   - whichever is less is # of reporters targeted towards the market\r\n- [x] it should be exactly what is needed for reporters to report on the market should no traders show up:\r\n    -  (decent labor compensation rate for reporters) + (gas cost for these reporters) \r\n    -  (Initial_Liquidity_Requirement * 0.5 * Fee) + Base_Reporter_Quantity * (Gas cost of commit [1.055M] + Gas cost of reveal [1.358M] + Gas cost of penalize [1.08M])\r\n- [x] multiple of adj. cost for appeal bond?\r\n- [x] round 2 bond cost discussion\r\n- [x] make sure round 2 bond formulas correct\r\n- [x] make sure reporting selection formula correct\r\n- [x] reporting penalty based on market size? round 1 penalties at all? reporting penalties change/make less severe [see V discussion]\r\n- [x] check for anything called that should take sender as a param but doesn't atm\r\n- [x] users for min(30, numevents) when reporting paid to report... hmmm\r\n   - Gas rewards to reporters as in minimum creation fee used to directly pay people who reported on a given event for gas fee rebates. Make sure to account for how many a market has paid for already and cap it at that\r\n   - penalization catchup - what if actually not selected to report\r\n   - prove voted on less than actually could have and <.5 of shouldve\r\n   - must report on max(selected estimate/2, 1 if actually selected)\r\n   - if couldve reported on more to meet .5 or max req above but didnt lose rep if someone proves it\r\n   - need at least 1 rep to vote\r\n   - only commit for round 2 and fork events perhaps?\r\n- [x] Handle penalization automatically so UI doesn't have to (how to do in case of fork or round 2 event?).  If these aren't done you can't send rep, convert rep, or report\r\n   - penalizeNotEnoughReports(branch) - once in first half of a period per reporter, so if not done do that\r\n   - closeMarket if event doesn't have an outcome via EVENTS.getOutcome(event) yet.  Closing any one market associated w/ the event [you can get a list of markets associated w/ an event via getMarkets(event)] will finalize the event's outcome.  And round 2 resolve for those events\r\n   - penalizeWrong(branch, event) for each event reported on in first half of a period\r\n   - do penalizationCatchup(branch) if further behind automatically in submitreporthash or any of the rep sending / converting functions\r\n   - collectFees(branch) - once in second half of a period [so during first submit report]\r\n   - round 2 penalize rep sending etc\r\n   - # todo: make it 0.98 * old rep + 0.02 * new rep\r\n   - # (1-k) * old rep + k * new rep where k = 0.2 / (number of events you reported on last period) for penalization and pen. rate for forking and backstop 1\r\n- [x] go over any various todos i missed\r\n- [x] msg.sender vs tx.origin\r\n- [x] Handle 1.5 vs .5 vs .5 in fxp + 1 for binary, scalar, and categorical events\r\n- [x] other tests where api changed\r\n- [x] make exp events data struct more efficient\r\n- [x] categorical .5 single market handling\r\n- [x] ph note\r\n- [x] pushed forward round 2 / fork handling\r\n\r\n\r\n\r\n\r\nRefactor:\r\n\r\n   - [x] markets.se\r\n   - [x] consensus.se [and make cheaper]\r\n   - [x] backstops.se [and make cheaper]\r\n   - [X] buy&sellshares.se\r\n   - [x] closemarket.se\r\n   - [x] createmarket.se\r\n   - [x] forking.se [and make cheaper]\r\n   - [x] makereports.se\r\n   - [X] marketcreatortrading.se"}}
{"actor":{"display_login":"joeykrug"}}