1
Files
18
Nodes
24
Edges
4
Impact targets
5
Data values
0
State regions
0
Defects
1
Motifs
MVP pipeline
Repository → CISG → Data/State Closure → Impact Engine → review scope
v1.0 technical view preserves one-hop direct evidence from bounded derived impact. Derived impact uses resolved local-call reachability and shared-state coupling; it is review scope, not a claim that every reachable entity will change at runtime.
Metrics
{
"loaded_files": 1,
"nodes": 18,
"edges": 24,
"node_types": {
"file": 1,
"function": 2,
"data_value": 5,
"data_sink": 2,
"boundary_call": 5,
"control": 1,
"data_use": 1,
"effect": 1
},
"edge_types": {
"contains": 2,
"defines": 5,
"contains_data": 3,
"returns_value": 3,
"calls": 6,
"controls": 1,
"flows_to": 3,
"effect": 1
},
"resolved_local_calls": 1,
"boundary_calls": 5,
"findings_by_category": {},
"findings_by_severity": {},
"motif_instances": 1,
"motif_clusters": 0,
"data_values": 5,
"phi_nodes": 0,
"data_edges": 11,
"alias_edges": 0,
"state_regions": 0,
"state_reads": 0,
"state_writes": 0,
"module_binding_reads": 0,
"exception_handlers": 0,
"explicit_raises": 0,
"unresolved_local_uses": 0,
"warnings": 0
}Highest review breadth
| Kind | Target | Review breadth | Path |
|---|---|---|---|
| function | 8 | app.py | |
| function | 8 | app.py |
Warnings
- None
Impact Engine
Direct = one-hop graph evidence. Derived = bounded resolved call paths + shared-state coupling. No single impact score is treated as truth.
Choose a target.
Code-Induced Semantic Graph
Overview shows 3 of 3 file/class/function entities. Full graph is in cisg.json / cisg.graphml.
Node evidence
Click a node.
SSA-like data flow
Local data footprint feeds Impact Engine but is not transitive across function boundaries.
| Relation | Source | Target | Evidence | Status |
|---|---|---|---|---|
| returns_value | value#0 | return@+1 | app.py:2 | observed |
| flows_to | amount#0 | amount#1 | app.py:6 | observed |
| flows_to | handle#1 | expr@+3 | app.py:8 | observed |
| flows_to | amount#1 | expr@+3 | app.py:8 | observed |
| returns_value | amount#1 | return@+4 | app.py:9 | observed |
| returns_value | tax#0 | return@+4 | app.py:9 | observed |
State regions
| Access | Function | Region | Kind | Evidence |
|---|
Module binding reads
| Function | Binding | Evidence |
|---|
Explicit exception flow
| Relation | Source | Target | Evidence | Status |
|---|
Findings
| Severity | Class | Type | Location | Symbol | Evidence statement |
|---|
Deterministic motif candidates
| Kind | Path | Symbol | Confidence | Structural rule |
|---|---|---|---|---|
| resource_scope | app.py | calculate_total | 0.92 | with/async-with establishes bounded resource scope |
Name-independent structural signature clusters
| Motif ID | Members | Identity basis |
|---|
Per-file SHA-256
| Path | Bytes | SHA-256 |
|---|---|---|
| app.py | 234 | b4369db8bb85e316… |
Epistemic contract
observed
- 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
strongly_inferred
- local call target resolution
- parameter-container state regions
- effect hints
- branch/loop phi merges
- explicit exception catch matching
- structural motif candidates
unresolved
- runtime dispatch
- reflection
- native extension behavior
- external library semantics
- precise heap points-to beyond definition-time alias
- dynamic exception behavior from calls
- concurrency semantics