huskies: merge 880
This commit is contained in:
@@ -101,7 +101,10 @@ mod tests {
|
||||
assert!(names.contains(&"mesh_status"));
|
||||
assert!(names.contains(&"run_check"));
|
||||
assert!(names.contains(&"cleanup_worktrees"));
|
||||
assert_eq!(tools.len(), 69);
|
||||
assert!(names.contains(&"create_epic"));
|
||||
assert!(names.contains(&"list_epics"));
|
||||
assert!(names.contains(&"show_epic"));
|
||||
assert_eq!(tools.len(), 72);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
@@ -242,6 +242,10 @@ pub(super) fn story_tools() -> Vec<Value> {
|
||||
"type": "string",
|
||||
"description": "Set or change the 'agent' YAML front matter field"
|
||||
},
|
||||
"epic": {
|
||||
"type": "string",
|
||||
"description": "Set or change the 'epic' field — the numeric epic ID this item belongs to (e.g. '880'). Agents spawned for this item will have the epic context prepended to their system prompt."
|
||||
},
|
||||
"front_matter": {
|
||||
"type": "object",
|
||||
"description": "Arbitrary YAML front matter key-value pairs to set or update. Values may be strings, booleans, integers, numbers, or arrays (e.g. [490, 491]).",
|
||||
@@ -369,6 +373,59 @@ pub(super) fn story_tools() -> Vec<Value> {
|
||||
"properties": {}
|
||||
}
|
||||
}),
|
||||
json!({
|
||||
"name": "create_epic",
|
||||
"description": "Create an epic: a shared-context container for chains of related stories. Epics are not pipeline-driven but inject their goal and context into agent prompts for all member work items. Returns the epic_id.",
|
||||
"inputSchema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Human-readable epic name"
|
||||
},
|
||||
"goal": {
|
||||
"type": "string",
|
||||
"description": "What this epic aims to achieve"
|
||||
},
|
||||
"motivation": {
|
||||
"type": "string",
|
||||
"description": "Optional: why this epic matters"
|
||||
},
|
||||
"key_files": {
|
||||
"type": "string",
|
||||
"description": "Optional: key files or modules relevant to this epic"
|
||||
},
|
||||
"success_criteria": {
|
||||
"type": "array",
|
||||
"items": { "type": "string" },
|
||||
"description": "Optional: list of high-level success criteria for the epic"
|
||||
}
|
||||
},
|
||||
"required": ["name", "goal"]
|
||||
}
|
||||
}),
|
||||
json!({
|
||||
"name": "list_epics",
|
||||
"description": "List all epics with their member work item counts and n/m done rollup.",
|
||||
"inputSchema": {
|
||||
"type": "object",
|
||||
"properties": {}
|
||||
}
|
||||
}),
|
||||
json!({
|
||||
"name": "show_epic",
|
||||
"description": "Show details for a single epic: its content and all member work items with their pipeline stages.",
|
||||
"inputSchema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"epic_id": {
|
||||
"type": "string",
|
||||
"description": "Epic identifier (e.g. '880')"
|
||||
}
|
||||
},
|
||||
"required": ["epic_id"]
|
||||
}
|
||||
}),
|
||||
json!({
|
||||
"name": "close_bug",
|
||||
"description": "Archive a bug from work/2_current/ or work/1_backlog/ to work/5_done/ and auto-commit to master.",
|
||||
|
||||
Reference in New Issue
Block a user