88 lines
2.5 KiB
JSON
88 lines
2.5 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "Epic Issue Assessment",
|
|
"description": "Schema for epic/umbrella issue analysis results",
|
|
"type": "object",
|
|
"required": ["is_epic", "issue", "analysis"],
|
|
"properties": {
|
|
"is_epic": {
|
|
"type": "boolean",
|
|
"const": true,
|
|
"description": "Must be true for the pipeline to proceed. Set to false if the issue is not an epic or umbrella issue."
|
|
},
|
|
"issue": {
|
|
"type": "object",
|
|
"required": ["number", "title", "body", "repository", "url"],
|
|
"properties": {
|
|
"number": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"body": {
|
|
"type": "string"
|
|
},
|
|
"repository": {
|
|
"type": "string",
|
|
"pattern": "^[^/]+/[^/]+$"
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"format": "uri"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": { "type": "string" }
|
|
},
|
|
"existing_issues": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"number": { "type": "integer" },
|
|
"title": { "type": "string" },
|
|
"labels": { "type": "array", "items": { "type": "string" } }
|
|
}
|
|
},
|
|
"description": "Existing issues in the repo to avoid duplication"
|
|
}
|
|
}
|
|
},
|
|
"analysis": {
|
|
"type": "object",
|
|
"required": ["scope_summary", "proposed_issues_count", "complexity"],
|
|
"properties": {
|
|
"scope_summary": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"description": "Brief summary of what the epic covers"
|
|
},
|
|
"proposed_issues_count": {
|
|
"type": "integer",
|
|
"minimum": 1,
|
|
"maximum": 15,
|
|
"description": "Number of sub-issues to create"
|
|
},
|
|
"complexity": {
|
|
"type": "string",
|
|
"enum": ["small", "medium", "large", "epic"],
|
|
"description": "Overall complexity of the work"
|
|
},
|
|
"key_themes": {
|
|
"type": "array",
|
|
"items": { "type": "string" },
|
|
"description": "Major themes or categories of work identified"
|
|
},
|
|
"risks": {
|
|
"type": "array",
|
|
"items": { "type": "string" },
|
|
"description": "Identified risks or concerns"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|