import { Signal, Task, Workflow, createSmithers } from "smithers-orchestrator";
import { z } from "zod";
const { smithers, outputs } = createSmithers({
feedback: z.object({ rating: z.number(), comment: z.string() }),
summary: z.object({ upper: z.string() }),
});
export default smithers(() => (
<Workflow name="signal-demo">
<Signal id="user-feedback" schema={outputs.feedback} async>
{(feedback) => (
<Task id="summarize" output={outputs.summary}>
{{ upper: feedback.comment.toUpperCase() }}
</Task>
)}
</Signal>
</Workflow>
));