I suppose a reasonable question here would be “how do you distinguish between overthinking the architecture vs. architecting for extensibility?” That would be a good question; I frequently think my own questions are good questions, and I’ll try to come back to it in a follow-up post.