Skip to content

Conversation

@rabbitstack
Copy link
Owner

What is the purpose of this PR / why it is needed?

Events can arrive in non-deterministic order since they are published by independent providers. The side effect of this can translate in the form of a missing process state. Imagine the OpenProcess event arriving from the process before the process's own creation event. To mitigate this bad behavior, we always check the process state before evaluating out-of-order events.

What type of change does this PR introduce?


Uncomment one or more /kind <> lines:

/kind feature (non-breaking change which adds functionality)

/kind bug-fix (non-breaking change which fixes an issue)

/kind refactor (non-breaking change that restructures the code, while not changing the original functionality)

/kind breaking (fix or feature that would cause existing functionality to not work as expected

/kind cleanup

/kind improvement

/kind design

/kind documentation

/kind other (change that doesn't pertain to any of the above categories)

Any specific area of the project related to this PR?


Uncomment one or more /area <> lines:

/area instrumentation

/area telemetry

/area rule-engine

/area filters

/area yara

/area event

/area captures

/area alertsenders

/area outputs

/area rules

/area filaments

/area config

/area cli

/area tests

/area ci

/area build

/area docs

/area deps

/area other

Special notes for the reviewer


Does this PR introduce a user-facing change?


Events can arrive in non-deterministic order since they are published by independent providers. The side effect of this can translate in form of a missing process state. Imagine OpenProcess event arriving from the process before the
process' own creation event. To mitigate this bad behaviour, we always check the process state before evaluating  out of order events.
@rabbitstack rabbitstack added the rule-engine Anything related to the rule engine label Mar 28, 2025
@rabbitstack rabbitstack merged commit 3b8bb5c into master Mar 29, 2025
9 checks passed
@rabbitstack rabbitstack deleted the initialize-process-state-in-out-of-order-sequence-events branch March 29, 2025 13:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

rule-engine Anything related to the rule engine

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants