DETAILED ACTION
Claims 1-20 are pending in the Instant Application.
Claims 1-20 are rejected (Non-Final Rejection).
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 .
Priority
The Instant Application, filed 09/03/2025 is a continuation of 18/67,5631, filed 05/28/2024. Thus, the earliest effective filing date is 05/28/2024 for what was recited therein.
Information Disclosure Statement
The information disclosure statements (IDSs) submitted on 1/14/2026 and 9/3/2025 were considered by the examiner.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-17 of U.S. Patent No. 12,423,452. Although the claims at issue are not identical, they are not patentably distinct from each other because the claim limitations in the Instant Application are included by the claims from U.S. Patent No. 12,423,452. The claims are similar as noted below.
Instant Application
U.S. Patent # 12,423,452
1. A method for Infrastructure-as-Code (IaC) configuration file validation, comprising:
receiving, by one or more processors, a request to validate an IaC configuration file
receiving, by the one or more processors, a pre-trained language model; and
performing, by the one or more processors, one or more fine-tuning iterations of:
receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
generating a loss between output code snippets of the pre-trained language model and the training examples of syntactically correct IaC configuration files, and
updating one or more model parameter values of the pre-trained language model in accordance with the loss to form an updated machine learning model; an d
outputting, by the one or more processors, based on the updated machine learning model an indication as to whether the IaC configuration file is valid.
1. A method for Infrastructure-as-Code (IaC) configuration file validation, comprising:
receiving, by one or more processors, a request to validate an IaC configuration file, the request comprising the IaC configuration file and one or more identifiers;
retrieving, by the one or more processors, one or more policy documents corresponding to the one or more identifiers; generating, by the one or more processors, a prompt for a machine learning model, the prompt comprising the IaC configuration file and the one or more policy documents; providing, by the one or more processors, the prompt to the machine learning model; receiving, by the one or more processors, output from the machine learning model based on the prompt, the output comprising an indication as to whether the IaC configuration file is valid based on the one or more policy documents;
receiving, by the one or more processors, a pre-trained language model; and
performing, by the one or more processors, one or more fine-tuning iterations of:
receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
generating a loss between output code snippets of the pre-trained language model and the training examples of syntactically correct IaC configuration files, and
updating one or more model parameter values of the pre-trained language model in accordance with the generated loss; and providing, by the one or more processors,
a response to the request comprising the output.
2. The method of claim 1, wherein the request includes one or more identifiers, the one or more identifiers identifying one or more of a computing infrastructure, a user corresponding to the request, or an application to be deployed on a computing environment configured in accordance with the IaC configuration file.
2. The method of claim 1, wherein the one or more identifiers identify one or more of a computing infrastructure, a user corresponding to the request, or an application to be deployed on a computing environment configured in accordance with the IaC configuration file.
3. The method of claim 2, comprising retrieving, by the one or more processors, one or more policy documents, the one or more policy documents comprise natural language, structured code, or both natural language and structured code.
3. The method of claim 2, wherein the one or more policy documents comprise natural language, structured code, or both natural language and structured code.
4. The method of claim 1, wherein the fine tuning data comprise one or more example IaC configuration files having a same format as the IaC configuration file.
From claim 1
receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
5. The method of claim 1, comprising:
generating, by the one or more processors, an encoded representation of the IaC configuration file;
querying, by the one or more processors and using the encoded representation of the request, an embedding repository comprising encoded representations of examples of syntactically correct IaC configuration files;
retrieving, by the one or more processors, one or more encoded representations of syntactically correct IaC configuration files within a predetermined threshold of similarity to the encoded representation of the IaC configuration file; and outputting a prompt, by the one or more processors, that includes a syntactically correct IaC configuration files.
4. The method of claim 1, wherein
generating the prompt comprises: generating, by the one or more processors, an encoded representation of the IaC configuration file;
querying, by the one or more processors and using the encoded representation of the request, an embedding repository comprising encoded representations of examples of syntactically correct IaC configuration files;
retrieving, by the one or more processors, one or more encoded representations of syntactically correct IaC configuration files within a predetermined threshold of similarity to the encoded representation of the IaC configuration file; and adding to the prompt, by the one or more processors, the syntactically correct IaC configuration files.
6. The method of claim 5, further comprising generating, by the one or more processors, the embedding repository, wherein the embedding repository comprises encoded representations of the plurality of training examples of syntactically correct IaC configuration files in the fine-tuning data.
5. The method of claim 4, further comprising generating, by the one or more processors, the embedding repository, wherein the embedding repository comprises encoded representations of the plurality of training examples of syntactically correct IaC configuration files in the fine-tuning data.
7. The method of claim 1, further comprising:
generating, by the one or more processors, a repository of policy documents, wherein a policy document in the repository of policy documents comprises a label corresponding to one or more of: a policy author, an entity corresponding to the policy document, an asset corresponding to the policy documents one or more policy conditions, or suggested fixes for violations of one or more policy conditions.
6. The method of claim 1, further comprising: generating, by the one or more processors, a repository of policy documents, wherein a policy document in the repository comprises a label corresponding to one or more of: a policy author, an entity corresponding to the policy document, an asset corresponding to the policy documents one or more policy conditions, or suggested fixes for violations of one or more policy conditions.
8. A system, comprising:
one or more processors configured to:
receive a request to validate an IaC configuration file;
access a pre-trained language model;
perform one or more fine-tuning iterations of:
receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
generating a loss between output code snippets of the pre-trained language model and the training examples of syntactically correct IaC configuration files, and
updating one or more model parameter values of the pre-trained language model in accordance with the generated loss to generate an updated machine learning model; output, based on the updated machine learning model, an indication as to whether the IaC configuration file is valid; and provide a response to the request comprising the output.
7. A system, comprising:
one or more processors configured to:
receive a request to validate an IaC configuration file, the request comprising the IaC configuration file and one or more identifiers; retrieve one or more policy documents corresponding to the one or more identifiers; generate a prompt for a machine learning model, the prompt comprising the IaC configuration file and the one or more policy documents; provide the prompt to the machine learning model;
receive a pre-trained language model;
perform one or more fine-tuning iterations of: receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
generating a loss between output code snippets of the pre-trained language model and the training examples of syntactically correct IaC configuration files, and
updating one or more model parameter values of the pre-trained language model in accordance with the generated loss; receive output from the machine learning model based on the prompt, the output comprising an indication as to whether the IaC configuration file is valid based on the one or more policy documents; and provide a response to the request comprising the output.
9. The system of claim 8, wherein the request comprises one or more identifiers that identify one or more of a computing infrastructure, a user corresponding to the request, or an application to be deployed on a computing environment configured in accordance with the IaC configuration file.
8. The system of claim 7, wherein the one or more identifiers identify one or more of a computing infrastructure, a user corresponding to the request, or an application to be deployed on a computing environment configured in accordance with the IaC configuration file.
10. The system of claim 9, wherein the one or more processors are configured to access one or more policy documents comprise natural language, structured code, or both natural language and structured code.
9. The system of claim 8, wherein the one or more policy documents comprise natural language, structured code, or both natural language and structured code.
11. The system of claim 8, wherein the fine tuning data comprise one or more example IaC configuration files having a same format as the IaC configuration file.
From Claim 7
receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
12. The system of claim 8, wherein the one or more processors are configured to:
generate an encoded representation of the IaC configuration file;
query, using the encoded representation of the request, an embedding repository comprising encoded representations of examples of syntactically correct IaC configuration files;
retrieve one or more encoded representations of syntactically correct IaC configuration files within a predetermined threshold of similarity to the encoded representation of the IaC configuration file; and
add, to the prompt, the syntactically correct IaC configuration files.
10. The system of claim 7, wherein in generating the prompt, the one or more processors are configured to:
generate an encoded representation of the IaC configuration file;
query, using the encoded representation of the request, an embedding repository comprising encoded representations of examples of syntactically correct IaC configuration files;
retrieve one or more encoded representations of syntactically correct IaC configuration files within a predetermined threshold of similarity to the encoded representation of the IaC configuration file; and
add, to the prompt, the syntactically correct IaC configuration files.
13. The system of claim 12, wherein the one or more processors are further configured to generate the embedding repository, wherein the embedding repository comprises encoded representations of the plurality of training examples of syntactically correct IaC configuration files in the fine-tuning data.
11. The system of claim 10, wherein the one or more processors are further configured to generate the embedding repository, wherein the embedding repository comprises encoded representations of the plurality of training examples of syntactically correct IaC configuration files in the fine-tuning data.
14. The system of claim 8, wherein the one or more processors are further configured to: generate a repository of policy documents, wherein a policy document in the repository of policy documents comprises a label corresponding to one or more of: a policy author, an entity corresponding to the policy document, an asset corresponding to the policy documents one or more policy conditions, or suggested fixes for violations of one or more policy conditions.
12. The system of claim 7, wherein the one or more processors are further configured to: generate a repository of policy documents, wherein a policy document in the repository comprises a label corresponding to one or more of: a policy author, an entity corresponding to the policy document, an asset corresponding to the policy documents one or more policy conditions, or suggested fixes for violations of one or more policy conditions.
15. One or more non-transitory computer-readable storage media storing instructions that are operable, when executed by one or more processors, to cause the one or more processors to perform operations comprising:
receiving a request to validate an IaC configuration file, the request comprising the IaC configuration file and one or more identifiers;
receiving a pre-trained language model; and
performing one or more fine-tuning iterations of:
receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
generating a loss between output code snippets of the pre-trained language model and the training examples of syntactically correct IaC configuration files, and
updating one or more model parameter values of the pre-trained language model in accordance with the loss to generate an updated machine learning model; and
outputting, based on the updated machine learning model an indication as to whether the IaC configuration file is valid.
13. One or more non-transitory computer-readable storage media storing instructions that are operable, when executed by one or more processors, to cause the one or more processors to perform operations comprising:
receiving a request to validate an IaC configuration file, the request comprising the IaC configuration file and one or more identifiers;
retrieving one or more policy documents corresponding to the one or more identifiers; generating a prompt for a machine learning model, the prompt comprising the IaC configuration file and the one or more policy documents; providing the prompt to the machine learning model;
receiving a pre-trained language model; and
performing one or more fine-tuning iterations of:
receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
generating a loss between output code snippets of the pre-trained language model and the training examples of syntactically correct IaC configuration files, and
updating one or more model parameter values of the pre-trained language model in accordance with the generated loss; receiving output from the machine learning model based on the prompt, the output comprising an indication as to whether the IaC configuration file is valid based on the one or more policy documents; and providing a response to the request comprising the output.
16. The one or more non-transitory computer-readable storage media of claim 15, wherein the one or more identifiers identify one or more of a computing infrastructure, a user corresponding to the request, or an application to be deployed on a computing environment configured in accordance with the IaC configuration file.
14. The one or more non-transitory computer-readable storage media of claim 13, wherein the one or more identifiers identify one or more of a computing infrastructure, a user corresponding to the request, or an application to be deployed on a computing environment configured in accordance with the IaC configuration file.
17. The one or more non-transitory computer-readable storage media of claim 15, wherein the instructions cause the one or more processors to retrieve one or more policy documents that comprise natural language, structured code, or both natural language and structured code.
15. The one or more non-transitory computer-readable storage media of claim 14, wherein the one or more policy documents comprise natural language, structured code, or both natural language and structured code.
18. The one or more non-transitory computer-readable storage media of claim 15, wherein the fine tuning data comprise one or more example IaC configuration files having a same format as the IaC configuration file.
From claim 13
receiving fine-tuning data comprising a plurality of training examples of syntactically correct IaC configuration files,
19. The one or more non-transitory computer-readable storage media of claim 15, comprising:
generating an encoded representation of the IaC configuration file;
querying. using the encoded representation of the request, an embedding repository comprising encoded representations of examples of syntactically correct IaC configuration files;
retrieving one or more encoded representations of syntactically correct IaC configuration files within a predetermined threshold of similarity to the encoded representation of the IaC configuration file; and adding to a prompt the syntactically correct IaC configuration files.
16. The one or more non-transitory computer-readable storage media of claim 13, wherein generating the prompt comprises:
generating an encoded representation of the IaC configuration file;
querying, using the encoded representation of the request, an embedding repository comprising encoded representations of examples of syntactically correct IaC configuration files;
retrieving one or more encoded representations of syntactically correct IaC configuration files within a predetermined threshold of similarity to the encoded representation of the IaC configuration file; and adding to the prompt the syntactically correct IaC configuration files.
20. The one or more non-transitory computer-readable storage media of claim 19, wherein the operations further comprise generating the embedding repository, wherein the embedding repository comprises encoded representations of the plurality of training examples of syntactically correct IaC configuration files in the fine-tuning data.
17. The one or more non-transitory computer-readable storage media of claim 16, wherein the operations further comprise generating the embedding repository, wherein the embedding repository comprises encoded representations of the plurality of training examples of syntactically correct IaC configuration files in the fine-tuning data.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to KANNAN SHANMUGASUNDARAM whose telephone number is (571)270-7763. The examiner can normally be reached M-F 9:00 AM -6:00 PM.
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, Charles Rones can be reached at (571) 272-4085. 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.
/KANNAN SHANMUGASUNDARAM/Primary Examiner, Art Unit 2168