Skip to content

Model validation (valid model topology etc) #95

@toby-coleman

Description

@toby-coleman

Implement validation checks in plugboard-schemas for Process objects. Start with implementing the following checks:

  1. Check that all component inputs are connected.
  2. Check all components with input events, and make sure there exists in the process a component that outputs the required event type.
  3. Check for circular connections within the process topology. These circular loops must only be considered valid if there are initial_values set on an appropriate component input within the loop.

For (3) we can use Johnson's algorithm to find all simple circuits within the process. Implement this as a utility in plugboard-schemas, i.e. try not to introduce additional dependencies. Info on the algorithm can be found at https://github.com/qpwo/python-simple-cycles/blob/master/johnson.py.

Metadata

Metadata

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions