fix a DI circular reference recognition bug