fa9163e462
BREAKING: Major architecture change. - RoleDefinition = pure data (systemPrompt + schema + dryRunMeta) - AgentFn = (ctx: ThreadContext) => Promise<string>, reads ctx.currentRole - WorkflowDefinition decoupled from agents, bound via AgentBinding at runtime - createWorkflow(def, binding, extract) replaces createRoleModerator - Meta extraction moved into engine loop - Delete workflow-util-role package (createRole, decorators, extract all gone) - Role packages become pure data exports - Agent packages updated to single-arg AgentFn 小橘 <xiaoju@shazhou.work>
16 lines
529 B
TypeScript
16 lines
529 B
TypeScript
import { describe, expect, test } from "bun:test";
|
|
|
|
import { reviewerMetaSchema, reviewerRole } from "../src/reviewer.js";
|
|
|
|
describe("reviewerRole", () => {
|
|
test("dryRunMeta validates against schema", () => {
|
|
const parsed = reviewerMetaSchema.safeParse(reviewerRole.dryRunMeta);
|
|
expect(parsed.success).toBe(true);
|
|
});
|
|
|
|
test("system prompt is generic (no cwd)", () => {
|
|
expect(reviewerRole.systemPrompt).toContain("code reviewer");
|
|
expect(reviewerRole.systemPrompt).not.toContain("project is at");
|
|
});
|
|
});
|