#5779·kedro

Expose node groups in the project snapshot

Author: SajidAlamQBCreated Sep 18, 2026Updated Sep 18, 2026
LabelsIssue: Feature Request

Description

Add the output of Pipeline.group_nodes_by() to the inspection snapshot so plugins, the HTTP server and AI tooling can read a project's deployable units without re-deriving them.

Context

ProjectSnapshot describes pipelines, nodes, datasets and parameters, but not groups. Every deployment plugin except kedro-airflow works out its own node-to-task mapping. A serialisable description of groups is what #3094 called "expressing the groups", and it was agreed as the second core item in https://github.com/kedro-org/kedro/issues/2058#issuecomment-5715275626

Scope

  • Add a GroupSnapshot model (name, type, nodes, dependencies) and a groups field on PipelineSnapshot, defaulting to an empty list so existing consumers are unaffected.
  • Populate it in _build_pipeline_snapshots using the namespace strategy.
  • Include each group's boundary inputs and outputs, since that is what a plugin needs to know which datasets must be persisted.
  • Confirm GET /snapshot on the HTTP server returns the new field and update kedro/server/models.py if needed.
  • Tests and an update to the inspection docs page.

Open questions:

Whether the snapshot call should accept a grouping strategy argument, in preparation for strategies beyond namespace? Kedro-Viz is moving to the inspection API, so the field shape should be agreed with Viz before release