Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add required start and end nodes and allow chatting to subset of pipelines #929

Draft
wants to merge 14 commits into
base: main
Choose a base branch
from

Conversation

proteusvacuum
Copy link
Collaborator

Description

This adds the requirement that there is always a single Start and End node, and that there is an accessible path between them.

When building up the pipeline graph, we can now traverse from the start node to the end node, so testing subgraphs of the pipeline in the pipeline builder is now possible by moving where the start and end points to.

This also adds automatically incrementing "New Pipeline" names, and adds a migration to create start and end nodes for existing pipelines.

I also did a refactor of the pipeline tests to make them less verbose and make things a bit easier to read.

User Impact

Users will be required to have start and end nodes in their pipelines which clarifies the flow of data.

Demo

Screencast.from.2024-11-28.13-18-49.mp4

Fixes: #638

Docs

@codecov-commenter
Copy link

codecov-commenter commented Nov 28, 2024

❌ 1 Tests Failed:

Tests completed Failed Passed Skipped
785 1 784 0
View the top 1 failed tests by shortest run time
apps/service_providers/tests/test_models.py::TestServiceProviderModel::test_cannot_delete_provider_models_with_associated_pipeline
Stack Traces | 1.14s run time
.../service_providers/tests/test_models.py:81: in test_cannot_delete_provider_models_with_associated_pipeline
    provider_model = LlmProviderModel.objects.get(id=node.params["llm_provider_model_id"])
.../hostedtoolcache/Python/3.11.10....../x64/lib/python3.11.../db/models/manager.py:87: in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
.../hostedtoolcache/Python/3.11.10....../x64/lib/python3.11.../db/models/query.py:649: in get
    raise self.model.DoesNotExist(
E   apps.service_providers.models.LlmProviderModel.DoesNotExist: LlmProviderModel matching query does not exist.

To view more test analytics, go to the Test Analytics Dashboard
📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add an entry point node to pipelines v2
2 participants