IP Library Granted Patent US 12675388
Granted Patent B1
US 12675388 · App. 19/356,313 · Granted Jul 7, 2026

Bidirectional visual indexing system and method for codebase impact analysis

Inventors: Albert Hugh Tong (New York, NY); Melanie Lislie Hsu (Holmdel, NJ); Eric Matthew Burger (Troy, NY); Michael Tamburro (Provincetown, MA); Daniel Weigh (Rineyville, KY); Randy Douglas Furman (Calgary, CA); Pavel Maslov (North Bergen, NJ)
Assignee: Morgan Stanley Services Group Inc.
G06F11/3672G06F16/2237G06F16/2458G06F2201/80
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12675388
App. No.
19/356,313
Granted
Jul 7, 2026
Kind
B1
Abstract

Systems and methods for implementing bidirectional visual indexing of a codebase are disclosed. An embodiment of the present invention receives a user input comprising at least one of: a screenshot, a text query, a code diff or a URL link; queries a database to identify one or more related screens based on the user input by comparing vector representations of the user input and a set of data frames; provides a set of metadata for the identified one or more related screens wherein the set of metadata comprises: similarity scores, usage statistics, associated code segments, and network requests; identifies at least one relevant function associated with each of the one or more related screens; performs an impact analysis related to modifying the at least one relevant function using an artificial intelligence (AI) processor; and generates a risk analysis for the modifying of the at least one relevant function.

Claims (35)

1 . A computer-implemented system for bidirectional visual indexing of a codebase, comprising:

an input interface configured to receive one or more inputs from an interaction with an application executing on a device;

a database configured to store data frames captured during runtime of the application wherein the database uses a data collection module configured to generate data frames during runtime execution of the application, and wherein the data collection module is configured to maintain data frames in open and completed states, where open data frames allow modification of associated metadata and function lists, and completed data frames are assigned end dates and converted to a JSON format for network transmission; and

a server comprising a computer processor coupled to the interface and the database and further configured to perform the steps of:

receiving a user input comprising at least one of: a screenshot, a text query, a code diff or a URL link;

querying the database to identify one or more related screens based on the user input by comparing vector representations of the user input and a set of data frames;

providing a set of metadata for the identified one or more related screens wherein the set of metadata comprises: similarity scores, usage statistics, associated code segments, and network requests;

identifying at least one relevant function associated with each of the one or more related screens;

performing an impact analysis related to modifying the at least one relevant function using an artificial intelligence (AI) processor; and

generating a risk analysis for the modifying of the at least one relevant function.

2 . The system of claim 1 , wherein each data frame of the set of data frames comprises a combination of: application metadata, screenshot metadata, usage metrics, method invocations made during the data frame lifetime, and network requests made during a lifetime of each data frame.

3 . The system of claim 1 , wherein the database is configured to store vector representations of data frame components using an embeddings application programming interface.

4 . The system of claim 1 , wherein the server performs one or more similarity searches using cosine similarity calculations to identify the one or more related screens.

5 . The system of claim 1 , wherein the server generates a user journey that provides a series of steps and corresponding actions to reach at least one impacted screen represented by a data frame.

6 . The system of claim 1 , wherein the server generates a test plan that comprises a set of testing activities to perform to validate one or more code changes.

7 . The system of claim 1 , wherein the server is configured to perform the steps of:

identifying one or more lines of code affected by the modifying of the at least one function; and

generating one or more impact screens providing a visual representation of one or more affected application areas.

8 . The system of claim 1 , wherein the link comprises a link to a pull request that contains a proposed set of code changes to make to the application.

9 . A computer-implemented method for bidirectional visual indexing of a codebase, comprising the steps of:

receiving, via an input interface, a user input comprising at least one of: a screenshot, a text query, a code diff or a URL link, wherein the input interface is configured to receive one or more inputs from an interaction with an application executing on a device;

querying a database to identify one or more related screens based on the user input by comparing vector representations of the user input and a set of data frames, wherein the database is configured to store data frames captured during runtime of the application, wherein the database uses a data collection module configured to generate data frames during runtime execution of the application, and wherein the data collection module is configured to maintain data frames in open and completed states, where open data frames allow modification of associated metadata and function lists, and completed data frames are assigned end dates and converted to a JSON format for network transmission;

providing a set of metadata for the identified one or more related screens wherein the set of metadata comprises: similarity scores, usage statistics, associated code segments, and network requests;

identifying at least one relevant function associated with each of the one or more related screens;

performing an impact analysis related to modifying the at least one relevant function using an artificial intelligence (AI) processor; and

generating a risk analysis for the modifying of the at least one relevant function.

10 . The method of claim 9 , wherein each data frame of the set of data frames comprises a combination of: application metadata, screenshot metadata, usage metrics, method invocations made during the data frame lifetime, and network requests made during a lifetime of each data frame.

11 . The method of claim 9 , wherein the database is configured to store vector representations of data frame components using an embeddings application programming interface.

12 . The method of claim 9 , wherein the server performs one or more similarity searches using cosine similarity calculations to identify the one or more related screens.

13 . The method of claim 9 , wherein the server generates a user journey that provides a series of steps and corresponding actions to reach at least one impacted screen represented by a data frame.

14 . The method of claim 9 , wherein the server generates a test plan that comprises a set of testing activities to perform to validate one or more code changes.

15 . The method of claim 9 , further comprising the steps of:

identifying one or more lines of code affected by the modifying of the at least one function; and

generating one or more impact screens providing a visual representation of one or more affected application areas.

16 . The method of claim 9 , wherein the link comprises a link to a pull request that contains a proposed set of code changes to make to the application.