Howdy!

The filter error stats make some sense but it's kinda considered a configuration error which a user should generally avoid, so the number is expected to stay at zero in regular deployment.

What is worse, it's gonna change the CLI output format expected by users' tooling. That problem will be fixed by implementing the API, we'll revisit this topic then.

The error message update is a reasonable thing. Please check other community flavors so that everything gets fixed at once. It would be even better if you could update the filter/test.conf and maybe filter/filter_test.c so that there is some basic unit test for these filter runtime failure messages.

Note: it would be helpful if you prepared your commit messages in the same style and format as the other recent commits use.

Thanks!
Maria


On August 11, 2026 8:55:29 PM GMT+02:00, Alice39s <alice39s@xmsl.dev> wrote:
Hi,

Filter runtime errors (`F_ERROR`) currently share filtered counters and the
`filtered out` route trace with intentional policy rejects (`F_REJECT`). The
detailed interpreter error is rate-limited, which can make route-dependent
filter failures difficult to classify.

One example is constructing a standard-community pair from a 32-bit Large
Community field. Configuration parsing succeeds because the concrete value is
route-dependent, but a value above 65535 correctly fails the pair constructor
at runtime.

This series:

1. reports both evaluated values in pair range errors;
2. keeps the existing filtered aggregate, adds a runtime-error subset for
import and export, and uses a distinct route trace;
3. documents runtime pair checks and a safe LC-field guard.

The series does not change log rate limits or add another error-log source.
Silent export evaluations do not alter the new counters, and import
keep-filtered behavior is unchanged.

Base: thread-next 06ca9bf5c588df6c0587eb64bd375eb0ade526ab

Validation:

- autoreconf, configure, full build, and make check;
- BIRD user and programmer HTML documentation;
- daemon-level import/export errors and explicit-reject controls;
- keep-filtered and silent export-query behavior.

An equivalent series for current master is available if this should also land
in BIRD 2.

Alice39s (3):
filter: report values for out-of-range pair components
nest: track filter runtime errors in channel statistics
doc: explain pair construction range failures

Thanks,
Alice39s
alice39s@xmsl.dev
--
Maria Matejka (she/her) | BIRD Team Leader | CZ.NIC, z.s.p.o.