Anthony KanBuilding with AI
All Build Notes

A useful reply should survive harmless format changes

Where an AI response can be flexible, and where checks must stay firm.

Getting startedAbout 2 min read

A reply can arrive and still be rejected

In My Next Step, Sam helps someone explore an experience through conversation. Between Sam’s response and the screen sits code that checks and interprets the result. That code can reject a response even when the person-facing words are useful.

A conversational response is not always identical in shape. An optional note may be absent, or a usable reflection may arrive without a separate question. Treating every variation as a complete failure can interrupt the person for a reason that has little to do with their experience.

Flexibility needs a boundary

The current conversation handling accepts useful reflection or question text and normalises some optional fields. That is a limited kind of tolerance. It does not mean accepting an empty reply, inventing missing facts or ignoring who is allowed to access a record.

Participant request limits, identity, permissions and the factual minimum for saving a Story remain separate checks. A receiver can be forgiving about presentation while staying strict about authority and what enters the person’s record.

Check what the rejection protects

When a response fails validation, inspect the actual result before loosening the rule. Is the missing field needed to continue safely? Can an optional value be omitted? Would accepting the result change stored facts?

Then test both sides: a useful response with harmless variation, and one that really must be rejected. The aim is a conversation that can continue for the right reasons.

Related project

My Next Step