Some general principles:
- Guarantees (implied or otherwise) about stability will inevitably be broken, so attempting to stick to something like semantic versioning is just a lie. Acknowledge that you have no intention or ability to ensure compliance with such guidelines, and make this fact obvious (sometimes painfully so) in your versioning scheme.