Recipe catalog / attempted-step
Check a previously attempted step
Does conversation establish whether the customer already performed step?
You need to know whether a customer already tried a troubleshooting step.
Explore this recipe interactively ยท Source and implementation guide
Use attempted-step in TypeScript
Install with npm install jev-recipes. Requires Node.js 22.9 or newer and ES modules. Set TYPESAFE_API_KEY in your server environment for live calls, which send input to TypeSafe and use API quota. See the installation guide.
import { attemptedStep } from 'jev-recipes/attempted-step';
const result = await attemptedStep({
"step": "Clear the browser cache and try again.",
"conversation": "I already cleared my browser cache and tried again. The error is still there."
});
console.log(result);
Input contract
| Field | Type | Needed |
|---|---|---|
| step | string | Required |
| conversation | string | Required |
| minConfidence | number | Optional |
Full input and result schemas
{
"input": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"step": {
"type": "string"
},
"conversation": {
"type": "string"
},
"minConfidence": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"step",
"conversation"
]
},
"result": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"model": {
"type": "string"
},
"usage": {
"type": "object",
"properties": {
"input_tokens": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"output_tokens": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"input_tokens",
"output_tokens"
],
"additionalProperties": false
},
"status": {
"type": "string",
"enum": [
"ready",
"review"
]
},
"verdict": {
"type": "string",
"enum": [
"tried",
"not_tried",
"unclear"
]
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"probabilities": {
"type": "object",
"propertyNames": {
"type": "string",
"enum": [
"tried",
"not_tried",
"unclear"
]
},
"additionalProperties": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"required": [
"tried",
"not_tried",
"unclear"
]
}
},
"required": [
"model",
"usage",
"status",
"verdict",
"confidence",
"probabilities"
],
"additionalProperties": false
}
}Saved example result
This hand-authored response demonstrates the contract. It is not a model accuracy measurement. Run it without an API key: npx jev-recipes demo attempted-step.
{
"model": "demo-fixture",
"usage": {
"input_tokens": 0,
"output_tokens": 0
},
"status": "ready",
"verdict": "tried",
"confidence": 0.96,
"probabilities": {
"tried": 1,
"not_tried": 0,
"unclear": 0
}
}
Evaluation evidence
No verified live accuracy measurement is available. Evaluate representative cases before using this decision in your workflow.
Use the evaluation guide to measure this decision on your own labeled cases.
Limitations
- Interprets reports of an attempt. It does not verify that the step was completed correctly or repeat the action.
Related recipes
- troubleshooting-fit: Use troubleshooting-fit to check whether the procedure fits the symptoms.