NAME

Claude::Agent::Code::Review::Filter - Filter false positive issues from AI review

SYNOPSIS

use Claude::Agent::Code::Review::Filter;

my @filtered = Claude::Agent::Code::Review::Filter->filter(
    issues => \@issues,
);

# With custom filters
my @filtered = Claude::Agent::Code::Review::Filter->filter(
    issues  => \@issues,
    filters => [
        sub {
            my ($issue, $context) = @_;
            # Return 1 to filter (remove), 0 to keep
            return $issue->description =~ /known false positive/i ? 1 : 0;
        },
    ],
);

DESCRIPTION

Filters out likely false positive issues from AI code review by checking the actual code context. This helps reduce noise from non-deterministic AI review results.

METHODS

filter

my @filtered = Claude::Agent::Code::Review::Filter->filter(
    issues  => \@issues,
    filters => \@custom_filters,  # optional
);

Returns a filtered list of issues, removing likely false positives.

Custom filters are coderefs that receive ($issue, $context) where $context is the surrounding code (5 lines before/after). Return 1 to filter out the issue, 0 to keep it.

count_filtered

my ($kept, $removed) = Claude::Agent::Code::Review::Filter->count_filtered(
    original => \@original,
    filtered => \@filtered,
);

Returns count of issues kept and removed.

AUTHOR

LNATION, <email at lnation.org>

LICENSE

This software is Copyright (c) 2026 by LNATION.

This is free software, licensed under The Artistic License 2.0 (GPL Compatible).