Pat the beef cubes dry with paper towel. Season generously.
Heat the olive oil in a large heavy pot over medium-high heat. Brown the beef in three batches, 5 minutes per side, deeply caramelised. Set aside.
Add the onions to the same pot. Cook over medium heat for 12 minutes, stirring, until deeply amber. Add the garlic and tomato paste, cook 1 minute.
Sprinkle in the flour, stir for 1 minute. Pour in the Guinness, scraping the pot. Reduce by a third (about 6 minutes).
Return the beef. Add stock, brown sugar, thyme, bay, Worcestershire. Bring to a simmer.
Cover and simmer over the lowest heat for 2.5 to 3 hours, stirring once an hour, until the beef collapses to the back of a fork.
Cool completely. Refrigerate overnight if possible.