The middle approach would be implementing the infrastructure in a basic way that is simplistic, but provides benefit and can be expanded.
That's great if you're implementing but it doesn't really work when you're coming in to an existing infrastructure (or codebase) that other people manage.