Prosecution Insights
Last updated: May 29, 2026
Application No. 18/439,508

LANGUAGE SERVER BASED CONTEXT PROVISIONING FOR CODE GENERATION WITH LARGE LANGUAGE MODELS

Non-Final OA §101§103§112
Filed
Feb 12, 2024
Examiner
SLACHTA, DOUGLAS M
Art Unit
2193
Tech Center
2100 — Computer Architecture & Software
Assignee
SAP SE
OA Round
1 (Non-Final)
82%
Grant Probability
Favorable
1-2
OA Rounds
0m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 82% — above average
82%
Career Allowance Rate
284 granted / 345 resolved
+27.3% vs TC avg
Strong +18% interview lift
Without
With
+18.3%
Interview Lift
resolved cases with interview
Typical timeline
2y 3m
Avg Prosecution
10 currently pending
Career history
367
Total Applications
across all art units

Statute-Specific Performance

§101
8.6%
-31.4% vs TC avg
§103
85.0%
+45.0% vs TC avg
§102
3.6%
-36.4% vs TC avg
§112
0.7%
-39.3% vs TC avg
Black line = Tech Center average estimate • Based on career data from 345 resolved cases

Office Action

§101 §103 §112
Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . DETAILED ACTION This office action is in response to communication filed 8/13/2024. Claims 1-20 are currently pending and claims 1, 8, and 15 are the independent claims. Claim Rejections - 35 USC § 112 The following is a quotation of 35 U.S.C. 112(b): (b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention. The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph: The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention. Claims 1-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. As per claims 1, 8, and 15, they recite “…transmitting, to the language server, a command to locate one or more code snippets, stored in a code repository, that are relevant to the identified one or more artifacts; receiving, from the language server, identifications of the one or more code snippets that are relevant to the identified one or more artifacts…”. The examiner is unclear as to what is meant by “relevant” as different persons of ordinary skill in the art may have different opinions as to what criteria would need to be met for something to be considered “relevant”. For the purpose of examination, the examiner will consider these limitations to be “…transmitting, to the language server, a command to locate one or more code snippets, stored in a code repository, that are associated with the identified one or more artifacts; receiving, from the language server, identifications of the one or more code snippets that are associated with the identified one or more artifacts…” As per dependent claims 2-7, 9-14, and 16-20, they incorporate the deficiencies of claims 1, 8, and 15, upon which they depend, and fail to correct the deficiencies of claims 1, 8,and 15, respectively. Therefore, claims 2-7, 9-14, and 16-20 are rejected for similar reasoning as claims 1, 8, and 15, above. As per claims 6, 13, and 20, they recite “…wherein the identifications of the one or more code snippets that are relevant to the identified one or more artifacts are limited to identifications only of code snippets that are relevant based on…” The examiner is unclear as to what is meant by “relevant” as different persons of ordinary skill in the art may have different opinions as to what criteria would need to be met for something to be considered “relevant”/how close something needs to be to be considered “relevant”/etc.. For the purpose of examination, the examiner will consider these limitations to be “…wherein the identifications of the one or more code snippets that are associated with the identified one or more artifacts are limited to identifications only of code snippets that are identified based on based on the contextual information.” Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. As per claim 1, it recites “A system comprising: at least one hardware processor; and a non-tangible non-transitory computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising: receiving a request to generate computer code on behalf of a user; in response to the receiving, identifying a first file currently being edited by the user; transmitting, to a language server, an identification of the first file along with a command to parse the first file to identify one or more artifacts in the first file; receiving, from the language server, a list of identified one or more artifacts; transmitting, to the language server, a command to locate one or more code snippets, stored in a code repository, that are relevant to the identified one or more artifacts; receiving, from the language server, identifications of the one or more code snippets that are relevant to the identified one or more artifacts; generating a prompt to a large language model (LLM), the prompt including instructions to generate code based on using the identified one or more artifacts as context; sending the prompt to the LLM; and receiving compilable generated code from the LLM. The limitations “in response to the receiving, identifying a first file currently being edited by the user”, “locate one or more code snippets…that are relevant to the identified one or more artifacts”, and “generating a prompt to a large language model (LLM), the prompt including instructions to generate code based on using the identified one or more artifacts as context”, as drafted, recites a function that, under its broadest reasonable interpretation, covers a function that could reasonably be performed in the mind, including with the aid of pen and paper, but for the recitation of generic computer components, and as such, is a function that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. The limitation encompasses a human mind carrying out the function through observation, evaluation, judgment, and/or opinion, or even with the aid of pen and paper. For example, a human may mentally/with pen and paper/etc. identify/determine/decide/judge/observe/etc. a file, may mentally/with pen and paper/etc. judge/determine/decide/find/locate/observe/etc. code snippets judged/determined/decided/etc. to be relevant/associated/desired/etc., and may mentally/with pen and paper/etc. generate/judge/decide/write/etc. a prompt/instructions to generate code/etc.. Therefore, these limitations recite and falls within the “Mental Processes” grouping of abstract ideas. This judicial exception is not integrated into a practical application. The claim recites the additional elements “A system comprising: at least one hardware processor; and a non-tangible non-transitory computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising”, “receiving a request to generate computer code on behalf of a user”, “transmitting, to a language server, an identification of the first file along with a command to parse the first file”, “receiving, from the language server, a list of identified one or more artifacts”, “transmitting, to the language server, a command to”, “stored in a code repository”, “receiving, from the language server, identifications of the one or more code snippets that are relevant to the identified one or more artifacts”, “sending the prompt to the LLM”, and “receiving compilable generated code from the LLM.” The additional element/limitations “A system comprising: at least one hardware processor; and a non-tangible non-transitory computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising”, “to a language server”, and “a code repository” recite that high level/generic computer/computer components are used to implement/perform the abstract idea/mental process, and as such amounts to no more than mere instructions to apply the exception using generic computer, and/or mere computer components. The additional elements/limitations “receiving a request to generate computer code on behalf of a user”, “transmitting, to a language server, an identification of the first file along with a command to parse the first file”, “receiving, from the language server, a list of identified one or more artifacts”, “transmitting, to the language server, a command to”, “stored in a code repository”, “receiving, from the language server, identifications of the one or more code snippets that are relevant to the identified one or more artifacts”, “sending the prompt to the LLM”, and “receiving compilable generated code from the LLM” do nothing more than add insignificant extra solution activities to the judicial exception of merely gathering/receiving data/information, transmitting/sending data/information, and storing data/information, and the courts have identified functions such as gathering, displaying, updating, transmitting and storing data as well-understood, routine, conventional activity (see MPEP 2106.05(d)). Accordingly, the additional elements do not integrate the recited judicial exception into a practical application and the claim is therefore directed to the judicial exception. See MPEP 2106.05(f), 2106.05(g), etc.. The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements amount to no more than mere instructions to apply the exception using generic computer and/or mere computer components, which does not provide an inventive concept and is not significantly more than the abstract idea/mental process, and mere insignificant extra solution activities to the judicial exception of merely gathering/receiving data/information, transmitting/sending data/information, and storing data/information, and the courts have identified functions such as gathering, displaying, updating, transmitting and storing data as well-understood, routine, conventional activity, thus do not amount to significantly more than the judicial exception (see MPEP 2106.05(d)). Accordingly, the claims are not patent eligible under 35 USC 101. As per claim 2, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “…wherein the receiving a request includes receiving a directive from a graphical user interface currently being interacted with by the user, the directive generated based on an explicit request from the user” which, conceptually, with broadest reasonable interpretation, provides further clarification as to insignificant extra solution activities to the judicial exception of merely gathering/receiving data/information, which does not integrate the abstract idea/mental process into a practical application, and the courts have identified functions such as gathering, displaying, updating, transmitting and storing data as well-understood, routine, conventional activity, thus do not amount to significantly more than the judicial exception (see MPEP 2106.05(d)). As such, claim 2 fails to correct the deficiencies of claim 1, and therefore claim 2 is rejected for similar reasoning as claim 1, above. As per claim 3, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “…wherein the receiving a request includes receiving a directive from a graphical user interface currently being interacted with by the user, the directive generated without an explicit request from the user” which, conceptually, with broadest reasonable interpretation, provides further clarification as to insignificant extra solution activities to the judicial exception of merely gathering/receiving data/information, which does not integrate the abstract idea/mental process into a practical application, and the courts have identified functions such as gathering, displaying, updating, transmitting and storing data as well-understood, routine, conventional activity, thus do not amount to significantly more than the judicial exception (see MPEP 2106.05(d)). As such, claim 3 fails to correct the deficiencies of claim 1, and therefore claim 3 is rejected for similar reasoning as claim 1, above. As per claim 4, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “…wherein the operations further comprise, in response to the receiving of the request: identifying contextual information about the editing of the first file; and wherein the transmitting, to the language server, an identification further includes transmitting, to the language server, the contextual information about the editing of the first file” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/identifying/ determining/judging/etc., which does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process, and further clarification as to insignificant extra solution activities to the judicial exception of merely gathering/receiving data/information, which does not integrate the abstract idea/mental process into a practical application, and the courts have identified functions such as gathering, displaying, updating, transmitting and storing data as well-understood, routine, conventional activity, thus do not amount to significantly more than the judicial exception (see MPEP 2106.05(d)). As such, claim 4 fails to correct the deficiencies of claim 1, and therefore claim 4 is rejected for similar reasoning as claim 1, above. As per claim 5, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “…wherein the contextual information includes a location of a cursor within the first file, as displayed a graphical user interface operated by the user” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/identifying/determining/judging/information used in performing the abstract idea/etc., which does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process. As such, claim 5 fails to correct the deficiencies of claim 1, and therefore claim 5 is rejected for similar reasoning as claim 1, above. As per claim 6, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “…wherein the identifications of the one or more code snippets that are relevant to the identified one or more artifacts are limited to identifications only of code snippets that are relevant based on the contextual information” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/identifying/determining/judging/etc., which does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process. As such, claim 6 fails to correct the deficiencies of claim 1, and therefore claim 6 is rejected for similar reasoning as claim 1, above. As per claim 7, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “…wherein at least one of the one or more code snippets are contained in a file that is currently closed” which, conceptually, with broadest reasonable interpretation, provides further clarification as to insignificant extra solution activities to the judicial exception of merely storing data/information, which does not integrate the abstract idea/mental process into a practical application, and the courts have identified functions such as gathering, displaying, updating, transmitting and storing data as well-understood, routine, conventional activity, thus do not amount to significantly more than the judicial exception (see MPEP 2106.05(d)). As such, claim 7 fails to correct the deficiencies of claim 1, and therefore claim 7 is rejected for similar reasoning as claim 1, above. As per claim 8, it recites a method having similar limitations as the operations performed by the system of claim 1, and as such recites a similar abstract idea and has similar deficiencies as claim 1. Therefore, claim 8 is rejected for similar reasoning as claim 1, above. As per claims 9-14, they recite methods having similar limitations as the systems of claims 2-7, respectively, and are therefore rejected for similar reasoning as claims 2-7, respectively, above. As per claim 15, it recites a non-transitory machine-readable medium having similar limitations as the system of claim 1, and as such recites a similar abstract idea and has similar deficiencies as claim 1. Claim 15 recites the further additional elements “A non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising” which, with broadest reasonable interpretation, recite that high level/generic computer/computer components are used to implement/perform the abstract idea/mental process, and as such amounts to no more than mere instructions to apply the exception using generic computer, and/or mere computer components, which does not integrate the abstract idea/mental process into a practical application and is not significantly more than the abstract idea/mental process. Therefore the additional elements/limitations of claim 15 fails to correct the deficiencies of claim 1, and as such claim 15 is rejected for similar reasoning as claim 1, above. As per claims 16-20, they recite non-transitory machine-readable mediums having similar limitations as the systems of claims 2-6, respectively, and are therefore rejected for similar reasoning as claims 2-6, respectively, above. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1-20 are rejected under 35 U.S.C. 103 as being unpatentable over Smith et al. (herein called Smith) (US PG Pub. 2020/0097261 A1) and Rieken et al. (herein called Rieken) (US PG Pub. 2025/0117195 A1). As per claim 1, Smith teaches: a system comprising: at least one hardware processor; and a non-tangible non-transitory computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising: receiving a request to generate computer code on behalf of a user (pars. [0060], [0065]-[0068], [0094], user edits/develops/etc. source code in editor of IDE and when event indicating programming co-pilot action, such as code completion/suggestion/snippet generation/etc. for recommendation/presentation/etc. to user to be included in source code, co-pilot system is notified to perform action (receive request to generate computer code on behalf of/to recommend to/for/etc. user developing source code).); in response to the receiving, identifying a first file currently being edited by the user (pars. [0006], [0042], [0059], [0062], [0069], [0108], co-pilot system/machine learning model/etc. interacts with editor and accesses/is provided/analyzes/etc. source code/version of source code/etc. being edited by user (identify first file/source code/version/etc. currently being edited by the user) and determines features of code/current lines of code/tokens edited or typed by user/preceding or succeeding lines of code of a cursor position/functions of code/etc. to use to determine candidate code completion suggestions.); transmitting, to a language server, an identification of the first file along with a command to parse the first file to identify one or more artifacts in the first file (fig. 1, pars. [0042], [0059], [0062], [0065]-[0069], [0108], machine learning model/co-pilot system/code completion system/etc. is on device of network/server/etc. and is provided/input source code in programming language being edited by user and notified to perform code completion which includes analyzing source code/identifying features of the source code/etc. (parse/analyze source code and identify one or more artifacts/features in the first file/source code/etc.). As the machine learning model/co-pilot system/code completion system is on device/server/etc. of network and is input/provided/etc. source code in a language to analyze/identify features/etc., it is obvious it is a language server and that an identification of the first file/source code/etc. is transmitted/input/etc. to it along with a command/notification/etc. to identify features/artifacts of the first file/source code.); receiving, from the language server, a list of identified one or more artifacts (pars. [0062], [0069], [0108], co-pilot system/machine learning model identifies features of source code (receive list of identified artifacts/features).); transmitting, to the language server, a command to locate one or more code snippets, stored in a code repository, that are relevant to the identified one or more artifacts (pars. [0066], [0070], [0078], [0096], [0108]-[0109], co-pilot system/machine learning model is notified/triggered/etc. (transmit command) to perform code completion which includes determining code snippets corresponding to/based on/etc. features/artifacts (locate code snippets relevant to identified artifacts/features) to retrieve from code storage (located code snippets are stored in code repository) to present as candidates for code completion.); receiving, from the language server, identifications of the one or more code snippets that are relevant to the identified one or more artifacts (pars. [0006], [0008], [0059], [0062], [0069]-[0070], [0078], [0081], [0096], co-pilot system/machine learning model uses features to search for/retrieve/etc. code snippets in storage and identifies relevant code snippets based on the feature/artifacts (receive identification of code snippets that are relevant to/identified based on/etc. identified artifacts/features).); generating a prompt to a machine learning model, the prompt including instructions to generate code based on using the identified one or more artifacts as context (pars. [0046], [0059], [0077], [0081]-[0082], machine learning models/co-pilot system/etc. performs inference on input and generates output such as code completion/ranking code snippets/etc. (generate code based on input), and identified code snippets and extracted features are input to machine learning model for inference/code generation/code completion/code snippet ranking/etc. (generate prompt/input to a machine learning model including instructions to generate code/complete code/rank code/etc. based on/using/etc. the artifacts/features as context/data used to generate code completion/ranking/etc.).); sending the prompt to the machine learning model (pars. [0046], [0059], [0077], [0081]-[0082], identified code snippets and extracted features are input to machine learning model for inference/code generation/code completion/code snippet ranking/etc. (send prompt/provide input/etc. to machine learning model).); and receiving compilable generated code from the machine learning model (pars. [0061], [0065], [0069]-[0070], [0089], [0108]-[0109], [0112], [0133], source code is compiled for execution (source code is compilable code) and machine learning model generates/determines/ranks/etc. source code snippets which are displayed to user for selection and code completion/insertion into source code/etc. (receive compilable generated code/source code from machine learning model).). While Smith teaches using/providing input to/prompting/etc. a machine learning model to generate code, it does not explicitly disclose that the machine learning model is a large language model, and as such does not explicitly state, however Rieken teaches: generating a prompt to a large language model (LLM), the prompt including instructions to generate code based on using the identified one or more artifacts as context (pars. [0014], [0017], [0029], [0035]-[0036], [0069], artificial intelligence (AI) model/machine learning model/etc. is large language model/LLM receives a prompt/input/etc. requesting AI/LLM model generate/modify code together with/along with/etc. selected snippets of code being developed/code snippet/artifacts of code/etc. providing context for the AI/LLM prompt (prompt to LLM including instructions/request to generate code based on using artifacts as context).); sending the prompt to the LLM (pars. [0014], [0017], [0029], [0035]-[0036], artificial intelligence (AI) model/large language model/LLM receives a prompt/input/etc. (send prompt to LLM) requesting AI/LLM model generate/modify code together with/along with/etc. code snippet/artifact/etc. providing context for the AI/LLM prompt); and receiving compilable generated code from the LLM (pars. [0036]-[0039], [0058], [0070]-[0071], modified/generated/etc. source code/code snippet/etc. (compilable generated/modified code) is received from artificial intelligence model/large language model/LLM and displayed on user interface in developer tool). Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Smith such that the machine learning model is a Large Language Model, as conceptually taught by Rieken, to create generating a prompt to a large language model (LLM), the prompt including instructions to generate code based on using the identified one or more artifacts as context; sending the prompt to the LLM; and receiving compilable generated code from the LLM, because these modifications allow for a known type of machine learning/artificial intelligence model/a large language model/etc. to be used as the machine learning model that performs the known function of generating/modifying/etc. code, which is desirable as it increases usability by allowing for additional types of machine learning models to be used while helping to ensure that the machine learning model operates correctly/as desired and produces desirable output. As per claim 2, Smith does not explicitly state, however Rieken teaches: wherein the receiving a request includes receiving a directive from a graphical user interface currently being interacted with by the user, the directive generated based on an explicit request from the user (pars. [0014], [0017], [0034]-[0036], [0069], developer/user develops code using developer tool in user interface (graphical user interface currently being interacted with by user), and developer/user provides request/AI prompt/etc. to AI/LLM/etc. (AI/LLM receives request/prompt) via interface element/pressing button/etc. requesting AI model/machine learning model/LLM/etc. to modify/generate/etc. code. (receiving a request includes receiving a directive from a graphical user interface currently being interacted with by the user, the directive generated based on an explicit request from the user/user provides request/etc.).). Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention to add wherein the receiving a request includes receiving a directive from a graphical user interface currently being interacted with by the user, the directive generated based on an explicit request from the user, as conceptually taught by Rieken, into that of Smith because these modifications allow for a user to request machine learning/AI to generate code/help develop code/etc., which is desirable as it increases user control over the code development and machine learning/AI performance while helping to save time and resources that would be spent by the user manually developing/generating the code. As per claim 3, Smith further teaches: wherein the receiving a request includes receiving a directive from a graphical user interface currently being interacted with by the user, the directive generated without an explicit request from the user (pars. [0060], [0066]-[0068], as user/programmer/etc. edits source code in editor of IDE presenting a human viewable interface user/programmer is interacting with (graphical user interface currently being interacted with by user), co-pilot system/code completion system/machine learning model monitors editor/user interface and waits for triggering event/notification (request/directive from graphical user interface/editor of IDE/etc.) to perform code completion/predictive editing/generate code snippets/etc., and event may be user stopped typing for a period of time/detecting specified time interval has elapsed/detecting user has finished/etc. (directive generated without an explicit request from the user/user did not explicitly request code completion).). As per claim 4, Smith further teaches: wherein the operations further comprise, in response to the receiving of the request: identifying contextual information about the editing of the first file (pars. [0060], [0066], [0069], [0078], [0108]-[0109], user/programmer edits source code/first file in editor of IDE and code completion system/machine learning model/co-pilot system/etc. monitors editor and determines cursor position in editor, token immediately preceding cursor, most recent tokens on same line as cursor, lines of code preceding or succeeding lines of the cursor, function cursor is located in, code located near cursor, most recent code typed by programmer, etc. (identify contextual information about the editing of the first file) as features and used features to generate/determine/etc. code snippets to present to user for insertion into source code.); and wherein the transmitting, to the language server, an identification further includes transmitting, to the language server, the contextual information about the editing of the first file (pars. [0060], [0066], [0069], [0078], [0108]-[0109], code completion system/machine learning model/co-pilot system/etc. monitors editor and determines cursor position in editor, token immediately preceding cursor, most recent tokens on same line as cursor, lines of code preceding or succeeding lines of the cursor, function cursor is located in, code located near cursor, most recent code typed by programmer, etc. (transmit contextual information about the editing of the first file) as features and used features to generate/determine/etc. code snippets to present to user for insertion into source code.). As per claim 5, Smith further teaches: wherein the contextual information includes a location of a cursor within the first file, as displayed a graphical user interface operated by the user (pars. [0060], [0066], [0069], [0078], [0108]-[0109], user/programmer/etc. edits source code in editor of IDE presenting a human viewable interface user/programmer is interacting with (graphical user interface operated by user displays first file/source code) and code completion system/machine learning model/co-pilot system/etc. monitors editor and determines cursor position in editor, current function/code cursor is located in, etc. (contextual information includes location/position/etc. of a cursor within the first file/source code being edited/etc.) as features and used features to generate/determine/etc. code snippets to present to user for insertion into source code.). As per claim 6, Smith further teaches: wherein the identifications of the one or more code snippets that are relevant to the identified one or more artifacts are limited to identifications only of code snippets that are relevant based on the contextual information (pars. [0006], [0008], [0059], [0062], [0069]-[0070], [0078], [0081], [0096], co-pilot system/machine learning model uses features/contextual information/etc. to search for/retrieve/etc. code snippets in storage and identifies relevant code snippets based on the feature/contextual information (identification of code snippets that are relevant to/identified based on/etc. identified artifacts/features/contextual information/etc.). As the code snippets are identified/determined to be relevant/etc. based on the features/contextual information, it is obvious that only snippets identified based on the contextual information/features are identified, and as such it is obvious that the identification of code snippets is limited to identifications only of code snippets that are identified based on based on the contextual information.). As per claim 7, Smith further teaches: wherein at least one of the one or more code snippets are contained in a file that is currently closed (pars. [0070]-[0072], code snippet are existing code snippets stored in code storage/database/library/etc. and may be from past projects/past files. As the code snippets may be from past projects/files it is obvious that the past projects may be closed/not currently being developed/not being worked on/finished/etc., and therefore the code snipes are contained in a file/project/etc. that is currently closed/not being worked on/finished/etc.). As per claims 8-14, they recite methods having similar limitations as the systems of claims 1-7, respectively, and are therefore rejected for similar reasoning as claims 1-7, respectively, above. As per claims 15-20, they recite non-transitory machine-readable mediums having similar limitations as the systems of claims 1-6, respectively, and are therefore rejected for similar reasoning as claims 1-6, respectively, above. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Qiao et al. US Patent 12,346,690 B2 teaches that machine learning/neural networks may receive prompt to identify code snippets based on context of source code. Odibat et al. US PG Pub. 2025/0110709 A1 teaches that machine learning may be used to parse/analyze/etc. code being developed and determine similar previously developed code snippets to recommend. Any inquiry concerning this communication or earlier communications from the examiner should be directed to DOUGLAS M SLACHTA whose telephone number is (571)270-0653. The examiner can normally be reached Monday-Friday 6:30am-4pm. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Chat Do can be reached at 571-272-3721. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /DOUGLAS M SLACHTA/Examiner, Art Unit 2193
Read full office action

Prosecution Timeline

Feb 12, 2024
Application Filed
Aug 13, 2024
Response after Non-Final Action
Apr 16, 2026
Non-Final Rejection mailed — §101, §103, §112
May 13, 2026
Applicant Interview (Telephonic)
May 15, 2026
Examiner Interview Summary

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12639057
Computer Model Management System
2y 7m to grant Granted May 26, 2026
Patent 12632251
SOFTWARE PROJECT MANAGEMENT TOOL PLUG-IN
3y 5m to grant Granted May 19, 2026
Patent 12632242
CONFIGURATION OF AUTOMATED GUIDED VEHICLES
2y 4m to grant Granted May 19, 2026
Patent 12613678
HYPERTEXT TRANSFER PROTOCOL RECORDER OF A ROBOTIC PROCESS AUTOMATION WORKFLOW DESIGNER APPLICATION
3y 5m to grant Granted Apr 28, 2026
Patent 12585449
ARTIFICIAL INTELLIGENCE (AI) MODEL DEPENDENCY HANDLING IN HETEROGENEOUS COMPUTING PLATFORMS
3y 4m to grant Granted Mar 24, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
82%
Grant Probability
99%
With Interview (+18.3%)
2y 3m (~0m remaining)
Median Time to Grant
Low
PTA Risk
Based on 345 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month