I would look at your code again. I don't think it's doing what you think it's doing. A few things including that slice returns a shallow copy. You make a copy and pass the original up.
However, you don't need a rule at all. Just do this work in the loader. Load your data but ensure you only pass what's needed up. If you want to send me your TestConfigurationLoader, I can fix it. Mike