anthropics / claude-code-security-review
File Churn

File change frequency (churn) shows the distribution of file updates (days with at least one commit).

Overview
File Change Frequency Overall
  • There are 2 files with 402 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 0 files changed 51-100 times (0 lines of code)
    • 0 files changed 21-50 times (0 lines of code)
    • 0 files changed 6-20 times (0 lines of code)
    • 2 files changed 1-5 times (402 lines of code)
0% | 0% | 0% | 0% | 100%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 2 files with 402 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 0 files changed by 11-25 contributors (0 lines of code)
    • 0 files changed by 6-10 contributors (0 lines of code)
    • 1 file changed by 2-5 contributors (10 lines of code)
    • 1 file changed by 1 contributor (392 lines of code)
0% | 0% | 0% | 2% | 97%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
py, md, txt, yaml, js, ini, gitignore, json
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
py0% | 0% | 0% | 0% | 100%
js0% | 0% | 0% | 0% | 0%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
claudecode0% | 0% | 0% | 0% | 100%
scripts0% | 0% | 0% | 0% | 0%
ROOT0% | 0% | 0% | 0% | 0%
Most Frequently Changed Files (Top 14)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
constants.py
in claudecode
10 - 2025-08-06 2025-08-10 2 2 +2 / -2 grahamcampbell@users.norepl... dworken@anthropic.com
392 16 2025-11-25 2025-11-25 1 1 +4 / -2 dworken@anthropic.com dworken@anthropic.com
1 -
audit.py
in claudecode
3 -
__init__.py
in claudecode/evals
7 -
prompts.py
in claudecode
11 1
__init__.py
in claudecode
12 -
logger.py
in claudecode
26 1
json_parser.py
in claudecode
47 2
run_eval.py
in claudecode/evals
121 2
164 8
195 4
findings_filter.py
in claudecode
232 3
eval_engine.py
in claudecode/evals
294 11
Files With Most Churn (Top 14)
Based on the number of lines added and deleted across all commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
392 16 2025-11-25 2025-11-25 1 1 +4 / -2 dworken@anthropic.com dworken@anthropic.com
constants.py
in claudecode
10 - 2025-08-06 2025-08-10 2 2 +2 / -2 grahamcampbell@users.norepl... dworken@anthropic.com
1 -
audit.py
in claudecode
3 -
__init__.py
in claudecode/evals
7 -
prompts.py
in claudecode
11 1
__init__.py
in claudecode
12 -
logger.py
in claudecode
26 1
json_parser.py
in claudecode
47 2
run_eval.py
in claudecode/evals
121 2
164 8
195 4
findings_filter.py
in claudecode
232 3
eval_engine.py
in claudecode/evals
294 11
Files With Most Contributors (Top 14)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
constants.py
in claudecode
10 - 2025-08-06 2025-08-10 2 2 +2 / -2 grahamcampbell@users.norepl... dworken@anthropic.com
392 16 2025-11-25 2025-11-25 1 1 +4 / -2 dworken@anthropic.com dworken@anthropic.com
195 4
run_eval.py
in claudecode/evals
121 2
eval_engine.py
in claudecode/evals
294 11
__init__.py
in claudecode/evals
7 -
164 8
json_parser.py
in claudecode
47 2
audit.py
in claudecode
3 -
findings_filter.py
in claudecode
232 3
logger.py
in claudecode
26 1
__init__.py
in claudecode
12 -
prompts.py
in claudecode
11 1
1 -
Files With Least Contributors (Top 14)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
eval_engine.py
in claudecode/evals
294 11
findings_filter.py
in claudecode
232 3
195 4
164 8
run_eval.py
in claudecode/evals
121 2
json_parser.py
in claudecode
47 2
logger.py
in claudecode
26 1
__init__.py
in claudecode
12 -
prompts.py
in claudecode
11 1
__init__.py
in claudecode/evals
7 -
audit.py
in claudecode
3 -
1 -
392 16 2025-11-25 2025-11-25 1 1 +4 / -2 dworken@anthropic.com dworken@anthropic.com
constants.py
in claudecode
10 - 2025-08-06 2025-08-10 2 2 +2 / -2 grahamcampbell@users.norepl... dworken@anthropic.com
Correlations

File Size vs. Number of Changes: 2 points

claudecode/github_action_audit.py x: 392 lines of code y: 1 # changes claudecode/constants.py x: 10 lines of code y: 2 # changes
2.0
# changes
  min: 1.0
  average: 1.5
  25th percentile: 1.0
  median: 1.5
  75th percentile: 2.0
  max: 2.0
0 392.0
lines of code
min: 10.0 | average: 201.0 | 25th percentile: 10.0 | median: 201.0 | 75th percentile: 392.0 | max: 392.0

Number of Contributors vs. Number of Changes: 2 points

claudecode/github_action_audit.py x: 1 # contributors y: 1 # changes claudecode/constants.py x: 2 # contributors y: 2 # changes
2.0
# changes
  min: 1.0
  average: 1.5
  25th percentile: 1.0
  median: 1.5
  75th percentile: 2.0
  max: 2.0
0 2.0
# contributors
min: 1.0 | average: 1.5 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 2.0 | max: 2.0

Number of Contributors vs. File Size: 2 points

claudecode/github_action_audit.py x: 1 # contributors y: 392 lines of code claudecode/constants.py x: 2 # contributors y: 10 lines of code
392.0
lines of code
  min: 10.0
  average: 201.0
  25th percentile: 10.0
  median: 201.0
  75th percentile: 392.0
  max: 392.0
0 2.0
# contributors
min: 1.0 | average: 1.5 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 2.0 | max: 2.0

Number of Changes vs. Line Churn: 7 points

.github/workflows/sast.yml x: 3 # changes y: 81 line churn .github/workflows/test-claudecode.yml x: 1 # changes y: 24 line churn action.yml x: 3 # changes y: 184 line churn README.md x: 5 # changes y: 17 line churn claudecode/github_action_audit.py x: 1 # changes y: 6 line churn claudecode/constants.py x: 2 # changes y: 4 line churn
184.0
line churn
  min: 4.0
  average: 46.0
  25th percentile: 6.0
  median: 17.0
  75th percentile: 81.0
  max: 184.0
0 5.0
# changes
min: 1.0 | average: 2.29 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 3.0 | max: 5.0

Number of Contributors vs. Line Churn: 2 points

claudecode/github_action_audit.py x: 1 # contributors y: 6 line churn claudecode/constants.py x: 2 # contributors y: 4 line churn
6.0
line churn
  min: 4.0
  average: 5.0
  25th percentile: 4.0
  median: 5.0
  75th percentile: 6.0
  max: 6.0
0 2.0
# contributors
min: 1.0 | average: 1.5 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 2.0 | max: 2.0

File Size vs. Line Churn: 2 points

claudecode/github_action_audit.py x: 392 lines of code y: 6 line churn claudecode/constants.py x: 10 lines of code y: 4 line churn
6.0
line churn
  min: 4.0
  average: 5.0
  25th percentile: 4.0
  median: 5.0
  75th percentile: 6.0
  max: 6.0
0 392.0
lines of code
min: 10.0 | average: 201.0 | 25th percentile: 10.0 | median: 201.0 | 75th percentile: 392.0 | max: 392.0