# Gotchas

## God Nodes (high connectivity)

These files have the most connections. Changes here have high blast radius.

- `topogpt3/model.py` (score: 48.70, imported by 13 files)
- `topogpt3/__init__.py` (score: 30.00, imported by 8 files)
- `topogpt3/train.py` (score: 24.40, imported by 4 files)
- `topogpt3/lens_model.py` (score: 14.90, imported by 5 files)
- `topogpt3/inference_hrm.py` (score: 13.60, imported by 2 files)
- `eval/harness.py` (score: 13.20, imported by 3 files)
- `topogpt3/jlens.py` (score: 12.90, imported by 4 files)
- `topogpt3/__main__.py` (score: 12.10)
- `topogpt3/api_server.py` (score: 10.60, imported by 1 files)
- `topogpt3/exploitgym_loader.py` (score: 9.90, imported by 3 files)

## Blast Radius (change impact)

Editing these files can break the listed number of dependents. Run their tests after any change.

- `topogpt3/continuation.py` -- 3 direct, 26 total dependents
- `synthetic_dataset.py` -- 1 direct, 25 total dependents
- `topogpt3/model.py` -- 13 direct, 24 total dependents
- `topogpt3/exploitgym_loader.py` -- 3 direct, 16 total dependents
- `topogpt3/lens_model.py` -- 5 direct, 15 total dependents
- `topogpt3/ewc.py` -- 1 direct, 14 total dependents
- `topogpt3/exploitgym_config.py` -- 1 direct, 14 total dependents
- `topogpt3/jlens.py` -- 4 direct, 14 total dependents
- `topogpt3/merged_config.py` -- 2 direct, 14 total dependents
- `topogpt3/train.py` -- 4 direct, 13 total dependents

## Hotspots (complexity + centrality)

- `topogpt3/model.py` -- complexity: 1.0, centrality: 1.0, combined: 1.0
- `topogpt3/train.py` -- complexity: 0.3, centrality: 0.8, combined: 0.6
- `topogpt3/api_server.py` -- complexity: 0.2, centrality: 0.7, combined: 0.5
- `eval/harness.py` -- complexity: 0.1, centrality: 0.7, combined: 0.5
- `synthetic_dataset.py` -- complexity: 0.2, centrality: 0.6, combined: 0.4
- `topogpt3/inference_hrm.py` -- complexity: 0.4, centrality: 0.4, combined: 0.4
- `topogpt3/jlens.py` -- complexity: 0.2, centrality: 0.5, combined: 0.4
- `topogpt3/lens_model.py` -- complexity: 0.2, centrality: 0.5, combined: 0.4
- `topogpt3/__init__.py` -- complexity: 0.0, centrality: 0.5, combined: 0.3
- `topogpt3/inference.py` -- complexity: 0.3, centrality: 0.3, combined: 0.3

## Dataflow Issues (INFERRED, review each lead)

- `eval/repair.py:140` `main` [UNCHECKED_ALLOC] `base`: Result of allocator stored in `base` is never checked against NULL.
