Text is a terrible API boundary
Free-form text is great for humans and slippery for code. The moment another service depends on the shape, the answer needs a schema, validation, retries, and a failure path.
The useful signal is usually already there.
Hit the button and watch the hidden AI surface area light up.
Make the shape explicit
Define the fields, allowed values, and nullable cases before calling the model. Then validate the response like any other external dependency.
A schema turns vibes into a contract your app can reject.
Reject invalid answers loudly
If the model misses the schema, do not patch around it downstream. Retry with the validation error, fall back to a human path, or fail the job with a useful log.
Flip the switches and watch the story turn into a tiny operating model.
Reliable AI feels boring at the boundary
The inside can be probabilistic. The edge of the system should look like software: typed, validated, observable, and honest when it cannot comply.