Files
company-haness/.claude/schemas/first-draft-evaluation.artifact.schema.json

54 lines
2.5 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"required": ["experiment-id", "subject", "arm-id", "model-id", "request-sha256", "first-result-only", "revision-count-at-capture", "output-ref", "output-sha256", "screenshots", "evaluator-blinded", "metrics"],
"properties": {
"experiment-id": {"type": "string", "minLength": 1},
"subject": {"type": "string", "minLength": 1},
"arm-id": {"enum": ["A", "B"]},
"model-id": {"type": "string", "minLength": 1},
"request-sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"},
"first-result-only": {"const": true},
"revision-count-at-capture": {"const": 0},
"output-ref": {"type": "string", "minLength": 1},
"output-sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"},
"screenshots": {
"type": "object",
"required": ["desktop", "mobile"],
"properties": {
"desktop": {"$ref": "#/definitions/fileEvidence"},
"mobile": {"$ref": "#/definitions/fileEvidence"}
}
},
"evaluator-blinded": {"const": true},
"metrics": {
"type": "object",
"required": ["product-purpose-understood-in-5s", "primary-action-found", "information-hierarchy", "category-quality-parity", "visual-craft", "mobile-clarity", "design-system-consistency", "human-preference", "revision-count-to-acceptance", "tokens-to-acceptance"],
"properties": {
"product-purpose-understood-in-5s": {"type": "integer", "minimum": 1, "maximum": 5},
"primary-action-found": {"type": "integer", "minimum": 1, "maximum": 5},
"information-hierarchy": {"type": "integer", "minimum": 1, "maximum": 5},
"category-quality-parity": {"type": "integer", "minimum": 1, "maximum": 5},
"visual-craft": {"type": "integer", "minimum": 1, "maximum": 5},
"mobile-clarity": {"type": "integer", "minimum": 1, "maximum": 5},
"design-system-consistency": {"type": "integer", "minimum": 1, "maximum": 5},
"human-preference": {"type": "integer", "minimum": 1, "maximum": 5},
"revision-count-to-acceptance": {"type": "integer", "minimum": 0},
"tokens-to-acceptance": {"type": "integer", "minimum": 0}
},
"additionalProperties": false
}
},
"definitions": {
"fileEvidence": {
"type": "object",
"required": ["path", "sha256"],
"properties": {
"path": {"type": "string", "minLength": 1},
"sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"}
}
}
},
"additionalProperties": true
}