Skip to content

Conversation

@shivasurya
Copy link
Owner

@shivasurya shivasurya commented Nov 9, 2025

Adds logic operators for composing complex security patterns.

Operators:

  • And() - all matchers must match
  • Or() - at least one must match
  • Not() - inverts match result

Features:

  • Supports nesting (And of Ors, Not of And)
  • Works with all matcher types (calls, variable, flows)
  • Full validation (And/Or require ≥2 matchers)

Testing:

  • 30 new tests, 167 total
  • 99% coverage
  • black, ruff, mypy pass

@shivasurya shivasurya marked this pull request as ready for review November 9, 2025 16:57
@safedep
Copy link

safedep bot commented Nov 9, 2025

SafeDep Report Summary

Green Malicious Packages Badge Green Vulnerable Packages Badge Green Risky License Badge

No dependency changes detected. Nothing to scan.

This report is generated by SafeDep Github App

@shivasurya shivasurya changed the title feat(dsl): Add logic operators (And, Or, Not) feat(python): Add logic operators (And, Or, Not) Nov 9, 2025
Copy link
Owner Author

shivasurya commented Nov 10, 2025

Merge activity

  • Nov 10, 4:23 AM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Nov 10, 4:30 AM UTC: Graphite rebased this pull request as part of a merge.
  • Nov 10, 4:31 AM UTC: @shivasurya merged this pull request with Graphite.

@shivasurya shivasurya changed the base branch from pr-04-python-dsl-propagation-phase2 to graphite-base/356 November 10, 2025 04:28
@shivasurya shivasurya changed the base branch from graphite-base/356 to main November 10, 2025 04:29
Implements combinators for composing security patterns:
- And() requires all matchers to match
- Or() requires at least one matcher
- Not() inverts matcher result

Supports nesting (And of Ors, Not of And) and all matcher types
(calls, variable, flows).

Tests: 30 new tests, 167 total, 99% coverage
Linters: black, ruff, mypy pass

🤖 Generated with Claude Code

Co-Authored-By: Claude <[email protected]>
@shivasurya shivasurya force-pushed the pr-05-python-dsl-logic-operators branch from 93c3f58 to b5a9fca Compare November 10, 2025 04:30
@shivasurya shivasurya merged commit 926cd43 into main Nov 10, 2025
1 check passed
@shivasurya shivasurya deleted the pr-05-python-dsl-logic-operators branch November 10, 2025 04:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request python

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants