Files
company-haness/.claude/schemas/competitive-market-grounding.artifact.schema.json
T

52 lines
2.0 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"required": [
"assigned-lens", "producer-run-id", "context-package-ref", "context-package-sha256",
"competitors-and-substitutes", "current-alternatives", "strengths-weaknesses",
"differentiation-hypotheses", "evidence-urls"
],
"properties": {
"assigned-lens": {"const": "LENS-REVENUE"},
"producer-run-id": {"type": "string", "minLength": 1},
"context-package-ref": {"type": "string", "minLength": 1},
"context-package-sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"},
"competitors-and-substitutes": {
"type": "array",
"minItems": 2,
"items": {
"type": "object",
"required": ["name", "type", "evidence-urls"],
"properties": {
"name": {"type": "string", "minLength": 1},
"type": {"enum": ["competitor", "substitute"]},
"evidence-urls": {"type": "array", "minItems": 1, "items": {"type": "string", "pattern": "^https?://"}}
}
}
},
"current-alternatives": {"type": "array", "minItems": 1},
"strengths-weaknesses": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": ["subject", "strengths", "weaknesses"],
"properties": {
"subject": {"type": "string", "minLength": 1},
"strengths": {"type": "array", "minItems": 1},
"weaknesses": {"type": "array", "minItems": 1}
}
}
},
"differentiation-hypotheses": {"type": "array", "minItems": 1},
"evidence-urls": {
"type": "array", "minItems": 2, "uniqueItems": true,
"items": {"type": "string", "pattern": "^https?://"}
}
},
"allOf": [
{"properties": {"competitors-and-substitutes": {"contains": {"type": "object", "properties": {"type": {"const": "competitor"}}, "required": ["type"]}}}},
{"properties": {"competitors-and-substitutes": {"contains": {"type": "object", "properties": {"type": {"const": "substitute"}}, "required": ["type"]}}}}
]
}