Prosecution Insights
Last updated: September 17, 2026
Application No. 18/806,460

SYSTEMS, METHODS, AND USER INTERFACES FOR GENERATING INHERENTLY SOUND CODE

Non-Final OA §102§103
Filed
Aug 15, 2024
Priority
Apr 09, 2024 — provisional 63/631,779
Examiner
GOORAY, MARK A
Art Unit
Tech Center
Assignee
Nectry Inc.
OA Round
1 (Non-Final)
76%
Grant Probability
Favorable
1-2
OA Rounds
1y 8m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 76% — above average
76%
Career Allowance Rate
314 granted / 412 resolved
+16.2% vs TC avg
Strong +62% interview lift
Without
With
+62.3%
Interview Lift
resolved cases with interview
Typical timeline
3y 9m
Avg Prosecution
17 currently pending
Career history
431
Total Applications
across all art units

Statute-Specific Performance

§101
18.4%
-21.6% vs TC avg
§103
51.9%
+11.9% vs TC avg
§102
13.6%
-26.4% vs TC avg
§112
13.2%
-26.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 412 resolved cases

Office Action

§102 §103
DETAILED ACTION 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 . Claim Rejections - 35 USC § 102 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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention. Claims 1-4, 6-11, 13-18 and 20, are rejected under 35 U.S.C. 102a2 as being anticipated by Carrara et al. (US 2025/0298585 A1). As per claim 1, Carrara et al. teaches the invention as claimed including, “A method of application generation, the method comprising: obtaining information about a set of pre-generated components for application generation, including obtaining input and output type information for each component of the set of pre-generated components;” A generative AI component can also generate portions of this program documentation based in part on content stored in one of the custom models (e.g., pre-written documented control code samples, device documentation, standards documentation, training data, etc.) as well as program documentation text generated by the generative AI model in response to prompts submitted by the generative AI component (0101). Also see 0146. Examples of training data can include libraries of control code instructions or add-on instructions (AOI’s) that encode control or computational functionality and that can be added as elements to control routines, libraries or control code samples or smart objects that encapsulate reusable control code, libraries of user defined data types (UDRs), libraries of product manuals for various types of industrial devices or software platforms…etc. (0165). Each smart object definition comprises one or more industrial control programs or routines that are translatable to control code that can be executed on an industrial controller, as well as any data tags associated with the control programs (e.g., integer tags, Boolean tags, real tags, string tags, digital and analog I/O tags etc.) (0112). Parent child relationships can be specified as part of the smart object definitions (0113). “receiving a natural language input from a user, the natural language input indicating a user-specified functionality for an application; in response to the natural language input from the user, automatically: generating a first prompt for a generative artificial intelligence (AI) component based on the natural language input, the first prompt requesting that the generative AI component select an appropriate set of components from the set of pre-generated components; obtaining a first response to the first prompt from the generative AI component; generating a second prompt for the generative AI component based on the natural language input and the response to the first prompt; and obtaining a second response from the generative AI component, the second response responsive to the second prompt; presenting to the user a recommendation for implementing the user-specified functionality, based on the first response and the second response from the generative AI component, the recommendation corresponding to a subset of the set of pre-generated components; and in response to receiving an acceptance of the recommendation, implementing the user-specified functionality using the subset of the pre-generated components.” User can submit a natural language request to create a control program for a project, create smart object definitions for the project, or perform other project development tasks (0111). A user wishing to generate control code for carrying out a specific control function can submit an initial natural language request or query. The generative AI component can parse this initial request to determine the type of information or service being requested and refine and contextualize the initial query to quickly and accurately arrive at the desired answer or design solution. If the generative AI component determines that additional information from the user would yield a response having a higher probability or satisfying the user’s initial request, the generative AI component can formulate an render one or more query responses that prompt the user for more refined information that will allow the generative AI component to prompt a more complete or accurate solution to the users request. Through iterations of such chat exchange the generative AI component can collaborate with the user in exploring potential content variations likely to satisfy the user’s need. The AI component can query these natural language dialogs with the user based in part on learned knowledge of the types of questions that need to be answered in order to generate control code that aligns with the user’s need, or to provide responses having a high probability of addressed the user’s query (0084). Can present pre-composed or pre-leaded prompts to the user (0085). Also see 0165-0166. In some scenarios, if the generative AI component determines that additional specifics about the new project’s requirement which were no included in the user’s initial natural language request would allow the generative AI component to automatically create and configure elements of the system project to align with the user specific project requirement, the generative AI component can render a natural language, request asking the user to provide these projects specifics (0124). The generative AI component can also allow the user to allocate a selected smart object definition (or control code) to a selected controller definition using natural language requests (0129). A generative AI copilot is used to generate code based on a user’s natural language request or query. A user can enter in a data field a natural language description of control code required for a system project. The natural language prompt can provide such information as a functional requirement for the code, types of equipment to be controlled by the code, a desired format for the code (e.g., ladder logic, structured text, Python, C#, etc.), description of control conditions for controlling the state of an output device, or other such descriptors. The AI component can generate one or more examples of control code determined to satisfy the requirements set forth in the prompt (0091). Control code recommendation in response to user’s request is displayed (0091). The user can choose to accept and integrate the proposed code into the current system project (0095). As per claim 2, Carrara et al. further teaches, “The method of claim 1, wherein the information about the set of pre-generated components for application generation comprises a specification language.” A generative AI component can also generate portions of this program documentation based in part on content stored in one of the custom models (e.g., pre-written documented control code samples, device documentation, standards documentation, training data, etc.) as well as program documentation text generated by the generative AI model in response to prompts submitted by the generative AI component (0101). The generative AI components can access any of the custom models and associated training data. Training data can include program instruction sets, libraries of pre-tested control code samples for various types of control or programming functions, programming manuals, industrial standards definitions, or other such libraries or data sources. Training data can also include customer-specific libraries that contain examples of a customer’s preferred coding standards, function standards, AOIs, program documentation standards, or other customer specific information. AI component can use prewritten code included in this training data where appropriate to satisfy the functional requirements specified by the user’s prompt (0146). Examples of training data can include libraries of control code instructions or add-on instructions (AOI’s) that encode control or computational functionality and that can be added as elements to control routines, libraries or control code samples or smart objects that encapsulate reusable control code, libraries of user defined data types (UDRs), libraries of produce manuals for various types of industrial devices or software platforms…etc. (0165). As per claim 3, Carrara et al. further teaches, “The method of claim 2, wherein the user-specified functionality is implemented using a programming language, and wherein the specification language corresponds to a simplified subset of the programming language.” Prompts or meta prompts are generated based on a user’s natural language inputs for submission to generative AI models such as large language models (LLMs) (0058). The generative AI component can implement prompt engineering functionality using associated custom models trained with domain-specific industrial training data. The generative AI component can generate and submit prompts or meta prompts to one or more generative AI models and associated neural networks, where these prompts are generated based on natural language requests or queries submitted by the designer as well as domain-specific information contained in the custom models. The generative AI model in response to the prompt can be used by the project generation component of the user interface component to generate portions of the system project (0063). The generative AI component formulates and submits prompts to the generative AI model designed to obtain responses. These prompts are generated based on the user’s natural language inputs as well as the industry knowledge and reference data encoded in the trained custom models. The generative AI components can reference custom models as needed in connection with processing the user’s natural language queries or requests and prompting the generative AI model for responses (0070-0071). A generative AI copilot is used to generate code based on a user’s natural language request or query. A user can enter in a data field a natural language description of control code required for a system project. The natural language prompt can provide such information as a functional requirement for the code, types of equipment to be controlled by the code, a desired format for the code (e.g., ladder logic, structured text, Python, C#, etc.), description of control conditions for controlling the state of an output device, or other such descriptors. The AI component can generate one or more examples of control code determined to satisfy the requirements set forth in the prompt (0091). The generative AI component can also generate portions of this program documentation based in part on content stored in one of the custom models (e.g., pre-written documented control code samples, device documentation, standards documentation, training data, etc.) as well as program documentation text generated by the generative AI model in response to prompts submitted by the generative AI component (0101). User can submit a natural language request to create a control program for a project, create smart object definitions for the project, or perform other project development tasks (0111). As part of the analysis the system can also generate and submit prompts to the generative AI model, and user content of the generative AI model’s response in connection with analyzing the user’s request, analyzing the control code and generating natural language responses directed to the user if necessary (0165-0166). As per claim 4, Carrara et al. further teaches, “The method of claim 3, wherein the set of pre-generated components corresponds to a set of predefined functions in the programming language. A generative AI copilot is used to generate code based on a user’s natural language request or query. A user can enter in a data field a natural language description of control code required for a system project. The natural language prompt can provide such information as a functional requirement for the code, types of equipment to be controlled by the code, a desired format for the code (e.g., ladder logic, structured text, Python, C#, etc.), description of control conditions for controlling the state of an output device, or other such descriptors. The AI component can generate one or more examples of control code determined to satisfy the requirements set forth in the prompt (0091). A generative AI component can also generate portions of this program documentation based in part on content stored in one of the custom models (e.g., pre-written documented control code samples, device documentation, standards documentation, training data, etc.) as well as program documentation text generated by the generative AI model in response to prompts submitted by the generative AI component (0101). Examples of training data can include libraries of control code instructions or add-on instructions (AOI’s) that encode control or computational functionality and that can be added as elements to control routines, libraries or control code samples or smart objects that encapsulate reusable control code, libraries of user defined data types (UDRs), libraries of produce manuals for various types of industrial devices or software platforms…etc. (0165). Also see (0146). As per claim 6, Carrara et al. further teaches, “The method of claim 1, further comprising verifying that the recommendation for implementing the user-specified functionality complies with one or more policies. A project testing component can be configured to execute test scripts that test and validate proper execution of various aspects of a system project. The generative AI system can also generate the test scripts (0064). Also see 0151-0153. As per claim 7, Carrara et al. further teaches, “The method of claim 1, wherein the second prompt is generated using a predefined decision tree.” In some scenarios, if the generative AI component determines that additional specifics about the new project’s requirement which were not included in the user’s initial natural language request would allow the generative AI component to automatically create and configure elements of the system project to align with the user specific project requirement, the generative AI component can render a natural language, request asking the user to provide these projects specifics (0124). The examiner states that a trained generative AI component is a type of decision tree. As per claim 8-11, 13-18 and 20, they contain similar limitations to claims 1-4 and 6-7 and are therefore rejected for the same reason. 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 5, 12, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Carrara et al. (US 2025/0298585 A1) as applied to claims 1, 8 and 15 above, and further in view of Bonadiman et al. (US 12,547,380 B1). As per claim 5, Carrara et al. further teaches, “The method of claim 1, wherein the set of pre-generated components comprises one or more functional components and one or more connector components.” A generative AI component can also generate portions of this program documentation based in part on content stored in one of the custom models (e.g., pre-written documented control code samples, device documentation, standards documentation, training data, etc.) as well as program documentation text generated by the generative AI model in response to prompts submitted by the generative AI component (0101). The generative AI components can access any of the custom models and associated training data. Training data can include program instruction sets, libraries of pre-tested control code samples for various types of control or programming functions, programming manuals, industrial standards definitions, or other such libraries or data sources. Training data can also include customer-specific libraries that contain examples of a customer’s preferred coding standards, function standards, AOIs, program documentation standards, or other customer specific information. AI component can use prewritten code included in this training data where appropriate to satisfy the functional requirements specified by the user’s prompt (0146). Examples of training data can include libraries of control code instructions or add-on instructions (AOI’s) that encode control or computational functionality and that can be added as elements to control routines, libraries of control code samples or smart objects that encapsulate reusable control code, libraries of user defined data types (UDRs), libraries of product manuals for various types of industrial devices or software platforms…etc. (0165). However, Carrara et al. does not explicitly appear to teach, “The method of claim 1, wherein the set of pre-generated components comprises one or more functional components and one or more connector components.” Bonadiman et al. teaches embodiments for a development environment in which a developer can leverage existing application program interface (APIs) to develop customizable interactive environments (column 2, lines 65- column 3, lines 1-10). A builder environment may have a set of common tasks or domains that include pre-built API’s, entities, plugins, and /or the like (column 10, lines 37 – 52). Also see column 7, lines 60 – column 8, lines 1-20 and column 11, lines 28-60). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Carrara et al. with Bonadiman et al. because both are similar teaching using natural language processing in-order to generate an application/program. Carrara et al. teaches that its language models can be trained using a wide variety of data as training data (0101, 0146 and 0165). Bonadiman et al. also teaches the use of a wide variety of prebuilt data including API’s and plugins. Adding API’s and plugins to the training data of Carrara et al. would be nothing more than a design choice and would have been obvious to try. As per claims 12 and 19, they contain similar limitations to claim 5 and are rejected for the same reason. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to MARK A GOORAY whose telephone number is (571)270-7805. The examiner can normally be reached Monday - Friday 10:00am - 6:00pm. 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, Lewis Bullock can be reached at 571-272-3759. 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. /MARK A GOORAY/ Examiner, Art Unit 2199 /LEWIS A BULLOCK JR/ Supervisory Patent Examiner, Art Unit 2199
Read full office action

Prosecution Timeline

Aug 15, 2024
Application Filed
Sep 01, 2026
Non-Final Rejection mailed — §102, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12693934
DEDICATED RECOVERY MODULES FOR RESOLVING ISSUES WITH FAULTY APPLICATIONS
2y 7m to grant Granted Jul 28, 2026
Patent 12688111
METHOD FOR CARRYING OUT DATA PROCESSING
3y 1m to grant Granted Jul 21, 2026
Patent 12681700
Selecting Intermediate Representation Transformations for Compilations
3y 0m to grant Granted Jul 14, 2026
Patent 12681838
HYBRID LEARNING OF EXPERT HEURISTICS, MACHINE AND DEEP LEARNING FOR RANKING AUTOMOTIVE-GRADE APPLICATIONS
2y 6m to grant Granted Jul 14, 2026
Patent 12657013
APPARATUSES, METHODS, AND COMPUTER PROGRAM PRODUCTS FOR OUTPUTTING PROCESS TIME INSIGHT INTERFACE COMPONENTS IN CONNECTION WITH A GROUP SHARED CODE REPOSITORY
3y 11m to grant Granted Jun 16, 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
76%
Grant Probability
99%
With Interview (+62.3%)
3y 9m (~1y 8m remaining)
Median Time to Grant
Low
PTA Risk
Based on 412 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