-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathimpactguard.toml
More file actions
70 lines (70 loc) · 4.37 KB
/
Copy pathimpactguard.toml
File metadata and controls
70 lines (70 loc) · 4.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# ImpactGuard configuration.
#
# The detect_periodicity signature change (peak_to_median -> alpha) is an
# intentional, user-approved API change (Fisher's g-test significance gate).
# The only caller (report.py) passes no parameter that was renamed, so the
# change is non-breaking in practice; suppress it so the gate does not block.
#
# The poly_gcd removal from berlekamp_massey.py is an intentional refactor:
# the function was consolidated into gf2_common.py as the single source of
# truth for GF(2) polynomial operations, and berlekamp_massey.py now imports
# it from there instead of defining it locally.
#
# The find/union removal from overlap_density.py is an intentional refactor:
# they were nested closures inside _build_clusters (never exported, never
# called from outside that function) and were hoisted into a _UnionFind
# class so the disjoint-set logic is unit-testable in its own right. The
# only external import of the module is compute_corpus_overlap_density.
#
# The UCB scheduler consolidation moved init_arm, record, select_op, and
# the helper methods (discounted_counts/means, windowed_counts/means) from
# four individual scheduler modules into ucb_common.py base classes. The
# public class API is unchanged — methods are inherited, not removed.
#
# Format: full path relative to repo root, then :Class.method.
[impactguard.analysis]
suppress = [
"src/fuzzer_tool/core/periodicity.py:detect_periodicity",
"src/fuzzer_tool/core/berlekamp_massey.py:poly_gcd",
"src/fuzzer_tool/core/overlap_density.py:find",
"src/fuzzer_tool/core/overlap_density.py:union",
# DUCB → DiscountedUCBBase (methods inherited, not removed)
"src/fuzzer_tool/core/schedulers/ducb.py:DUCBScheduler.init_arm",
"src/fuzzer_tool/core/schedulers/ducb.py:DUCBScheduler.record",
"src/fuzzer_tool/core/schedulers/ducb.py:DUCBScheduler.select_op",
"src/fuzzer_tool/core/schedulers/ducb.py:DUCBScheduler.discounted_counts",
"src/fuzzer_tool/core/schedulers/ducb.py:DUCBScheduler.discounted_means",
# KL-DUCB → DiscountedUCBBase
"src/fuzzer_tool/core/schedulers/kl_ducb.py:KL_DUCBScheduler.init_arm",
"src/fuzzer_tool/core/schedulers/kl_ducb.py:KL_DUCBScheduler.record",
"src/fuzzer_tool/core/schedulers/kl_ducb.py:KL_DUCBScheduler.select_op",
"src/fuzzer_tool/core/schedulers/kl_ducb.py:KL_DUCBScheduler.discounted_counts",
"src/fuzzer_tool/core/schedulers/kl_ducb.py:KL_DUCBScheduler.discounted_means",
# SW-UCB → WindowedUCBBase
"src/fuzzer_tool/core/schedulers/swucb.py:SWUCBScheduler.init_arm",
"src/fuzzer_tool/core/schedulers/swucb.py:SWUCBScheduler.record",
"src/fuzzer_tool/core/schedulers/swucb.py:SWUCBScheduler.select_op",
"src/fuzzer_tool/core/schedulers/swucb.py:SWUCBScheduler.windowed_counts",
"src/fuzzer_tool/core/schedulers/swucb.py:SWUCBScheduler.windowed_means",
# KL-SW-UCB → WindowedUCBBase
"src/fuzzer_tool/core/schedulers/kl_swucb.py:KL_SWUCBScheduler.init_arm",
"src/fuzzer_tool/core/schedulers/kl_swucb.py:KL_SWUCBScheduler.record",
"src/fuzzer_tool/core/schedulers/kl_swucb.py:KL_SWUCBScheduler.select_op",
"src/fuzzer_tool/core/schedulers/kl_swucb.py:KL_SWUCBScheduler.windowed_counts",
"src/fuzzer_tool/core/schedulers/kl_swucb.py:KL_SWUCBScheduler.windowed_means",
# ucb_common.py cascade: concrete implementations of abstract UCBBase
"src/fuzzer_tool/core/schedulers/ucb_common.py:UCBBase.bandit_stats",
"src/fuzzer_tool/core/schedulers/ucb_common.py:UCBBase.init_arm",
"src/fuzzer_tool/core/schedulers/ucb_common.py:UCBBase.record",
"src/fuzzer_tool/core/schedulers/ucb_common.py:UCBBase.select_op",
"src/fuzzer_tool/core/schedulers/ucb_common.py:DiscountedUCBBase.bandit_stats",
"src/fuzzer_tool/core/schedulers/ucb_common.py:DiscountedUCBBase.init_arm",
"src/fuzzer_tool/core/schedulers/ucb_common.py:DiscountedUCBBase.record",
"src/fuzzer_tool/core/schedulers/ucb_common.py:DiscountedUCBBase.select_op",
"src/fuzzer_tool/core/schedulers/ucb_common.py:WindowedUCBBase.bandit_stats",
"src/fuzzer_tool/core/schedulers/ucb_common.py:WindowedUCBBase.init_arm",
"src/fuzzer_tool/core/schedulers/ucb_common.py:WindowedUCBBase.record",
"src/fuzzer_tool/core/schedulers/ucb_common.py:WindowedUCBBase.select_op",
"src/fuzzer_tool/core/schedulers/ucb_common.py:WindowedUCBBase.windowed_counts",
"src/fuzzer_tool/core/schedulers/ucb_common.py:WindowedUCBBase.windowed_means",
]