n8n/packages/@n8n/instance-ai/evaluations/data/workflows/rest-api-data-pipeline.json
José Braulio González Valido 81ea56fa6b
test(ai-builder): Add multi-turn capability for IAI evals (no-changelog) (#30586)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 13:03:35 +00:00

49 lines
2.3 KiB
JSON

{
"conversation": [
{
"role": "user",
"text": "Daily, fetch posts from an API, filter some out, and post the rest to a Slack channel."
},
{
"role": "assistant",
"text": "Which API endpoint, what's the filter, and which Slack channel?"
},
{
"role": "user",
"text": "GET https://jsonplaceholder.typicode.com/posts. Drop any post whose title contains the word 'qui'. Post to #api-digest."
},
{
"role": "assistant",
"text": "What should the Slack message look like?"
},
{
"role": "user",
"text": "It should say how many posts remain after filtering and list each remaining post's title."
}
],
"messageBudget": 6,
"complexity": "medium",
"tags": ["build", "http-request", "slack", "data-transformation", "schedule"],
"triggerType": "schedule",
"executionScenarios": [
{
"name": "happy-path",
"description": "API returns posts, some contain 'qui' and get filtered, summary posted to Slack",
"dataSetup": "The HTTP Request node returns JSON objects with fields: id, userId, title, body. Some of them should have 'qui' in the title (e.g. 'qui est esse', 'nesciunt quid non qui'). Others should NOT contain 'qui'. The Slack node returns a success response.",
"successCriteria": "The workflow executes without errors. Posts containing 'qui' in the title are filtered out. The Slack message is posted to #api-digest and includes how many posts remain plus the titles of the remaining posts. None of the titles in the Slack message should contain the word 'qui'."
},
{
"name": "empty-response",
"description": "The API returns an empty array",
"dataSetup": "The HTTP Request node returns an empty array []. The Slack node returns a success response.",
"successCriteria": "The workflow handles an empty API response without crashing. The Slack message is either posted with a 'no posts' message or the workflow completes gracefully without posting."
},
{
"name": "all-filtered",
"description": "Every post contains 'qui' in the title and all are filtered out",
"dataSetup": "The HTTP Request node returns 3 posts, all with 'qui' in their titles. The Slack node returns a success response.",
"successCriteria": "The workflow handles the case where all items are filtered out. It should not crash or send an empty message to Slack."
}
]
}