RikaidoDeveloper

START

Reading the answer

Two booleans, a list of findings, and the rule that separates them.

safe, the lock

safe: false means: do not serve this recipe. An ingredient breaks an allergy, a diet or an exclusion you named. It is not fixed by dropping the offending line client-side: the whole recipe was written around it. Send it back to the model with feedback, or refuse.

Three codes carry safety: trueallergen-violation, diet-violation, excluded-ingredient — and they are the only ones that bring safe down.

ok, the opinion

ok: false means: something sits outside a band. Salt under the dish’s band, a temperature that does not fit the technique, a vague quantity. The recipe can be served with its notes; Rikaido itself sends it back to the model up to three times before serving it with what remains.

ok: true and safe: true: nothing to report on what the harness could read.

issues[]

Each entry names a code, a severity and a sentence for the model. The optional fields say what it is about:

subjectstring
The one thing the finding is about, in the recipe’s own words — an ingredient line, a temperature, a slug.
ingredientstring
On safety codes: the offending line, verbatim.
constraintstring
On safety codes: the canonical allergen or diet — “peanut”, “vegan”.
techniquestring
When the finding names a technique the lexicon holds.

The twenty codes, with their check and their sentence in both languages, are on The codes.

classification

The dish is classified before it is judged, because the bands depend on the dish. unclassified does not mean “nothing to report”: it means none of the category checks ran — no salt band, no baker’s percentages, no oven window. Safety, structure, quantities and absolute temperatures always run.

constraints

What the harness actually enforced, echoed as is. An answer whose constraints are invisible is an answer nobody can act on.