Skip to content

fix: load no evttype false positive - #3918

Merged
poiana merged 3 commits into
masterfrom
fix/load-no-evttype-false-positive
Jun 17, 2026
Merged

poiana merged 3 commits into
masterfrom
fix/load-no-evttype-false-positive

Conversation

@leogr

@leogr leogr commented Jun 10, 2026

Copy link
Copy Markdown
Member

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

/kind release

If this PR prepares a chart release, uncomment:

/kind chart-release

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area engine

/area tests

/area proposals

/area automation

/area chart

Falco was emitting LOAD_NO_EVTTYPE ("Rule matches too many evt.type values...") for rules whose condition is statically unsatisfiable - notably the documented never_true idiom (evt.num=0) - which is the opposite of what's actually happening: those rules match nothing.

Since falcosecurity/libs#3009, the event-code analyzer resolves such conditions to the empty set. This PR bumps libs to latest master and changes the warning gate to fire only on genuinely broad conditions (size() > 100), instead of conflating "matches nothing" with "matches too much".

Which issue(s) this PR fixes:

Fixes #3883

Special notes for your reviewer:

  • The libs bump and the gate change must ship together: with the new libs only, the common ... and never_true tuning pattern would start producing empty sets and trigger the old warning.
  • Explicit contradictions (e.g. evt.type=open and evt.type=close) now load silently too. This is intentional: a dead-rule diagnostic is a separate UX design (with its own suppressibility), out of scope here.
  • Minor side effects of the more precise analysis: falco -V reports "Ok" instead of "Ok, with warnings" for placeholder-only rules, and their falco -L events list is no longer the full set.

/milestone 0.45.0

Does this PR introduce a user-facing change?:

fix(engine): do not emit the `LOAD_NO_EVTTYPE` warning for rules with statically unsatisfiable conditions (e.g. the `never_true` placeholder idiom)

leogr added 3 commits June 10, 2026 14:50
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
…conditions

Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
…oad conditions

Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
@github-actions

Copy link
Copy Markdown

This PR may bring feature or behavior changes in the Falco engine and may require the engine version to be bumped.

Please double check userspace/engine/falco_engine_version.h file. See versioning for FALCO_ENGINE_VERSION.

/hold

@ekoops ekoops left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/approve

@poiana poiana added the lgtm label Jun 16, 2026
@leogr leogr changed the title wip: fix: load no evttype false positive fix: load no evttype false positive Jun 16, 2026
@leogr
leogr requested review from jasondellaluce and sgaist June 16, 2026 09:11
# -DFALCOSECURITY_LIBS_VERSION=dev ..`
if(NOT FALCOSECURITY_LIBS_VERSION)
set(FALCOSECURITY_LIBS_VERSION "0.25.4")
set(FALCOSECURITY_LIBS_VERSION "01b5cf7ffb294bc6605bc745b327e43f8cf55b40")

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just wondering: is the semantic version number being dropped or is it just for this change to be functioning ?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This updates the current libs version, bringing in the libs implementation this PR depends on.
The temporary bump is equivalent to #3923

Later, FALCOSECURITY_LIBS_VERSION will be bumped with the correct version once a stable libs release is out.

@github-project-automation github-project-automation Bot moved this from Todo to In progress in Falco Roadmap Jun 16, 2026
@poiana

poiana commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ekoops, leogr, sgaist

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:
  • OWNERS [ekoops,leogr,sgaist]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@leogr

leogr commented Jun 17, 2026

Copy link
Copy Markdown
Member Author

/hold cancel

@poiana
poiana merged commit aae6d09 into master Jun 17, 2026
34 checks passed
@poiana
poiana deleted the fix/load-no-evttype-false-positive branch June 17, 2026 08:02
@github-project-automation github-project-automation Bot moved this from In progress to Done in Falco Roadmap Jun 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

LOAD_NO_EVTTYPE false positive: rules using statically-unsatisfiable conditions (e.g. the never_true idiom)

4 participants