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

Decouple static workflow graph validation from execution state #13201

Merged
merged 4 commits into from
May 15, 2024

Conversation

krehermann
Copy link
Contributor

The change pre-sages refactoring the workflow validation into chainlink-common for use by CLO.

The point of the change is to decouple the notion of valid yaml (that forms a graph) from the notion of an executable workflow whose steps have mutable step that are updated by the engine when it's executed.

To achieve that, we introduce a StaticWorkflow that is only the intermediate representation from parsing YAML into a valid graph.

Given this graph, we convert it to the pre-existing notion of a workflow.

The next change will be to move the StaticWorkflow into chainlink-common, which is the reason that it's public to start.

Copy link
Contributor

I see you updated files related to core. Please run pnpm changeset in the root directory to add a changeset as well as in the text include at least one of the following tags:

  • #added For any new functionality added.
  • #breaking_change For any functionality that requires manual action for the node to boot.
  • #bugfix For bug fixes.
  • #changed For any change to the existing functionality.
  • #db_update For any feature that introduces updates to database schema.
  • #deprecation_notice For any upcoming deprecation functionality.
  • #internal For changesets that need to be excluded from the final changelog.
  • #nops For any feature that is NOP facing and needs to be in the official Release Notes for the release.
  • #removed For any functionality/config that is removed.
  • #updated For any functionality that is updated.
  • #wip For any change that is not ready yet and external communication about it should be held off till it is feature complete.

bolekk
bolekk previously approved these changes May 15, 2024
ettec
ettec previously approved these changes May 15, 2024
@krehermann krehermann added this pull request to the merge queue May 15, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks May 15, 2024
core/services/workflows/engine.go Show resolved Hide resolved
core/services/workflows/engine.go Outdated Show resolved Hide resolved
core/services/workflows/models.go Outdated Show resolved Hide resolved
core/services/workflows/models.go Outdated Show resolved Hide resolved
core/services/workflows/models.go Outdated Show resolved Hide resolved
core/services/workflows/models.go Show resolved Hide resolved
core/services/workflows/models.go Outdated Show resolved Hide resolved
@krehermann krehermann requested a review from bolekk May 15, 2024 22:25
@krehermann krehermann enabled auto-merge May 15, 2024 22:26
@krehermann krehermann requested a review from ettec May 15, 2024 22:26
@krehermann krehermann added this pull request to the merge queue May 15, 2024
Merged via the queue into develop with commit aeb9f4d May 15, 2024
106 of 107 checks passed
@krehermann krehermann deleted the ks-207/common-wf-spec branch May 15, 2024 23:12
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.

None yet

4 participants