The rule
When writing new code for Claude-Pippa, do not think about future variants at all. Do not leave hooks. Do not preserve symmetry for hypothetical Gemini-Pippa. Do not write `# TODO: extract this for the adapter layer`.
Why it's safe
Rule 3 is safe because Rule 2 is the safety valve. If a variant is ever needed, the descendant absorbs the cost, and the ancestor is untouched. So you can build the Claude-shaped version full-tilt, knowing that the future variant pain is bounded.
The lesson
This is the opposite of the 2005 enterprise-Java reflex ('abstract everything for future flexibility'). It aligns with the older principle: don't abstract what you haven't needed to vary yet.
The principle: Forcing a neutral abstraction pretends all brains are equivalent when they aren't. Inheritance-with-specialization admits Claude is canonical, and any other brain is a variant by comparison. That's an honest statement of preference, not a universal claim.