{"record":{"id":"428123ee04f17c82","repo":"tensorflow/models","slug":"error-validating-configuration-structure-in-yaml","errorCode":null,"errorMessage":"Error validating configuration structure in {yaml_path}: {err}","messagePattern":"Error validating configuration structure in (.+?): (.+?)","errorType":"exception","errorClass":"ConfigurationError","httpStatus":null,"severity":"error","filePath":"official/projects/waste_identification_ml/model_inference_with_tracking/sam3_dinov3_tracking_pipeline/config_loader.py","lineNumber":407,"sourceCode":"              sam3=SAM3Config(**models_data[\"sam3\"]),\n              dinov3=DINOv3Config(**dinov3_data),\n          ),\n          classes=classes,\n          detection=DetectionConfig(\n              active_prompt=data[\"detection\"][\"active_prompt\"],\n              image_file_extensions=list(\n                  data[\"detection\"][\"image_file_extensions\"]\n              ),\n              configs=prompt_configs,\n          ),\n          tracking=TrackingConfig(**data[\"tracking\"]),\n          visualization=VisualizationConfig(**visualization_data),\n          collapsed_categories=collapsed_categories,\n      )\n    except ConfigurationError:\n      raise\n    except Exception as err:\n      raise ConfigurationError(\n          f\"Error validating configuration structure in {yaml_path}: {err}\"\n      ) from err\n\n\n","sourceCodeStart":389,"sourceCodeEnd":412,"githubUrl":"https://github.com/tensorflow/models/blob/e006f5f0d534913e49c1f1dae87364039fa607e2/official/projects/waste_identification_ml/model_inference_with_tracking/sam3_dinov3_tracking_pipeline/config_loader.py#L389-L412","documentation":"Wrapper raised in PipelineConfig.from_yaml around structured validation of the parsed YAML sections: while constructing the typed sub-configs (SAM3Config, DINOv3Config, DetectionConfig, TrackingConfig, VisualizationConfig) a ValidationError or KeyError escaped — typically a missing required key or a wrong field type in one of the config sections. The original error text is appended, and the file path identifies which config is at fault.","triggerScenarios":"Thrown at official/projects/waste_identification_ml/model_inference_with_tracking/sam3_dinov3_tracking_pipeline/config_loader.py:407 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Read the appended validation error to find the failing section and field","Add missing required keys under models.sam3, models.dinov3, detection, tracking, or visualization","Correct field types (strings vs numbers vs lists) to match the config schema","Compare against a known-good example YAML for the pipeline"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e006f5f0d534913e49c1f1dae87364039fa607e2","analyzedAt":"2026-08-24T14:09:15.576Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}