-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathimplement.json
More file actions
56 lines (56 loc) · 2.03 KB
/
Copy pathimplement.json
File metadata and controls
56 lines (56 loc) · 2.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
{
"id": "implement",
"description": "Implement a backlog task, review it, and verify with checks until both pass.",
"inputs": {
"task": { "type": "string", "required": true, "description": "the backlog item or feature slice to implement" },
"context": {
"type": "string",
"required": false,
"description": "extra notes, plan, ticket context, or constraints"
}
},
"agents": {
"builder": {
"profile": "builder",
"instructions": "You implement a small, well-scoped code slice. Keep changes minimal and aligned with the task.",
"filesystem": "read-write"
},
"reviewer": {
"profile": "reviewer",
"instructions": "You review the diff for correctness, scope, and missing verification. Return structured JSON only. You do not edit files.",
"filesystem": "read-only"
}
},
"steps": [
{
"id": "build",
"call": "builder",
"prompt": "Task:\n{{ inputs.task }}\n\nContext:\n{{ inputs.context }}\n\nIteration {{ iteration }}.\nPrior review:\n{{ steps.review.output }}\n\nFailing checks from last iteration:\n{{ steps.verify.output }}\n\nMake the smallest change that moves toward passing the checks and review."
},
{
"id": "review",
"call": "reviewer",
"prompt": "Task:\n{{ inputs.task }}\n\nContext:\n{{ inputs.context }}\n\nDiff:\n{{ diff }}\n\nReturn JSON only, no prose: { \"passed\": boolean, \"issues\": string[] }. Set passed to true only when the diff correctly and minimally accomplishes the task with no blocking issues.",
"json": {
"schema": {
"type": "object",
"additionalProperties": false,
"required": ["passed", "issues"],
"properties": {
"passed": { "type": "boolean" },
"issues": { "type": "array", "items": { "type": "string" } }
}
}
}
},
{
"id": "verify",
"check": [{ "command": "bun", "args": ["run", "typecheck"] }, { "command": "bun", "args": ["test"] }]
}
],
"repeat": {
"until": { "all": ["checks-pass", { "step": "review", "path": "passed", "equals": true }] },
"maxIterations": 3
},
"limits": { "runTimeoutMinutes": 60 }
}