Merged
Conversation
- Introduced unified node selection system. - Enhanced variable and bracket expansion. - Removed deprecated `source_path` and `sink_path` attributes.
There was a problem hiding this comment.
Pull request overview
This PR updates ngraph to v0.13.0, introducing a unified node selection system and enhanced variable expansion while removing deprecated source_path/sink_path attributes in favor of source/sink.
Key Changes:
- Introduced unified node selector system with dict-based selectors supporting
group_by,match, andactive_only - Enhanced variable expansion with
$varsyntax and bracket expansion for risk groups - Renamed
source_path/sink_pathtosource/sinkacross all TrafficDemand and workflow step interfaces
Reviewed changes
Copilot reviewed 81 out of 81 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| pyproject.toml, ngraph/_version.py | Version bumped to 0.13.0 |
| ngraph/dsl/selectors/* | New unified selector system with schema, normalization, and evaluation |
| ngraph/dsl/expansion/* | New variable expansion system with templates and bracket patterns |
| ngraph/model/demand/spec.py | Updated TrafficDemand with new fields (source/sink, group_mode, expand_vars) |
| ngraph/exec/demand/expand.py | Refactored to use new selector system and variable expansion |
| ngraph/workflow/*.py | Updated workflow steps to use source/sink instead of source_path/sink_path |
| ngraph/schemas/scenario.json | Updated JSON schema with new selector definitions |
| tests/**/*.py | Updated tests to use new API (source/sink, dict selectors) |
| scenarios/*.yaml | Updated example scenarios with new syntax |
| ngraph/utils/nodes.py | Removed (functionality moved to selectors) |
| ngraph/model/failure/conditions.py | Removed (moved to dsl.selectors) |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
source_pathandsink_pathattributes.Note
Introduce unified selector system (string or dict) replacing source_path/sink_path, add variable and bracket expansion across DSL, and update API/docs/tests accordingly.
source_path/sink_pathwith unifiedsource/sinkselectors (string regex or selector dict) across analysis (AnalysisContext, MaxFlow, sensitivity, helpers) and CLI.resolve_parallelism; adjust return/context data; removengraph.utils.nodesand move condition logic todsl.selectors.ngraph.dsl.selectors(schema, normalization, condition evaluation) and use it for adjacency, demands, overrides, workflows.ngraph.dsl.expansion(variable$var/${var}templates, zip/cartesian; name/bracket expansion) and enable bracket expansion in risk group definitions and memberships.source/sink,group_mode,expand_vars,expansion_mode; ID generation updated.selectorOrString, match/group_by), README/examples, and extensive DSL reference/examples; add Claude skill docs.0.13.0; changelog updated.Written by Cursor Bugbot for commit f71b9f0. This will update automatically on new commits. Configure here.