## 背景 目前 `@artus/injection` 提供的 Container,允许同 Id 或者同 Type 覆盖,从 IoC 容器的设计上说这种行为是合理的,但是额外的,需要由 `injection` 模块提供溯源的机制,以便在用户误覆盖上层框架内置的实体时可以由上层框架自行决定给出 warning 提示或者 throw 中断处理。 更多的,是否有必要在 `injection` 提供的 Container 中直接内置可选的属性 `override`,来保证 set 之后不允许覆盖。