{"record":{"id":"efa0cebe63a356b0","repo":"deepset-ai/haystack","slug":"break-point-break-point-is-not-a-registered-comp","errorCode":null,"errorMessage":"break_point {break_point} is not a registered component in the pipeline","messagePattern":"break_point (.+?) is not a registered component in the pipeline","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"haystack/core/pipeline/breakpoint.py","lineNumber":52,"sourceCode":"    pipeline snapshots are saved to files. By default (when the variable is not set),\n    saving is disabled. Only \"true\" and \"1\" (case-insensitive) enable saving; any other value disables it.\n\n    :returns: True if snapshot saving is enabled, False otherwise.\n    \"\"\"\n    value = os.environ.get(HAYSTACK_PIPELINE_SNAPSHOT_SAVE_ENABLED, \"false\").lower()\n    return value in (\"true\", \"1\")\n\n\ndef _validate_break_point_against_pipeline(break_point: Breakpoint, graph: MultiDiGraph) -> None:\n    \"\"\"\n    Validates the breakpoints passed to the pipeline.\n\n    Makes sure the breakpoint contains a valid components registered in the pipeline.\n\n    :param break_point: a breakpoint to validate\n    \"\"\"\n    if break_point.component_name not in graph.nodes:\n        raise ValueError(f\"break_point {break_point} is not a registered component in the pipeline\")\n\n\ndef _validate_pipeline_snapshot_against_pipeline(pipeline_snapshot: PipelineSnapshot, graph: MultiDiGraph) -> None:\n    \"\"\"\n    Validates that the pipeline_snapshot contains valid configuration for the current pipeline.\n\n    Raises a PipelineInvalidPipelineSnapshotError if any component in pipeline_snapshot is not part of the\n    target pipeline.\n\n    :param pipeline_snapshot: The saved state to validate.\n    \"\"\"\n\n    pipeline_state = pipeline_snapshot.pipeline_state\n    valid_components = set(graph.nodes.keys())\n\n    # Check if the ordered_component_names are valid components in the pipeline\n    invalid_ordered_components = set(pipeline_snapshot.ordered_component_names) - valid_components\n    if invalid_ordered_components:","sourceCodeStart":34,"sourceCodeEnd":70,"githubUrl":"https://github.com/deepset-ai/haystack/blob/e318778c9bf60a1963e3b5f451359655dd696c30/haystack/core/pipeline/breakpoint.py#L34-L70","documentation":"_validate_break_point_against_pipeline raises a plain ValueError when the break_point of a PipelineSnapshot (or debug run) names a component that is not a node of the current pipeline's graph. Breakpoints must reference existing components so the runner knows where to pause.","triggerScenarios":"Calling pipeline.run(..., break_point=Breakpoint(component_name=\"typo\")) with a misspelled or renamed component; resuming with a snapshot produced by a different/older pipeline whose component set differs.","commonSituations":"Renaming components after saving breakpoints; typos in component_name; sharing snapshots between pipelines that were edited between runs.","solutions":["Correct break_point.component_name to an existing component name (list them via pipeline.components or pipeline.graph.nodes).","Regenerate the snapshot/breakpoint against the current pipeline if components were renamed.","Validate the name before running: check `name in pipeline.graph.nodes`."],"exampleFix":"// before\nbreak_point = Breakpoint(component_name=\"retrievr\", visit_count=1)\n// after\nbreak_point = Breakpoint(component_name=\"retriever\", visit_count=1)","handlingStrategy":"validation","validationCode":"assert break_point.component_name in pipeline.graph.nodes, f\"{break_point.component_name} not in pipeline\"","typeGuard":"def is_valid_breakpoint(bp, pipeline) -> bool:\n    return bp.component_name in pipeline.graph.nodes","tryCatchPattern":"try:\n    result = pipeline.run(data, break_point=bp)\nexcept ValueError as e:\n    logger.error(\"Bad breakpoint: %s\", e)","preventionTips":["Source component names from pipeline.graph.nodes, not string literals","Regenerate breakpoints after renaming pipeline components","Never share breakpoints between differently-defined pipelines"],"tags":["haystack","pipeline","breakpoint","validation"],"backgroundTag":"unknown-component-name","analyzedSha":"e318778c9bf60a1963e3b5f451359655dd696c30","analyzedAt":"2026-08-30T11:45:20.711Z","schemaVersion":2},"datasetVersion":"2026-08-30T13:17:10.514Z"}