{
  "schemaVersion": 1,
  "id": "lesson-plan",
  "version": "2.0.0",
  "contractDigest": "9601780cf9e6afa4bae0ec91eeceb65a15a8c753e81ee7cb4aa8c8c997541dda",
  "title": "Lesson Plan Builder",
  "outputLabel": "Lesson plan",
  "mode": "local-preparation",
  "inputSchema": {
    "type": "object",
    "additionalProperties": false,
    "properties": {
      "grade": {
        "title": "Grade",
        "type": "string",
        "maxLength": 20000
      },
      "subject": {
        "title": "Subject",
        "type": "string",
        "maxLength": 20000
      },
      "standardObjective": {
        "title": "Standard/Objective",
        "type": "string",
        "maxLength": 20000
      },
      "activityType": {
        "title": "Activity Type",
        "type": "string",
        "maxLength": 20000
      },
      "materials": {
        "title": "Materials",
        "type": "string",
        "maxLength": 20000
      },
      "assessmentMethod": {
        "title": "Assessment Method",
        "type": "string",
        "maxLength": 20000
      },
      "duration": {
        "title": "Lesson length (minutes)",
        "type": [
          "string",
          "number"
        ]
      },
      "adapt": {
        "title": "Include learner adaptations?",
        "type": "string",
        "enum": [
          "",
          "Yes",
          "No"
        ],
        "maxLength": 20000
      },
      "adaptations": {
        "title": "Adaptations needed",
        "type": "string",
        "maxLength": 20000,
        "description": "Required only when adapt is Yes."
      }
    },
    "required": [
      "grade",
      "subject",
      "standardObjective",
      "activityType",
      "materials",
      "assessmentMethod",
      "duration",
      "adapt"
    ],
    "allOf": [
      {
        "if": {
          "properties": {
            "adapt": {
              "const": "Yes"
            }
          },
          "required": [
            "adapt"
          ]
        },
        "then": {
          "required": [
            "adaptations"
          ]
        }
      }
    ]
  },
  "sectionSchema": {
    "type": "object",
    "additionalProperties": false,
    "properties": {
      "s1": {
        "type": "string",
        "maxLength": 20000,
        "minLength": 1
      },
      "s2": {
        "type": "string",
        "maxLength": 20000,
        "minLength": 1
      },
      "s3": {
        "type": "string",
        "maxLength": 20000,
        "minLength": 1
      },
      "s4": {
        "type": "string",
        "maxLength": 20000,
        "minLength": 1
      }
    },
    "required": [
      "s1",
      "s2",
      "s3",
      "s4"
    ]
  },
  "humanHandoff": "examples/lesson-plan.html",
  "execution": {
    "local": true,
    "network": false,
    "approval": false
  },
  "checks": "Structure and completeness only; not factual or professional certification."
}