I have seen and tried to maintain the years of spaghetti code and quick hacks that Agile projects generate. It is a nightmare. I think i understand it just fine. It is a flawed premise. Projects should have concrete specifications and expectations at the get go. I shouldn't be forced to code quickly with a sprint gun to my head at all times, generating heaps of tech debt by having no time to retool unstable or inefficient portions of a project, as i am always busy scotch taping on new features that the codebase was never designed to handle.
If the customer wants a horse to run 60mph backwards, and the project manager has no idea that a horse cannot possibly do that, i have to hear why my "horse" should have been designed with Agile philosophy in mind. Agile is nothing but a bunch of techno-babble that "sounds good" but offers no practical advice on how to achieve those ends. It is the scourge of the earth and would love to see it purged from collective consciousness.