Add Wave contract schemas for pipeline validation
JSON Schema definitions for all pipeline handover contracts including issue analysis, research, enhancement, and sync flows. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
85
.wave/contracts/web-findings.schema.json
Normal file
85
.wave/contracts/web-findings.schema.json
Normal file
@@ -0,0 +1,85 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||
"title": "Web Findings",
|
||||
"description": "Structured web research results for a given topic",
|
||||
"type": "object",
|
||||
"required": ["topic", "sources", "search_queries"],
|
||||
"properties": {
|
||||
"topic": {
|
||||
"type": "string",
|
||||
"description": "The topic that was researched"
|
||||
},
|
||||
"sources": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"required": ["url", "title", "key_ideas", "relevance_to_topic"],
|
||||
"properties": {
|
||||
"url": {
|
||||
"type": "string",
|
||||
"format": "uri",
|
||||
"description": "Source URL"
|
||||
},
|
||||
"title": {
|
||||
"type": "string",
|
||||
"description": "Article or page title"
|
||||
},
|
||||
"author": {
|
||||
"type": "string",
|
||||
"description": "Author name if available"
|
||||
},
|
||||
"date": {
|
||||
"type": "string",
|
||||
"description": "Publication date if available"
|
||||
},
|
||||
"key_ideas": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": { "type": "string" },
|
||||
"description": "Key ideas extracted from the source"
|
||||
},
|
||||
"quotes": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"required": ["text"],
|
||||
"properties": {
|
||||
"text": {
|
||||
"type": "string",
|
||||
"description": "Direct quote from source"
|
||||
},
|
||||
"context": {
|
||||
"type": "string",
|
||||
"description": "Context for the quote"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Notable direct quotes"
|
||||
},
|
||||
"relevance_to_topic": {
|
||||
"type": "number",
|
||||
"minimum": 0,
|
||||
"maximum": 1,
|
||||
"description": "Relevance score (0-1)"
|
||||
},
|
||||
"source_type": {
|
||||
"type": "string",
|
||||
"enum": ["blog_post", "academic_paper", "documentation", "news_article", "conference_talk", "book_excerpt", "other"],
|
||||
"description": "Type of source"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "Web sources found and analyzed"
|
||||
},
|
||||
"search_queries": {
|
||||
"type": "array",
|
||||
"items": { "type": "string" },
|
||||
"description": "Search queries that were executed"
|
||||
},
|
||||
"timestamp": {
|
||||
"type": "string",
|
||||
"format": "date-time"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user