Bug Report Example¶
This is a filled-in example of the bug report template to show what a good bug report looks like.
Title: Executor skips steps when upstream step returns empty string
What happened?¶
I have a custom tool that returns an empty string "" as a valid result. Steps that depend on it get skipped with "upstream failure", even though the tool completed successfully. The pipeline finishes with status: "pass" but the output is incomplete because the downstream steps never ran.
Reproduction¶
import { Tepa } from "@tepa/core";
import { AnthropicProvider } from "@tepa/provider-anthropic";
import { defineTool } from "@tepa/tools";
const emptyTool = defineTool({
name: "return_empty",
description: "Returns an empty string",
parameters: {},
execute: async () => "",
});
const tepa = new Tepa({
provider: new AnthropicProvider(),
tools: [emptyTool],
});
const result = await tepa.run({
prompt: { goal: "Use return_empty tool, then summarize the result" },
});
// Steps after return_empty are skipped
console.log(result.outputs);
Environment¶
- Node.js: 20.11.0
- Packages:
- OS: Ubuntu 24.04