Detectando imports circulares com Madge (e travando regressões no lint)
Quem já passou horas caçando um undefined no meio de um bundle ou um comportamento estranho só em produção sabe como uma corrente de imports mal resolvida pode virar dor de cabeça. Um dos culpados frequentes é o import circular: o módulo A importa B, B importa C, e em algum lugar da cadeia alguém importa de novo o A — fechando um ciclo.
Eu já vi isso em projeto pequeno e em projeto grande; a diferença é só o tamanho do grafo quando você finalmente desenha com o Madge.




