When is it OK to release code that is not clean?
Sigiloso
When it's a one-off thing that will never need to be expanded, maintained, or ever used again. One-time-use (throw-away) conversion or migration scripts (as long as they are well tested with an easy fall back option) would be fine. Anything else should be thoroughly tested and clean.