I really wish that was true. All agents find some way to break the rules, and leave messages for their future selves.
The agents always find a way to include some forms of hedging, contradictions, future-looking documentation (which doesn't age well), etc. into git messages.
I found having an extra gate (husky/pre-commit hook), even if it's not as good as I want it to be improves the quality of how the AI writes substantially.
The cost of it not being very good is the agents now spend more time validating the claims of the validator. It's actually hilarious to witness.
I have been using local models for this final verification, which is partly why they're not that great. It's also why I decided to train my own.
It's been a great, fun learning experience. I learn almost everything via building. So why change a recipe that works :)