What actually changed?
Target: 1 confirmed defectContent changes and semantic changes are intentionally separated. Line movement alone is not treated as program change.
14
Semantic events
10
Medium+ events
1
New findings
0
Resolved findings
3
Impact targets changed
1
Files modified
Semantic events
| Severity | Kind | Change | Evidence basis |
|---|---|---|---|
| high | finding_added | Finding added: possibly_undefined_local at bad.py::broken | detector diff |
| medium | state_writer_added | State writer added: root → app:global:CACHE | writes_state relation |
| medium | motif_added | Motif added: resource_scope at app.py::root | structural motif inference |
| medium | motif_added | Motif added: read_modify_write at app.py::root | structural motif inference |
| medium | impact_breadth_changed | Review breadth changed by +7: extra.py::persist | Impact Engine depth 3 |
| medium | impact_breadth_changed | Review breadth changed by +7: app.py::root | Impact Engine depth 3 |
| medium | impact_breadth_changed | Review breadth changed by +6: helper.py::helper | Impact Engine depth 3 |
| medium | effect_added | Effect added: root → file_io | effect relation |
| medium | dependency_added | Dependency added: app.py → extra.py | normalized imports relation |
| medium | call_added | Call added: root → persist | normalized call relation |
| low | state_reader_added | State reader added: root → app:global:CACHE | reads_state relation |
| low | call_added | Call added: root → str | normalized call relation |
| low | call_added | Call added: root → open | normalized call relation |
| low | call_added | Call added: root → f.write | normalized call relation |
Introduced findings
| Severity | Class | Type | Location | Symbol | Statement |
|---|---|---|---|---|---|
| high | defect | possibly_undefined_local | bad.py:4 | broken | Local variable 'value' may be undefined on at least one reaching control-flow path. |
Resolved findings
| Severity | Class | Type | Location | Symbol | Statement |
|---|---|---|---|---|---|
| No findings in the current static scope. | |||||
Review breadth changes
Breadth change helps prioritize review; it is not a risk or truth score.
| Target | Δ breadth | Before | After |
|---|---|---|---|
| extra.py::persist | +7 | 0 | 7 |
| app.py::root | +7 | 1 | 8 |
| helper.py::helper | +6 | 1 | 7 |
File content identity
| File | Base SHA | Target SHA | Bytes Δ |
|---|---|---|---|
| app.py | 9aeb874c18f3e6 | 2ec088553b6e6f | +152 |
Epistemic boundary: normalized source-derived relations and detector findings are direct evidence; motif membership and bounded impact change are inferred; runtime-only behavior, reflection, native code and complete behavioral equivalence remain unresolved.