-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathaggregation_config.toml
More file actions
107 lines (81 loc) · 3.29 KB
/
Copy pathaggregation_config.toml
File metadata and controls
107 lines (81 loc) · 3.29 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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# Multi-Signal Responsibility Classification Configuration
#
# This configuration file defines the weights and strategies used for
# aggregating multiple signals to classify function responsibilities.
[weights]
# Signal weights must sum to 1.0
#
# I/O Detection (35%): Primary signal for identifying I/O operations
io_detection = 0.35
# Call Graph Analysis (25%): Identifies orchestration and coordination patterns
call_graph = 0.25
# Type Signatures (15%): Infers responsibility from parameter and return types
type_signatures = 0.15
# Name Heuristics (15%): Uses function names to infer responsibility
name_heuristics = 0.15
# Purity Analysis (5%): Identifies pure computation functions
purity_side_effects = 0.05
# Framework Patterns (5%): Detects framework-specific patterns
framework_patterns = 0.05
[conflict_resolution]
# Strategy to use when signals disagree
# Options: "weighted_voting", "framework_first", "io_first", "highest_confidence"
strategy = "weighted_voting"
# Minimum confidence threshold for classification (0.0 - 1.0)
minimum_confidence = 0.30
# Threshold for framework pattern override (0.0 - 1.0)
# When a framework signal has confidence >= this threshold, it overrides other signals
framework_override_threshold = 0.70
[accuracy]
# Target accuracy goal
target_accuracy = 0.85
# Baseline accuracy (name-based classification alone)
baseline_accuracy = 0.50
[tuning]
# Enable automatic weight tuning based on ground truth corpus
auto_tune = false
# Path to ground truth corpus for validation
ground_truth_path = "tests/responsibility_ground_truth.json"
# Optimization metric: "accuracy", "precision", "recall", "f1"
optimization_metric = "accuracy"
[explainability]
# Include evidence from all signals in classification results
include_evidence = true
# Show alternative classifications with their scores
show_alternatives = true
# Maximum number of alternative classifications to show
max_alternatives = 2
[performance]
# Enable parallel processing for multi-signal analysis
enable_parallel = true
# Maximum performance overhead target (as percentage)
max_overhead_percent = 3.0
[categories]
# Map of responsibility categories and their descriptions
# These are used for documentation and output formatting
[categories.io]
FileIO = "File system I/O operations"
NetworkIO = "Network communication and HTTP requests"
DatabaseIO = "Database queries and transactions"
ConfigurationIO = "Configuration file loading and parsing"
MixedIO = "Multiple types of I/O operations"
[categories.handlers]
HttpRequestHandler = "HTTP request handler (web framework)"
WebSocketHandler = "WebSocket connection handler"
CliHandler = "Command-line interface handler"
DatabaseHandler = "Database connection handler"
[categories.computation]
PureComputation = "Pure mathematical or logical computation"
Validation = "Input validation and verification"
Transformation = "Data transformation between formats"
Parsing = "Parsing text or structured data"
Formatting = "Formatting data for output"
[categories.coordination]
Orchestration = "High-level workflow orchestration"
Coordination = "Coordination between components"
ErrorHandling = "Error handling and recovery"
[categories.testing]
TestFunction = "Unit or integration test function"
[categories.other]
SideEffects = "Functions with side effects"
Unknown = "Unable to classify responsibility"