in sapp/ui/interactive.py [0:0]
def _generate_trace_from_issue(self) -> None:
with self.db.make_session() as session:
issue = self._get_current_issue(session)
postcondition_initial_frames = trace.initial_frames(
session,
issue.issue_instance_id,
TraceKind.POSTCONDITION,
)
precondition_initial_frames = trace.initial_frames(
session,
issue.issue_instance_id,
TraceKind.PRECONDITION,
)
postcondition_navigation = trace.navigate_trace_frames(
session,
postcondition_initial_frames,
self.sources,
self.sinks,
)
precondition_navigation = trace.navigate_trace_frames(
session,
precondition_initial_frames,
self.sources,
self.sinks,
)
self.trace_tuples = (
self._create_trace_tuples(reversed(postcondition_navigation))
+ [
TraceTuple(
trace_frame=TraceFrameQueryResult(
id=DBID(0),
caller="",
caller_port="",
callee=issue.callable,
callee_port="root",
filename=issue.filename,
callee_location=issue.location,
)
)
]
+ self._create_trace_tuples(precondition_navigation)
)
self.current_trace_frame_index = len(postcondition_navigation)