Shamrock Rovers suffered their first home defeat since June 2019 as Romeo Parkes fired Sligo Rovers to the top of the SSE Airtricity League Premier Division table.
The only goal of the game arrived on the 55th minute when Jordan Gibson unleashed Parkes goalwards with an incisive through pass.
There were sheepish shouts for offside as the 30-year-old Jamaican striker surged towards goal, however, the assistant kept his flag down as Parkes stuck the ball past Alan Mannus.
The defeat was the Hoops' first home defeat since they lost 1-0 to Dundalk here 696 days ago.
Stephen Bradley’s side have now lost their last two games, also falling to a 2-1 away loss to Dundalk on Friday.
Prior to that, Rovers were boasting a 33-game unbeaten league run – a streak which has now come to a screeching stop.
The victory was Sligo’s first win at Tallaght Stadium since October 2013 and maintained their unbeaten start away from home this season.
While the Hoops are used to dominating possession at home, Sligo were set up in a 3-4-3 eager to show that they were able to hold their own in the battle for the ball.
Both sides exploited the dry conditions and blemish-free pitch to work the ball around each other but produced little in the way of goal-scoring opportunities in the first half.
However, it was the visitors who looked the better of the sides. Walter Figueira and Greg Bolger took a series of shots from outside the box after spells of Sligo possession but neither were close to troubling Mannus.
The hosts had a penalty shout before the break, when Graham Burke went down from a Garry Buckley tackle in the box.
The roars originated from Bradley on the sideline more than they did from Burke, but after a long look Neil Doyle judged Buckley to have cleanly won possession.
If the first half was slow at times, the second half started in lightning fashion. A minute into the half, Doyle was again waving away urgent Shamrock Rovers pleadings for a penalty.
The Hoops players argued that the ball had struck a Sligo hand in the box before it went out for a corner but Doyle again held firm.
A moment later, Bolger dispossessed Burke, allowing him to surge into the host’s half with a five on two scenario in Sligo’s favour.
The Bit O’Red captain switched it to Gibson who fired a vicious shot that went just wide of the near post.
The Dubliners struck back with a chance of their own when Rory Gaffney played Aaron Greene through on goal but Ed McGinty came charging from his goal to smother the danger.
Sligo finally broke the deadlock five minutes later.
Liam Scales made the mistake attempting to leave Parkes in an offside position, but it was Gibson’s vision which capitalised on the mistake as he pushed the ball perfectly in his team-mate’s path towards goal.
Scales’ arm went up for the offside but the assistant’s didn’t, meanwhile, Parkes scored his third league goal of the season.
The league champions struggled to claw back possession for most of the second half as Liam Buckley’s side proved first to every ball.
Burke came closest to scoring on the 80th minute when he struck a curling shot from inside the box, which fizzed just wide of McGinty’s goal.
Ultimately it was Sligo Rovers' night as they departed westwards with all three points and another important scalp.
Shamrock Rovers: Alan Mannus; Joey O’Brien (Max Murphy, 8 (Dean Williams, 78)), Roberto Lopes, Lee Grace; Sean Gannon, Gary O’Neill (Chris McCann, 70) Danny Mandroiu, Liam Scales; Rory Gaffney, Aaron Greene, Graham Burke.
Sligo Rovers: Ed McGinty; Lewis Banks, John Mahon, Robbie McCourt; Garry Buckley, Mark Byrne (Johnny Kenny, 68); Niall Morahan, Greg Bolger; Romeo Parkes (Ryan de Vries, 86), Jordan Gibson; Walter Figueira.
Referee: Neil Doyle.