Heat a large stock pot or Dutch oven over medium heat.
Add olive oil.
Add the onion and garlic.
Cook for 2 to 3 minutes until fragrant.
Add the achiote paste.
Stir until dissolved into the oil.
Do not brown.
Add water, chicken bouillon, and chicken pieces.
Bring to a boil.
Reduce heat and simmer for 30 minutes.
Skim any foam from the surface if needed.
Add celery, carrots, potatoes, and corn.
Continue simmering for 20 minutes.
Add cabbage and cilantro.
Cook for an additional 10 minutes.
Taste and adjust salt as needed.
Turn off the heat and allow the soup to rest for 5 minutes.
Ladle chicken, vegetables, and broth into serving bowls.
Top with avocado slices and extra cilantro.
Serve with fresh lime wedges.