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 application filed 8/5/2024. Claims 1-20 are currently pending and claims 1, 11, and 18 are the independent claims.
Claim Objections
Claims 4 and 14 are objected to because of the following informalities:
As per claims 4 and 14, they recite “…determining that at least on utility of the respective utilities…” when they should recite “…at least one utility of the respective utilities…”.
Appropriate correction is required.
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 of U.S. Patent No. US 12,079,625 B2 in view of Hoenzsch et al. US Patent 11,586,433 B2. For brevity, claim 1 is shown below as claims 11-17 and 18-20 recite an apparatus’ and a non-transitory computer-readable mediums having similar limitations as the methods of claims 1-7.
Current Application 1/794,902
US Patent 12,079,625 B2
Hoenzsch et al. US Patent 11,586,433 B2
1. A method for managing metadata, comprising:
generating an immutable identifier by executing a hashing function on a version of a codebase,
the immutable identifier comprising a commit hash;
generating a data structure comprising one or more subsets of metadata for respective utilities corresponding to respective stages of a pipeline executed on the codebase;
retrieving, at one or more gates of the pipeline and using the immutable identifier, a subset of metadata of the one or more subsets of metadata;
identifying compliance information associated with one or more stages of the pipeline based at least in part on a comparison of policy information to the subset of metadata; and
automatically deploying the version of the codebase to a production environment based at least in part on the compliance information.
1. A method for managing metadata, comprising:
generating an immutable identifier by executing a hashing function on a version of a codebase;
generating a data structure comprising a first subset of metadata for a first utility associated with a first stage of a pipeline executed on the codebase and a second subset of metadata for a second utility associated with a second stage of the pipeline;
retrieving, at one or more gates of the pipeline and using the immutable identifier, the first subset of metadata and the second subset of metadata that are associated with the pipeline; and
verifying the first subset of metadata and the second subset of metadata based at least in part on a comparison of the first subset of metadata and the second subset of metadata to policy information, wherein the policy information corresponds to one or more security policies designated by an enterprise.
Col. 4 lines 63-64
The immutable identifier may be, for example, a commit hash.
Col. 10 lines 40-47, col. 22 lines 40-45
Codebase is deployed to production when it aligns with any and all of the enterprise policies or enterprise standards (based on compliance information).
While the current application recites “identifying compliance information associated with one or more stages of the pipeline based at least in part on a comparison of policy information to the subset of metadata” and US Patent 12,079,625 B2 recites “verifying the first subset of metadata and the second subset of metadata”, with broadest reasonable interpretation, the verifying/verification may be interpreted as identifying compliance information, and as US Patent 12,079,625 B2 previously recites “a first subset of metadata for a first utility associated with a first stage of a pipeline executed on the codebase and a second subset of metadata for a second utility associated with a second stage of the pipeline” thereby disclosing that the subsets of metadata used in the verifying/identifying compliance information/etc. are associated with stages of the pipeline, it is obvious that the verification/compliance information is associated with the stages of the pipeline.
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 the immutable identifier comprising a commit hash, and automatically deploying the version of the codebase to a production environment based at least in part on the compliance information, as conceptually taught by Hoenzsch, into that of US Patent 12,079,625 B2 because these modifications allow for the immutable identifier to be a commit hash and for the version of the codebase to be deployed/installed/etc. in a production environment, which is desirable as it increases usability by allowing for the immutable identifier to be generated by hashing a commit thereby allowing for an effective method of successfully generating the identifier, and by allowing for the version of the codebase to be deployed to an environment/production environment/etc. where it is desired to be used/executed/run/etc. thereby allowing for the codebase to be used as desired.
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 independent claim 1, it recites “A method for managing metadata, comprising: generating an immutable identifier by executing a hashing function on a version of a codebase, the immutable identifier comprising a commit hash; generating a data structure comprising one or more subsets of metadata for respective utilities corresponding to respective stages of a pipeline executed on the codebase; retrieving, at one or more gates of the pipeline and using the immutable identifier, a subset of metadata of the one or more subsets of metadata; identifying compliance information associated with one or more stages of the pipeline based at least in part on a comparison of policy information to the subset of metadata; and automatically deploying the version of the codebase to a production environment based at least in part on the compliance information.”
The limitation “generating an immutable identifier by executing a hashing function on a version of a codebase, the immutable identifier comprising a commit hash”, as drafted, is a process that, under its broadest reasonable interpretation, comprises a mathematical concept as, with broadest reasonable interpretation, a hashing function may be considered a mathematical formula or equation, and therefore generating an identifier by executing a hashing function on a version of a codebase may be considered performing/executing/solving/etc. a mathematical formula/equation on the version of a codebase/commit/etc. and using the result/solution/etc. of the formula/equation as the identifier. As such, under its broadest reasonable interpretation, the claim limitation falls within the mathematical concept grouping of abstract ideas. Additionally, the limitations “generating a data structure comprising one or more subsets of metadata for respective utilities corresponding to respective stages of a pipeline executed on the codebase” and “identifying compliance information associated with one or more stages of the pipeline based at least in part on a comparison of policy information to the subset of metadata”, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a human/user/etc. may manually/mentally/with pen and paper/etc. write/record/etc. metadata/data/information/data structure/etc. about stages of a pipeline, and may manually/mentally/etc. and may mentally/with pen and paper/etc. compare/analyze/evaluate/etc. policy information to the data/information/subsets of metadata/etc. to policy information and judge/determine/decide/verify/etc. whether the data/information/metadata/etc. complies with/meets/is acceptable/etc. the policy information. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
The judicial exception is not integrated into a practical application. The claim recites the additional elements of “retrieving, at one or more gates of the pipeline and using the immutable identifier, a subset of metadata of the one or more subsets of metadata” and “automatically deploying the version of the codebase to a production environment based at least in part on the compliance information” which, conceptually, with broadest reasonable interpretation, do nothing more than add insignificant extra solution activity to the judicial exception of merely gathering/retrieving/etc. data/information/metadata and transmitting/deploying/etc. data/information/codebase/etc., 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)). As such, the additional elements amount to no more than insignificant extra solution activities to the abstract idea and, 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(g).
The claim(s) does/do 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, with broadest reasonable interpretation, the additional elements amount to no more than insignificant extra solution activities to the abstract idea of gathering/retrieving and transmitting data/information/metadata/codebase/etc., 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 “…determining whether the version of the codebase complies with the policy information based at least in part on the comparison of the subset of metadata to the policy information, wherein the compliance information comprises compliance results for a utility of the respective utilities that is associated with the subset of metadata” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the performance of the abstract idea/mental process/determining/etc., and as such fails to correct the deficiencies of claim 1. 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 version of the codebase is automatically deployed to the production environment based at least in part on verifying the subset of metadata using the policy information” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the abstract idea/mental process/verifying/etc., and further clarification as to the insignificant extra solution activity of transmitting/deploying data/information/codebase which does not integrate the abstract idea 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). Therefore, claim 3 fails to correct the deficiencies of claim 1 and 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 “…determining that at least on utility of the respective utilities fails to comply with the policy information at the one or more gates of the pipeline based at least in part on the compliance information” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the performance of the abstract idea/mental process/determining/etc., and as such fails to correct the deficiencies of claim 1. 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 “…transmitting, to a device, a signal comprising an indication of the compliance information” which, conceptually, with broadest reasonable interpretation, recites further insignificant extra solution activity of transmitting data/information/indication of compliance information/etc. which does not integrate the abstract idea 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). Therefore, claim 5 fails to correct the deficiencies of claim 1 and 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 “…identifying the immutable identifier as a primary key for the subset of metadata, wherein the immutable identifier is used to retrieve the subset of metadata based at least in part on the immutable identifier comprising the primary key” which, conceptually, with broadest reasonable interpretation, provides further clarification as to the performance of the abstract idea/mental process/identifying/judging/deciding/etc., and as such fails to correct the deficiencies of claim 1. 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 the policy information corresponds to one or more security policies, one or more data management policies, or any combination thereof” which, conceptually, with broadest reasonable interpretation, provides further clarification as to data/information/policy information/etc. used in performing the abstract idea/mental process, which does not integrate the abstract idea into a practical application is not significantly more than the judicial exception/abstract idea/mental process. Therefore, claim 7 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above..
As per claim 8, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “…wherein the policy information comprises one or more enterprise policies, or one or more enterprise standards, or any combination thereof” which, conceptually, with broadest reasonable interpretation, provides further clarification as to data/information/policy information/etc. used in performing the abstract idea/mental process, which does not integrate the abstract idea into a practical application is not significantly more than the judicial exception/abstract idea/mental process. Therefore, claim 8 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above..
As per claim 9, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “…wherein the subset of metadata is retrieved using the immutable identifier in response to an application command” which, conceptually, with broadest reasonable interpretation, provides further clarification as to insignificant extra solution activity of gathering/retrieving/etc. data/information/metadata/etc. which does not integrate the abstract idea 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). Therefore, claim 9 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above.
As per claim 10, it incorporates the deficiencies of claim 1, upon which it depends, and further recites “… wherein the pipeline comprises a continuous integration and continuous delivery pipeline” which, conceptually, with broadest reasonable interpretation, provides further clarification as to high level/generic computer/computer components/pipeline/continuous integration and continuous delivery pipeline/etc. used in performing the abstract idea, which does not integrate the abstract idea into a practical application and is not significantly more than the abstract idea/mental process. Therefore, claim 10 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above..
As per independent claim 11, it recites an apparatus having similar limitations as the method of claim 1, as such recites a similar abstract idea and has similar deficiencies as the method of claim 1, above. Claim 11 further recites the additional elements/limitations “An apparatus for managing metadata, comprising: one or more processors; memory coupled with the one or more processors; and instructions stored in the memory and executable by the one or more processors to cause the apparatus to” which, with broadest reasonable interpretation, recite that high level/generic computer/computer components/processors/memory/instructions stored in memory/etc. are used to implement/perform the abstract idea, 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 into a practical application and is not significantly more than the abstract idea. Therefore, the additional elements/limitations of claim 11 fail to correct the deficiencies of claim 1, and claim 11 is rejected for similar reasoning as claim 1, above.
As per claims 12-17 they recite apparatus’ having similar limitations as the methods of claims 2-7, respectively, and are therefore rejected for similar reasoning as claims 2-7, respectively, above.
As per independent claim 18, it recites a non-transitory computer-readable medium having similar limitations as the method of claim 1, as such recites a similar abstract idea and has similar deficiencies as the method of claim 1, above. Claim 18 further recites the additional elements/limitations “a non-transitory computer-readable medium storing code for managing metadata, the code comprising instructions executable by one or more processors to:” which, with broadest reasonable interpretation, recite that high level/generic computer/computer components/non-transitory computer-readable medium/processors/etc. are used to implement/perform the abstract idea, 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 into a practical application and is not significantly more than the abstract idea. Therefore, the additional elements/limitations of claim 18 fail to correct the deficiencies of claim 1, and claim 18 is rejected for similar reasoning as claim 1, above.
As per claims 19-20, they recite non-transitory computer-readable mediums having similar limitations as the methods of claims 2-3, respectively, and are therefore rejected for similar reasoning as claims 2-3, respectively, above.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Jammula et al. (US Patent 10,613,970 B1) teaches that software/code/etc. is developed in a pipeline, that data/information/metadata/etc. about stages of the pipeline may be generated/recorded/etc., stored, and retrieved when needed, that verification/validation is performed/compliance is determined/etc. with policy information when progressing from stages through the pipeline, and the code/software may be deployed.
Fink et al. (US Patent 10,007,674 A1) teaches that immutable identifiers are assigned to versions of code/commits/data/etc. which may be stored in repository/version control/etc. using the immutable identifier.
Russell et al. (US PGP Pub. 2013/0326479 A1) teaches that identifiers of stored versions/commits/etc. of source code files may be generated based on a hash of/hashing function on/etc. the source code file/commit/etc..
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