c04e7c31af
workflow-role-llm now only contains LLM-as-agent specifics: - createRole (wires agent + extract) - createLlmAdapter (OpenAI chat completions agent) workflow-util-role now provides all role infrastructure: - decorators (decorateRole, withDryRun, onFail) - llmExtract / extractMetaOrThrow (structured extraction) - buildDescriptorFromRoles (zod → JSON Schema) - LlmProvider, LlmMessage types
35 lines
1.2 KiB
TypeScript
35 lines
1.2 KiB
TypeScript
import { committerMetaSchema } from "@uncaged/workflow-role-committer";
|
|
import { reviewerMetaSchema } from "@uncaged/workflow-role-reviewer";
|
|
import { buildDescriptorFromRoles } from "@uncaged/workflow-util-role";
|
|
|
|
import { coderMetaSchema, plannerMetaSchema } from "./roles.js";
|
|
|
|
export function buildSolveIssueDescriptor() {
|
|
return buildDescriptorFromRoles({
|
|
description:
|
|
"Plan, implement, review, and commit changes to resolve an issue end-to-end (planner → coder → reviewer → committer).",
|
|
roles: {
|
|
planner: {
|
|
name: "planner",
|
|
schema: plannerMetaSchema,
|
|
description: "Analyzes the issue and proposes plan, files, and approach.",
|
|
},
|
|
coder: {
|
|
name: "coder",
|
|
schema: coderMetaSchema,
|
|
description: "Implements the planner output and summarizes touched files.",
|
|
},
|
|
reviewer: {
|
|
name: "reviewer",
|
|
schema: reviewerMetaSchema,
|
|
description: "Runs git diff checks and sets approved when the change is ready.",
|
|
},
|
|
committer: {
|
|
name: "committer",
|
|
schema: committerMetaSchema,
|
|
description: "Creates branch, commits, and pushes when review passes.",
|
|
},
|
|
},
|
|
});
|
|
}
|