WORKSPACE / NOINDEX
Playground
Choose a bounded recipe, edit its state, inspect typed results, and export the configuration. Nothing runs on page load.
DECISION CONSOLERECIPE R04 · V1.0.0
01
STATE INPUT
Edit the supplied state
02
TYPED RESULT
Signal monitor
Illustrative fixture
TASK
Fast text
Deep text
Image tool
Human review
Model choice: Fast textApp path: Fast text
Routechoice
fast-textFast text82%
Deep text13%
Image tool1%
Human review4%
Provider confidence: 71%
Complexityscore
1.20Rubric position · zero-indexedProvider confidence: 53%
External Side Effectboolean
Probability of true4%
APPLICATION PATHfast textroute-thresholds-cleared
The model evaluates. Deterministic policy code decides the displayed application path.
03
QUESTIONS / MODEL
Edit the bounded questions
Question edits require a new model run. Types and candidate/rubric boundaries stay locked to the recipe.
04
POLICY / LOCAL
Change the rules, not the result
↯ Policy changes are computed in this browser. Network calls added: 0.
Inspect result +
{
"origin": "fixture",
"answers": {
"route": {
"type": "choice",
"choice": "fast-text",
"probabilities": {
"fast-text": 0.82,
"deep-text": 0.13,
"image-tool": 0.01,
"human-review": 0.04
}
},
"complexity": {
"type": "score",
"score": 1.2,
"probabilities": {
"0": 0.03,
"1": 0.76,
"2": 0.15,
"3": 0.05,
"4": 0.01
}
},
"externalSideEffect": {
"type": "boolean",
"probability": 0.04
}
},
"providerConfidence": {
"route": 0.71,
"complexity": 0.53
},
"policyDecision": {
"action": "fast-text",
"label": "fast text",
"reasonCodes": [
"route-thresholds-cleared"
]
},
"run": null
}TypeScript export +
import { experimental_evaluate as evaluate } from 'ai';
const state = {
"task": "Write a two-sentence release announcement from these supplied facts.",
"routingContext": "Choose a text route for a low-risk task using the facts already supplied. Do not execute anything."
};
const questions = {
"route": {
"type": "choice",
"instructions": "Which allowed route matches this task and the routing context?",
"criteria": {
"fast-text": "A small bounded text task needing little reasoning",
"deep-text": "A text task requiring substantial analysis or multi-step reasoning",
"image-tool": "The primary request is to create or edit an image",
"human-review": "The task requires authority, consequential side effects, or clarification"
}
},
"complexity": {
"type": "score",
"instructions": "How much reasoning complexity is explicit in this task?",
"criteria": [
"A direct lookup or tiny transformation",
"A simple bounded text operation",
"Several related steps",
"Substantial analysis with interacting constraints",
"A complex plan with many uncertain or dependent steps"
]
},
"externalSideEffect": {
"type": "boolean",
"instructions": "Does the task request a consequential change outside this playground, such as sending, paying, deleting or changing permissions?",
"criteria": {
"true": "The task explicitly requests such an external side effect.",
"false": "It only requests analysis, drafting or a sandbox demonstration without an external change."
}
}
};
const policy = {
"minSelectedProbability": 0.75,
"minProviderConfidence": 0.4,
"sideEffectReviewThreshold": 0.65
};
const result = await evaluate({
model: 'typesafe-ai/jev',
state,
questions,
maxRetries: 0,
providerOptions: { gateway: { zeroDataRetention: true } },
});
// Validate result.answers before applying your deterministic policy.
console.log({ answers: result.answers, policy });