Skip to content

Serve graph endpoints through the inspection adapter #2659

Description

@jitu5

Parent issue: #2265
Depends on: #2657, #2658, #2687, #2715

Update: The original ticket described an environment flag, two graph providers, live fallback, and a special live path for --params. Those decisions are obsolete. The inspection adapter will be the only engine serving runtime HTTP graph responses, and resolved runtime parameters come from the existing config loader.

Summary

Serve /api/main and /api/pipelines/{id} from the snapshot GraphBuilder. The adapter is already implemented and tested, but these routes still use the old data_access_manager graph path.

Scope

  • Add one small inspection-adapter provider around GraphBuilder.
  • Build and install the provider once during server startup using the selected project, environment, pipeline, catalog configuration, and resolved parameters.
  • Preserve the full graph response contract before cutover: attach .viz stats/styles as node_extras, and in full mode use a same-ID live lookup to supply the resolved dataset_type where the snapshot contains only a raw catalog type string. This enrichment must not change graph topology or IDs.
  • Route /api/main and /api/pipelines/{id} through that provider.
  • Honour --env, --pipeline, and --params.
  • Fail clearly if the adapter cannot be built; do not silently switch to a second graph engine.

At this point the adapter is authoritative only for runtime HTTP graph endpoints. The current live load may remain temporarily for full-mode graph enrichment, node metadata/previews, static export, and notebook/VSCode consumers. Moving /api/nodes/{id}, /api/run-status, and static export is #2660; skipping the live load is #2661; deleting old graph construction is a later cleanup task.

Out of scope

  • An adapter feature flag.
  • LiveDataProvider or automatic live-graph fallback.
  • Node metadata, static export, notebook/VSCode migration, and lite startup.

Acceptance criteria

  • /api/main and every valid /api/pipelines/{id} response come from the inspection adapter.
  • Responses match the captured baseline, including exact IDs, task parameters, node_extras, and resolved dataset types.
  • Existing graph styles, stats, and dataset-type icons do not regress.
  • The requested pipeline and environment are honoured.
  • Typed runtime parameter overrides appear in task-node parameters without changing graph IDs.
  • An unknown pipeline ID returns 404.
  • Provider construction occurs once per server load, not once per request.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

Status
In Progress
Status
No status

Relationships

None yet

Development

No branches or pull requests

Issue actions