14
Files
1418
Nodes
3457
Edges
167
Impact targets
465
Data values
28
State regions
0
Defects
41
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": 14,
"nodes": 1418,
"edges": 3457,
"node_types": {
"file": 14,
"function": 36,
"class": 8,
"method": 27,
"boundary_module": 16,
"control": 145,
"data_value": 465,
"data_use": 82,
"data_sink": 82,
"data_phi": 186,
"data_undefined": 110,
"exception_handler": 6,
"boundary_call": 205,
"effect": 1,
"state_region": 28,
"module_binding": 3,
"exception_event": 3,
"boundary_exception": 1
},
"edge_types": {
"contains": 71,
"imports": 55,
"controls": 145,
"defines": 651,
"flows_to": 657,
"contains_data": 188,
"guards": 187,
"phi_input": 372,
"contains_exception_handler": 6,
"calls": 888,
"returns_value": 155,
"effect": 8,
"reads_state": 28,
"reads_binding": 3,
"aliases_at_definition": 7,
"writes_state": 27,
"exception_value": 3,
"raises": 3,
"exception_flow": 3
},
"resolved_local_calls": 137,
"boundary_calls": 751,
"findings_by_category": {
"hotspot": 47,
"anomaly": 1
},
"findings_by_severity": {
"info": 48
},
"motif_instances": 41,
"motif_clusters": 13,
"data_values": 465,
"phi_nodes": 186,
"data_edges": 2032,
"alias_edges": 7,
"state_regions": 28,
"state_reads": 28,
"state_writes": 27,
"module_binding_reads": 3,
"exception_handlers": 6,
"explicit_raises": 3,
"unresolved_local_uses": 0,
"warnings": 0
}Highest review breadth
| Kind | Target | Review breadth | Path |
|---|---|---|---|
| function | 132 | util.py | |
| function | 130 | util.py | |
| function | 115 | util.py | |
| function | 105 | workspace.py | |
| function | 104 | workspace.py | |
| function | 101 | cli.py | |
| function | 99 | workspace.py | |
| function | 91 | query.py | |
| function | 82 | workspace.py | |
| function | 78 | workspace.py | |
| function | 70 | util.py | |
| function | 70 | workspace.py | |
| function | 69 | query.py | |
| function | 69 | query.py | |
| function | 68 | query.py | |
| function | 56 | workspace.py | |
| function | 55 | query.py | |
| function | 49 | query.py | |
| function | 37 | providers/__init__.py | |
| method | 32 | providers/pbsio.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 85 of 85 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 |
|---|---|---|---|---|
| flows_to | ap#1 | sub#1 | cli.py:9 | observed |
| flows_to | sub#1 | p#1 | cli.py:10 | observed |
| flows_to | p#1 | expr@+3 | cli.py:10 | observed |
| flows_to | p#1 | expr@+3 | cli.py:10 | observed |
| flows_to | sub#1 | p#2 | cli.py:11 | observed |
| flows_to | sub#1 | p#3 | cli.py:12 | observed |
| flows_to | p#3 | expr@+5 | cli.py:12 | observed |
| flows_to | p#3 | expr@+5 | cli.py:12 | observed |
| flows_to | sub#1 | p#4 | cli.py:13 | observed |
| flows_to | p#4 | expr@+6 | cli.py:13 | observed |
| flows_to | p#4 | expr@+6 | cli.py:13 | observed |
| flows_to | p#4 | expr@+6 | cli.py:13 | observed |
| flows_to | p#4 | expr@+6 | cli.py:13 | observed |
| flows_to | sub#1 | p#5 | cli.py:14 | observed |
| flows_to | p#5 | expr@+7 | cli.py:14 | observed |
| flows_to | p#5 | expr@+7 | cli.py:14 | observed |
| flows_to | p#5 | expr@+7 | cli.py:14 | observed |
| flows_to | sub#1 | p#6 | cli.py:15 | observed |
| flows_to | p#6 | expr@+8 | cli.py:15 | observed |
| flows_to | p#6 | expr@+8 | cli.py:15 | observed |
| flows_to | p#6 | expr@+8 | cli.py:15 | observed |
| flows_to | sub#1 | p#7 | cli.py:16 | observed |
| flows_to | p#7 | expr@+9 | cli.py:16 | observed |
| flows_to | ap#1 | args#1 | cli.py:17 | observed |
| flows_to | argv#0 | args#1 | cli.py:17 | observed |
| guards | args#1 | branch | cli.py:18 | observed |
| flows_to | args#1 | expr@+11 | cli.py:18 | observed |
| guards | args#1 | branch | cli.py:19 | observed |
| flows_to | reg#1 | expr@+12 | cli.py:19 | observed |
| guards | args#1 | branch | cli.py:20 | observed |
| flows_to | args#1 | rows#1 | cli.py:21 | observed |
| flows_to | reg#1 | rows#1 | cli.py:21 | observed |
| flows_to | rows#1 | expr@+15 | cli.py:22 | observed |
| guards | args#1 | branch | cli.py:23 | observed |
| flows_to | args#1 | expr@+16 | cli.py:23 | observed |
| flows_to | reg#1 | expr@+16 | cli.py:23 | observed |
| guards | args#1 | branch | cli.py:24 | observed |
| flows_to | args#1 | expr@+17 | cli.py:24 | observed |
| flows_to | args#1 | rt#1 | cli.py:25 | observed |
| guards | args#1 | branch | cli.py:26 | observed |
| flows_to | rt#1 | expr@+19 | cli.py:26 | observed |
| flows_to | args#1 | expr@+19 | cli.py:26 | observed |
| flows_to | line#1 | line#2 | cli.py:28 | observed |
| guards | line#2 | branch | cli.py:29 | observed |
| flows_to | line#2 | req#1 | cli.py:31 | observed |
| flows_to | rt#1 | res#1 | cli.py:31 | observed |
| flows_to | req#1 | res#1 | cli.py:31 | observed |
| flows_to | e#1 | res#2 | cli.py:33 | observed |
| phi_input | e#1 | e#2 | cli.py:30 | strongly_inferred |
| phi_input | e:undefined | e#2 | cli.py:30 | unresolved |
| phi_input | req#1 | req#2 | cli.py:30 | strongly_inferred |
| phi_input | req:undefined | req#2 | cli.py:30 | unresolved |
| phi_input | res#2 | res#3 | cli.py:30 | strongly_inferred |
| phi_input | res#1 | res#3 | cli.py:30 | strongly_inferred |
| flows_to | res#3 | expr@+27 | cli.py:34 | observed |
| phi_input | e#2 | e#3 | cli.py:27 | strongly_inferred |
| phi_input | e:undefined | e#3 | cli.py:27 | unresolved |
| phi_input | line#2 | line#3 | cli.py:27 | strongly_inferred |
| phi_input | line:undefined | line#3 | cli.py:27 | unresolved |
| phi_input | req#2 | req#3 | cli.py:27 | strongly_inferred |
| phi_input | req:undefined | req#3 | cli.py:27 | unresolved |
| phi_input | res#3 | res#4 | cli.py:27 | strongly_inferred |
| phi_input | res:undefined | res#4 | cli.py:27 | unresolved |
| flows_to | operator_id#0 | v#1 | operators.py:23 | observed |
| returns_value | v#1 | return@+1 | operators.py:23 | observed |
| returns_value | operator_id#0 | return@+1 | operators.py:23 | observed |
| flows_to | r#1 | expr@+3 | providers/__init__.py:11 | observed |
| flows_to | p#1 | expr@+3 | providers/__init__.py:11 | observed |
| phi_input | p#1 | p#2 | providers/__init__.py:11 | strongly_inferred |
| phi_input | p:undefined | p#2 | providers/__init__.py:11 | unresolved |
| returns_value | r#1 | return@+4 | providers/__init__.py:12 | observed |
| flows_to | source#0 | p#1 | providers/adapter_result.py:11 | observed |
| guards | p#1 | branch | providers/adapter_result.py:12 | observed |
| flows_to | p#1 | obj#1 | providers/adapter_result.py:13 | observed |
| flows_to | obj#1 | ok#1 | providers/adapter_result.py:15 | observed |
| returns_value | ok#1 | return@+6 | providers/adapter_result.py:16 | observed |
| returns_value | obj#1 | return@+6 | providers/adapter_result.py:16 | observed |
| flows_to | source#0 | p#1 | providers/adapter_result.py:18 | observed |
| flows_to | p#1 | obj#1 | providers/adapter_result.py:18 | observed |
| flows_to | p#1 | raw#1 | providers/adapter_result.py:18 | observed |
| flows_to | raw#1 | sha#1 | providers/adapter_result.py:18 | observed |
| flows_to | obj#1 | graph_docs#1 | providers/adapter_result.py:19 | observed |
| guards | graph_docs#1 | for_loop | providers/adapter_result.py:20 | observed |
| flows_to | graph_docs#1 | i#1 | providers/adapter_result.py:20 | observed |
| flows_to | graph_docs#1 | g#1 | providers/adapter_result.py:20 | observed |
| guards | g#1 | branch | providers/adapter_result.py:21 | observed |
| flows_to | i#1 | name#1 | providers/adapter_result.py:22 | observed |
| flows_to | g#1 | gid#1 | providers/adapter_result.py:22 | observed |
| flows_to | sha#1 | gid#1 | providers/adapter_result.py:22 | observed |
| flows_to | i#1 | gid#1 | providers/adapter_result.py:22 | observed |
| flows_to | g#1 | graph#1 | providers/adapter_result.py:22 | observed |
| flows_to | graph#1 | expr@+5 | providers/adapter_result.py:22 | observed |
| flows_to | graph#1 | expr@+5 | providers/adapter_result.py:22 | observed |
| flows_to | graphs#1 | expr@+5 | providers/adapter_result.py:22 | observed |
| flows_to | gid#1 | expr@+5 | providers/adapter_result.py:22 | observed |
| flows_to | graph#1 | expr@+5 | providers/adapter_result.py:22 | observed |
| flows_to | name#1 | expr@+5 | providers/adapter_result.py:22 | observed |
| phi_input | gid#1 | gid#2 | providers/adapter_result.py:21 | strongly_inferred |
| phi_input | gid:undefined | gid#2 | providers/adapter_result.py:21 | unresolved |
| phi_input | graph#1 | graph#2 | providers/adapter_result.py:21 | strongly_inferred |
| phi_input | graph:undefined | graph#2 | providers/adapter_result.py:21 | unresolved |
| phi_input | name#1 | name#2 | providers/adapter_result.py:21 | strongly_inferred |
| phi_input | name:undefined | name#2 | providers/adapter_result.py:21 | unresolved |
| phi_input | g#1 | g#2 | providers/adapter_result.py:20 | strongly_inferred |
| phi_input | g:undefined | g#2 | providers/adapter_result.py:20 | unresolved |
| phi_input | gid#2 | gid#3 | providers/adapter_result.py:20 | strongly_inferred |
| phi_input | gid:undefined | gid#3 | providers/adapter_result.py:20 | unresolved |
| phi_input | graph#2 | graph#3 | providers/adapter_result.py:20 | strongly_inferred |
| phi_input | graph:undefined | graph#3 | providers/adapter_result.py:20 | unresolved |
| phi_input | i#1 | i#2 | providers/adapter_result.py:20 | strongly_inferred |
| phi_input | i:undefined | i#2 | providers/adapter_result.py:20 | unresolved |
| phi_input | name#2 | name#3 | providers/adapter_result.py:20 | strongly_inferred |
| phi_input | name:undefined | name#3 | providers/adapter_result.py:20 | unresolved |
| flows_to | obj#1 | evidence#1 | providers/adapter_result.py:23 | observed |
| guards | evidence#1 | branch | providers/adapter_result.py:24 | observed |
| flows_to | evidence#1 | evidence#2 | providers/adapter_result.py:24 | observed |
| phi_input | evidence#1 | evidence#3 | providers/adapter_result.py:24 | strongly_inferred |
| phi_input | evidence#2 | evidence#3 | providers/adapter_result.py:24 | strongly_inferred |
| returns_value | self#0 | return@+8 | providers/adapter_result.py:25 | observed |
| returns_value | p#1 | return@+8 | providers/adapter_result.py:25 | observed |
| returns_value | sha#1 | return@+8 | providers/adapter_result.py:25 | observed |
| returns_value | obj#1 | return@+8 | providers/adapter_result.py:26 | observed |
| returns_value | graphs#1 | return@+8 | providers/adapter_result.py:26 | observed |
| returns_value | evidence#3 | return@+8 | providers/adapter_result.py:26 | observed |
| returns_value | payloads#1 | return@+8 | providers/adapter_result.py:26 | observed |
| returns_value | self#0 | return@+1 | providers/base.py:17 | observed |
| flows_to | source#0 | p#1 | providers/intent_text.py:17 | observed |
| flows_to | p#1 | ok#1 | providers/intent_text.py:17 | observed |
| flows_to | self#0 | ok#1 | providers/intent_text.py:17 | observed |
| returns_value | ok#1 | return@+2 | providers/intent_text.py:18 | observed |
| flows_to | source#0 | p#1 | providers/intent_text.py:20 | observed |
| flows_to | p#1 | raw#1 | providers/intent_text.py:20 | observed |
| flows_to | raw#1 | text#1 | providers/intent_text.py:20 | observed |
| flows_to | raw#1 | sha#1 | providers/intent_text.py:20 | observed |
| flows_to | sha#1 | aid#1 | providers/intent_text.py:20 | observed |
| flows_to | aid#1 | root#1 | providers/intent_text.py:21 | observed |
| flows_to | root#1 | nodes#1 | providers/intent_text.py:21 | observed |
| flows_to | p#1 | nodes#1 | providers/intent_text.py:21 | observed |
| guards | text#1 | for_loop | providers/intent_text.py:22 | observed |
| flows_to | text#1 | lineno#1 | providers/intent_text.py:22 | observed |
| flows_to | text#1 | line#1 | providers/intent_text.py:22 | observed |
| flows_to | line#1 | s#1 | providers/intent_text.py:23 | observed |
| guards | s#1 | branch | providers/intent_text.py:24 | observed |
| guards | s#1 | branch | providers/intent_text.py:25 | observed |
| flows_to | s#1 | s#2 | providers/intent_text.py:25 | observed |
| phi_input | s#2 | s#3 | providers/intent_text.py:25 | strongly_inferred |
| phi_input | s#1 | s#3 | providers/intent_text.py:25 | strongly_inferred |
| guards | s#3 | branch | providers/intent_text.py:26 | observed |
| flows_to | idx#1 | idx#2 | providers/intent_text.py:27 | observed |
| flows_to | aid#1 | nid#1 | providers/intent_text.py:27 | observed |
| flows_to | idx#2 | nid#1 | providers/intent_text.py:27 | observed |
| flows_to | s#3 | nid#1 | providers/intent_text.py:27 | observed |
| flows_to | nodes#1 | expr@+9 | providers/intent_text.py:28 | observed |
| flows_to | nid#1 | expr@+9 | providers/intent_text.py:28 | observed |
| flows_to | s#3 | expr@+9 | providers/intent_text.py:28 | observed |
| flows_to | idx#2 | expr@+9 | providers/intent_text.py:28 | observed |
| flows_to | p#1 | expr@+9 | providers/intent_text.py:28 | observed |
| flows_to | edges#1 | expr@+10 | providers/intent_text.py:29 | observed |
| flows_to | root#1 | expr@+10 | providers/intent_text.py:29 | observed |
| flows_to | nid#1 | expr@+10 | providers/intent_text.py:29 | observed |
| flows_to | aid#1 | eid#1 | providers/intent_text.py:30 | observed |
| flows_to | lineno#1 | eid#1 | providers/intent_text.py:30 | observed |
| flows_to | s#3 | eid#1 | providers/intent_text.py:30 | observed |
| flows_to | contracts#1 | expr@+12 | providers/intent_text.py:31 | observed |
| flows_to | nid#1 | expr@+12 | providers/intent_text.py:31 | observed |
| flows_to | s#3 | expr@+12 | providers/intent_text.py:31 | observed |
| flows_to | eid#1 | expr@+12 | providers/intent_text.py:31 | observed |
| phi_input | eid#1 | eid#2 | providers/intent_text.py:22 | strongly_inferred |
| phi_input | eid:undefined | eid#2 | providers/intent_text.py:22 | unresolved |
| phi_input | idx#2 | idx#3 | providers/intent_text.py:22 | strongly_inferred |
| phi_input | idx#1 | idx#3 | providers/intent_text.py:22 | strongly_inferred |
| phi_input | line#1 | line#2 | providers/intent_text.py:22 | strongly_inferred |
| phi_input | line:undefined | line#2 | providers/intent_text.py:22 | unresolved |
| phi_input | lineno#1 | lineno#2 | providers/intent_text.py:22 | strongly_inferred |
| phi_input | lineno:undefined | lineno#2 | providers/intent_text.py:22 | unresolved |
| phi_input | nid#1 | nid#2 | providers/intent_text.py:22 | strongly_inferred |
| phi_input | nid:undefined | nid#2 | providers/intent_text.py:22 | unresolved |
| phi_input | s#3 | s#4 | providers/intent_text.py:22 | strongly_inferred |
| phi_input | s:undefined | s#4 | providers/intent_text.py:22 | unresolved |
| flows_to | aid#1 | graph#1 | providers/intent_text.py:32 | observed |
| flows_to | nodes#1 | graph#1 | providers/intent_text.py:32 | observed |
| flows_to | edges#1 | graph#1 | providers/intent_text.py:32 | observed |
| returns_value | self#0 | return@+14 | providers/intent_text.py:33 | observed |
| returns_value | p#1 | return@+14 | providers/intent_text.py:33 | observed |
| returns_value | sha#1 | return@+14 | providers/intent_text.py:33 | observed |
| returns_value | aid#1 | return@+14 | providers/intent_text.py:34 | observed |
| returns_value | p#1 | return@+14 | providers/intent_text.py:34 | observed |
| returns_value | sha#1 | return@+14 | providers/intent_text.py:34 | observed |
| returns_value | raw#1 | return@+14 | providers/intent_text.py:34 | observed |
| returns_value | graph#1 | return@+14 | providers/intent_text.py:35 | observed |
| returns_value | nodes#1 | return@+14 | providers/intent_text.py:35 | observed |
| returns_value | edges#1 | return@+14 | providers/intent_text.py:35 | observed |
| returns_value | contracts#1 | return@+14 | providers/intent_text.py:35 | observed |
| returns_value | evidence#1 | return@+14 | providers/intent_text.py:35 | observed |
| returns_value | text#1 | return@+14 | providers/intent_text.py:35 | observed |
| returns_value | idx#3 | return@+14 | providers/intent_text.py:35 | observed |
| flows_to | source#0 | p#1 | providers/json_schema.py:17 | observed |
| guards | p#1 | branch | providers/json_schema.py:18 | observed |
| flows_to | p#1 | obj#1 | providers/json_schema.py:19 | observed |
| flows_to | obj#1 | is_schema#1 | providers/json_schema.py:21 | observed |
| returns_value | is_schema#1 | return@+6 | providers/json_schema.py:22 | observed |
| flows_to | source#0 | p#1 | providers/json_schema.py:25 | observed |
| flows_to | p#1 | obj#1 | providers/json_schema.py:25 | observed |
| flows_to | p#1 | raw#1 | providers/json_schema.py:25 | observed |
| flows_to | raw#1 | sha#1 | providers/json_schema.py:25 | observed |
| flows_to | sha#1 | aid#1 | providers/json_schema.py:26 | observed |
| flows_to | aid#1 | root_id#1 | providers/json_schema.py:27 | observed |
| flows_to | root_id#1 | nodes#1 | providers/json_schema.py:28 | observed |
| flows_to | obj#1 | nodes#1 | providers/json_schema.py:28 | observed |
| flows_to | p#1 | nodes#1 | providers/json_schema.py:28 | observed |
| flows_to | aid#1 | eid#1 | providers/json_schema.py:30 | observed |
| guards | obj#1 | for_loop | providers/json_schema.py:32 | observed |
| flows_to | obj#1 | name#1 | providers/json_schema.py:32 | observed |
| flows_to | obj#1 | spec#1 | providers/json_schema.py:32 | observed |
| flows_to | aid#1 | nid#1 | providers/json_schema.py:33 | observed |
| flows_to | name#1 | nid#1 | providers/json_schema.py:33 | observed |
| flows_to | nodes#1 | expr@+10 | providers/json_schema.py:34 | observed |
| flows_to | nid#1 | expr@+10 | providers/json_schema.py:34 | observed |
| flows_to | name#1 | expr@+10 | providers/json_schema.py:34 | observed |
| flows_to | p#1 | expr@+10 | providers/json_schema.py:34 | observed |
| flows_to | spec#1 | expr@+10 | providers/json_schema.py:34 | observed |
| flows_to | edges#1 | expr@+11 | providers/json_schema.py:35 | observed |
| flows_to | root_id#1 | expr@+11 | providers/json_schema.py:35 | observed |
| flows_to | nid#1 | expr@+11 | providers/json_schema.py:35 | observed |
| guards | name#1 | branch | providers/json_schema.py:36 | observed |
| guards | obj#1 | branch | providers/json_schema.py:36 | observed |
| flows_to | contracts#1 | expr@+13 | providers/json_schema.py:37 | observed |
| flows_to | nid#1 | expr@+13 | providers/json_schema.py:37 | observed |
| flows_to | name#1 | expr@+13 | providers/json_schema.py:37 | observed |
| flows_to | eid#1 | expr@+13 | providers/json_schema.py:37 | observed |
| phi_input | name#1 | name#2 | providers/json_schema.py:32 | strongly_inferred |
| phi_input | name:undefined | name#2 | providers/json_schema.py:32 | unresolved |
| phi_input | nid#1 | nid#2 | providers/json_schema.py:32 | strongly_inferred |
| phi_input | nid:undefined | nid#2 | providers/json_schema.py:32 | unresolved |
| phi_input | spec#1 | spec#2 | providers/json_schema.py:32 | strongly_inferred |
| phi_input | spec:undefined | spec#2 | providers/json_schema.py:32 | unresolved |
| flows_to | aid#1 | graph#1 | providers/json_schema.py:38 | observed |
| flows_to | nodes#1 | graph#1 | providers/json_schema.py:38 | observed |
| flows_to | edges#1 | graph#1 | providers/json_schema.py:38 | observed |
| returns_value | self#0 | return@+15 | providers/json_schema.py:40 | observed |
| returns_value | p#1 | return@+15 | providers/json_schema.py:41 | observed |
| returns_value | sha#1 | return@+15 | providers/json_schema.py:41 | observed |
| returns_value | aid#1 | return@+15 | providers/json_schema.py:42 | observed |
| returns_value | p#1 | return@+15 | providers/json_schema.py:42 | observed |
| returns_value | sha#1 | return@+15 | providers/json_schema.py:42 | observed |
| returns_value | raw#1 | return@+15 | providers/json_schema.py:42 | observed |
| returns_value | graph#1 | return@+15 | providers/json_schema.py:43 | observed |
| returns_value | nodes#1 | return@+15 | providers/json_schema.py:43 | observed |
| returns_value | edges#1 | return@+15 | providers/json_schema.py:43 | observed |
| returns_value | contracts#1 | return@+15 | providers/json_schema.py:44 | observed |
| returns_value | evidence#1 | return@+15 | providers/json_schema.py:44 | observed |
| returns_value | graph#1 | return@+15 | providers/json_schema.py:45 | observed |
| returns_value | obj#1 | return@+15 | providers/json_schema.py:45 | observed |
| returns_value | nodes#1 | return@+15 | providers/json_schema.py:45 | observed |
| returns_value | contracts#1 | return@+15 | providers/json_schema.py:45 | observed |
| flows_to | source#0 | p#1 | providers/pbsio.py:19 | observed |
| flows_to | p#1 | cisg#1 | providers/pbsio.py:20 | observed |
| guards | cisg#1 | branch | providers/pbsio.py:21 | observed |
| flows_to | cisg#1 | obj#1 | providers/pbsio.py:23 | observed |
| flows_to | obj#1 | schema#1 | providers/pbsio.py:23 | observed |
| flows_to | schema#1 | ok#1 | providers/pbsio.py:24 | observed |
| returns_value | ok#1 | return@+7 | providers/pbsio.py:25 | observed |
| returns_value | schema#1 | return@+7 | providers/pbsio.py:25 | observed |
| flows_to | source#0 | src#1 | providers/pbsio.py:30 | observed |
| flows_to | src#1 | cisg#1 | providers/pbsio.py:31 | observed |
| flows_to | src#1 | payloads#1 | providers/pbsio.py:32 | observed |
| flows_to | payloads#1 | findings#1 | providers/pbsio.py:33 | observed |
| flows_to | payloads#1 | motifs#1 | providers/pbsio.py:34 | observed |
| flows_to | payloads#1 | integrity#1 | providers/pbsio.py:35 | observed |
| flows_to | integrity#1 | integrity_by_path#1 | providers/pbsio.py:36 | observed |
| guards | cisg#1 | for_loop | providers/pbsio.py:38 | observed |
| flows_to | cisg#1 | raw#1 | providers/pbsio.py:38 | observed |
| flows_to | raw#1 | path#1 | providers/pbsio.py:39 | observed |
| flows_to | raw#1 | meta#1 | providers/pbsio.py:40 | observed |
| flows_to | integrity_by_path#1 | meta#1 | providers/pbsio.py:40 | observed |
| flows_to | path#1 | meta#1 | providers/pbsio.py:40 | observed |
| flows_to | meta#1 | sha#1 | providers/pbsio.py:41 | observed |
| flows_to | artifacts#1 | expr@+13 | providers/pbsio.py:42 | observed |
| flows_to | path#1 | expr@+13 | providers/pbsio.py:43 | observed |
| flows_to | sha#1 | expr@+13 | providers/pbsio.py:43 | observed |
| flows_to | path#1 | expr@+13 | providers/pbsio.py:44 | observed |
| flows_to | sha#1 | expr@+13 | providers/pbsio.py:44 | observed |
| flows_to | meta#1 | expr@+13 | providers/pbsio.py:44 | observed |
| flows_to | meta#1 | expr@+13 | providers/pbsio.py:46 | observed |
| phi_input | meta#1 | meta#2 | providers/pbsio.py:38 | strongly_inferred |
| phi_input | meta:undefined | meta#2 | providers/pbsio.py:38 | unresolved |
| phi_input | path#1 | path#2 | providers/pbsio.py:38 | strongly_inferred |
| phi_input | path:undefined | path#2 | providers/pbsio.py:38 | unresolved |
| phi_input | raw#1 | raw#2 | providers/pbsio.py:38 | strongly_inferred |
| phi_input | raw:undefined | raw#2 | providers/pbsio.py:38 | unresolved |
| phi_input | sha#1 | sha#2 | providers/pbsio.py:38 | strongly_inferred |
| phi_input | sha:undefined | sha#2 | providers/pbsio.py:38 | unresolved |
| guards | cisg#1 | for_loop | providers/pbsio.py:49 | observed |
| flows_to | cisg#1 | owner_kind#1 | providers/pbsio.py:49 | observed |
| flows_to | cisg#1 | items#1 | providers/pbsio.py:49 | observed |
| guards | items#1 | for_loop | providers/pbsio.py:50 | observed |
| flows_to | items#1 | item#1 | providers/pbsio.py:50 | observed |
| aliases_at_definition | items#1 | item#1 | providers/pbsio.py:50 | observed |
| flows_to | item#1 | ev#1 | providers/pbsio.py:51 | observed |
| guards | ev#1 | branch | providers/pbsio.py:52 | observed |
| flows_to | ev#1 | eid#1 | providers/pbsio.py:53 | observed |
| flows_to | evidence#1 | rec#1 | providers/pbsio.py:54 | observed |
| flows_to | eid#1 | rec#1 | providers/pbsio.py:54 | observed |
| flows_to | ev#1 | rec#1 | providers/pbsio.py:54 | observed |
| flows_to | owner_kind#1 | owner#1 | providers/pbsio.py:55 | observed |
| flows_to | item#1 | owner#1 | providers/pbsio.py:55 | observed |
| guards | owner#1 | branch | providers/pbsio.py:56 | observed |
| guards | rec#1 | branch | providers/pbsio.py:56 | observed |
| flows_to | rec#1 | expr@+27 | providers/pbsio.py:56 | observed |
| flows_to | owner#1 | expr@+27 | providers/pbsio.py:56 | observed |
| phi_input | eid#1 | eid#2 | providers/pbsio.py:50 | strongly_inferred |
| phi_input | eid:undefined | eid#2 | providers/pbsio.py:50 | unresolved |
| phi_input | ev#1 | ev#2 | providers/pbsio.py:50 | strongly_inferred |
| phi_input | ev:undefined | ev#2 | providers/pbsio.py:50 | unresolved |
| phi_input | item#1 | item#2 | providers/pbsio.py:50 | strongly_inferred |
| phi_input | item:undefined | item#2 | providers/pbsio.py:50 | unresolved |
| phi_input | owner#1 | owner#2 | providers/pbsio.py:50 | strongly_inferred |
| phi_input | owner:undefined | owner#2 | providers/pbsio.py:50 | unresolved |
| phi_input | rec#1 | rec#2 | providers/pbsio.py:50 | strongly_inferred |
| phi_input | rec:undefined | rec#2 | providers/pbsio.py:50 | unresolved |
| phi_input | eid#2 | eid#3 | providers/pbsio.py:49 | strongly_inferred |
| phi_input | eid:undefined | eid#3 | providers/pbsio.py:49 | unresolved |
| phi_input | ev#2 | ev#3 | providers/pbsio.py:49 | strongly_inferred |
| phi_input | ev:undefined | ev#3 | providers/pbsio.py:49 | unresolved |
| phi_input | item#2 | item#3 | providers/pbsio.py:49 | strongly_inferred |
| phi_input | item:undefined | item#3 | providers/pbsio.py:49 | unresolved |
| phi_input | items#1 | items#2 | providers/pbsio.py:49 | strongly_inferred |
| phi_input | items:undefined | items#2 | providers/pbsio.py:49 | unresolved |
| phi_input | owner#2 | owner#3 | providers/pbsio.py:49 | strongly_inferred |
| phi_input | owner:undefined | owner#3 | providers/pbsio.py:49 | unresolved |
| phi_input | owner_kind#1 | owner_kind#2 | providers/pbsio.py:49 | strongly_inferred |
| phi_input | owner_kind:undefined | owner_kind#2 | providers/pbsio.py:49 | unresolved |
| phi_input | rec#2 | rec#3 | providers/pbsio.py:49 | strongly_inferred |
| phi_input | rec:undefined | rec#3 | providers/pbsio.py:49 | unresolved |
| guards | cisg#1 | for_loop | providers/pbsio.py:58 | observed |
| flows_to | cisg#1 | n#1 | providers/pbsio.py:58 | observed |
| guards | n#1 | branch | providers/pbsio.py:59 | observed |
| flows_to | unresolved#1 | expr@+31 | providers/pbsio.py:60 | observed |
| flows_to | n#1 | expr@+31 | providers/pbsio.py:60 | observed |
| phi_input | n#1 | n#2 | providers/pbsio.py:58 | strongly_inferred |
| phi_input | n:undefined | n#2 | providers/pbsio.py:58 | unresolved |
| flows_to | cisg#1 | graph_id#1 | providers/pbsio.py:61 | observed |
| flows_to | cisg#1 | source_fingerprint#1 | providers/pbsio.py:63 | observed |
| flows_to | artifacts#1 | source_fingerprint#1 | providers/pbsio.py:63 | observed |
| returns_value | self#0 | return@+35 | providers/pbsio.py:66 | observed |
| returns_value | src#1 | return@+35 | providers/pbsio.py:67 | observed |
| returns_value | source_fingerprint#1 | return@+35 | providers/pbsio.py:68 | observed |
| returns_value | artifacts#1 | return@+35 | providers/pbsio.py:69 | observed |
| returns_value | graph_id#1 | return@+35 | providers/pbsio.py:70 | observed |
| returns_value | cisg#1 | return@+35 | providers/pbsio.py:70 | observed |
| returns_value | unresolved#1 | return@+35 | providers/pbsio.py:71 | observed |
| returns_value | evidence#1 | return@+35 | providers/pbsio.py:72 | observed |
| returns_value | findings#1 | return@+35 | providers/pbsio.py:72 | observed |
| returns_value | motifs#1 | return@+35 | providers/pbsio.py:72 | observed |
| returns_value | payloads#1 | return@+35 | providers/pbsio.py:72 | observed |
| returns_value | payloads#1 | return@+35 | providers/pbsio.py:73 | observed |
| returns_value | cisg#1 | return@+35 | providers/pbsio.py:74 | observed |
| flows_to | provider#0 | pid#1 | providers/registry.py:8 | observed |
| returns_value | provider#0 | return@+3 | providers/registry.py:10 | observed |
| returns_value | self#0 | return@+1 | providers/registry.py:13 | observed |
| returns_value | provider_id#0 | return@+1 | providers/registry.py:13 | observed |
| returns_value | self#0 | return@+1 | providers/registry.py:16 | observed |
| flows_to | self#0 | p#1 | providers/registry.py:19 | observed |
| flows_to | provider_id#0 | p#1 | providers/registry.py:19 | observed |
| returns_value | p#1 | return@+2 | providers/registry.py:20 | observed |
| guards | self#0 | for_loop | providers/registry.py:24 | observed |
| flows_to | self#0 | p#1 | providers/registry.py:24 | observed |
| flows_to | p#1 | r#1 | providers/registry.py:26 | observed |
| flows_to | source#0 | r#1 | providers/registry.py:26 | observed |
| flows_to | context#0 | r#1 | providers/registry.py:26 | observed |
| flows_to | exc#1 | r#2 | providers/registry.py:28 | observed |
| phi_input | exc#1 | exc#2 | providers/registry.py:25 | strongly_inferred |
| phi_input | exc:undefined | exc#2 | providers/registry.py:25 | unresolved |
| phi_input | r#1 | r#3 | providers/registry.py:25 | strongly_inferred |
| phi_input | r#2 | r#3 | providers/registry.py:25 | strongly_inferred |
| flows_to | rows#1 | expr@+7 | providers/registry.py:29 | observed |
| flows_to | p#1 | expr@+7 | providers/registry.py:29 | observed |
| flows_to | r#3 | expr@+7 | providers/registry.py:29 | observed |
| phi_input | exc#2 | exc#3 | providers/registry.py:24 | strongly_inferred |
| phi_input | exc:undefined | exc#3 | providers/registry.py:24 | unresolved |
| phi_input | p#1 | p#2 | providers/registry.py:24 | strongly_inferred |
| phi_input | p:undefined | p#2 | providers/registry.py:24 | unresolved |
| phi_input | r#3 | r#4 | providers/registry.py:24 | strongly_inferred |
| phi_input | r:undefined | r#4 | providers/registry.py:24 | unresolved |
| returns_value | rows#1 | return@+8 | providers/registry.py:30 | observed |
| guards | provider_id#0 | branch | providers/registry.py:33 | observed |
| flows_to | self#0 | p#1 | providers/registry.py:34 | observed |
| flows_to | provider_id#0 | p#1 | providers/registry.py:34 | observed |
| guards | p#1 | branch | providers/registry.py:35 | observed |
| flows_to | p#1 | probe#1 | providers/registry.py:36 | observed |
| flows_to | source#0 | probe#1 | providers/registry.py:36 | observed |
| flows_to | context#0 | probe#1 | providers/registry.py:36 | observed |
| guards | probe#1 | branch | providers/registry.py:37 | observed |
| returns_value | p#1 | return@+7 | providers/registry.py:39 | observed |
| returns_value | probe#1 | return@+7 | providers/registry.py:39 | observed |
| flows_to | self#0 | probes#1 | providers/registry.py:40 | observed |
| flows_to | source#0 | probes#1 | providers/registry.py:40 | observed |
| flows_to | context#0 | probes#1 | providers/registry.py:40 | observed |
| flows_to | probes#1 | best#1 | providers/registry.py:41 | observed |
| guards | best#1 | branch | providers/registry.py:42 | observed |
| returns_value | self#0 | return@+11 | providers/registry.py:43 | observed |
| returns_value | best#1 | return@+11 | providers/registry.py:43 | observed |
| returns_value | status#0 | return@+1 | query.py:8 | observed |
| returns_value | data#0 | return@+1 | query.py:8 | observed |
| returns_value | evidence_refs#0 | return@+1 | query.py:8 | observed |
| returns_value | unknown_refs#0 | return@+1 | query.py:8 | observed |
| returns_value | conflict_refs#0 | return@+1 | query.py:8 | observed |
| returns_value | warnings#0 | return@+1 | query.py:8 | observed |
| returns_value | ws#0 | return@+1 | query.py:11 | observed |
| flows_to | ws#0 | m#1 | query.py:14 | observed |
| returns_value | m#1 | return@+2 | query.py:16 | observed |
| returns_value | m#1 | return@+2 | query.py:17 | observed |
| returns_value | m#1 | return@+2 | query.py:18 | observed |
| returns_value | m#1 | return@+2 | query.py:19 | observed |
| returns_value | m#1 | return@+2 | query.py:20 | observed |
| returns_value | provider_manifests#0 | return@+2 | query.py:21 | observed |
| returns_value | m#1 | return@+2 | query.py:22 | observed |
| returns_value | ws#0 | return@+2 | query.py:22 | observed |
| returns_value | ws#0 | return@+0 | query.py:26 | observed |
| guards | ws#0 | for_loop | query.py:30 | observed |
| flows_to | ws#0 | n#1 | query.py:30 | observed |
| guards | kinds#0 | branch | query.py:31 | observed |
| guards | n#1 | branch | query.py:31 | observed |
| flows_to | n#1 | hay#1 | query.py:32 | observed |
| guards | q#0 | branch | query.py:33 | observed |
| guards | hay#1 | branch | query.py:33 | observed |
| flows_to | n#1 | score#1 | query.py:34 | observed |
| flows_to | q#0 | score#1 | query.py:34 | observed |
| flows_to | rows#1 | expr@+7 | query.py:35 | observed |
| flows_to | score#1 | expr@+7 | query.py:35 | observed |
| flows_to | n#1 | expr@+7 | query.py:35 | observed |
| flows_to | ws#0 | expr@+7 | query.py:35 | observed |
| phi_input | score#1 | score#2 | query.py:33 | strongly_inferred |
| phi_input | score:undefined | score#2 | query.py:33 | unresolved |
| phi_input | hay#1 | hay#2 | query.py:30 | strongly_inferred |
| phi_input | hay:undefined | hay#2 | query.py:30 | unresolved |
| phi_input | n#1 | n#2 | query.py:30 | strongly_inferred |
| phi_input | n:undefined | n#2 | query.py:30 | unresolved |
| phi_input | score#2 | score#3 | query.py:30 | strongly_inferred |
| phi_input | score:undefined | score#3 | query.py:30 | unresolved |
| returns_value | rows#1 | return@+8 | query.py:36 | observed |
| flows_to | query#0 | q#1 | query.py:39 | observed |
| flows_to | kinds#0 | kinds#1 | query.py:39 | observed |
| flows_to | ws#0 | rows#1 | query.py:39 | observed |
| flows_to | q#1 | rows#1 | query.py:39 | observed |
| flows_to | kinds#1 | rows#1 | query.py:39 | observed |
| guards | ws#0 | for_loop | query.py:40 | observed |
| flows_to | ws#0 | a#1 | query.py:40 | observed |
| guards | kinds#1 | branch | query.py:41 | observed |
| guards | a#1 | branch | query.py:41 | observed |
| flows_to | a#1 | hay#1 | query.py:42 | observed |
| guards | q#1 | branch | query.py:43 | observed |
| guards | hay#1 | branch | query.py:43 | observed |
| flows_to | rows#1 | expr@+5 | query.py:43 | observed |
| flows_to | a#1 | expr@+5 | query.py:43 | observed |
| phi_input | a#1 | a#2 | query.py:40 | strongly_inferred |
| phi_input | a:undefined | a#2 | query.py:40 | unresolved |
| phi_input | hay#1 | hay#2 | query.py:40 | strongly_inferred |
| phi_input | hay:undefined | hay#2 | query.py:40 | unresolved |
| guards | ws#0 | for_loop | query.py:44 | observed |
| flows_to | ws#0 | c#1 | query.py:44 | observed |
| guards | kinds#1 | branch | query.py:45 | observed |
| guards | c#1 | branch | query.py:45 | observed |
| flows_to | c#1 | hay#3 | query.py:46 | observed |
| guards | q#1 | branch | query.py:47 | observed |
| guards | hay#3 | branch | query.py:47 | observed |
| flows_to | rows#1 | expr@+9 | query.py:47 | observed |
| flows_to | c#1 | expr@+9 | query.py:47 | observed |
| phi_input | c#1 | c#2 | query.py:44 | strongly_inferred |
| phi_input | c:undefined | c#2 | query.py:44 | unresolved |
| phi_input | hay#2 | hay#4 | query.py:44 | strongly_inferred |
| phi_input | hay#3 | hay#4 | query.py:44 | strongly_inferred |
| guards | ws#0 | for_loop | query.py:48 | observed |
| flows_to | ws#0 | o#1 | query.py:48 | observed |
| flows_to | o#1 | hay#5 | query.py:49 | observed |
| guards | q#1 | branch | query.py:50 | observed |
| guards | hay#5 | branch | query.py:50 | observed |
| flows_to | rows#1 | expr@+12 | query.py:50 | observed |
| flows_to | o#1 | expr@+12 | query.py:50 | observed |
| phi_input | hay#4 | hay#6 | query.py:48 | strongly_inferred |
| phi_input | hay#5 | hay#6 | query.py:48 | strongly_inferred |
| phi_input | o#1 | o#2 | query.py:48 | strongly_inferred |
| phi_input | o:undefined | o#2 | query.py:48 | unresolved |
| flows_to | rows#1 | expr@+13 | query.py:51 | observed |
| returns_value | rows#1 | return@+14 | query.py:52 | observed |
| returns_value | limit#0 | return@+14 | query.py:52 | observed |
| guards | anchor#0 | branch | query.py:55 | observed |
| guards | ws#0 | branch | query.py:55 | observed |
| returns_value | anchor#0 | return@+1 | query.py:55 | observed |
| flows_to | anchor#0 | q#1 | query.py:56 | observed |
| guards | ws#0 | for_loop | query.py:58 | observed |
| flows_to | ws#0 | n#1 | query.py:58 | observed |
| guards | n#1 | branch | query.py:60 | observed |
| guards | key#1 | branch | query.py:60 | observed |
| guards | q#1 | branch | query.py:60 | observed |
| flows_to | exact#1 | expr@+7 | query.py:61 | observed |
| flows_to | priority#1 | expr@+7 | query.py:61 | observed |
| flows_to | n#1 | expr@+7 | query.py:61 | observed |
| phi_input | key#1 | key#2 | query.py:59 | strongly_inferred |
| phi_input | key:undefined | key#2 | query.py:59 | unresolved |
| phi_input | key#2 | key#3 | query.py:58 | strongly_inferred |
| phi_input | key:undefined | key#3 | query.py:58 | unresolved |
| phi_input | n#1 | n#2 | query.py:58 | strongly_inferred |
| phi_input | n:undefined | n#2 | query.py:58 | unresolved |
| guards | exact#1 | branch | query.py:62 | observed |
| returns_value | exact#1 | return@+8 | query.py:62 | observed |
| flows_to | ws#0 | s#1 | query.py:63 | observed |
| flows_to | anchor#0 | s#1 | query.py:63 | observed |
| flows_to | s#1 | nodes#1 | query.py:64 | observed |
| guards | nodes#1 | branch | query.py:65 | observed |
| flows_to | nodes#1 | expr@+12 | query.py:66 | observed |
| flows_to | priority#1 | expr@+12 | query.py:66 | observed |
| returns_value | nodes#1 | return@+13 | query.py:67 | observed |
| flows_to | ws#0 | start#1 | query.py:71 | observed |
| flows_to | anchor#0 | start#1 | query.py:71 | observed |
| guards | start#1 | branch | query.py:72 | observed |
| flows_to | relations#0 | rels#1 | query.py:73 | observed |
| flows_to | start#1 | seen#1 | query.py:73 | observed |
| flows_to | start#1 | q#1 | query.py:73 | observed |
| guards | q#1 | while_loop | query.py:74 | observed |
| guards | seen#1 | while_loop | query.py:74 | observed |
| guards | max_nodes#0 | while_loop | query.py:74 | observed |
| flows_to | q#1 | nid#1 | query.py:75 | observed |
| flows_to | q#1 | d#1 | query.py:75 | observed |
| guards | d#1 | branch | query.py:76 | observed |
| guards | depth#0 | branch | query.py:76 | observed |
| guards | ws#0 | for_loop | query.py:77 | observed |
| guards | nid#1 | for_loop | query.py:77 | observed |
| flows_to | ws#0 | e#1 | query.py:77 | observed |
| flows_to | nid#1 | e#1 | query.py:77 | observed |
| guards | rels#1 | branch | query.py:78 | observed |
| guards | e#1 | branch | query.py:78 | observed |
| flows_to | selected#1 | expr@+9 | query.py:79 | observed |
| flows_to | e#1 | expr@+9 | query.py:79 | observed |
| flows_to | e#1 | other#1 | query.py:79 | observed |
| flows_to | nid#1 | other#1 | query.py:79 | observed |
| guards | other#1 | branch | query.py:80 | observed |
| guards | seen#1 | branch | query.py:80 | observed |
| guards | ws#0 | branch | query.py:80 | observed |
| flows_to | seen#1 | expr@+10 | query.py:80 | observed |
| flows_to | other#1 | expr@+10 | query.py:80 | observed |
| flows_to | q#1 | expr@+10 | query.py:80 | observed |
| flows_to | other#1 | expr@+10 | query.py:80 | observed |
| flows_to | d#1 | expr@+10 | query.py:80 | observed |
| guards | selected#1 | branch | query.py:81 | observed |
| guards | max_edges#0 | branch | query.py:81 | observed |
| phi_input | e#1 | e#2 | query.py:77 | strongly_inferred |
| phi_input | e:undefined | e#2 | query.py:77 | unresolved |
| phi_input | other#1 | other#2 | query.py:77 | strongly_inferred |
| phi_input | other:undefined | other#2 | query.py:77 | unresolved |
| guards | selected#1 | branch | query.py:82 | observed |
| guards | max_edges#0 | branch | query.py:82 | observed |
| phi_input | d#1 | d#2 | query.py:74 | strongly_inferred |
| phi_input | d:undefined | d#2 | query.py:74 | unresolved |
| phi_input | e#2 | e#3 | query.py:74 | strongly_inferred |
| phi_input | e:undefined | e#3 | query.py:74 | unresolved |
| phi_input | nid#1 | nid#2 | query.py:74 | strongly_inferred |
| phi_input | nid:undefined | nid#2 | query.py:74 | unresolved |
| phi_input | other#2 | other#3 | query.py:74 | strongly_inferred |
| phi_input | other:undefined | other#3 | query.py:74 | unresolved |
| guards | seen#1 | for_loop | query.py:84 | observed |
| flows_to | seen#1 | nid#3 | query.py:84 | observed |
| flows_to | ws#0 | n#1 | query.py:85 | observed |
| flows_to | nid#3 | n#1 | query.py:85 | observed |
| flows_to | n#1 | ev#1 | query.py:85 | observed |
| guards | ev#1 | branch | query.py:86 | observed |
| guards | ws#0 | for_loop | query.py:87 | observed |
| flows_to | ws#0 | eid#1 | query.py:87 | observed |
| flows_to | ws#0 | rec#1 | query.py:87 | observed |
| guards | ev#1 | branch | query.py:88 | observed |
| guards | rec#1 | branch | query.py:88 | observed |
| flows_to | evrefs#1 | expr@+18 | query.py:88 | observed |
| flows_to | eid#1 | expr@+18 | query.py:88 | observed |
| phi_input | eid#1 | eid#2 | query.py:87 | strongly_inferred |
| phi_input | eid:undefined | eid#2 | query.py:87 | unresolved |
| phi_input | rec#1 | rec#2 | query.py:87 | strongly_inferred |
| phi_input | rec:undefined | rec#2 | query.py:87 | unresolved |
| phi_input | eid#2 | eid#3 | query.py:86 | strongly_inferred |
| phi_input | eid:undefined | eid#3 | query.py:86 | unresolved |
| phi_input | rec#2 | rec#3 | query.py:86 | strongly_inferred |
| phi_input | rec:undefined | rec#3 | query.py:86 | unresolved |
| guards | include_evidence#0 | branch | query.py:89 | observed |
| flows_to | n#1 | expr@+19 | query.py:89 | observed |
| flows_to | nodes#1 | expr@+20 | query.py:90 | observed |
| flows_to | n#1 | expr@+20 | query.py:90 | observed |
| phi_input | eid#3 | eid#4 | query.py:84 | strongly_inferred |
| phi_input | eid:undefined | eid#4 | query.py:84 | unresolved |
| phi_input | ev#1 | ev#2 | query.py:84 | strongly_inferred |
| phi_input | ev:undefined | ev#2 | query.py:84 | unresolved |
| phi_input | n#1 | n#2 | query.py:84 | strongly_inferred |
| phi_input | n:undefined | n#2 | query.py:84 | unresolved |
| phi_input | nid#2 | nid#4 | query.py:84 | strongly_inferred |
| phi_input | nid#3 | nid#4 | query.py:84 | strongly_inferred |
| phi_input | rec#3 | rec#4 | query.py:84 | strongly_inferred |
| phi_input | rec:undefined | rec#4 | query.py:84 | unresolved |
| flows_to | ws#0 | unknown_refs#1 | query.py:91 | observed |
| flows_to | seen#1 | unknown_refs#1 | query.py:91 | observed |
| flows_to | ws#0 | conflict_refs#1 | query.py:92 | observed |
| flows_to | seen#1 | conflict_refs#1 | query.py:92 | observed |
| returns_value | start#1 | return@+23 | query.py:93 | observed |
| returns_value | nodes#1 | return@+23 | query.py:93 | observed |
| returns_value | selected#1 | return@+23 | query.py:93 | observed |
| returns_value | seen#1 | return@+23 | query.py:93 | observed |
| returns_value | ws#0 | return@+23 | query.py:93 | observed |
| returns_value | max_nodes#0 | return@+23 | query.py:93 | observed |
| returns_value | max_edges#0 | return@+23 | query.py:93 | observed |
| returns_value | unknown_refs#1 | return@+23 | query.py:93 | observed |
| returns_value | conflict_refs#1 | return@+23 | query.py:93 | observed |
| returns_value | evrefs#1 | return@+23 | query.py:93 | observed |
| guards | evidence_ids#0 | branch | query.py:96 | observed |
| flows_to | evidence_ids#0 | evidence_ids#1 | query.py:96 | observed |
| phi_input | evidence_ids#0 | evidence_ids#2 | query.py:96 | strongly_inferred |
| phi_input | evidence_ids#1 | evidence_ids#2 | query.py:96 | strongly_inferred |
| returns_value | evidence_ids#2 | return@+2 | query.py:97 | observed |
| returns_value | ws#0 | return@+2 | query.py:97 | observed |
| guards | ws#0 | for_loop | query.py:101 | observed |
| flows_to | ws#0 | f#1 | query.py:101 | observed |
| guards | category#0 | branch | query.py:102 | observed |
| guards | f#1 | branch | query.py:102 | observed |
| guards | severity#0 | branch | query.py:103 | observed |
| guards | f#1 | branch | query.py:103 | observed |
| flows_to | out#1 | expr@+5 | query.py:104 | observed |
| flows_to | f#1 | expr@+5 | query.py:104 | observed |
| phi_input | f#1 | f#2 | query.py:101 | strongly_inferred |
| phi_input | f:undefined | f#2 | query.py:101 | unresolved |
| returns_value | out#1 | return@+6 | query.py:105 | observed |
| returns_value | limit#0 | return@+6 | query.py:105 | observed |
| flows_to | ws#0 | inst#1 | query.py:108 | observed |
| guards | kind#0 | branch | query.py:109 | observed |
| flows_to | inst#1 | inst#2 | query.py:109 | observed |
| flows_to | kind#0 | inst#2 | query.py:109 | observed |
| phi_input | inst#1 | inst#3 | query.py:109 | strongly_inferred |
| phi_input | inst#2 | inst#3 | query.py:109 | strongly_inferred |
| returns_value | inst#3 | return@+3 | query.py:110 | observed |
| returns_value | limit#0 | return@+3 | query.py:110 | observed |
| returns_value | ws#0 | return@+3 | query.py:110 | observed |
| flows_to | start#0 | frontier#1 | query.py:113 | observed |
| guards | depth#0 | for_loop | query.py:114 | observed |
| flows_to | depth#0 | _#1 | query.py:114 | observed |
| guards | frontier#1 | for_loop | query.py:116 | observed |
| flows_to | frontier#1 | n#1 | query.py:116 | observed |
| aliases_at_definition | frontier#1 | n#1 | query.py:116 | observed |
| guards | ws#0 | for_loop | query.py:117 | observed |
| guards | n#1 | for_loop | query.py:117 | observed |
| flows_to | ws#0 | e#1 | query.py:117 | observed |
| flows_to | n#1 | e#1 | query.py:117 | observed |
| flows_to | e#1 | x#1 | query.py:118 | observed |
| guards | x#1 | branch | query.py:119 | observed |
| guards | ws#0 | branch | query.py:119 | observed |
| guards | seen#1 | branch | query.py:119 | observed |
| guards | start#0 | branch | query.py:119 | observed |
| flows_to | seen#1 | expr@+7 | query.py:119 | observed |
| flows_to | x#1 | expr@+7 | query.py:119 | observed |
| flows_to | nxt#1 | expr@+7 | query.py:119 | observed |
| flows_to | x#1 | expr@+7 | query.py:119 | observed |
| phi_input | e#1 | e#2 | query.py:117 | strongly_inferred |
| phi_input | e:undefined | e#2 | query.py:117 | unresolved |
| phi_input | x#1 | x#2 | query.py:117 | strongly_inferred |
| phi_input | x:undefined | x#2 | query.py:117 | unresolved |
| phi_input | e#2 | e#3 | query.py:116 | strongly_inferred |
| phi_input | e:undefined | e#3 | query.py:116 | unresolved |
| phi_input | n#1 | n#2 | query.py:116 | strongly_inferred |
| phi_input | n:undefined | n#2 | query.py:116 | unresolved |
| phi_input | x#2 | x#3 | query.py:116 | strongly_inferred |
| phi_input | x:undefined | x#3 | query.py:116 | unresolved |
| flows_to | nxt#1 | frontier#2 | query.py:120 | observed |
| aliases_at_definition | nxt#1 | frontier#2 | query.py:120 | observed |
| phi_input | _#1 | _#2 | query.py:114 | strongly_inferred |
| phi_input | _:undefined | _#2 | query.py:114 | unresolved |
| phi_input | e#3 | e#4 | query.py:114 | strongly_inferred |
| phi_input | e:undefined | e#4 | query.py:114 | unresolved |
| phi_input | frontier#1 | frontier#3 | query.py:114 | strongly_inferred |
| phi_input | frontier#2 | frontier#3 | query.py:114 | strongly_inferred |
| phi_input | n#2 | n#3 | query.py:114 | strongly_inferred |
| phi_input | n:undefined | n#3 | query.py:114 | unresolved |
| phi_input | nxt#1 | nxt#2 | query.py:114 | strongly_inferred |
| phi_input | nxt:undefined | nxt#2 | query.py:114 | unresolved |
| phi_input | x#3 | x#4 | query.py:114 | strongly_inferred |
| phi_input | x:undefined | x#4 | query.py:114 | unresolved |
| returns_value | seen#1 | return@+9 | query.py:121 | observed |
| flows_to | ws#0 | tid#1 | query.py:124 | observed |
| flows_to | target#0 | tid#1 | query.py:124 | observed |
| guards | tid#1 | branch | query.py:125 | observed |
| flows_to | ws#0 | imp#1 | query.py:126 | observed |
| flows_to | tid#1 | imp#1 | query.py:126 | observed |
| guards | imp#1 | branch | query.py:127 | observed |
| flows_to | imp#1 | call_out#1 | query.py:128 | observed |
| flows_to | imp#1 | call_in#1 | query.py:128 | observed |
| flows_to | bfs#1 | downstream#1 | query.py:139 | observed |
| flows_to | call_out#1 | downstream#1 | query.py:139 | observed |
| flows_to | tid#1 | downstream#1 | query.py:139 | observed |
| flows_to | bfs#1 | upstream#1 | query.py:139 | observed |
| flows_to | call_in#1 | upstream#1 | query.py:139 | observed |
| flows_to | tid#1 | upstream#1 | query.py:139 | observed |
| flows_to | imp#1 | state_r#1 | query.py:139 | observed |
| flows_to | tid#1 | state_r#1 | query.py:139 | observed |
| flows_to | imp#1 | state_w#1 | query.py:139 | observed |
| flows_to | tid#1 | state_w#1 | query.py:139 | observed |
| guards | state_r#1 | for_loop | query.py:140 | observed |
| guards | state_w#1 | for_loop | query.py:140 | observed |
| flows_to | state_r#1 | sid#1 | query.py:140 | observed |
| flows_to | state_w#1 | sid#1 | query.py:140 | observed |
| guards | sid#1 | branch | query.py:141 | observed |
| flows_to | sid#1 | sid#2 | query.py:141 | observed |
| phi_input | sid#1 | sid#3 | query.py:141 | strongly_inferred |
| phi_input | sid#2 | sid#3 | query.py:141 | strongly_inferred |
| flows_to | peers#1 | expr@+19 | query.py:142 | observed |
| flows_to | imp#1 | expr@+19 | query.py:142 | observed |
| flows_to | sid#3 | expr@+19 | query.py:142 | observed |
| flows_to | peers#1 | expr@+19 | query.py:142 | observed |
| flows_to | imp#1 | expr@+19 | query.py:142 | observed |
| flows_to | sid#3 | expr@+19 | query.py:142 | observed |
| phi_input | sid#3 | sid#4 | query.py:140 | strongly_inferred |
| phi_input | sid:undefined | sid#4 | query.py:140 | unresolved |
| guards | tid#1 | for_loop | query.py:144 | observed |
| guards | downstream#1 | for_loop | query.py:144 | observed |
| guards | upstream#1 | for_loop | query.py:144 | observed |
| guards | peers#1 | for_loop | query.py:144 | observed |
| flows_to | tid#1 | nid#1 | query.py:144 | observed |
| flows_to | downstream#1 | nid#1 | query.py:144 | observed |
| flows_to | upstream#1 | nid#1 | query.py:144 | observed |
| flows_to | peers#1 | nid#1 | query.py:144 | observed |
| flows_to | imp#1 | m#1 | query.py:145 | observed |
| flows_to | nid#1 | m#1 | query.py:145 | observed |
| guards | m#1 | branch | query.py:146 | observed |
| flows_to | files#1 | expr@+23 | query.py:146 | observed |
| flows_to | m#1 | expr@+23 | query.py:146 | observed |
| phi_input | m#1 | m#2 | query.py:144 | strongly_inferred |
| phi_input | m:undefined | m#2 | query.py:144 | unresolved |
| phi_input | nid#1 | nid#2 | query.py:144 | strongly_inferred |
| phi_input | nid:undefined | nid#2 | query.py:144 | unresolved |
| flows_to | ws#0 | likely_tests#1 | query.py:147 | observed |
| flows_to | files#1 | likely_tests#1 | query.py:147 | observed |
| returns_value | tid#1 | return@+25 | query.py:148 | observed |
| returns_value | downstream#1 | return@+25 | query.py:148 | observed |
| returns_value | upstream#1 | return@+25 | query.py:148 | observed |
| returns_value | state_r#1 | return@+25 | query.py:148 | observed |
| returns_value | state_w#1 | return@+25 | query.py:148 | observed |
| returns_value | peers#1 | return@+25 | query.py:148 | observed |
| returns_value | imp#1 | return@+25 | query.py:148 | observed |
| returns_value | files#1 | return@+25 | query.py:148 | observed |
| returns_value | likely_tests#1 | return@+25 | query.py:148 | observed |
| flows_to | ws#0 | downstream#2 | query.py:150 | observed |
| flows_to | tid#1 | downstream#2 | query.py:150 | observed |
| flows_to | depth#0 | downstream#2 | query.py:150 | observed |
| flows_to | tid#1 | frontier#1 | query.py:150 | observed |
| guards | depth#0 | for_loop | query.py:151 | observed |
| flows_to | depth#0 | _#1 | query.py:151 | observed |
| guards | frontier#1 | for_loop | query.py:153 | observed |
| flows_to | frontier#1 | n#1 | query.py:153 | observed |
| aliases_at_definition | frontier#1 | n#1 | query.py:153 | observed |
| guards | ws#0 | for_loop | query.py:154 | observed |
| guards | n#1 | for_loop | query.py:154 | observed |
| flows_to | ws#0 | e#1 | query.py:154 | observed |
| flows_to | n#1 | e#1 | query.py:154 | observed |
| flows_to | e#1 | x#1 | query.py:155 | observed |
| guards | x#1 | branch | query.py:156 | observed |
| guards | ws#0 | branch | query.py:156 | observed |
| guards | seen#1 | branch | query.py:156 | observed |
| guards | tid#1 | branch | query.py:156 | observed |
| flows_to | seen#1 | expr@+33 | query.py:156 | observed |
| flows_to | x#1 | expr@+33 | query.py:156 | observed |
| flows_to | nxt#1 | expr@+33 | query.py:156 | observed |
| flows_to | x#1 | expr@+33 | query.py:156 | observed |
| phi_input | e#1 | e#2 | query.py:154 | strongly_inferred |
| phi_input | e:undefined | e#2 | query.py:154 | unresolved |
| phi_input | x#1 | x#2 | query.py:154 | strongly_inferred |
| phi_input | x:undefined | x#2 | query.py:154 | unresolved |
| phi_input | e#2 | e#3 | query.py:153 | strongly_inferred |
| phi_input | e:undefined | e#3 | query.py:153 | unresolved |
| phi_input | n#1 | n#2 | query.py:153 | strongly_inferred |
| phi_input | n:undefined | n#2 | query.py:153 | unresolved |
| phi_input | x#2 | x#3 | query.py:153 | strongly_inferred |
| phi_input | x:undefined | x#3 | query.py:153 | unresolved |
| flows_to | nxt#1 | frontier#2 | query.py:157 | observed |
| aliases_at_definition | nxt#1 | frontier#2 | query.py:157 | observed |
| phi_input | _#1 | _#2 | query.py:151 | strongly_inferred |
| phi_input | _:undefined | _#2 | query.py:151 | unresolved |
| phi_input | e#3 | e#4 | query.py:151 | strongly_inferred |
| phi_input | e:undefined | e#4 | query.py:151 | unresolved |
| phi_input | frontier#2 | frontier#3 | query.py:151 | strongly_inferred |
| phi_input | frontier#1 | frontier#3 | query.py:151 | strongly_inferred |
| phi_input | n#2 | n#3 | query.py:151 | strongly_inferred |
| phi_input | n:undefined | n#3 | query.py:151 | unresolved |
| phi_input | nxt#1 | nxt#2 | query.py:151 | strongly_inferred |
| phi_input | nxt:undefined | nxt#2 | query.py:151 | unresolved |
| phi_input | x#3 | x#4 | query.py:151 | strongly_inferred |
| phi_input | x:undefined | x#4 | query.py:151 | unresolved |
| flows_to | seen#1 | upstream#3 | query.py:158 | observed |
| returns_value | tid#1 | return@+36 | query.py:159 | observed |
| returns_value | downstream#2 | return@+36 | query.py:159 | observed |
| returns_value | upstream#3 | return@+36 | query.py:159 | observed |
| returns_value | ws#0 | return@+36 | query.py:159 | observed |
| flows_to | ws#0 | rows#1 | query.py:162 | observed |
| guards | kind#0 | branch | query.py:163 | observed |
| flows_to | rows#1 | rows#2 | query.py:163 | observed |
| flows_to | kind#0 | rows#2 | query.py:163 | observed |
| phi_input | rows#1 | rows#3 | query.py:163 | strongly_inferred |
| phi_input | rows#2 | rows#3 | query.py:163 | strongly_inferred |
| guards | subject#0 | branch | query.py:164 | observed |
| flows_to | rows#3 | rows#4 | query.py:164 | observed |
| flows_to | subject#0 | rows#4 | query.py:164 | observed |
| phi_input | rows#4 | rows#5 | query.py:164 | strongly_inferred |
| phi_input | rows#3 | rows#5 | query.py:164 | strongly_inferred |
| guards | provider_id#0 | branch | query.py:165 | observed |
| flows_to | ws#0 | ing#1 | query.py:166 | observed |
| flows_to | provider_id#0 | ing#1 | query.py:166 | observed |
| flows_to | rows#5 | rows#6 | query.py:167 | observed |
| flows_to | ing#1 | rows#6 | query.py:167 | observed |
| phi_input | ing#1 | ing#2 | query.py:165 | strongly_inferred |
| phi_input | ing:undefined | ing#2 | query.py:165 | unresolved |
| phi_input | rows#6 | rows#7 | query.py:165 | strongly_inferred |
| phi_input | rows#5 | rows#7 | query.py:165 | strongly_inferred |
| returns_value | rows#7 | return@+7 | query.py:168 | observed |
| returns_value | limit#0 | return@+7 | query.py:168 | observed |
| flows_to | ws#0 | rows#1 | query.py:170 | observed |
| guards | kind#0 | branch | query.py:171 | observed |
| flows_to | rows#1 | rows#2 | query.py:171 | observed |
| flows_to | kind#0 | rows#2 | query.py:171 | observed |
| phi_input | rows#2 | rows#3 | query.py:171 | strongly_inferred |
| phi_input | rows#1 | rows#3 | query.py:171 | strongly_inferred |
| returns_value | rows#3 | return@+3 | query.py:172 | observed |
| returns_value | limit#0 | return@+3 | query.py:172 | observed |
| flows_to | ws#0 | rows#1 | query.py:174 | observed |
| guards | subject#0 | branch | query.py:175 | observed |
| flows_to | rows#1 | rows#2 | query.py:175 | observed |
| flows_to | subject#0 | rows#2 | query.py:175 | observed |
| phi_input | rows#2 | rows#3 | query.py:175 | strongly_inferred |
| phi_input | rows#1 | rows#3 | query.py:175 | strongly_inferred |
| guards | contract_type#0 | branch | query.py:176 | observed |
| flows_to | rows#3 | rows#4 | query.py:176 | observed |
| flows_to | contract_type#0 | rows#4 | query.py:176 | observed |
| phi_input | rows#3 | rows#5 | query.py:176 | strongly_inferred |
| phi_input | rows#4 | rows#5 | query.py:176 | strongly_inferred |
| guards | authority#0 | branch | query.py:177 | observed |
| flows_to | rows#5 | rows#6 | query.py:177 | observed |
| flows_to | authority#0 | rows#6 | query.py:177 | observed |
| phi_input | rows#5 | rows#7 | query.py:177 | strongly_inferred |
| phi_input | rows#6 | rows#7 | query.py:177 | strongly_inferred |
| returns_value | rows#7 | return@+5 | query.py:178 | observed |
| returns_value | limit#0 | return@+5 | query.py:178 | observed |
| flows_to | ws#0 | left_nodes#1 | query.py:181 | observed |
| flows_to | other_ws#0 | right_nodes#1 | query.py:181 | observed |
| flows_to | ws#0 | left_edges#1 | query.py:183 | observed |
| flows_to | edge_key#1 | left_edges#1 | query.py:183 | observed |
| flows_to | other_ws#0 | right_edges#1 | query.py:183 | observed |
| flows_to | edge_key#1 | right_edges#1 | query.py:183 | observed |
| flows_to | ws#0 | lfind#1 | query.py:185 | observed |
| flows_to | finding_key#1 | lfind#1 | query.py:185 | observed |
| flows_to | other_ws#0 | rfind#1 | query.py:185 | observed |
| flows_to | finding_key#1 | rfind#1 | query.py:185 | observed |
| flows_to | ws#0 | lcon#1 | query.py:186 | observed |
| flows_to | other_ws#0 | rcon#1 | query.py:186 | observed |
| flows_to | ws#0 | lart#1 | query.py:187 | observed |
| flows_to | other_ws#0 | rart#1 | query.py:187 | observed |
| flows_to | ws#0 | data#1 | query.py:188 | observed |
| flows_to | other_ws#0 | data#1 | query.py:188 | observed |
| flows_to | right_nodes#1 | data#1 | query.py:188 | observed |
| flows_to | left_nodes#1 | data#1 | query.py:188 | observed |
| flows_to | right_edges#1 | data#1 | query.py:188 | observed |
| flows_to | left_edges#1 | data#1 | query.py:188 | observed |
| flows_to | rfind#1 | data#1 | query.py:188 | observed |
| flows_to | lfind#1 | data#1 | query.py:188 | observed |
| flows_to | rcon#1 | data#1 | query.py:188 | observed |
| flows_to | lcon#1 | data#1 | query.py:188 | observed |
| flows_to | rart#1 | data#1 | query.py:188 | observed |
| flows_to | lart#1 | data#1 | query.py:188 | observed |
| returns_value | data#1 | return@+10 | query.py:190 | observed |
| flows_to | operator_id#0 | d#1 | query.py:194 | observed |
| returns_value | d#1 | return@+1 | query.py:194 | observed |
| flows_to | params#0 | p#1 | runtime.py:10 | observed |
| flows_to | self#0 | table#1 | runtime.py:12 | observed |
| flows_to | self#0 | table#1 | runtime.py:13 | observed |
| flows_to | self#0 | table#1 | runtime.py:14 | observed |
| flows_to | p#1 | table#1 | runtime.py:14 | observed |
| flows_to | self#0 | table#1 | runtime.py:15 | observed |
| flows_to | p#1 | table#1 | runtime.py:15 | observed |
| flows_to | self#0 | table#1 | runtime.py:16 | observed |
| flows_to | p#1 | table#1 | runtime.py:16 | observed |
| flows_to | self#0 | table#1 | runtime.py:17 | observed |
| flows_to | p#1 | table#1 | runtime.py:17 | observed |
| flows_to | self#0 | table#1 | runtime.py:18 | observed |
| flows_to | p#1 | table#1 | runtime.py:18 | observed |
| flows_to | self#0 | table#1 | runtime.py:19 | observed |
| flows_to | p#1 | table#1 | runtime.py:19 | observed |
| flows_to | self#0 | table#1 | runtime.py:20 | observed |
| flows_to | p#1 | table#1 | runtime.py:20 | observed |
| flows_to | self#0 | table#1 | runtime.py:21 | observed |
| flows_to | p#1 | table#1 | runtime.py:21 | observed |
| flows_to | self#0 | table#1 | runtime.py:22 | observed |
| flows_to | p#1 | table#1 | runtime.py:22 | observed |
| flows_to | self#0 | table#1 | runtime.py:23 | observed |
| flows_to | p#1 | table#1 | runtime.py:23 | observed |
| flows_to | p#1 | table#1 | runtime.py:25 | observed |
| flows_to | self#0 | table#1 | runtime.py:26 | observed |
| flows_to | self#0 | table#1 | runtime.py:27 | observed |
| flows_to | p#1 | table#1 | runtime.py:27 | observed |
| flows_to | table#1 | fn#1 | runtime.py:29 | observed |
| flows_to | operator_id#0 | fn#1 | runtime.py:29 | observed |
| guards | fn#1 | branch | runtime.py:30 | observed |
| returns_value | fn#1 | return@+22 | runtime.py:31 | observed |
| returns_value | exc#1 | return@+24 | runtime.py:33 | observed |
| returns_value | value#0 | return@+1 | util.py:6 | observed |
| returns_value | prefix#0 | return@+1 | util.py:9 | observed |
| returns_value | value#0 | return@+1 | util.py:9 | observed |
| returns_value | path#0 | return@+1 | util.py:12 | observed |
| flows_to | path#0 | p#1 | util.py:15 | observed |
| flows_to | p#1 | expr@+1 | util.py:15 | observed |
| flows_to | p#1 | expr@+2 | util.py:16 | observed |
| flows_to | obj#0 | expr@+2 | util.py:16 | observed |
| returns_value | workspace_id#0 | return@+1 | workspace.py:15 | observed |
| returns_value | name#0 | return@+1 | workspace.py:16 | observed |
| returns_value | workspace_id#0 | return@+1 | workspace.py:24 | observed |
| flows_to | workspace_dir#0 | root#1 | workspace.py:33 | observed |
| flows_to | root#1 | meta_path#1 | workspace.py:33 | observed |
| guards | meta_path#1 | branch | workspace.py:34 | observed |
| guards | overwrite#0 | branch | workspace.py:34 | observed |
| returns_value | meta_path#1 | return@+2 | workspace.py:34 | observed |
| flows_to | root#1 | expr@+3 | workspace.py:35 | observed |
| flows_to | workspace_key#0 | wid#1 | workspace.py:36 | observed |
| flows_to | wid#1 | meta#1 | workspace.py:37 | observed |
| flows_to | name#0 | meta#1 | workspace.py:37 | observed |
| flows_to | root#1 | meta#1 | workspace.py:37 | observed |
| flows_to | meta_path#1 | expr@+6 | workspace.py:38 | observed |
| flows_to | meta#1 | expr@+6 | workspace.py:38 | observed |
| flows_to | root#1 | expr@+7 | workspace.py:39 | observed |
| flows_to | root#1 | expr@+8 | workspace.py:40 | observed |
| flows_to | root#1 | expr@+9 | workspace.py:41 | observed |
| flows_to | root#1 | expr@+10 | workspace.py:42 | observed |
| flows_to | root#1 | expr@+11 | workspace.py:43 | observed |
| returns_value | meta#1 | return@+12 | workspace.py:44 | observed |
| returns_value | rec#0 | return@+1 | workspace.py:48 | observed |
| flows_to | rec#0 | out#1 | workspace.py:51 | observed |
| flows_to | out#1 | ids#1 | workspace.py:51 | observed |
| flows_to | out#1 | old#1 | workspace.py:52 | observed |
| guards | old#1 | branch | workspace.py:53 | observed |
| guards | ids#1 | branch | workspace.py:53 | observed |
| flows_to | ids#1 | expr@+3 | workspace.py:53 | observed |
| flows_to | old#1 | expr@+3 | workspace.py:53 | observed |
| guards | ingestion_id#0 | branch | workspace.py:54 | observed |
| guards | ids#1 | branch | workspace.py:54 | observed |
| flows_to | ids#1 | expr@+4 | workspace.py:54 | observed |
| flows_to | ingestion_id#0 | expr@+4 | workspace.py:54 | observed |
| returns_value | out#1 | return@+6 | workspace.py:56 | observed |
| flows_to | existing#0 | by#1 | workspace.py:59 | observed |
| flows_to | id_key#0 | by#1 | workspace.py:59 | observed |
| guards | incoming#0 | for_loop | workspace.py:60 | observed |
| flows_to | incoming#0 | raw#1 | workspace.py:60 | observed |
| guards | raw#1 | branch | workspace.py:61 | observed |
| flows_to | raw#1 | rec#1 | workspace.py:62 | observed |
| flows_to | source_ingestion#0 | rec#1 | workspace.py:62 | observed |
| flows_to | rec#1 | rid#1 | workspace.py:63 | observed |
| flows_to | id_key#0 | rid#1 | workspace.py:63 | observed |
| guards | rid#1 | branch | workspace.py:65 | observed |
| guards | by#1 | branch | workspace.py:65 | observed |
| flows_to | existing#0 | expr@+8 | workspace.py:66 | observed |
| flows_to | rec#1 | expr@+8 | workspace.py:66 | observed |
| guards | by#1 | branch | workspace.py:67 | observed |
| guards | rid#1 | branch | workspace.py:67 | observed |
| guards | rec#1 | branch | workspace.py:67 | observed |
| flows_to | by#1 | merged#1 | workspace.py:68 | observed |
| flows_to | rid#1 | merged#1 | workspace.py:68 | observed |
| flows_to | rec#1 | merged#1 | workspace.py:68 | observed |
| flows_to | conflicts#0 | expr@+13 | workspace.py:71 | observed |
| flows_to | rid#1 | expr@+13 | workspace.py:72 | observed |
| flows_to | source_ingestion#0 | expr@+13 | workspace.py:72 | observed |
| flows_to | id_key#0 | expr@+13 | workspace.py:72 | observed |
| flows_to | rec#1 | expr@+13 | workspace.py:72 | observed |
| flows_to | rid#1 | expr@+13 | workspace.py:73 | observed |
| flows_to | by#1 | expr@+13 | workspace.py:74 | observed |
| flows_to | rid#1 | expr@+13 | workspace.py:74 | observed |
| flows_to | rec#1 | expr@+13 | workspace.py:74 | observed |
| flows_to | source_ingestion#0 | expr@+13 | workspace.py:74 | observed |
| phi_input | merged#1 | merged#2 | workspace.py:67 | strongly_inferred |
| phi_input | merged:undefined | merged#2 | workspace.py:67 | unresolved |
| phi_input | merged#2 | merged#3 | workspace.py:65 | strongly_inferred |
| phi_input | merged:undefined | merged#3 | workspace.py:65 | unresolved |
| phi_input | merged#3 | merged#4 | workspace.py:60 | strongly_inferred |
| phi_input | merged:undefined | merged#4 | workspace.py:60 | unresolved |
| phi_input | raw#1 | raw#2 | workspace.py:60 | strongly_inferred |
| phi_input | raw:undefined | raw#2 | workspace.py:60 | unresolved |
| phi_input | rec#1 | rec#2 | workspace.py:60 | strongly_inferred |
| phi_input | rec:undefined | rec#2 | workspace.py:60 | unresolved |
| phi_input | rid#1 | rid#2 | workspace.py:60 | strongly_inferred |
| phi_input | rid:undefined | rid#2 | workspace.py:60 | unresolved |
| returns_value | existing#0 | return@+18 | workspace.py:76 | observed |
| guards | incoming#0 | for_loop | workspace.py:80 | observed |
| flows_to | incoming#0 | eid#1 | workspace.py:80 | observed |
| flows_to | incoming#0 | raw#1 | workspace.py:80 | observed |
| flows_to | raw#1 | rec#1 | workspace.py:81 | observed |
| flows_to | rec#1 | expr@+2 | workspace.py:81 | observed |
| flows_to | eid#1 | expr@+2 | workspace.py:81 | observed |
| flows_to | rec#1 | expr@+2 | workspace.py:81 | observed |
| guards | eid#1 | branch | workspace.py:82 | observed |
| guards | existing#0 | branch | workspace.py:82 | observed |
| flows_to | existing#0 | old#1 | workspace.py:84 | observed |
| flows_to | eid#1 | old#1 | workspace.py:84 | observed |
| guards | rec#1 | for_loop | workspace.py:86 | observed |
| flows_to | rec#1 | owner#1 | workspace.py:86 | observed |
| guards | owner#1 | branch | workspace.py:87 | observed |
| guards | old#1 | branch | workspace.py:87 | observed |
| flows_to | old#1 | expr@+8 | workspace.py:87 | observed |
| flows_to | owner#1 | expr@+8 | workspace.py:87 | observed |
| phi_input | owner#1 | owner#2 | workspace.py:86 | strongly_inferred |
| phi_input | owner:undefined | owner#2 | workspace.py:86 | unresolved |
| guards | rec#1 | for_loop | workspace.py:88 | observed |
| flows_to | rec#1 | k#1 | workspace.py:88 | observed |
| flows_to | rec#1 | v#1 | workspace.py:88 | observed |
| guards | k#1 | branch | workspace.py:89 | observed |
| guards | old#1 | branch | workspace.py:89 | observed |
| phi_input | k#1 | k#2 | workspace.py:88 | strongly_inferred |
| phi_input | k:undefined | k#2 | workspace.py:88 | unresolved |
| phi_input | v#1 | v#2 | workspace.py:88 | strongly_inferred |
| phi_input | v:undefined | v#2 | workspace.py:88 | unresolved |
| phi_input | eid#1 | eid#2 | workspace.py:80 | strongly_inferred |
| phi_input | eid:undefined | eid#2 | workspace.py:80 | unresolved |
| phi_input | k#2 | k#3 | workspace.py:80 | strongly_inferred |
| phi_input | k:undefined | k#3 | workspace.py:80 | unresolved |
| phi_input | old#1 | old#2 | workspace.py:80 | strongly_inferred |
| phi_input | old:undefined | old#2 | workspace.py:80 | unresolved |
| phi_input | owner#2 | owner#3 | workspace.py:80 | strongly_inferred |
| phi_input | owner:undefined | owner#3 | workspace.py:80 | unresolved |
| phi_input | raw#1 | raw#2 | workspace.py:80 | strongly_inferred |
| phi_input | raw:undefined | raw#2 | workspace.py:80 | unresolved |
| phi_input | rec#1 | rec#2 | workspace.py:80 | strongly_inferred |
| phi_input | rec:undefined | rec#2 | workspace.py:80 | unresolved |
| phi_input | v#2 | v#3 | workspace.py:80 | strongly_inferred |
| phi_input | v:undefined | v#3 | workspace.py:80 | unresolved |
| returns_value | existing#0 | return@+11 | workspace.py:90 | observed |
| flows_to | workspace_dir#0 | root#1 | workspace.py:94 | observed |
| guards | root#1 | branch | workspace.py:95 | observed |
| flows_to | root#1 | expr@+3 | workspace.py:96 | observed |
| flows_to | name#0 | expr@+3 | workspace.py:96 | observed |
| flows_to | result#0 | expr@+3 | workspace.py:96 | observed |
| flows_to | root#1 | meta#1 | workspace.py:97 | observed |
| flows_to | result#0 | provider#1 | workspace.py:98 | observed |
| flows_to | provider#1 | ingestion_id#1 | workspace.py:99 | observed |
| flows_to | result#0 | ingestion_id#1 | workspace.py:99 | observed |
| guards | meta#1 | branch | workspace.py:100 | observed |
| guards | ingestion_id#1 | branch | workspace.py:100 | observed |
| returns_value | meta#1 | return@+8 | workspace.py:101 | observed |
| returns_value | ingestion_id#1 | return@+8 | workspace.py:101 | observed |
| flows_to | root#1 | idir#1 | workspace.py:103 | observed |
| flows_to | ingestion_id#1 | idir#1 | workspace.py:103 | observed |
| flows_to | idir#1 | payload_dir#1 | workspace.py:103 | observed |
| flows_to | payload_dir#1 | expr@+10 | workspace.py:103 | observed |
| guards | result#0 | for_loop | workspace.py:105 | observed |
| flows_to | result#0 | payload_name#1 | workspace.py:105 | observed |
| flows_to | result#0 | obj#1 | workspace.py:105 | observed |
| flows_to | payload_name#1 | safe#1 | workspace.py:106 | observed |
| flows_to | ingestion_id#1 | rel#1 | workspace.py:107 | observed |
| flows_to | safe#1 | rel#1 | workspace.py:107 | observed |
| flows_to | root#1 | expr@+15 | workspace.py:108 | observed |
| flows_to | rel#1 | expr@+15 | workspace.py:108 | observed |
| flows_to | obj#1 | expr@+15 | workspace.py:108 | observed |
| phi_input | obj#1 | obj#2 | workspace.py:105 | strongly_inferred |
| phi_input | obj:undefined | obj#2 | workspace.py:105 | unresolved |
| phi_input | payload_name#1 | payload_name#2 | workspace.py:105 | strongly_inferred |
| phi_input | payload_name:undefined | payload_name#2 | workspace.py:105 | unresolved |
| phi_input | rel#1 | rel#2 | workspace.py:105 | strongly_inferred |
| phi_input | rel:undefined | rel#2 | workspace.py:105 | unresolved |
| phi_input | safe#1 | safe#2 | workspace.py:105 | strongly_inferred |
| phi_input | safe:undefined | safe#2 | workspace.py:105 | unresolved |
| guards | result#0 | for_loop | workspace.py:111 | observed |
| flows_to | result#0 | g#1 | workspace.py:111 | observed |
| flows_to | g#1 | gg#1 | workspace.py:112 | observed |
| flows_to | gg#1 | pname#1 | workspace.py:112 | observed |
| guards | pname#1 | branch | workspace.py:113 | observed |
| flows_to | graphs#1 | expr@+21 | workspace.py:114 | observed |
| flows_to | gg#1 | expr@+21 | workspace.py:114 | observed |
| phi_input | g#1 | g#2 | workspace.py:111 | strongly_inferred |
| phi_input | g:undefined | g#2 | workspace.py:111 | unresolved |
| phi_input | gg#1 | gg#2 | workspace.py:111 | strongly_inferred |
| phi_input | gg:undefined | gg#2 | workspace.py:111 | unresolved |
| phi_input | pname#1 | pname#2 | workspace.py:111 | strongly_inferred |
| phi_input | pname:undefined | pname#2 | workspace.py:111 | unresolved |
| flows_to | ingestion_id#1 | ingestion#1 | workspace.py:117 | observed |
| flows_to | provider#1 | ingestion#1 | workspace.py:118 | observed |
| flows_to | result#0 | ingestion#1 | workspace.py:119 | observed |
| flows_to | graphs#1 | ingestion#1 | workspace.py:120 | observed |
| flows_to | result#0 | ingestion#1 | workspace.py:120 | observed |
| flows_to | result#0 | ingestion#1 | workspace.py:121 | observed |
| flows_to | meta#1 | expr@+30 | workspace.py:123 | observed |
| flows_to | ingestion#1 | expr@+30 | workspace.py:123 | observed |
| flows_to | meta#1 | conflicts#1 | workspace.py:124 | observed |
| guards | meta#1 | for_loop | workspace.py:127 | observed |
| flows_to | meta#1 | oldg#1 | workspace.py:127 | observed |
| flows_to | oldg#1 | ref#1 | workspace.py:128 | observed |
| guards | ref#1 | branch | workspace.py:129 | observed |
| guards | root#1 | branch | workspace.py:129 | observed |
| flows_to | root#1 | gd#1 | workspace.py:130 | observed |
| flows_to | ref#1 | gd#1 | workspace.py:130 | observed |
| guards | gd#1 | for_loop | workspace.py:131 | observed |
| flows_to | gd#1 | n#1 | workspace.py:131 | observed |
| guards | n#1 | branch | workspace.py:132 | observed |
| phi_input | n#1 | n#2 | workspace.py:131 | strongly_inferred |
| phi_input | n:undefined | n#2 | workspace.py:131 | unresolved |
| guards | gd#1 | for_loop | workspace.py:133 | observed |
| flows_to | gd#1 | e#1 | workspace.py:133 | observed |
| guards | e#1 | branch | workspace.py:134 | observed |
| phi_input | e#1 | e#2 | workspace.py:133 | strongly_inferred |
| phi_input | e:undefined | e#2 | workspace.py:133 | unresolved |
| phi_input | e#2 | e#3 | workspace.py:127 | strongly_inferred |
| phi_input | e:undefined | e#3 | workspace.py:127 | unresolved |
| phi_input | gd#1 | gd#2 | workspace.py:127 | strongly_inferred |
| phi_input | gd:undefined | gd#2 | workspace.py:127 | unresolved |
| phi_input | n#2 | n#3 | workspace.py:127 | strongly_inferred |
| phi_input | n:undefined | n#3 | workspace.py:127 | unresolved |
| phi_input | oldg#1 | oldg#2 | workspace.py:127 | strongly_inferred |
| phi_input | oldg:undefined | oldg#2 | workspace.py:127 | unresolved |
| phi_input | ref#1 | ref#2 | workspace.py:127 | strongly_inferred |
| phi_input | ref:undefined | ref#2 | workspace.py:127 | unresolved |
| guards | graphs#1 | for_loop | workspace.py:135 | observed |
| flows_to | graphs#1 | g#3 | workspace.py:135 | observed |
| aliases_at_definition | graphs#1 | g#3 | workspace.py:135 | observed |
| flows_to | payload_refs#1 | pname#3 | workspace.py:136 | observed |
| flows_to | g#3 | pname#3 | workspace.py:136 | observed |
| flows_to | pname#3 | gd#3 | workspace.py:137 | observed |
| flows_to | result#0 | gd#3 | workspace.py:137 | observed |
| guards | gd#3 | for_loop | workspace.py:138 | observed |
| guards | existing_nodes#1 | for_loop | workspace.py:138 | observed |
| guards | existing_edges#1 | for_loop | workspace.py:138 | observed |
| flows_to | gd#3 | kind#1 | workspace.py:138 | observed |
| flows_to | existing_nodes#1 | kind#1 | workspace.py:138 | observed |
| flows_to | existing_edges#1 | kind#1 | workspace.py:138 | observed |
| flows_to | gd#3 | items#1 | workspace.py:138 | observed |
| flows_to | existing_nodes#1 | items#1 | workspace.py:138 | observed |
| flows_to | existing_edges#1 | items#1 | workspace.py:138 | observed |
| flows_to | gd#3 | index#1 | workspace.py:138 | observed |
| flows_to | existing_nodes#1 | index#1 | workspace.py:138 | observed |
| flows_to | existing_edges#1 | index#1 | workspace.py:138 | observed |
| guards | items#1 | for_loop | workspace.py:139 | observed |
| flows_to | items#1 | item#1 | workspace.py:139 | observed |
| aliases_at_definition | items#1 | item#1 | workspace.py:139 | observed |
| flows_to | item#1 | iid#1 | workspace.py:140 | observed |
| guards | iid#1 | branch | workspace.py:141 | observed |
| guards | index#1 | branch | workspace.py:141 | observed |
| flows_to | index#1 | old#1 | workspace.py:142 | observed |
| flows_to | iid#1 | old#1 | workspace.py:142 | observed |
| flows_to | index#1 | old_gid#1 | workspace.py:142 | observed |
| flows_to | iid#1 | old_gid#1 | workspace.py:142 | observed |
| guards | old#1 | branch | workspace.py:143 | observed |
| guards | item#1 | branch | workspace.py:143 | observed |
| flows_to | conflicts#1 | expr@+51 | workspace.py:144 | observed |
| flows_to | iid#1 | expr@+51 | workspace.py:144 | observed |
| flows_to | old_gid#1 | expr@+51 | workspace.py:144 | observed |
| flows_to | g#3 | expr@+51 | workspace.py:144 | observed |
| flows_to | kind#1 | expr@+51 | workspace.py:144 | observed |
| flows_to | old#1 | expr@+51 | workspace.py:144 | observed |
| flows_to | item#1 | expr@+51 | workspace.py:144 | observed |
| phi_input | iid#1 | iid#2 | workspace.py:139 | strongly_inferred |
| phi_input | iid:undefined | iid#2 | workspace.py:139 | unresolved |
| phi_input | item#1 | item#2 | workspace.py:139 | strongly_inferred |
| phi_input | item:undefined | item#2 | workspace.py:139 | unresolved |
| phi_input | old#1 | old#2 | workspace.py:139 | strongly_inferred |
| phi_input | old:undefined | old#2 | workspace.py:139 | unresolved |
| phi_input | old_gid#1 | old_gid#2 | workspace.py:139 | strongly_inferred |
| phi_input | old_gid:undefined | old_gid#2 | workspace.py:139 | unresolved |
| phi_input | iid#2 | iid#3 | workspace.py:138 | strongly_inferred |
| phi_input | iid:undefined | iid#3 | workspace.py:138 | unresolved |
| phi_input | index#1 | index#2 | workspace.py:138 | strongly_inferred |
| phi_input | index:undefined | index#2 | workspace.py:138 | unresolved |
| phi_input | item#2 | item#3 | workspace.py:138 | strongly_inferred |
| phi_input | item:undefined | item#3 | workspace.py:138 | unresolved |
| phi_input | items#1 | items#2 | workspace.py:138 | strongly_inferred |
| phi_input | items:undefined | items#2 | workspace.py:138 | unresolved |
| phi_input | kind#1 | kind#2 | workspace.py:138 | strongly_inferred |
| phi_input | kind:undefined | kind#2 | workspace.py:138 | unresolved |
| phi_input | old#2 | old#3 | workspace.py:138 | strongly_inferred |
| phi_input | old:undefined | old#3 | workspace.py:138 | unresolved |
| phi_input | old_gid#2 | old_gid#3 | workspace.py:138 | strongly_inferred |
| phi_input | old_gid:undefined | old_gid#3 | workspace.py:138 | unresolved |
| phi_input | g#3 | g#4 | workspace.py:135 | strongly_inferred |
| phi_input | g#2 | g#4 | workspace.py:135 | strongly_inferred |
| phi_input | gd#3 | gd#4 | workspace.py:135 | strongly_inferred |
| phi_input | gd#2 | gd#4 | workspace.py:135 | strongly_inferred |
| phi_input | iid#3 | iid#4 | workspace.py:135 | strongly_inferred |
| phi_input | iid:undefined | iid#4 | workspace.py:135 | unresolved |
| phi_input | index#2 | index#3 | workspace.py:135 | strongly_inferred |
| phi_input | index:undefined | index#3 | workspace.py:135 | unresolved |
| phi_input | item#3 | item#4 | workspace.py:135 | strongly_inferred |
| phi_input | item:undefined | item#4 | workspace.py:135 | unresolved |
| phi_input | items#2 | items#3 | workspace.py:135 | strongly_inferred |
| phi_input | items:undefined | items#3 | workspace.py:135 | unresolved |
| phi_input | kind#2 | kind#3 | workspace.py:135 | strongly_inferred |
| phi_input | kind:undefined | kind#3 | workspace.py:135 | unresolved |
| phi_input | old#3 | old#4 | workspace.py:135 | strongly_inferred |
| phi_input | old:undefined | old#4 | workspace.py:135 | unresolved |
| phi_input | old_gid#3 | old_gid#4 | workspace.py:135 | strongly_inferred |
| phi_input | old_gid:undefined | old_gid#4 | workspace.py:135 | unresolved |
| phi_input | pname#2 | pname#4 | workspace.py:135 | strongly_inferred |
| phi_input | pname#3 | pname#4 | workspace.py:135 | strongly_inferred |
| flows_to | meta#1 | expr@+52 | workspace.py:145 | observed |
| flows_to | result#0 | expr@+52 | workspace.py:145 | observed |
| flows_to | conflicts#1 | expr@+52 | workspace.py:145 | observed |
| flows_to | ingestion_id#1 | expr@+52 | workspace.py:145 | observed |
| flows_to | meta#1 | expr@+53 | workspace.py:146 | observed |
| flows_to | graphs#1 | expr@+53 | workspace.py:146 | observed |
| flows_to | conflicts#1 | expr@+53 | workspace.py:146 | observed |
| flows_to | ingestion_id#1 | expr@+53 | workspace.py:146 | observed |
State regions
| Access | Function | Region | Kind | Evidence |
|---|---|---|---|---|
| reads_state | IntentTextProvider.probe | providers.intent_text:IntentTextProvider:self.EXT | object_field | providers/intent_text.py:17 |
| writes_state | ProviderRegistry.__init__ | providers.registry:ProviderRegistry:self._providers | object_field | providers/registry.py:5 |
| writes_state | ProviderRegistry.register | providers.registry:ProviderRegistry:self._providers[] | state_container | providers/registry.py:9 |
| reads_state | ProviderRegistry.register | providers.registry:ProviderRegistry:self._providers | object_field | providers/registry.py:9 |
| reads_state | ProviderRegistry.get | providers.registry:ProviderRegistry:self._providers | object_field | providers/registry.py:13 |
| reads_state | ProviderRegistry.list | providers.registry:ProviderRegistry:self._providers | object_field | providers/registry.py:16 |
| reads_state | ProviderRegistry.probe_all | providers.registry:ProviderRegistry:self._providers | object_field | providers/registry.py:24 |
| writes_state | Runtime.__init__ | runtime:Runtime:self.ws | object_field | runtime.py:8 |
| writes_state | Runtime.__init__ | runtime:Runtime:self.providers | object_field | runtime.py:8 |
| writes_state | _merge_evidence | param:existing[] | parameter_container | workspace.py:83 |
| reads_state | _merge_evidence | param:existing[] | parameter_container | workspace.py:84 |
| reads_state | commit_provider_result | param:result[] | parameter_container | workspace.py:171 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.root | object_field | workspace.py:199 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.meta | object_field | workspace.py:199 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.root | object_field | workspace.py:199 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.evidence | object_field | workspace.py:200 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.root | object_field | workspace.py:200 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.objects | object_field | workspace.py:201 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.root | object_field | workspace.py:201 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.findings | object_field | workspace.py:202 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.root | object_field | workspace.py:202 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.motifs | object_field | workspace.py:203 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.root | object_field | workspace.py:203 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.impacts | object_field | workspace.py:204 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.root | object_field | workspace.py:204 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.graphs | object_field | workspace.py:205 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.nodes | object_field | workspace.py:205 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.edges | object_field | workspace.py:205 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.graph_of_node | object_field | workspace.py:205 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.graph_of_edge | object_field | workspace.py:205 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.node_collisions | object_field | workspace.py:205 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.cisg | object_field | workspace.py:206 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.meta | object_field | workspace.py:207 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.root | object_field | workspace.py:210 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.graphs[] | state_container | workspace.py:210 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.graphs | object_field | workspace.py:210 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.cisg | object_field | workspace.py:211 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.cisg | object_field | workspace.py:211 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.nodes | object_field | workspace.py:215 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.nodes[] | state_container | workspace.py:215 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.node_collisions | object_field | workspace.py:216 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.graph_of_node | object_field | workspace.py:216 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.nodes[] | state_container | workspace.py:217 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.nodes | object_field | workspace.py:217 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.graph_of_node[] | state_container | workspace.py:217 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.graph_of_node | object_field | workspace.py:217 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.edges | object_field | workspace.py:219 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.graph_of_edge[] | state_container | workspace.py:219 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.graph_of_edge | object_field | workspace.py:219 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.out | object_field | workspace.py:220 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.inc | object_field | workspace.py:220 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.edges | object_field | workspace.py:221 |
| writes_state | Workspace.__init__ | workspace:Workspace:self.impact | object_field | workspace.py:224 |
| reads_state | Workspace.__init__ | workspace:Workspace:self.impacts | object_field | workspace.py:224 |
| reads_state | Workspace.impact_for | workspace:Workspace:self.impacts | object_field | workspace.py:227 |
Module binding reads
| Function | Binding | Evidence |
|---|---|---|
| PBSIOProvider.ingest | providers.pbsio:binding:PAYLOAD_FILES | providers/pbsio.py:32 |
| envelope | query:binding:TOOL_RESULT_SCHEMA | query.py:8 |
| _empty_meta | workspace:binding:WORKSPACE_SCHEMA | workspace.py:14 |
Explicit exception flow
| Relation | Source | Target | Evidence | Status |
|---|---|---|---|---|
| raises | ProviderRegistry.resolve | raise ValueError | providers/registry.py:35 | observed |
| exception_flow | raise ValueError | uncaught:ValueError | providers/registry.py:35 | unresolved |
| raises | ProviderRegistry.resolve | raise ValueError | providers/registry.py:38 | observed |
| exception_flow | raise ValueError | uncaught:ValueError | providers/registry.py:38 | unresolved |
| raises | ProviderRegistry.resolve | raise ValueError | providers/registry.py:42 | observed |
| exception_flow | raise ValueError | uncaught:ValueError | providers/registry.py:42 | unresolved |
Findings
| Severity | Class | Type | Location | Symbol | Evidence statement |
|---|---|---|---|---|---|
| info | hotspot | boundary_heavy | cli.py: | main | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | providers/adapter_result.py: | AdapterResultProvider.ingest | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | providers/intent_text.py: | IntentTextProvider.ingest | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | providers/json_schema.py: | JSONSchemaProvider.ingest | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | providers/pbsio.py: | PBSIOProvider.ingest | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | providers/registry.py: | ProviderRegistry.probe_all | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | providers/registry.py: | ProviderRegistry.resolve | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | _total_metrics | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | describe | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | _node_search_rows | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | search | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | resolve_anchor | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | subgraph | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | _bfs_edges | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | impact | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | unknowns | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | query.py: | semantic_diff | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | runtime.py: | Runtime.invoke | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | workspace.py: | _merge_records | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | workspace.py: | _merge_evidence | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | workspace.py: | commit_provider_result | Many calls cross the resolved graph boundary. |
| info | hotspot | boundary_heavy | workspace.py: | Workspace.__init__ | Many calls cross the resolved graph boundary. |
| info | anomaly | duplicate_function_shape | : | Functions normalize to the same AST shape. | |
| info | hotspot | high_call_fanout | cli.py: | main | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | providers/adapter_result.py: | AdapterResultProvider.probe | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | providers/adapter_result.py: | AdapterResultProvider.ingest | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | providers/intent_text.py: | IntentTextProvider.ingest | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | providers/json_schema.py: | JSONSchemaProvider.ingest | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | providers/pbsio.py: | PBSIOProvider.ingest | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | providers/registry.py: | ProviderRegistry.probe_all | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | providers/registry.py: | ProviderRegistry.resolve | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | _total_metrics | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | describe | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | _node_search_rows | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | search | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | resolve_anchor | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | subgraph | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | _bfs_edges | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | impact | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | unknowns | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | query.py: | semantic_diff | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | runtime.py: | Runtime.invoke | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | workspace.py: | create_workspace | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | workspace.py: | _merge_records | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | workspace.py: | _merge_evidence | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | workspace.py: | commit_provider_result | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | workspace.py: | import_pbsio_output | High static call fan-out; review as an orchestration/hotspot node. |
| info | hotspot | high_call_fanout | workspace.py: | Workspace.__init__ | High static call fan-out; review as an orchestration/hotspot node. |
Deterministic motif candidates
| Kind | Path | Symbol | Confidence | Structural rule |
|---|---|---|---|---|
| boundary_orchestration | cli.py | main | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/__init__.py | default_registry | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/adapter_result.py | AdapterResultProvider.ingest | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/adapter_result.py | AdapterResultProvider.probe | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/intent_text.py | IntentTextProvider.ingest | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/json_schema.py | JSONSchemaProvider.ingest | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/json_schema.py | JSONSchemaProvider.probe | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/pbsio.py | PBSIOProvider.ingest | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/pbsio.py | PBSIOProvider.probe | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/registry.py | ProviderRegistry.probe_all | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | providers/registry.py | ProviderRegistry.resolve | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | _bfs_edges | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | _node_search_rows | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | _total_metrics | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | describe | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | impact | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | resolve_anchor | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | search | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | semantic_diff | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | subgraph | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | query.py | unknowns | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | runtime.py | Runtime.invoke | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | workspace.py | Workspace.__init__ | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | workspace.py | _merge_evidence | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | workspace.py | _merge_records | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | workspace.py | _with_ingestion | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | workspace.py | commit_provider_result | 0.72 | five or more unresolved/external calls |
| boundary_orchestration | workspace.py | import_pbsio_output | 0.72 | five or more unresolved/external calls |
| orchestration_fanout | cli.py | main | 0.85 | five or more resolved local calls |
| orchestration_fanout | providers/intent_text.py | IntentTextProvider.ingest | 0.85 | five or more resolved local calls |
| orchestration_fanout | providers/json_schema.py | JSONSchemaProvider.ingest | 0.85 | five or more resolved local calls |
| orchestration_fanout | providers/pbsio.py | PBSIOProvider.ingest | 0.85 | five or more resolved local calls |
| orchestration_fanout | query.py | impact | 0.85 | five or more resolved local calls |
| orchestration_fanout | workspace.py | Workspace.__init__ | 0.85 | five or more resolved local calls |
| orchestration_fanout | workspace.py | _merge_records | 0.85 | five or more resolved local calls |
| orchestration_fanout | workspace.py | commit_provider_result | 0.85 | five or more resolved local calls |
| orchestration_fanout | workspace.py | create_workspace | 0.85 | five or more resolved local calls |
| read_modify_write | workspace.py | Workspace.__init__ | 0.86 | same function reads and writes the same state target |
| read_modify_write | workspace.py | _merge_evidence | 0.86 | same function reads and writes the same state target |
| retry_candidate | cli.py | main | 0.70 | loop plus exception handling is a retry-like structural candidate |
| retry_candidate | providers/registry.py | ProviderRegistry.probe_all | 0.70 | loop plus exception handling is a retry-like structural candidate |
Name-independent structural signature clusters
| Motif ID | Members | Identity basis |
|---|---|---|
| motif_coarse_1d063c7b37b2 | 2 | name-independent coarse structural feature signature |
| motif_coarse_2a35739c27f5 | 2 | name-independent coarse structural feature signature |
| motif_coarse_643ed88e016b | 3 | name-independent coarse structural feature signature |
| motif_coarse_6498af11de89 | 3 | name-independent coarse structural feature signature |
| motif_coarse_7d036f941004 | 2 | name-independent coarse structural feature signature |
| motif_coarse_b2feb91af8fa | 5 | name-independent coarse structural feature signature |
| motif_coarse_c10ceceefb4d | 3 | name-independent coarse structural feature signature |
| motif_coarse_c39ae2ade9b9 | 4 | name-independent coarse structural feature signature |
| motif_coarse_e3a6d82c57d0 | 3 | name-independent coarse structural feature signature |
| motif_coarse_f373ee2a1d21 | 2 | name-independent coarse structural feature signature |
| motif_coarse_f3d711144165 | 3 | name-independent coarse structural feature signature |
| motif_coarse_f4a86b4f0a93 | 2 | name-independent coarse structural feature signature |
| motif_coarse_fca123bd72d6 | 10 | name-independent coarse structural feature signature |
Per-file SHA-256
| Path | Bytes | SHA-256 |
|---|---|---|
| __init__.py | 225 | 140cd610ec4b5488… |
| cli.py | 2708 | 98bf252b377b7e15… |
| operators.py | 2765 | fd049f8ebb2b0a61… |
| providers/__init__.py | 581 | 9e673f0779551a5e… |
| providers/adapter_result.py | 2802 | 697d7a5d938d5d0b… |
| providers/base.py | 419 | e3b44aff30440409… |
| providers/intent_text.py | 3442 | f4a0c1443a1e4f20… |
| providers/json_schema.py | 3955 | 5f772d6ed4364f3b… |
| providers/pbsio.py | 4481 | 29a39498547beadf… |
| providers/registry.py | 1734 | f8866b67868b1775… |
| query.py | 13299 | 7c8efb4f67b5194e… |
| runtime.py | 2719 | 790fad55713f74d3… |
| util.py | 596 | 0752ec24a61f739a… |
| workspace.py | 13149 | c4ec946609811137… |
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