{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "additionalProperties": true, "properties": { "validation_policy": { "type": "object", "additionalProperties": true, "properties": { "cycle_acceleration_mode": { "type": "string", "enum": ["standard", "trivial_graph"] }, "baseline_allowlist": { "type": "array", "items": {"type": "string"} }, "baseline_scope": { "type": "string", "enum": ["code_and_tests_only", "all_files"] }, "working_directory": {"type": "string"}, "build_command": {"type": "string"}, "test_command": {"type": "string"}, "group_overrides": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": true, "properties": { "working_directory": {"type": "string"}, "build_command": {"type": "string"}, "test_command": {"type": "string"}, "baseline_allowlist": { "type": "array", "items": {"type": "string"} }, "baseline_scope": { "type": "string", "enum": ["code_and_tests_only", "all_files"] } } } } } }, "tasks": { "type": "array", "items": { "type": "object", "required": ["id", "description", "success_criteria", "files_to_modify", "parallel_group", "depends_on", "status"], "additionalProperties": true, "properties": { "id": {"type": "string", "pattern": "^TASK-\\d+$"}, "name": {"type": "string"}, "parallel_group": {"type": "string"}, "depends_on": {"type": "array", "items": {"type": "string"}}, "description": {"type": "string"}, "production_code_examples": {"type": "string"}, "test_code_examples": {"type": "string"}, "files_to_modify": {"type": "array", "items": {"type": "string"}}, "test_files": {"type": "array", "items": {"type": "string"}}, "findings_references": {"type": "array", "items": {"type": "string"}}, "architecture_constraints": {"type": "object"}, "code_style_constraints": {"type": "object"}, "execution_strategy": {"type": "string", "enum": ["parallel", "sequential"]}, "validation_scope": { "type": "object", "additionalProperties": true, "properties": { "baseline_allowlist": { "type": "array", "items": {"type": "string"} }, "baseline_scope": { "type": "string", "enum": ["code_and_tests_only", "all_files"] }, "working_directory": {"type": "string"}, "build_command": {"type": "string"}, "test_command": {"type": "string"} } }, "success_criteria": {"type": "array", "items": {"type": "string"}}, "status": { "type": "string", "enum": ["PENDING", "ACTIVE", "DONE", "SYNTAX_VALID", "SYNTAX_ERROR", "ACCEPTED", "REJECTED", "ERROR"] }, "attempts": {"type": "integer", "minimum": 0}, "started_at": {"type": ["string", "null"]}, "completed_at": {"type": ["string", "null"]}, "first_code_change_at": {"type": ["string", "null"]}, "last_execution_mode": { "type": ["string", "null"], "enum": ["PARALLEL", "SEQUENTIAL", null] }, "files_modified": {"type": "array", "items": {"type": "string"}}, "validation_details": {"type": ["string", "object", "array", "null"]}, "rejection_reason": {"type": "string"}, "resolution_prompt": {"type": "string"}, "iteration": {"type": "integer"}, "iterations": {"type": "array"}, "created_at": {"type": "string"}, "updated_at": {"type": "string"} }, "not": { "anyOf": [ {"required": ["research_needed"]}, {"required": ["design_decisions"]} ] } } }, "parallel_groups": {"type": "object"}, "execution_order": { "type": "array", "items": { "type": "object", "required": ["group", "strategy"], "properties": { "group": {"type": "string"}, "strategy": {"type": "string", "enum": ["parallel", "sequential"]} } } }, "updated_at": {"type": "string"} }, "required": ["validation_policy", "tasks", "parallel_groups", "execution_order"] }