02f7f0b708
BREAKING CHANGE: All workflow YAML files must use 'frontmatter' instead of 'meta'. - workflow-protocol: RoleDefinition.meta → frontmatter, schema updated - cli-workflow: validate.ts, workflow.ts — resolveMetaRef → resolveFrontmatterRef - workflow-agent-kit: run.ts — metaSchema → frontmatterSchema - All YAML files updated (examples/, .workflows/) Fixes #374
76 lines
2.2 KiB
YAML
76 lines
2.2 KiB
YAML
name: "solve-issue"
|
|
description: "End-to-end issue resolution"
|
|
roles:
|
|
planner:
|
|
description: "Creates implementation plan"
|
|
goal: "You are a planning agent. You analyze issues and create step-by-step plans."
|
|
capabilities:
|
|
- issue-analysis
|
|
- planning
|
|
procedure: "Analyze the issue and create a detailed, actionable implementation plan."
|
|
output: "Output the plan summary and list of concrete steps."
|
|
frontmatter:
|
|
type: object
|
|
properties:
|
|
plan:
|
|
type: string
|
|
steps:
|
|
type: array
|
|
items:
|
|
type: string
|
|
required: [plan, steps]
|
|
developer:
|
|
description: "Implements code changes"
|
|
goal: "You are a developer agent. You implement code changes according to plans."
|
|
capabilities:
|
|
- file-edit
|
|
- shell
|
|
- testing
|
|
procedure: "Implement the plan. Write code, tests, and ensure existing tests pass."
|
|
output: "List all files changed and provide a summary of the implementation."
|
|
frontmatter:
|
|
type: object
|
|
properties:
|
|
filesChanged:
|
|
type: array
|
|
items:
|
|
type: string
|
|
summary:
|
|
type: string
|
|
required: [filesChanged, summary]
|
|
reviewer:
|
|
description: "Reviews code changes"
|
|
goal: "You are a code reviewer. You review implementations for correctness and quality."
|
|
capabilities:
|
|
- code-review
|
|
- static-analysis
|
|
procedure: "Review the implementation against the plan. Check for bugs, edge cases, and style."
|
|
output: "Approve or reject with detailed comments explaining your decision."
|
|
frontmatter:
|
|
type: object
|
|
properties:
|
|
approved:
|
|
type: boolean
|
|
comments:
|
|
type: string
|
|
required: [approved, comments]
|
|
conditions:
|
|
notApproved:
|
|
description: "Reviewer rejected the implementation"
|
|
expression: "steps[-1].output.approved = false"
|
|
graph:
|
|
$START:
|
|
- role: "planner"
|
|
condition: null
|
|
planner:
|
|
- role: "developer"
|
|
condition: null
|
|
developer:
|
|
- role: "reviewer"
|
|
condition: null
|
|
reviewer:
|
|
- role: "developer"
|
|
condition: "notApproved"
|
|
- role: "$END"
|
|
condition: null
|