{"action":"created","issue":{"url":"https://api.github.com/repos/TracksApp/tracks/issues/1401","labels_url":"https://api.github.com/repos/TracksApp/tracks/issues/1401/labels{/name}","comments_url":"https://api.github.com/repos/TracksApp/tracks/issues/1401/comments","events_url":"https://api.github.com/repos/TracksApp/tracks/issues/1401/events","html_url":"https://github.com/TracksApp/tracks/issues/1401","id":36496489,"number":1401,"title":"Invalid Dependencies","user":{"login":"dnrce","id":1084619,"avatar_url":"https://avatars.githubusercontent.com/u/1084619?v=3","gravatar_id":"","url":"https://api.github.com/users/dnrce","html_url":"https://github.com/dnrce","followers_url":"https://api.github.com/users/dnrce/followers","following_url":"https://api.github.com/users/dnrce/following{/other_user}","gists_url":"https://api.github.com/users/dnrce/gists{/gist_id}","starred_url":"https://api.github.com/users/dnrce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dnrce/subscriptions","organizations_url":"https://api.github.com/users/dnrce/orgs","repos_url":"https://api.github.com/users/dnrce/repos","events_url":"https://api.github.com/users/dnrce/events{/privacy}","received_events_url":"https://api.github.com/users/dnrce/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/TracksApp/tracks/labels/defect","name":"defect","color":"ededed"},{"url":"https://api.github.com/repos/TracksApp/tracks/labels/Functionality%20(app)","name":"Functionality (app)","color":"ededed"}],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/TracksApp/tracks/milestones/22","html_url":"https://github.com/TracksApp/tracks/milestones/2.3","labels_url":"https://api.github.com/repos/TracksApp/tracks/milestones/22/labels","id":701334,"number":22,"title":"2.3","description":"","creator":{"login":"dnrce","id":1084619,"avatar_url":"https://avatars.githubusercontent.com/u/1084619?v=3","gravatar_id":"","url":"https://api.github.com/users/dnrce","html_url":"https://github.com/dnrce","followers_url":"https://api.github.com/users/dnrce/followers","following_url":"https://api.github.com/users/dnrce/following{/other_user}","gists_url":"https://api.github.com/users/dnrce/gists{/gist_id}","starred_url":"https://api.github.com/users/dnrce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dnrce/subscriptions","organizations_url":"https://api.github.com/users/dnrce/orgs","repos_url":"https://api.github.com/users/dnrce/repos","events_url":"https://api.github.com/users/dnrce/events{/privacy}","received_events_url":"https://api.github.com/users/dnrce/received_events","type":"User","site_admin":false},"open_issues":3,"closed_issues":59,"state":"open","created_at":"2014-06-25T15:08:28Z","updated_at":"2015-03-09T01:23:38Z","due_on":null,"closed_at":null},"comments":2,"created_at":"2014-06-25T16:08:13Z","updated_at":"2015-03-15T12:05:30Z","closed_at":"2014-08-06T12:54:40Z","body":"*Migrated from the original issue at https://www.assembla.com/spaces/tracks-tickets/tickets/1401*\n\nDependent objects are supposed to impose a partial ordering between Todos. However this can be broken as there are no sufficient checks in TodosController#add_predecessor. Therefore it's possible to have a Todo have itself as a predecessor, for multiple Dependencies to form a cycle, or to have multiple dependencies between the same two Todos.\n\nThe interface disallows this but it is still possible to invalidate the database by sending custom http post requests or via some exposed API. This defect has minor severity but should be reported.\n\n*Originally reported by Bocete on February 2, 2013 at 22:03:04 (+0000) against version git-devel*"},"comment":{"url":"https://api.github.com/repos/TracksApp/tracks/issues/comments/80983943","html_url":"https://github.com/TracksApp/tracks/issues/1401#issuecomment-80983943","issue_url":"https://api.github.com/repos/TracksApp/tracks/issues/1401","id":80983943,"user":{"login":"C-Otto","id":344948,"avatar_url":"https://avatars.githubusercontent.com/u/344948?v=3","gravatar_id":"","url":"https://api.github.com/users/C-Otto","html_url":"https://github.com/C-Otto","followers_url":"https://api.github.com/users/C-Otto/followers","following_url":"https://api.github.com/users/C-Otto/following{/other_user}","gists_url":"https://api.github.com/users/C-Otto/gists{/gist_id}","starred_url":"https://api.github.com/users/C-Otto/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/C-Otto/subscriptions","organizations_url":"https://api.github.com/users/C-Otto/orgs","repos_url":"https://api.github.com/users/C-Otto/repos","events_url":"https://api.github.com/users/C-Otto/events{/privacy}","received_events_url":"https://api.github.com/users/C-Otto/received_events","type":"User","site_admin":false},"created_at":"2015-03-15T12:05:30Z","updated_at":"2015-03-15T12:05:30Z","body":"I suggest ro (also) reopen this bug report. The validation code is there, but it is not triggered before introducing the wrong dependency. #1754 describes the same bug."}}