For the chili sauce: Heat a large skillet over medium heat and add the beef chuck, onions, 1 tablespoon of the chili powder, mustard powder, 1 teaspoon salt, coriander, cumin, cayenne, if using, bay leaf and garlic. Cook until the onions are tender and the meat is cooked through, about 8 minutes, making sure to break up the meat with the back of a wooden spoon so there are no clumps.
Push the meat mixture to one side of the pan and add the tomato paste to the empty side of the pan, stirring and cooking until the raw tomato flavor is cooked out and the paste is thickened, about 2 minutes. Stir the tomato paste into the meat mixture and cook for 2 minutes more. Add the cider vinegar, scraping up any brown bits that cling to the bottom of the pan with the wooden spoon, and cook an additional 2 minutes.
Meanwhile, heat the canola oil in another large skillet over medium heat. Add the remaining 2 tablespoons of chili powder and the flour and use a wooden spoon to mix thoroughly, until smooth and toasted, 1 to 2 minutes. Whisk in the chicken stock and continue cooking until thickened. Increase the heat to medium-high and simmer until the mixture is reduced by one-quarter (it should yield about 1 1/2 cups), about 5 minutes. Pour over the meat mixture and simmer, stirring, until well combined, 1 to 2 minutes longer. Remove the bay leaf and season with salt.
For the half-smokes: Heat a grill or a grill pan over high heat.
Cut the half-smokes three-quarters of the way through lengthwise and grill until nicely marked and heated through, about 1 1/2 minutes per side. Spread some mustard on the inside of each warmed bun. Place each half-smoke in a bun and evenly top with the chili sauce (these are messy dogs!) and generously sprinkle with raw onions. Serve with a side of fries or chips.
The chili sauce can be served immediately, but is best when allowed to sit for a day to allow the flavors to blend. Season carefully with the salt when cooking as the salt, as well as the spices, will intensify over time. Reheat gently with a few tablespoons of chicken stock until bubbling.