Files
company-haness/.claude/schemas/venture-validation.artifact.schema.json

58 lines
2.3 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#", "type": "object",
"required": ["source-artifact-refs", "hypotheses", "experiments", "evidence", "option-evaluations", "kill-criteria", "recommendation"],
"properties": {
"source-artifact-refs": {
"type": "array", "minItems": 2,
"items": {
"type": "object",
"required": ["artifact-id", "artifact-sha256"],
"properties": {
"artifact-id": {"type": "string", "minLength": 1},
"artifact-sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"}
}
}
},
"hypotheses": {"type": "array", "minItems": 1}, "experiments": {"type": "array", "minItems": 1},
"evidence": {"type": "array", "minItems": 1},
"option-evaluations": {
"type": "array", "minItems": 2,
"items": {
"type": "object",
"required": [
"id", "customer", "painful-job", "current-alternative", "wedge",
"monetization", "expected-price", "reachable-customers", "rough-revenue-ceiling",
"acquisition-channel", "build-cost", "operation-cost", "founder-fit", "defensibility",
"kill-criteria", "unresolved-assumptions", "validation-results"
],
"properties": {
"id": {"type": "string", "minLength": 1},
"kill-criteria": {"type": "array", "minItems": 1},
"unresolved-assumptions": {"type": "array"},
"validation-results": {
"type": "array", "minItems": 9,
"items": {
"type": "object",
"required": ["option-id", "gate", "verdict", "evidence", "dissent"],
"properties": {
"option-id": {"type": "string", "minLength": 1},
"gate": {
"enum": [
"problem-intensity", "competition-alternatives", "willingness-to-pay",
"revenue-unit-economics", "tech-feasibility-moat", "operability",
"distribution", "founder-fit", "kill-criteria"
]
},
"verdict": {"enum": ["pass", "fail", "unknown"]},
"evidence": {"type": "array"},
"dissent": {"type": "array"}
}
}
}
}
}
},
"kill-criteria": {"type": "array", "minItems": 1}, "recommendation": {"type": "string", "minLength": 1}
}
}