Project Review
Anomalies are review candidates, not proven bugs.
Analysis cache: cache_disabled
Start here: review confirmed findings first; then inspect the highest review-breadth targets before making broad changes.
What needs attention?
What should I review if I change this?
Where is the evidence?
Review first
Review breadth is prioritization metadata, not defect truth.
| # | Target | Breadth | Files | State coupled | Boundaries |
|---|---|---|---|---|---|
| 1 | cli.py | 616 | 12 | 1 | 412 |
| 2 | cache.py | 265 | 5 | 0 | 191 |
| 3 | impact.py | 224 | 6 | 0 | 176 |
| 4 | analyzer.py | 218 | 4 | 0 | 168 |
| 5 | impact.py | 216 | 6 | 0 | 168 |
| 6 | semantic_diff.py | 193 | 3 | 0 | 147 |
| 7 | product_ui.py | 175 | 3 | 0 | 139 |
| 8 | report.py | 174 | 3 | 0 | 143 |
| 9 | semantic_diff.py | 165 | 3 | 0 | 139 |
| 10 | product_ui.py | 150 | 3 | 0 | 123 |
| 11 | report.py | 149 | 3 | 0 | 125 |
| 12 | pr_review.py | 149 | 3 | 0 | 127 |
Current findings
Confirmed defects: 0
Anomalies: 13
Hotspots: 142
A hotspot means “review-worthy,” not “wrong.” Unknown remains unknown.
Scope
Repository → semantic graph → data/state closure → impact → findings
Python-only, static-first. Dynamic dispatch, reflection, native behavior, precise runtime path probability, and concurrency remain outside the current strong claim.
Findings
| Severity | Class | Type | Location | Symbol | Evidence statement |
|---|---|---|---|---|---|
| info | anomaly | static_call_cycle | : | Resolved local calls form a cycle; may be intentional recursion. | |
| info | anomaly | static_call_cycle | : | Resolved local calls form a cycle; may be intentional recursion. | |
| info | anomaly | static_call_cycle | : | Resolved local calls form a cycle; may be intentional recursion. | |
| info | anomaly | static_call_cycle | : | Resolved local calls form a cycle; may be intentional recursion. | |
| info | anomaly | static_call_cycle | : | Resolved local calls form a cycle; may be intentional recursion. | |
| info | anomaly | static_call_cycle | : | Resolved local calls form a cycle; may be intentional recursion. | |
| info | anomaly | static_call_cycle | : | Resolved local calls form a cycle; may be intentional recursion. | |
| info | anomaly | duplicate_function_shape | : | Functions normalize to the same AST shape. | |
| info | anomaly | duplicate_function_shape | : | Functions normalize to the same AST shape. | |
| info | anomaly | duplicate_function_shape | : | Functions normalize to the same AST shape. | |
| info | anomaly | duplicate_function_shape | : | Functions normalize to the same AST shape. | |
| info | anomaly | duplicate_function_shape | : | Functions normalize to the same AST shape. | |
| info | anomaly | duplicate_function_shape | : | Functions normalize to the same AST shape. | |
| info | hotspot | multi_writer_state | : | State region has three or more static writers; review coupling and mutation ownership. | |
| info | hotspot | high_call_fanout | analyzer.py: | infer_effect | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | infer_effect | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | node_text | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | analyzer.py: | FunctionScanner.visit_Try | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | FunctionScanner.visit_Try | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | block_unreachable | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | block_unreachable | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | normalized_function_shape | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | normalized_function_shape | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | fragment_source_hash | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | fragment_source_hash | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | fragment_context_fingerprint | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | fragment_context_fingerprint | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | _clone_rebound_source_hash | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | _clone_rebound_source_hash | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | _build_fragment_reuse_index | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | _build_fragment_reuse_index | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | _reuse_function_fragment | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | _reuse_function_fragment | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | motif_signature | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | motif_signature | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | coarse_motif_signature | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | coarse_motif_signature | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | infer_structural_motifs | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | infer_structural_motifs | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | _preload_reused_graph | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | _preload_reused_graph | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | _garbage_collect_shared_nodes | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | _garbage_collect_shared_nodes | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | analyzer.py: | analyze | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | analyzer.py: | analyze | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | cache.py: | scan_python_manifest | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | cache.py: | scan_python_manifest | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | cache.py: | analyze_with_cache | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | cache.py: | analyze_with_cache | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | cache.py: | _strip_volatile | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | cache.py: | review_fingerprint | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | cache.py: | review_fingerprint | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | cli.py: | main | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | cli.py: | main | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | dataflow.py: | LoadNameCollector._visit_comp | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | dataflow.py: | StateAccessCollector.visit_Call | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | dataflow.py: | StateAccessCollector.visit_Call | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | dataflow.py: | StateAccessCollector.visit_Subscript | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | dataflow.py: | StateAccessCollector.visit_AugAssign | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | dataflow.py: | stmt_definitely_terminates | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | dataflow.py: | stmt_definitely_terminates | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | dataflow.py: | FunctionDataflowBuilder.__init__ | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | dataflow.py: | FunctionDataflowBuilder._collect_state_accesses | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | dataflow.py: | FunctionDataflowBuilder._merge_envs | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | dataflow.py: | FunctionDataflowBuilder._merge_envs | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | dataflow.py: | FunctionDataflowBuilder.process_stmt | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | dataflow.py: | FunctionDataflowBuilder.process_stmt | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | dataflow.py: | FunctionDataflowBuilder._build_exception_flow | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | dataflow.py: | FunctionDataflowBuilder._build_exception_flow | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | dataflow.py: | FunctionDataflowBuilder.build | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | dataflow.py: | FunctionDataflowBuilder.build | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | diff_report.py: | write_semantic_diff_markdown | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | diff_report.py: | write_semantic_diff_markdown | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | diff_report.py: | write_semantic_diff_html | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | diff_report.py: | write_semantic_diff_html | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | git_adapter.py: | _git | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | git_adapter.py: | ensure_git_repo | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | git_adapter.py: | _safe_member_path | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | git_adapter.py: | archive_ref | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | git_adapter.py: | archive_ref | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | git_adapter.py: | changed_files | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | git_adapter.py: | changed_files | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | git_adapter.py: | compare_metadata | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | git_adapter.py: | parse_github_event | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | git_adapter.py: | parse_github_event | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | impact.py: | build_impact_index | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | impact.py: | build_impact_index | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | impact.py: | resolve_impact_target | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | impact.py: | resolve_impact_target | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | impact.py: | analyze_impact | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | impact.py: | analyze_impact | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | incremental.py: | _base_symbol_surface | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | incremental.py: | _base_symbol_surface | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | incremental.py: | _target_symbol_surface | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | incremental.py: | _target_symbol_surface | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | incremental.py: | assess_partial_recompute | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | incremental.py: | assess_partial_recompute | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | incremental.py: | canonical_graph_payload | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | incremental.py: | canonical_graph_payload | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | incremental.py: | graph_equivalence_report | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | incremental.py: | build_invalidation_plan | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | incremental.py: | build_invalidation_plan | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | pr_review.py: | _changed_function_seeds | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | pr_review.py: | _changed_function_seeds | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | pr_review.py: | _aggregate_impact | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | pr_review.py: | _aggregate_impact | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | pr_review.py: | build_pr_review | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | pr_review.py: | build_pr_review | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | pr_review.py: | review_markdown | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | pr_review.py: | review_markdown | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | pr_review.py: | annotation_commands | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | pr_review.py: | annotation_commands | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | pr_review.py: | write_pr_review_outputs | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | pr_review.py: | write_pr_review_html | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | pr_review.py: | write_pr_review_html | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | product_ui.py: | build_project_summary | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | product_ui.py: | build_project_summary | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | product_ui.py: | _finding_rows | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | product_ui.py: | _finding_rows | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | product_ui.py: | write_project_html | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | product_ui.py: | write_project_html | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | product_ui.py: | build_review_summary | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | product_ui.py: | build_review_summary | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | product_ui.py: | write_review_html | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | product_ui.py: | write_review_html | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | report.py: | write_json_outputs | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | report.py: | write_json_outputs | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | report.py: | write_graphml | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | report.py: | write_graphml | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | report.py: | _overview_graph | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | report.py: | _overview_graph | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | report.py: | _svg_graph | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | report.py: | _svg_graph | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | report.py: | write_html | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | report.py: | write_html | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | report.py: | write_markdown_report | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | report.py: | write_markdown_report | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | _node_key | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | _node_key | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | _relation_key | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | _relation_key | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | _relation_public | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | _relation_public | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | _finding_key | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | _finding_key | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | _exception_signatures | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | _exception_signatures | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | _impact_breadth | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | _impact_breadth | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | _impact_changes | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | _impact_changes | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | _rename_candidates | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | _rename_candidates | Many calls cross the resolved graph boundary. |
| info | hotspot | high_call_fanout | semantic_diff.py: | compare_graphs | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | boundary_heavy | semantic_diff.py: | compare_graphs | Many calls cross the resolved graph boundary. |
Impact Review
Direct means one-hop graph evidence. Derived means bounded resolved call paths plus shared-state coupling.
Functional shapes
| Motif | Instances |
|---|---|
| boundary_orchestration | 90 |
| orchestration_fanout | 24 |
| retry_candidate | 11 |
| read_modify_write | 9 |
| resource_scope | 3 |
Program structure
Resolved local calls: 610
Boundary calls: 2635
State regions: 66
State writes: 68
Effect relations: 47
Source identity
| Path | Bytes | SHA-256 |
|---|---|---|
| __init__.py | 22 | 1fd3564596fb35b791… |
| analyzer.py | 50964 | 4df04e2eaea2f72a1f… |
| cache.py | 12245 | bb7f4ff6a3557f63ad… |
| cli.py | 12493 | fce9427a29a429f09e… |
| dataflow.py | 39188 | 60b2e9a2d349647c2b… |
| diff_report.py | 11137 | 706bdf4002b7923299… |
| git_adapter.py | 6707 | cc64d3adcf9b77ce54… |
| impact.py | 20500 | 3221edce2184d0bd3e… |
| incremental.py | 12608 | c5d319aaebd5b8337c… |
| pr_review.py | 16963 | b9a4a702230a2c964c… |
| product_ui.py | 31255 | 419c7f1401a5528f14… |
| report.py | 31778 | 7bd6d522e41bb159bf… |
| semantic_diff.py | 22721 | acb3a4d2a81f84aa1c… |
Epistemic boundary
- Python AST definitions
- imports
- call syntax
- control syntax
- source spans
- local file hashes
- SSA-like local definitions/uses
- self/cls/explicit-global state accesses
- module-binding reads
- explicit raise/except syntax
- definition-time Python name aliases
- local call target resolution
- parameter-container state regions
- effect hints
- branch/loop phi merges
- explicit exception catch matching
- structural motif candidates
- runtime dispatch
- reflection
- native extension behavior
- external library semantics
- precise heap points-to beyond definition-time alias
- dynamic exception behavior from calls
- concurrency semantics