Place the ground beef in a large saucepan or Dutch oven. Pour in the water and use a fork to break up the meat until completely loose. This unusual cold start technique ensures a fine, sauce like texture. Bring to a gentle simmer.
Once the beef begins to simmer, add the chopped onions, garlic, and tomato paste. Stir well to combine, allowing the mixture to meld as the tomato paste cooks down for 2 to 3 minutes.
Add all the remaining sauce ingredients: vinegar, Worcestershire sauce, cocoa, chilli powder, cinnamon, cumin, allspice, cloves, bay leaf, salt, pepper, and sugar. Stir until fully incorporated and fragrant.
Reduce heat to low, cover partially, and simmer for 1½ to 2 hours. Stir occasionally and adjust heat to maintain a gentle bubble. This long simmer helps deepen the flavours and thicken the sauce.
About 20 minutes before the sauce finishes, bring a pot of salted water to the boil. Cook the spaghetti until al dente, then drain and set aside. Avoid rinsing the pasta so the sauce clings better.
Once the sauce has thickened and darkened, remove the bay leaf. If it's too thin, simmer uncovered for another 10 minutes. If too thick, add a splash of water to loosen it slightly.
If serving "3-way" or higher, warm the canned kidney beans gently on the stove or in the microwave until heated through. Keep them covered to retain moisture.
Finely shred the cheddar cheese and chop the white onion. Arrange toppings in small bowls for easy serving, especially if letting guests customise their plates.
To serve, divide the spaghetti among four shallow bowls. Top with a generous ladle of chilli sauce. Add toppings as follows:2-way: spaghetti + chilli3-way: add cheese5-way: add both onions and beans5-way: add both onions and beans Top with a final sprinkle of cheese if desired, and serve with oyster crackers on the side. The dish is best eaten warm with a fork. For a traditional touch, pair with hot sauce or a drizzle of mild vinegar.