Over medium-low heat, caramelize the onions and oil, stirring every 5-7 minutes, covering with lid. Cook until onions are cooked down completely and wet-looking (20 minutes). Remove lid and raise temp to medium heat, and continue to cook until browned, stirring frequently (another 10 minutes). Set aside.
In a large pot of boiling water, cook the diced potatoes and chopped carrots until fork tender (about 20-30 minutes, depending on how you cut them). Strain and combine them with the caramelized onions, vegan butter, and almond milk, using a wooden spoon to mash for a chunkier texture, or a potato masher for a more even and smooth texture.
Add salt to taste, serve with the optional garnishes mentioned above.