I was employed in a firm where the Architect would design the whole system and ask the developers to just do the so-called "grunt work" of writing code. The problem was that there were many issues with the code architecture. He also reprimanded us if we suggested using a newer tech (Spring mvc instead of Struts). When I couldn't talk him through the problem, I decided to have a meeting with my manager. To my dismay, I was fired the following month.<p>Did you ever have to face this? What would have been an ideal (and safe) plan of action?
You made your voice heard on the technical side and to management. I don't think there's more you could've done.<p>Maybe you might have more leverage when the whole team of engineers in on your side (either that management accepts logical discussion or fears loosing many engineers at once).
The way you behaved was reasonable. The architect and manager were unreasonable. In cases like these, it's often difficult or impossible to change the company. All you can do is start looking for other jobs.