{
  "schema_version": 1,
  "node_key": "generalise_across_contexts",
  "goal": "Demonstrate the target skill in at least two meaningful contexts.",
  "eligible_concept_keys": [
    "home",
    "school",
    "clinic",
    "sleep",
    "play",
    "wash",
    "finished",
    "snack_time",
    "hand_washing"
  ],
  "response_modes": [
    "touch",
    "pointing",
    "gesture",
    "eye_gaze",
    "aac",
    "sign",
    "vocalisation",
    "speech",
    "observed"
  ],
  "prompt_hierarchy": [
    "independent",
    "natural_cue",
    "visual_cue",
    "gesture",
    "verbal_cue",
    "partial_model",
    "full_model",
    "physical_assistance"
  ],
  "activities": [
    {
      "activity_key": "generalise_across_contexts_exposure",
      "template": "exposure",
      "purpose": "new",
      "field_size": 1,
      "prompt_start": "full_model_or_visual",
      "advance_when": "engagement_and_access_confirmed"
    },
    {
      "activity_key": "generalise_across_contexts_recognition",
      "template": "single_choice",
      "purpose": "acquisition",
      "field_size": 2,
      "prompt_start": "least_supportive_safe_prompt",
      "advance_when": "3_independent_correct"
    },
    {
      "activity_key": "generalise_across_contexts_discrimination",
      "template": "discrimination",
      "purpose": "practice",
      "field_size": "2_to_4",
      "prompt_start": "independent",
      "advance_when": "accuracy_and_independence_threshold_met"
    },
    {
      "activity_key": "generalise_across_contexts_functional_use",
      "template": "natural_routine",
      "purpose": "generalisation",
      "field_size": "contextual",
      "prompt_start": "natural_cue",
      "advance_when": "demonstrated_with_2_people_and_2_contexts"
    },
    {
      "activity_key": "generalise_across_contexts_retention",
      "template": "probe",
      "purpose": "maintenance",
      "field_size": "matched_to_last_success",
      "prompt_start": "independent",
      "advance_when": "retained_after_configured_interval"
    }
  ],
  "difficulty_rules": {
    "increase": "3 consecutive independent correct responses",
    "decrease": "2 consecutive incorrect responses or increased distress",
    "hold": "prompt dependency is increasing",
    "clinician_override": true
  },
  "trial_fields": [
    "node",
    "concept",
    "language",
    "activity",
    "stimulus",
    "target",
    "distractors",
    "response_mode",
    "response",
    "correct",
    "prompt",
    "attempt",
    "latency_ms",
    "context",
    "partner",
    "rating",
    "timestamp"
  ],
  "review_status": "clinical_review_required"
}
